53
Inteligencia de enjambres Diego Milone Inteligencia Computacional Departamento de Informática FICH-UNL

Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia de enjambres

Diego Milone

Inteligencia ComputacionalDepartamento de Informática

FICH-UNL

Page 2: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Colonia de hormigas:introducción

Diego Milone

Inteligencia ComputacionalDepartamento de Informática

FICH-UNL

Page 3: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Hay 1016 hormigas en la tierra (y 6 × 109 humanos)

• Igual peso total

• 30 millones por colonia

Page 4: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Hay 1016 hormigas en la tierra (y 6 × 109 humanos)

• Igual peso total

• 30 millones por colonia

Page 5: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Hay 1016 hormigas en la tierra (y 6 × 109 humanos)

• Igual peso total

• 30 millones por colonia

Page 6: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida

1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 7: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida1. Comportamiento inicial aleatorio

2. Cuando encuentran una fuente de comida se organizan ycomienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 8: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino

2.1 Mecanismo de reclutamiento: mayormente por feromonas,liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 9: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 10: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 11: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 12: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Feromonas: las búsqueda del camino más corto a la comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporción a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con másprobabilidad, tratando de alejarse del hormiguero si no llevancomida)

2.3 El camino se refuerza al ser seguido por más y más hormigas

• Notar:• Comunicación indirecta• Modificación del entorno físico: estigmergía

Page 13: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Experimento del puente binario

Page 14: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Colonia de hormigas:algoritmos

Diego Milone

Inteligencia ComputacionalDepartamento de Informática

FICH-UNL

Page 15: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Colonia de hormigas

Definiciones:

• G = (V ,E): grafo con vértices V y matriz de conexiones E• σij: feromonas en la conexión entre i y j• k = 1, 2, . . . ,N: hormigas

• Ni: nodos disponibles a partir del nodo i• pk(t): camino de la hormiga k

Notar:

• t → t + 1: se incremente una vez que todas las hormigasencuentran el alimento y vuelven al origen

• Nki : en algunos casos el entorno se limita a los nodos que no

haya visitado previamente la hormiga k

Page 16: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Colonia de hormigas

Definiciones:

• G = (V ,E): grafo con vértices V y matriz de conexiones E• σij: feromonas en la conexión entre i y j• k = 1, 2, . . . ,N: hormigas

• Ni: nodos disponibles a partir del nodo i• pk(t): camino de la hormiga k

Notar:

• t → t + 1: se incremente una vez que todas las hormigasencuentran el alimento y vuelven al origen

• Nki : en algunos casos el entorno se limita a los nodos que no

haya visitado previamente la hormiga k

Page 17: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad

pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)3.4 t ← t + 1

hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 18: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅

3.1.2 repetir• seleccionar el próximo nodo según la probabilidad

pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)3.4 t ← t + 1

hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 19: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad

pkij(t) = · · ·

pkij(t) =

σαij(t)∑

∀u∈Ni

σαiu(t)si j ∈ Ni

0 en otro caso.

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)3.4 t ← t + 1

hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 20: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)

3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)3.4 t ← t + 1

hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 21: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)3.4 t ← t + 1

hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 22: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)

3.4 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 23: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 1: Colonia de hormigas simple (sACO)1. t = 0, Inicializar feromonas con valores pequeños al azar (σij(t)f U(0, σ0))2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 eliminar los ciclos en pk(t)3.1.4 calcular la longitud del camino econtrado f

(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

3.3 para cada conexión (i, j)• depositar feromonas proporcionalmente a la bondad de la solución

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

1/f(pk(t)

)3.4 t ← t + 1

hasta que todas las hormigas sigan el mismo camino

4. devolver el camino más corto (↓ f(pk(t)

))

Page 24: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad

pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 25: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅

3.1.2 repetir• seleccionar el próximo nodo según la probabilidad

pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 26: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad

pkij(t) = · · ·

pkij(t) =

σαij(t)η

βij(t)∑

∀u∈Nki

σαiu(t)ηβij(t)si j ∈ Nk

i

0 en otro caso.

→ Deseo de moverse inverso al costo entre nodos: ηij = 1/dij.→ Lista de nodos vecinos con tabú: Nk

i

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 27: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)

3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 28: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)

• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 29: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 30: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 31: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 2: Sistema de hormigas (AS)1. t = 0, σij(t)f U(0, σ0)2. Ubicar N hormigas en el nodo origen

3. repetir3.1 para cada hormiga k = 1, 2, . . . ,N

3.1.1 pk(t) = ∅3.1.2 repetir

• seleccionar el próximo nodo según la probabilidad pkij(t) = · · ·

• agregar un paso (i, j) al camino pk(t)hasta alcanzar el destino

3.1.3 calcular la longitud del camino econtrado f(pk(t)

)3.2 para cada conexión (i, j)• reducir por evaporación la cantidad de feromonas: σij(t)← (1 − ρ)σij(t)• depositar feromonas proporcionalmente a la bondad de la solución

∆σkij(t) =

Q/f

(pk(t)

)global.

Q uniforme.Q/dij local.

σij(t + 1) = σij(t) +∑

∀k/(i,j)∈pk(t)

∆σkij(t)

3.3 t ← t + 1hasta que todas las hormigas sigan el mismo camino

4. devolver el mejor camino

Page 32: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Enjambre de partículas

Diego Milone

Inteligencia ComputacionalDepartamento de Informática

FICH-UNL

Page 33: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Bandadas de pájaros

• Cada individuo vuela/navega el espacio ajustando su posiciónen base a su experiencia y a la información de los individuosde su entorno

• Emular el éxito de los vecinos y propio• xk(t): posición de la partícula k, en el tiempo t (espacio RN)• vk(t): velocidad de la partícula k, en el tiempo t• Regla básica: xk(t + 1) = xk(t) + vk(t)

Page 34: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Bandadas de pájaros

• Cada individuo vuela/navega el espacio ajustando su posiciónen base a su experiencia y a la información de los individuosde su entorno

• Emular el éxito de los vecinos y propio• xk(t): posición de la partícula k, en el tiempo t (espacio RN)• vk(t): velocidad de la partícula k, en el tiempo t

• Regla básica: xk(t + 1) = xk(t) + vk(t)

Page 35: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

La inspiración biológica

• Bandadas de pájaros

• Cada individuo vuela/navega el espacio ajustando su posiciónen base a su experiencia y a la información de los individuosde su entorno

• Emular el éxito de los vecinos y propio• xk(t): posición de la partícula k, en el tiempo t (espacio RN)• vk(t): velocidad de la partícula k, en el tiempo t• Regla básica: xk(t + 1) = xk(t) + vk(t)

Page 36: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Enjambre de partículas

Definiciones:

• yk: mejor posición personal de la partícula k (la mejor quevisitó desde t = 0 hasta la actualidad)

• f (x): función de error a minimizar

Mejor global (gEP):

• Topología estrella: usa información de todo el enjambre

• y: mejor posición visitada por todo el enjambre

Page 37: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Enjambre de partículas

Definiciones:

• yk: mejor posición personal de la partícula k (la mejor quevisitó desde t = 0 hasta la actualidad)

• f (x): función de error a minimizar

Mejor global (gEP):

• Topología estrella: usa información de todo el enjambre

• y: mejor posición visitada por todo el enjambre

Page 38: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yi − xki(t)

]r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 39: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)

• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yi − xki(t)

]r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 40: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yi − xki(t)

]r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 41: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]

+ c2r2i[yi − xki(t)

]r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 42: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yi − xki(t)

]

r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 43: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yi − xki(t)

]r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 44: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 3: Enjambre del mejor global (gEP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yi − xki(t)

]r1i, r2i f U(0, 1)

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización

3. devolver la mejor partícula encontrada

Page 45: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Enjambre de partículas

Definiciones:• yk: mejor posición personal de la partícula k (la mejor que

visitó desde t = 0 hasta la actualidad)• f (x): función de error a minimizar

Mejor local (`EP):• Topología anillo: usa información del entorno cercano a la

partícula• Selección: basada en los índices de las partículas (caso más

simple)

Ek = {yk−n, yk−n+1, . . . , yk−1, yk, yk+1, . . . , yk+n}:

• yk = arg min∀yu∈Ek {f (yu)} mejor posición visitada por elentorno de la partícula k

Page 46: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Enjambre de partículas

Definiciones:• yk: mejor posición personal de la partícula k (la mejor que

visitó desde t = 0 hasta la actualidad)• f (x): función de error a minimizar

Mejor local (`EP):• Topología anillo: usa información del entorno cercano a la

partícula• Selección: basada en los índices de las partículas (caso más

simple)

Ek = {yk−n, yk−n+1, . . . , yk−1, yk, yk+1, . . . , yk+n}:• yk = arg min∀yu∈Ek {f (yu)} mejor posición visitada por el

entorno de la partícula k

Page 47: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yki − xki(t)

]r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada

Page 48: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)

• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yki − xki(t)

]r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada

Page 49: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yki − xki(t)

]r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada

Page 50: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]

+ c2r2i[yki − xki(t)

]r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada

Page 51: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yki − xki(t)

]

r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada

Page 52: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yki − xki(t)

]r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada

Page 53: Inteligencia de enjambresinfofich.unl.edu.ar/upload/f20c89d95fcdd341f7fd8d4dccce4aab21fb08de.pdfAlgoritmo 1: Colonia de hormigas simple (sACO) 1. t= 0, Inicializar feromonas con valores

Inteligencia Computacional - FICH - UNL

Algoritmo 4: Enjambre del mejor local (`EP)1. Inicializar xki(0)f U(xmin

i , xmaxi )

2. repetir2.1 para cada partícula k = 1, 2, . . . ,N

• si f (xk(t)) < f (yk)→ yk = xk(t)• si f (yk) < f (y)→ y = yk

2.2 para cada partícula k = 1, 2, . . . ,N• vki(t + 1) = vki(t) + c1r1i

[yki − xki(t)

]+ c2r2i

[yki − xki(t)

]r1i, r2i f U(0, 1)yk = arg min∀yu∈Ek {f (yu)}

• xk(t + 1) = xk(t) + vk(t + 1)

hasta cummplir con al condición de finalización3. devolver la mejor partícula encontrada