Está en la página 1de 9

Algoritmos genticos:

Aplicacin al problema de la mochila.

Javier Hidalgo Snchez Jess Ignacio Turrado Martnez


Universidad Carlos III de Madrid Universidad Carlos III de Madrid
Coria, Cceres, Espaa Len, Espaa
100056426@alumnos.uc3m.es 100056173@alumnos.uc3m.es

ABSTRACT propagarn en sucesivas generaciones hacia un nmero de


individuos creciente. La combinacin de buenas caractersticas
En los aos 70, surgi una de las lneas ms prometedoras de procedentes de diferentes predecesores, puede a veces producir
la inteligencia artificial, los algoritmos genticos. Reciben este superindividuos", cuya adaptacin es mucho mayor que la de
nombre, porque se inspiran en la evolucin biolgica. cualquiera de sus antecesores. De esta manera, las especies
Realizaremos una descripcin del Algoritmo Gentico Simple, evolucionan logrando unas caractersticas cada vez mejor
que es la base de los algoritmos genticos. Posteriormente adaptadas al entorno en el que viven.
veremos una serie de mejoras u extensiones del AGS para
adaptar el algoritmo a cada tipo de problema. Para finalizar,
ilustraremos la teora con un ejemplo: El problema de la Los Algoritmos Genticos son adecuados en aquellos
Mochila. A pesar de ser un problema relativamente simple, problemas para los cuales no existen tcnicas especializadas.
esta situacin se presenta con cierta frecuencia en los mbitos Incluso en el caso en que dichas tcnicas existan, y funcionen
econmico e industrial, donde la mochila suele representar la bien, pueden efectuarse mejoras de las mismas combinndolas
restriccin presupuestaria (cantidad mxima de recursos con los Algoritmos Genticos.
econmicos de los que se dispone) y donde la utilidad de los
objetos seleccionados se equipara a un beneficio econmico
por adquirir o llevar a cabo ciertas acciones. 2 ALGORITMO GENTICO SIMPLE

Keywords: algoritmo gentico, problema de la mochila. 2.1 ALGORITMO

El algoritmo gentico simple (AGS) es de la siguiente manera:


1 INTRODUCCIN
Un algoritmo es una serie de pasos organizados que describe el
proceso que se debe seguir, para dar solucin a un problema t=0;
especfico. En los aos 1970, de la mano de John Henry Crear poblacin inicial  P(t);
Holland, surgi una de las lneas ms prometedoras de la Evaluar P(t);
inteligencia artificial, la de los algoritmos genticos. Son Repetir hasta condicin de finalizacin
llamados as porque se inspiran en la evolucin biolgica y su o t = t +1;
base gentico-molecular. o Seleccin P(t-1)  P(t);
o Cruce P(t);
o Mutacin P(t);
Por lo tanto, son tcnicas de resolucin de problemas de o Evaluar P(t);
optimizacin, que se basan en emular la HERENCIA
GENTICA y el PRINCIPIO DE SUPERVIVENCIA.
Siendo t la variable temporal y P(t) la poblacin en cada
instante de tiempo.
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 2.2 REPRESENTACIN DE VARIABLES
a menudo en la bsqueda de un compaero. Aquellos La representacin de variables en algoritmos genticos guarda
individuos que tienen ms xito en sobrevivir y en atraer un paralelismo con la gentica: cada SOLUCIN del problema
compaeros tienen mayor probabilidad de generar un gran (FENOTIPO) se representa por un INDIVIDUO de la
nmero de descendientes. Por el contrario, individuos poco poblacin (GENOTIPO).
dotados producirn un menor nmero de descendientes. Esto
significa que los genes de los individuos mejor adaptados se
La poblacin inicial ene l algoritmo gentico simple (AGS) se
genera de forma aleatoria.

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.

La funcin objetivo (o funcin de adaptacin) para cada


Figura 2.1. Paralelismo con la gentica. cromosoma devuelve un nmero real, que se supone es
proporcional a la adaptacin del individuo al problema.

Los individuos (o genotipos) estn formados por una cadena


de caracteres o CROMOSOMAS. En la seccin 3 se vern diferentes mtodos de adaptacin de
la funcin objetivo a cada tipo de problema.

Los cromosomas estn formados por GENES o caracteres que


representan la codificacin en binario de las VARIABLES de 2.5 SELECCIN
optimizacin. A veces se identifica un GEN con cada carcter
La seleccin determina los individuos que van a ser padres
y otras veces se identifica un gen con el conjunto de caracteres
de la siguiente generacin. Es un intento de imitacin de la
que representan una variable.
SELECCIN NATURAL, es decir, supervivencia del
individuo ms sano. En nuestro caso, los individuos ms sanos
Los genes pueden tomar dos diferentes VALORES (0, 1), que son aquellos que tienen mejor salud.
se denominan ALELOS.
El mtodo de seleccin consiste en tomar tantos padres como
Supongamos que tenemos un problema en el que hay dos el tamao de la poblacin y asignando a cada individuo una
variables x, y
salud relativa de acuerdo a su contribucin a la salud total de
cuyos valores estn acotados:
la poblacin. Es el conocido MTODO DE LA RULETA.
0 x 7 , 0 y 15 . Observamos que la variable x
puede tomar ocho valores diferentes, y la y puede tomar
si
diecisis. Esto significa que para codificar la variable x Pi = N
(0.1)
8 m = 3 ) y para
s
m
necesitamos un gen de tres alelos ( 2
j
la variable y necesitamos cuatro ( 2 14 m = 4 ).
m
j =1
Tendremos entonces un cromosoma de siete alelos formado
por dos genes. Si x = 2 e y = 7 , la representacin en Tomemos como ejemplo la Figura 2.3: suponemos que
tenemos cuatro cromosomas. En la ruleta representamos su
binario del individuo es la representada en la Figura 2.2. salud relativa. Como observamos, el cromosoma 4 es el que
tiene mayor probabilidad de ser padre de la siguiente
cromosoma
generacin al ser el individuo ms apto. EL caso contrario es
  el cromosoma 1.
individuo: 0 1 0 0 1 1 1
   
gen 1 gen 2
(x) (y )

Figura 2.2. Representacin en binario.

2.3 POBLACIN INICIAL


El objetivo de establecer una poblacin inicial es el de
seleccionar los puntos de partida de la bsqueda en el espacio
de soluciones.
La definicin del tamao de la poblacin es muy importante:
un valor muy grande provocar un consumo mayor de recursos Figura 2.3. Mtodo de la Ruleta
y un valor muy pequeo barrer un espacio de bsqueda
menor y, por ello, tardar ms en encontrar la mejor solucin.
2.6 CRUCE 3 DISEO DE ALGORITMOS
El cruce consiste en combinar las cadenas de caracteres de los GENTICOS
padres por parejas y obtener su descendencia, imitando la
HERENCIA GENTICA, es decir, el hijo tendr 3.1 DEFINIR VARIABLES Y FUNCIN
caractersticas de los padres. OBJETIVO
Hay que tener en cuenta las indicaciones genricas para
cualquier problema de optimizacin. Adems, si es posible,
El mtodo consiste en tres pasos:
intentar acotar el espacio de soluciones.
Emparejamiento: se toman los padres de dos en dos
aleatoriamente, por ejemplo, de acuerdo al orden de
la seleccin). Para definir las variables:
Probabilidad de cruce: de acuerdo a una determinada Formarn parte de los cromosomas
Cromosoma = [ v1 , v2 ,..., vn ] .
probabilidad, los padres se cruzan o pasan a la
siguiente generacin sin cruce, es decir, no tienen
descendencia. Intentar no alargar los cromosomas ms de lo
Cruce: se utiliza el CRUCE SIMPLE, en el que se necesario, ya que eso tiene un coste.
selecciona aleatoriamente una posicin del Determinar si hay un rango posible de valores.
cromosoma a partir de la cual los dos padres
intercambian sus valores.
Para definir la funcin objetivo:
A veces la definicin es clara por la naturaleza del
Para ilustrar el CRUCE SIMPLE vemos la Figura 2.4. Se ha
problema.
elegido aleatoriamente que los padres crucen por la posicin
dos. El hijo tiene los dos primeros genes del padre y los tres Otras veces es compleja su definicin (por ejemplo:
siguientes son de la madre. La hija tiene los dos primeros de la trayectoria de robots) y hay alternativas.
madre y los tres siguientesl del padre. Problema del multiobjetivo.

3.2 REPRESENTACIN DE VARIABLES


Para la discretizacin de las variables continuas, hay que
Padre 0 1 1 1 0 Hijo 0 1 0 0 0 determinar la exactitud:

Nmero de intervalos: 2m 1 (m = nmero de bits).


Rango de la variable: [Vmax , Vmin ]
Madre 1 1 0 0 0 Hija 1 1 1 1 0

Exactitud o longitud del intervalo =
Figura 2.4. Cruce simple.
(Vmax Vmin ) / (2 1) .
m

2.7 MUTACIN
Para la codificacin en binario:
La mutacin tiene como objetivo aadir combinaciones
genticas para favorecer la expansin por el espacio de Cada intervalo de valores de la variable se representa
bsqueda y evitar ptimos locales. Continuando con nuestro con un nico valor en binario.
paralelismo con la naturaleza, la mutacin es una imitacin de V = VMIN + X b (VMAX VMIN ) / (2m 1) .
la MUTACIN GENTICA.
Variantes en el nmero de intervalos = 2m (extremo
inferior, extremo superior, centrada).
El mtodo consiste en cambiar, de acuerdo a una tasa, uno de
los caracteres binarios por su contrario. La tasa de mutacin
Otras codificaciones:
suele ser muy baja para no perder el efecto de la supervivencia
del ms sano. Reales.
Especficas del problema. Caso especial en
problemas de permutacin, que veremos ms
adelante.
0 1 1 0 1
3.3 POBLACIN INICIAL
Lo primero es fijar el parmetro del tamao de la poblacin.
0 1 0 0 1

Los tipos de tamao, pueden ser:


Figura 2.5. Mutacin.
Tamao grande:
o Buena muestra de partida para rastrear el o Compromiso entre asegurar una muestra
espacio de bsqueda. repartida y estocasticidad.
o En general, ms tiempo para llegar a la
solucin ptima.
Tamao pequeo:
o Peligro de convergencia rpida a un
ptimo local.
o Ms rpido
No obstante, hay que estudiar el comportamiento
especfico de CADA PROBLEMA.
En ocasiones, se toma una poblacin inicial con
tamao superior a la poblacin de las sucesivas
generaciones.

Para generar la muestra, se puede proceder de las siguientes


maneras: Figura 3.3. Muestra aleatoria parcial.
Al azar: como en el AGS. Puede salir no
representativa (50% de 0, y 50% de 1). 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 .

Figura 3.1. Muestra aleatoria.

Uniforme: individuos barriendo uniformemente el


espacio de soluciones (fenotipos).
Figura 3.4. Muestra invertida.

Dependencia del problema y en gran medida del


TAMAO.

3.4 EVALUACIN
Problemas que pueden surgir en la funcin objetivo:
Puede dar valores negativos.
Puede ser no discriminatoria, esto significa que
todos los individuos estn en un rango muy
parecido.
Figura 3.2. Muestra uniforme. Que el problema sea de minimizacin.

Las soluciones genricas a estos tres problemas pueden ser:


Aleatoria parcial:
o Se divide el tamao de la muestra entre el Escalado:
Traslacin: f = f + b trasladamos el
nmero de parmetros. '
o
o Se hacen k submuestras, en las que uno de
cero a la cota inferior, y nos resuelve el
los parmetros toma valores
problema de minimizacin. Esto nos puede
uniformemente repartidos y los otros
meter en el problema de que NO sea
valores aleatorios.
discriminatorio.
o Escalado lineal f ' = a f +b. Emparejamiento, que puede ser:
o Por orden: se ordenan todos los
o Escalado potencial f ' = f k. posibles padres de acuerdo a su salud
Ranking. y se forman parejas por orden. A
veces se opta por el orden contrario.
Muy simple y fcil de implementar,
Las soluciones especficas para el problema de minimizacin tpicamente combinado con seleccin
pueden ser: natural previa y todos un hijo.
o Al azar: como en AGS
Cota Superior f ' = CotaSup. f .
1
Inversa f'= . Probabilidad de cruce: se cruza una parte de los
emparejados, de acuerdo a una probabilidad Pc
f
(parmetro a determinar).
Cruce, que puede ser:
3.5 SELECCIN o Cruce simple: Por un punto
determinado al azar.
Independientemente del mtodo de seleccin, una posibilidad
o Cruce mltiple: Por n puntos
consiste en reducir los aspirantes a padres a los mejores:
determinados al azar.
Padres + hijos: Los (N - n) peores mueren. Los n o Cruce uniforme: Bit a Bit con un
mejores son candidatos a padres y componen con sus 50%. Mscara.
(N - n) hijos la siguiente generacin.
Umbral de supervivencia: Sobreviven los que lo
superan. El problema es la determinacin de este 3.7 MUTACIN
umbral y su evolucin, ya que si es fijo, al principio A una pequea parte de la poblacin, se le introducen cambios
no pasa ninguno y al mejorar la poblacin lo pasar en su material gentico.
la mayora. Tambin se produce un nmero variable
La tasa a la que se introducen estos cambios, puede ser:
de individuos que habr que compensar.
Tasa constante: de acuerdo a una probabilidad Pm.
Hay que determinar cuntos hijos va a tener cada individuo de Tasa decreciente: se parte de una Pm relativamente
la poblacin (toda o la parte que haya superado la seleccin alta y rebajarla generacin a generacin (con
previa): exponencial, potencias decrecientes de 2, lineal,).
Esto favorece primero la exploracin y luego la
Todos un hijo: No representa la ida de la convergencia.
supervivencia del ms apto, pero puede tener Tasa variable en funcin de la posicin del Bit:
sentido con seleccin natural previa. Es fcil de favorecer las mutaciones para ajustar la solucin al
implementar. ptimo o para dar grandes saltos. Lo normal es que
Ruleta: Como el AGS. los Bits significativos los determine la seleccin.
Valor esperado: Se calculan las saludes Operador Inversin: invertir un intervalo entero
normalizadas y el nmero de descendientes determinado al azar.
esperado. Se asignan las partes enteras. El resto:
o Reparto determinista: por orden del valor
fraccionario. 3.8 TEST DE FINALIZACIN
o Reparto por ruleta: probabilidad Para realizar el test de finalizacin, se requiere definir antes
proporcional a la fraccin. una serie de criterios, como son:
o Reparto estocstico: orden y probabilidad
igual a la fraccin. Nmero de generaciones: ligado al tiempo del
Torneo: Se toman aleatoriamente conjuntos de algoritmo.
k padres posibles. Los ganadores (mejores) Nmero de evaluaciones: compromiso entre tamao
sern los padres. de la poblacin y nmero de generaciones, es decir,
Elitismo: Este concepto expresa la idea de que si yo aumento el nmero de generaciones para un
el mejor individuo de la actual generacin pase mismo tipo de evaluacin, tendr que disminuir el
sin modificar a la siguiente generacin. De esta nmero de individuos.
forma no se perder el mejor cromosoma. Al Nmero de generaciones sin mejora: existe el peligro
resto de la poblacin se le aplica la de atravesar una fase larga en un ptimo local.
reproduccin normalmente. Suelen ser Acercamiento a un valor conocido de antemano:
algoritmos que convergen ms rpido a la cuando hay un valor objetivo satisfactorio, y se
solucin, aunque esto depender de cada busca principalmente la composicin de valores de
problema. las variables. Es decir, si no s cul es el ptimo,
pero s un valor que me sirve (solucin factible), me
quedo con ella.
3.6 CRUCE
Tiene tres etapas:
4 ALGORITMOS GENTICOS CON
RESTRICCIONES Penalizaciones estticas: no varan con el avance del
algoritmo. El valor de la penalizacin permanece
Los algoritmos genticos se inventaron para poder resolver constante generacin tras generacin.
cualquier problema de optimizacin. Sin embargo, no se
Penalizaciones dinmicas: varan de generacin en
suelen llevar bien en los problemas con restricciones. Para
generacin. Normalmente, se penaliza menos al
ello, existen soluciones standart a los problemas que presentan
principio del algoritmo para favorecer que los
las restricciones.
individuos se agrupen en las zonas buenas
(factibles). Segn avanza el tiempo, la penalizacin
Las restricciones dividen el espacio de bsqueda en zonas crece de valor para matar las soluciones malas (o
factibles y no factibles. Las cuestiones que surgen al resolver no factibles).
problemas mediante algoritmos genticos son varias:
Cmo evaluar los individuos no factibles? y generacin actual
=
Cmo relacionar los individuos factibles y los no G n de generaciones a ejecutar (0.2)
factibles?
Son validos los operadores de seleccin, cruce y
y = 1, 2,...
mutacin que hemos diseado?
Penalizacin mortal: consiste en eliminar a
Por ejemplo, sea el espacio de bsqueda representado en la todos los no factibles. Es una tcnica peligrosa
Figura 4.1, pero, por restricciones del problema, tan slo las cuando la regin de no factibles es grande.
zonas rayadas son posibles soluciones factibles. El problema Superioridad factible: se basa en el principio de
aparece cuando un individuo pertenece a la regin no factible, que cualquier factible es mejor que cualquier no
como el que est sealado. factible.

4.2 OPERADORES ESPECFICOS


Suele ocurrir que al cruzar individuos factibles resulte uno no
factible. Para ello realizamos trucos que aseguren que el
nuevo individuo sea factible. Estos trucos consisten en definir
los operedores de cruce y mutacin de forma que arrojen
soluciones factibles.

4.2.1 CRUCE PMX


?

Padre 0 1 2 3 4 5 6 7 8 9
Regin Factible

Madre 2 3 1 4 5 7 8 0 9 6
Regin No Factible

Hijo 0 1 2 4 5 7 8 3 6 9
Figura 4.1. Espacio de soluciones con restricciones.

Hija 2 7 1 3 4 5 6 0 9 8
Vamos a ver dos mtodos para solucionar los problemas de
individuos no factibles.
Figura 4.2. Cruce PMX1.

4.1 PENALIZACIONES
Se realizan dos cortes al azar y se intercambian las posiciones
Consiste en aadir a la funcin objetivo penalizaciones que se de la ventana central. El resto de valores se toman del original
aplican cuando se violan las restricciones. salvo que ya est colocado. En este caso se busca la
coincidencia en el individuo.
Las penalizaciones suelen medir el grado de infactibilidad
del individuo.

1
No se estn representando valores en binario. Los nmeros
Existen varios tipos de penalizaciones: representan la posicin de los genes.
4.2.2 CRUCE OX Consiste en tomar una ventana al azar del individuo e invertir
las posiciones.

Padre 0 1 2 3 4 5 6 7 8 9 5 APLICACIN AL PROBLEMA DE LA


MOCHILA
Un problema tpico de programacin es el que nos ocupa, el
Madre 2 3 1 4 5 7 8 0 9 6
problema de la mochila [4], que responde a la siguiente
situacin: imagnese hacer una excursin a la que solo
Hijo 2 3 6 4 5 7 8 9 0 1 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
Hija 1 7 8 3 4 5 6 0 9 2 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
Figura 4.3. Cruce OX1. nuestro beneficio sea mximo (tengamos todo lo necesario) sin
exceder su capacidad.

Se toma una ventana central al azar con dos cortes y se


intercambin los genes. El resto de genes se rellena a partir de Los datos del problema son los siguientes:
los valores de la madre en orden.
n: nmero de objetos entre los que se puede elegir.
pi: peso del objeto i-simo que no es ms que una
4.2.3 CRUCE CX forma de hacer referencia a un objeto cualquiera que
pueda ser incluido en la mochila -, es decir, ci
representa el coste de escoger un objeto, en tanto en
cuanto va a ocupar un espacio de la mochila que
dejar fuera otros objetos.
Padre 0 1 2 3 4 5 6 7 8 9 bi: utilidad o beneficio que proporciona el objeto i-
simo.
C: capacidad de la mochila, equivale al presupuesto
mximo del que se dispone. Tomamos C = 40.
Madre 2 3 1 4 5 7 8 0 9 6
Los valores del ejemplo sencillo que vamos a tratar los
recogemos en la Tabla 1.
Hijo 0 1 2 3 4 5 8 7 9 6
Tabla 1. Tabla de pesos y beneficios.
i 1 2 3 4 5
Hija 2 3 1 4 5 7 6 0 8 9 pi 30 20 22 10 7
bi 100 75 80 40 20
1
Figura 4.4.Cruce CX .
Los elementos a introducir en la mochila van a ser nuestras
Los elementos vienen de los padres en la misma posicin. variables objeto de anlisis, cada variable la denotaremos
como xi . Se asignar el valor 1 si llevamos el objeto y con un
0 en el caso contrario.
4.2.4 INVERSIN SIMPLE

La restriccin vendr marcada por la capacidad mxima de la


mochila, de tal forma que la suma de todos los objetos
0 1 2 3 4 5 6 7 8 9 multiplicados por el espacio que ocupan en la mochila no
podr exceder dicha capacidad mxima. Matemticamente:

0 1 2 6 5 4 3 7 8 9
n

Figura 4.5.. Inversin Simple1.


px
i =1
i i C. (0.3)
Tal y como se expresa en la definicin, el objetivo de este
problema es seleccionar aquellos objetos que introducidos en p x i i C es de tipo lineal, por lo que buscaremos una
la mochila nos proporcionan una mayor utilidad. En otras penalizacin lineal, por ejemplo, cogemos lo que me paso de
palabras, lo que debemos hacer es maximizar la utilidad de peso y lo multiplicamos por un un factor k .
nuestra mochila.
Matemticamente:
De esta manera, la funcin de salud queda:
n
max z = bi xi . (0.4)
n n
i =1
s = bi xi k ( pi xi c) + , (0.8)
i =1 i =1
Representamos a cada individuo con un cromosoma de 5
alelos, en el que el bit i hace referencia al objeto i. Por
ejemplo, supongamos que tenemos el genotipo de la Figura donde,
5.1: significa que nos llevaramos los obejtos 1, 3 y 5. n

n 0

si p x i i C
(0.9)
( pi xi C ) + = n
i =1
n
p x C

si pi xi > C
i =1
individuo
1 0
1 1
0 i i
i =1 i =1
x1 x2 x3 x4 x5

Figura 5.1. Ejemplo de genotipo.


Cunto vale k ? El tamao de k puede variar en funcin de
n. Tambin habra que estudiar la no-factibilidad en funcin de
La funcin de salud que vamos a utilizar en primera instancia k : un k muy grande puede dar lugar a valores de salud
es negativos, lo cual es absurdo. Esto se podra arreglar sumando
una cota, pero podramos entrar en problemas de no-
discriminacin.
n
z = bi xi . (0.5)
i =1 Obtener una poblacin inicial de 6 individuos por el mtodo
de la muesta invertida.
Si evaluamos el individuo anterior, tenemos que
El mtodo consiste en generar la mitad de la poblacin de
n forma aleatoria y la otra mitad sern los inversos de los
z = bi xi = 100 + 80 + 1 = 220 (0.6)
primeros, tal y como se observa en la Figura 5.1.
i =1

Comprobamos la condicin de capacidad: 1 0 0 1 1 0 4 1 1 0 0 1

n
2 1 1 1 1 0 5 0 0 0 0 1
px
i =1
i i = 30 + 22 + 10 = 62 > 40 (0.7)

3 0 0 0 1 1 6 1 1 1 0 0
Este individuo incumple la restriccin de capacidad de la
mochila. Es un individuo no factible.
Figura 5.1. Muestre invertida.

Discutir la posibilidad de utilizar la funcin z para evaluar


Seleccionar los padres de la siguiente generacin por el
la salud de los individuos en la resolucin del problema de
mtodo de la ruleta a partir de los generados aneriormente.
la mochila 0-1 genrico mediante algoritmos genticos.
Determinar razonadamente una funcin apropiada para
este propsito, en la que se tenga en cuenta el valor de z. Tomamos un valor de k = 7 . Evaluamos los individuos
anteriores y comprobamos la restriccin de capacidad.
No es adecuado porque el algoritmo evolucionara a poner
todo 1 y esa solucin es NO Factible.
s = 80 + 40 = 120
1
Cmo evaluar los no factibles? Podemos penalizarlos peso = 22 + 10 = 32
buscando una expresin matemtica adecuada. La restriccin
s = 100 + 75 + 80 + 40 7 (82 40) = 1 [4] Apuntes de la asignatura Mtodos Cuantitativos de
2 Organizacin II, Miguel Gutirrez Universidad
peso = 30 + 20 + 22 + 10 = 82 No Factible Carlos III de Madrid
s = 40 + 20 = 60
3
peso = 10 + 7 = 17
[5] Algoritmos Genticos, Abdelmalik Moujahid, Iaki
Inza y Pedro Larraaga - Departamento de Ciencias
s = 100 + 75 + 20 7 (57 40) = 76 de la Computacin e Inteligencia Artificial,
4 Universidad del Pas Vasco.
peso = 30 + 20 + 7 = 57 No Factible
s = 20
5
peso = 7
s = 100 + 75 + 80 7 (72 40) = 31
6
peso = 30 + 20 + 22 = 72 No Factible

Tabla 2. Evaluacin de los individuos.


Individuo Salud Salud Relativa
1 120 0,3896
2 1 0,0032
3 60 0,1948
4 76 0,2468
5 20 0,0649
6 31 0,1006
Total 308 1

Al hacer la ruleta entran individuos No Factibles a ser padres,


por lo que no es un buen mtodo de seleccin. Por lo tanto,
diseamos el mtodo de seleccin matando a los
indivividuos no factibles para que no sean padres de la
siguiente generacin. De esta manera, slo los individuos 1, 3
y 5 pueden ser padres. Por el mtodo de la ruleta se procedera
a asignar cuntos hijos tendra cada individuo, hasta completar
una poblacin de 6 individuos.

6 REFERENCIAS

[1] Apuntes asignatura Inteligencia Artificial en Redes


de comunicacin, Julio Villena Romn
Universidad Carlos III de Madrid
http://www.it.uc3m.es/jvillena/irc/

[2] Algoritmos genticos Wikipedia, Enciclopedia


libre
http://es.wikipedia.org/wiki/Algoritmo_gentico

[3] Tutorial - Introduction to Genetic Algorithms


http://www.obitko.com/tutorials/genetic-algorithms/

También podría gustarte