Formulando con modelos lineales enteros

Documentos relacionados
Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut

IN Guía de Problemas Resueltos de Geometría de Programación Lineal v1.0

Unidad II. 2.1 Concepto de variable, función, dominio, condominio y recorrido de una función.

IN34A - Optimización

Árboles Filogenéticos. BT7412, CC5702 Bioinformática Diego Arroyuelo. 2 de noviembre de 2010

Universidad del Rosario Economía Matemática II Taller 8 - Kuhn Tucker

May 4, 2012 CAPÍTULO 5: OPTIMIZACIÓN

Programación entera: Ejemplos, resolución gráfica, relajaciones lineales. Investigación Operativa, Grado en Estadística y Empresa, 2011/12

Introducción a Programación Lineal

Aritmética de Enteros

Teoría de grafos y optimización en redes

1.3.- V A L O R A B S O L U T O

CONTINUIDAD DE FUNCIONES. SECCIONES A. Definición de función continua. B. Propiedades de las funciones continuas. C. Ejercicios propuestos.

SESIÓN N 07 III UNIDAD RELACIONES Y FUNCIONES

Espacios Vectoriales

CAPITULO III. Determinación de Rutas de Entregas

INTERVALOS Y SEMIRRECTAS.

Sistemas de Ecuaciones Lineales y Matrices

FUNCIONES EXPONENCIAL Y LOGARÍTMICA

Algebra lineal y conjuntos convexos

Apéndice sobre ecuaciones diferenciales lineales

Espacios Vectoriales

MATEMÁTICAS BÁSICAS. Autoras: Margarita Ospina Pulido Jeanneth Galeano Peñaloza Edición: Rafael Ballestas Rojano

Jesús Getán y Eva Boj. Marzo de 2014

RELACIÓN DE PROBLEMAS DE CLASE DE PROGRAMACIÓN LINEAL ENTERA

Introducción a la Teoría de Grafos

TEMA 6: DIVISIÓN DE POLINOMIOS RAÍCES MATEMÁTICAS 3º ESO

Programación Lineal (PL)

Relaciones. Estructuras Discretas. Relaciones. Relaciones en un Conjunto. Propiedades de Relaciones en A Reflexividad

Semana 09 [1/28] Sucesiones. 29 de abril de Sucesiones

Práctica N 6 Modelos de Programación Lineal Entera

PROGRAMACIÓN LINEAL ENTERA

EJERCICIO DE MAXIMIZACION

Espacios vectoriales

Clase 1: Primalidad. Matemática Discreta - CC3101 Profesor: Pablo Barceló. P. Barceló Matemática Discreta - Cap. 5: Teoría de números 1 / 32

NOTACIÓN O GRANDE. El análisis de algoritmos estima el consumo de recursos de un algoritmo.

Geometría combinatoria de cuadrados mágicos, latinos, sudokus y otras tablas curiosas

Notas del cursos. Basadas en los prontuarios de MATE 3001 y MATE 3023

Semana03[1/17] Funciones. 16 de marzo de Funciones

3. Métodos clásicos de optimización lineal

FUNCIONES REALES DE VARIABLE REAL.

Eje temático: Álgebra y funciones Contenidos: Raíces cuadradas y cúbicas - Racionalización Ecuaciones irracionales. Nivel: 3 Medio

PROGRAMACIÓN DINÁMICA. Idalia Flores

Soluciones básicas factibles y vértices Introducción al método símplex. Investigación Operativa, Grado en Estadística y Empresa, 2011/12

I. Complejidad de Problemas

Límites y continuidad

Tema No. 3 Métodos de Resolución de Modelos de Programación Lineal. El Método Gráfico y Método Simplex Autoevaluación y Ejercicios Propuestos

Complejidad computacional (Análisis de Algoritmos)

Una ecuación puede tener ninguna, una o varias soluciones. Por ejemplo: 5x 9 = 1 es una ecuación con una incógnita con una solución, x = 2

Por ser f continua y R compacto, existen x 0, y 0 en R tales que f(x 0 ) = sup{f(t) : t R} y f(y 0 ) = inf{f(t) : t R}

520142: ALGEBRA y ALGEBRA LINEAL

Profesorado de Nivel Medio y Superior en Biología Matemática - 1º Cuatrimestre Año 2013 FUNCIÓN CUADRÁTICA

entonces las derivadas laterales existen y son iguales. y vale lo mismo. Si existen las derivadas laterales y son iguales, entonces existe f (a)

Breve introducción a la Investigación de Operaciones

4.1. Polinomios y teoría de ecuaciones

ALGEBRA y ALGEBRA LINEAL. Primer Semestre CAPITULO 6. POLINOMIOS DE UNA VARIABLE.

Ecuaciones de primer grado

CAPITULO 1: PERSPECTIVE GENERAL DE LA

Solución de Sistemas de Ecuaciones Diferenciales Lineales

Espacios Vectoriales

Inecuaciones con valor absoluto

Problemas de Transbordo

NOCIONES PRELIMINARES (*) 1

Conjuntos Los conjuntos se emplean en muchas áreas de las matemáticas, de modo que es importante una comprensión de los conjuntos y de su notación.

f: D IR IR x f(x) v. indep. v. dependiente, imagen de x mediante f, y = f(x). A x se le llama antiimagen de y por f, y se denota por x = f -1 (y).

ALGEBRA I, ALGEBRA Y TRIGONOMETRIA , Segundo Semestre CAPITULO 6: POLINOMIOS.

Coordinación de Matemática I (MAT021) 1 er Semestre de 2013 Semana 2: Lunes 18 Viernes 22 de Marzo. Contenidos

UNIDAD 2: ECUACIONES E INECUACIONES. SISTEMAS DE ECUACIONES

Límites y continuidad de funciones reales de variable real

Rentas Ciertas MATEMÁTICA FINANCIERA. Rentas Ciertas: Ejemplo. Rentas Ciertas. Ejemplo (1) C C C C C

Materia: Matemática de Octavo Tema: Raíces de un polinomio. Marco teórico

Ecuaciones Lineales en Dos Variables

Ruta más Corta con una sóla Fuente de Inicio (Single-Source Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE

Clase 4 Funciones polinomiales y racionales

Club GeoGebra Iberoamericano. 9 INECUACIONES 2ª Parte

Álgebra y Trigonometría Clase 2 Ecuaciones, desigualdades y Funciones

El método simplex 1. 1 Forma estándar y cambios en el modelo. 2 Definiciones. 3 Puntos extremos y soluciones factibles básicas. 4 El método simplex.

Programación Lineal. El método simplex

Tema 2.- Formas Cuadráticas.

Tema 2: Teorema de estructura de los grupos abelianos finitamente generados.

Límite de una función

Universidad de Santiago de Chile Facultad de Ciencia Departamento de Matemática y Ciencias de la Computación

Verificación. Taller de Programación

PROYECTO MATEM CURSO PRECÁLCULO UNDÉCIMO AÑO MODALIDAD ANUAL. Guía para el II parcial

LA FORMA TRIGONOMETRICA DE LOS NUMEROS COMPLEJOS Y EL TEOREMA DE MOIVRE. Capítulo 7 Sec. 7.5 y 7.6

Vectores y Matrices. Tema 3: Repaso de Álgebra Lineal Parte I. Contenidos

Descomposición en forma canónica de Jordan (Segunda versión)

GIMNASIO VIRTUAL SAN FRANCISCO JAVIER Valores y Tecnología para la Formación Integral del Ser Humano UNIDAD I FUNCIONES

Continuidad. 5.1 Continuidad en un punto

Tema 3: El Método Simplex. Algoritmo de las Dos Fases.

Universidad Nacional de Ingeniería Facultad de Ciencias. Física Computacional CC063. Algebra Lineal. Prof: J. Solano 2012-I

Clase 8 Matrices Álgebra Lineal

Anillo de polinomios con coeficientes en un cuerpo

Los números enteros Z = {,-3, -2, -1, 0, 1, 2, 3, }

Proceso Selectivo para la XXII IMC, Bulgaria

APUNTE: Introducción a la Programación Lineal

2. Continuidad y derivabilidad. Aplicaciones

Integrales múltiples

SISTEMAS DE ECUACIONES LINEALES. Método de reducción o de Gauss. 1º DE BACHILLERATO DPTO DE MATEMÁTICAS COLEGIO MARAVILLAS AUTORA: Teresa González.

NÚMEROS COMPLEJOS: C

Transcripción:

Universidad de Chile 19 de marzo de 2012

Contenidos 1 Forma de un problema Lineal Entero 2 Modelando con variables binarias 3 Tipos de Problemas

Forma General de un MILP Problema de optimización lineal entero (MILP) máx cx + hy (1a) s.t. Ax + Gy b (1b) x Z n, y R p (1c) x, y son las variables de decisión del problema. (1) se dice mixto por que tiene variables enteras y continuas. (1a) es la función objetivo (lineal en las variables). (1b) son las restricciones del dominio (lineales en las variables). (1c) el dominio general de las variables (R n y/o Z n ). Los S := {x, y} que satisfacen (1b) y (1c) es el conjunto factible. Si este conjunto es vacío, el problema se dice infactible. Una instancia de (1) se especifica por los datos (c, h, A, G, b). Un (x o, y o ) S es un punto factible. (x o, y o ) S es óptimo si cx o + hy o cx + hy (x, y) S. (1) es equivalente a un problema de minimización, por que?

Algunas observaciones sobre MILP Algunas observaciones: Restricciones de igualdad, menor o igual, y mayor o igual, calzan la forma general de (1). Como? Una instancia factible de (1) puede no tener solución óptima, por que? En este caso la instancia se dice no acotada. Resolver una instancia de (1) es determinar si ésta es: Infactible. No acotada. Óptima. En algunos casos (1c) se escribe como x {0, 1} n, y R p, en estos casos (1) se dice binario (binary-milp).

Modelos lineales continuos Modelos lineales continuos: Modelaremos las siguientes situaciones usando tres variables positivas y continuas x, y, z. Por cada unidad de x deben haber al menos 5 unidades de y. x 1 5 y. Por cada 7 unidades de x deben haber 9 unidades de y. 1 7 x = 1 9 y. Un puerto puede cargar 11 unidades de x, o 45 de y o 30 de z por semana. Qué combinaciones de x, y, z puede cargar en 10 semanas? 1 11 x + 1 45 y + 1 30 z 10. Componente x debe ser al menos un 33 % de los componentes x, y, z x 0,33(x + y + z) 0,67x 0,33(y + z) Proceso I transforma una unidad de x en 24.5 unidades de y y 73.1 unidades de z y = 24,5x, z = 73,1x. Si x, y, z tienen 30,90,5 % de L, que mezclas de x, y, z tienen al menos 20 % de L? 0,3x + 0,9y + 0,05z 0,2(x + y + z).

Knapsack, asignación y matching, covering, packing y partitioning Variables binarias para alternativas Situaciones donde uno u otro evento deben ocurrir. Para este tipo de dicotomías { se usa: 1 evento ocurre x = 0 evento no ocurre Problema de la Mochila (Knapsack) Tenemos n posibles proyectos, cada uno requiere una inversión a j y un retorno c j, y tenemos una restricción presupuestaria de b. Los proyectos deben realizarse completamente para obtener el beneficio. Qué proyectos deben llevarse a cabo? { n máx c i x i : i=1 } n x i a i b, x {0, 1} n i=1 Qué tan distinta es la solución si x es continua?

Knapsack, asignación y matching, covering, packing y partitioning Variables binarias para alternativas Problema de asignación (Matching bi-partito) Tenemos m trabajos y n personas a las cuales asignarlos (m n). Cada trabajo debe ser asignado a una persona, y cada persona puede trabajar a lo más en un trabajo. El costo de asignar trabajo j al trabajador i es c ij. Queremos buscar la asignación de todos los trabajos a costo mínimo. Defina x ij {0, 1} representando asociar trabajo j al trabajador i. Que restricciones son necesarias? Cuál es la cardinalidad de los puntos factibles? Matching perfecto Tenemos 2n trabajadores, y debemos formar n parejas de trabajo maximizando el beneficio global (de la empresa).

Knapsack, asignación y matching, covering, packing y partitioning Variables binarias para alternativas Set Covering, Set Packing, Set Partitioning Consideremos un conjunto base M = {1,...,m}, y poseemos una serie de sub-conjuntos {M j } n j=1, M j M. Decimos que J {1,...,n} covering M si M i = M. Decimos que J {1,...,n} es un packing en M si M i M j = i, j J. Decimos que J {1,...,n} es una partición en M si es un covering y un packing a la vez. Cómo describimos todos los J que son un covering, packing, partition en M? Ejemplo: Consideremos el problema de colocar estaciones de bomberos en una ciudad, y queremos asegurar un tiempo de respuesta de no más de 10 minutos? y si queremos K cobertura? i J

Otras Relaciones Modelando otras relaciones Ya modelamos como a lo más un evento puede ocurrir: n x i 1. i=1 Si dos eventos deben ocurrir en forma simultanea o no ocurrir: x i x j = 0. Si un evento es necesario para que otro ocurra: x i x j. x ocurre si y sólo si y y z ocurren: x y, x z, x + 1 y + z. x ocurre si y sólo si y o z ocurren: x y, x z, x y + z. Consideremos una actividad que puede desarrollarse dentro de niveles 0 y u, pero sólo si el evento x ocurre: 0 y, y ux.

Otras Relaciones Modelando otras relaciones Problema de ubicación de instalaciones Consideremos I = {1,...,m} un conjunto de clientes, y un conjunto de posibles locación de instalaciones N = {1,...,n}. Abrir instalación j N cuesta c j. Atender al cliente i I desde j N cuesta h ij. Cómo modelamos el problema? Que pasa si hay capacidades por instalación {b j : j N} y demanda {d i : i I}? Y si además hay costo variable {v ij : i I, j N} dependiendo de la demanda?

Otras Relaciones Modelando otras relaciones Flujo en redes con costo fijo Consideremos una red o grafo G = (V, E), donde V = {1,...,n} se llaman nodos y E V V se llaman arcos o aristas. Si e = (u, v) E entonces existe una ruta directa para ir de u a v (pero no necesariamente de v a u). Asociado a cada nodo v V existe una demanda d v. Un nodo v es una fuente, punto de tránsito o punto de demanda dependiendo si d v es negativo, cero o positivo respectivamente. Asumimos que la demanda neta es cero ( d v = 0). v V Cada arco e E tiene una capacidad u e 0 y un costo de transporte unitario h e. Cómo definiría un flujo factible para la red? Cómo modelaría la existencia de costos fijos c por uso de rutas (arcos) y/o nodos?

Otras Relaciones Modelando otras relaciones Problema del Vendedor Viajero Consideramos un grafo G = (V, E). Los nodos representan ciudades y los arcos e = (u, v) E la posibilidad de viaje directo entre las ciudades u y v. Cada arco e E tiene asociado un costo c e. El objetivo es encontrar un tour que, partiendo de la ciudad 1, visita todas las ciudades exactamente una vez volviendo a la ciudad de partida, a costo mínimo. Usando variables por arco, formule el problema. Cuántas restricciones necesitamos? Cuál es el número mínimo necesario? Hay formulaciones más compactas?

Funciones no-lineales y restricciones disyuntivas Funciones no-lineales y restricciones disyuntivas Qué pasa si la función objetivo no es lineal? Consideraremos funciones objetivos del tipo f(y 1,..., y N ) = f i (y i ) no lineal. i N f se dice separable. Cada f i es no lineal. Basta considerar f i lineal por trazo? por que? Qué pasa si f no es separable? Qué sucede si en vez de requerir que todas las restricciones se cumplan, nos basta que se cumplan k de ellas? Por qué podría ser esto interesante? Este tipo de relaciones se llaman disyuntivas.

Funciones no-lineales y restricciones disyuntivas Funciones lineales por trazo Asumamos que f es lineal por trazo y continua: f puede ser descrita por los puntos {a i, f(a i )} n i=1 donde a i a i+1. Note que todo a 1 y a r puede escribirse como y = n n λ i a i con λ i = 1 y λ 0. i=1 i=1 Dado y, la representación en términos de λ no es única. Si embargo, si a i y a i+1, podemos escoger λ tal que λ j = 0 j {i, i + 1}. Así, y = λ i a i +λ i+1 a i+1 y f(y) = λ i f(a i )+λ i+1 f(a i+1 ) Bajo este supuesto, se tendrá f(y) = n λ i f(a i ). Ahora, definiendo el evento y esta en el intervalo [a i, a i+1 ], modele las condiciones anteriores utilizando variables binarias. Si minimizamos f lineal por trozo convexa, las variables binarias anteriores no son necesarias. Qué sucede si f es discontinua? Hay otras formulaciones? Son mejores? En qué sentido? Podemos, en general, usar menos que n 1 variables binarias? i=1

Funciones no-lineales y restricciones disyuntivas Restricciones Disyuntivas Consideremos la siguiente situación: queremos definir y = mín{u 1, u 2 }. Podemos modelar esto como y u 1, y u 2 y la restricción disyuntiva y u 1 o y u 2. En general queremos describir un punto satisfaciendo al menos k de m restricciones, en el ejemplo m = 2, k = 1. Supongamos P i := {y R p + : A i y b i, y d} para i = 1,...,m. Note que P i {y R p : 0 y d} = Y. Implica que existe w i tal que A i y b i + w i y Y. Usando el evento y P i, modele la restricción disyuntiva general. Para el caso k = 1 existe una formulación alternativa: Consideramos m m y i = y, x i = 1. i=1 Cuál formulación es mejor? i=1 Qué pasa si queremos modelar que a lo más k de m conjuntos de restricciones se satisfacen?

Funciones no-lineales y restricciones disyuntivas Restricciones Disyuntivas Problema de Secuenciamiento Considere que tenemos n trabajos y m máquinas. Cada trabajo debe pasar por cada máquina. Para cada trabajo, el orden en que pasa por cada máquina es pre-establecido, es decir, el trabajo j debe partir por la máquina j(1) y terminar en la máquina j(m). Cada trabajo j demora un tiempo p jk en la máquina k. Cada máquina puede procesar un solo trabajo, y una vez comenzado un trabajo, debe finalizarlo. El objetivo es minimizar la suma de los tiempos de finalización de los trabajos. Sea t jk el tiempo de término del trabajo j en la máquina k. t j,j(r+1) t j,j(r) + p j,j(r+1) j, r = 1,..., m 1. Dada una máquina k y dos trabajos i, j, siempre es cierto que i se procesa antes que j o j se procesa antes que i. Definimos x ijk = 1 si lo primero es cierto, y cero si no. Necesitamos m ( ( n 2) variables binarias O(m n 2) ) restricciones. Modelo alternativo para el TSP. Cómo? Difícil de resolver para problemas de interés práctico.

Son todos los problemas iguales? Dificultad de los Problemas La dificultad de un problema está relacionada con la estructura del problema y con el tamaño de la instancia. Se suele estudiar el número de operaciones aritméticas elementales (comparaciones, sumas, multiplicaciones) en función del tamaño de la instancia que un algoritmo realiza para resolver un problema. Algoritmo Polinomial El número de operaciones está acotado por un polinomio en el tamaño del problema. Estos algoritmos se consideran eficientes. Algoritmo Exponencial El número de operaciones no está acotado por un polinomio. Estos algoritmos se consideran ineficientes.

Son todos los problemas iguales? Dificultad de los Problemas P Problemas en los cuales existe un algoritmo polinomial que los resuelve (problemas fáciles). NP (non-deterministic polinomial) Problemas en los cuales existe un algoritmo no determinístico que lo resuelve en tiempo polinomial. Entre los problemas NP existe una subclase, los problemas NP-completos, que son los difíciles aún no resueltos eficientemente.