You are on page 1of 36

Introduccin a la Inteligencia Artificial

Introduccin a los
Algoritmos Genticos
Clase 1

Universidad de Carabobo
FACYT
Departamento de Computacin
Bsqueda
Los algoritmos de bsqueda abarcan
prcticamente toda forma de resolver problemas
automticamente.

Se habla de bsqueda cuando hay que hallar


informacin, siguiendo un determinado criterio.
Bsqueda
Pueden ser:
Partiendo de un conjunto de datos almacenados
Dado el espacio de posibles soluciones a un
problema, parten de una solucin inicial arbitraria
y son capaces de encontrar la solucin mejor o la
nica.
Problemas de Referencia para este
estudio

La tcnica de Programacin Evolutiva ser


abordada haciendo referencia a dos clases de
problemas tipo:

Problema de Optimizacin de Funciones.

Problema del Agente Viajero (TSP).


Problemas de Referencia para este
estudio
Problema de Optimizacin de Funciones
Dados: Una funcin f(x) y
Un dominio de optimizacin: DO

El problema consiste en determinar un x en ese


dominio tal que f(x) sea ptima (mxima o
mnima):

Hallar xDO tal que: f(x) f(x) xDO (max).



Hallar xDO tal que: f(x) f(x) xDO (min).
Problemas de Referencia para este
estudio
Problema de Optimizacin de Funciones

1
1 (x ) sen 40x sen 20 Si x 0.5
2
f x
3
1 (-x ) sen 40x sen 20 Si x 0.5
2
Problemas de Referencia para este
estudio
Problema de Optimizacin de Funciones

Benchmark
Problemas de Referencia para este
estudio
Problema del Agente Viajero

Supongamos la existencia de un agente viajero


que debe visitar n ciudades fijas geogrficamente:

El agente debe visitarlas con las siguientes


restricciones:
Pasar por cada una slo una vez.
Terminar en la ciudad de partida.
Conociendo el costo entre cada par de ciudades:
Buscar la Ruta de Menor Costo
Problemas de Referencia para este
estudio
Problema del Agente Viajero

Consideraciones:

Se asume que desde cualquier ciudad se


puede ir directamente a cualquier otra.

Es un problema de secuenciacin.
El problema consiste en determinar el orden de
visita de las ciudades, de manera que se
minimice un costo.
Problemas de Referencia para este
estudio
Problema del Agente Viajero
C3

C1
C4

C5

C6
C2
Problemas de Referencia para este
estudio
Problema del Agente Viajero
Algoritmo Trivial para resolver el TSP:

Generar todas las permutaciones circulares.


Calcular el costo del recorrido de cada una.
Escoger la permutacin circular de menor costo.

# Rutas = (n - 1)!
2
Es un Problema NP-Completo
Problemas de Referencia para este
estudio
Problema del Agente Viajero

# Rutas = (n - 1)!
2
N Ciudades # Rutas Tiempo Cmputo

10 181.440 2x105 2x105x10-9 = 2x10-4 seg


20 6,08 x 1016 6,08 x107 = 60.822.550s
= 16.895 h. = 703 das
30 4,42 x 1030 4,42 x1021 = 1,22 x1018h.
= 5,11 x1016d.
= 1,4 x1014aos
Problemas de Referencia para este
estudio
Problema del Agente Viajero
Importancia:
Emerge en numerosas aplicaciones con un nmero
de ciudades bastante significativo:
Problemas de planificacin y asignacin de recursos.
En redes de comunicaciones.
Perforacin de tarjetas de circuitos involucran hasta un
mximo de 17.000 ciudades.
La cristalografa de rayos X instancia hasta un mximo
de14.000 ciudades.
La fabricacin de dispositivos VLSI, en los cuales se
han reportado hasta 1.200.000 ciudades.
Problemas de Referencia para este
estudio
Problema del Agente Viajero
Importancia:
Esfuerzo mundial por resolverlo:
Algoritmo de los vecinos ms cercanos.
El algoritmo codicioso.
Insercin ms cercana.
Insercin ms lejana.
Doble rbol expandido mnimo.
La curva de llenado de espacio.
Optimizacin local: 2-opt, 3-opt, Lin-Kernighan.
Problemas de Referencia para este
estudio
Problema del Agente Viajero
Importancia:
Ha venido a ser un blanco o un objetivo para la
comunidad de los AG:
Varios algoritmos basados en inspiracin gentica han
sido reportados.
Estos algoritmos aspiran producir soluciones cercanas
a la ptima.
Bsqueda, Optimizacin y Aprendizaje

La bsqueda est guiada


por una funcin que Optimizacin
indica lo buena que es
cada solucin

Buscar la combinacin de valores de xi tales


que f(x1, x2,..., xn) = Mximo
Bsqueda, Optimizacin y Aprendizaje

Proceso de Bsqueda

Espacio de Soluciones

Espacio del Problema,


de Estados, de Configuraciones

Punto Caracterstico
Bsqueda, Optimizacin y Aprendizaje

La Mecnica de Transicin puede ser


determinista o estocstica, en general.
Soluciones.
- Conjunto de Parmetros,
- Estrategias,
- Acciones, etc..
Bsqueda, Optimizacin y Aprendizaje
Podemos decir
Los problemas de la vida real involucran
sistemas sumamente complejos:

Alta dimensionabilidad
Muchos subsistemas
Realimentacin
Ruido o incertidumbre
Intratabilidad
Bsqueda, Optimizacin y Aprendizaje
En conclusin:
Los Espacios de Soluciones asociados a estos
problemas son de muy Alta Dimensionalidad y
Compleja Estructura.
Bsqueda, Optimizacin y Aprendizaje
Ahora bien:
La bsqueda es un procedimiento bsico en
Computacin.
Normalmente se inspira en la topologa de un grafo
Bsqueda, Optimizacin y Aprendizaje
Existen diversas maneras de enfocar problemas de
optimizacin:
Mtodo Limitaciones
Basados en Clculo: Necesitan mucha informacin sobre
Anlisis Numrico. dominio.
Restricciones al dominio de bsqueda
Primera y Segunda derivada.
Enumerativos: Necesidad de construir todas las
Exhaustivos o Cuasi-exhaustivos soluciones posibles
Recorren todo el espacio de Necesidad de crear el grafo completo y
bsqueda. Bsquedas ciegas. el recorrido en el mismo.
Poderosos pero poco eficientes
Estocsticos: Produce un intervalo de confianza de la
Muestrea el espacio de bsqueda. solucin encontrada
Caminatas aleatorias.
Bsqueda, Optimizacin y Aprendizaje
En general, limitaciones de los mtodos tradicionales:
Son muy dependientes de informacin sobre el
dominio del problema y la Alta Dimensionalidad
del espacio de soluciones los torna Ineficientes.
Bsqueda, Optimizacin y Aprendizaje

Necesidad por La Evolucin natural


nuevas alternativas como alternativa
de bsqueda entre las tcnicas de
bsqueda

Mtodo: Evolucin Natural


Proceso: Adaptarse al Ambiente
Recompensa: Supervivencia
Bsqueda, Optimizacin y Aprendizaje

Mecanismo de cambio en la evolucin


Estos mecanismos de cambio sern necesarios para
entender los algoritmos evolutivos, pues se trata de
imitarlos para resolver problemas
Los que disminuyen la variabilidad:

Seleccin natural:
Competencia entre la misma especie
Competencia entre diferentes especies
Competencia predador presa

Derivacin gentica: Las caractersticas ms comunes


en una poblacin a veces da lugar a fenmenos de
especializacin
Bsqueda, Optimizacin y Aprendizaje

Mecanismo de cambio en la evolucin


Los que aumentan la variabilidad:
Mutacin: Es una alteracin del cdigo gentico. En muchos
casos son letales pero a veces se da el caso que aumenta la
supervivencia del individuo
Flujo gentico: Intercambio de material gentico entre seres
vivos de diferentes especies. Suelen ser virus o bacterias que
incorporan a su material gentico procedentes de una especie
a la que han infectado.
Recombinacin: Cuando las dos clulas sexuales (masculina
y femenina) se combinan, los cromosomas de cada una
tambin lo hacen, intercambindose genes, que a partir de
ese momento pertenecern a un cromosoma diferente.
Bsqueda, Optimizacin y Aprendizaje

Mecanismo de cambio en la evolucin


En resumen, de la seleccin natural podemos afirmar:

La evolucin ocurre a nivel de los cromosomas.


Los cromosomas codifican la estructura de los seres.
La seleccin natural relaciona los cromosomas con la
calidad de ejecucin del ser codificado.
Durante la reproduccin ocurre la evolucin.
Mutacin y recombinacin del material gentico son los
mecanismos bsicos de reproduccin.
La evolucin natural no posee memoria. En el banco
gentico de la poblacin actual est todo lo que se conoce
sobre la especie.
Programas Evolutivos

Son procesos estocsticos de cmputo iterativo


ejecutados sobre una poblacin de estructuras
que representan soluciones potenciales a un
problema

Los programas evolutivos enfocan el proceso de


resolucin de problemas a travs de una
dinmica evolutiva, emulando la seleccin de los
ms aptos y la reproduccin de las especies
Algoritmo para modelar el proceso de
evolucin natural
Inicializar una
Poblacin de Individuos

Aplicar
Presin Ambiental

No Estn los
Seleccionar Si
Parejas de Padres Individuos Terminar
Deseados?

Reproduccin

Poblacin Hija
Elementos a emular para representar
problema de bsqueda
Inicializar una
x1 x2
Poblacin de Individuos x3
x5
x4 ooo
La informacin se determina
en los cromosomas Espacio de Soluciones

Los cromosomas codifican Problemas a resolver:


la estructura de los seres.
Representacin Gentica.
La codificacin y
La inicializacin de la
decodificacin de la
informacin a nivel poblacin.
gentico es esencial para Funciones para Codificar y
la existencia. para Decodificar.
Elementos a emular para representar
problema de bsqueda
Representacin Gentica,
Inicializar, x1 x2
func: Codificar y Decodific x3
x5
x4 ooo
Aplicar
Presin Ambiental
Qu tan bueno es cada punto del
Espacio de Soluciones ?
Para sobrevivir, todo ser vivo Problema a resolver:
debe adaptarse a las Crear una funcin de Adaptacin:
condiciones planteadas por el Fadap(xi) Nmero Positivo.
ambiente:
Temperatura, Humedad, La funcin se crea directamente con
Presin Atmosfrica, etc. el problema.
Elementos a emular para representar
problema de bsqueda
Representacin Gentica, Cmo escoger a los
Inicializar,
func: Codificar y Decodific
ms aptos ?

Funcin de Adaptacin:
FAdap Emular el Darwinismo:
Darwinismo
Seleccin de los cromosomas
ms aptos (segn FAdap), de a
Seleccionar pares, para la Reproduccin.
Parejas de Padres
Problema a resolver:
Mecanismo de Seleccin
Elementos a emular para representar
problema de bsqueda
Representacin Gentica, Cmo combinar las
Inicializar, caractersticas de los padres para
func: Codificar y Decodific
obtener los hijos ?

Funcin de Adaptacin:
Emular la Reproduccin Sexual:
Sexual
FAdap Asegura Recombinacin y
mezcla de rasgos de los padres
en los hijos.
Mecanismo de
Seleccin
Problema a resolver:
Crear Operadores de Reproduccin
Reproduccin
(a nivel de cromosomas): Cruce
y Mutacin
Elementos a emular para representar
problema de bsqueda
Representacin Gentica, Quienes mueren de la
Inicializar, poblacin y cmo son sustituidos
func: Codificar y Decodific
por sus hijos ?

Funcin de Adaptacin:
Emular la supervivencia:
supervivencia
FAdap Los padres mueren pero los
mejor adaptados transmitieron
sus genes a la poblacin hija.
Mecanismo de
Seleccin
Problema a resolver:
Reemplazo de la poblacin
Operadores Genticos:
Cruce y Mutacin

Poblacin Hija
Elementos a emular para representar
problema de bsqueda
Representacin Gentica, Por ltimo:
Inicializar,
func: Codificar y Decodific Considerar Parmetros de Control.

Funcin de Adaptacin:
FAdap

No Estn los
Mecanismo de Si
Seleccin Individuos Terminar
Deseados?

Operadores Genticos:
Cruce y Mutacin

Reemplazo de la
poblacin
Pseudocdigo de los Programa
Evolutivos
inicio
t 0
inicializar P(t) // Tomando ptos del espacio de soluciones
evaluar P(t) // Aplicar FAdap
mientras (no estn los individuos deseados o
no se cumpla cond. terminacin) hacer
seleccionar individuos ms aptos de P(t)
P(t+1) reproduccin con individuos seleccionados
evaluar P(t+1) // Aplicar FAdap a nuevos indiv.
t t+1
fin mientras
fin

You might also like