Mathematics">
Método Simplex CARACTERISTICAS Y EJEMPLOS ROSA
Método Simplex CARACTERISTICAS Y EJEMPLOS ROSA
Método Simplex CARACTERISTICAS Y EJEMPLOS ROSA
Hoy en dia el método simplex puede aplicar con eficiencia a la diversidad de paquetes
de software que facilitan el proceso de cálculo.
sujeto a: 2x + y ≤ 18
2x + 3y ≤ 42
3x + y ≤ 24
x≥0,y≥0
Se consideran las siguientes fases:
Realizar un cambio de variables y normalizar el signo de los términos independientes.
Se realiza un cambio en la nomenclatura de las variables. Estableciéndose la
correspondencia siguiente:
x pasa a ser X1
y pasa a ser X2
Como los términos independientes de todas las restricciones son positivos no es
necesario hacer nada. En caso contrario habría que multiplicar por "-1" en ambos lados
de la inecuación (teniendo en cuenta que esta operación también afecta al tipo de
restricción).
Normalizar las restricciones.
Se convierten las inecuaciones en ecuaciones agregando variables de
holgura, exceso y artificiales según la tabla siguiente:
≥ - exceso + artificial
= + artificial
≤ + holgura
En este caso se introduce una variable de holgura (X3, X4 y X5) en cada una de las
restricciones del tipo ≤, para convertirlas en igualdades, resultando el sistema de
ecuaciones lineales:
2·X1 + X2 + X3 = 18
3 2 0 0 0
Base Cb P0 P1 P2 P3 P4 P5
P3 0 18 2 1 1 0 0
P4 0 42 2 3 0 1 0
P5 0 24 3 1 0 0 1
Z 0 -3 -2 0 0 0
Condición de parada.
Si el objetivo es la maximización, cuando en la última fila (fila indicadora) no existe
ningún valor negativo entre los costes reducidos (columnas P1 en adelante) se alcanza la
condición de parada.
En tal caso se llega al final del algoritmo ya que no existe posibilidad de mejora. El
valor de Z (columna P0) es la solución óptima del problema.
Otro caso posible es que en la columna de la variable entrante a la base todos los valores
son negativos o nulos. Esto indica que el problema no se encuentra acotado y su
solución siempre resultará mejorable. Ante esta situación no es necesario continuar
iterando indefinidamente y también se puede dar por finalizado el algoritmo.
De no ser así, se ejecutan los siguientes pasos de forma iterativa.
Elección de la variable entrante y saliente de la base.
Se determina en primer lugar la variable que entra en la base. Para ello se escoge la
columna cuyo valor en la fila Z sea el menor de entre todos los negativos. En este caso
sería la variable X1 (P1) de coeficiente -3.
Si existiesen dos o más coeficientes iguales que cumplan la condición anterior (caso de
empate), entonces se optará por aquella variable que sea básica.
La columna de la variable que entra en la base se llama columna pivote (en color verde).
Una vez obtenida la variable que entra en la base, se procede a determina cual será la
variable que sale de la misma. La decisión se toma en base a un sencillo cálculo: dividir
cada término independiente (columna P0) entre el elemento correspondiente de la
columna pivote, siempre que ambos elementos sean estrictamente positivos (mayores
que cero). Se escoge la fila cuyo resultado haya resultado mínimo.
Si hubiera algún elemento menor o igual a cero no se realiza dicho cociente. En caso de
que todos los elementos de la columna pivote fueran de ésta condición se habría
cumplido la condición de parada y el problema tendría una solución no acotada
(ver teoría del método Simplex).
En este ejemplo: 18/2 [=9] , 42/2 [=21] y 24/3 [=8]
El término de la columna pivote que en la división anterior dio lugar al menor cociente
positivo indica la fila de la variable de holgura que sale de la base. En este caso resulta
ser X5 (P5), de coeficiente 3. Esta fila se llama fila pivote (en color verde).
Si al calcular los cocientes, dos o más resultados cumplen la condición para elegir el
elemento saliente de la base (caso de empate), se escoge aquella que no sea variable
básica (siempre que sea es posible).
La intersección de la fila pivote y columna pivote marca el elemento pivote, en este caso
el 3.
Actualizar la tabla.
Los nuevos coeficientes de la tabla se calculan de la siguiente manera:
En la fila del elemento pivote cada nuevo elemento se calcula como:
Nuevo Elemento Fila Pivote = Anterior Elemento Fila Pivote / Pivote
En el resto de las filas cada elemento se calcula:
Nuevo Elemento Fila = Anterior Elemento Fila - (Anterior Elemento Fila en Columna
Pivote * Nuevo Elemento Fila Pivote)
Con esto se normaliza el elemento pivote y su valor pasa a ser 1, mientras que el resto
de elementos de la columna pivote se anulan (análogo al método de Gauss-Jordan).
Se muestran a continuación los cálculos para la fila P4:
Anterior fila P4 42 2 3 0 1 0
- - - - - -
x x x x x x
= = = = = =
Tabla II . Iteración nº 2
3 2 0 0 0
Base Cb P0 P1 P2 P3 P4 P5
Tabla II . Iteración nº 2
P3 0 2 0 1/3 1 0 -2/3
P4 0 26 0 7/3 0 1 -2/3
P1 3 8 1 1/3 0 0 1/3
Z 24 0 -1 0 0 1
3 2 0 0 0
Base Cb P0 P1 P2 P3 P4 P5
P2 2 6 0 1 3 0 -2
P4 0 12 0 0 -7 1 4
P1 3 6 1 0 -1 0 1
Z 30 0 0 3 0 -1
Una nueva comprobación de la condición de parada revela que entre los elementos de la
fila indicadora vuelve a haber uno negativo, -1. Significa que aun no se ha llegado a la
solución óptima y hay que seguir iterando (pasos 6 y 7):
6.1. La variable que entra en la base es X5 (P5), por ser la variable que corresponde al
coeficiente -1.
6.2. Se escoge la variable que sale calculando el cociente entre los términos de la
columna de términos independientes y los términos correspondientes de la nueva
columna pivote: 6/(-2) [=-3] , 12/4 [=3], y 6/1 [=6]. En esta ocasión es X4 (P4).
6.3. El elemento pivote es 4.
7. Después de actualizar todas las filas, se obtiene la tabla siguiente:
Tabla IV . Iteración nº 4
3 2 0 0 0
Base Cb P0 P1 P2 P3 P4 P5
P2 2 12 0 1 -1/2 1/2 0
P5 0 3 0 0 -7/4 1/4 1
P1 3 3 1 0 3/4 -1/4 0
Z 33 0 0 5/4 1/4 0