Clase Investigacion Operativa Adm
Clase Investigacion Operativa Adm
Clase Investigacion Operativa Adm
Irene Loiseau
Departamento de Computación
Facultad de Ciencias Exactas y Naturales
Universidad de Buenos Aires
irene@dc.uba.ar
De qué trata este curso?
• .
• Monge 1781, transporte.
• Fourier, 1826, Farkas 1902, resolución de sistemas de inecuaciones
• Inicios del siglo XX algunas aplicaciones
• Dantzig
• Von Newmann
• Optimización nolineal
• Toma de decisiones en contextos de incertidumbre, árboles de
decisión
• Optimización multiobjetivo
• Teoría de juegos
• Modelos de inventario (stock) determinísticos y probabilísticos.
• Programación dinámica
• Teoría de colas
• Cadenas de Markov
• Simulación
• Métodos de predicción
• De todos los temas que abarca la Investigación
Operativa en este curso estudiaremos SOLO problemas
de programación lineal y lineal entera………
• CPLEX
http://www-01.ibm.com/software/integration/optimization/cplex-optimizer/
http://www.cplex.com
• GUROBI
www.gurobi.com/
• LINDO
http://www.lindo.com
• Software libre
- SCIP
http:scip.zib.de/
- LP-Solve
http://sourceforge.net/projects/lpsolve/
Problema de la dieta
huevos 2 160 13 54 13
• 4 porciones de cereal
• 3 porciones de pollo
• 4 huevos
• 8 porciones de leche
• 2 porciones de pastel
• 2 porciones de cerdo con porotos
sujeto a
a11 x1 + a12 x2 + …………+ a1n xn ≤ b1
a21 x1 + a22 x2 + …………+ a2n xn ≤ b2
.
.
.
am1 x1 + am2 x2 + …………+ amn xn ≤ bm
xj ≥ 0 para j = 1,…..n
Max ∑j cj xj
sujeto a
∑j aij xj ≤ bi i = 1,…..m
xj ≥ 0 para j = 1,…..n
:
O en forma matricial:
Max c x
sujeto a
Ax ≤ b
x≥0
• Función objetivo
• Coeficientes de la función objetivo
• Variables o variables de decisión
• Restricciones
• Coeficientes tecnológicos: los coeficientes de la matriz A.
• Restricciones de nonegatividad.
• Termino de la derecha (right-hand-side)
• Solución factible
• Conjunto de soluciones factibles o región factible
Cómo representamos la región factible del
siguiente problema?
Maximizar 2 x1 + 5 x2
sujeto a
x1 + x2 ≥ 6
x1 + 2 x2 ≤ 18
x1 ,x2 ≥ 0
Solución Geométrica
• Cómo podemos aprovechar la representación de la región
factible para resolver geométricamente un problema de PL
de dos variables? . Cómo resolver el problema anterior?.
Maximizar x1 + 3 x2
sujeto a
x1 + x2 ≤ 6
- x1 + 2 x2 ≤ 8
x1 ,x2 ≥ 0
Cuál es la solución del siguiente problema?
Minimizar - 2x1 + 3 x2
sujeto a
- x1 + 2 x2 ≤ 2
2 x1 - x2 ≤ 3
x2 ≥ 4
x1 ,x2 ≥ 0
Maximizar 5 x1 + 4 x2 + 3 x3
Sujeto a
2 x1 + 3 x2 + x3 ≤ 5
4 x1 + x2 + 2 x3 ≤ 11 (1)
3 x1 + 4 x2 + 2 x3 ≤ 8
x1 , x2 , x3 ≥ 0
El método consiste en mejorar iterativamente el
valor de la función objetivo, revisando sistemas
de inecuaciones equivalentes al sistema original
(1) de desigualdades que describe la región
factible.
En primer lugar definimos 3 variables nonegativas
x4, x5, x6 llamadas variables de holgura (slacks)
que nos transforman el sistema de
desigualdades (1) en un sistema de igualdades
2 x1 + 3 x2 + x3 + x4 = 5
4 x1 + x2 + 2 x3 + x5 = 11
3 x1 + 4 x2 + 2 x3 + x6 = 8
x4 = 5 - 2 x1 - 3 x2 - x3
x5 = 11 - 4 x1 - x2 - 2 x3 (2)
x6 = 8 - 3 x1 - 4 x2 - 2 x3
--------------------------------------------------------------------------
z = 5 x1 + 4 x2 + 3 x3
Entonces nuestro problema se puede reformular como
Maximizar z
Sujeto a
x1 , x2 , x3 , x4 , x5 , x6 ≥ 0
X1 = 0, X2 = 0, X3 = 0, X4 = 5, X5 = 6, X6 = 8
z=0
x4 = 5 - 2 x1 - 3 x2 - x3
x5 = 11 - 4 x1 - x2 - 2 x3
x6 = 8 - 3 x1 - 4 x2 - 2 x3
---------------------------------------------------------------
z = 5 x1 + 4 x2 + 3 x3
x1 = 5/2 , x2 = 0 x3 = 0 , x4 = 0 x1 = 1 , x6 = ½
z = 25/2
x1 = 5/2 – 3/2 x2 – ½ x 3 - ½ x4
x1 = 2 , x2 = 0 x3 = 1 , x4 = 0 x5 = 1 , x6 = 0
x3 = 1 + x2 + 3 x 4 - 2 x6
Si reemplazamos x3 por esta expresión en el sistema (3)
obtenemos un nuevo sistema:
x3 = 1 + x2 + 3 x 4 - 2 x6
x1 = 2 - 2 x2 - 2 x4 + x6 (4)
x5 = 1 + 5 x2 + 2 x4
---------------------------------------------------------------
z = 13 – 3 x2 - x4 - x6
Max ∑j cj xj
sujeto a
∑j aij xj ≤ bi i = 1,…..m
xj ≥ 0 para j = 1,…..n
xn+i = bi - ∑j aij xj
z= ∑j cj xj
Asociamos a este sistema una solución factible que se
obtiene asignando valor 0 a las variables originales del
problema.
xj = 0 para j = 1,…..n
x n+ i = bi para i= 1, ….m
• Elegir alguna variable no-básica cuyo valor pueda crecer ( o sea que
figura con signo más en la función objetivo). (variable de entrada)
• Determinar la ( o una de las) variable básica que limita más el
crecimiento de la variable elegida en el paso anterior. (variable de
salida).
• Despejar la variable no básica elegida de la ecuación correspondiente
a la variable básica.
• Reemplazar en el sistema anterior y obtener un nuevo sistema.
• Asignar valor 0 a la nueva variable no-básica, obtenemos una nueva
solución factible del problema original (estas soluciones se llaman
soluciones básicas).
Ejemplo:
Representar gráficamente el conjunto de soluciones
factibles del siguiente problema. Resolver, eligiendo en
cada paso la variable no-básica de mayor coeficiente y
representar cada solución básica factible obtenida.
Maximizar 3 x1 + 2 x2 + 5 x3
Sujeto a
2 x1 + x2 ≤4
x3 ≤ 5
x1 , x2 , x3 ≥ 0
Qué problemas pueden aparecer al aplicar el
método simplex y cómo resolverlos:
x2 = 5 + x3 - x 4 - 3 x1
x5 = 7 - 3 x4 - 4 x1
----------------------------------------------------
z=5+ x3 - x4 - x1
x4 = 1 - 2 x3
x5 = 3 - 2 x1 - 4 x2 - 6 x3
x6 = 2 + x1 - 3 x2 - 4 x3
---------------------------------------------------------------
z= 2 x1 - x2 + 8 x3
x1 = - 2 x2 + 1.5 x4 -0.5 x5
x3 = 0.5 - 0.5 x4
x6 = - x2 + 3.5 x4 - 0.5x5
---------------------------------------------------------------
z = 4 + 3 x2 - x4 - x5
x1 = 11 x2 + 5 x3 -18 x4 - 2 x5
x6 = - 4 x2 - 2 x3 + 8 x4 + x5
x7 = 1 - 11 x2 - 5 x3 + 18 x4 + 2 x5
--------------------------------------------- --------------------------------------------------
z= 53 x2 + 41 x3 - 204 x4 - 20 x5
Demostración resumida:
Hay un número finito de soluciones básicas (se obtienen eligiendo m
variables entre n+m posibles), por lo tanto si hay infinitas
iteraciones, se tienen que repetir las soluciones básicas, y los
correspondientes sistemas de ecuaciones.
Hay varias formas de evitar que el método simplex cicle:
• Método de perturbación (1952)
• Método lexicográfico (1955)
• Regla del menor índice. (1977)