Formulación de modelos de programación progr amación lineal Ing. María Guzmán Valle
[email protected]
Investigación de Operaciones I
Logro de sesión Formular Formular y resolver resolver problemas problemas utilizando utilizando los modelos de programación lineal
Logro de sesión Formular Formular y resolver resolver problemas problemas utilizando utilizando los modelos de programación lineal
Lista de contenidos • Formulación y estructura de un problema utilizando programación lineal. • Métodos para resolver problema de programación lineal. • Uso de herramientas de software para encontrar la solución óptima.
Actividad 1
Sesión Modelo de programación lineal
ÍNDICE 1. Definición 2. Un primer ejemplo 2.1. Construcción del modelo
2.2. La geometría del modelo 2.3. El álgebra del modelo 3. Ejercicios
1. Definición
- Un problema de Programación Lineal se presenta en entornos económicos en el que hay que gestionar una serie de recursos para realizar una determinada actividad, utilizando para ello un criterio de tipo económico. - En un problema de Programación Lineal existen diferentes soluciones y un criterio para discriminar entre ellas con el objetivo de encontrar la mejor. A este proceso de búsqueda se le denomina Optimización.
- Optimizar significa poco más que mejorar; en el contexto científico la optimización es el proceso de tratar de encontrar la mejor solución posible para un determinado problema. Los problemas de Programación Lineal pueden considerarse o denominarse como problemas de optimización, si bien, esta denominación recoge un rango más amplio de problemas.
1. Definición
- El criterio o función objetivo en un problema PL va referido a la minimización de los costes de la actividad, o a la maximización de beneficios.
Utilidades
Producción
Publicidad Rentabilidad
Tiempos
Costos
Distancias
Pérdidas
Fallas
- De forma más precisa, estos problemas se trata de calcular el valor de unas variables que están sujetas a una serie de restricciones y para las que una determinada función objetivo alcanza su valor máximo o mínimo.
- Los problemas de Programación Lineal se expresan mediante un conjunto de relaciones matemáticas que se conoce como modelo. - El esfuerzo se centra tanto en la construcción del modelo como en la resolución del mismo.
1. Definición
Un problema de Programación Lineal está formado por tres componentes principales:
Un conjunto de variables : Referidas a la actividad que se desarrolla en el sistema que se quiere optimizar.
Notación: x1, x2, x3, ….
Un conjunto de restricciones : Expresan la relación entre el consumo de recursos y las limitaciones de los mismos, así como toda clase de características que hay que imponer en el problema y que están asociadas a la actividad que se realiza en el sistema.
Ejemplo: x1+ x2 3
Una función objetivo: Criterio que se desea optimizar Ejemplo: Maximizar x 1 + 3x2
1. Definición
Los problemas de optimización dependen fundamentalmente para su resolución del tipo de variables que forman parte del mismo y del carácter lineal o no lineal de las restricciones. •
Continuos (Vbles. continuas) PROGRAMACIÓN LINEAL [CONTINUA]
•
Lineales
(Función Objetivo y Restricciones lineales)
Problemas
•
•
Enteros (vbles. enteras)
[Entera mixta (vbles. enteras y continuas)] PROGRAMACIÓN ENTERA
No Lineales
(Función Objetivo y/o restricciones no lineales)
Ejemplo 1 Un fabricante de mantequilla desea optimizar la producción diaria de su factoría. Fabrica dos tipos de mantequilla (Estándar y Media Sal). Un Kilo de mantequilla Estándar proporciona un beneficio de 10 € y uno de MediaSal de 15 €. Para la producción de mantequillas se usan tres procesos, pasteurización, centrifugado, y batido. La capacidad de pasteurización es de 6horas/día, de centrifugado es de 3horas/día y de batido es de 3.5horas/día.
Los tiempos(en minutos) de proceso por cada kilo de mantequilla se recogen en la siguiente tabla: Pasteurización Centrifugado Batido
Estándar 3 3 3
Media Sal 8 2 4
Modelo Identificación de componentes
Variables asociadas a la actividad:
x1 - Cantidad de mantequilla Media Sal a producir por día: x2 - Cantidad de mantequilla Estándar a producir por día:
Recursos: - Tiempo de pasteurización - Tiempo de centrifugado - Tiempo de batido Objetivo: Maximizar el beneficio
Restricciones: - Limitación de las horas de pasteurización - Limitación de las horas de centrifugado - Limitación de las horas de batido
2. Un primer ejemplo Modelo
Restricciones: Expresión matemática - Limitación de las horas de pasteurización Semántica de la restricción: Consumo Capacidad 1 Kg Estándar consume 3 minutos de pasteurización 2 Kg Estándar consumen 6 minutos(3 2) de pasteurización ..... x1 Kgs Estándar consumen 3x1minutos de pasteurización Idéntico análisis para Kgs de Media Sal: 8x2 Consumo Total = 3x1 + 8x2 minutos Capacidad = 6 horas = 360 minutos Restricción completa: 3
x1 + 8
Misma Unidad
x2 360
- Análisis equivalente para el resto de restricciones
2. Un primer ejemplo Modelo
Función Objetivo: Expresión matemática Objetivo: Maximizar los beneficios: 1 Kg Estándar
Beneficio = 10
2 Kg Estándar
Beneficio = 102 = 20
.............
x1 Kg Estándar
Beneficio = 10x1
Idéntico análisis para Media Sal: 15 x2 Beneficio Total = 10 * x1 + 15 * x2
Expresión: Max 10x1 + 15x2
2. Un primer ejemplo Modelo
2. Un primer ejemplo
Modelo: Variables: x1 : Kilos de mantequilla Estándar
Variables continuas
Expresiones Lineales
x2 : Kilos de mantequilla Media Sal
Función Objetivo:
Max 10 x1 15 x2 sujeto a
Rest. Recurso pasteurización: 3 x1 8 x2
360 (R1)
Rest. Recurso centrifugado:
3 x1 2 x2
180
Rest. Recurso batido:
3 x1 4 x2
Signo de las variables:
x1 , x2
(R2)
210 (R3)
0 - Modelo lineal - Programación lineal continua
x2
Representación de una restricción: 3 x1 8 x2
100
360
90
- Es un semiespacio del espacio de 2
80
- El semiespacio se define por la recta que expresa la restricción con signo de igualdad
70 60 50
SEMIESPACIO NO ADMISIBLE
40
3 x1 8 x2
360
30 20 10
SEMIESPACIO ADMISIBLE 3 x1 8 x2
360
10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
3 x1 8 x2
360
x1
x2
100
Max 10 x1 15 x2
90 80
s.a.
Región de admisibilidad convexa
3 x1 8 x2
60
3 x1 2 x2
180
50
3 x1 4 x2
40
x1 , x2
70
360 (R1) (R2)
210 (R3)
0
30 20 10 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
3 x1 2 x2
180
R2
R3
3 x1 4 x2
210
x1
R1
3 x2 8 x2
360
Max 10 x1 15 x2
x2
s.a.
50
3 x1 8 x2
40
(R1) 360 (R1)
(R2) (R2) (R3) 3 x1 4 x2 210 (R3) 3 x1 2 x2
30 20
Dirección de máxima mejora
x1 , x2
10
10
z 10 x1 15 x2
20
30
40
z=100 z=0
50
60
70
x1
0
180
Óptimo Punto interior
x2
Siguiendo la dirección de máxima mejora desde cualquier punto interior podré ir a otro punto con mejor valor de la F.O.
50 40 30
Por tanto, el Óptimo debe estar en la frontera de la región.
20 10
10
20
30
40
50
60
70
x1
Max 10 x1 15 x2
Max 10 x1 15 x2 x2
50
s.a.
s.a.
V2 V3
40
3 x1 8 x2
3 x1 2 x2
180
3 x1 4 x2
x1 , x2
30
360 (R1) (R2)
210 (R3)
0
3 x1 8 x2 h1 360 3 x1 2 x2 h2
180
3 x1 4 x2 h3
x1 , x2 , h1 , h2 , h3
210 0
Variables de holgura
20
V4
10
m = Número de restricciones V1
V5 10
20
30
40
50
60
n = Número de variables 70
x1
Resultados
Ranging
Original Problem/Answers
Iteraciones – Método Símplex
Dual
Método gráfico
Gráfico
Método gráfico
Ejercicios Para los ejercicios que aparecen a continuación: - Obtenga el modelo matemático del problema - Soluciónelo utilizando una herramienta de software
Ejercicio propuesto 1 • Un estudiante dedica parte de su tiempo al
reparto de propaganda publicitaria. La empresa A le paga 3.5 nuevos soles, por cada impreso repartido y la empresa B , con folletos más grandes, le paga 4.7 nuevos soles por impreso. El estudiante lleva dos bolsas: una para los impresos A, en la que caben 120, y otra para los impresos B, en la que caben 100. Ha calculado que cada dí a es capaz de repartir 150 impresos como máximo. Lo que se pregunta el estudiante es: ¿cuántos impresos habr á de repartir de cada clase para que su beneficio diario sea máximo? “
”
“
”
Ejercicio propuesto 2 Un hipermercado necesita como mínimo 16 cajas de langostino, 5 cajas de nécoras y 20 de percebes. Dos mayoristas, A y B, se ofrecen en proveer al hipermercado de dichos productos, pero sólo venden dicho marisco en contenedores completos. El mayorista A envía en cada contenedor 8 cajas de langostinos, 1 de nécoras y 2 de percebes. Por su parte, B envía en cada contenedor 2, 1 y 7 cajas respectivamente. Cada contenedor que suministra A cuesta 210 000 soles., mientras que los del mayorista B cuestan 300 000 soles cada uno. ¿Cuántos contenedores debe pedir el hipermercado a cada mayorista para satisfacer sus necesidades mínimas con el menor coste posible?
Ejercicio propuesto 3
1. Programación Lineal https://www.youtube.com/watch?v=t7haNTcjMqc 2. Fundamentos para utilizar programación lineal https://www.youtube.com/watch?v=JgTiVn2un_8