Seminario: Elementos de Metaheurísticas edición segundo semestre 2004



Descargar 19,66 Kb.
Fecha de conversión23.06.2017
Tamaño19,66 Kb.

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

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.

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.

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.

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.

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.

Evaluación

  • Cuatro instancias obligatorias:
  • i) presentación oral de aplicaciones (grupos 2 estudiantes):
  • 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.

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

Bibliografía - artículos

  • Heuristics 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).

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.

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.

Datos contacto

  • Pagina web curso: http://www.fing.edu.uy/inco/grupos/invop/mh/.
  • E-mail: cancela@fing.edu.uy, ferreira@fing.edu.uy

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.

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.

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): xD}
    • Conjunto de soluciones óptimas S0 = {xD: f(x)= f0} (también llamadas soluciones globalmente óptimas).

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= {xD: g(x)<=0 } espacio de soluciones factibles.

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= D1D2 ... Dn espacio de soluciones (discreto).
    • DX espacio de soluciones factibles.

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.

Ejemplo

  • Problema
  • Una solución óptima (de valor 8)
  • O
  • 2
  • 4
  • 2
  • 3
  • 2
  • 2
  • O
  • 2
  • 2
  • 2
  • 2

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)

Repaso - Complejidad (2)

  • Problema abierto: PNP?
  • 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).

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.

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.

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”.

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.

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.

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.

Aplicación al Viajante de Comercio - problema

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o

Aplicación al Viajante de Comercio - paso 1

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o

Aplicación al Viajante de Comercio - paso 2

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o

Aplicación al Viajante de Comercio - paso 3

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o

Aplicación al Viajante de Comercio - paso 4

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o

Aplicación al Viajante de Comercio - paso 5

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o
  • Solución: costo 22

Aplicación al Viajante de Comercio

  • 7
  • 2
  • 2
  • 3
  • 10
  • 7
  • 5
  • 3
  • 5
  • o
  • Solución alternativa: costo 19

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.

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.

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.

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.

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.

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.

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).

Fin presentación inicial

  • -


La base de datos está protegida por derechos de autor ©absta.info 2016
enviar mensaje

    Página principal