Ant Colony Optimization (Parte II)

17
Ant Colony Optimization (Parte II) Dr. Guillermo Leguizamón CINVESTAV, Julio 2010 Familia de algoritmos derivados del enfoque ACO

description

Dr. Guillermo Leguizamón CINVESTAV, Julio 2010. Ant Colony Optimization (Parte II). Familia de algoritmos derivados del enfoque ACO. Familia de los principales algoritmos ACO . MaxMin -AS (control sobre los valores del rastro ) AS-rank (ranking de soluciones ) - PowerPoint PPT Presentation

Transcript of Ant Colony Optimization (Parte II)

Page 1: Ant Colony Optimization (Parte II)

Ant Colony Optimization (Parte II)

Dr. Guillermo Leguizamón

CINVESTAV, Julio 2010

Familia de algoritmos derivados del enfoque ACO

Page 2: Ant Colony Optimization (Parte II)

Familia de los principales algoritmos

ACO • MaxMin-AS (control sobre los valores del rastro)

• AS-rank (ranking de soluciones)

• AS-elistim (sólo la mejor solución)

• Ant Colony System (ACS)

• Ant-Q (basado en Q-Learning)

Page 3: Ant Colony Optimization (Parte II)

Algoritmos ACO

• MaxMin-AS: Ant System con valores Mínimos y Máximos para los valores del rastro de feromona

¿Qué puede ocurrir si no se controlan los valores del rastro de feromona?

¿Qué relación se puede establecer entre un incremento (decremento) indiscriminado del rastro y el comportamiento del algoritmo?

Page 4: Ant Colony Optimization (Parte II)

Valores extremos o nulos del rastro

1 5

2

43

Page 5: Ant Colony Optimization (Parte II)

MaxMinAS

Inicializar();for c=1 to Nro_ciclos{ for k=1 to Nro_ants ant-k construye solución k; Guardar la mejor solución; Actualizar Rastro (i.e., ij);

Reubicar hormigas para el próximo ciclo;}Imprimir la mejor solución encontrada;

Se controlan los valores Máximo y Mínimos

Page 6: Ant Colony Optimization (Parte II)

Algoritmos ACO

• AS-rank: Ant System que usa un ranking de las mejores soluciones para realizar la actualización del rastro.

¿Qué relación se puede establecer entre esta manera de actualizar el rastro y el comportamiento del algoritmo?

Page 7: Ant Colony Optimization (Parte II)

AS-rank

Inicializar();for c=1 to Nro_ciclos{ for k=1 to Nro_ants ant-k construye solución k; Guardar la mejor solución; Realizar un ranking; Actualizar Rastro (i.e., ij);

Reubicar hormigas para el próximo ciclo;}Imprimir la mejor solución encontrada;

Se actualiza el rastro siguiendo el ranking de las mejores soluciones

Page 8: Ant Colony Optimization (Parte II)

Actualización del Rastro en

AS-rank

w: pesor: índice del rankingb: best-so-far

ijb

w

rij

rij wrwt

1

1

)()1(

)1()()1()1( ttt ijijij

Page 9: Ant Colony Optimization (Parte II)

Algoritmos ACO

• AS-elitism: Ant System que usa complementariamente la mejor solución encontrada hasta el momento para dar un resfuerzo adicional.

¿Qué relación se puede establecer entre esta manera de actualizar el rastro y el comportamiento del algoritmo?

Page 10: Ant Colony Optimization (Parte II)

Actualización del Rastro en

AS-elitism

w: pesor: índice del rankingb: best-so-far

ijb

NroAnts

kij

kij et

1

)1(

)1()()1()1( ttt ijijij

Page 11: Ant Colony Optimization (Parte II)

Algoritmos ACO

Ant Colony System: Un algoritmo ACO que es una extensión de un AS e introduce:

1. un esquema local y global de actualización del rastro y, 2. una manera alternativa de selección de la próxima componente

Page 12: Ant Colony Optimization (Parte II)

Ant Colony System (ACS)

1. Actualización del rastro

• LOCAL: Cada vez que una hormiga avanza en el grado deja un rastro muy pequeño sin considerar la calidad de la solución.

• GLOBAL: (idem AS, es decir, después que termina un ciclo)

0)1( ijij

ij

)1()()1()1( ttt bijij ij

Page 13: Ant Colony Optimization (Parte II)

Ant Colony System (ACS)

2. Selección de la próxima componente de la solución:

ij

casootroenPUsar

qqj

ij

ojij }{maxarg

La usada en un AS con =1

Page 14: Ant Colony Optimization (Parte II)

Ant Colony System (ACS)

casootroen

sNoVisitadajkP

sNoVisitadahihih

ijij

ij

0

)(

Es decir que hay una combinación de greedy y proporcional.

NOTA: La parte greedy es sobre los valores combinados de rastro y heurística

Page 15: Ant Colony Optimization (Parte II)

ACS

Inicializar();for c=1 to Nro_ciclos{ for k=1 to Nro_ants ant-k construye solución (Actualización LOCAL) Guardar la mejor solución; Realizar un ranking; Actualización GLOBAL Rastro;

Reubicar hormigas para el próximo ciclo;}Imprimir la mejor solución encontrada;

Page 16: Ant Colony Optimization (Parte II)

Posibilidades de Paralelización

• División en subcolonias (distribuido)

• Muliprocesamiento (Memoria Compartida)

• Otros....

Page 17: Ant Colony Optimization (Parte II)

FIN

Parte II