Professional Documents
Culture Documents
053
Bsqueda
Jueves, 9 de mayo
Entregas: material de clase Ver la introduccin al trabajo sobre Very Large Scale Neighborhood Search. (Est en la pgina web).
1
2. Problemas cuya comprensin tal vez sea fcil pero que tienen tantas soluciones posibles que no se puede ubicar la mejor.
z z
en la posibilidad de ubicar estaciones de bomberos en distritos diferentes. utilizar el menor nmero de estaciones posible de modo tal que cada distrito tenga una en l o en un distrito adyacente.
Objetivo:
5 4 11 10 14 8
6 7 9 12 15 13 16
4
Suele ser mucho ms rpida que la optimizacin, como el mtodo branch & bound Si est bien desarrollada, puede obtener soluciones excelentes para muchos problemas en la prctica Algunos casos especiales de heurstica
z z
heurstica anterior siempre aada la ciudad siguiente al final de la ruta actual. aada la siguiente heurstica en cualquier parte de la ruta actual.
Idea:
Mejor
an: mantenga un ciclo en cada iteracin e inserte la ciudad siguiente de modo ptimo en el ciclo. una heurstica basada en la insercin.
Es
10
Inserte la 4 ciudad
Inserte la 5 ciudad
11
12
Inserte la 6 ciudad
Inserte la 7 ciudad
13
14
Inserte la 8 ciudad
Inserte la 9 ciudad
15
16
Inserte la 10 ciudad
Inserte la 11 ciudad
17
18
Inserte la 12 ciudad
Inserte la 13 ciudad
19
20
Inserte la 14 ciudad
Inserte la 15 ciudad
21
22
Inserte la 16 ciudad
Inserte la 17 ciudad
23
24
Inserte la 18 ciudad
Inserte la 19 ciudad
25
26
27
28
etc.
5 6 7 4 11 10 14
29
TSP
8 12
9 13 16
30
15
Mtodos de mejora
Estas
fcil escribir heursticas de construccin satisfactorias difcil dar con las buenas veces lo ms sencillo es lo mejor
Es A
tcnicas comienzan con una solucin, y buscan mtodos simples para mejorar la solucin. sea T un tour. un tour mejorado para que |T - T| = 2.
Ejemplo: Buscar
31
32
33
34
Para una ruta cualquiera T, decimos que T es un 2-vecino de T si T se puede obtener a partir de T aadiendo dos ejes y borrando dos ejes. Decimos que T es 2-ptimo si la longitud de T es menor o igual que la longitud de cada uno de sus 2-vecinos. iniciar con una ruta factible T mientras T no sea 2-optimo sustituir T por un 2-vecino de T que tenga una longitud menor.
Algoritmo 2-opt
35
36
suele producir buenas soluciones, pero no est garantizado elimina los ejes cruzados estar dentro del 7% de optimalidad
El principio bsico: definir un vecino de cada solucin posible. Dada una solucin x, reemplazar x por un vecino de x con menor coste, si uno existe. El vecino es a menudo especfico del tipo de problema presente y suele haber muchas soluciones posibles. Otros posibles vecinos para el TSP
z z
Siempre Suele
3-opt insercin
37
38
39
40
Optimalidad local
Se
dice que una solucin y es ptima local (con respecto a un vecino dado) si no existe un vecino de y cuyo valor objetivo sea mejor que el valor de y. 2-Opt halla una solucin localmente
Ejemplo.
ptima.
41
42
solucin y se dice que es globalmente ptima si no hay otra con un valor objetivo mejor La optimalidad local depende de la ndole de la vecindad, es decir, qu modificaciones son permisibles en la solucin
z p.ej. z p.ej.,
Comentario.
5 4 11 8
6 7 9 12 15 13 16
44
2-intercambios 3-intercambios
TSP
10 14
43
Implementacin de la heurstica
Ayuda Se
2-opt para el TSP suele moverse en un porcentaje cercano a la optimidad; pero, es posible que se pase en un 100% o ms. Una heurstica muy simple podr a veces rendir mejor que otra mucho ms avanzada (incluso una ruta seleccionada al azar podra ser ptima). No se puede predecir cuntas iteraciones necesitar una heurstica de mejora local. Desarrollar una buena heurstica requiere ingeniera de algoritmos
45
a apreciar verdaderamente la implementacin y el diseo de un algoritmo pueden implementar un 2-intercambio y y un 3-intercambio para el TSP de un modo tremendamente rpido.
z Se
z z
han resuelto problemas con miliones de ciudades, asumiendo que las distancias son euclideanas.
46
Aleatorizacin
Una
En
heurstica: nos permite realizar esencialmente la misma heurstica muchas veces y obtener respuestas diferentes. (Entonces, se puede elegir la mejor)
podemos desarrollarlo 1.000 veces, y obtendramos diferentes respuestas, as se aumenta la probabilidad de obtener una mejor
47
48
Una manera simple de usar la aleatorizacin: elegir ejes al azar, uno cada vez.
z Construya
una ruta visitando ciudades de forma aleatoria, y luego desarrolle 2-opt. Repetir 1000 veces.
En
la prctica funciona mucho mejor que desarrollando 2-opt una vez. (En la prctica: partir de una ruta aleatoria es ms lento que partir de una buena ruta, por lo que esta tcnica no se utiliza mucho)
50
49
La heurstica de mejora local se detiene en una solucin localmente ptima Existe un modo de explorar un espacio ms amplio. Que pasa si una solucin ptima local es mala? El recocido simulado es una tcnica que permite usar la aleatorizacin para, en ocasiones, hacer movimientos en la direccin incorrecta.
z z
Imagine
tomar un material muy caliente y enfriarlo lentamente para que el material se solidifique despacio en el estado de mnima energa si se enfra un material demasiado deprisa, se endurecer en alguna configuracin subptima.
52
basado en una analoga fsica converge en la solucin ptima bajo las condiciones adecuadas
51
Hecho:
probabilidad de hacer un movimiento en la direccin equivocada es e- /T. T , Prob(direcc. equivocada) 1. T 0, Prob(direcc. equivocada) 0.
En
53
54
El recocido simulado seleccionar un vecino de T seleccionando al azar dos ejes que abandonarn el recorrido.
La probabilidad de aceptar el movimiento es e-7/T . El recocido simulado seleccionar un vecino de T seleccionando al azar dos ejes que abandonarn el recorrido.
55
56
se disminuye la temperatura lo bastante despacio, la solucin converge al ptimo con mucha probabilidad (pero se necesita disminuir la temperatura de un modo terriblemente lento). la prctica, se disminuye la temperatura ms o menos lentamente. muchos problemas, el recocido simulado es excelente.
58
En
Para
57
Resumen
Mtodos Mtodos
valor objetivo
Aleatorizacin Recocido
59
60