Escolar Documentos
Profissional Documentos
Cultura Documentos
La Programacion Lineal es un metodo matematico cuyo objetivo es optimizar (Maximizar o Minimizar) un resultado a partir de seleccionar los valores de un conjunto de variables de decision, respetando las restricciones correspondientes al problema.
Enteros Puros: Todas las variables solamente pueden tomar valores enteros
Enteros Mixtos: Hay variables continuas y variables que solo pueden tomar valores enteros
NOTA: X2 R+, y X1 Z+
Enteros Binarios: Las variables solamente pueden tomar valores cero o uno.
dificiles de resolver comparados con los de Programacion Lineal. caracterizados como Problemas NP-Completos.
Son
Aplicaciones:
Problema del transporte Problema de flujo con coste mnimo en red Problema de asignacin Problema de la mochila Problema del emparejamiento Problema del recubrimiento Problema del empaquetado Problema de particin Problema del coste fijo Problema del agente viajero Problema de rutas ptimas
Min s.a.
c x
i 1 j 1 ij
ij ij
x x
j 1 i 1 n
b j , j 1..n ai ,i 1..m
ai: unidades de oferta en el punto origen i bj: unidades de demanda en el punto destino j
Se supone oferta total igual a demanda total
ij
xij 0, xij Z
Min s .a .
c
i 1 j 1 ij
ij xij
xij: 1 si la tarea i se hace con la mquina j cij: coste de realizar la tarea i con mquina j
n tareas m mquinas Si hay ms mquinas que tareas se formula con desigualdades, y se resuelve con tareas ficticias
x x
j 1 i 1 n
ij
xij 0 ,1
Min c j x j
j1
s.a.
a
j1
ij
x j 1, i 1..m
x j 0,1
Embarcar los recursos disponibles a travs de la red para satisfacer la demanda a coste mnimo
Min s .a .
i 1 j 1 m ij
cij xij
xij: unidades enviadas de i a j (flujo) cij: coste unitario de transporte de i a j bi:recursos disponibles en un nodo i oferta: bi>0 demanda: bi<0 transbordo: bi=0 Se supone oferta total igual a demanda total
x x
j 1 k 1
ki
bi , j 1..m
xij 0 , xij Z
Max s .a .
j 1 j j
cjxj
n objetos
aj: espacio que ocupa el objeto j cj: valor del objeto j
a x
j 1
x j 0 ,1
X1<=3
MAX Z = 5 X1 + 4 X2 X1 + X2 <=5 10 X1 + 6 X2 <= 45 X1 <=3 X2 >=0
X1>=4
X1 = 4 X2 = .83 Z = 23.33
MAX Z = 5 X1 + 4 X2 X1 + X2 <=5 10 X1 + 6 X2 <= 45 X1 >=4, X2 >=0
X1 = 3 X2 = 2 Z = 23
X2<=0
X1 = 4.5 X2 = 0 Z = 22.5
X2>=1
Solucion no factible
MAX Z = 5 X1 + 4 X2 X1 + X2 <=5 10 X1 + 6 X2 <= 45 X1 >=0 X2 >=1
X1<=4
X1 = 4 X2 = 0 Z = 20
X1>=5
MAX Z = 5 X1 + 4 X2 X1 + X2 <=5 10 X1 + 6 X2 <= 45 X1 >=05 X2 >=0
Solucion no factible
Ejemplo:
Paso 0) Se deja la inequidad a cero. Paso 1) Evaluar cada restriccin, suponiendo que todas las variables valen cero y
Nota: Cada vez que una solucin no satisfaga una restriccin, el que tan lejos est de satisfacerla, lo llamamos infactibilidad.
Paso 0)
-6X1 3X2 + 2X3 4X4 X5 + 3 < 0 -4X1 5X2 4X3 3X4 + 3X5 + 7 < 0 Paso 1) X1 = X2 = X3 = X4 = X5 = 0 3<0 7 < 0 Infactibilidad = 10 Se suman los dos valores por ser positivos Paso 2) X1 = 1 ; X2 = X3 = X4 = X5 = 0 -3 < 0 3 < 0 Infactibilidad = 3
Paso 2)
Cuando X2=1 se tuvo un valor menor o menos malo. Se toma ese valor y comenzamos con el Paso 3.
Paso 3)
Como se tiene X2=1 ya no se toma en cuenta en esta iteracin -6X1 + 2X3 4X4 X5 + 0 < 0 -4X1 4X3 3X4 + 3X5 + 2 < 0 X1 = 1 ; X3 = X4 = X5 = 0 -6 < 0 -2 < 0 Infactibilidad = 0 X3 = 1 ; X1 = X4 = X5 = 0 2<0 -2 < 0 Infactibilidad = 2 X4 = 1 ; X1 = X3 = X5 = 0 -4 < 0 -1 < 0 Infactibilidad = 0
Paso 3)
Metodo aditivo balas Se evala la F.O con X2=1, x1=1 y X4=1 evaluado la funcin objetivo con ambas
soluciones.
Solucin: X1 = 0 ; X2 = 1 ; X3 = 0 ; X4 = 1 X5 = 0 ; Z = 12
Del total de las 32 soluciones solamente se tuvo que tomar 10 soluciones posibles. Este mtodo realiza una bsqueda sistemtica para evitar probar todas las combinaciones posibles.
Min. Z*= 3X1+ 2X2+ 5X3+ 2X4+ 3X5- 8 Ignoremos la constante -8 y remplazemos Z*+8 con Z, de manera que :
Min. Z= 3X1+ 2X2+ 5X3+ 2X4+ 3X5 Sujeto a -X1-X2+X3+2X4-X5+S1=1 -7X1+3X3-4X4-3X5+S2=-2 11X1-6X2-3X4-3X5+S3=-1 X1, X2, X3, X4, X5=(0,1)
Ejemplo:
X1 S1 -1
X2 3
S1 1
S2 0
Sol 6
S2 Z
7 -7
1 -10
0 0
1 0
35 0
Z
Se divide entre el Pivote y se hacen ceros bajo del pivote.
-7
X1
-10
X2 1 0 0
0
S1 1/3 -1/3 10/3
0
S2 0 1 0
0
Sol 2 33 20
X2 S2 Z
Se finaliza por que en Z no hay negativos. Pero como hay valores fraccionados se aplica Gomory X2 S2 Z
X1
0 1 0
X2
1 0 0
S1
7/22 -1/22 63/22
S2
1/22 3/22 3/22
Sol
7/2 9/2 133/2
GOMORY Paso 1) Como se tiene valores fraccionados X1=9/2, X2=7/2, Z=133/2. Se elige el valor menor de la variable de la ultima tabla. X2=7/2. Paso 2) Se crea su tabla para pasarla a la tabla Simplex. X1 X2 0 X2 1 S1 7/22 S2 1/22 Sol 7/2
0x1 + 1x2 + 7/22s1 + 1/22 s2 = 7/2 Paso 3) Se descompone el valor de la restriccion en enteros y fracciones menores que 1 positivos. 0x1 + 1x2 + 7/11s1 + 1/22s2 = 7/2 1 x2 + 7/22s1 + 1/22s2 = 3+1/2 Paso 4) Los valores enteros se acomodan de lado izquierdo y los fraccionados del lado derecho.
GOMORY Paso 5) Agregar <=0 a la restriccion x2-3= -7/22s1 -1/22s2. x2=1/2 -7/22s1-1/22s2<=0 y se eliminan los enteros. -7/22s1-1/22s2<=0
Paso 6) Se pasan del lado derecho los valores que no tienen variable -7/22s1 1/22 s2 <=-1/2
GOMORY Paso 8)Para obtener que columna va ser el pivote, se divide el renglon S3 entre Z. Se obtiene el valor absoluto de S1=63/22/(-7/22), S2=31/22/(-1/22) S1=9 y S2=31. Se elige el menor positivo. X1 X2 X1 0 1 X2 1 0 S1 7/22 -1/22 S2 1/22 3/22 S3 0 0 Sol 7/2 9/2
S3 Z
Paso 9)
0 0
0 0
-7/22 63/22
-1/22 31/22
1 0
-1/2 133/2
X1 X2 X1 S3 Z 0 1 0 0
X2 1 0 0 0
S3 0 0 1 0
GOMORY
X1 X2 X1 S1 Z 0 1 0 0
X2 1 0 0 0
S1 0 0 1 0
S2 0 1/7 1/7 1
S3 1 -1/7 -22/7 9
Se vuelve a Gomory por que tienen variables con valores fraccionados X1=32/7 y S1=11/7.
Se toma el menor que es S1=11/7.
S1
1/7
-22/7
11/7
GOMORY
Paso 12) Enteros del lado izquierdo y fraccionado del lado derecho S1-4-1=4/7-1/7S2-6/7S3
S1-4-1=4/7-1/7S2-6/7S3<=0
GOMORY
Paso 15) Pasar al lado derecho los valores sin variable y agregar una variable de holgura.
-1/7S2-6/7S3 + S4 = -4/7
X1 X2 X1 S3 S4 Z 0 1 0 0 0
X2 1 0 0 0 0
S1 0 0 1 0 0
S4 0 0 0 1 0
GOMORY
S4 Z
0 0
0 0
0 0
-1/7 1
-6/7 9
1 0
-4/7 62