Programación entera y optimización combinatoria Mayo 2007 Módulo 2:

Slides:



Advertisements
Presentaciones similares
Programación entera En muchos problemas reales las variables sólo pueden tomar valores enteros Ejemplos: decisiones sobre inversiones, compras, arranques,
Advertisements

Programación entera En muchos problemas reales las variables sólo pueden tomar valores enteros Ejemplos: decisiones sobre inversiones, compras, arranques,
Diseño y análisis de algoritmos
EC. DIFERENCIAL Def: Se llama ecuación diferencial a una relación que contiene una o varias derivadas de una función no especificada “y” con respecto.
Investigación de Operaciones
Grupo 4 Matías Melgar Pablo Carbonell
Tema 3: Introducción a la programación lineal
Expresión de un problema de programación lineal Aplicaciones de la programación lineal Soluciones de un problema lineal Resolución gráfica de un problema.
Sistemas de Ecuaciones Diferenciales Lineales
Instituto tecnológico de Minatitlán
Investigación Operativa
MATRICES Concepto Se llama matriz de orden m x n a todo conjunto de elementos aij dispuestos en m líneas horizontales (filas) y n verticales (columnas)
2- SIMPLEX.
Complejidad Problemas NP-Completos
El algoritmo primal-dual
Programación Lineal Entera Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería – Maestría/Doctorado.
Programación entera y grafos
Algoritmo Simplex Dual Como sabemos, el método simplex es un algoritmo iterativo que iniciando en una solución básica factible pero no óptima, genera soluciones.
Biograma Introducir datos en una matriz. Elegir método para máximos y mínimos. Calcular los máximos y mínimos observados. Límites.
Universidad de los Andes-CODENSA
Optimización de Procesos.
Matemáticas III Tema I FUNCIONES
Método de Gauss-Seidel
Resolución de Problemas Método Simplex
Optimización Combinatoria usando Algoritmos Evolucionistas Problemas de Optimización. Idea: Encontrar una solución "factible" y "óptima" de acuerdo a algún.
EL PODER DE SOLVER.
Resolución de Problemas Método Simplex
Programación Lineal Entera Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería – Maestría/Doctorado.
Programación Lineal Entera Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería – Maestría/Doctorado.
ALGORITMOS APROXIMADOS
CARACTERIZACIÓN DEL CONJUNTO DE SOLUCIONES EN LOS PROBLEMAS DE P.L.
DEFINICIONES Sea (P) el siguiente problema de programación lineal:
Diseño y análisis de algoritmos
Sistema de Ecuaciones Lineales Forma Matricial
Programación entera y optimización combinatoria Mayo 2007 Módulo 2:
Variables acotadas Sea: (P) Min c T x / Ax = b x  0, x  u donde c  R n, b  R m y A es una matriz de rango completo mxn con n>m. En una iteración cualquiera.
Programación Lineal Entera Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería – Maestría/Doctorado.
Backtracking 1. Método general. 2. Análisis de tiempos de ejecución.
3- PROGRAMACION LINEAL PARAMETRICA
Programación lineal La programación lineal es una técnica matemática relativamente reciente, del siglo XX, que consiste en una serie de métodos y procedimientos.
5. El Método Simplex En lo que sigue consideremos un problema de programación lineal en su forma estándar ³ =
Modelos Cuantitativos
Programación Matemática
Sabemos reconocerlas, y calcularlas como soluciones de sistemas de ecuaciones, o de desigualdades Buscamos métodos de cálculo generales y eficientes Problemas.
Dualidad Multiplicadores Dualidad Aplicación práctica:
REGLA DE RUFFINI DÍA 11 * 1º BAD CS
TEMA 5: El problema del flujo con costo mínimo
UNIDAD 4 Clase 6.3 Tema: Sistema de Ecuaciones Lineales
EXPRESIONES ALGEBRAICAS
Repaso Programación Lineal Modelo Giepetto Variables de Decisión x 1 = número de soldados producidos cada semana x 2 = número de trenes producidos cada.
Juguemos a Economistas Ordenamos y mejoramos la información: Juguemos a Economistas Programación Lineal.
Programación Lineal Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería – Maestría/Doctorado.
Solver complemento de excel
MATRICES.
@ Angel Prieto BenitoApuntes de Matemáticas 3º ESO1 TEMA 4 * 3º ESO Polinomios.
Modelos de Minimización
Prof. Juan José Bravo B., M.Sc. ©
EII405 Investigación de operaciones
Método Simplex Es un procedimiento sistemático y eficiente para encontrar y probar soluciones situadas en los puntos extremos de la región de soluciones.
 E Expresión de un problema de programación lineal  A Aplicaciones de la programación lineal  S Soluciones de un problema de programación lineal.
6. Sistemas de ecuaciones diferenciales lineales
Unidad IV. Métodos de optimización con restricciones
BIENVENIDOS A ESTE VIDEO TUTORIAL DE LA MATERIA DE INVESTIGACION DE OPERACIONES… … ACONTINUACION EL TEMA QUE TRATAREMOS EN ESTE VIDEO TUTORIAL ES EL DE.
Método Simplex Es un procedimiento sistemático y eficiente para encontrar y probar soluciones situadas en los puntos extremos de la región de soluciones.
Programación Lineal Método Simplex.
TEMA 2 INTEGRAL DE RIEMANN.
Problema Dual INVESTIGACIÓN DE OPERACIONES. Problema Dual.
1 Técnicas de Optimización en Modelos Organizacionales (PS-3161) Tema N° 4: Solución Gráfica:Casos Especiales Prof. Orestes G. Manzanilla Salazar Correo:
Programación lineal entera (PLE)
Transcripción de la presentación:

Programación entera y optimización combinatoria Mayo 2007 Módulo 2:

Métodos de corte Sea el problema de optimización: (ILP) Min c’x / Ax=b, x  0, x entero (A, c y b enteros) ¿Sirve tomar la solución real de (ILP) y luego redondear la solución al entero más próximo?

Sea (LP) una relajación de (ILP): (LP) Min c’x / Ax=b, x  0 (A, c y b enteros) Se cumple que: óptimo (ILP)  óptimo (LP) Ideas básicas en los métodos de corte: ir agregando a LP restricciones, de a una por vez, de forma de excluir el óptimo no entero del problema relajado estas nuevas restricciones no deben excluir ningún punto entero de la región factible

Def: plano de corte es una restricción lineal tal que no excluye ningún punto entero del conjunto de soluciones factibles Algoritmos de corte: –Gomory (método fraccional dual) –Método primal de corte

Cortes de Gomory Def: parte entera de un número real y,  y , es el entero más grande q / q  y Ejemplos:  2.7  = 2  -1.3  = -2  0  = 0 Def: parte fraccionaria f= y-  y  del número y. Nota: 0  f  1

(1)  f ij x j  f i0 - Corte de Gomory Teo: Si (1) es agregado al final del ‘tableau’ óptimo del (LP), ninguna solución entera es eliminada. El nuevo tableau es básico, primal no factible (si f i0  0) y dual factible

Algoritmo fraccional dual: Resolver LP, relejación entera de ILP. Sea x* solución óptima de LP sbf=‘si’ Mientras x* no entera y sbf =‘si’ hacer: –elegir una fila ‘i’ – agregar un corte de Gomory generado por ‘i’ –aplicar el simplex dual –si el dual es no acotado, entonces sbf=no –resolver el nuevo problema. Sea x*=nuevo óptimo –fin mientras

EJEMPLOS

Finitud del algorimo Def: orden lexicográfico: un vector v  R n, v  0, es lexicográfico >0 (o lex-positivo) si su primera componente no nula es positiva Def: lex >: un vector v  R n se dice lex > que otro vector u  R n, v lex> u, si el vector v-u es lex-positivo es lex-positivo y 0 lex >

La prueba se basa en considerar el algoritmo simplex dual con una regla de pivoteo que en caso de empate seleccione la columna de acuerdo al orden lexicográfico positivo. Dado un problema (ILP) se resuelve la relajación LP por simplex, se puede asegurar que el cuadro óptimo final tiene todas sus columnas lex-positivas o se lo puede transformar en uno de esta forma (se considera como primer fila la de los costos reducidos). Consideremos un problema LP a los que se le han agregado sucesivamente n cortes al final de cada cuadro óptimo del simplex.

Sea y 0 l la primera columna del cuadro que corresponde a los términos independientes, cuyo primer elemento es - el valor objetivo La sucesión de valores y 0 l con l=1..n, es lex- decreciente y acotada, Si y 00 l =  y 00 l  +f 00 l con f 00 l >0, entonces el próximo corte a introducir es el correspondiente a la fila 0: - f 00 l =-  f 0j l x j + s Supongamos se elige la columna p para pivotear: y 00 l+1 = y 00 l - y 0p l *(f 00 l /f 0p l ) si el l-simo cuadro era óptimo, y 0p l  0  p y además y 0p l  f 0p l => y 00 l+1  y 00 l - f 00 l =  y 00 l 

Conclusión: la convergencia se alcanza en un número finito de pasos.

Evaluación Por ser un algoritmo dual, no produce una solución primal factible hasta alcanzar el óptimo Puede ser problemático decidir cuando un número es entero o no, ya que los errores se acumulan

Gomory para MIP El algoritmo de Gomory se extiende directamente ara MIP En MIP no es razonable utilizar la fila de la función objetivo para producir cortes ya que este puede ser no entero

Sean P={x  R n, Ax  b} y S=P  Z n Sean –IP=Max {cx / x  S} y –CIP=Max {cx/ x  conv(S)} Teo: Dado P={x  R n, Ax  b}, y S=P  Z n y c  R n se cumple: –El valor objetivo de IP esta acotado inferiormente sii el valor objetivo de CIP esta acotado inferiormente –Si CIP tiene un valor óptimo acotado ==> tiene solución´óptima en un extremo de conv(S) y es solución óptima de IP –Si x0 es una solución óptima de IP ==>x0 es solución óptima de CIP

Método primal de corte Sean S={x  Z n, Ax  b}, P={x  R n, Ax  b} y conv(S) la envoltura convexa de P. Nota: conv(S)  P Sea x1 una solución entera no óptima de conv(S), o sea un punto extremo de conv(S) Idea básica: usar cortes para habilitar el pivoteo en un punto extremo adyacente de conv(S) de forma que si el objetivo era maximizar, el objetivo crezca Problema: cuantos cortes son necesarios para encontrar un punto extremo de conv(S)?

Partimos de un cuadro de simplex con una sbf (solución básica factible) entera Sea B=conjunto de índices de variables básicas y NB el de las no básicas x i es entera  i  B x i +  y ij x j =y i0, j  NB supongamos existe una columna k / y 0k <0 (cuadro no óptimo) y sea r la fila pivote/: y r0 / y rk =min(y i0 / y ik ) i si y rk =1, la próxima solución básica también es entera

Si y rk  1, agregamos el corte: x k +   y rj / y rk  x j   y r0 / y rk  j  NB\k

Se encuentra una solución óptima cuando: solución entera, primal y dual factible Algoritmo primal de cortes: Comenzar con una solución entera, primal factible La solución es dual factible?- Si : fin Corte y pivoteo: agregar un corte de la forma anterior, pivotear manteniendo las condiciones de solución entera primal factible y volver al punto anterior