Está en la página 1de 8

1

UNIVERSIDAD INCA GARCILASO DE LA VEGA

FACULTAD DE INGENIERIA DE SISTEMAS, CÓMPUTO y


TELECOMUNICACIONES

Carrera Profesional de Ingeniería de Sistemas y


Cómputo

ASIGNATURA: INVESTIGACION DE OPERACIONES I

CICLO: VI

PROFESOR: LIC. MIGUEL CANO


PRÁCTICA DIRIGIDA
EL MÉTODO SIMPLEX:
El método simplex disminuye sistemáticamente un número infinito de soluciones hasta un número finito de
soluciones básicas factibles. El algoritmo simplex utiliza el conocido procedimiento de eliminación en la
solución de ecuaciones lineales de Gauss- Jordan y, además aplica los llamados criterios del simplex con
los cuales se asegura mantener la búsqueda dentro de un conjunto de soluciones factibles al problema; así
valora una función económica Z, exclusivamente en vértices FACTIBLES (posibles). También se consigue
con eficiencia, debido a que se dirige la búsqueda haciendo cambios a una solución básica factible
adyacente, que se distingue al tener m-1 variables básicas iguales; es decir, dos vértices adyacentes sólo
difieren en una variable básica; seleccionando la ruta de mayor pendiente, para mejorar el valor de Z, o por
lo menos conservarlo.

Primero se presenta el método simplex, específico para un modelo de PL en forma canónica de máximo,
aplicado con la conocida tabla matricial, (también identificada como tableau), lo cual se resume mediante el
diagrama funcional de la Figura 1, que muestra los fundamentos del algoritmo contenidos en niveles o
bloques numerados para la referencia en la descripción del mismo.

Figura 1. Diagrama funcional del algoritmo simplex.

LIC. MIGUEL CANO


2

Nivel 1.- Forma estándar.-El modelo de PL en forma canónica de máximo que se desea resolver, tiene m
ecuaciones obtenidas al convertir las restricciones de desigualdad a igualdad, agregando m variables de
holgura, que sumadas a las n variables de decisión, hacen un total de (m + n) incógnitas.

Las m restricciones con las (m + n) variables, producen un número infinito de soluciones, entre ellas, un
conjunto de factibles y también las no factibles.

Nivel 2.- Calcule una primera solución básica factible.- Del total, (m + n) variables, sólo n se igualan con
cero ( n = 0 ), lo cual produce (sí existen), un número finito de soluciones básicas con un límite máximo de
(m + n)! / m! n!. Estas pueden ser, factibles y no factibles; se consideran sólo las primeras.

Nivel 3.- Se toman en cuenta sólo las soluciones básicas factibles, esto es, las que tienen todas las
variables básicas >= cero; es decir, con un número de iteraciones menor a (m + n)! / m! n!, se obtienen
soluciones básicas factibles: no degeneradas, si todas las incógnitas básicas son positivas y soluciones
degeneradas, si al menos una variable básica es igual a cero. Se aplican los criterios del algoritmo en forma
iterativa para evaluar la función objetivo en puntos extremos adyacentes que potencialmente puedan
mejorar el valor Z.

Nivel 4.- Se generan nuevas soluciones básicas factibles, tales que el valor de la función objetivo Z
mejore; se repite el procedimiento (iteraciones) entre los niveles 3 y 4, hasta que ninguna solución básica
factible adyacente resulte mejor; es decir, hasta que no haya incremento de valor, si el problema es de
máximo, (hasta que no haya decremento, para el problema, no tratado ahora, de mínimo).

Nivel 5.- Se interpretan los resultados de la última (iteración) tabla calculada, porque se identifican las
características de una solución óptima.

Criterios del Algoritmo Simplex.

El algoritmo simplex emplea los siguientes criterios para asegurar que la búsqueda de la solución óptima del
problema en estudio sea rápida, limitando el cálculo a soluciones básicas (puntos extremos) que sean
factibles.

Criterio de optimalidad. Se aplica en el simplex para determinar entre las variables no básicas, una que
entre (VE) a la base, eligiendo en la columna que tenga el coeficiente más positivo en el renglón "Cj-Zj"
de la tabla, si el problema es maximizar. Por lo contrario, si el problema es minimizar se elige para
variable entrante (VE) a la base la que cumpla con el coeficiente más Negativo en dicho renglón "Cj-Zj".

Criterio de factibilidad.- Se aplica en el simplex para determinar entre las variables básicas, una que
salga de la base (VS), eligiéndola que cumpla

en donde Xi es el valor de la variable básica en el renglón i; a ik es un coeficiente en el mismo renglón i


ubicado en la columna k correspondiente a la variable entrante elegida. Esto es válido tanto para problemas
de máximo como de mínimo.

Elemento pivote: En el cruce correspondiente a columna y renglón elegidos con los dos criterios
anteriores, se ubica un coeficiente denominado pivote (P) que se utiliza durante las iteraciones o etapas de
cálculo del simplex.

EJEMPLO DE APLICACIÓN:

Aplicando el método simplex, encontrar la solución del siguiente modelo de programación lineal:

LIC. MIGUEL CANO


3

SOLUCIÓN:

El gráfico en la Figura 2 muestra el conjunto de soluciones factibles, coordenadas y notas importantes de


vértices, con valores de Z para los mismos; además, se presentan coordenadas en tabla de todo el sistema,
el que se amplía debido a las holguras que se suman a cada una de las restricciones.

Figura 2: Solución por el método gráfico

APLICACIÓN DEL ALGORITMO SIMPLEX.


Nivel 1.-

Se inicia el método simplex para el problema expresado en forma canónica, sumando una variable de
holgura a cada una de las restricciones de desigualdad <= que contiene el modelo, convirtiéndose todas
ellas en igualdades. Las holguras se denotan con X n+1, Xn+2,..., Xn+m. Otra conveniente notación es: H1,
H2,..., Hm; en donde 1,2,...,m, son restricciones tipo <=. Así se pasa a:

LIC. MIGUEL CANO


4

Ahora se tienen tres ecuaciones con (n+m)=(2+3)=5 incógnitas, ampliando el sistema a 5 dimensiones con
dos grados de libertad para la solución del mismo, lo cual implica un número infinito de soluciones. Se
puede recurrir en lo que sigue, a la analogía geométrica del Ejemplo con el propósito de mostrar parte de
la naturaleza geométrica del algoritmo simplex con la Figura: 2

No se puede mostrar una analogía geométrica para el espacio ampliado de forma estándar en cinco
dimensiones con (X1, X2, H1, H2, H3), pero sí se puede observar el espacio factible OACFE que se genera
con sólo dos dimensiones X1 y X2 en la Figura 2; en ambos espacios existe un número infinito de puntos
tanto interiores como en la frontera de la región factible, aunque sólo existe un número finito de puntos
extremos (vértices).

En teoría, de acuerdo al segundo teorema ya mencionado, la solución óptima se debe buscar en uno de
esos puntos extremos, pero para la mayoría de los problemas con suficiente tamaño significaría una labor
de cálculo excesiva y costosa e incluso imposible. Para tener una idea de lo que significa esto, supóngase
por ejemplo un problema cuyo modelo de programación lineal contiene m = 5 restricciones y n = 4
incógnitas, aplicando el conocido binomio ya mencionado se tendría: (m + n) ! / m! n! = (5 + 4)! / 5! 4! = 126
vértices; otro ejemplo más, con m = 5 restricciones y n = 10 variables: (5 + 10)! / 5! 10! = 3003 puntos
extremos. Los ejemplos aquí anotados ciertamente son pequeños, pues lo común en el ámbito de empresa
o gobierno, es manejar magnitudes en decenas o cientos, tanto en restricciones como en variables. Pero el
simplex salva esta circunstancia con eficiencia, tal como se expresa enseguida.

Nivel 2.-

Una solución básica se obtiene estableciendo que de las (m+n) incógnitas en el sistema de ecuaciones en
forma estándar, n variables tengan el valor cero llamándolas no básicas y resolviendo (si hay solución)
para las restantes m variables que son básicas, componen la base o solución básica.

El sistema de restricciones en este Ejemplo tiene tres ecuaciones con cinco variables, se pueden expresar
tres cualesquiera de estas en función de las otras dos que por ello se consideran independientes. Como
cada variable de holgura H1, H2, H3, se presenta sólo en una, de las tres restricciones, conviene hacerlas
básicas y las variables de decisión X1 y X2 se inicien con valor cero como no básicas. De este modo, para
la aplicación del algoritmo simplex, se tiene la primera solución básica factible siguiente:

La función objetivo Z sólo contiene a las variables de decisión X 1 y X2, con valor actual cero, por lo tanto
Z=3(0)+5(0)=0, no satisface el objetivo de máximo. La comparación geométrica es valorar la línea recta Z en
el origen O, como Zo=0. Esta evaluación en O, no puede ser el máximo valor porque aún no se emplean los
recursos de las tres restricciones los cuales son asignados a las tres holguras:

Igualando a cero n variables, se reduce la búsqueda desde una infinidad hasta un número finito de
vértices; pero tal número, aún puede ser grande.

Nivel 3.-
LIC. MIGUEL CANO
5

El problema Ejemplo (Figura 2) condiciona las variables de decisión X1, X2 >=0, pero en las soluciones
básicas que pueden determinarse en nivel 2, no se cumple esta condición para todas las variables, como se
puede comprobar en la tabla para el sistema ampliado del mismo, que muestra valores negativos en las
holguras para las soluciones básicas B, D y J.

En tal circunstancia, aún se pueden disminuir las soluciones básicas eliminando las no factibles porque
tienen variables con valor negativo.

Con la tabla Figura 3 se inicia el algoritmo simplex, muestra el arreglo matricial de los coeficientes de
acuerdo a la forma estándar de este ejemplo, con excepción de la función objetivo que se arregla a su
forma equivalente: Máximo Z-3X1- 5X2 = 0, con el formato del sistema de ecuaciones lineales. Anote el
coeficiente cero para las ausentes holguras en el renglón Z, pero en cambio, el coeficiente 1 de cada una de
las variables de holgura en cada restricción, forman la diagonal en la matriz unitaria I de base, como
conjunto de vectores linealmente independientes que generan la primera solución en el punto extremo ( X1,
X2, H1, H2, H3 ) = ( 0, 0, 4, 12, 18 ), vértice O de la analogía gráfica Figura 2.

FIGURA 3: TABLERO INICIAL

VARIABLES DE VARIABLES DE
DECISIÓN HOLGURA
cJ 3 5 0 0 0
Cj Xk b X1 X2 H1 H2 H3 θ
0 H1 4 1 0 1 0 0
0 H2 12 0 2 0 1 0
0 H3 18 3 2 0 0 1
Z
Cj - Zj

Nivel 4.-

A partir de la solución inicial del algoritmo simplex, se puede generar una nueva solución básica factible; se
aplica primero el criterio de optimalidad a la solución básica factible actual, seleccionando entre las
variables no básicas, una variable que entre a la base y por lo tanto cambie a básica. La selección
de VE se hace con el criterio de conseguir la mayor ganancia unitaria de la función objetivo en un vértice.
Se observa que un incremento unitario en X2, aumenta en 5 el valor de Z, mientras que un incremento
unitario en X1, aumenta en 3 el valor de Z; si se desea el máximo conviene aumentar a X 2, dejando a X1 en
cero, lo que corresponde en la analogía geométrica a decidir pasar a valorar el vértice adyacente A(0,6) a lo
largo del segmento frontera OA, incrementando a X 2, desde un valor de cero hasta un valor de 6,
conservando X1 su valor cero (Figura 2).

En el simplex, para este ejemplo con el objetivo de maximizar (Figura 4), se aplica la optimalidad
seleccionando la variable no básica con el coeficiente más positivo en el renglón Cj-Zj de la tabla,
señalando la columna elegida con .

La solución básica del simplex, siempre debe tener m (m=3 en el ejemplo) variables básicas, entonces la
VE del criterio de optimalidad debe reemplazar a una de las variables básicas que al salir de la base se
convierte en no básica. Así en segundo lugar, se aplica el criterio de factibilidad, para determinar entre las
variables básicas, una que salga de la base . En la columna de la izquierda están las variables en la
base y en la columna derecha, se tienen sus valores, los cuales se dividen entre el coeficiente que sea
positivo, en el mismo renglón i de la columna k de la VE, esto es: Mínimo (12 / 2 = 6; 18 / 2 = 9) = 6, lo cual
se cumple para la variable básica H2, que debe señalarse como .

En el cruce de la columna que corresponde a y el renglón de la , se localiza un coeficiente


identificado como pivote (P) que se utiliza para iniciar el procedimiento de solución de ecuaciones lineales
conocido como de Gauss-Jordan. Para este ejemplo el pivote es 2, en el renglón saliente y columna
entrante , procediendo al cálculo en Figura 4 de la siguiente tabla simplex que es la nueva solución
básica factible correspondiente al punto extremo adyacente A(0, 6) de la analogía geométrica.

LIC. MIGUEL CANO


6

La segunda solución básica factible se inicia con la nueva base formada con m = 3 variables básicas; H 1 y
H3 que se conservan, pero sale H2 y se reemplaza con la variable X2 como básica en el nuevo punto
extremo a evaluar. La tabla simplex se empieza con el renglón entrante correspondiente a la variable
X2; se calcula dividiendo los coeficientes del renglón saliente entre el coeficiente pivote P de la tabla
solución anterior. En el lado izquierdo de la tabla se anota la fórmula utilizada RE = RS / P, para lo
resultados mostrados en la fila de X 2. Al convertir en básica a la variable X2, se deben hacer las operaciones
fila necesarias para conseguir en su columna, el vector unitario, característico de una variable básica que
forma parte de la matriz I. Por lo tanto se escriben, el coeficiente 1 en la posición del pivote y coeficientes
cero en el resto de la columna. Además, en el renglón Z de la tabla, el coeficiente correspondiente también
debe resultar cero. Esto debido a que los coeficientes del renglón Z son indicadores del posible
incremento en el valor de la función objetivo. En cuanto una variable no básica se incrementa de valor
haciéndola básica, el coeficiente en tal renglón resulta de valor cero, indicando así, que X2 ya no puede
aportar a la ganancia representada con la variable Z.

FIGURA 4: TABLERO N° 2: Segunda Solución Básica

VARIABLES DE VARIABLES DE
DECISIÓN HOLGURA
cJ 3 5 0 0 0
Cj Xk b X1 X2 H1 H2 H3 θ
0 H1

0 H3
Z
Cj - Zj

Un cálculo con la restricción (2) en la forma estándar: 2X 2 + H2 = 12, sustituyendo los valores X 2=6 y H2=0
dados en la segunda tabla simplex: 2(6) + 1(0) = 12, muestra que debe utilizarse todo el recurso (2),
produciendo hasta ahora una ganancia Z = 3X1 + 5X2 = 3(0) + 5(6) = 30, que resulta mejor a Z = 0 anterior.

Observe el único cambio de la base, sigue con tres variables, pero X 2 sustituye a H2 como variable básica y
conserva a H1 y H3, de la solución básica factible de tabla anterior ya que ambas son, de puntos extremos
adyacentes.

La nueva solución básica factible valorada con el simplex es, por analogía, el punto extremo vértice A(0,6)
en Figura 2: ( X1, X2, H1, H2, H3 ) = ( 0, 6, 4, 0, 6 )

Ahora las variables básicas H1, X2, H3 con vector columna unitario hacen la base I.

A continuación se presenta la tercera tabla simplex en la Figura 5 que se inicia colocando las variables
básicas H1, X2, X1, así ordenadas en los renglones, calculando los coeficientes del renglón entrante que se
obtienen al dividir el renglón correspondiente a la variable saliente entre el número pivote 3; RE = RS / 3.

En el cruce de la columna de X1 con el renglón RE ya determinado debe haber un número 1, el cual es


pivote. La columna X1 debe completarse con coeficientes cero para que sea vector unitario de esta variable,
que con H1 y X2 forman la matriz de base I.

Con el nuevo renglón RE de esta tabla y los renglones señalados en las fórmulas anotadas en el lado
izquierdo de la misma, se procede al cálculo de los coeficientes faltantes mediante el procedimiento de
eliminación para la solución de ecuaciones lineales de Gauss-Jordan; anote que en la fila correspondiente a
la variable básica X2, no hay necesidad de calcular sus coeficientes porque el cero requerido para vector
unitario en la columna de X1 ya existe desde la tabla anterior, por lo que solamente se copia de la misma;
resultando la tercera tabla simplex siguiente en la Figura 5

LIC. MIGUEL CANO


7

FIGURA 5: TABLERO N° 3: Tercera Solución Básica

VARIABLES DE VARIABLES DE
DECISIÓN HOLGURA
cJ 3 5 0 0 0
Cj Xk b X1 X2 H1 H2 H3 θ
0 H1
5 X2

Z
Cj - Zj

Los resultados de esta tabla simplex, muestran los coeficientes indicadores en el renglón Z,
correspondientes a las cinco variables con valor no negativo; según el criterio de optimalidad significa que
ya no hay variables candidatas para entrar a la base y así se tiene una solución óptima en el renglón Z con
un valor:

que debe completarse con la lectura del programa óptimo en las filas de las variables en la base y
columna solución: Variables de decisión X1 = 2, X2 = 6, variable de holgura H1 = 2. Las variables no
presentes en la base, deben valer cero: holguras H2 = 0, H3 = 0.Sustituyendo el programa obtenido en el
problema con forma estándar se tiene.

Las restricciones (2) y (3), se cumplen con valor cero para las holguras H 2 y H3, significa que en esos
recursos no existe sobrante. En cambio, el recurso (1) que vale 4, tiene sobrante que representa la variable
básica de holgura H1 = 2.

Ejercicios Propuestos
Aplicar el método simplex a los siguientes modelos de programación lineal

1.- max Z= 5 x1 - x2 4.- max z = 2 x 1 + x2


s. a. 2 x1 + 3 x2 ≥ 12 s. a. x2 ≤ 6
x1 - 3 x2 ≥ 0 2 x1 + 5 x2 ≤ 60
x1 , x2 ≥ 0 x1 + x2 ≤ 18
3 x1 + x2 ≤ 44
2.- max Z = 4 x1 + x2 x 1 , x2 ≥ 0
s. a. 8 x1 + 2 x2 ≤ 16
x1 + x2 ≤ 12 5.- max z = 2 x 1 + 5 x2
x1 , x2 ≥ 0 s. a. x1 + 3 x2 - x3 ≤ 15
x 1 - x2 - x4 ≥ 3
3.- max z = 10 x1 + x2 x1 , x2 ≥ 0
s. a. x1 + 2 x 2 ≤ 6
2 x1 - x2 ≤ 4 6.- Un P.L se llama DEGENERADO si tiene por lo
5 x1 + 3 x2 ≤ 15 menos una solución básica factible con una
x1 , x2 ≥ 0 variable básica igual a cero. Resolver:
max z = 5 x1 + 5 x2
LIC. MIGUEL CANO
8

s. a. x1 + x2 ≤ 6 s. a. 2 x1 + 3 x2 ≤ 3
x1 - x2 ≤ 0 x1 + 5 x2 ≤ 1
x1 , x 2 ≥ 0 2 x1 + x 2 ≤ 4
7.- max Z= 3 x1 + 2 x2 + 4 x3 4x1 + x2 ≤ 5
s. a. x1 + x2 + 2 x 3 ≤ 4 x1 , x 2 , x3 ≥ 0
2 x1 + + 3 x3 ≤ 5
2 x1 + x2 +3 x3 ≤ 7 9.- max Z = 2 x1 + 3 x2 + 5 x3 + x4
x1 , x 2 , x3 ≥ 0 s. a. x1 + 2 x 2 + 3 x 3 + x 4 ≤ 5
x1 + x 2 + 2 x 3 + 3 x 4 ≤ 3
8.- max Z = 2 x1 + x2 x1 , x 2 , x3 , x4 ≥ 0

*****************

LIC. MIGUEL CANO

También podría gustarte