optimizacion combinatoria, exactos, aprox, heuristica metaheuristica
TRANSCRIPT
![Page 1: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/1.jpg)
1
Seminario:
Elementos de Metaheurísticas edición segundo semestre 2004
Equipo docente: Héctor Cancela, Graciela Ferreira, Pablo Rodríguez Bocca
Departamento de Investigación Operativa
INCO-Fac.Ingeniería, UdelaR
Montevideo, URUGUAY
![Page 2: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/2.jpg)
2
Motivación
Existencia de sistemas de información y repositorios de datos en empresas permite realizar toma de decisiones en base a esta información.
Investigación de Operaciones: empleo de la metodología científica en la búsqueda de soluciones óptimas y como apoyo a la toma de decisiones a nivel operativo y gerencial.
Modelos y algoritmos de optimización: generación de soluciones de alta calidad para problemas de planificación de operaciones de la empresa.
![Page 3: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/3.jpg)
3
Objetivos del curso
Presentar las técnicas metaheurísticas -
herramienta para resolución aproximada de
problemas de optimización combinatoria de alta
complejidad, que no pueden ser resueltos en forma
exacta en tiempos razonables.
![Page 4: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/4.jpg)
4
Objetivos del curso (2)
Enfoque del curso:
Aspectos conceptuales de optimización combinatoria y y
metaheurísticas.
Casos de estudio: metaheurísticas y aplicaciones.
Implementación.
Aspectos que el curso NO cubre:
Métodos exactos para optimización combinatoria.
Estudio teórico del comportamiento de las MH.
Nociones básicas de optimización y programación
matemática.
![Page 5: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/5.jpg)
5
Metodología
Estructura de seminario:
Parte inicial a cargo de los docentes, dedicada a una
cobertura breve de los elementos conceptuales.
Seminario a cargo de los estudiantes, y orientado y
moderado por los docentes, destinado a la presentación
y discusión de metaheurísticas y aplicaciones.
Etapa de implementación y entrega de resultados.
Presentaciones finales de resultados obtenidos.
Asistencia obligatoria.
![Page 6: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/6.jpg)
6
Cupo
Cupo máximo: 20 estudiantes.
Cupo mínimo: 10 estudiantes.
Selección en base a:
Asistencia primeras tres clases.
Sorteo entre los asistentes a estas clases.
Fecha prevista para la selección: 12 agosto.
![Page 7: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/7.jpg)
7
Evaluación
Cuatro instancias obligatorias:
i) presentación oral de aplicaciones (grupos 2 estudiantes):
Cada grupo presentará oralmente un caso de estudio, y preparará comentarios y preguntas para dos adicionales.
ii) implementación de una heurística
iii) presentación oral de los resultados
iv) informe escrito final (individual):
a) descripción de la implementación y resultados (máx: 10 carillas);
b) síntesis de comprensión de cada estudiante de presentaciones de otros grupos (máximo una carilla por presentación).
Presentaciones e informe escrito eliminatorios.
![Page 8: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/8.jpg)
8
Bibliografía - libros
Encyclopedia of Operations Research and Management Science. Gass, Saul I.;
Harris, Carl M., eds. Kluwer, 1996. ISBN 0-7923-9590-5
Meta-heuristics: advances and trends in local search paradigms for optimization.
Stefan Voss, Silvano Martello, Ibrahim H. Osman and Catherine Roucairol
(eds.). Kluwer Academic Publishers, 1999. ISBN: 0-7923-8369-9
Essays and surveys in metaheuristics. C.C. Ribeiro, P. Hansen. Kluwer, 2001
Genetic Algorithms in search, optimization, and machine learning. David E.
Goldberg. Addison-Wesley, 1989. ISBN 0201157675.
Meta-heuristics : theory and applications. Osman, Ibrahim H.; Kelly, James P.
eds.. Kluwer, 1996. ISBN: 0-792397-002
Facts, conjectures, and improvements for simulated annealing. Salamon, Peter;
Sibani, Paolo; Frost, Richard. Siam, 2002. ISBN: 0898715083
![Page 9: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/9.jpg)
9
Bibliografía - artículosHeuristics from nature for hard combinatorial optimization problems. A. Colorni and M.
Dorigo and F. Maffioli and V. Maniezzo and G. Righini and M. Trubian.
International Transactions in Operational Research 3(1):1-21.
http://citeseer.nj.nec.com/colorni96heuristics.html
Metaheuristics in CombinatorialOptimization: Overview and Conceptual Comparison.
C. Blum and A. Roli. Technical report TR/IRIDIA/2001-13, IRIDIA, Université
Libre de Bruxelles, Belgium
Testing Heuristics: We Have It All Wrong. Hooker, J. Journal of Heuristics 1:33-42.
1996.http://citeseer.nj.nec.com/hooker95testing.html
Designing and Reporting on Computational Experiments with Heuristic Methods.
ichard S. Barr, Bruce L. Golden, James Kelly, William R. Stewart, Mauricio G.C.
Resende. June 27,1995
Metaheuristicas: Una visión global. Melián, B., Moreno Perez, J.A., Marcos Moreno-
Vega, J. Inteligencia Artificial, Revista Iberoamericana de Inteligencia Artificial.
Numero 19, Volumen 2, páginas 7-28, 2003. (http://www.aepia.org/revista).
![Page 10: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/10.jpg)
10
Conocimientos previos exigidos
Exigidos (plan 97):
Curso de Introducción a la investigación de
operaciones.
Curso de Taller de Programación.
Recomendados:
Cursos adicionales en el área de Investigación de
operaciones, especialmente optimización.
![Page 11: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/11.jpg)
11
Cronograma tentativo
• Presentación temática inicial : lunes, martes y jueves, de 17 a 18:30 horas (del 5 al 16 de agosto).
• Asignación de temas a grupos: 16 de agosto.
• Presentación y discusión de aplicaciones:dos sesiones semanales, martes y jueves de 17 a 18:30, a partir del 24 de agosto hasta el 23 de setiembre.
• Presentación de implementaciones, y presentaciones orales: 25 de octubre al 9 de noviembre.
• Entrega del informe final: 11 de noviembre.
![Page 12: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/12.jpg)
12
Datos contacto
• Pagina web curso:http://www.fing.edu.uy/inco/grupos/invop/mh/.
• E-mail:[email protected], [email protected]
![Page 13: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/13.jpg)
13
Investigación de Operaciones
Empleo de la metodología científica en la búsqueda
de soluciones óptimas y como apoyo a la toma de
decisiones a nivel operativo y gerencial.
Área de investigación y de actividad profesional
establecida a partir de la 2da Guerra Mundial.
Etapa de crecimiento y divulgación explosiva a
partir de mediados de los 80, que continua
actualmente.
Importante sinergia con el desarrollo de las
tecnologías de la información y la comunicación.
![Page 14: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/14.jpg)
14
Metodología de aplicación de
Investigación de Operaciones Pasos (a grandes rasgos):
1.- Planteo y Análisis del problema a resolver
2.- Construcción de un modelo adecuado
3.- Obtención de datos y ajuste de parámetros del modelo
4.- Deducción de la(s) solucion(es)
5.- Validación del modelo y evaluación de solucion(es)
6.- Ejecución y Control de la(s) solucion(es)
Optimización: concierne fundamentalmente etapas 2 y 4.
![Page 15: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/15.jpg)
15
Problemas de Optimización
Nomenclatura:
x=(x1, x2, ..., xn) variables del problema.
D espacio de soluciones factibles.
f(x) función objetivo.
Valor óptimo de f: f0 = min {f(x): xD}
Conjunto de soluciones óptimas S0 = {xD: f(x)= f0}
(también llamadas soluciones globalmente óptimas).
Dx
xf
que tal
)(min
![Page 16: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/16.jpg)
16
Problemas de
Programación Matemática
Nomenclatura:
x=(x1, x2, ..., xn) variables del problema.
f(x) función objetivo.
g(x) restricciones del problema
X espacio de soluciones.
D= {xD: g(x)<=0 } espacio de soluciones factibles.
Xx
xf
0xg que tal
)(min
![Page 17: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/17.jpg)
17
Problemas de
Optimización Combinatoria
Nomenclatura:
x=(x1, x2, ..., xn) variables del problem;
Para todo i, xi Di dominio de la variable, que es un
conjunto discreto (finito o infinito).
X= D1D2 ... Dn espacio de soluciones (discreto).
DX espacio de soluciones factibles.
que tal
)(min
Dx
xf
![Page 18: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/18.jpg)
18
Ejemplo - Problema del Viajante
de Comercio
Sea: un conjunto de ciudades
Una ciudad origen O
Un conjunto de aristas que une las ciudades,
con costos asociados
Problema del viajante: recorrer todas las
ciudades, comenzando en O y terminando
en O, al menor costo posible.
![Page 19: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/19.jpg)
19
Ejemplo
• Problema • Una solución
óptima (de valor 8)
O2
42
3
22
O2
2
22
![Page 20: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/20.jpg)
20
Repaso - Complejidad
Complejidad de un algoritmo:
Cantidad de operaciones elementales que se efectúan en
el peor caso (en función del tamaño de los datos de
entrada).
Complejidad de un problema: complejidad del
algoritmo más eficiente para resolverlo.
Clases de complejidad:
Clase P (polinomial)
Clase NP (no-determinista polinomial)
Clase EXP (exponencial)
![Page 21: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/21.jpg)
21
Repaso - Complejidad (2)
Problema abierto: PNP?
Clases:
NP-completo
NP-difícil
Problemas de optimización:
algunos en P.
muchos en NP-completo o NP-difícil (por ejemplo,
Problema del Viajante de Comercio).
![Page 22: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/22.jpg)
22
Métodos de solución
• Resolución analítica.
• Algoritmos exactos.
• Métodos de aproximación (p.ej, métodos
numéricos).
• Simulación y otros métodos aleatorizados.
• Heurísticas.
![Page 23: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/23.jpg)
23
Algoritmos exactos para
Optimización Combinatoria
• Enumeración explícita o implícita de soluciones
(programación dinámica, branch and bound).
• Algoritmos basados en Programación Matemática
(simplex, punto interior, branch&cut,
branch&cut&price).
• Otros específicos de cada problema.
• Únicos errores: redondeo, y eventualmente
truncamiento.
![Page 24: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/24.jpg)
24
Métodos de aproximación
• Encuentra solución con error máximo conocido a
priori.
• En algunos casos, error de aproximación fijo.
• En otros, posible elegir trade-off entre error de
aproximación y esfuerzo computacional (mayor
esfuerzo, menor error).
• Problemas en la clase PTAS - “Polynomial Time
Approximation Schemes”.
![Page 25: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/25.jpg)
25
Métodos aleatorios
• Con cierta probabilidad, encuentra solución que
tendrá un error máximo dado.
• Variantes:
• Monte Carlo: siempre da una solución y estimación del
error, con intervalo de confianza asociado; mayor
esfuerzo computacional disminuye el error y aumenta la
confianza.
• Las Vegas: puede dar o no una solución en un tiempo
dado (cuando la da, es exacta); mayor esfuerzo
computacional aumenta la probabilidad de tener una
respuesta.
![Page 26: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/26.jpg)
26
Heurísticas
• "heurística" deriva del griego heuriskein, que
significa "encontrar" o "descubrir".
Técnicas que busca soluciones de buena calidad
(de valor cercano al óptimo?) a un costo
computacional razonable, aunque sin garantizar la
optimalidad de las mismas. En general, ni siquiera
se conoce el grado de error.
![Page 27: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/27.jpg)
27
Ejemplo sencillo de heurística:
método avaro o goloso (greedy)
• Idea: tratar de construir una solución eligiendo de
manera iterativa los elementos componentes de
menor costo.
• Para algunos problemas con estructura particular,
la solución construida es una solución óptima.
• En general, no es el caso.
![Page 28: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/28.jpg)
28
Aplicación al Viajante de
Comercio - problema
7
22
3
10
7
5
35
o
![Page 29: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/29.jpg)
29
Aplicación al Viajante de
Comercio - paso 1
7
22
3
10
7
5
35
o
![Page 30: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/30.jpg)
30
Aplicación al Viajante de
Comercio - paso 2
7
22
3
10
7
5
35
o
![Page 31: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/31.jpg)
31
Aplicación al Viajante de
Comercio - paso 3
7
22
3
10
7
5
35
o
![Page 32: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/32.jpg)
32
Aplicación al Viajante de
Comercio - paso 4
7
22
3
10
7
5
35
o
![Page 33: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/33.jpg)
33
Aplicación al Viajante de
Comercio - paso 5
7
22
3
10
7
5
35
oSolución: costo 22
![Page 34: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/34.jpg)
34
Aplicación al Viajante de
Comercio
7
22
3
10
7
5
35
o Solución alternativa: costo 19
![Page 35: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/35.jpg)
35
Metaheurísticas
“Heurísticas de nivel más alto” (Glover, 1986)
Características:
estrategias que guían el proceso de búsqueda,
incluyendo en general heurísticas subordinadas.
de uso genérico (no específicas para una clase
de problemas).
admiten descripción a nivel abstracto
deben instanciarse para cada clase de
problemas.
![Page 36: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/36.jpg)
36
Metaheurísticas
Objetivos:
Encontrar rápidamente soluciones factibles
(puede ser en sí mismo problema NP-difícil).
Encontrar soluciones factibles de buena calidad
(valor cercano al óptimo).
Recorrer el espacio de soluciones sin quedar
“atrapados” en una zona. Nociones: exploración
del espacio, explotación de las soluciones
obtenidas.
![Page 37: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/37.jpg)
37
Clasificaciones de
Metaheurísticas
Inspiradas (o no) en la naturaleza (sistemas
biológicos, físicos o sociales).
Algoritmos Genéticos - Evolución de las especies
Recocido simulado - Enfriamiento de metales
Colonias de hormigas - ídem.
Búsqueda dispersa - no bio-inspirada.
Aleatorias vs. determinísticas.
Algoritmos Genéticos, Recocido simulado, Colonias de
hormigas: aleatorias.
Búsqueda Tabú, Búsqueda dispersa: determinísticas.
![Page 38: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/38.jpg)
38
Clasificaciones de
Metaheurísticas
Basadas en un individuo vs. basadas en
poblaciones:
Recocido simulado, GRASP, búsqueda tabú, búsqueda
local y variantes: basadas en un individuo.
Algoritmos Genéticos, Colonias de hormigas,
Búsqueda dispersa: basadas en poblaciones.
Constructivas vs. trayectorias:
Recocido simulado, búsqueda tabú, algoritmos
genéticos, búsqueda local y variantes: trayectorias.
GRASP, Colonias de hormigas: constructivas.
![Page 39: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/39.jpg)
39
Clasificaciones de
Metaheurísticas
Con memoria vs. sin memoria
Recocido simulado, GRASP, Algoritmos Genéticos,
búsqueda local y variantes: sin memoria.
Búsqueda tabú,Colonias de hormigas: con memoria.
Espacio sin estructura / espacio estructurado. Uso
de única función de vecindad / múltiples
vecindades. Función objetivo estática / dinámica.
![Page 40: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/40.jpg)
40
Estructura del espacio
Estructura de vecindad: función N:D->2D , que
asigna a cada solución x un conjunto de
“soluciones vecinas”.
Soluciónes localmente mínimas (mínimos
locales): x es mínimo local si para todo y que
pertenece a N(x), f(x)<=f(y) (estricto si <).
Todo mínimo global es un mínimo local; el
recíproco es falso.
que tal
)(min
Dx
xf
![Page 41: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/41.jpg)
41
Esquema de clasificación X/Y/Z
Propuesto por Laguna (similar al esquema para
filas de espera propuesto por Kendall)
X = A(adaptativo, con memoria) o M (sin
memoria)
Y= N (búsqueda determinística) o S (muestreo
aleatorio)
Z = 1 (basado en una solución) o P (basado en
poblaciones).
![Page 42: Optimizacion Combinatoria, Exactos, Aprox, Heuristica Metaheuristica](https://reader034.vdocuments.pub/reader034/viewer/2022042508/55cf987f550346d03397fd6e/html5/thumbnails/42.jpg)
42
Fin presentación inicial
-