Subido por Jhony Mendez

01A - PROGRAMACION ENTERA

Anuncio
17/01/2020
PROGRAMACION ENTERA
INVESTIGACION DE OPERACIONES 2
Programación Entera
DEFINICION Y APLICACIONES
TIPOS DE PROGRAMAS ENTEROS
Logro de sesión:
Al finalizar la sesión, el estudiante modela y resuelve
problemas de programación lineal que incluyen variables
enteras, mediante la aplicación del algoritmo de
ramificación y acotamiento, y/o mediante la inclusión de
funciones necesarias en el software correspondiente,
alcanzando la solución óptima.
PROGRAMACION ENTERA
APLICACIONES
ALGORITMO DE RAMIFICACION
Y ACOTAMIENTO
PROGRAMACION ENTERA
DEFINICION Y APLICACIONES
DEFINICION
SOLUCION POR REDONDEO O
TRUNCAMIENTO
Un programa lineal entero es aquel en que algunas o
todas las variables están restringidas a tener valores
enteros (o discretos), o incluso están más restringidas
tomando exclusivamente los valores 0 ó 1
El empleo de variables enteras hace más complejo el
problema de programación lineal, debido a la ausencia de
continuidad.
DEFINICION Y APLICACIONES
DEFINICION
APLICACIONES
•
•
•
•
•
•
Cajeros a asignar en turnos de atención
Camiones a comprar para reparto de mercadería
Escritorios a elaborar para surtir un pedido
Computadoras a reparar en una semana
Acciones a comprar con propósito de inversión
Tiraje de libros
1
17/01/2020
PROGRAMACION ENTERA
PROGRAMACION ENTERA
TIPOS DE PROGRAMAS ENTEROS
PROGRAMA LINEAL ENTERO PURO (PE)
Modelo en el cual todas las variables de decisión tienen que adoptar valores enteros.
DEFINICION Y APLICACIONES
TIPOS DE PROGRAMAS ENTEROS
PROGRAMA LINEAL ENTERO MIXTO (PEM)
Modelo en el cual solamente algunas de las variables de decisión están restringidas
a valores enteros, las demás pueden asumir cualquier número no negativo.
SOLUCION POR REDONDEO O
TRUNCAMIENTO
ALGORITMO DE RAMIFICACION
Y ACOTAMIENTO
PROGRAMACION ENTERA
PROGRAMA LINEAL ENTERO BINARIO (PEB)
Modelo en el cual las variables de decisión están restringidas a los valores 0 ó 1.
PROGRAMACION ENTERA
SOLUCION POR REDONDEO O TRUNCAMIENTO
DEFINICION Y APLICACIONES
PRIMERA APROXIMACION
La solución de cualquier programa puede obtenerse ignorando el
requerimiento de variables enteras y resolviendo el programa
lineal resultante. Si la solución óptima al programa lineal fuese
entera, entonces esta solución es también la solución óptima al
programa entero original.
TIPOS DE PROGRAMAS ENTEROS
SOLUCION POR REDONDEO O
TRUNCAMIENTO
ALGORITMO DE RAMIFICACION
Y ACOTAMIENTO
SEGUNDA APROXIMACION
Se pueden redondear la primera aproximación a los enteros
factibles más próximos. Este procedimiento se emplea
especialmente cuando la primera aproximación involucra
números muy grandes, pero puede ser inexacta cuando los
números son pequeños (como se observará gráficamente en el
siguiente ejemplo).
2
17/01/2020
PROGRAMACION ENTERA
PROGRAMACION ENTERA
EJEMPLO ILUSTRATIVO Aquí se aprecia que la solución óptima no se obtiene necesariamente por
redondeo o por truncamiento.
Un fabricante de muebles tiene 6 unidades de madera y 28 horas disponibles, durante las cuales
fabricará estantes decorativos. Estima que el modelo A requiere 2 unidades de madera y 7 horas de
tiempo disponible, mientras que el modelo B requiere 1 unidad de madera y 8 horas. Los precios de
los estantes son $120 y $80, respectivamente. ¿Cuántos estantes de cada modelo debe fabricar con
estos recursos si desea maximizar sus ingresos?
Declaración de variables:
A: # estantes del modelo A
B: # estantes del modelo B
Función objetivo:
Max Z = 120A + 80B
Restricciones:
2A + 1B ≤ 6
7A + 8B ≤ 28
A, B ≥ 0
B
Si las variables pudieran
adoptar valores continuos
6
5
4
3
2
1
1
PROGRAMACION ENTERA
Declaración de variables:
A: # estantes del modelo A
B: # estantes del modelo B
Función objetivo:
Max Z = 120A + 80B
Restricciones:
2A + 1B ≤ 6
7A + 8B ≤ 28
A, B ≥ 0, y enteros
Solución inicial:
La solución anterior deja de ser factible
Declaración de variables:
A: # estantes del modelo A
B: # estantes del modelo B
Función objetivo:
Max Z = 120A + 80B
Restricciones:
2A + 1B ≤ 6
7A + 8B ≤ 28
A, B ≥ 0
Solución inicial:
A = 2.22; B = 1.56; Z = $391.11
2
3
4
5
A
PROGRAMACION ENTERA
B
Reducción de la región
factible considerando
solamente enteros
6
5
4
3
2
1
1
2
3
4
5
A
Declaración de variables:
A: # estantes del modelo A
B: # estantes del modelo B
Función objetivo:
Max Z = 120A + 80B
Restricciones:
2A + 1B ≤ 6
7A + 8B ≤ 28
A, B ≥ 0, y enteros
Solución inicial:
A = 2.22; B = 1.56; Z = $391.11
Solución por redondeo:
A = 2; B = 2; No es una solución factible
B
El punto solución se
encuentra fuera de la malla
factible
6
5
4
3
2
1
1
2
3
4
5
A
3
17/01/2020
PROGRAMACION ENTERA
Declaración de variables:
A: # estantes del modelo A
B: # estantes del modelo B
Función objetivo:
Max Z = 120A + 80B
Restricciones:
2A + 1B ≤ 6
7A + 8B ≤ 28
A, B ≥ 0, y enteros
Solución inicial:
A = 2.22; B = 1.56; Z = $391.11
Solución por redondeo:
A = 2; B = 2; No es una solución factible
Solución por truncamiento:
A = 2; B = 1; Z=$320
PROGRAMACION ENTERA
B
Punto factible existente
pero no lleva a Z al máximo
valor
6
5
4
3
2
1
1
2
3
4
5
A
PROGRAMACION ENTERA
Declaración de variables:
A: # estantes del modelo A
B: # estantes del modelo B
Función objetivo:
Max Z = 120A + 80B
Restricciones:
2A + 1B ≤ 6
7A + 8B ≤ 28
A, B ≥ 0, y enteros
Solución inicial:
A = 2.22; B = 1.56; Z = $391.11
Solución por redondeo:
A = 2; B = 2; No es una solución factible
Solución por truncamiento:
A = 2; B = 1; Z=$320
Solución óptima:
A = 3; B = 0; Z=$360
B
Punto óptimo encontrado,
considerando a las variables
enteras
6
5
4
3
2
1
1
2
3
4
5
A
PROGRAMACION ENTERA
ALGORITMO DE RAMIFICACION Y ACOTAMIENTO
DEFINICION Y APLICACIONES
RAMIFICACION
Proceso de generación de nuevos programas a partir de la
solución de un programa para el cual se tiene por lo menos una
variable con valores decimales.
TIPOS DE PROGRAMAS ENTEROS
SOLUCION POR REDONDEO O
TRUNCAMIENTO
ACOTAMIENTO
Acción de establecer como límite el valor de la función objetivo
de una solución entera hallada mediante ramificación para
descartar a otras posibles soluciones.
ALGORITMO DE RAMIFICACION
Y ACOTAMIENTO
4
17/01/2020
PROGRAMACION ENTERA
PROGRAMACION ENTERA
ALGORITMO DE RAMIFICACION Y ACOTAMIENTO
EJEMPLO Representación de ramificación en búsqueda de una solución entera.
Max Z = 10x1 + x2
Sujeto a:
2x1+ 5x2 < 11
ALGORITMO DE RAMIFICACION Y ACOTAMIENTO
EJEMPLO Representación de ramificación en búsqueda de una solución entera.
Max Z = 10x1 + x2
Sujeto a:
2x1+ 5x2 < 11
x1 < 5
(1)
x1 y x2 > 0, y enteros
Z* = 55
1
1
x1 = 5.5
x2 = 0
x1 = 5.5
x2 = 0
PROGRAMACION ENTERA
Z* = 50.2
2
x1 y x2 > 0, y enteros
Z* = 55
x1 = 5
x2 = 0.2
PROGRAMACION ENTERA
ALGORITMO DE RAMIFICACION Y ACOTAMIENTO
EJEMPLO Representación de ramificación en búsqueda de una solución entera.
Max Z = 10x1 + x2
Sujeto a:
2x1+ 5x2 < 11
x1 > 6
(2)
ALGORITMO DE RAMIFICACION Y ACOTAMIENTO
EJEMPLO Representación de ramificación en búsqueda de una solución entera.
Z* = 50
Max Z = 10x1 + x2
(3)
Z*
= 50.2
2
x1 y x2 > 0, y enteros
Z* = 55
x1 = 5
x2 = 0.2
1
x1 = 5.5
x2 = 0
Sujeto a:
2x1+ 5x2 < 11
x1 < 5
x2 < 0
x1 y x2 > 0, y enteros
4
(4)
Z*
= 50.2
x1 = 5
x2 = 0
2
Z* = 55
x1 = 5
x2 = 0.2
1
No factible
3
x1 = 5.5
x2 = 0
No factible
3
5
17/01/2020
PROGRAMACION ENTERA
PROGRAMACION ENTERA
ALGORITMO DE RAMIFICACION Y ACOTAMIENTO
EJEMPLO Representación de ramificación en búsqueda de una solución entera.
Z* = 50
Max Z = 10x1 + x2
Sujeto a:
2x1+ 5x2 < 11
x1 < 5
x2 > 1
x1 y x2 > 0, y enteros
4
(5)
Z* = 50.2
x1 = 5
x2 = 0
DEFINICION Y APLICACIONES
2
Z* = 55
Z* = 31
No factible
x1 = 3
x2 = 1
5
1
x1 = 5.5
x2 = 0
TIPOS DE PROGRAMAS ENTEROS
x1 = 5
x2 = 0.2
3
SOLUCION POR REDONDEO O
TRUNCAMIENTO
ALGORITMO DE RAMIFICACION
Y ACOTAMIENTO
6
Descargar