Está en la página 1de 20

METODOS ANALITICOS PARA LA OPTIMIZACIÒN DE LOS RECURSOS DE

PRODUCCIÒN.
METODO SIMPLEX

Unidad IV

Curso de Ingeniería de la Producción


Inga. Anabela Cordova
Ing. Hugo H. Rivera P
www.themegallery.com

Método Simplex
.

El método Simplex es un procedimiento iterativo que permite


ir mejorando la solución a cada paso. El proceso concluye
cuando no es posible seguir mejorando más dicha solución.

Deberá tenerse en cuenta que este método sólo trabaja para


restricciones que tengan un tipo de desigualdad "≤" y
coeficientes independientes mayores o iguales a 0, y habrá que
estandarizar las mismas para el algoritmo. En caso de que
después de éste proceso, aparezcan (o no varíen) restricciones
del tipo "≥" o "=" habrá que emplear otros métodos, siendo el
más común el método de las Dos Fases.
www.themegallery.com

Preparando el Modelo para Adaptarlo al Método Simples


Esta es la forma estándar del modelo:

Función
.
objetivo: Z= c1·x1 + c2·x2 + ... + cn·xn

Sujeto a (Restricciones):
a11·x1 + a12·x2 + ... + a1n·xn = b1
a21·x1 + a22·x2 + ... + a2n·xn = b2
am1·x1 + am2·x2 + ... + amn·xn = bm
x1,..., xn ≥ 0
Para ello se deben cumplir las siguientes condiciones:

1. La función objetivo es de la forma de maximización o de


minimización.
2. Todas las restricciones son de tipo menor o igual que y en su forma
estándar es una igualdad.
3. Todas las variables son no negativas. Company Logo
4. Las constantes a la derecha de las restricciones son no negativas.
www.themegallery.com

Tipo de Optimización (minimizar o maximizar)

Si nuestro modelo, es de tipo minimizar, debemos tener en cuenta


nuevos criterios para la condición de parada (debemos parar de
realizar iteraciones cuando en la fila del valor de la función objetivo
sean todos menores o iguales a 0), así como para la condición de
salida de la fila.

Si nuestro modelo, es de tipo maximizar, debemos tener en cuenta


nuevos criterios para la condición de parada (debemos parar de
realizar iteraciones cuando en la fila del valor de la función objetivo
sean todos mayores o iguales a 0), así como para la condición de
salida de la fila.

Company Logo
www.themegallery.com

Condición de Optimidad

La variable que entra o pasa a ser básica es aquella no


básica con el coeficiente más negativo si el problema es
.

de maximización, o más positivo si es de minimización.


Si todos los coeficientes de las variables no básicas en Z
son no negativos, la solución es óptima en
maximización y si son no positivos entonces la solución
es óptima en minimización.
www.themegallery.com

Todas las Restricciones son de Igualdad


Si la inecuación tiene una desigualdad del tipo "≤", deberemos
añadir una nueva variable, llamada variable de holgura. La nueva
variable aparece con coeficiente cero en la función objetivo, y
sumando en las inecuaciones.
a11·x1 + a12·x2 + ... + a1n·xn ≤ b1
a21·x1 + a22·x2 + ... + a2n·xn ≤ b2

a11·x1 + a12·x2 + ... + a1n·xn + h1 = b1


a21·x1 + a22·x2 + ... + a2n·xn + h2 = b2
www.themegallery.com

Ejemplo

Maximizar: Z= 3x1 + 2x2

Sujeto a: 2x1 + x2 ≤ 18
2x1 + 3x2 ≤ 42
3x1 + x2 ≤ 24
x1 ≥ 0 , x2 ≥ 0

Cumple con las Condiciones:


1. La función objetivo es de la forma de maximización o de minimización.
2. Todas las restricciones son de tipo menor o igual que y en su forma
estándar es una igualdad.
3. Todas las variables son no negativas.
4. Las constantes a la derecha de las restricciones son no negativas
www.themegallery.com

1.- Igualar la Función Objetivo a Cero

Maximizar: Z - 3x1 - 2x2 = 0

2.- Convertir las Desigualdades a ecuaciones

2x1 + x2 + h1 = 18 Aquí agregamos las


variables de holgura
2x1 + 3x2 + h2 = 42 h sumando debido a
3x1 + x2 + h3 = 24 que la restricción es
del tipo ≤.
www.themegallery.com

3. Construcción de la Tabla Inicial


En la siguiente tabla anotamos los coeficientes de las
variables de decisión X1 y X2 y así como también de las
variables de holgura h1,h2y h3
Base X1 X2 h1 h2 h3 Solución
Z -3 -2 0 0 0 0
h1 2 1 1 0 0 18
h2 2 3 0 1 0 42
h3 3 1 0 0 1 24

Ya teniendo el tablero inicial debemos encontrar las condiciones de


parada o finalización del algoritmo así como las condiciones de
entrada y salida para determinar los valores de X1 y X2 con los
cuales maximizaremos nuestra función objetivo.
www.themegallery.com

4. Encontrar el elemento pivote (iteración # 1)


La Columna pivote la encontramos determinando el valor
más negativo en la Fila Z con X1= -3
Base X1 X2 h1 h2 h3 Solución
Z -3 -2 0 0 0 0
Por lo tanto la
h1 2 1 1 0 0 18
Variable que entra es
h2 2 3 0 1 0 42
X1
h3 3 1 0 0 1 24
Para encontrar la Variable que sale, dividimos la columna Solución
entre la columna pivote, de manera que se escoge el mínimo de
ellos para encontrar la fila pivote, a la intersección de la columna
pivote con la fila pivote se le llama elemento pivote.
18/2 = 9
42/2 = 21
24/3 = 8 h3 es la fila
pivote
www.themegallery.com

4. Encontrar el elemento pivote (iteración # 1)


Base X1 X2 h1 h2 h3 Solución
Z -3 -2 0 0 0 0
h1 2 1 1 0 0 18
h2 2 3 0 1 0 42
Elemento h3 3 1 0 0 1 24
pivote

4. Aplicar Gauss-Jordan (iteración # 1)


Hacer el elemento pivote=1 dividiendo la fila pivote en 3

Base X1 X2 h1 h2 h3 Solución
Z -3 -2 0 0 0 0
h1 2 1 1 0 0 18
h2 2 3 0 1 0 42
h3 1 1/3 0 0 1/3 8
www.themegallery.com

5. Aplicar Gauss-Jordan (iteración # 1)


Todos los elementos de la columna pivote deben hacerse
cero.
OPERATORIA: -2h3+h2 --------- h2
-2h3+h1 --------- h1
3h3+ Z --------- Z

Base X1 X2 h1 h2 h3 Solución
Z 0 -1 0 0 1 24
h1 0 1/3 1 0 2/3 2
Entra X1 y
h2 0 7/3 0 1 -2/3 26
sale h3
X1 1 1/3 0 0 1/3 8

RECORDANDO: Para maximización la condición de parada


(debemos parar de realizar iteraciones cuando en la fila del
valor de la función objetivo sean todos mayores o iguales a 0),
así como para la condición de salida de la fila.
Esto aun no se cumple por lo tanto hay que seguir iterando.
www.themegallery.com

4. Encontrar el elemento Pivote (iteración # 2)


La Columna pivote la encontramos determinando el valor más negativo
en la Fila Z con X2= -1
Base X1 X2 h1 h2 h3 Solución
Z 0 -1 0 0 1 24
Por lo tanto la
h1 0 1/3 1 0 -2/3 2 Variable que entra es
h2 0 7/3 0 1 -2/3 26 X2
X1 1 1/3 0 0 1/3 8
Para encontrar la Variable que sale, dividimos la columna Solución entre la
columna pivote, de manera que se escoge el mínimo de ellos para encontrar
la fila pivote, a la intersección de la columna pivote con la fila pivote se le
llama elemento pivote.
2/(1/3) = 6 h1 es la fila
26/(7/3) = 11,14 pivote
8/(1/3) = 24
www.themegallery.com

4. Encontrar el elemento Pivote (iteración # 2)

Base X1 X2 h1 h2 h3 Solución
Z 0 -1 0 0 1 24
Elemento
h1 0 1/3 1 0 -2/3 2
pivote
h2 0 7/3 0 1 -2/3 26
X1 1 1/3 0 0 1/3 8

5. Aplicar Gauss-Jordan (iteración # 2)


Hacer el elemento pivote=1 multiplicando la fila pivote por 3

Base X1 X2 h1 h2 h3 Solución
Z 0 -1 0 0 1 24
h1 0 1 3 0 -2 6
h2 0 7/3 0 1 -2/3 26
X1 1 1/3 0 0 1/3 8
www.themegallery.com

5. Aplicar Gauss-Jordan (iteración # 2)


Todos los elementos de la columna pivote deben hacerse cero.
OPERATORIA: -7/3h1+h2 --------- h2
-1/3h1+X1 --------- X1
h1+ Z --------- Z
Base X1 X2 h1 h2 h3 Solución
Z 0 0 3 0 -1 30
Entra X2 y
X2 0 1 3 0 -2 6
sale h1
h2 0 0 -7 1 4 12
X1 1 0 -1 0 1 6

RECORDANDO: Para maximización la condición de parada


(debemos parar de realizar iteraciones cuando en la fila del
valor de la función objetivo sean todos mayores o iguales a 0),
así como para la condición de salida de la fila.
Esto aun no se cumple por lo tanto hay que seguir iterando.
Company Logo
www.themegallery.com

4. Encontrar el elemento pivote (iteración # 3)


La Columna pivote la encontramos determinando el valor
más negativo en la Fila Z con h3= -1

Base X1 X2 h1 h2 h3 Solución
Z 0 0 3 0 -1 30
X2 Por lo tanto la
0 1 3 0 -2 6
Variable que entra es
h2 0 0 -7 1 4 12 h3
X1 1 0 -1 0 1 6
Para encontrar la Variable que sale, dividimos la columna Solución
entre la columna pivote, de manera que se escoge el mínimo de
ellos para encontrar la fila pivote, a la intersección de la columna
pivote con la fila pivote se le llama elemento pivote.
6/-2 = No aplica
12/4 = 3 h2 es la fila
6/1 = 6 pivote
www.themegallery.com

4. Encontrar el elemento pivote (iteración # 3)


Base X1 X2 h1 h2 h3 Solución
Z 0 0 3 0 -1 30
X2 0 1 3 0 -2 6
Elemento
h2 0 0 -7 1 4 12
pivote
X1 1 0 -1 0 1 6

5. Aplicar Gauss-Jordan (iteración # 3)


Hacer el elemento pivote=1 dividiendo la fila pivote entre 4
Base X1 X2 h1 h2 h3 Solución
Z 0 0 3 0 -1 30
X2 0 1 3 0 -2 6
h2 0 0 -7/4 1/4 1 3
X1 1 0 -1 0 1 6
www.themegallery.com

5. Aplicar Gauss-Jordan (iteración # 3)


Todos los elementos de la columna pivote deben hacerse
cero.
OPERATORIA: 2h2+X2 --------- X2
-h2+X1 --------- X1
h2+ Z --------- Z

Base X1 X2 h1 h2 h3 Solución
Entra h3 y
Z 0 0 5/4 1/4 0 33
sale h2
X2 0 1 -1/2 1/2 0 12
h3 0 0 -7/4 1/4 1 3
X1 1 0 3/4 -1/4 0 3
RECORDANDO: Para maximización la condición de parada
(debemos parar de realizar iteraciones cuando en la fila del
valor de la función objetivo sean todos mayores o iguales a 0),
así como para la condición de salida de la fila.
Esto se cumple por lo tanto se detiene las iteraciones.
www.themegallery.com

6. Solución Final
Los valores con los Base X1 X2 h1 h2 h3 Solución
cuales se maximiza la Z 0 0 5/4 1/4 0 33
función Z son: X2 0 1 -1/2 1/2 0 12
h3 0 0 -7/4 1/4 1 3
X1= 3
X2=12 X1 1 0 3/4 -1/4 0 3
Z= 33

Comprobando:

Maximizar: Z= 3x1 + 2x2 Maximizar: Z= 3(3) + 2(12) = 33


Sujeto a: 2x1 + x2 + h1 = 2(3) + (12) + 0 = 18
18 2(3) + 3(12) + 0 = 42
2x1 + 3x2 + h2 = 42 3(3) + (12) + 3 = 24
3x1 + x2 + h3 = 24
www.themegallery.com

También podría gustarte