método simplex - WordPress.com

Anuncio
MÉTODO SIMPLEX
Introducción
El Método Simplex publicado por George Dantzig en 1947 consiste en un algoritmo
iterativo que secuencialmente a través de iteraciones se va aproximando al óptimo del
problema de Programación Lineal en caso de existir esta última.
La primera implementación computacional del Método Simplex es el ano 1952 para un
problema de 71 variables y 48 ecuaciones. Su resolución tarda 18 horas. Luego, en
1956, un código llamado RSLP1, implementado en un IBM con 4Kb en RAM, admite la
resolución de modelos con 255 restricciones.
El Método Simplex hace uso de la propiedad de que la solución óptima de un problema
de Programación Lineal se encuentra en un vértice o frontera del dominio de puntos
factibles (esto último en casos muy especiales), por lo cual, la búsqueda secuencial del
algoritmo se basa en la evaluación progresiva de estos vértices hasta encontrar el
óptimo. Cabe destacar que para aplicar el Método Simplex a un modelo lineal, este
debe estar en un formato especial conocido como formato estándar el cual
definiremos a continuación.
FORMA ESTÁNDAR DE UN MODELO DE PROGRAMACIÓN LINEAL
Consideremos un modelo de Programación Lineal en su forma estándar, que
denotaremos en lo que sigue por:
Min
sa
c1x1 + c2x2 + ... + cnxn
a11x1 + a12x2 + ... + a1nxn = b1
a21x1 + a22x2 + ... + a2nxn = b2
...
...
...
am1x1 + am2x2 + ... + amnxn = bm
xi >= 0, i = 1, 2, ..., n y m <= n
Matricialmente escrito como:
Min
cTx
s.a
Ax = b
x >= 0
No existe pérdida de generalidad en asumir que un modelo de PL viene dado en su
forma estándar:
EJEMPLO
P)
Max
9u + 2v + 5z
o
sa
4u + 3v + 6z <= 50
o
u + 2v - 3z >= 8
o
2u - 4v + z = 5
o
u,v >= 0
o
z e IR
1. Siempre es posible llevar un problema de maximización a uno de minimización.
Si f(x) es la función objetivo a maximizar y x* es la solución óptima f(x*) >=
f(x), para todo x factible. -f(x*) <= - f(x), para todo x factible. En
consecuencia: x* es también mínimo de -f(x)
2. Cada restricción del tipo <= puede ser llevada a una ecuación de igualdad
usando una (nueva) variable de holgura no negativa, con coeficiente nulo en
la función objetivo.
3. Cada restricción del tipo >= puede ser llevada a una ecuación de igualdad
usando una (nueva) variable de exceso no negativa, con coeficiente nulo en
la función objetivo.
4. Siempre es posible escribir una variable libre de signo como la diferencia de dos
variables no negativas.
Considerando la siguiente notación: u = x1, v = x2, z = x3 - x4, s1 = x5
(holgura), s2 = x6 (exceso), el problema P) puede ser escrito en forma equivalente
como:
Min
sa:
- 9x1 - 2x2 - 5x3 + 5x4 + 0x5 + 0x6
4x1 + 3x2 + 6x3 - 6x4 +
x1 + 2x2 - 3x3 + 3x4
2x1 - 4x2 + x3 - x4
xi >= 0,
i=1,2,3,4,5,6.
x5
= 50
- x6 = 8
= 5
El método algebraico es muy dispendioso, en razón a que trabaja con todos los datos
de las ecuaciones, para mejorar éste aspecto se creó el método simplex cuya gran
virtud es su sencillez, método muy práctico, ya que solo trabaja con los coeficientes de
la función objetivo y de las restricciones. Ilustraremos su funcionamiento mediante un
ejemplo, pero previamente mostraremos las reglas de decisión para determinar la
variable que entra, la que sale, la gran M, y cómo determinar que estamos en el
óptimo; Todas éstas reglas de decisión fueron deducidas del método algebraico,
solamente que aquí se han acomodado para ser usadas en el tipo de tablero simplex
que se usará.



Si en el tablero simplex de la solución óptima queda al menos una variable de
Super avit ó artificial dentro de las variables básicas, con un valor > 0 , el
problema no tiene solución, esto quiere decir que al menos existen dos
restricciones excluyentes, por lo tanto no existe área de soluciones factible y
menos una solución , en éste caso se debe revisar la formulación del problema.
Si al escoger la variable que sale, ninguna de las variables básicas restringe el
crecimiento de la variable no básica escogida para entrar, el problema tiene
solución indeterminada y se debe revisar la formulación en busca de una nueva
restricción que no se tuvo en cuenta en la formulación inicial.
Si en el tablero simplex del óptimo, al menos una de las variables no básicas
tiene coeficiente cero (0) en la función objetivo, esto es su Zj – Cj = 0, el
problema tiene múltiples soluciones y se nos está ofreciendo una de ellas.
Ejemplo 1
Aquí, al igual que en el método algebraico, debemos conseguir una solución básica
factible, empleando las variables de holgura y/o artificiales, quedando el sistema de
ecuaciones así:
A continuación construimos la siguiente tabla:
→
1 1 0 0 b/a
Cj
↓ V.B. b X1 X2 X3 X4
0
0 X3 15 5 3 1
1
0 X4 15 3 5 0
Zj - Cj
0
0 -1 -1 0
El valor de la función objetiva Z, se encuentra frente a la casilla de Zj – Cj , en éste
caso vale cero (0) y se calcula multiplicando el vector fila (en la tabla es la columna
inmediatamente anterior a la de las variables básica V.B.) que contiene los coeficientes
de las variables básicas en la función objetiva original por el vector columna de los
términos independientes b
CXB = Vector fila de los coeficientes en la función objetivo original de las variables
básicas actuales, sus valores se encuentran en la primera columna del tablero.
b = Vector columna de los términos independientes de las restricciones, que al mismo
tiempo son los valores de las variables básicas actuales, sus valores se encuentran
bajo la columna denominada b.
→
1 1 0 0 b/a
Cj
↓ V.B. b X1 X2 X3 X4
0 X3 15 5 3 1
0
0 X4 15 3 5 0
1
Zj - Cj
0 -1 -1 0
0
El valor de los Zj – Cj se calcula multiplicado el vector fila CxB por el vector apuntador
aj de la columna de la variable j-ésima, menos el Cj, esto es:
El valor de los Zj – Cj se calcula multiplicado el vector fila CxB por el vector apuntador
aj de la columna de la variable j-ésima, menos el Cj, esto es:
1
→
Cj
1
0
0
b/a
a>0
X4
X 1 X2 X3
(1/5)
0 X3 15 5 3 1 0 15/5 = 3
0
X4
15
15/3 = 5
3 5 0 1
Zj - Cj
0 -1 -1 0
0
↓
V.B.
b
Conclusiones:
*
*
• La solución es única: X1 = 15/8 ; X2 = 15/8 ; Z* = 14/4
• El método simplex es más práctico que el método algebraico
BIBLIOGRAFÍA:


http://www.programacionlineal.net/simplex.html
http://www.ganimides.ucm.cl/haraya/doc/m_simplex.pdf
Descargar