A G's

34
INTEGRANTES: INTEGRANTES: Gisella Cepeda Gisella Cepeda Marina Loor Marina Loor Patricia Sanchez Patricia Sanchez Maritza San Maritza San Lucas Lucas

Transcript of A G's

Page 1: A G's

INTEGRANTES:INTEGRANTES:

Gisella Cepeda Gisella Cepeda Marina LoorMarina LoorPatricia SanchezPatricia SanchezMaritza San LucasMaritza San Lucas

Page 2: A G's

Son algoritmos matemáticosSon algoritmos matemáticos

de Optimización basados ende Optimización basados en

mecanismos naturales demecanismos naturales de

selección y genética,selección y genética,

proporcionando excelentesproporcionando excelentes

soluciones en problemassoluciones en problemas

complejos con gran númerocomplejos con gran número

de parámetros (John Holland).de parámetros (John Holland).

Page 3: A G's

El éxito de los algoritmos El éxito de los algoritmos genéticos se refleja en genéticos se refleja en conferencias sobre Illinois conferencias sobre Illinois Genetic Algorithms Genetic Algorithms Laboratory , es una revista Laboratory , es una revista internacional dedicada al internacional dedicada al tema y un sinnúmero de tema y un sinnúmero de publicaciones alrededor del publicaciones alrededor del mundo.mundo.

Page 4: A G's

• El AG estándar se puede expresar en El AG estándar se puede expresar en pseudocódigo con el siguiente ciclo:pseudocódigo con el siguiente ciclo:

1.Generar aleatoriamente la población inicial de 1.Generar aleatoriamente la población inicial de individuos P(0).individuos P(0).

2.Mientras ( numero _ generaciones <= 2.Mientras ( numero _ generaciones <= máximo _ números _ generaciones) Hacer: máximo _ números _ generaciones) Hacer: { Evaluación; Selección; Reproducción; { Evaluación; Selección; Reproducción; Generación ++; } Generación ++; }

3.Mostrar resultados 3.Mostrar resultados

4.Fin de la generación 4.Fin de la generación

Page 5: A G's

• Algoritmos Genéticos Generacionales.Algoritmos Genéticos Generacionales.

• Algoritmos Genéticos de estado Fijo.Algoritmos Genéticos de estado Fijo.

• Algoritmos Genéticos Paralelos.Algoritmos Genéticos Paralelos.

• Modelos de Islas.Modelos de Islas.

• Modelo Celular.Modelo Celular.

Page 6: A G's

– Es poco sensible a los mínimos locales, lo Es poco sensible a los mínimos locales, lo cual le confiere robustez, en contraste con cual le confiere robustez, en contraste con las redes neuronales clásicas.las redes neuronales clásicas.

– Asimismo, no depende de las condiciones Asimismo, no depende de las condiciones iniciales, debido a que se usa búsqueda iniciales, debido a que se usa búsqueda estocástica y ésta hace al principio un estocástica y ésta hace al principio un gran número de intentos aleatorios.gran número de intentos aleatorios.

Page 7: A G's

- El tiempo de convergencia de los AG es - El tiempo de convergencia de los AG es predecible por la naturaleza paralela de la predecible por la naturaleza paralela de la búsqueda estocástica.búsqueda estocástica.

- Funciona de forma paralela, por lo que - Funciona de forma paralela, por lo que pueden usarse en sistemas distribuidos pueden usarse en sistemas distribuidos para mejorar más la velocidad de para mejorar más la velocidad de búsqueda.búsqueda.

Page 8: A G's

– Hacen buenas estimaciones de la solución óptima, pero no la calculan exactamente.

– No hay un marco teórico genérico establecido.

– Si la población inicial es cercana a la solución óptima, los AG tardarán más que las técnicas de resolución tradicionales.

• El AG perderá mucho tiempo comprobando soluciones sub-óptimas.

– El usuario debe determinar cómo de cerca está la solución estimada de la solución real.

• La proximidad a la solución real dependerá de la aplicación en concreto.

Page 9: A G's

Los AG trabajan con una codificación de Los AG trabajan con una codificación de un conjunto de parámetros no con los un conjunto de parámetros no con los parámetros tradicionales.parámetros tradicionales.

Los AG no se limitan a buscar en las Los AG no se limitan a buscar en las cercanías de un punto, sino que utilizan cercanías de un punto, sino que utilizan una población de puntos.una población de puntos.

Page 10: A G's

Los AG utilizan únicamente la Los AG utilizan únicamente la información que les proporciona la información que les proporciona la función de coste, no requieren ni de función de coste, no requieren ni de derivadas ni de ningún otra información.derivadas ni de ningún otra información.

Los AG utilizan reglas de transición Los AG utilizan reglas de transición probabilística para guiar su búsqueda, no probabilística para guiar su búsqueda, no regla determinanticas.regla determinanticas.

Page 11: A G's

• Optimización: Se han utilizado en tareas de la optimización numérica, y los problemas de optimización combinatoria.

• Programación automática: Desarrollar programas para tareas específicas, y para diseñar otras estructuras computacionales.

• Aprendizaje máquina: la predicción del tiempo o la estructura de una proteína. Ejemplo: pesos de una red.

Page 12: A G's

• Economía: Modelizar procesos de innovación, el desarrollo estrategias de puja, y la aparición de mercados económicos.

• Sistemas inmunes: Modelizar varios aspectos de los sistemas inmunes naturales.

• Ecología: Modelización de fenómenos ecológicos.

• Genética de poblaciones: condiciones en las que serán viables la recombinación de un gen.

Page 13: A G's

• Evolución y aprendizaje: estudio de las relaciones entre el aprendizaje individual y la evolución de la especie.

• Sistemas sociales: la evolución del comportamiento social en colonias de insectos, y la evolución de la cooperación y la comunicación en sistemas multi-agentes.

Page 14: A G's

Operadores de Selección

• Selección por el método de la ruleta: Da a cada individuo una probabilidad de ser Da a cada individuo una probabilidad de ser seleccionado acorde a su función de costo yseleccionado acorde a su función de costo y

proporcional a su “calidad” dentro de la proporcional a su “calidad” dentro de la población.población.

Page 15: A G's

Selección por el Método de la Ruleta

1 10101 14 537824 0,01%

2 10111 20 3200000 0,03%

3 10001 25 9765625 0,09%

4 11001 66 1252332576 12,16%

5 11110 98 9039207968 87,74%

3*)( xxxF Individuo x F(x) PsiIndividuo x F(x) Psi

Page 16: A G's

Selección por el método de la ruleta

Cuanto mejor es su valor Cuanto mejor es su valor de la función de costo mayorde la función de costo mayores la probabilidad de ser es la probabilidad de ser seleccionado.seleccionado.

Page 17: A G's

• Elitismo:Elitismo: Guardar el mejor individuo de la Guardar el mejor individuo de la población para la siguiente generación, población para la siguiente generación, normalmente sustituyéndolo por el peor. normalmente sustituyéndolo por el peor.

• Sigma (Forrest) : Sigma (Forrest) : Intentar adaptar la selección Intentar adaptar la selección según evoluciona el algoritmo. El valor según evoluciona el algoritmo. El valor esperado de un individuo depende de su esperado de un individuo depende de su fitness, del fitness y la desviación estándar fitness, del fitness y la desviación estándar de la población. de la población.

Operadores de Selección

Page 18: A G's

• Selección basada en el rango : Selección basada en el rango : Mantiene un Mantiene un porcentaje de la población para la siguiente porcentaje de la población para la siguiente generación. La población se ordena por orden generación. La población se ordena por orden de fitness, y los K peores se eliminan y se de fitness, y los K peores se eliminan y se sustituyen por descendientes de los K mejores sustituyen por descendientes de los K mejores con algún otro individuo de la población.con algún otro individuo de la población.

• Selección de Boltzman: Selección de Boltzman: Funciona de manera Funciona de manera similar a como funciona el enfriamiento similar a como funciona el enfriamiento simulado. Variando la temperatura que simulado. Variando la temperatura que controla la presión de selección.controla la presión de selección.

Operadores de Selección

Page 19: A G's

• Selección por torneo: Selección por torneo: Se escogen 2 individuos Se escogen 2 individuos aleatoriamente de la población, se genera un aleatoriamente de la población, se genera un numero aleatorio r comprendido entre 0 y 1. Si numero aleatorio r comprendido entre 0 y 1. Si r < k (parámetro), se selecciona el mejor de r < k (parámetro), se selecciona el mejor de los 2 individuos en caso contrario se los 2 individuos en caso contrario se selecciona el peor. selecciona el peor.

Operadores de Selección

Page 20: A G's

Operadores de Cruce

• Elegir aleatoriamente un par de individuos de Elegir aleatoriamente un par de individuos de los seleccionados e intercambiar una parte de los seleccionados e intercambiar una parte de sus cromosomas entre sí. sus cromosomas entre sí.

MonopuntoMonopunto

Page 21: A G's

Multipunto Multipunto

Operadores de Cruce

Page 22: A G's

Operadores de Mutación

• Realiza cambios en el código con una Realiza cambios en el código con una probabilidad muy pequeña. Se utiliza para probabilidad muy pequeña. Se utiliza para reestablecer la diversidad que se haya podido reestablecer la diversidad que se haya podido perder con la aplicación sucesiva de los perder con la aplicación sucesiva de los operadores de selección y cruce.operadores de selección y cruce.

Page 23: A G's

Representación

Page 24: A G's

Funcionamiento de un Algoritmo Genético

f(x) =x2 0,1, 2, 3,..., 30, 31

1.1. Encontrar una manera de codificar las posibles soluciones (posible Encontrar una manera de codificar las posibles soluciones (posible valores de x).valores de x).

Individuo= (0, 1, 0, 1, 1)Individuo= (0, 1, 0, 1, 1)

2.2. Generar colección de individuos llamados población.Generar colección de individuos llamados población.

(1) = Número que le asignamos al (1) = Número que le asignamos al individuo. individuo. (2) = Individuo (2) = Individuo en codificación binaria. en codificación binaria. (3) = Valor de x.(3) = Valor de x.

(4) = Valor de f(x). (4) = Valor de f(x). (5) = La pareja asignada a (5) = La pareja asignada a cada individuocada individuo

Page 25: A G's

(1) = Número que le asignamos al (1) = Número que le asignamos al individuo.individuo.

(2) = Individuos después de la (2) = Individuos después de la selección.selección.

(3) = Pareja para el cruce.(3) = Pareja para el cruce.

(4) = Punto aleatorio de cruce.(4) = Punto aleatorio de cruce.

(1) = Número que le asignamos (1) = Número que le asignamos al individuo.al individuo.

(2) = Individuos después del (2) = Individuos después del cruce.cruce.

(3) = Valor de x.(3) = Valor de x.

(4) = Valor de f(x).(4) = Valor de f(x).

3. Selección3. Selección

4. Cruce4. Cruce

Page 26: A G's

Aplicación en la Logística

Minimizar la distancia recorrida

CiudadDestino

Ciudad deOrigen 1 2 3 4 5 6

1 0 10 5 6 7 1

2 10 0 6 4 3 4

3 5 6 0 8 2 2

4 6 4 8 0 4 7

5 7 3 2 4 0 1

6 1 4 2 7 1 0

Page 27: A G's

1. Colección de Individuos ( población Inicial)

IndividuoDistancia

Total

1 5 4 2 3 1 6 20

2 3 1 5 4 6 2 22

3 2 3 1 6 5 4 17

4 6 1 4 3 2 5 24

5 2 5 6 1 3 4 19

6 1 4 3 2 6 5 25

Aplicación en la Logística

Page 28: A G's

2. Selección (menor distancia)Individuo Pareja aleatoria

1 4

3 6

5 2

La selección se la hace mediante un torneo La selección se la hace mediante un torneo entre dos individuos. A cada individuo de la entre dos individuos. A cada individuo de la población se le asigna una pareja y entre población se le asigna una pareja y entre ellos se establece un torneo: el mejor ellos se establece un torneo: el mejor genera dos copias y el peor se desecha.genera dos copias y el peor se desecha.

Aplicación en la Logística

Page 29: A G's

1 5 4 2 3 1 6

2 5 4 2 3 1 6

3 2 3 1 6 5 4

4 2 3 1 6 5 4

5 2 5 6 1 3 4

6 2 5 6 1 3 4

Aplicación en la Logística

2. Selección (menor distancia)

Page 30: A G's

3. Cruce ( manteniendo la precedencia).

Individuo Pareja Punto de cruce

1 3 2

2 5 4

3 1 2

4 6 4

5 2 4

6 4 4

Aplicación en la Logística

Page 31: A G's

Hijo

1 5 4 2 3 1 6

2 3 1 5 4 2 6

3 2 3 5 4 1 6

4 6 1 4 3 2 5

5 2 5 6 1 3 4

6 1 4 3 2 6 5

Aplicación en la Logística

3. Cruce ( manteniendo la precedencia).

Page 32: A G's

4. Mutación ( Intercambios).

Hijo

1 4 6

2 5 2

3 4 1

4 1 2

5 3 4

6 4 5

Aplicación en la Logística

Page 33: A G's

HijoDistancia

Recorrida

1 5 6 2 3 1 4 23

2 3 1 2 4 5 6 25

3 2 3 5 1 4 6 23

4 6 2 4 3 1 5 24

5 2 5 6 1 4 3 16

6 1 5 3 2 6 4 26

Aplicación en la Logística

4. Mutación ( Intercambios).

OptimoOptimo

Page 34: A G's

AG es un método robusto. Al comprender los AG la implementación no es complicada y pueden llegar a tener mucha aplicación.

Los AG son altamente paralelizables.

Resuelven problemas con un grado de dificultad muy elevado con eficiencia y exactitud.

Conclusiones