Вы находитесь на странице: 1из 10

Universidad Autónoma de Querétaro

Facultad de Contaduría y Administración

Investigación de Operaciones, Lección 6

Este material fue elaborado por:


L.A. Diana Guzmán Medina

Diseñó:
Diana Guzmán Medina

Licenciatura en Administración
Facultad de Contaduría y Administración
Programa de Educación a Distancia (EDAD)

Centro Universitario, Querétaro, México


MMIX
Solución de problemas de programación lineal Unidad 2, Lección 6

UNIDAD 2

2. 2 Estudio de casos prácticos

LECCIÓN 6

Minimización

El método simplex también puede aplicarse a un problema de minimización


si se modifican algunos pasos de procedimiento del algoritmo. Para esto es
necesario realizar dos cambios:

1. Cambiar la prueba de optimidad, es decir, continuar el proceso de solución


hasta que todos los valores de (Cj - Zj) sean cero o positivos. (Recuerda
que para los problemas de maximización el proceso continúa hasta que
todos los valores son cero o negativos).

2. Modificar la regla para determinar la variable que entra, de manera que la


variable que elegimos es la que tiene el valor (Cj - Zj) más
negativo.(Recuerda que el procedimiento estándar consiste en elegir la
variable que tiene el mayor valor positivo de (Cj - Zj)).

Pero existe una forma más sencilla de resolver problemas de minimización.


Esto es: Puede convertirse un problema de minimización en uno de maximización
simplemente multiplicando los coeficientes de la función objetivo del problema de
minimización por -1. Una vez establecido el problema de maximización,
simplemente se continúa con el procedimiento simplex normal de maximización.

Para ilustrar lo expuesto en párrafos anteriores, consideremos el siguiente


problema:

Minimizar:

Sujeto a:

Ahora, lo primero que tenemos que hacer es multiplicar la función objetivo por
(-1):

Lo cual produce:
Solución de problemas de programación lineal Unidad 2, Lección 6

Maximizar:

Sujeto a:

Ahora, al igual que en los problemas de maximización, convertimos las


desigualdades en igualdades, añadiendo variables de exceso, holgura o artificiales
según corresponda, además de asegurarnos que las ecuaciones contienen una
solución factible básica. En este caso, debemos añadir una variable de holgura a
la primera restricción y restar una variable de exceso a la tercera con el objeto de
producir un conjunto de igualdades de restricción, como se muestra enseguida:

Maximizar:

Sujeto a:

Antes de continuar, es necesario mencionar que para este caso se requieren


variables artificiales. La interrogante es: ¿Cómo saber cuándo utilizar variables
artificiales? Las variables artificiales se utilizan en el método simplex sólo como
auxiliares para identificar una solución factible básica inicial del problema. Las
variables artificiales son necesarias cuando un problema contiene restricciones de
mayor o igual a (≥) y de igualdad (=). Las variables artificiales se utilizan para
completar la matriz identidad, y de esta manera permitir una solución inicial.

La regla para usar variables artificiales es añadir una de esas variables a cada
restricción e “mayor que o igual a” o “de igualdad”, que existan en el problema
original. En este ejemplo al añadir las variables artificiales, las ecuaciones quedan
así:

Maximizar:

Sujeto a:

Ignoremos por el momento la función objetivo, si revisamos rápidamente el


nuevo conjunto de ecuaciones, encontramos una matriz identidad en el cuerpo de
las restricciones modificadas, lo que significa que puede plantearse una solución
factible básica inicial para el problema.
Solución de problemas de programación lineal Unidad 2, Lección 6

¿Cómo identifico sin en la matriz existe una solución factible básica inicial?

El procedimiento para hacer esto es considerar una matriz identidad de m x n con los
coeficientes de las restricciones. Una matriz identidad de m x n es una agrupación de m
renglones y n columnas, en la cual los elementos (o números) que se encuentran en la
diagonal principal son unos y los elementos restantes son cero. Por ejemplo, una matriz
identidad 3 x 3 sería:

1 0 0
0 1 0
0 0 1
3x3

Al identificar esta forma en


los coeficientes de las 1 0 0
restricciones, nos damos 0 1 0
cuenta de que existe una 0 0 1
3x3
solución factible básica
inicial del problema.

Este proceso de elegir una matriz identidad, siempre dará como resultado una
solución factible básica inicial, además de permitir identificar el conjunto inicial de
variables básicas y no básicas del problema. Entonces tenemos que al adicionar variables
de holgura y restar variables de exceso en las desigualdades de restricción, para
convertirlas en igualdades de restricción no siempre produce una matriz identidad con los
coeficientes de las restricciones. Siendo necesario anexar otras variables (variables
artificiales) con el objeto de completar la matriz.

En este ejemplo, al observar la matriz identidad una vez agregadas las


variables de holgura, nos damos cuenta de que no existe una solución factible
básica inicial, ya que no se completa la diagonal principal:

Maximizar:

Sujeto a:

Es entonces cuando se agregan las variables artificiales encontramos la


solución básica factible:
Solución de problemas de programación lineal Unidad 2, Lección 6

Maximizar:

Sujeto a:

1
Matriz identidad, con 0
solución factible básica 0
3x3

De aquí se desprenden también las variables básicas y no básicas:

Variables Variables
básicas no básicas
S1 X1
A1 X2
A2 S2

Así tenemos que al igualar , y a cero, planteamos una solución factible


básica inicial (SFB). Quedando de la siguiente manera:

SFB:
x1 = 0
x2 = 0
s1 = 80
s2 = 0
A1 = 25
A2 = 120

Ahora bien, como las variables artificiales no tienen significado en términos de


la solución del problema, debe utilizarse algún procedimiento para asegurar que
Solución de problemas de programación lineal Unidad 2, Lección 6

no aparezcan en la tabla final. Esto se hace en problemas de maximización,


asignándoles números negativos grandes como coeficientes en la función objetivo:

Maximizar:

El -300 que se asigna a A1 y A1, es un valor arbitrario. Una regla práctica


funcional consiste en utilizar un coeficiente que sea diez veces mayor que el valor
absoluto del mayor coeficiente de la función objetivo. En este caso el mayor
coeficiente es 30, la operación sería: (30) (10) = 300. El signo negativo de 300 es
porque estamos trabajando con un problema de maximización, que originalmente
era de minimización y al hacer la conversión, los signos asociados con x1 y x2
cambian.

Una vez hecho y entendido esto, pasamos a crear la tabla inicial simplex
con los siguientes datos:

Maximizar:

Sujeto a:

Tabla inicial simplex


Variables de decisión
Variables de Variables
solución de solución
-30 -10 0 0 -300 -300
Cj bj
X1 X2 S1 S2 A1 A2

0 s1 2 4 1 0 0 0 80

-300 A1 1 1 0 0 1 0 25

-300 A2 8 6 0 -1 0 1 120

Zj -2700 -2100 0 300 -300 -300 -43500

C j - Zj 2670 2090 0 -300 0 0

Ahora elegimos nuestro renglón pivote, seleccionando del renglón Cj - Zj, la


variable que tenga el mayor valor positivo, que en este caso es x1, siendo esta la
variable que entra. De igual manera, de la columna bj, elegimos otro pivote, en
este caso será el que posea la razón más pequeña, que en este caso es A2, y
representa la variable que sale.
Solución de problemas de programación lineal Unidad 2, Lección 6

Variables de decisión
Variables de Variables
solución de solución Razón
Cj -30 -10 0 0 -300 -300 bj
X1 X2 S1 S2 A1 A2

0 s1 2 4 1 0 0 0 80 40
-300 A1 1 1 0 0 1 0 25 25
-300 A2 8 6 0 -1 0 1 120 15
Zj -2700 -2100 0 300 -300 -300 -43500

Cj - Zj 2670 2090 0 -300 0 0

Dividiendo los elementos del renglón pivote entre el elemento pivote, la


tabla simplex queda así:

Variables de Variables de decisión Variables


solución de solución
-30 -10 0 0 -300 -300
Cj bj
X1 X2 S1 S2 A1 A2

0 s1 0 2.5 1 0.25 0 -0.25 50


-300 A1 0 0.25 0 0.125 1 -0.125 10
-30 X1 1 0.75 0 -0.125 0 0.125 15

Zj -30 -97.5 0 -33.75 -300 33.75 -3450

C j - Zj 0 87.50 0 33.75 0 -333.75

Te recomiendo realizar las operaciones correspondientes


en casa, para que puedas comprobar los valores de las nuevas
tablas simplex que se generarán a lo largo de la lección.

Nuevamente seleccionamos el renglón pivote, escogiendo del renglón Cj -


Zj, la variable que tenga el mayor valor positivo, que en este caso es x2 (variable
que entra).

De igual manera, de la columna bj, elegimos otro pivote, en este caso será
el que posea la razón más pequeña, que en este caso es S1, y representa la
variable que sale.
Solución de problemas de programación lineal Unidad 2, Lección 6

Variables de Variables de decisión Variables


solución de solución Razón
-30 -10 0 0 -300 -300
Cj bj
X1 X2 S1 S2 A1 A2

0 s1 0 2.5 1 0.25 0 -0.25 50 20


-300 A1 0 0.25 0 0.125 1 -0.125 10 40
-30 X1 1 0.75 0 -0.125 0 0.125 0 20
Zj -30 -97.5 0 -33.75 -300 33.75 -3000

Cj - Zj 0 87.50 0 33.75 0 -333.75

Dividiendo los elementos del renglón pivote entre el nuevo elemento pivote,
la tabla simplex queda así:

Variables de Variables de decisión Variables


solución de solución
-30 -10 0 0 -300 -300
Cj bj
X1 X2 S1 S2 A1 A2

-10 X2 0 1 0.40 0.10 0 -0.10 20


300 A1 0 0 -0.10 0.10 1 -0.10 5
-30 X1 1 0 -0.30 -0.20 0 0.20 0

Zj -30 -10 35 -25 -300 25 -1700

C j - Zj 0 0 -35 25 0 -325

Procedemos de nuevo seleccionando el renglón pivote, eligiendo del


renglón Cj - Zj, la variable que tenga el mayor valor positivo, que para este caso es
S2 (variable que entra).

De manera similar, de la columna bj, elegimos otro pivote, en este caso


será el que posea la razón más pequeña, que en este caso es A1, y representa la
variable que sale.
Solución de problemas de programación lineal Unidad 2, Lección 6

Variables de Variables de decisión Variables


solución de solución
-30 -10 0 0 -300 -300
Cj bj
X1 X2 S1 S2 A1 A2

-10 X2 0 1 0.40 0.10 0 -0.10 20


300 A1 0 0 -0.10 0.10 1 -0.10 5
-30 X1 1 0 -0.30 -0.20 0 0.20 0

Zj -30 -10 35 -25 -300 25 -1700

C j - Zj 0 0 -35 25 0 -325

Realizando nuevamente la división de los elementos del renglón pivote


entre el nuevo elemento pivote, la nueva tabla simplex es:

Variables de Variables de decisión Variables


solución de solución
-30 -10 0 0 -300 -300
Cj bj
X1 X2 S1 S2 A1 A2

-10 X2 0 1 0.5 0 -1 0 15
0 S2 0 0 -1 1 10 -1 50
-30 X1 1 0 -0.5 0 2 0 10

Zj -30 -10 10 0 -50 0 -450

C j - Zj 0 0 -10 0 -250 -300

Esta tabla representa la tabla óptima, ya que en el renglón Cj - Zj,


encontramos únicamente valores ceros y negativos. Conviene recordar que para
problemas de Maximización, sabemos que hemos encontrado la solución óptima
al tener valores ceros o negativos en el renglón citado. Entonces la solución queda
así:
x1 =1 0
x2 = 15
s1 = 0
s2 = 50
A1 = 0
A2 = 0
Solución de problemas de programación lineal Unidad 2, Lección 6

Sin embargo, esta última tabla con solución óptima, muestra: Z = -450 en
vez de +450. Esto porque al inicio de la lección convertimos el problema de
minimización en uno de maximización. Por lo tanto, la etapa final del proceso de
solución es, multiplicar Z por -1.

Entonces la utilidad mínima en este ejemplo es de 450, asociada a las


variables x1 = 10, x2 = 15 y S2 = 50.

Sustituyendo estos valores en la función objetivo original:

Minimizar:

Bibliografía:

Taha, H. (2004). Investigación de operaciones. 7ª. ed. México: Pearson,


Prentice Hall.
Eppen, G.D., Gould, F.J., Schmidt, C.P., Moore, J.H. y Weatherford, L.R.
(2000). Investigación de operaciones en la ciencia administrativa. 5a ed.
México: Prentice Hall.
Monks Joseph G. Administración de operaciones, serie Schaum., Primera
edición, México D.F., Mc. Graw Hill.
Anderson, R. D., Sweeney, J. D., Williams, A.T. (2011). Métodos
cuantitativos para los negocio. 11ª ed. México: CENGAGE, Learning.

Вам также может понравиться