Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INGENIERIA INDUSTRIAL
GRUPO: 4I1
ASIGNATURA:
INVESTIGACIÓN DE OPERACIONES I
INTEGRANTES:
➢ Matos Solís Joel Antonio
➢ Trujeque Olan Alex Armando
Introducción………………………………………………………………………………. 3
2.1.-Método Gráfico……………………………………………………………………….4
2.2.-Método Simplex…………………………………………………………………….12
2.6.-Relaciones primal-dual…………………………………………………………….34
Conclusión…………………………………………………...…………………………...42
Bibliografía………………………………………………………………………………..43
2
Introducción
Cada vez es más difícil asignar los recursos o actividades de la forma más eficaz,
pues los recursos cada vez son más escasos y crecen las complejidades de los
sistemas generando problemas para decisiones óptimas.
En el siglo pasado las Organizaciones del mundo solo estaban constituidas por un
número reducido de personas y eran dirigidos por una sola persona. Todo este
panorama cambia radicalmente con la Primera Revolución Industrial. Como se
sabe, ésta trajo consigo la energía, las maquinarias y los equipos que
revolucionaron las industrias mecanizando la producción. Consecuentemente con
ello vino la división o especialización del trabajo trayendo con ello las nuevas
responsabilidades de finanzas, producción, mercado e investigación y desarrollo
por parte de especialistas y científicos.
3
2.- El método Simplex
2.1.- Método Gráfico
El método gráfico se emplea para resolver problemas que presentan sólo 2
variables de decisión. El procedimiento consiste en trazar las ecuaciones de las
restricciones en un eje de coordenadas X1, X2 para tratar de identificar el área de
soluciones factibles (soluciones que cumplen con todas las restricciones).
La solución óptima del problema se encuentra en uno de los vértices de esta área
de soluciones creada, por lo que se buscará en estos datos el valor mínimo o
máximo del problema.
Cuando los ejes son relacionados con las variables del problema, el método es
llamado método gráfico en actividad. Cuando se relacionan las restricciones
tecnológicas se denomina método gráfico en recursos.
Los pasos necesarios para realizar el método son siete:
1. graficar las soluciones factibles, o el espacio de soluciones (factible), que
satisfagan todas las restricciones en forma simultánea.
2. Las restricciones de no negatividad Xi>= 0 confían todos los valores
posibles.
3. El espacio encerrado por las restricciones restantes se determina
sustituyendo en primer término <= por (=) para cada restricción, con lo cual
se produce la ecuación de una línea recta.
4
4. trazar cada línea recta en el plano y la región en cual se encuentra cada
restricción cuando se considera la desigualdad lo indica la dirección de la
flecha situada sobre la línea recta asociada.
5. Cada punto contenido o situado en la frontera del espacio de soluciones
satisfacen todas las restricciones y, por consiguiente, representa un punto
factible.
6. Aunque hay un número infinito de puntos factibles en el espacio de
soluciones, la solución óptima puede determinarse al observar la dirección
en la cual aumenta la función objetivo.
7. Las líneas paralelas que representan la función objetivo se trazan mediante
la asignación de valores arbitrarios a fin de determinar la pendiente y la
dirección en la cual crece o decrece el valor de la función objetivo.
Conjunto convexo
Un conjunto C es un conjunto convexo si el segmento rectilíneo que une cualquier
par de puntos de C se encuentra completamente en C.
5
Cálculos analíticos para graficar el sistema de inecuaciones lineales, incluyendo la
condición de no negatividad (Xj>0 ; j = 1, 2), que nos indica que solamente
trabajaremos en el primer cuadrante del plano cartesiano, cuadrante en donde X1
y X2 son positivas.
Restricciones
Fíjese que para cada inecuación, primero suponemos que es una igualdad y luego
tabulamos dos puntos fáciles de calcular, como lo son las intersecciones de la
recta con los ejes cartesianos abscisa y ordenada, esto siempre que el término
independiente (Lado derecho de la inecuación) sea diferente de cero, es decir
siempre y cuando la recta no pase por el origen de coordenadas P(0,0).
A continuación con un punto de prueba cualquiera P(X1 , X2), (Asegúrese que se
encuentre al lado derecho o izquierdo de la recta, NO sobre ella, es decir, el punto
de prueba NO puede pertenecer a la recta), Aquí, como ya sabemos que la recta
no pasa por el origen de coordenadas (Término independiente diferente de cero),
usamos como punto de prueba P(0,0), es decir X1 = 0, X2 = 0 que nos facilita los
cálculos cuando lo remplacemos en la inecuación y observamos si la hace una
verdad ó una falsedad; Averiguar esto nos permite conocer si el área solución de
la inecuación está al lado derecho o izquierdo (Por supuesto, incluyendo los
puntos sobre la recta, ya que todas las inecuaciones son menor o igual ( < )); Si el
punto de prueba hace verdad la inecuación lineal, entonces, todos los puntos que
se encuentran al mismo lado del punto de prueba la harán verdad, si el punto de
prueba no hace verdad la inecuación lineal, los puntos que la harán verdad están
al lado contrario en donde se encuentra el punto de prueba. Esto es, si el punto de
prueba se encuentra al lado izquierdo de la recta y hace verdad la inecuación,
entonces el área de soluciones para esta inecuación, son todos los puntos que
pertenecen a la recta y los que se encuentran al lado izquierdo de ella. Si el punto
de prueba situado a la izquierda de la recta, no hace verdad la inecuación,
entonces el área de soluciones para esta inecuación, son todos los puntos que
pertenecen a la recta y los que se encuentran al lado derecha de ella.
6
Función objetivo
La función objetivo Z = 2X1 + X2 expresada como 2X1 + X2 = Z tiene la estructura
de una línea recta, solo que no conocemos su término independiente. Graficando
esta ecuación con diferentes valores para Z, observamos que la función objetivo,
representa una familia de rectas paralelas, que al aumentar el valor de Z la recta
se desplaza hacia el lado derecho, por lo que concluimos que Z aumenta cuando
la recta se desplaza paralelamente hacia la derecha, esto se cumple siempre que
la ecuación de la función objetiva tenga pendiente negativa, es decir inclinada al
lado izquierdo. Para funciones objetivo con pendiente positiva (Inclinadas al lado
derecho), se recomienda dar varios valores a Z y graficar para observar si al
desplazarse a la derecha Z aumenta o por el contrario disminuye.
7
presenta cuando la función objetiva es aproximadamente paralela a uno de
los lados del área de soluciones factible, originando la duda visual sobre la
gráfica de cuál de los dos extremos (esquinas) es el que hace que la
función objetivo se optimice.
Se recomienda usar el segundo procedimiento y en caso de dudas visuales sobre
la gráfica, recurrir al primer procedimiento para dirimir la duda respecto al par de
esquinas.
Primer procedimiento: Evaluar la función objetivo Z en cada una de las esquinas
del área de soluciones factibles.
Se recomienda usar el segundo procedimiento y en caso de dudas visuales sobre
la gráfica, recurrir al primer procedimiento para dirimir la duda respecto al par de
esquinas.
Primer procedimiento: Evaluar la función objetivo Z en cada una de las esquinas
del área de soluciones factibles.
El valor de la función objetivo en cada una de las esquinas del área de soluciones
factible es:
8
Segundo procedimiento: Usando la función objetivo para determinar la esquina del
área de soluciones factible que la optimiza.
Ejemplos:
Problema de múltiples soluciones
Maximice Z = 5/2 X1 + X2
C. S. R. 3X1 + 5X2 =< 15
5X1 + 2X2 =< 10
Xj => 0; j = 1, 2
9
Problema de soluciones indeterminadas
Si se está modelando sobre un problema real y ocurre este caso, falta considerar
una restricción, que justamente cierre el área de soluciones factibles por el lado
derecho. Se ha dejado de considerar la restricción de algún recurso, ya que los
valores de las variables en la realidad no pueden crecer de manera ilimitada,
irrestrictamente.
Problema sin solución
Este caso se presenta cuando entre las restricciones existen al menos dos de
ellas que sean excluyentes, tal como: X1 2 y X14. Aquí nunca podremos encontrar
un número que al mismo tiempo sea menor o igual a 2 y mayor o igual a 4, las dos
restricciones son excluyentes y por lo tanto no existe área de soluciones factible,
gráficamente se observa de la siguiente manera:
11
2.2.- Método Simplex
El método simplex es un procedimiento iterativo para resolver problemas de
programación lineal, donde se busca obtener la solución óptima de la función
objetivo que logre cumplir el conjunto de restricciones.
Conceptos Básicos
Para comprender de mejor manera el método simplex vamos a revisar algunas
definiciones.
El método parte de dos afirmaciones importantes:
El conjunto de posibles soluciones o conjunto factible de cualquier problema de
programación lineal puede representarse mediante un poliedro convexo.
Si un problema de programación lineal tiene una solución óptima y finita, ésta
estará en un vértice del poliedro convexo que representa al problema.
El algoritmo simplex parte de uno de los vértices del poliedro, y verifica si es el
óptimo; si no lo es, busca un nuevo vértice adyacentes que va mejorando el valor
de la función objetivo. Se continúa iterando hasta llegar al vértice que representa
la solución óptima.
En la siguiente imágen vemos el poliedro que representa la solución factible y
cómo realiza el recorrido el algoritmo simplex:
12
Pasos del Método Simplex
Los pasos a seguir en el método simplex son:
• Definir el problema en la forma estándar y generar nuestra matriz.
• Determinar la solución básica inicial.
• Seleccionar la variable de entrada utilizando la condición de optimalidad. Si
no se puede seleccionar una variable de entrada, quiere decir que estamos
en la condición óptima y finalizan las iteraciones. De otro modo se continúa
con el siguiente paso.
• Seleccionar la variable de salida utilizando la condición de factibilidad.
• Actualizar nuestra matriz realizando las operaciones de Gauss-Jordan.
Volver al paso número 3.
Un problema de programación lineal tiene la siguiente forma:
1. Definir el problema en la forma estándar y generar matriz
14
El método Simplex «tradicional» o «básico» que abordaremos en esta entrada, se
utiliza para los problemas de programación lineal donde todas las restricciones
son del tipo menor e igual (≤).
1. Generar la matriz
Aplicando lo indicado en los puntos anteriores tendríamos lo siguiente:
15
• Vector Solución: En esta columna se coloca la solución básica inicial y se
va actualizando conforme se realizan las iteraciones. En la columna Cb se
indica el coeficiente que corresponde a cada variable en el vector de
costes. Así mismo siempre se iniciará con las variables de holgura en la
base cuando el problema no tenga variables artificiales.
• Coeficientes Restricciones: Se colocan los coeficientes de las restricciones
en el mismo orden en que fueron formuladas. La columna R contiene a los
términos independientes también conocido como vector de recursos.
• Vector de costes reducidos: También conocido como precios sombra. Este
vector se calcula multiplicando el vector solución por los coeficientes de las
restricciones y se resta el vector de costes. Este procedimiento lo
explicaremos al detalle en nuestra entrada del método de las dos fases y de
la M Grande, donde se presentan variables artificiales. En los ejercicios que
veremos en esta entrada, al no existir variables artificiales, el vector de
costes será igual al vector de costes multiplicado por «-1».
En nuestro caso, en la matriz elaborada podemos ver la solución básica inicial que
sería S1=35, S2=18 y S3=26 (cada variable del vector solución se iguala al valor
que se encuentra en la columna R. Estas variables se denominan variables
básicas. El valor de Z inicial también se muestra en la columna R que es
16
Las variables que no se encuentran en la base se denominan variables no básicas
y en este caso serían X1 y X2. Ambas tienen un valor de 0.
-Condición de Optimalidad:
-Variable de Entrada:
17
La columna donde está ubicada la variable se denomina columna pivote.En el
ejemplo nuestra variable de entrada sería X1 dado que tiene el valor más negativo
en el vector de costes reducidos, es decir «-3»:
-Condición de Factibilidad
Se debe verificar que al menos uno de sus valores sea mayor que 0 para obtener
nuestra variable de salida. Si no se cumple esa condición significa que el problema
tiene solución ilimitada no acotada.
-Variable de Salida
la variable de salida sería S2. El número que se encuentra al cruzar la fila pivote y
la columna pivote es el elemento pivote; en nuestro caso sería 3:
18
5. Actualizar la Matriz
Para la fila pivote: El nuevo valor se obtendrá dividiendo el valor actual entre el
elemento pivote.
Nuevo Valor Fila Pivote = Valor Actual Fila Pivote / Elemento Pivote
Para las otras filas: El nuevo valor se calcula restando del valor actual, la
multiplicación del elemento de la fila que se encuentra en la columna pivote por el
nuevo valor calculado en la fila pivote.
Nuevo Valor = Valor Actual – (Elemento Fila Columna Pivote*Nuevo Valor Fila
Pivote).
19
En las otras filas realizaremos los cálculos de forma diferente. Iniciaremos con la
fila de S1:
20
Finalmente en la fila Z tenemos:
21
La matriz resultante sería:
Cómo puedes ver la posición donde se encontraba nuestro elemento pivote ahora
El único valor negativo es -4, por lo que la variable que ingresará es X2.
Para elegir la variable que va a salir, dividimos cada valor de la columna R por su
contraparte de la columna X2 (este último valor debe ser positivo)
El menor valor se encuentra en la fila de S3, por lo que es la variable que saldrá
de la base. El elemento pivote es 16/3.
22
Realizamos nuevamente las iteraciones obteniendo el siguiente resultado:
En esta última matriz vemos que el vector de costes reducidos ya no tiene ningún
valor negativo, lo que quiere decir que nos encontramos en el valor óptimo.
Obtendremos los valores de las variables básicas y de Z de la siguiente forma:
Solución: X1= 31/4, X2= 21/8, S1= 51/8, S2= 0, S3= 0, Z = 57/2
23
2.3.- Procedimientos para resolver problemas con variables
artificiales (M grande, doble fase)
Las PL en las que todas las restricciones son (≤) con lados derechos no negativos
ofrecen una conveniente solución factible básica inicial con todas las holguras. Los
modelos que implican restricciones (≥) o (=) no lo hacen. El procedimiento para
iniciar PLs 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 i no tiene
una holgura (o una variable que pueda desempeñar el papel de una), se agrega
una variable artificial, Ri, 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:
• Regla de penalización para variables artificiales
• Dado M, un valor positivo suficientemente grande (matemáticamente (M ⟶ ∞), el
coeficiente objetivo de una variable artificial representa una penalización
apropiada si: Coeficiente objetivo de la variable artificial -M, en problemas de
maximización M, en problemas de minimización
-M, en problemas de
maximización
Coeficiente objetivo
de la variable
M, en problemas de
artificial
minimización
24
Para este tipo de casos se han creado muchas metodologías que buscan resolver
este tipo de problemáticas buscando la solución a través de diversos procesos.
Una de estas alternativas es el método de las dos fases, el cual, como su nombre
lo indica, trabaja por medio de 2 fases o procedimientos, con el objetivo de
encontrar primeramente una solución factible inicial y después pasar a resolver el
modelo a través del método simplex. Para utilizar este método se deber tener el
modelo en su forma ampliada, las variables de decisión deben de ser reales y
mayores a cero.
Las fases del método se describen a continuación:
Fase 1 (Se busca la primera Solución básica factible):
1. Consideramos un modelo de programación lineal que se encuentra en su
forma canónica, este modelo debe de ser transformado en su forma
ampliada agregando variables artificiales en las restricciones donde el
origen no es una solución.
2. Ahora se cambia la función objetivo por una función de minimización donde
las variables de decisión son las variables artificiales, pero tomamos el
conjunto de restricciones de la función original.
3. Procedemos a resolver el modelo que tenemos planteado hasta que se dé
uno de los siguientes casos: las variables artificiales salen de la base o la
función objetivo obtiene el valor de cero. Si no ocurre ninguno, entonces el
modelo no tiene solución
Fase 2 (Resolvemos el modelo con la nueva solución encontrada):
1. Eliminamos las variables artificiales de las restricciones, pero conservamos
los cambios que se dieron durante la fase 1.
25
2. Regresamos a la función objetivo original y resolvemos el modelo con los
cambios que se dieron en las restricciones durante la fase 1.
con .
26
Problema No Acotado: En las iteraciones del Método Simplex un problema no
acotado se detecta cuando al calcular el criterio de factibilidad o mínimo cuociente
que determina la variable que deja la base, todas las entradas en la columna de la
variable no básica entrante son negativas o cero, por tanto, no existe denominador
válido (mayor a cero) que permita determinar el pivote. En la siguiente
representación gráfica se puede apreciar que las curvas de nivel de la función
objetivo crecen en la dirección del vector gradiente, donde en particular el dominio
de soluciones factibles es no acotado para los valores que puede adoptar la
variable .
27
Solución Óptima Degenerada: Cuando se presenta un empate en el cálculo de la
condición de factibilidad del Método Simplex, al menos una variable básica será
cero en la siguiente iteración, caso en el cual se dice que la nueva solución es
degenerada. Esto implica que el modelo tiene al menos una restricción
redundante.
28
La función objetivo puede estar en la forma de maximización o de minimización.
Después de agregar las variables de holgura y de poner el problema en la tabla,
si algún elemento de la parte derecha es negativo y si la condición de optimidad
está satisfecha, el problema puede resolverse por el método dual simplex. Note
que un elemento negativo en el lado derecho significa que el problema comienza
óptimo pero infactible como se requiere en el método dual simplex. En la iteración
donde la solución básica llega a ser factible esta será la solución óptima del
problema.
La variable que sale es la variable básica que tiene el valor más negativo (los
empates se rompen arbitrariamente si todas las variables básicas son No
negativas, el proceso termina y esta última tabla es la solución óptima factible).
CONDICION DE OPTIMIDAD
La variable que entra se elige entre las variables no básicas como sigue. Tome los
cocientes de los coeficientes de la función objetivo entre los coeficientes
correspondientes a la ecuación asociada a la variable que sale.
Ignore los cocientes asociados a denominadores positivos o cero.
La variable que entra es aquella con el cociente más pequeño si el problema es
de minimizar o el valor absoluto más pequeño si el problema es de
maximización(rompa los empates arbitrariamente). Si los denominadores son
ceros o positivos el problema no tiene ninguna solución factible.
PARA QUE SE UTILIZA:
Como sabemos, el método simplex es un algoritmo iterativo que iniciando en una
solución básica factible pero no óptima, genera soluciones básicas factibles cada
vez mejores hasta encontrar la solución óptima (sí esta existe). La base de su
lógica es mantener la factibilidad, mientras busca la optimalidad.
Pero surge la posibilidad de usar otro esquema igualmente iterativo, que como
contraparte del simplex, comienza en una solución básica óptima, pero no factible
y mantiene la inmejorabilidad mientras busca la factibilidad. Con este
procedimiento se llega igualmente a la solución óptima.
29
EN QUE CASOS SE UTILIZA:
Cada problema de programación lineal tiene un segundo problema asociado con
el. Uno se denomina primal y el otro dual. Los 2 poseen propiedades muy
relacionadas, de tal manera que la solución óptima a un problema proporciona
información completa sobre la solución óptima para el otro.
Las relaciones entre el primal y el dual se utilizan para reducir el esfuerzo de
computo en ciertos problemas y para obtener información adicional sobre las
variaciones en la solución óptima debidas a ciertos cambios en los coeficientes y
en la formulación del problema. Esto se conoce como análisis de sensibilidad o
post-optimidad
Otra de las ventajas que presenta es que dado a que el número de restricciones y
variables entre problema dual y primal es inverso, se pueden resolver
gráficamente problemas que presenten dos restricciones sin importar el número de
variables.
Es importante destacar que este proceso es muy útil ya que en muchos modelos
evita la inclusión de variables artificiales en el momento de transformar un modelo
a formato estándar.
QUE IMPLICA RESOLVERLO CON OTRO METODO:
Básicas: S1 y S2
No Básicas: X1 X2 X3
31
Paso 4: Se elabora la tabla inicial de simplex
32
Se realizan nuevamente los pasos del 5 al 7 obteniendo como solución
final:
33
2.6.- Relaciones primal-dual
El modelo dual de un problema de Programación Lineal consiste en una instancia
alternativa de modelamiento matemático que nos permite rescatar la información
del problema original conocido comúnmente como modelo primal.
En consecuencia, es suficiente con resolver uno de ellos (primal o dual) para
poder obtener la solución óptima y valor óptimo del problema equivalente (primal o
dual según sea el caso). Para ello se puede utilizar, por ejemplo, las condiciones
establecidas en el Teorema de Holguras Complementarias.
Las relaciones de dualidad se pueden resumir en el siguiente cuadro:
34
• Si el problema primal tiene una variable >=0, la correspondiente restricción
asociada en el dual debe ser <=.
• Si el problema primal tiene una variable <=0, la correspondiente restricción
asociada en el dual debe ser >=.
• Si el problema primal tiene una variable irrestricta (libre de signo), la
correspondiente restricción asociada en el dual debe ser =.
Primal Maximización – Dual Minimización
De forma análoga, interpretando la tabla desde derecha a izquierda, es decir,
pasar de un problema primal de maximización a un problema dual de
minimización, tenemos:
• Si el problema primal es de maximización, entonces su correspondiente
dual será uno de minimización.
• Si el problema primal tiene una restricción del tipo <=, la variable dual
asociada a dicha restricción debe ser >=0.
• Si el problema primal tiene una restricción del tipo >=, la variable dual
asociada a dicha restricción debe ser <=0.
• Si el problema primal tiene una restricción del tipo =, la variable dual
asociada a dicha restricción debe ser irrestricta (libre de signo).
• Si el problema primal tiene una variable >=0, la correspondiente restricción
asociada en el dual debe ser >=.
• Si el problema primal tiene una variable <=0, la correspondiente restricción
asociada en el dual debe ser <=.
• Si el problema primal tiene una variable irrestricta (libre de signo), la
correspondiente restricción asociada en el dual debe ser =.
Ejemplo Relaciones de Dualidad en Programación Lineal
A continuación, presentamos un modelo de optimización que consideraremos
como el problema primal (primero fue resuelto a través del Método Simplex de 2
Fases).
35
desde izquierda a derecha. En consecuencia, el problema dual será uno de
maximización.
Adicionalmente la primera y segunda restricción del problema primal definirán las
variables de decisiones (variables duales) en el problema dual (Y1 e Y2,
respectivamente), siendo los coeficientes en la función objetivo los actuales
valores de los lados derechos de las restricciones del problema primal.
De esta forma la función objetivo del problema dual queda definida por la siguiente
expresión:
Luego por cada variable en el problema primal vamos a tener la misma cantidad
de restricciones en el problema dual. En este caso las variables X1, X2 y X3
definirán la estructura de las restricciones 1, 2 y 3 en nuestro problema dual. Por
ejemplo, la primera restricción del problema dual (asociada a la variable primal X1)
sería 2Y1+2Y2<=160.
Notar que los coeficientes que ponderan a las variables duales son los parámetros
asociados a la variable X1 en el primal en la primera y segunda restricción,
respectivamente. La restricción en el dual es del tipo “<=” debido a que la variable
X1 en el problema primal de minimización tiene la condición de no negatividad
(“>=0”). Por último, el lado derecho de la restricción es el coeficiente que tiene la
variable X1 en la función objetivo del problema primal. Siguiendo el procedimiento
las restricciones del problema dual serían:
Finalmente, como las 2 primeras restricciones del problema primal son del tipo
“>=” en el problema primal de minimización, las respectivas variables duales
asociadas en el problema de maximización serán no negativas. De esta forma el
problema dual es:
36
Ejercicio Propuesto: Utilizando las relaciones de dualidad en Programación
Lineal, dado un problema primal P, demuestre que su correspondiente dual D
queda definido de acuerdo a:
De modo de garantizar que el lado derecho de esta última desigualdad sea una
cota superior de la función objetivo del problema primal se debe cumplir que:
37
Este problema se conoce como el problema “Dual” D) asociado al problema
“Primal” P).
También resulta que al formular el problema dual de D) se obtiene el problema
primal P) (o uno equivalente). Cualquiera de las dos entregas la misma
información y el valor óptimo alcanzado es el mismo.
38
3. Conversión a la forma apropiada de eliminación Gauss: se convierta la tabla
en la forma apropiada para identificar y evaluar la solución básica actual,
para lo cual se aplica la metodología de eliminación Gauss si es necesario.
4. Prueba de factibilidad: se prueba la factibilidad de esta solución mediante la
verificación de que todas las variables básicas de la columna del lado
derecho aun tengan valores no negativos.
5. Prueba de optimalidad: se verifica si esta solución es óptima y factible,
mediante la comprobación de que todos los coeficientes de las variables no
básicas del reglón Z permanecen no negativos.
6. Reoptimización: si esta solución no pasa una de las pruebas indicadas en
los puntos 4 y 5 anteriores, se procede a buscar la nueva solución óptima a
partir de la tabla actual como tabla Símplex inicial, luego de aplicadas las
conversiones de lugar, ya sea con el método Símplex o el Símplex Dual.
Utilizando la herramienta Solver Excel se puede obtener un reporte del analisis de
sensibilidad, para los fines se selecciona el problema 4.6-4 del libro de texto. A
continuación, se presenta el modelo planteado con la solución óptima encontrada.
39
El tercer reporte que Solver Excel permite generar es el correspondiente a los
límites, en el formato presentado.
40
problemas de programación lineal. Una de ellas es un algoritmo muy rápido que
aplica el enfoque de punto interior.
Este algoritmo puede resolver algunos problemas de programación lineal enormes
que el método símplex no puede (y viceversa). Otra presentación es el método
símplex de redes que puede resolver tipos especiales de problemas de
programación lineal aún más grandes. CPLEX 11 también va más allá de la
programación lineal e incluye algoritmos modernos para programación entera y
programación cuadrática, así como programación cuadrática entera.
Los lenguajes de modelado están diseñados para formular con eficiencia modelos
de programación lineal grandes (y modelos relacionados) de manera compacta,
después de lo cual se corre un solucionador para resolver el modelo. Varios
lenguajes de modelado sobresalientes trabajan con CPLEX como solucionadores.
ILOG introdujo también su propio lenguaje de modelado, llamado Lenguaje de
Programación para Optimización (OPL) que se puede usar con CPLEX para
formar el Sistema de Desarrollo OPL-CPLEX. (Se puede encontrar una versión de
prueba de ese producto en la página de internet de ILOG, www.ilog.com.)
La versión para estudiantes de CPLEX se incluye en el OR Courseware como el
solucionador del lenguaje de modelado MPL.
La versión del estudiante de MPL que contiene el OR Courseware también incluye
dos solucionadores que representan una alternativa de CPLEX para resolver
problemas de programación lineal y problemas de programación con enteros. Uno
de ellos es CoinMP, un solucionador de software que puede resolver problemas
más complejos que la versión del estudiante de CPLEX (el cual está limitado a 300
restricciones y variables). El otro es LINDO.
LINDO (iniciales de Linear INteractive and Discrete Optimizer) tiene una historia
más antigua que CPLEX en el campo de las aplicaciones de la programación
lineal y sus extensiones. La interfaz fácil de usar de LINDO se encuentra
disponible como un subconjunto del paquete de modelado de optimización LINGO
de LINDO Systems, www.lindo.com. En parte, la duradera popularidad de LINDO
se debe a su sencillez de manejo. Para problemas relativamente pequeños
(tamaño libro de texto), el modelo se puede introducir y resolver de manera
bastante intuitiva, por lo que se trata de una herramienta útil para los estudiantes.
Aunque su uso es muy sencillo en modelos pequeños, LINDO/LINGO puede
resolver también modelos de gran tamaño.
41
Conclusión
En la actualidad, las empresas deben de enfrentar problemas de todo tipo, las
cuales en algunos casos pueden poner en riesgo, no sólo la estabilidad, sino
también su permanencia en el mercado, por lo que deben de resolverlos en forma
rápida y expedita. Estos problemas pueden ser complejos, debido al número de
variables y parámetros que se conozcan y por el nivel de certidumbre de
información que se maneja. Para resolverlos, el ser humano crea modelos y aplica
uno de los tres procesos de solución que existen: procesos algorítmicos, procesos
heurísticos o la simulación.
Estos procesos son utilizados por los ingenieros, que son reconocidos como
solucionadores de problemas, para lo cual manejan diferentes herramientas,
dentro de las cuales está la investigación de operaciones. Esta herramienta nace
en la segunda guerra mundial para analizar las operaciones militares, cuyas
técnicas se aplicaron posteriormente para solucionar problemas del sector
productivo, dando tan buenos resultados que se extendió su uso.
La decisión final la debe tomar el ser humano, que tiene conocimiento que no se
pueden cuantificar exactamente, y que puede ajustar los resultados del análisis
para llegar a una decisión conveniente.
42
Referencias
43