0% encontró este documento útil (0 votos)
103 vistas35 páginas

Algoritmo Simplex

Este documento describe el algoritmo simplex para resolver problemas de programación lineal. Explica cómo convertir desigualdades en ecuaciones con variables de holgura o exceso, y cómo manejar variables con o sin restricciones de valor negativo. También describe la transición de la solución gráfica a la representación algebraica utilizada en el método simplex.

Cargado por

graciela romero
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
103 vistas35 páginas

Algoritmo Simplex

Este documento describe el algoritmo simplex para resolver problemas de programación lineal. Explica cómo convertir desigualdades en ecuaciones con variables de holgura o exceso, y cómo manejar variables con o sin restricciones de valor negativo. También describe la transición de la solución gráfica a la representación algebraica utilizada en el método simplex.

Cargado por

graciela romero
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

- Investigación de Operaciones I -

Material de lectura: ALGORITMO SIMPLEX


Dr. Juan Pérez

Facultad Politécnica
Facultad Politécnica UNA
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Contenido
1 RESOLUCIÓN DE UN PROBLEMA DE PL ....................................................................................... 3
1.1.1 Resolución por el Algoritmo Simplex................................................................................ 3
1.1.2 Métodos para resolución de problemas de minimización: Método M y de las Dos Fases 18
1.2 CASOS ESPECIALES DE LA APLICACIÓN DEL MÉTODO SIMPLEX .......................................................... 26
1.3 APLICACIÓN DE PAQUETES DE CÓMPUTO PARA LA SOLUCIÓN DE MODELOS DE PROGRAMACIÓN LINEAL...... 34

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

2
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Unidad II: Programacion Lineal (PL)

1 Resolución de un problema de PL

1.1.1 Resolución por el Algoritmo Simplex

MODELO DE PL EN FORMA DE ECUACIÓN

El desarrollo de los cálculos con el método simplex se facilita si se imponen


dos requerimientos a las restricciones de programación lineal.

1. Todas las restricciones son ecuaciones con lado derecho no negativo.


2. Todas las variables son no negativas.

Conversión de las desigualdades en ecuaciones con lado derecho no


negativo.

En un modelo de PL económico, el lado derecho representa la disponibilidad


de un recurso, y el izquierdo el uso del recurso por todas las actividades del
modelo (variables). La cantidad excedente del lado derecho respecto de
izquierdo da entonces la cantidad no utilizada del recurso.

Para convertir una desigualdad (≤) en ecuación se agrega una variable de


holgura al lado izquierdo de la restricción. Por ejemplo, la restricción
se convierte en ecuación como sigue:

La variable no negativa es la holgura (o cantidad no utilizada) del recurso


correspondiente.

A continuación, una restricción (≥) establece un límite inferior en las


actividades económicas de la Programación Lineal, así que la cantidad en la
cual el lado izquierdo excede el límite mínimo representa un superávit. Así
pues, la conversión de (≥) a (=) se logra restando una variable de superávit
no negativa del lado izquierdo de la desigualdad.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

3
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Por ejemplo, en la restricción , la variable de exceso ,

convierte la restricción (≥) en la ecuación:

Si el lado derecho de una restricción es negativo, se multiplica dicha


restricción por (-1) y se la reduce a alguno de los casos anteriores.

Manejo de variables irrestrictas

Variables con una cota sobre los valores negativos permitidos

Considere cualquier variable de decisión que puede tener valores


negativos, pero nada más aquellos que satisfacen una restricción de la forma:
,

donde es una constante negativa. Esta restricción se puede convertir en


una de no negatividad al realizar el siguiente cambio:j

entonces .

Así, se sustituye por en el modelo y la nueva variable de decisión


no puede ser negativa. (Esta misma técnica se puede utilizar cuando es
positiva para convertir una restricción funcional en una restricción de
no negatividad .)

Para ejemplificar, suponga que se tiene el siguiente modelo de PL:

𝑍 3𝑥 5𝑥
𝑥
𝑥
3𝑥 𝑥
𝑥 𝑥

Para obtener el modelo equivalente que se necesita el método símplex, la


variable de decisión se redefinirá como:

lo que produce los siguientes cambios en la función objetivo y las


restricciones:

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

4
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

𝑍 3𝑥 5𝑥 𝑍 3(𝑥 ) 5𝑥 𝑍 3 3𝑥 5𝑥
𝑥 𝑥 𝑥
𝑥 𝑥 𝑥
3𝑥 𝑥 3(𝑥 ) 𝑥 3𝑥 𝑥
𝑥 𝑥 𝑥 𝑥 𝑥 𝑥

Variables sin cota sobre los valores negativos permitidos

En caso de que no tenga una cota inferior en el modelo formulado, se


requiere un cambio distinto: se sustituye en todo el modelo por la
diferencia de dos nuevas variables no negativas,
donde .

Como y pueden tomar cualquier valor no negativo, la diferencia


puede tener cualquier valor (positivo o negativo), por lo que es una
sustitución legítima de en el modelo. Después de estas sustituciones, el
método símplex puede proceder con variables que son no negativas.

| |

De forma que representa la parte positiva de y su parte negativa


(como lo sugieren los superíndices).

Suponga que se tiene el siguiente modelo de PL:

Maximizar 𝑍 3𝑥 5𝑥
sujeta a 𝑥
𝑥
3𝑥 𝑥
𝑥 (única)

Entonces, antes de aplicar el método símplex, se reemplaza por la


diferencia,
donde .

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

5
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

dando como resultado:

Maximizar 𝑍 3𝑥 5𝑥 Maximizar 𝑍 3𝑥 3𝑥 5𝑥
sujeta a 𝑥 sujeta a 𝑥 𝑥
𝑥 𝑥
3𝑥 𝑥 3𝑥 3𝑥 𝑥
𝑥 (única) 𝑥 𝑥 𝑥

Desde un punto de vista computacional, este enfoque tiene la desventaja


de que el nuevo modelo equivalente tiene más variables que el modelo
original. De hecho, si ninguna variable original tuviera restricción de cota
inferior, el nuevo modelo tendría el doble de variables. Por fortuna, este
enfoque se puede modificar en parte para que el número de variables
aumente sólo en uno, sin importar cuántas variables originales tengan que
sustituirse. Esta modificación se hace reemplazando cada variable de este
tipo por:
donde .

donde es la misma variable de toda relevante.

TRANSICIÓN DE LA SOLUCIÓN GRÁFICA A LA ALGEBRAICA

El desarrollo del Método Simplex algebraico está basado en ideas


transmitidas por la solución gráfica.

En el Método Gráfico el espacio de soluciones es la intersección de los


semiplanos que representan las restricciones, y en el Método Simplex, el
espacio de soluciones está representado por ecuaciones lineales
simultáneas y variables no negativas.

Podemos visualizar que el espacio de soluciones gráficas tiene una


infinidad de puntos de solución, pero ¿cómo sacar una conclusión parecida
a partir de la representación algebraica del espacio de soluciones? La
respuesta es que, en todas las PL, la cantidad de ecuaciones siempre es
menor que la de variables , por lo que se obtiene una cantidad infinita de
soluciones (siempre que las ecuaciones sean consistentes).

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

6
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Por ejemplo, la ecuación tiene y y produce una


infinitud de soluciones porque cualquier punto sobre la línea recta
es una solución.

En el espacio de soluciones algebraicas (definido por x ecuaciones,


), las soluciones básicas corresponden a los puntos de esquina en
el espacio de soluciones gráficas. Se determinan igualando
variables a cero y resolviendo las ecuaciones para las variables
restantes, siempre que la solución resultante es única. Esto significa que la
cantidad máxima de puntos de esquina es:

( )

Como con los puntos de esquina, las soluciones factibles básicas definen
por completo a las candidatas para la solución óptima en el espacio de
soluciones algebraicas.

En la siguiente figura se tiene una comparación entre los Métodos Gráfico y


Símplex.

Ilustración 1 Transición de la solución gráfica a la solución algebraica. Fuente: Lieberman (2009)

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

7
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Ejemplo

Considere la siguiente PL con dos variables:

La figura siguiente proporciona el espacio de soluciones gráficas para el


problema.

Ilustración 2. Espacio de soluciones gráficas. Fuente: Taha (2004)

Algebraicamente, el espacio de soluciones de la PL está representado por las


siguientes ecuaciones y variables:

Las soluciones básicas se determinan estableciendo las


variables iguales a cero y resolviendo las variables restantes. Por
ejemplo, si establecemos y , las ecuaciones proporcionan la
solución básica única
5

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

8
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Esta solución corresponde al punto A en la Figura 3 (convénzase de que


y 5 en el punto A). Puede determinarse otro punto con y
y resolviendo luego las dos ecuaciones resultantes

La solución básica asociada es ( , ), o el punto C en la Figura 3.

Probablemente se pregunte cuáles variables deben igualarse a cero


en busca de un punto de esquina específico. Sin el beneficio del espacio de
soluciones gráficas (el cual está disponible a lo sumo sólo con tres
variables), no podemos especificar las ( ) variables cero asociadas con
un punto de esquina dado. Pero eso no nos impide enumerar todos los
puntos de esquina del espacio de soluciones. Simplemente considere todas
las combinaciones en las que variables son iguales a cero y resuelva
las ecuaciones resultantes. Una vez hecho, la solución óptima es la solución
básica factible (punto de esquina) con el mejor valor objetivo.

En el ejemplo presente tenemos puntos de esquina. Si examinamos la figura,


podemos ver los cuatro puntos de esquina A, B, C y D. Así que, ¿dónde
están los dos restantes?

De hecho, los puntos E y F también son puntos de esquina; pero son no


factibles, y, por consiguiente, no son candidatos para la solución óptima.

Para completar la transición de la solución gráfica a la algebraica, las


variables cero se conocen como variables no básicas. Las variables
restantes se llaman variables básicas, y su solución (obtenida resolviendo las
ecuaciones) se conoce como solución básica. La siguiente Tabla muestra
todas las soluciones básicas y no básicas de este ejemplo.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

9
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

MÉTODO SIMPLEX

Naturaleza iterativa del método simplex

Ilustración 3. Espacio de soluciones de la PL. Fuente: Taha (2004)

La figura siguiente muestra el espacio de soluciones de la programación


lineal del ejemplo anterior.

Por lo común, el Método simplex se inicia en el origen (punto A), donde


, , y el valor objetivo, , es cero. La pregunta lógica es si un
incremento en y/o (o ambas) no básicas por encima de sus valores
actuales de cero puede mejorar (incrementar) el valor de . Podemos
responder esta pregunta investigando la función objetivo:

Un incremento de o (o ambas) sobre sus valores actuales de cero


mejorará el valor de . El diseño del método simplex no permite el
incremento simultáneo de las variables. En cambio, incrementa una a la vez.
La variable que va a aumentar es la que tenga mayor grado de mejora en .
En el ejemplo presente, el grado de mejora del valor de es de 2 unidades
para y de 3 para . Por lo tanto elegimos para que crezca (la variable
con el mayor grado de mejora entre todas las variables no básicas).

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

10
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

La Figura anterior muestra que el valor de debe incrementarse hasta que


se llegue al punto de esquina B (recordemos que no llegar al punto de
esquina B no es una opción porque un candidato para el óptimo debe ser un
punto de esquina). En el punto B, el método simplex incrementará el valor de
para llegar al punto de esquina mejorado C, el cual es el óptimo.

La trayectoria del algoritmo simplex se define como A→B→C. Cada punto de


esquina a lo largo de la trayectoria está asociado con una iteración. Es
importante hacer notar que el método simplex se mueve a lo largo de los
bordes del espacio de soluciones, lo cual significa que el método no puede
cruzarlo, es decir, irse directamente de A a C.

Detalles de cálculo del algoritmo simplex

Ejemplo

Considere el modelo de programación lineal ( que trata sobre fábrica de


pinturas para exteriores e interiores) expresado en forma de ecuación:

(Materia prima M1)


(Materia prima M2)
(Límite del mercado)
(Límite de la demanda)

Las variables , , y son las holguras asociadas con las restricciones


respectivas. A continuación escribimos la ecuación objetivo como:
5

De esta manera, la tabla inicial simplex se representa como sigue:

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

11
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

El diseño de la tabla simplex provee automáticamente la solución en la


iteración inicial. La solución se inicia en el origen ( , ) = ( , ), por lo que
( , ) se definen como las variables no básicas y ( , , , ) como las
variables básicas. La variable objetivo y las variables básicas aparecen en
la columna de la extrema izquierda (Básica). Los lados derechos de las
ecuaciones del modelo dan sus valores, como se muestra en la columna de la
extrema derecha (Solución) de la tabla; es decir, , , ,
, .

El resultado puede verse igualando las variables no básicas ( , ) a cero en


todas las ecuaciones y también observando la configuración de matriz
identidad especial de los coeficientes de las variables básicas (todos los
elementos en las diagonales son 1, y todos los elementos fuera de las
diagonales son 0).

¿Es óptima la solución inicial? La función objetivo 5 muestra que


la solución puede mejorarse si se incrementa el valor de la variable o de la
no básica por encima de cero.

Siguiendo el argumento detallado anteriormente, tiene que incrementarse


porque tiene el coeficiente objetivo más positivo. De forma equivalente, en la
tabla simplex donde la función objetivo aparece como 5 , la
variable seleccionada es la variable no básica con el coeficiente más negativo
en la ecuación objetivo. Esta regla define la llamada condición de
optimalidad simplex. En la terminología del algoritmo simplex, se conoce
como la variable de entrada porque ingresa la solución básica.

Si es la variable de entrada, una de las variables básicas actuales debe


salir; es decir, se vuelve no básica a un nivel cero (recordemos que la
cantidad de variables no básicas debe sersiempre ). La mecánica para
determinar la variable de salida implica calcular las relaciones del lado
derecho de las ecuaciones (columna Solución) con los coeficientes de
restricción estrictamente positivos (imposibilitando así al cero) bajo la variable
de entrada, , como se muestra en la siguiente tabla:

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

12
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

¿Cómo determinan las relaciones calculadas la variable de salida y el valor de


la variable de entrada? La figura siguiente muestra que las relaciones
calculadas son en realidad las intersecciones de las líneas de restricción con
el eje (variable de entrada). Podemos ver que el valor de debe
incrementarse hasta la intersección no negativa mínima con el eje ( )
para alcanzar el punto de esquina B. Cualquier incremento más allá de B no
es factible. En el punto B, la variable básica actual asociada con la
restricción 1 asume un valor de cero y se transforma en la variable de salida.
La regla asociada con las relaciones calculadas se conoce como condición
de factibilidad simplex porque garantiza la factibilidad de la nueva solución.

El nuevo punto de solución B se determina “intercambiando” la variable de


entrada x1 y la variable de salida s1 en la tabla simplex para obtener
Variables no básicas (cero) en B: ( )
Variables básicas en B: ( )

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

13
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Ilustración 4. Relaciones entre las intersecciones con el eje horizontal. Fuente: Taha (2004)

El proceso de intercambio se basa en las operaciones de filas de Gauss-


Jordan. Identifica la columna de la variable de entrada como columna pivote y
la fila de la variable de salida como fila pivote. La intersección de la columna
pivote y la fila pivote se conoce como elemento pivote. La siguiente tabla es
un replanteamiento de la tabla inicial con sus filas y columnas pivote
resaltadas.

Los cálculos de Gauss-Jordan necesarios para obtener la nueva solución


básica son de dos tipos.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

14
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

1. Fila pivote
a. Reemplace la variable de salida en la columna Básica con la variable de
entrada.
b. Nueva fila pivote = Fila pivote actual ÷ Elemento pivote

2. Todas las demás filas, incluyendo


Nueva fila = (Fila actual) - (Coeficiente de la columna pivote) x (Nueva fila
pivote)

Estos cálculos se aplican a la tabla anterior como sigue:

1. Reemplace en la columna Básica con :

( )

( )
3
2. ( 5)

( 5 ) ( 5) ( )
3
5
( )
3
3. ( )

( ) ( ) ( )
3

( )
3
4. ( )

( ) ( ) ( )
3
5
( 5)
3
5. ( )

( ) ( ) ( )
3
( )

La nueva solución básica es ( ), y la nueva tabla es

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

15
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Observe que la estructura de la nueva tabla es similar a la de la tabla inicial,


en el sentido de que los coeficientes de las restricciones de la variable básica
forman una matriz de identidad. Por consiguiente, cuando igualamos las
nuevas variables no básicas y a cero, la columna Solución de forma
automática da la nueva solución ( , , 5, ). Este
“acondicionamiento” de la tabla es el resultado de la aplicación de las
operaciones de filas de Gauss-Jordan. El nuevo valor objetivo es z = 20,
el cual es consistente con:

Por otra parte,


5 5

En la última tabla, la condición de optimalidad muestra que es la variable


de entrada. La condición de factibilidad produce la siguiente información:

Por lo tanto, sale de la solución básica, y el nuevo valor de es 1.5. El


incremento correspondiente en es 5 el cual da la nueva

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

16
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Si reemplazamos en la columna Básica con la de entrada, se aplican las


siguientes operaciones de filas de Gauss-Jordan:

1.

2. ( )

3. ( )

4. ( )

5. ( )

Estos cálculos producen la siguiente tabla:

Según la condición de optimalidad, ninguno de los coeficientes de la fila son


negativos. De ahí que la última tabla sea óptima.

La solución óptima puede leerse en la tabla simplex de la siguiente manera.


Los valores óptimos de las variables en la columna Básica aparecen en la
columna Solución del lado derecho y se interpretan como sigue:

La solución también da el estado de los recursos. Un recurso se designa


como escaso si la variable de holgura asociada es cero, es decir, las
actividades (variables) del modelo consumieron el recurso por completo. De lo
contrario, si la holgura es positiva, entonces el recurso es abundante. La
siguiente tabla clasifica las restricciones del modelo:

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

17
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Comentarios: La tabla simplex ofrece mucha información adicional que


incluye lo siguiente:

1. Análisis de sensibilidad, el cual determina las condiciones que


mantendrán la solución actual sin cambios.
2. Análisis postóptimo, el cual determina la nueva solución óptima cuando
cambian los datos del modelo.

Estos análisis se desarrollarán con más detalle más adelante.

1.1.2 Métodos para resolución de problemas de minimización:


Método M y de las Dos Fases
Hasta ahora nos hemos ocupado del caso de maximización. En problemas de
minimización, la condición de optimalidad requiere seleccionar la variable de
entrada como la variable no básica con el coeficiente objetivo más positivo en
la ecuación objetivo, la regla exacta opuesta del caso de maximización. Esto
obedece a que equivale a ( ). En cuanto a la condición de
factibilidad para seleccionar la variable de salida, la regla no cambia.

Condición de optimalidad: La variable de entrada en un problema de


minimización es la variable no básica con el coeficiente más positivo en la fila
. El óptimo se alcanza en la iteración en la cual los coeficientes en la fila
son no positivos.

Condición de factibilidad: Tanto en problemas de maximización como de


minimización, la variable de salida es la variable básica asociada con la
relación mínima no negativa con el denominador estrictamente positivo.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

18
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Ejemplo

SOLUCIÓN ARTIFICIAL INICIAL

Como se demostró en algunos ejemplos anteriores, las PL en las que todas


las restricciones son de la forma (≤) con lados derechos no negativos ofrecen
una conveniente solución factible básica inicial con todas las holguras. Los
modelos que implican restricciones de la forma (=) o (≥) no lo hacen.

El procedimiento para iniciar PL de “mal comportamiento” con restricciones (=)


y (≥) es utilizar variables artificiales que desempeñan el papel de holguras
en la primera iteración, y que luego se desechan en una iteración posterior.
Aquí se presentan dos métodos estrechamente relacionados: el método M, y
el método de dos fases.

 Método M

El método M se inicia con la PL en forma de ecuación. Si la ecuación no


tiene una holgura (o una variable que pueda desempeñar el papel de
una), se agrega una variable artificial, , para formar una solución inicial
parecida a la solución básica de total holgura. Sin embargo, las variables
artificiales no forman parte del problema original, y se requiere un “artificio” de
modelado para igualarlas a cero en el momento en que se alcance la iteración
óptima (suponiendo que el problema tenga una solución factible). La meta
deseada se logra penalizando estas variables en la función objetivo utilizando
la siguiente regla:

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

19
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Regla de penalización para variables artificiales

Dado M, un valor positivo suficientemente grande (matemáticamente (


), el coeficiente objetivo de una variable artificial representa una
penalización apropiada si:

Ejemplo

3 3
3

Si utilizamos como variable de superávit en la segunda restricción y


como variable de holgura en la tercera restricción, el problema en forma de
ecuación es

3 3
3

La tercera ecuación tiene su variable de holgura, , pero la primera y


segunda ecuacionesno. Por lo tanto, agregamos las variables artificiales y
en las primeras dos ecuaciones y las penalizamos en la función objetivo
con (porque estamos minimizando, en una maximización se
restan las penalizaciones). La PL resultante se da como:

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

20
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

3 3
3

La solución básica inicial es ( ) (3 )

Desde un punto de vista de cálculo, la solución del problema con la


computadora requiere que reemplace M con un valor numérico
(suficientemente grande). No obstante, en todos los libros de texto, M se
maneja algebraicamente en la tabla simplex. El resultado es una dificultad
agregada innecesaria la cual puede evitarse sustituyendo un valor numérico
apropiado en lugar de M (lo que de cualquier modo tenemos que hacer
cuando usamos la computadora). Nos apartamos de la larga tradición de
manejar M algebraicamente y utilizar una sustitución numérica en su lugar. La
intención es, desde luego, simplificar la presentación sin perder la esencia.

¿Qué valor de M debemos utilizar? La respuesta depende de los datos de la


programación original. Recordemos que la penalización M debe ser lo
bastante grande con respecto a los coeficientes objetivos originales para
forzar a las variables originales a ser cero en la solución óptima.

Al mismo tiempo, como las computadoras son la herramienta principal para


resolver PL, no es conveniente que M sea innecesariamente grande ya que
ello nos puede conducir a un alto costo computacional. En este ejemplo, los
coeficientes objetivo de y son 4 y 1, respectivamente, y parece
razonable establecer .

Utilizando , la tabla simplex de inicio se da como sigue (por


comodidad, la columna se elimina porque no cambia en todas las
iteraciones):

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

21
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Antes de proseguir con los cálculos del método simplex, la fila debe hacerse
consistente con el resto de la tabla. El lado derecho de la fila en la tabla en
este momento muestra .

Sin embargo, dada la solución no básica , la solución básica


actual es 3, y , la cual da .
Esta inconsistencia se deriva del hecho de que los coeficientes de y no
son cero ( , ) en la fila .

Para eliminar la inconsistencia, tenemos que sustituir y en la fila por


medio de la siguiente operación de filas:

( )

Esta operación es la misma que sustituir 3 3 y


3 en la fila . Por tanto, la tabla modificada es:

El resultado es que y ahora se sustituyen (tienen coeficientes cero) en


la fila con , como se deseaba.

La última tabla está lista para la aplicación de las condiciones de optimalidad y


factibilidad de simplex, tal como se explicó anteriormente. Dado que la función
objetivo se minimiza, la variable que tiene el coeficiente más positivo en la
fila ( ) entra en la solución. La relación mínima de la condición de
factibilidad específica a como la variable de salida.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

22
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Una vez que se han determinado las variables de entrada y de salida, la


nueva tabla se calcula utilizando las conocidas operaciones de Gauss-Jordan.

La última tabla muestra que y son las variables de entrada y de salida,


respectivamente.

Continuando con los cálculos simplex, se requieren dos iteraciones más para
alcanzar el óptimo.

Observe que las variables artificiales y se salen de la solución básica


(es decir, se hacen iguales a cero) en la primera y segunda iteraciones, un
resultado que es consistente con el concepto de penalizarlas en la función
objetivo.

 Método de dos fases

En el Método M, el uso de la penalización, M, puede conducir a un error de


redondeo o a altos costos computacionales.

El método de dos fases elimina el uso de la constante M. Como su nombre lo


indica, el método resuelve la PL en dos fases; en la Fase I se trata de
encontrar la solución factible básica inicial y, si se halla una, se invoca la Fase
II para resolver el problema original.

Resumen del método de dos fases

Fase I. Ponga el problema en forma de ecuación y agregue las variables


artificiales necesarias a las restricciones (exactamente como en el Método M),
para tener la certeza de una solución básica. A continuación, determine una
solución básica de la ecuación resultante que siempre minimice la suma de

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

23
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

las variables artificiales, independientemente de si la PL es de maximización o


minimización. Si el valor mínimo de la suma es positivo, el problema de PL no
tiene una solución factible. De lo contrario, si el valor mínimo es cero, prosiga
con la fase II.

Fase II. Use la solución factible de la Fase I como una solución factible básica
inicial para el problema original.

Ejemplo

Utilizaremos el mismo ejemplo de minimización que se usó para el Método de


la M

3 3
3

Fase I

3 3
3

La tabla asociada es

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

24
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Como en el Método M, y se sustituyen en la fila mediante las


siguientes operaciones de filas:

( )

La nueva fila se utiliza para resolver la Fase I del problema, la cual da por
resultado la siguiente tabla óptima:

Como el mínimo , la Fase I produce la solución factible básica ,

y .

En este punto, las variables artificiales ya completaron su misión, y podemos


eliminar sus columnas de la tabla y continuar con la Fase II.

Fase II
Después de eliminar las columnas artificiales, escribimos el problema original
como:

3
5 5
3
5 5

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

25
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

En esencia, la Fase I ha transformado las ecuaciones de restricciones


originales de tal forma que proporciona una solución factible básica inicial
para el problema, si es que existe una. La tabla asociada con la Fase II del
problema es por consiguiente:

Una vez más, como las variables básicas y tienen coeficientes diferentes
a cero en la fila , deben ser sustituidas, mediante las siguientes operaciones:

( )

La tabla inicial de la fase II es por consiguiente:

Como estamos minimizando, debe entrar en la solución. La aplicación del


método simplex producirá el óptimo en una iteración.

1.2 Casos especiales de la aplicación del Método Simplex

Se considerarán cuatro casos especiales que surgen al aplicar el método


simplex.

1. Degeneración
2. Óptimos alternativos
3. Soluciones no acotadas
4. Soluciones no existentes (o no factibles)

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

26
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

1. Degeneración

Al aplicar la condición de factibilidad del método simplex, se puede presentar


un empate por la relación mínima, el cual puede romperse arbitrariamente.
Cuando esto sucede, al menos una variable básica será cero en la siguiente
iteración, y se dice que la nueva solución está degenerada.

La degeneración puede hacer que las iteraciones simplex ocurran de forma


indefinida en ciclos, y que el algoritmo nunca se termine. La condición
también revela que el modelo tiene por lo menos una restricción redundante.
El siguiente ejemplo explica los impactos prácticos y teóricos de la
degeneración.

Ejemplo
3

Utilizando las variables de holgura y , las tablas de solución se muestran


abajo. En la iteración 0, y empatan como la variable de salida, lo que
provoca degeneración en la iteración 1 porque la variable asume un valor
cero. El óptimo se alcanza en una iteración más.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

27
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Ilustración 5. Solución degenerada. Fuente: Taha (2004)

Comentarios.

1. ¿Cuál es la implicación práctica de la degeneración? Al examinar la


solución gráfica en la figura anterior se ve que pasan tres líneas por el
punto óptimo ( , ). Como éste es un problema bidimensional, el
punto está sobredeterminado, y una de las restricciones es redundante. En
la práctica, el simple conocimiento de que algunos recursos son superfluos
puede ser valioso durante la fase de implementación de la solución. La
información también permite descubrir irregularidades en la construcción
del modelo. Por desgracia, no existen técnicas de cómputo eficientes para
identificar restricciones redundantes directamente desde la tabla.

2. Desde el punto de vista teórico, la degeneración puede provocar


ciclado. En las iteraciones simplex 1 y 2, el valor objetivo no mejora
( ), y por lo tanto es posible que el método simplex entre en una
secuencia repetitiva de iteraciones que nunca mejoran el valor objetivo ni
satisfacen la condición de optimalidad. Aunque haya métodos para eliminar
el ciclado, éstos reducen drásticamente los cálculos.

3. Aun cuando quizá un modelo de PL no se inicie con restricciones


redundantes (en el sentido directo que se muestra en la figura anterior), el
error de redondeo provocado por la computadora en realidad puede crear
condiciones parecidas a la degeneración durante el curso del proceso de
solución de una PL de la vida real. En esos casos las iteraciones se
“detendrán” en un punto de solución, como si imitaran un ciclado. Los
códigos comerciales tratan de aligerar el problema al perturbar
periódicamente los valores de las variables básicas.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

28
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

2. Óptimos alternativos
Un problema de PL puede tener una cantidad infinita de óptimos alternativos
cuando la función objetivo es paralela a una restricción obligatoria no
redundante (es decir, una restricción que se satisface como una ecuación en
la solución óptima). El siguiente ejemplo demuestra la importancia práctica de
tales soluciones.

Ejemplo

La figura siguiente demuestra cómo pueden surgir óptimos alternativos en el


modelo de PL cuando la función objetivo es paralela a una restricción
obligatoria. Cualquier punto sobre el segmento de línea BC representa un
óptimo alternativo con el mismo valor objetivo .

Ilustración 6. Soluciones óptimas alternativas. Fuente: Taha (2004)

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

29
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Las iteraciones del modelo se dan en la siguiente tabla.

La iteración 1 proporciona la solución óptima , y (punto B

en la Figura). La existencia de un óptimo alternativo puede detectarse en la


tabla óptima examinando los coeficientes de las variables no básicas de la
ecuación . El coeficiente cero de la no básica indica que puede hacerse
básica, modificando los valores de las variables básicas sin cambiar el valor
de . La iteración 2 hace justo eso, aplicando y como las variables de
entrada y de salida, respectivamente. El nuevo punto de solución ocurre en C
( 3, , ).

El método simplex determina sólo puntos de esquina óptimos; es decir, los


puntos B y C en el presente ejemplo. Podemos determinar de manera
matemática todos los puntos ( , ) sobre el segmento de línea BC como un

promedio ponderado no negativo de los puntos B( , ) y C( 3,

), de lo que se concluye

̂ ( ) ( )(3) 3 3
5 3
̂ ( ) ( )( )

Comentarios. En la práctica, los óptimos alternativos son útiles porque


podemos elegir de entre muchas soluciones sin que se deteriore del valor

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

30
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

objetivo. Digamos que en este ejemplo la solución en B muestra que la


actividad 2 sólo está en un nivel positivo; en cambio, en C ambas actividades
están en un nivel positivo. Si el ejemplo representa una situación de
combinación de productos, puede ser ventajoso comercializar dos productos
en lugar de uno.

3. Solución no acotada
En algunos modelos de programación lineal, el espacio de soluciones es no
acotado en por lo menos una variable, es decir que las variables pueden
incrementarse de forma indefinida sin violar ninguna de las restricciones. En
este caso el valor objetivo asociado también puede ser no acotado.

Un espacio de soluciones no acotado casi siempre indica que el modelo está


mal construido. La irregularidad más probable en tales modelos es que no se
han tomado en cuenta algunas restricciones clave. Otra posibilidad es que las
estimaciones de los coeficientes de las restricciones quizá no sean precisas.

Ejemplo

Iteración de inicio

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

31
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

En la tabla de inicio, tanto como tienen coeficientes negativos en la


ecuación , lo que significa que al incrementarse sus valores también lo hará
el valor objetivo. Aunque debe ser la variable de entrada (tiene el
coeficiente más negativo), observamos que todos los coeficientes de
restricción bajo son ; lo que significa que puede incrementarse
indefinidamente sin violar ninguna de las restricciones (compare con la
interpretación gráfica de la relación mínima en la figura de abajo). El resultado
es que puede incrementarse indefinidamente. La Figura muestra el espacio
de soluciones no acotado y también que y pueden incrementarse
indefinidamente.

Ilustración 7. Soluciones no acotadas. Fuente: Taha (2004)

4. Solución no factible

Los modelos PL con restricciones inconsistentes no tienen una solución


factible. Esta situación no ocurre si todas las restricciones son del tipo con
lados derechos no negativos porque las holguras proporcionan una solución
factible obvia. Para otros tipos de restricciones, se utilizan variables artificiales
penalizadas para iniciar la solución. Si al menos una variable artificial es
positiva en la iteración óptima, entonces la PL no tiene una solución factible.
Desde el punto de vista práctico, un espacio no factible apunta hacia la
posibilidad de que el modelo se formuló de manera incorrecta.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

32
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Ejemplo

Considere la siguiente PL:


3

Aplicando la penalización para la variable artificial , la siguiente


tabla proporciona la iteración simplex del modelo.

La iteración óptima 1 muestra que la variable artificial es positiva ( ), es


decir que la PL es no factible. La Figura de abajo ilustra el espacio de
soluciones no factibles. Al permitir que la variable artificial sea positiva, el
método simplex de hecho ha invertido la dirección de la desigualdad de
3 a 3 . El resultado es lo que podemos llamar
una solución pseudo óptima.

Ilustración 8. Soluciones no factibles. Fuente: Taha (2004)

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

33
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

1.3 Aplicación de paquetes de cómputo para la solución de modelos


de programación lineal
En la práctica existen varios paquetes de software que sirven para la
resolución de los modelos de programación lineal, los más usuales son
LINGO, Solver de Excel, AMLP, ILOG Cplex. También pueden encontrarse
herramientas online para resolver este tipo de problemas como por ejemplo el
PHP Simplex o el GeoGebra.

Como el propósito del curso es conocer cómo funcionan los algoritmos de los
métodos de resolución ya vistos (Método Gráfico y el Símplex) daremos tan
solo un sencillo ejemplo de cómo utilizar el Excel Solver para resolver los
problemas planteados de Programación Lineal.

Cabe mencionar que el Solver solo sirve para resolver problemas sencillos;
para problemas más complejos se requieren de otros tipos de paquetes como
el ILOG Cplex.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

34
Departamento de Ciencias Básicas
Facultad Politécnica DCB_03_00
Universidad Nacional de Asunción

Bibliografía
 Taha, H. A. (2004). Investigación de Operaciones, México, D.F.:
Pearson Educación.

 Hillier, F. y Lieberman, G. (2010). Introducción a la Investigación de


Operaciones, México, D.F: McGRAW-Hill/Interamericana Editores, S.A. de C.V.

Facultad Politécnica UNA | www.pol.una.py – www.educa.una.py/politecnica

35

También podría gustarte