Está en la página 1de 13

MÉTODO SIMPLEX

FORMA ESTÁNDAR DE PROGRAMACIÓN LINEAL.


Un modelo de Programación Lineal se transforma en una forma estándar si cumple con las
características:
1. La función objetivo debe ser de maximización (A partir de la experiencia, se ha notado
que no siempre es necesaria esta condición).
2. El sistema de restricciones se debe conformar por un conjunto de igualdades restrictivas,
donde los términos independientes o parámetros del lado derecho de las restricciones

que se definen como deben ser positivos a cero.


3. Todas las variables deben cumplir con la condición de no negatividad o sea

4. En forma general el modelo estándar (modelo estandarizado) se representa como:


Función objetivo: Z = C1 X1 + C2 X2 + C3 X3 +…+ Cn Xn
Sujeto a

A{1X+A12X+A13X+. A1nX=b1¿{A21X+A2X+A23X+. A2nX=b2¿{A31X+A32X+A3X+. A3nX=b3¿{· ¿{· ¿{· ¿


Igualdades restrictivas

∀ X j ≥0; j=1, 2, 3,..., n

Para éste modelo, los deben ser positivos o iguales a cero.

\ = restricciones
= variables

En un modelo de este tipo, se cumple que < , por lo tanto, el sistema de igualdades
tiene infinitas soluciones (como se notó con el método gráfico, las infinitas soluciones del
área factible).
Para transformar cualquier modelo de programación lineal en su forma estándar se hace
necesario utilizar las siguientes transformaciones:

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


a) Si se tiene un función objetivo de Minimización, o sea Min Z, se puede transformar en Z’
= - Z y cambiar la función objetivo a Max (-Z) o sea Max Z’ (no siempre se hace
necesario hacerlo).
b) Si la restricción del modelo presenta una desigualdad de la forma ≤, se suma una nueva
variable, que se llamará variable de holgura, para lograr establecer la igualdad.
Ejemplo: si la restricción es

Su forma estándar sería:

, ó

Las variables o , serían las que representen a la variable de holgura.


Ejemplo numérico:
2X1 + 3X2 + 4X3 + 6X4 ≤ 10 (Restricción i)
Su forma estándar es:
2X1 + 3X2 + 4X3 + 6X4 + S1 = 10

Igualmente es posible utilizar la misma nomenclatura de la variable , usando X5 por


S1, poniendo mucho cuidado que X5 no se haya utilizado en el modelo ni usado cuando
se formuló originalmente.
La variable de holgura tiene una interpretación en los modelos de programación lineal.
Como siempre se ubica en una restricción que representa a la disponibilidad de un
recurso por ser menor o igual, cuando se llegue a la solución óptima del modelo esta
variable va a alcanzar un valor mayor o igual a cero. Si el valor en la solución óptima de
la variable de holgura es igual a cero, significa que el recurso que esta representando la
restricción es escaso, se ha utilizado todo el nivel de recurso su holgura es cero. Si el
valor en la solución óptima de la variable de holgura es mayor a cero, el recurso es
abundante existe un remanente en el recurso, no todo el nivel disponible del recurso se
utilizó.
Observe el siguiente ejemplo, matemáticamente la restricción 2X1 +X2 ≤ 230 asociada
con el empleo de horas en el departamento de confección para el ejemplo prototipo
utilizado en el método gráfico.

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


Esta restricción para estandarizarse utiliza una variable de holgura.

2X1 +X2 ≤ 230 es equivalente a 2X1 + X2 + S1 = 230 siempre y cuando S1 ≥ 0


à S1 = 230 – 2X1 – X2 (lo disponible menos lo usado)
y S1 representará las horas no utilizadas en el departamento de confección.
c) Si la restricción del modelo presenta una desigualdad de la forma ≥ en su lado derecho,
se resta una nueva variable, que se llamará variable de superávit o variable de exceso.
Ejemplo: si la restricción es

Su forma estándar sería:

, ó

Cuando un modelo de programación lineal presenta restricciones del tipo ≥, el lado


derecho representa requerimientos mínimos que deben cumplir las actividades
(variables) o cumplimiento de otras especificaciones. Cuando se tiene variables de
superávit, esta variable representa el exceso del lado izquierdo sobre el requerimiento
mínimo. Otra manera de interpretarla es como la cantidad que sobrepasa al mínimo de
requerimiento.
Suponga un modelo de dieta en el cual se necesita producir un alimento especial a partir
de una mezcla de maíz y semilla de soya. Una de las restricciones de este modelo
plantea que por lo menos deben producirse 800 libras de alimento especial, donde X1,
es el número de libras de maíz a utilizar y X2, es el número de libras de semilla de soya
a utilizar en el alimento especial.
Matemáticamente esta restricción se representa como:
X1 + X2 ≥ 800
Para estandarizar la restricción, se utiliza una variable de superávit.
à X1 + X2 ≥ 800 es equivalente a X1 + X2 – S1 = 800
– S1 = 800 – (X1 + X2) con S1 ≥ 0
S1 = –800 + (X1 + X2)
Para este caso S1 representa el número de libras de excedente que se producirá si S1 es
mayor que cero, se puede leer también, como el número de libras producidas por
encima del requerimiento mínimo de 800 libras.

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


Note que necesariamente las variables de holgura y superávit (Slack - Surplus) deben
también cumplir con las restricciones de no-negatividad.

d) Si alguno de los es menor que cero, se puede multiplicar por (-1) a los dos lados de
la desigualdad (o igualdad), para luego sumarle o restarle variables de holgura o
superávit, dependiendo del signo (≤ ó ≥) que tenga la desigualdad.
e) Si la restricción original es de igualdad, no se hace necesario vincular holgura o
superávit para estandarizarla.
f) Cuando existe alguna variable del modelo que no tiene restricción de No-negatividad,
llamadas variables irrestrictas en signo o variables libres, se debe reemplazar por la
diferencia de dos variables positivas.

es variable irrestricta, ó libre ( puede ser mayor, igual o menor que cero).

Por lo tanto en el modelo donde aparezca ésta variable , se debe cambiar por:

Este tipo de variable es muy aplicable en el tema de programación de metas.


EJEMPLO: Transformar en la forma estándar al siguiente modelo de programación lineal.
Min Z = 2X1 + 3X2 – 6X3 + 4X4
Sujeto a
2X1 + 3X2 + 4X3 ≤9 (R1)
X2 + 6X3 – 2X4 = -8 (R2)
4X1 – 6X2 + 3X4 ≥ -7 (R3)
X1 + X 2 + X3 ≥ 10 (R4)
2X3 + 5X4 =6 (R5)
(X1, X2, X3) ≥ 0 y X4 libre o irrestricta en signo.
Para alcanzar la forma estándar de este modelo se necesita aplicar las siguientes
operaciones:
 En la R1 se debe sumar una variable de holgura.
 En la R2 se debe multiplicar a los dos lados de la igualdad por (-1) sin adicionarse
variables de holgura o superávit.
 En la R3, de debe multiplicar por (-1) a los dos lados de la desigualdad y luego
sumarle una variable de holgura correspondiente.
 En la R4, se necesita restarle una variable de superávit.
 En la R5, no se necesita aplicar ninguna transformación.

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


 En el modelo donde aparezca la variable X4, se debe reemplazar por

 La función objetivo debe ser de maximización.

à
Sujeto a

EL MÉTODO SIMPLEX
El método simplex creado por George Dantzig en el año 1947 y considerado uno de los
desarrollos más importantes del siglo pasado. Su forma general se transfiere a un proceso de
solución en forma de algoritmo. Con el método gráfico se conoció que la solución óptima de
un modelo de programación lineal se encontraba siempre en un punto esquina o punto
frontera, que matemáticamente se conoce como punto extremo. Puntos ubicados entre las
intersección de las rectas gráficas que representan a las intersecciones, y que pertenecen a
un espacio de solución llamado área factible. Este concepto que nos brinda el método gráfico
es la idea clave para el desarrollo del Método Simplex para resolver cualquier modelo de
programación lineal.
La relación entre los dos métodos es que por el método gráfico, geométricamente se
conocen los puntos extremos, ahora con el método simplex se va a identificar esos puntos
extremos, pero matemáticamente. Para lograrlo primero se transforma el modelo de
programación lineal en lo que se llama forma estándar de programación lineal, utilizando
para ello variables de holgura o de superávit al transformar las restricciones de desigualdad
en igualdades. El algoritmo simplex se diseñó para determinar de una forma eficiente el
punto óptimo entre las soluciones básicas. Se aplica de dos maneras, una forma matricial y
otra tabular.
MÉTODO SIMPLEX TABULAR

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


Igual que en la presentación matricial el método simplex utiliza tres criterios fundamentales
para su aplicación de manera tabular después de estandarizarlo: criterio de optimalidad ó
parada, criterio de salida y criterio de entrada. El método simplex tabular organiza los valores
en tablas conocidas como tableros simplex.
Cuando el modelo de programación lineal presenta todas las restricciones de menor igual, al
estandarizarlo las variables de holgura que se vinculan siempre forman una matriz idéntica.
Esta matriz corresponde a la base y arranque para la aplicación del método, la forma
estándar es el insumo para iniciar el proceso del método simplex tabular y permite conformar
la tabla inicial cuya estructura se presenta a continuación:
 Cj 
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS ө

Zj

Cj - Z j

Variables básicas, aquellas variables diferentes de cero. Hacen parte de la solución.


CB, coeficientes de las variables básicas en la función objetivo
Cj, coeficientes de las variables originales, holgura y/o superávit en la función objetivo.
XB, representa la solución del modelo y determina el valor de las variables básicas.
X1, X2, variables originales del modelo de programación lineal.
S1, S2, S3, variables de holgura o superávit.
Cociente , referente para decisión cuando se aplica el criterio de salida.
Zj, valor de la solución en la función objetivo.
Cj - Zj, referente para la aplicación de los criterios de entrada y parada.

Se presenta a continuación la aplicación del método simplex tabular al ejercicio de la


empresa de confecciones.
Su forma estándar:
Max Z = 300X1 + 500X2 + 0S1 + 0S2 + 0S3
Sujeto a
2X1 + X2 + S1 = 230
X1 + 2X2 + S2 = 250
X2 + S3 = 120
(X1, X2, S1, S2, S3) ≥ 0

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


S1, S2, S3 variables de holgura
Observe que las variables de holgura forman una submatriz idéntica de orden 3 (ver tabla 1).
Esta submatriz forma la base inicial que necesita el método para el arranque.

Entonces, la primera tabla representa a la solución básica factible inicial. Formada a partir de
realizar n – m variables iguales a cero, X1, X2 = 0. Igual que en el método de enumeración de
soluciones básicas, una solución básica inicial.
Tabla 1: Tabla inicial
 Cj  300 500 0 0 0
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS
S1 0 230 2 1 1 0 0

S2 0 250 1 2 0 1 0

S3 0 120 0 1 0 0 1

Zj 0 0 0 0 0 0

Cj - Z j 300 500 0 0 0

La fila Zj, se calcula como el producto escalar del vector CB y los vectores XB, X1,…, S3.

La fila Cj - Zj, se obtiene realizando la operación indicada, fila Cj menos fila Zj.
De esta manera se construye la tabla inicial para iniciar el proceso de aplicación del método,
la lectura para la primera tabla es la siguiente:

Variables básicas Variables No básicas


S1 = 230 X1 = 0
S2 = 250 X2 = 0
S3 = 120
Valor de la función objetivo Zj = 0
CAMBIOS DE BASE
Los cambios de base permiten reconocer una nueva solución para las variables básicas si el
método no ha alcanzado la solución óptima, para el ejemplo la solución inicial X1 = 0, X2 = 0
no puede ser una solución óptima ( ¡ el sistema no realiza las actividades !.
Para realizar un cambio de base y alcanzar la solución óptima el método simplex utiliza los
tres criterios: optimalidad, entrada y salida.

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


CRITERIO DE OPTIMALIDAD, definido también como criterio de parada, permite reconocer
en el proceso de aplicación si el método ya alcanzo la solución óptima, se define en la fila Cj -
Zj. Cuando se verifica que el criterio se cumple, el proceso de aplicación del método simplex
termina.

La regla de decisión para su aplicación es la siguiente: El algoritmo simplex termina si todos


los valores en:

Para el ejemplo (ver tabla 2), observe que la fila Cj - Zj no cumple con la regla de decisión, el
modelo es de maximización y todos los valores de esta fila son positivos.
El método simplex al notar esta situación reconoce que puede mejorar esta solución, toda
vez que esta solución no ofrece ninguna retribución al sistema y el modelo buscará alcanzar
el máximo valor.
Para mejorar la solución, el método utiliza el siguiente criterio, criterio de entrada. Si en la
base existen variables que no mejoran la solución, se hace necesario vincular a la base una
variable que aumente el valor de la función objetivo.
CRITERIO DE ENTRADA, permite transformar una variable no básica en variable básica, de
esta manera el método simplex asegura que la nueva variable que se vincule a la base con
toda seguridad mejorara el valor de la función objetivo.
La regla de decisión para este criterio es la siguiente: Entra a la base (se transforma en
variable básica) aquella variable que en la fila:

El método simplex confirma, si existe una variable que entra a la base, debe existir una
variable básica que debe salir.
Cuando se aplica este criterio se identifica en la tabla la columna pivote, columna X2 (ver
tabla 2).
CRIETERIO DE SALIDA, permite reconocer de todas las variables que pertenecen a la base,
variables básicas, cuál de ellas debe salir, dejar el espacio para la variable entrante o nueva
variable básica.
La regla de decisión para este criterio es la siguiente: Sale de la base la variable cuyo
cociente sea el menor valor

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


\

Teniendo presente que el denominador de esta relación siempre sea > 0. Si =0, la
variable que represente a la restricción es candidata a abandonar la base.
Este criterio permite identificar la fila pivote, fila S3 (ver tabla 2).
La intercepción entre la fila y columna pivote forma el pivote, se utiliza como referente para
encontrar las nuevas posiciones de una nueva tabla o nueva solución.
Siempre el pivote debe ser igual a 1, si esto no sucede, se debe dividir toda la fila pivote
entre el valor del pivote obtenido al aplicar los criterios, a partir de la columna XB, X1,…S3. La
columna CB, se conoce, coeficientes de las variables básicas en la función objetivo.
Resumen de resultados al aplicar los criterios:
El criterio de optimalidad permite reconocer que no se esta en el óptimo la fila Cj - Zj son
todos positivos, se aplica entonces el criterio de entrada, los variables candidatas a entrar a
la base son X1 y X2, cuyos valores son 300 y 500. Entra a la base el más positivo, 500, entra
la variable X2. Al aplicar el criterio de salida:

Sale de la base la variable S3. Cruce entre fila pivote y columna pivote = 1, permite utilizar el
pivote par obtener todas las posiciones de una nueva tabla.
La tabla inicial tendría el siguiente aspecto:
Tabla 2: Aplicación criterios. 
 Cj  300 500 0 0 0
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS
S1 0 230 2 1 1 0 0 230/1=230

S2 0 250 1 2 0 1 0 250/2=125

S3 0 120 0 1 0 0 1 120/1=120

Zj 0 0 0 0 0 0

Cj - Z j 300 500 0 0 0

Después de aplicar los criterios e identificar la optimalidad, la variable que entra y sale así
como el valor del pivote, se realizan operaciones elementales entre filas de eliminación

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


gaussiana para obtener la nueva tabla simplex que permite obtener con toda seguridad una
nueva solución con un mejor valor en la función objetivo que la obtenida inicialmente.

La segunda tabla se obtiene de la siguiente forma (ver tabla 3):


 Al ingresar a la base la variable X2 columna pivote. Entonces, donde se ubicaba S3 se
coloca X2.
 CB, coeficiente para X2 en la función objetivo es 500
 Como el pivote es 1 la fila pivote se mantiene y se traslada igual a partir de la
columna de XB.
 Observe que todas las variables que pertenecen a la base forman la matriz identidad,
esta afirmación se cumple para todas los tableros simplex, entonces, la intersección
de cada variable básica con su respectiva en columna es 1 y las demás celdas en
columna son iguales a cero. Esto permite acelerar el proceso de construcción de los
tableros simplex.
El aspecto de la segunda tabla sería el siguiente:
Tabla 3: Obtención segunda tabla.
 Cj  300 500 0 0 0
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS
S1 0 0 1 0

S2 0 0 0 1

X2 500 120 0 1 0 0 1

Zj

Cj - Z j

Para completar la tabla se necesita encontrar los valores de las celdas (S1, XB), (S1, X1), (S1,
S3), (S2, XB), (S2, X1) y (S2, S3). Existen varios procedimientos para obtener las posiciones de
las celdas, las operaciones se realizan siempre en la tabla anterior.
Observe uno de los procedimientos:
Para hallar la celda (S1, XB) = valor correspondiente de la columna pivote (X2), de la fila
donde se va a hallar el nuevo valor de la celda (S1), siempre con signo contrario (-1). Se
multiplica este valor por el valor ubicado en la fila pivote (S3) de la columna donde se va a
hallar el valor de la celda (XB), 120. El resultado de esta multiplicación se suma al valor actual
que tiene la celda (230).
La operación es la siguiente:
(S1, XB) = (-1)*(120)+230 = 110. Utilizando este procedimiento se encuentran los valores de
las celdas pendientes. Verifíquelos.

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


(S1, X1) = (-1)*(0) +2 = 2
(S1, X2) = (-1)*(1) +1 = 0
(S1, S1) = (-1)*(0) +1 = 1
(S1, S2) = (-1)*(0) +0 = 0
(S1, S3) = (-1)*(1) +0 = -1.
De igual manera se procede con la fila 2, S2 y la fila 3 S3.
(S2, XB) = (-2)*(120) +250 = 10,
Al completar los valores de las celdas se halla la fila Zj, la fila Cj – Zj y se aplican los criterios
como se explicó anteriormente.
Los resultados de la segunda tabla – segunda iteración.
 Cj  300 500 0 0 0
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS
S1 0 110 2 0 1 0 -1 110/2=55

S2 0 10 1 0 0 1 -2 10/1=10

X2 500 120 0 1 0 0 1 120/0=


Zj 60.000 0 500 0 0 500

Cj - Z j 300 0 0 0 -500

Para cada iteración – tabla, se aplican secuencialmente los tres criterios hasta cumplir con el
criterio de optimalidad.
Aplicando los criterio, el resultado de la tercera iteración, verifíquela:
 Cj  300 500 0 0 0
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS
S1 0 90 0 0 1 -2 3 90/3=30

X1 300 10 1 0 0 1 -2 10/-2=-5

X2 500 120 0 1 0 0 1 120/1=120

Zj 63.000 300 500 0 300 -100

Cj - Z j 0 0 0 -300 100

Cuarta iteración, verifíquela.


 Cj  300 500 0 0 0
VARIABLES Cociente
CB XB X1 X2 S1 S2 S3
BÁSICAS
S3 0 30 0 0 1/3 -2/3 1

X1 300 70 1 0 2/3 -1/3 0

X2 500 90 0 1 -1/3 2/3 0

Zj 66.000 300 500 100/3 700/3 0

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


Cj - Z j 0 0 -100/3 -700/3 0

En la cuarta iteración se cumple el criterio de optimalidad, Cj - Zj ≤ 0, se ha alcanzado la


solución óptima.
Variables básicas Variables No básicas
S3 = 30 S1 = 0
X1 = 70 S2 = 0
X2 = 90
Valor de la función objetivo Zj = 66.000
INTERPRETACIÓN DE LA TABLA ÓPTIMA
Variables básicas
X1, La empresa de confecciones debe producir 70 unidades de uniformes tipo 1 en la
semana.
X2, La empresa de confecciones debe producir 90 unidades de uniformes tipo 2 en la
semana.
S3, La demanda de los uniformes tipo 2 no se alcanza a cubrir existen 30 unidades
pendientes por cumplir.
Variables no básicas
S1, Las horas en el departamento de confección se utilizan en su totalidad, no sobran horas
en este departamento.
S2, Igual que en el departamento de confección, las horas en el departamento de empaque
se utilizan en su totalidad, tampoco sobran horas en este departamento.
Precios sombra
Observe que se presenta una relación directa entre la interpretación de las variables de
holgura y los precios sombra. Si el recurso es escaso, variable de holgura igual a cero, el
recurso que representa esta variable de holgura obligatoriamente posee un precio sombra.
Para el ejemplo, el recurso horas del departamento de confección, representado por la
variable de holgura S1, es escaso por lo tanto tiene un precio sombra. Los precios sombra se
reconocen en la solución óptima del tablero simplex, exactamente debajo de la matriz inversa
(matriz sombreada en la última tabla, fila Zj). Por lo tanto las horas en el departamento de
confección tienen un precio sombra de $33, 33333 (100/3). Igual las horas en el
departamento de empaque tienen un precio sombra de $ 233,3333 (700/3).
Interpretación del precio sombra

Investigación de Operaciones – Jorge Eduardo Calpa Oliva


Por definición de precio sombra, es el valor unitario del recurso cuando se incrementa o
disminuye su margen en el lado derecho, valor que afecta a la función objetivo
incrementándola o disminuyéndola, teniendo presenten que el cambio se encuentre por
dentro o por fuera del intervalo de sensibilidad. Observe que para la variable de holgura S3 el
precio sombra es cero, esto se presenta por que el recurso en teoría es abundante
“sobrarían” 30 unidades para cumplir con la demanda de los uniformes tipo 2. Esta
interpretación se explicó para la solución método de enumeración de soluciones básicas.

Investigación de Operaciones – Jorge Eduardo Calpa Oliva

También podría gustarte