Você está na página 1de 42

¡La universidad para todos!

¡La Universidad para todos!

Investigación de Operaciones I
Tema: Algoritmo Método Simplex
Docente: Chambergo García Alejandro Oscar

Escuela Profesional Periodo académico: 2018-2


INGENIERÍA INDUSTRIAL Semestre:5
Unidad:2
¡La universidad para todos!

Algoritmo Simplex
¡La universidad para todos!

El Método Simplex
Hasta ahora hemos resuelto problemas de programación
lineal por un método geométrico. Este método no es
práctico cuando el número de variables aumenta a tres y,
desde luego, no es posible usarlo si las variables son más
de tres. Ahora veremos una técnica diferente: el Método
Simplex.
Este método se debe a Dantzig y fue dado a conocer en
1947. Su base matemática es bastante amplia, pero,
solamente se enunciarán las reglas de cálculo.
Objetivo: mostrar cómo el método Simplex es utilizado
para resolver un problema de programación lineal
estándar. Este método le permitirá resolver problemas
que no pueden ser resueltos geométricamente.
¡La universidad para todos!

El Método Simplex
Problema estándar de programación lineal

Max Z=c1x1 + c2x2 + ... + cnxn

sa a11x1 + a12x2 + ... + a1nxn ≤ b1


a21x1 + a22x2 + ... + a2nxn ≤ b2
... ... ...
am1x1 + am2x2 + ... + amnxn ≤ bm

X1, X2 , … Xn b1, b2 , … bm son no negativos


¡La universidad para todos!

El Método Simplex
Como se tiene m desigualdades, es necesario agregar m
variables de holgura, ahora bien, al introducir m incógnitas
más en las restricciones, deben aumentarse también en la
función objetivo. Sin embargo, para que no alteren dicha
función, estas incógnitas deberán figurar con coeficiente
cero.
Max Z=c1x1 + c2x2 + ... + cnxn + 0xn+1 + … + 0xn+m

sa a11x1 + a12x2 + ... + a1nxn + xn+1 = b1


a21x1 + a22x2 + ... + a2nxn + xn+2 = b2
... ... ...
am1x1 + am2x2 + ... + amnxn + xn+m = bm

Variables de holgura son Xn+1, Xn+2 , … Xn+m


¡La universidad para todos!
El Método Simplex
Método: leer y entender cada ítem cuidadosamente de
estos pasos depende el éxito de las operaciones que
vamos a realizar para encontrar la solución óptima en los
diferentes casos que se nos presente.
1. Configure la tabla Simplex inicial
¡La universidad para todos!
El Método Simplex

2. Si todos los indicadores en el último renglón son no


negativos, entonces Z tiene un valor máximo cuando
x1=0, x2=0, …, xn=0. El valor máximo es 0.
Si existen indicadores negativos, localice la columna en
la que aparezca el indicador más negativo. Esta
columna pivote proporciona la variable entrante.
3. Divida cada entrada positiva por encima de la línea
punteada en la columna de la variable entrante, con el
correspondiente valor de b. (tomando el valor de b
como dividendo y la entrada positiva como divisor).
¡La universidad para todos!
El Método Simplex

4. Marque la entrada en la columna pivote que


corresponda al cociente más pequeño del paso (3).
Esta es la entrada pivote. La variable saliente es
aquella que está a la izquierda en el renglón pivote.
5. Utilice operaciones elementales sobre renglones para
transformar la tabla en una nueva tabla equivalente que
tenga un 1 donde estaba la entrada pivote y ceros en
las otras entradas de esa columna.
6. En el lado izquierdo de esta tabla la variable entrante
reemplaza a la variable saliente.
¡La universidad para todos!
El Método Simplex

7. Si los indicadores de la nueva tabla son todos no


negativos, tendrá usted una solución óptima.
El valor máximo de Z es la entrada en el último renglón
y la última columna. Ocurre cuando las variables a la
izquierda de la tabla son iguales a las correspondientes
entradas en la última columna. Todas las demás
variables son iguales a cero.
Si al menos uno de los indicadores es negativo, repita
el proceso empezando con el paso 2 aplicado a la
nueva tabla.
¡La universidad para todos!
El Método Simplex

Como ayuda para entender el método Simplex, podría


interpretar ciertas entradas en la tabla. Suponga que
obtenemos una tabla cuyo último renglón está indicado a
continuación
¡La universidad para todos!
El Método Simplex

Podemos interpretar la entrada b, por ejemplo, como


sigue. Si x2 es no básica y se fuera a convertir en básica,
entonces por cada aumento de 1 unidad en x2,
Si b<0, Z aumenta en |b| unidades;
Si b>0, Z disminuye en |b| unidades;
Si b =0, no hay cambio en Z.
¡La universidad para todos!
El Método Simplex

Conceptos básicos

a) Algoritmo Simplex: es el método algebraico para


resolver cualquier problema de programación lineal en
un número finito de pasos en una computadora.
b) Iteración: una serie de pasos de un algoritmo que se
repite.
c) Prueba de optimalidad: método para determinar si la
solución obtenida es la óptima.
d) Forma estándar: una forma particular de un problema de
programación lineal en el que la función objetivo debe
ser maximizada; solamente existen restricciones de
igualdad y todos los lados derechos y variables son no
negativas.
¡La universidad para todos!
El Método Simplex

Conceptos básicos

e) Variable de holgura: es una variable no negativa que se


añade al lado izquierdo de una restricción menor o igual
que, para obtener una restricción de igualdad
equivalente.

f) Variable de superávit: es una variable no negativa que


se resta del lado izquierdo de una restricción mayor o
igual que, para obtener una restricción de igualdad
equivalente.
¡La universidad para todos!
El Método Simplex

Conceptos básicos

g) Variable no básica: conjunto seleccionado de variables


de un programa lineal en forma estándar (en número
igual al total de variables menos el número de
restricciones de igualdad) cuyos valores se toman como
cero o dicho de otra forma (son las variables de decisión
que toman el valor de cero).

h) Variable básica: una de las variables restantes,


diferentes a las no básicas, de un PL en forma estándar
(igual en número al total de restricciones de igualdad) o
dicho de otra forma son las variables de decisión que
quedan para resolver el sistema (toman valores por lo
menos uno diferente de cero).
¡La universidad para todos!
El Método Simplex

Conceptos básicos

i) Solución básica: son valores de las variables que


satisfacen las restricciones de igualdad de un
programa lineal en forma estándar, después de que las
variables no básicas se toman como cero.

j) Solución factible básica (sfb): valores de las variables


que satisfacen las restricciones de igualdad y de no
negatividad de un programa lineal en forma estándar,
después de que las variables no básicas se toman
como cero.
¡La universidad para todos!
5.1. Ejemplo de maximización

Ejemplo 1. Una empresa que produce banjos, guitarras y


mandolinas utiliza madera, mano de obra y metal. Las
cantidades de estos inputs precisas para realizar una unidad
de cada instrumento musical se muestran en la siguiente
tabla.
Banjo Guitarra Mandolina
Madera 1 2 1
Mano de obra 1 2 2
Metal 1 1 1

La empresa dispone de 50 unidades de madera, 60 unidades


de trabajo y 55 unidades de metal y vende los banjos a 200
u.m., las guitarras a 175 u.m. y las mandolinas a 125.um
Encontrar la producción que maximiza el ingreso.
¡La universidad para todos!
5.1. Ejemplo de maximización

Solución
i) Variables de decisión:
Sea x1: El numero de banjos a producir
x2: El numero de guitarras a producir
x3 : El numero de mandolinas a producir

Función objetivo Max Z=200x1 +175x2 +125x3


s.a.
1x1 + 2x2 + 1x3 ≤ 50
1x1 + 2x2 + 2x3 ≤ 60
1x1 + 1x2 + 1x3 ≤ 55
xi  0, i=1,2,3
¡La universidad para todos!
5.1. Ejemplo de maximización

ii) Para Estandarizar el modelo introducimos variables de


holgura: x4 ,x5 ,x6 respectivamente. Sin embargo, para que
no alteren dicha función objetivo, estas incógnitas deberán
figurar con coeficiente cero es decir:
Max Z=200x1 +175x2 +125x3 +0x4 +0x5 +0x6
s.a.
1x1 + 2x2 + 1x3 + x4 = 50
1x1 + 2x2 + 2x3 + x5 = 60
1x1 + 1x2 + 1x3 + x6 = 55

xi  0, i=1,2,3,4,5,6
¡La universidad para todos!
5.1. Ejemplo de maximización

iii) Definimos variables básicas y no básicas

Variables no básicas Variables básicas

x1 = 0 x4 = 50

x2 = 0 x5 = 60

x3 = 0 x6 = 55

Z=0
¡La universidad para todos!
5.1. Ejemplo de maximización

iv) Vamos a confeccionar el tablero Simplex


¡La universidad para todos!
5.1. Ejemplo de maximización
¡La universidad para todos!
5.1. Ejemplo de maximización
¡La universidad para todos!
5.1. Ejemplo de maximización

Las variables básicas son:


X1 = 50; X2 = 0; X3 = 0
y las variables no básicas son:
X4 = 0; X5 = 10; X6 = 5

Nuestra respuesta lo damos en función a las variables de


decisión.
Plan de producción:
X1 = 50 Banjos
X2 = 0 Guitarras
X3= 0 Mandolinas

Z Máx. Óptimo=10 000


¡La universidad para todos!

5.2. Ejemplo de maximización


Ejemplo 2. Un empresario que fabrica tres artículos A, B, y C, desea
encontrar la producción semanal que le permita maximizar sus beneficios.
Los productos A, B y C son procesados en tres máquinas siendo la
producción mínima semanal de 100, 60, y 60 unidades respectivamente.
El beneficio por unidad vendida de estos artículos es de 2 u.m. por unidad
de A, 2 u.m. por unidad de B y 4 u.m. por C. las horas que se necesitan
por unidad de artículo y máquina son:

Artículo A Artículo B Artículo C


Máquina 1 0 1 2
Máquina 2 1 1 1
Máquina 3 2 1 1

Siendo el número de horas semanales disponibles en cada máquina 240,


400 y 360 respectivamente. Determinar la producción semanal óptima
¡La universidad para todos!

5.2. Ejemplo de maximización


Solución:
A B C Tiempo
>=100 >=60 >=60 Disponible
Maquina1 0 1 2 240
Maquina2 1 1 1 400
Maquina3 2 1 1 360
Beneficio 2 2 4

Variables de decisión
Sea
x1 El número de artículos a producir de A
x2 El número de artículos a producir de B
x3 El número de artículos a producir de C
¡La universidad para todos!

5.2. Ejemplo de maximización


Max Z= 2x1 + 2x2 + 4x3
s.a.
x2 + 2x3 ≤ 240
x1 + x2 + x3 ≤ 400
2x1 + x2 + x3 ≤ 360
x1  100
x2  60
x3  60
xi  0
¡La universidad para todos!

5.2. Ejemplo de maximización

Plan de producción:
x1 : 105 artículos a producir de A
x2 : 60 artículos a producir de B
x3 : 90 artículos a producir de C

Con un ingreso Máx Z óptimo= 690


¡La universidad para todos!

Serie de Problemas 5.1


Utilice el método simplex para resolver los siguientes problemas:
¡La universidad para todos!

Serie de Problemas 5.1


Utilice el método simplex para resolver los siguientes problemas:
¡La universidad para todos!

Serie de Problemas 5.1


Utilice el método simplex para resolver los siguientes problemas:
¡La universidad para todos!

Serie de Problemas 5.1


Utilice el método simplex para resolver los siguientes problemas:
9. Envío de mercancías
Una compañía de fletes maneja envíos para dos compañías,
A y B, localizadas en la misma ciudad. La compañía A envía
cajas que pesan 3 libras cada una y tienen un volumen de 2
pies3; la B envía cajas de 1 pies3 que pesan 5 libras cada
una. Tanto A como B envían al mismo destino. El costo de
transporte por cada caja de A es de $0.75 y el de B es de
$0.50. La compañía de fletes tiene un camión con 2400 pies3
de espacio para carga y una capacidad máxima de 9200
libras. En un trayecto, ¿cuántas cajas de cada compañía
debe transportar este camión de modo que la compañía de
fletes reciba un ingreso máximo? ¿Cuál es el ingreso
máximo?
¡La universidad para todos!

5.2. SOLUCIONES NO ACOTADAS Y


SOLUCIONES ÓPTIMAS MULTIPLES
Soluciones no acotadas: si no existen cocientes en una tabla
simplex, entonces el problema de programación lineal tiene una
solución no acotada.
Soluciones óptimas múltiples: en una tabla que da una solución
óptima, un indicador igual a cero para una variable no básica
sugiere la posibilidad de soluciones múltiples. Por ejemplo
suponga que:
x1 = a1, x2 = a2, …, xn = an y
x1 = b1, x2 = b2, …, xn = bn
Estos son dos S:F:B. diferentes para los cuales un problema de
programación lineal es óptimo. Por «S.F.B. diferentes»
queremos decir que ai ≠ bi para alguna i, donde 1 ≤ i ≤ n,
entonces:
x1 = (1-t)a1 + tb1, x2 = (1-t)a2 + tb2, …, xn = (1-t)an + tbn
Para cualquier t donde 0 ≤ t ≤ 1
¡La universidad para todos!

5.2. SOLUCIONES NO ACOTADAS Y


SOLUCIONES ÓPTIMAS MULTIPLES
Ejemplo 1.0
Una compañía fabrica tres tipos de muebles para patio: sillas,
mecedoras y tumbonas. Cada uno requiere madera, plástico, y
aluminio como se indica en la siguiente tabla. La compañía tiene
disponibles 400 unidades de madera, 600 unidades de plástico y
1500 unidades de aluminio. Cada silla, mecedora y tumbona se
venden en $6, $8 y $12 respectivamente. Suponiendo que todos
los muebles pueden ser vendidos, ¿Cuál es el ingreso máximo
total que puede ser obtenido? Determinar las posibles órdenes de
producción que generarán ese ingreso.

Madera Plástico Aluminio

Silla 1 unidad 1 unidad 2 unidades

Mecedora 1 unidad 1 unidad 3 unidades

Tumbona 1 unidad 2 unidades 5 unidades


¡La universidad para todos!

Solución
i) Variables de decisión:
x1 : El numero de sillas a producir.
x2 : El numero de mecedoras a producir.
x3 : El numero de tumbonas a producir
Función objetivo f .o. Max Z = 6x1 + 8x2 + 12x3
s.a.
1x1 + 1x2 + 1x3 ≤ 400
1x1 + 1x2 + 2x3 ≤ 600
2x1 + 3x2 + 5x3 ≤ 1500
xi ≥ 0, i =1, 2,3
ii) Para estandarizar el modelo introducimos variables de holgura: x4, x5, x6
respectivamente. Sin embargo, para que no alteren dicha función objetivo,
estas incógnitas deberán figurar con coeficiente cero, es decir:
Función objetivo f .o. Max Z = 6x1 + 8x2 + 12x3 + 0x4 + 0x5 + 0x6
s.a.
1x1 + 1x2 + 1x3 + 1x4 = 400
1x1 + 1x2 + 2x3 + 1x5 = 600
2x1 + 3x2 + 5x3 + 1x6 = 1500
xi ≥ 0, i =1, 2,…, 6
¡La universidad para todos!

Solución
Variables no básicas: x1=0 x2=0 x3=0
Variables básicas: x4=400 x5=600 x6=1500
Z=0

X1 X2 X3 X4 X5 X6 Z B
X4 1 1 1 1 0 0 0 400
X5 1 1 2 0 1 0 0 600
X6 2 3 5 0 0 1 0 1500
Z -6 -8 -12 0 0 0 1 0

Variable que entra: (mínimo valor negativo) X3


400/1=400 600/2=300 1500/5=300
Variable que sale: (mínimo cociente positivo) X6
¡La universidad para todos!

5.2. Ejemplo de maximización


Multiplicar a la fila X6 por 1/5 para tener como valor 1
i) Multiplicar a la fila de x6 por (-1) y sumar a la fila de x4 es decir:
sale un nuevo x4
X6 -2/5 -3/5 -1 0 0 -1/5 0 -300 +
X4 1 1 1 1 0 0 0 400
3/5 2/5 0 1 0 -1/5 0 100
ii) Multiplicar a la fila de x6 por (-2) y sumar a la fila de x5 es decir:
sale un nuevo x5
X6 -4/5 -6/5 -2 0 0 -2/5 0 -600 +
X5 1 1 2 0 1 0 0 600
-1/5 -1/5 0 0 1 -2/5 0 0
iii) Multiplicar a la fila de x6 por (12) y sumar a la fila de Z es decir:
sale un nuevo Z
X6 24/5 36/5 12 0 0 12/5 0 3600 +
Z -6 -8 -12 0 0 0 1 0
- -6/5 -4/5 0 0 0 12/5 1 3600
¡La universidad para todos!

5.2. Ejemplo de maximización


Tablero Simplex Etapa II
X1 X2 X3 X4 X5 X6 Z B
X4 3/5 2/5 0 1 0 -1/5 0 100
X5 1/5 -1/5 0 0 1 -2/5 0 0
X3 2/5 3/5 1 0 0 1/5 0 300
Z -6/5 -4/5 0 0 0 12/5 1 3600
i) Ver la variable que ingresa:
Observamos que el indicador más negativo lo tiene la columna del X1
(-6/5); por tanto, X1 es la variable que ingresa.
La columna de X1 es columna pivote.
ii) ¿cuál es la variable que sale?
100/ (3/5)=500/3 0/(1/5)=0 300/(2/5)=750
el menor cociente positivo se da en la fila de X4 por tanto la
variable que sale es X4
¡La universidad para todos!

5.2. Ejemplo de maximización


Multiplicar a la fila X4 por 5/3 para tener como valor 1
i) Multiplicar a la fila de x4 por (-1/5) y sumar a la fila de x5 es decir:
sale un nuevo x5
X4 -1/5 -2/15 0 -1/3 0 -1/15 0 -100/3 +
X5 1/5 -1/5 0 0 1 -2/5 0 0_
0 -1/3 0 -1/3 1 -1/3 0 -100/3
ii) Multiplicar a la fila de x4 por (-2/5) y sumar a la fila de x3 es decir:
sale un nuevo x3
X4 -2/5 -4/15 0 -2/3 0 2/15 0 200/3 +
X3 2/5 3/5 1 0 0 1/5 0 300
0 1/3 1 -2/3 0 1/3 0 700/3
iii) Multiplicar a la fila de x4 por (6/5) y sumar a la fila de Z es decir:
sale un nuevo Z
X4 6/5 4/5 0 2 0 -6/15 0 200 +
Z -6/5 -4/5 0 0 0 12/5 1 3600
- 0 0 0 2 0 2 1 3800
¡La universidad para todos!

5.2. Ejemplo de maximización


Tablero Simplex Etapa III
X1 X2 X3 X4 X5 X6 Z B
X1 1 2/3 0 5/3 0 -1/3 0 500/3
X5 0 -1/3 0 -1/3 1 -1/3 0 -100/3
X3 0 1/3 1 -2/3 0 1/3 0 700/3
Z 0 0 0 2 0 2 1 3800
Z=3800
Variables básicas X1=500/3 x5=-100/3 x3=700/3
Variables no básicas: X2=0 X4=0 X6=0

Observamos que todos los indicadores son positivos por lo tanto fin del
proceso
¡La universidad para todos!

5.2. SOLUCIONES NO ACOTADAS Y


SOLUCIONES ÓPTIMAS MULTIPLES
Para ver si tiene solución múltiple bastará observar si existe un
indicador igual a cero de una variable no básica, la cual sugiere la
posibilidad de solución múltiple. Por ejemplo, X2=0 es no básica y su
indicador en la tabla final es igual a cero.
*Vamos a generar la otra solución para esto tomamos el ultimo
tablero. Hacemos ingresar X2=0
X1 X2 X3 X4 X5 X6 Z B
X1 1 2/3 0 5/3 0 -1/3 0 500/3
X5 0 -1/3 0 -1/3 1 -1/3 0 -100/3
X3 0 1/3 1 -2/3 0 1/3 0 700/3
Z 0 0 0 2 0 2 1 3800
¿cuál es la variable que sale?
(500/3)/ (2/3)=250 (-100/3)/(-1/3)=100 (700/3)/(1/3)=700
el menor cociente positivo se da en la fila de X5
¡La universidad para todos!

Serie de Problemas 5.2


¡La universidad para todos!

¡Gracias!

Você também pode gostar