Você está na página 1de 36

Inteligencia Artificial

I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Algoritmos genticos
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
En la naturaleza todos los seres vivos se enfrentan a
problemas que deben resolver con xito, como
conseguir ms luz solar o conseguir comida.
La Computacin Evolutiva interpreta la naturaleza
como una inmensa mquina de resolver problemas y
trata de encontrar el origen de dicha potencialidad
para utilizarla en programas de computador.
Bases
Computacin evolutiva: ciencia computacional cuyos
algoritmos imitan el proceso evolutivo de la
naturaleza.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Existen problemas que no pueden solucionarse por
mtodos matemticos o analticos; quizs la nica
forma de resolverlos es a travs de mtodos de
prueba y error dirigidos.
Buscar donde se cree que hay un posible resultado,
podra ser similar al proceso que sigue la naturaleza.
Copiar la manera como opera la naturaleza se crean
algoritmos que utilizan los operadores que
reproducen los procesos genticos.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Introduccin
Un Algoritmo Gentico (AG) [Goldberg, 1989] es una
clase de algoritmo de bsqueda estocstica, basado en
los mecanismos de seleccin natural.
Combinan la supervivencia de los mejores individuos,
intercambiando informacin estructurada, de manera
aleatoria e imitando los procesos de evolucin
biolgica.
Los AG son una original tcnica de resolucin de
problemas empleando procesos evolutivos.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
La Computacin Evolutiva (o Algoritmos Evolutivos)
agrupa a los Algoritmos Genticos, las Estrategias
Evolutivas y la Programacin Evolutiva.
Estas tcnicas son muy parecidas y comparten
muchos aspectos.
Introduccin
Un Algoritmo Evolutivo es una tcnica de resolucin
de problemas utilizando mtodos inspirados en la
evolucin de los seres vivos.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Introduccin
En un Algoritmo Evolutivo se define una estructura
de datos que admita las posibles soluciones a un
problema.
Cada uno de los posibles conjuntos de datos
admitidos por esa estructura ser una solucin al
problema.
Unas soluciones sern mejores que otras. Solucionar
un problema consiste en hallar una solucin ptima, y
por tanto, los Algoritmos Evolutivos son en realidad
un mtodo de bsqueda para encontrar una posible
solucin.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
En cada generacin se crea un nuevo conjunto de
criaturas artificiales con las partes ms aptas de las
generaciones anteriores.
Los AG son evolutivos.
Explotan la informacin histrica.
Exploran con nuevos puntos de bsqueda esperando
un mejor comportamiento.
Introduccin
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Basadas en el
Clculo
Indirectos
Reconocido
Simulado
Algoritmos
Evolutivos
Bsqueda
Aleatoria
Tcnicas de
Bsqueda
Tcnicas
Enumerativas
Programacin
Dinmica
Algoritmos
Genticos
Paralelos Secuenciales
Directos
Introduccin
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
El objetivo de los AG es:
1. Explicar rigurosamente los procesos adaptativos
de los sistemas naturales.
2. Disear software de sistemas artificiales, que
contenga los mecanismos principales de los sistemas
naturales.
3. Aplicar los procesos evolutivos de los seres a la
programacin.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Por qu utilizar AG en optimizacin y
bsqueda?
Los mtodos tradicionales, pueden encontrar
soluciones ptimas a problemas especficos, que se
presentan en casos especiales. No son robustos.
Los mtodos indirectos buscan extremos locales,
solucionando las ecuaciones al definir el gradiente de
la funcin objetivo igual a cero.
Es la generalizacin multidimensional de la nocin
del clculo elemental de puntos extremos.
El concepto de optimizacin es un problema relativo a la
cantidad de informacin que se tenga en un momento dado.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
La naturaleza contiene muchos ejemplos de uso de
escogencia aleatoria, como herramienta en un proceso
de bsqueda directa.
El recocido simulado usa procesos aleatorios para
ayudar a guiar su bsqueda para estados de energa
mnimos.
Los mtodos convencionales no cumplen
requerimientos de robustez que requiere el mundo
real.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Los AG no quedan recluidos en mnimos o mximos
locales.
Usan la aptitud de las cadenas para dirigir la
bsqueda; por lo que no se requiere amplio
conocimiento especfico del problema.
Operan adecuadamente sobre espacios de bsqueda
que tienen saltos o ruido.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Diferencia de los AG
con los mtodos tradicionales
Utilizan reglas de transicin probabilsticas, no
determinsticas.
Trabajan con una codificacin del conjunto de
parmetros, no con los parmetros.
Buscan en una poblacin de puntos, no en un solo
punto.
Usan la informacin que resulta de cada
evaluacin, no la derivada.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Generan poblaciones sucesivas utilizando
operadores genticos artificiales similares a los
biolgicos.
La bsqueda en paralelo sobre los individuos de
la poblacin, contribuye a la robustez que
demuestran los AG.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Los mecanismos de un AG simple son
sorprendentemente sencillos.
Lo ms complejo que incluyen es la copia de
cadenas y el intercambio parcial de cadenas.
La simplicidad de operacin y el poder de
efectividad son las principales atracciones
del enfoque utilizado por los AG.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Algoritmo Gentico Simple
AGs
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
El objetivo principal de un Algoritmo gentico es el
de evolucionar a partir de una poblacin de
soluciones para un determinado problema,
intentando producir nuevas generaciones que sean
mejores que las anteriores.
Estos algoritmos operan en un ciclo simple:
Creacin de la poblacin inicial, seleccin y
reproduccin, ste ltimo implicando una
recombinacin y mutacin del material gentico de
las soluciones.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Los cromosomas de la poblacin tienen la forma de
una cadena de bits.
Cada gen, posicin, en el cromosoma tiene dos
posibles valores: 0 y 1.
Cada cromosoma es un punto en el espacio de
bsqueda.
El AG procesa poblaciones de cromosomas
sucesivamente.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
La aptitud de un cromosoma depende de que tan
bien la solucin resuelva el problema.
Remplazan una poblacin por otra a medida que
avanzan las generaciones.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Un AG involucra tres tipos de operadores:
Seleccin, Cruce y Mutacin.
Seleccin.
Selecciona cromosomas de la poblacin para su
reproduccin basado en la aptitud.
Cruce.
Realiza la recombinacin de dos cromosomas
(organismos) para generar nuevos cromosomas.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
1 0 0 0 0 1 0 0 1
1 1 1 1 1 1 1 1 0
Hijo 1
Padres
1 0 0 1 1 1 1 1 0
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
1 0 0 0 0 1 0 0 1
1 1 1 1 1 1 1 1 0
Hijo 2
Padres 111 001001
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Cambia aleatoriamente bits en un cromosoma de
acuerdo a una probabilidad.
Por ejemplo, la cadena 00000100 puede ser
mutada en su segunda posicin y producir
01000100.
Facilita hacer una exploracin completa para
evitar concentracin de los genes ms aptos en
mximos locales.
Mutacin
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
AG
Dada una definicin del problema a resolver, se
representa en cadenas de smbolos las soluciones
candidatas.
Un AG simple trabaja as:
Generacin de poblacin inicial.
Aleatoriamente: k cromosomas de l bits (soluciones
candidatas para la solucin del problema).
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Repetir hasta que m hijos hayan sido creados.
2. Seleccionar pares de cromosomas de la poblacin.
3. Con probabilidad p
c
, se cruza un par de cromosomas
en un punto escogido al azar, para formar dos hijos.
4. Con probabilidad p
m
se elige sustituir el dgito en
posiciones de la cadena de unos hijos.
5. Reemplazar los nuevos cromosomas para una nueva
poblacin (actual).
Regresar al paso 1.
1. Calcular la aptitud f(x) de cada cromosoma x en la
poblacin.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
La probabilidad de seleccin est dada de acuerdo a
la aptitud de cada cromosoma.
La seleccin se hace sin reemplazo o con reemplazo.
Un cromosoma puede seleccionarse ms de una vez
para ser padre.
La seleccin es un proceso en que los cromosomas se
llevan a la siguiente generacin, con base en los
valores de su funcin objetivo f .
Cada iteracin se llama generacin.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Al final del proceso se encuentran usualmente uno o
ms cromosomas con una muy buena aptitud en la
poblacin.
Debido a la aleatoriedad, dos ejecuciones producen
diferentes comportamientos.
La estructura del cromosoma podra ser variable.
Las rutinas de seleccin, cruce y mutacin se realizan
tan sofisticadas como se desean.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
La copia de cadenas, con base en el valor promedio de
aptitud, permite que cadenas con un valor mayor de
aptitud, tengan mayor probabilidad de contribuir con
uno o ms descendientes en la siguiente generacin.
En la naturaleza la aptitud esta determinada por la
habilidad para sobrevivir a depredadores, pestes, etc.,
para llegar a adultos y reproducirse.
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Los AG representan un nuevo mtodo de bsqueda
en espacios de solucin intrincados.
Se basan en un proceso evolutivo artificial, en el
cual una poblacin de individuos se modifica en
funcin del tiempo por la aplicacin de un
conjunto de operadores simples.
Conclusiones
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Son un nuevo mtodo de solucin a problemas de
ingeniera.
La capacidad que tienen para encontrar un
balance entre la explotacin y la exploracin de
soluciones a lo largo de su evolucin es su gran
atractivo.
La estructura general del algoritmo usualmente es
la misma para cualquier aplicacin prctica.
Conclusiones
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l
Garantizan la bsqueda de un mejor ptimo para
las condiciones particulares del problema a travs
de un procedimiento aleatorio de ensayo y error.
Aunque la tarea es buscar una representacin
adecuada del dominio del problema mediante
cadenas de bits, la funcin de aptitud, las
restricciones que deben tener los operadores
genticos para que las soluciones propuestas sean
factibles; son algoritmos fciles de implementar.
Conclusiones
I
n
t
e
l
i
g
e
n
c
i
a

A
r
t
i
f
i
c
i
a
l

Você também pode gostar