Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Algoritmos Géneticos
Algoritmos Géneticos
100056426@alumnos.uc3m.es
100056173@alumnos.uc3m.es
ABSTRACT
2.1 ALGORITMO
1 INTRODUCCIN
Un algoritmo es una serie de pasos organizados que describe el
proceso que se debe seguir, para dar solucin a un problema
especfico. En los aos 1970, de la mano de John Henry
Holland, surgi una de las lneas ms prometedoras de la
inteligencia artificial, la de los algoritmos genticos. Son
llamados as porque se inspiran en la evolucin biolgica y su
base gentico-molecular.
Por lo tanto, son tcnicas de resolucin de problemas de
optimizacin, que se basan en emular la HERENCIA
GENTICA y el PRINCIPIO DE SUPERVIVENCIA.
En la naturaleza los individuos de una poblacin compiten
entre s en la bsqueda de recursos tales como comida, agua y
refugio. Incluso los miembros de una misma especie compiten
a menudo en la bsqueda de un compaero. Aquellos
individuos que tienen ms xito en sobrevivir y en atraer
compaeros tienen mayor probabilidad de generar un gran
nmero de descendientes. Por el contrario, individuos poco
dotados producirn un menor nmero de descendientes. Esto
significa que los genes de los individuos mejor adaptados se
t=0;
Crear poblacin inicial P(t);
Evaluar P(t);
Repetir hasta condicin de finalizacin
o t = t +1;
o Seleccin P(t-1) P(t);
o Cruce P(t);
o Mutacin P(t);
o Evaluar P(t);
2.4 EVALUACIN
La evaluacin consiste en asignar una SALUD a los individuos
de la poblacin. Lo ms sencillo, si se puede, es utilizar el
valor de la funcin objetivo.
0 x 7 , 0 y 15 .
8 m = 3 ) y para
m
la variable y necesitamos cuatro ( 2 14 m = 4 ).
2.5 SELECCIN
La seleccin determina los individuos que van a ser padres
de la siguiente generacin. Es un intento de imitacin de la
SELECCIN NATURAL, es decir, supervivencia del
individuo ms sano. En nuestro caso, los individuos ms sanos
son aquellos que tienen mejor salud.
El mtodo de seleccin consiste en tomar tantos padres como
el tamao de la poblacin y asignando a cada individuo una
salud relativa de acuerdo a su contribucin a la salud total de
la poblacin. Es el conocido MTODO DE LA RULETA.
Pi =
si
(0.1)
s
j =1
gen 2
(y )
2.6 CRUCE
El cruce consiste en combinar las cadenas de caracteres de los
padres por parejas y obtener su descendencia, imitando la
HERENCIA GENTICA, es decir, el hijo tendr
caractersticas de los padres.
DE
ALGORITMOS
3
DISEO
GENTICOS
Formarn
parte
de
los
cromosomas
Cromosoma = [ v1 , v2 ,..., vn ] .
0 1 1 1 0
Hijo
0 1 0 0 0
Madre
1 1 0 0 0
Hija
1 1 1 1 0
2.7 MUTACIN
2m 1 (m = nmero de bits).
Rango de la variable: [Vmax , Vmin ]
Exactitud
Nmero de intervalos:
longitud
del
intervalo
(Vmax Vmin ) / (2 1) .
2m
(extremo
Otras codificaciones:
Reales.
Especficas del problema. Caso especial en
problemas de permutacin, que veremos ms
adelante.
Tamao grande:
Invertida:
o La mitad de la muestra al azar y la otra
mitad por inversin binaria.
o Uniformidad en binario. Se asegura contar
inicialmente con todo el material gentico
y a partes iguales
o .
3.4 EVALUACIN
Problemas que pueden surgir en la funcin objetivo:
Aleatoria parcial:
o Se divide el tamao de la muestra entre el
nmero de parmetros.
o Se hacen k submuestras, en las que uno de
los
parmetros
toma
valores
uniformemente repartidos y los otros
valores aleatorios.
Escalado:
o
Traslacin: f = f + b trasladamos el
cero a la cota inferior, y nos resuelve el
problema de minimizacin. Esto nos puede
meter en el problema de que NO sea
discriminatorio.
'
f ' = a f +b.
Escalado lineal
Escalado potencial
f ' = f k.
Ranking.
f ' = CotaSup. f
1
f'= .
f
Cota Superior
Inversa
3.5 SELECCIN
Independientemente del mtodo de seleccin, una posibilidad
consiste en reducir los aspirantes a padres a los mejores:
3.6 CRUCE
Tiene tres etapas:
3.7 MUTACIN
A una pequea parte de la poblacin, se le introducen cambios
en su material gentico.
La tasa a la que se introducen estos cambios, puede ser:
4 ALGORITMOS
RESTRICCIONES
GENTICOS
CON
y
generacin actual
=
G n de generaciones a ejecutar
y = 1, 2,...
(0.2)
Regin Factible
Regin No Factible
Padre
Madre
Hijo
Hija
4.1 PENALIZACIONES
Consiste en aadir a la funcin objetivo penalizaciones que se
aplican cuando se violan las restricciones.
4.2.2 CRUCE OX
Padre
Madre
Hijo
Hija
5 APLICACIN AL PROBLEMA DE LA
MOCHILA
Un problema tpico de programacin es el que nos ocupa, el
problema de la mochila [4], que responde a la siguiente
situacin: imagnese hacer una excursin a la que solo
podemos llevar una mochila que, lgicamente, tiene una
capacidad limitada. Cada objeto que introducimos ocupa un
volumen dentro de la misma y en contrapartida durante el viaje
nos proporcionar un beneficio o utilidad (ejemplo: una
cantimplora), el problema surge cuando debemos elegir qu
objetos seleccionar para llevar en la mochila de forma que
nuestro beneficio sea mximo (tengamos todo lo necesario) sin
exceder su capacidad.
Los datos del problema son los siguientes:
4.2.3 CRUCE CX
Padre
Madre
6
Tabla 1. Tabla de pesos y beneficios.
Hija
pi
30
20
22
10
bi
100
75
80
40
20
Figura 4.4.Cruce CX .
Los elementos vienen de los padres en la misma posicin.
0 en el caso contrario.
px
i =1
i i
C.
(0.3)
p x
i
max z = bi xi .
(0.4)
i =1
individuo
1
0
1
1
0
x1 x2 x3 x4 x5
z = bi xi
i =1
i =1
s = bi xi k ( pi xi c) + ,
(0.8)
donde,
0
n
( pi xi C ) + = n
i =1
p x C
i
i
i =1
si
p x
i =1
(0.9)
si pi xi > C
i =1
(0.5)
i =1
z = bi xi = 100 + 80 + 1 = 220
(0.6)
i =1
px
i =1
i i
= 30 + 22 + 10 = 62 > 40
(0.7)
0 0 1 1 0
1 1 0 0 1
1 1 1 1 0
0 0 0 0 1
0 0 0 1 1
1 1 1 0 0
s = 80 + 40 = 120
1
peso = 22 + 10 = 32
Salud
Salud Relativa
120
0,3896
0,0032
60
0,1948
76
0,2468
20
0,0649
31
0,1006
Total
308
6 REFERENCIAS
[1]
[2]
[3]
[4]
[5]