Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MULTIPLICACIÓN - DIVISIÓN
POTENCIACIÓN – RADICACIÓN
DERIVACIÓN - INTEGRACIÓN
Todo programa matemático existe asociado a
otro denominado dual.
EL DUAL es
Min W = 30 y1 + 6 y2
Sujeto a
2y1 ≥ 2,
3 y1 + y2 ≥ 5
y1, y2 ≥ 0
A) Un programa lineal tiene una solución óp
tima finita sss el primal y el dual tiene
soluciones factibles.
B) si el primal tiene un máximo no acotado,
entonces el dual no tiene solución factible.
C) si el dual no tiene solución factible, pero
el primal si, entonces el primal tiene un
máximo acotado.
Este método se aplica cuando hay por lomenos
una restricción ≥
Condición de factibilidad.- la variable que
sale es la variable que tiene el valor más
negativo. (Los empates se rompen
arbitrariamente) si todas las variables básicas
son no negativas el proceso termina y se
alcanza la solución factible (óptima).
La variable que entra se elige de entre las
variables no básicas de los cocientes de los
coeficientes de la ecuación z entre los
coeficientes correspondientes a la ecuación
asociada a la variable que sale. Ignore los
cocientes asociados a denominadores
positivos o cero (rompa los empates arbitrar).
Si todos los denominadores son cero o
positivos el problema no tiene ninguna
solución factible.
Min Z = 2 x1 + x2, sujeto a
3 x1 + x2 ≥ 3
4 x1 + 3 x2 ≥ 6
X1 + 2 x2 ≤ 3
X1, x2 ≥ 0
Se estandariza
Max z = -2 x1 - x2, sujeto a
-3 x1 – x2 + x3 = -3
- 4 x1 -3 x2 +x4 = -6
X1 + 2 x2 + x5 = 3
Xj ≥ 0
x1 x2 x3 x4 x5 b base
-3 -1 1 0 0 -3 x3
-4 -3 0 1 0 -6 x4
1 2 0 0 1 3 x5
-2 -1 0 0 0 0
;clear;
p(‘ iteración 1, sale x4, ingresa x2’);
[-3 -1 1 0 0 -3; -4 -3 0 1 0 -6; 1 2 0 0 1 3; -2 -1 0 0 0 0]
2,:)=A(2,:)/A(2,2);
1,:)=A(1,:) -A(2,:)*A(1,2);
3,:)=A(3,:) -A(2,:)*A(3,2);
4,:)=A(4,:) -A(2,:)*A(4,2)
La variable que sale es x4 ya que tiene el
valor más negativo -6, para la variable que
entra los cocientes son:
Variable x1 x2 x3 x4 x5
Ecuación z -2 -1 0 0 0
{-2/-4 -1/-3}
Entra x2, de tal modo que el Pibot es:
A(2,:) = A(2,: )/A(2,2); y el resto de filas
juegan con éste Pibot, así:
A(1,: )=A(1,: ) – A(2,: )*A(1,2)
x2 x3 x4 x5 b bas
7 0 1.00 -0.33 0 -1.00 x3
3 1.00 0 -0.33 0 2.00 x2
7 0 0 0.67 1.00 -1.00 x5
7 0 0 -0.33 0 2.00 Z
50 0 NaN 1.00 NaN 1.00
0 68 29 21 0 0 -4.200
-1 1 0 0 -200; -7.5 -3 -1 0 1 0 -150; -5 -2 -1 0 0 1 -120; 315 110 5
A B C S1 S2 S3 b
1 0 0 -1/10 0 1/10 8
0 1 0 1/4 -1 3/4 10
0 0 1 0 2 -3 60
0 0 0 4 10 36 -6.620
es A=8, B=10, C=60 (marcado en verde) con
valor óptimo V(P)=6.620 (marcado en rojo - se
obtiene con signo cambiado). También es
interesante notar que los costos reducidos de
las variables artificiales S1, S2 y S3 (marcado
en amarillo), corresponde a la solución óptima
del modelo presentado en el tutorial de solver,
esto dado que dicho modelo resulta ser
el problema dual de nuestro ejemplo.
Para llevar el problema anterior a la forma estándar
se requiere agregar 2 variables de exceso no
negativas para la restricción 1 y 2, que llamaremos
respectivamente X4 y X5. De esta forma el
problema en su formato estándar queda definido
por:
¿Cómo continuar con las iteraciones del Método
Simplex?. Antes de ello es necesario disponer de
una solución básica factible inicial. En este
contexto si quisiéramos
usar X4 y X5 como variables básicas (y en
consecuencia X1, X2 y X3 como variables no
básicas) se requiere que X4 y X5 sean mayores o
iguales a cero, sin embargo, sus coeficientes en
las respectivas filas son negativos y por
tanto no se dispone de la identidad (matriz
con “1” como diagonal y el resto de coeficientes
igual a cero).
En consecuencia para formar la identidad
podemos multiplicar por “-1” la fila 1 y 2,
obteniendo lo siguiente:
Ahora X4 y X5 son variables básicas y adoptan los
valores de -1 y -3/2, respectivamente, lo que
claramente no satisface las condiciones de no
negatividad para las variables de decisión, es
decir, no corresponde a una solución básica
factible.
Sin embargo, en esta instancia podemos aplicar
el Método Simplex Dual como alternativa de
resolución. Para ello seleccionaremos una variable
que deje la base y adoptaremos como criterio de
selección aquella variable básica asociada al lado
derecho “más negativo” (con esto se busca
favorecer la rapidez de convergencia).
Luego para determinar que variable entra a la base
realizamos un mínimo cuociente entre el negativo del
costo reducido de las variables no básicas y las
entradas estrictamente menores a cero para las
variables no básicas en la fila 2 (fila asociada al lado
derecho más negativo).
Es decir: Min{-160/-2; -120/-2; -280/-2}=60 ==>
el cuociente mínimo se alcanza en la segunda
columna asociada a la variable no básica X2, por
tanto dicha variable entra a la base.
En cada iteración del Método Simplex Dual se escoge
un lado derecho con valor negativo, identificando la
respectiva variable básica primal, quien deja la base.
Finalmente se realiza una iteración realizando las
operaciones filas que sean necesarias, de modo de
ingresar X2 a la base al mismo tiempo que X5 deja la
sólo X4=-1/4 lo que no satisface la condición de ser
una solución básica factible. Por lo tanto realizamos
una nueva iteración, en este caso sacando de la base a
la variable X4 y calculamos el mínimo cuociente: Min{-
40/-1; -160/-3; -60/-1/2}=40 ==> el cuociente
mínimo está en la primera columna por tanto la
variable X1 entra a la base.
Las variables básicas ahora son X1=1/4 y X2=1/2
(que cumplen las condiciones de no negatividad).
Adicionalmente el costo reducido de las variables
no básicas también es mayor o igual a cero, por
tanto estamos frente a la solución óptima del probl
el valor óptimo es V(P)=100 que se obtendría
al evaluar la solución óptima del problema en
la función objetivo, sin embargo, en el
procedimiento dicho valor se obtiene con
signo cambiado.
El ejemplo anterior nos permitió apreciar
cómo a través del Método Simplex Dual se
puede abordar la resolución de un modelo de
Programación Lineal que luego de ser llevado
a la forma estándar no provee una solución
básica factible inicial.