You are on page 1of 40

TAREA 1.

MÉTODOS SIMPLEX PRIMAL Y SIMPLEX DUAL

ANDERSON ROJO RAMIREZ

C.C 1.225.092.439

GRUPO 100404_299

TUTOR

ERICK ALEXANDER VALENCIA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

CURSO PROGRAMACIÓN LINEAL

REGIONAL RISARALDA

DOSQUEBRADAS

2019
INTRODUCCIÓN

En el desarrollo y la toma de decisiones es importante involucrar procesos que nos permitan


y ayuden como herramientas de trabajo en la implementación para un progreso óptimo en el
entorno lineal, por eso en este caso se utilizan los métodos simplex primal y simplex dual
para la toma de decisiones que garanticen la optimización de los recursos de sistemas
productivos, tanto El método simplex primal como el dual resultan ser una estrategia
algorítmica eficiente cuando luego de llevar un modelo de programación lineal a su forma
estándar.
PROBLEMÁTICA 1.

Para desarrollar el ejercicio se requiere consultar la siguiente referencia:

Martínez, S. (2014). Investigación de operaciones. (1a. ed.) (pp. 44-67), México: Grupo
Editorial Patria. Disponible en el entorno de conocimiento del curso.

Una empresa de jugos naturales produce tres tipos de bebidas que se venden en los
supermercados de cadena y que cuyas compradoras potenciales son las madres para poner
en las loncheras de sus hijos (Jugo 1 de pera, Jugo 2 de manzana y Jugo 3 tropical). El jugo
1 está compuesto por 20 mililitros el componente A, 30 mililitros el componente B y 20
mililitros el componente C. El jugo 2 está compuesto por 30 mililitros el componente A, 20
mililitros el componente B y 20 mililitros vez el componente C y finalmente el jugo 3 está
compuesto por 20 mililitros el componente A, 10 mililitros el componente B y 20 mililitros
el componente C. Se deben gastar como minino 1500 mililitros del componente A, máximo
1700 mililitros del B y máximo 1300 mililitros del C por producción al día. La utilidad de
los jugos 1, 2 y 3, es respectivamente de 600, 400 y 500 pesos. El componente A, hace
relación al agua usada, el B al saborizante que incluye concentración de azúcar y el C al
conservante.

Formule el problema expuesto en la situación 1 y resuélvalo por el método simplex por los
algoritmos simplex algebraico y simplex de las dos fases. Responda:

¿Qué cantidad de cada uno de los jugos debe fabricarse, según el método algebraico del
simplex primal?

¿Qué cantidad de cada uno de los jugos debe fabricarse, según el método de las dos fases
del simplex primal?

¿Cuál es la utilidad del problema?

¿Las respuestas de producción según las condiciones varían de acuerdo a cada método
usado?
DESARROLLO

Identificamos Variables del Ejercicio propuesto,


VARIABLES UTILIZADAS
EN EL EJERCICIO 1 RECURSOS COMPONENTE
X1 AGUA USADA A
SABORIZANTE
X2 CONCENTRACIÓN GLUCOSA B
X3 CONSERVANTE C

Función Objetivo

Realizamos la representación de los pesos respectivos en la función objetivo.

La función objetivo es la ecuación que será optimizada dadas las limitaciones o


restricciones determinadas y con variables que necesitan ser minimizadas o maximizadas
usando técnicas de programación lineal o no lineal.

Función Objetivo Restricciones Concepto


U=600X1+400X2+500X3 20X1+30X2+20X3≥1500 Minimizar

Evidenciamos Un ejemplo de Restricción por el concepto de La función Objetivo.


TENEMOS QUE:

Teniendo en cuenta el concepto de condición de la no negatividad identificamos que


requerimos de una variable de excedente para realizar una igualdad. (S) <- Variable
Holgura

En nuestro modelo estándar representamos nuestras ecuaciones.

U-600X_1-400X_2-500X_3=0
20X_1+30X_2+20X_3-S_1=1500
-20X_1-30X_2-20X_3+S_1=-1500
>Resultado Obtenido al realizar una multiplicación x -1.

-1500
Ahora identificamos lo siguiente:

Cómo podemos identificar no se registran valores negativos, por lo que necesitamos utilizar
otro método, en este caso para el diseño de la matriz un método simplex dual.

30X_1+20X_2+20X_3+S_2=1700
20X_1+10X_2+20X_3+S_3=1300

Se registran las variables de Holgura

Variable de holgura. Variable agregada al lado izquierdo de una restricción de "menor o


igual que" para convertir la restricción en una igualdad. El valor de esta variable
comúnmente puede interpretarse como la cantidad de recurso no usado.
En este caso para la matriz utilizamos S1, S2, S3.

Integramos la siguiente para afinidad de conocimientos (Ejemplo):

Escribir la tabla inicial del método Simplex.

La tabla inicial del método Simplex está compuesta por todos los coeficientes de las
variables de decisión del problema original y las de holgura, exceso y artificiales agregadas
en el paso 2 (en las columnas, siendo P0 el término independiente y el resto de variables
Pi coinciden con Xi), y las restricciones (en las filas). La columna Cb contiene los
coeficientes de las variables que se encuentran en la base.

La primera fila está formada por los coeficientes de la función objetivo, mientras que la
última fila contiene el valor la función objetivo y los costes reducidos Zj - Cj.

La última fila se calcula como sigue: Zj = Σ(Cbi·Pj) para i = 1..m, donde si j = 0, P0 = bi y


C0 = 0, y en caso contrario Pj = aij. Aunque al tratarse de la primera tabla del método
Simplex y ser todos los Cb nulos se puede simplificar el cálculo, y por esta vez disponer
Zj = -Cj.

Tabla I . Iteración nº 1

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
Tabla I . Iteración nº 1

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 azul).

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

Dividimos

-600/-20 =30 ENTERO

-400/-30=13.3 PERIÓDICO

-500/-20=25 ENTERO

Elegimos el resultado más bajo 13.3 en fracciones 40/3 es el número pivote y esta es la
columna pivote.

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
U -600 -400 -500 0 0 0 0
FILA PIVOTE
REPRESENTA
LA
S1 -20 -30 -20 1 0 0 -1500 CANTIDAD
MAYOR DE
VALORES
NEGATIVOS.
S2 30 20 20 0 1 0 1700
S3 20 30 20 0 0 1 1300
COLUMNA
PIVOTE

Necesitamos la obtención de valores positivos en ambos registros (Fila x Columna) por lo


que realizamos lo siguiente:

-20/-1 = 20

-30/-1 = 30

-20/-1 = 20

1/-1 = -1

0/-1 = 0
0/-1 = 0

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
U
FILA
X1 20 30 20 -1 0 0 1500
PIVOTE
S2
S3
COLUMNA
PIVOTE

Dividimos entre 30 la fila2 para convertir el número pivote en 1.

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
U
-
X2 0,6666 1 0,666 0,03333333 0 0 50
S2
S3

Vamos a Calcular nuevo la primera Fila

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS

U -600 -400 -500 0 0 0 0 400


X2 0,666 1 0,666 -0,03333333 0 0 50
Primera Fila -334 0 -234 -13,3333333 0 0 20000

Primera Fila se determina de la siguiente manera:


Primera Fila = Fila pivote = 400 + Fila1Actual

CALCULO FILA
NUEVA
Fila1=400(2/3) + (-
600)
Fila1=400(1) + (-400)
Fila1=400(2/3) + (-
500)
Fila1=400(-1/30) + 0
Fila1=400(0) + 0
Fila1=400(0) + 0
Fila1=400(50) + 0

Se consignan datos en tabla:

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
U -334 0 -234 -13,3333333 0 0 20000
X2 0,66 1 0,66 -0,03333333 0 0 50
S2
S3

Tercera Fila se determina de la siguiente manera:

Tercera Fila = Fila pivote = 20 + Tercera Fila Actual

CALCULO FILA TERCERA


NUEVA
TERCERA FILA=-20(2/3)
+ 30
TERCERA FILA=-20(1) +
20
TERCERA FILA=-20(2/3)
+ 20
TERCERA FILA=-20(-
1/30) + 0
TERCERA FILA=-20(0) +
1
TERCERA FILA=-20(0) +
0
TERCERA FILA=-20(50) +
1700
Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
400
S2 30 20 20 0 1 0 1700
X2 0,66 1 0,66 -0,033333 0 0 50
Tercera Fila 16,66 0 6,66 0.66 1 0 7000

Se consignan datos en tabla:

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
U -334 0 -234 -13,33333 0 0 20000
X2 0,66 1 0,66 -0,033333 0 0 50
S2 50/3 0 0,66 0,66 1 0 7000
S3

Cuarta Fila se determina de la siguiente manera:

Cuarta Fila = Fila pivote = 30 + Cuarta Fila Actual

CALCULO FILA CUARTA


NUEVA
CUARTA FILA=-30(2/3) +
20
CUARTA FILA=-30(1) +
30
CUARTA FILA=-30(2/3) +
20
CUARTA FILA=-30(-1/30)
+0
CUARTA FILA=-30(0) + 0
CUARTA FILA=-30(0) + 1
CUARTA FILA=-30(50) +
1300
Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
-30
S3 20 30 20 0 0 1 1300
-
X2 0,66 1 0,66 0,03333333 0 0 50
Nueva Fila4 0 0 0 1 0 1 -200

Se consignan datos en tabla:

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
-
U -334 0 -234 13,3333333 0 0 20000
-
X2 0,66 1 0,66 0,03333333 0 0 50
S2 16,66 0 0,66 0,66 1 0 7000
S3 0 0 0 1 0 1 -200

Podemos realizar una iteración más sobre el componente para determinar si son positivas o
negativas, solo podremos iterar una vez ya que nuestra fila s3 representa una cantidad alta
negativa.

Columna1 X1 X2 X3 S1 S2 S3 RESULTADOS
-
U -334 0 -234 13,3333333 0 0 20000
-
X2 0,33 1 0,66 0,03333333 0 0 50
S2 16,66 0 13,33 0,66 1 0 7000
S3 0 0 0 1 0 1 -200

Utilizaremos la herramienta (componente) de Excel Solver y la herramienta PhpSimplex


para comparar nuestros resultados óptimos.
La solución óptima es: x2 = 50, x1 = x3 = 0. El objetivo es 20000
PROBLEMÁTICA 2.

Para desarrollar el ejercicio se requiere consultar la siguiente referencia:

Martínez, S. (2014). Investigación de operaciones. (1a. ed.) (pp. 44-67), México: Grupo
Editorial Patria. Disponible en el entorno de conocimiento del curso.

De acuerdo a las siguientes condiciones de un problema productivo, donde se han tomado


los datos de utilidades y restricciones, según ciertas condiciones y necesidades, determine:
Cantidad de cada uno de las variables a fabricarse, según el método simplex algebraico.

Cantidad de cada uno de las variables a fabricarse, según el método de las dos fases del
simplex primal.

Utilidad del problema.

Compare los resultados obtenidos por cada uno de los métodos propuestos y justifíquelos.

Función objetivo Maximizar Z = 6X1 + 7X2 + 5X3 + 3X4

Sujeto a las restricciones: 3X1 + 3X2 + 2X3 + X4 ≤ 75

3X1 + 2X2 + 3X3 + 2X4 ≤ 100

2X1 + 2X2 + 4X3 + 3X4 ≥ 30

2X1 + 2X2 + 1X3 + 2X4 ≤ 68

X1, X2, X3, X4 ≥ 0

DESARROLLO

Identificamos Variables del Ejercicio propuesto,


VARIABLES UTILIZADAS EN EL
EJERCICIO 2 RECURSOS
X1 -
X2 -
X3 -
x4 -

Función Objetivo

Realizamos la representación de los pesos respectivos en la función objetivo.

La función objetivo es la ecuación que será optimizada dadas las limitaciones o


restricciones determinadas y con variables que necesitan ser minimizadas o maximizadas
usando técnicas de programación lineal o no lineal.

Función Objetivo Restricciones Concepto


U=6X1+7X2+5X3+3X4 - Minimizar
3X1 + 3X2 + 2X3 + X4 ≤ 75
3X1 + 2X2 + 3X3 + 2X4 ≤ 100
2X1 + 2X2 + 4X3 + 3X4 ≥ 30
2X1 + 2X2 + 1X3 + 2X4 ≤ 68
X1, X2, X3, X4 ≥ 0

Evidenciamos Un ejemplo de Restricción por el concepto de La función Objetivo.

TENEMOS QUE:

Teniendo en cuenta el concepto de condición de la no negatividad identificamos que


requerimos de una variable de excedente para realizar una igualdad. (S) <- Variable
Holgura

En nuestro modelo estándar representamos nuestras ecuaciones.

U-6X_1-7X_2-5X_3-3X_4=0
3X1 + 3X2 + 2X3 + X4 + S1 = 75
3X1 + 2X2 + 3X3 + 2X4 + S2 =100
>Resultado Obtenido al realizar una multiplicación x -1.

Cómo podemos identificar no se registran valores negativos, por lo que necesitamos utilizar
otro método, en este caso para el diseño de la matriz un método simplex dual.

Ahora identificamos lo siguiente:

Cómo podemos identificar no se registran valores negativos, por lo que necesitamos utilizar
otro método, en este caso para el diseño de la matriz un método simplex dual.

2X1 + 2X2 + 4X3 + 3X4 – S3 = 30


2X1 - 2X2 - 4X3 - 3X4 + S3 = -30
2X1 + 2X2 + 1X3 + 2X4 + S4 = 68
UTILIZAMOS LA HERRAMIENTA PHPSIMPLEX

Asignamos la cantidad de variables de decisión y la cantidad de restricciones


La función de este ejercicio es la de Maximixar, en este caso establecemos nuestra
función objetiva y las restricciones respectivas
Tenemos como resultado:

Resultado= Z= 192
X1=0
X2= 17/2
X3= 16
X4= 35/2
EL RESULTADO LO MOSTRAMOS EN ENTEROS

EXCEL
191
0
8
18
15

USANDO
PHPSIMPLEX
192
0
8.5
16
17.5

VALORES
Z
X1
X2
X3
X4
PROBLEMÁTICA 3.

Para desarrollar el ejercicio se requiere consultar la siguiente referencia:

Martínez, S. (2014). Investigación de operaciones. (1a. ed.) (pp. 44-67), México: Grupo
Editorial Patria. Disponible en el entorno de conocimiento del curso.

Raúl García es el heredero de un taller de carpintería que le ha dejado su padre como parte
de tradición familiar. Raúl es un comerciante de vehículos importados que nunca se
interesó por el negocio con el que su padre le crió y le pagó sus estudios universitarios.
Ahora con la muerte de su padre Raúl debe hacerse cargo del negocio, el cual heredará
algún día a uno de sus hijos. Cuando Raúl visita el taller para hacerse cargo, encuentra que
el producto que mayor atención merece por ser el de mayor venta es el de escritorios tipo
deko que su padre diseñó y que se fabrican según especificaciones de los clientes, tipo 1
para hogar, tipo 2 para oficinas y tipo 3 para colegios. Cada escritorio pasa por 3 procesos
básicos el corte de la madera, el ensamblado y la pintura del producto terminado que se
miden en horas de trabajo.

Raúl seguirá la política de contratación de personal de su padre, los turnos rotativos, por lo
cual el tiempo de trabajo es variable entre una y otra semana, las horas mínimas a contratar
por semana se muestran en la tabla 1. A partir de los datos siguientes que se consignan en
la tabla 1, formule el problema de programación lineal y resuélvalo a partir del método
simplex primal de las dos fases para ayudar a Rubén a minimizar los costos del proceso.

Costos por
Tipo de
Corte Ensamble Pintura producto
escritorio
semanales
1 2 3 2 US 17
2 2 2 3 US 17
3 3 1 1 US 23
Horas 33 31 35
Tabla 1. Datos del ejercicio 3
DESARROLLO

Función Objetivo

Realizamos la representación de los pesos respectivos en la función objetivo.

La función objetivo es la ecuación que será optimizada dadas las limitaciones o


restricciones determinadas y con variables que necesitan ser minimizadas o maximizadas
usando técnicas de programación lineal o no lineal.

Función Objetivo Restricciones Concepto


Z = 33X1 + 31X2 + 35X3 - Minimizar
2X1 + 3X2 + 2X3 ≤ 17
2X1 + 2X2 + 3X3 ≤ 17
3X1 + X2 + X3 ≤ 23
X1, X2, X3 ≥ 0

2X1 + 3X2 + 2X3 ≤ 17

Evidenciamos Un ejemplo de Restricción por el concepto de La función Objetivo.

TENEMOS QUE:
Teniendo en cuenta el concepto de condición de la no negatividad identificamos que
requerimos de una variable de excedente para realizar una igualdad. (S) <- Variable
Holgura

En nuestro modelo estándar representamos nuestras ecuaciones.

U-33X_1-31X_2-35X_3=0
2X1 + 3X2 + 2X3 + S1 = 17
2X1 + 2X2 + 3X3 + S2 = 17
3X1 + X2 + X3 + S3 = 23

Ahora identificamos lo siguiente:

UTILIZAMOS LA HERRAMIENTA PHPSIMPLEX


La solución óptima es Z = 273
X1 = 81 / 11
X2 = 5 / 11
X3 = 5 / 11
PROBLEMÁTICA 4.

Para desarrollar la el ejercicio se requiere consultar la siguiente referencia:

Martínez, S. (2014). Investigación de operaciones. (1a. ed.) (pp. 44-67), México: Grupo
Editorial Patria. Disponible en el entorno de conocimiento del curso.

De acuerdo a las siguientes condiciones de un problema productivo, donde se han tomado


los datos de costos y restricciones, según ciertas condiciones y necesidades, determine:

Cantidad de cada uno de las variables a fabricarse, según el método de las dos fases del
simplex primal.

Valor de la función objetivo del problema.

Función objetivo Minimizar Z = 720X1 + 215X2 + 120X3 + 70X4

Sujeto a las restricciones: 30X1 + 5X2 + 3X3 + 7X4 ≥ 510

17X1 + 7X2 + 3X3 + 5X4 ≥ 320

11X1 + 5X2 + 4X3 + 2X4 ≥ 280

7X1 + 6X2 + 5X3 + 1X4 ≥ 170

X1, X2, X3, X4 ≥ 0


DESARROLLO

Función Objetivo

Realizamos la representación de los pesos respectivos en la función objetivo.

La función objetivo es la ecuación que será optimizada dadas las limitaciones o


restricciones determinadas y con variables que necesitan ser minimizadas o maximizadas
usando técnicas de programación lineal o no lineal.

Función Objetivo Restricciones Concepto


Z=720X1+215X2+120X3+70X4 30X1 + 5X2 + 3X3 + 7X4 ≥ 510 Minimizar
17X1 + 7X2 + 3X3 + 5X4 ≥ 320
11X1 + 5X2 + 4X3 + 2X4 ≥ 280
7X1 + 6X2 + 5X3 + 1X4 ≥ 170
X1, X2, X3, X4 ≥ 0

Evidenciamos Un ejemplo de Restricción por el concepto de La función Objetivo.

TENEMOS QUE:
Teniendo en cuenta el concepto de condición de la no negatividad identificamos que
requerimos de una variable de excedente para realizar una igualdad. (S) <- Variable
Holgura

En nuestro modelo estándar representamos nuestras ecuaciones.

Z -720X1 -215X2 - 120X3 - 70X4 = 0


30X1 + 5X2 + 3X3 + 7X4 - S1= 510
17X1 + 7X2 + 3X3 + 5X4 - S2=320
11X1 + 5X2 + 4X3 + 2X4 - S3 = 280
7X1 + 6X2 + 5X3 + 1X4 -S4 = 170

>Resultado Obtenido al realizar una multiplicación x -1.

-30X1 - 5X2 - 3X3 - 7X4 +S1= -510


-17X1 - 7X2 - 3X3 - 5X4 + S2=-320
-11X1 - 5X2 - 4X3 - 2X4 + S3 = -280
-7X1 - 6X2 - 5X3 - 1X4 +S4 = -170

Ahora identificamos lo siguiente:

Cómo podemos identificar no se registran valores negativos, por lo que necesitamos utilizar
otro método, en este caso para el diseño de la matriz un método simplex dual.
UTILIZAMOS HERRAMIENTA PHPSIMPLEX
La solución óptima es Z = 4552950 / 349
X1 = 5410 / 349
X2 = 2010 / 349
X3 = 1880 / 349
X4 = 0
BIBLIOGRAFÍA

Martínez, S. (2014). Investigación de operaciones. (1a. ed.) (pp. 44-67), México: Grupo
Editorial Patria. Disponible en el entorno de conocimiento del curso.

Keller, P. D., Keenan, G. M., & Lloyd, F. B. I. (1996). U.S. Patent No. 5,568,246.
Washington, DC: U.S. Patent and Trademark Office.
Moskowitz, H., Wright, G. P., & Otalvaro, F. V. (1982). Investigación de operaciones (No. 658.57/M91oE).
Prentice Hall.
Boirivant, J. A. (2011). El análisis post-optimal en programación lineal aplicada a la
agricultura. Reflexiones, 90(1), 4.

https://www.youtube.com/watch?v=9wNnS635v68

You might also like