Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Enlugardeenvidiarlanaturaleza
debemosemularlaHolland
Algoritmos genticos
Algoritmosbasadosenlosprincipiosdelaevolucin
natural
Seutilizanenproblemasdondenosepuedenencontrar
solucionesoestasnosonsatisfactorias
Funcionamientobsico:Segeneradeformaaleatoriauna
poblacininicialdesolucionespotenciales,seentraen
unprocesoiterativoquetrasformalapoblacinatravs
de:
unaevaluacindelassolucionesqueformanla
poblacin
seleccindelasmejoresyreproduccin
recombinacindeestasformandounanueva
poblacin
Componentesdeunalgoritmo
gentico
Unarepresentacingenticadelassolucionesdel
problema
Unaformadecrearunapoblacininicialdesoluciones
Unafuncindeevaluacincapazdemedirlabondadde
cualquiersolucin
Unconjuntodeoperadoresgenticoscomoreglasde
transicinprobabilsticasparaguiarlabsqueda
Elvalordeunosparmetrosdeentradaqueelalgoritmo
genticoutilizarparaguiarsuevolucin
Esquema bsico
Procedimiento AG
Inicio
t:=0;
inicializar P(t);
evaluar P(t);
mientras (no condicin de terminacin) hacer
t:=t+1;
reproducir P(t-1) en P(t);
recombinar P(t);
evaluar P(t);
Fin_mientras;
Fin.
Esquema bsico
Representacin
Cadenas binarias (generalmente) de longitud determinada
por el nmero de variables existentes en una solucin y el
nmero de bits necesarios para representarlas;
cromosomas o estructuras
Representacin
Cada iteracin ser una generacin; cit = (bi1t...bilt)
representa el cromosoma ci de la generacin t, b ser un
gen o un elemento del vocabulario elegido.
PodemosrepresentarunindividuoXitenunageneracin
determinadat,comolaterna:
Xit=(cit,xit,fit)
xitesladecodificacindelcromosoma(fenotipo)yfites
laadecuacindelasolucin
Obtencindelapoblacininicial
Conjuntodeindividuosdenmerom,(mparmetro)P(t)=
{Xit,....Xit}
InicializacindeunindividuoXi0consisteenasignarun
valoraleatorioacadaunodelosgenesbij0,conla
decodificacinobtenemossufenotipoxi0yfi0lo
obtendremosatravsdelafuncindeevaluacin.
01101
m=4
11000
01000
10011
Funcindeevaluacin
Objetivo:medirlaadecuacindeunasolucinenuna
generacint
Lafuncindeevaluacinsecorrespondeconlafuncin
objetivodelproblema
Dadouncromosomacit,ysufenotipoxitpodemosobtenersu
adecuacinfitcomo:
fit=eval(cit)=f(xit)
Funcindeevaluacin
fit=eval(cit)=f(xit)enestecasof(x)=x2
Codificacin Decodificacin Fitness
ci
xi
fi
01101
11000
01000
10011
13
24
8
19
169
576
64
361
1170
OperadoresGenticos
Reproduccin:Incluyeunalgoritmodeseleccinyun
algoritmodemuestreo
Elalgoritmodeseleccinasignaunaprobabilidadde
seleccinacadacromosoma
Elalgoritmodemuestreoproducecopiasdelos
cromosomasdelageneracint1alageneracint
Loscromosomasconmayorprobabilidaddeseleccinse
reproducirnunnmerodevecesmayorytendrnmayor
repercusinenlassiguientesgeneraciones.
OperadoresGenticos:selecciny
muestreo
ci
ci
01101 13
169
14.4
1 copia
11000 24
576
49.2
2 copias
01000 8
64
5.5
10011 19
361
30.9
1170
100
0 copias
1 copia
OperadoresGenticos:esquemas
deseleccinymuestreo
Basado en el rango:
Se mantiene el porcentaje de la poblacin.
Los M peores se substituyen por la descendencia de los mejores.
Diferentes variantes
Rueda de ruleta:
Los cromosomas de la generacin actual en una cantidad
proporcional a su bondad
Seleccin de torneo:
Se escoge aleatoriamente un nmero T de individuos, gana el que
mejor se adapta, se repite hasta obtener el nmero de individuos
deseados
OperadoresGenticos:cruce
Cruce:
Dependiendodeunaprobabilidadinicial,probabilidad
decruceseleccionamosdeformaaleatorialos
cromosomasquevanaparticiparenelapareamiento
Acontinuacinaplicamosalgunatcnicadecruce,por
ejemploelcrucesimple
11000
10000
10011
11011
OperadoresGenticos:cruce
Cruce de n puntos:
los cromosomas se cortan por n puntos
aleatorios y se intercambia el material gentico
Cruce uniforme:
cada gen se obtiene de la madre o del padre de
forma aleatoria
OperadoresGenticos:cruce
OperadoresGenticos:mutacin
Mutacin:
Suobjetivoesproducirdiversidadenlapoblacin
Teniendoencuentaunaprobabilidad,probabilidadde
mutacin,ydeformaaleatoriasealteraunbitogen
deuncromosoma
Unavezaplicadoslosoperadores,seevaladenuevola
poblacin
OperadoresGenticos
Parmetros:
Tamaodelapoblacin
Nmerodegeneraciones
Probabilidaddecruce
Probabilidaddemutacin
Ejemplo:valoresaceptadosparafuncionesdeoptimizacin
Tamaodelapoblacin:50100
Probabilidaddecruce:0.60
Probabilidaddemutacin:0.001
EL problema de la mochila
N objetos para meter en una mochila
Cada objeto i, tiene un pero pi, y si se mete en la
mochila produce un beneficio bi
Objetivo: Llenar la mochila obteniendo el
mximo beneficio:
Maximizar
bi xi sujeto a pi xi C
1 i n
xi 0,1 , bi 0, pi 0
1 i n
El problema de la mochila
Representacin
X=(x1, x2,...xn) xi pertenece a (0,1)
!! Pueden haber individuos que no cumplen las restriciones!!
Funcin de evaluacin:
C
b x
1i n
b x
1 i n
i i
i i
si
b x
1 i n
en otro caso
i i
Problema de la mochila
Con la funcin de evaluacin eliminamos
las soluciones no factibles
Se generan individuos de forma aleatoria
El operador de cruce, se puede usar el
cruce simple
Se puede seguir el esquema general
Fundamentos de AG
Esquema:patrndesimilitudquedescribeun
subconjuntodecadenasconsimilitudesenciertas
posiciones
Aumentamoselvocabularioconelsmbolo*,en
lasposicionesenlasqueapareceestesmbolo
puedehabercualquierelementodelalfabeto
inicial.
OrdendeunesquemaO(E):nmerode
posicionesfijasenl
Fundamentos de AG
LongituddeunesquemaL(E):distanciaentrela
primeraylaltimaposicindefinidaenel
esquema
Cadaristraperteneceatodaslasregiones
(esquemas)enlascualesaparececualquieradesus
bits
Elnmerodeesquemasprocesadostilmentepor
unalgoritmogenticoquemanejeunapoblacin
denindividuosesdelordendem3.Paralelismo
implcito
Fundamentos de AG
Aplicacin del operador seleccin: La
probabilidad de seleccionar un cromosoma
perteneciente a un esquema E, viene dada por el
cociente entre la adecuacin media de los
representantes de un esquema y la adecuacin
mediadelapoblacinenuninstantet.
m(E,t+1)=m(E,t).fpro(E)/fpro
m(E,t) nmero de representantes del esquema E
enlageneracint
Fundamentos de AG
Aplicacindeloperadorcruce:
SiA=BNosedestruyeningnesquema
Si el orden del esquema es cero, no ser destruido
nunca
Si la longitud del esquema es uno la probabilidad de
queseadestruidoes1/m1
Silalongituddelesquemaesdoslaprobabilidades
2/m1.EngeneralL(E)/m1
Teniendoencuentalaprobabilidaddeaplicarelcruce
PcL(E)/m1
Fundamentos de AG
Aplicacindeloperadormutacin:
Pmprobabilidaddemutacin,1Pmprobabilidaddequeun
gensobreviva
O(E).Pmprobabilidaddequesobrevivantodoslosdeun
cromosoma
Siconsideramosunesquemaporencimadelamediae%,
elefectodeloperadorreproduccin,encadageneracinlos
esquemasporencimadelamediarecibenunincremento
exponencialdesusrepresentantes
m(E,t+1)=m(E,0)(1+e)t
Fundamentos de AG
Si consideramos tambin el efecto del operador cruce y
mutacin:
m(E,t+1)>=m(E,t).(fpro(E)/fpro).[1PcL(e)/(m1)O(E)Pm
Teoremadelesquema:
Losesquemasdelongitudcorta,ordenbajoyadecuacin
porencimadelamediarecibenunincrementoexponencial
ensubsiguientesgeneracionesdeunalgoritmogentico
Fundamentos de AG
Tutoriales
http://geneura.ugr.es/~jmerelo/ie
http://www.cs.qub.ac.uk/~/M.Sullivan/ga/ga_index.html
http://polaris.lcc.uma.es/~ccottap/semEC/
http://cs.felk.cvut.cz/~xobitko/ga/
http://lisisu02.fis.usal.es/~curdoc7/
Se encuentran un tutoriales sobre algoritmos genticos, y
direcciones donde se pueden encontrar algoritmos
simples, con los que se puede jugar cambiando
parmetros del algoritmo