Vous êtes sur la page 1sur 5

PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 393

Creacin de la poblacin futura (


1 I+
) a partir de la poblacin inicial (
I
) apli-
cando el procedimiento de seleccin y los operadores genticos;
Evaluacin de
1 I+
a travs de la funcin de calidad (f);
Comprobacin de la condicin de parada(5);
Return
Como se observa en esta estructura, una vez que la codificacin de las cadenas
ha sido establecida, la poblacin inicial ha quedado determinada y la funcin de
calidad ha sido definida, la transformacin de una poblacin inicial en otra final se
deja en manos del procedimiento de seleccin y los llamados operadores genti-
cos, los cuales, de forma probabilstica, son los encargados de introducir cambios
en la poblacin inicial de tal forma que se obtenga una nueva poblacin que, se
espera, tendr un mayor valor de la calidad media.
Desde este punto de vista, el estado de la poblacin en el momento t+1 depen-
de slo del estado en el momento t. Si se conoce el estado
I
, no se conseguir
ms informacin sobre el estado
1 I+
a partir de cualquier estado previo de la
poblacin. Como la actuacin de los operadores que producen la nueva poblacin
en t+1 dependen de la ocurrencia de sucesos tales como que una cadena determi-
nada pase al fondo de emparejamiento o se produzca la seal para mutar un
determinado bit, la dependencia del estado
1 I+
respecto del estado
I
es esto-
cstica.
Estas consideraciones implican que el cambio en la poblacin descrito por el al-
goritmo gentico puede considerarse un proceso estocstico {
I
}, t=1,...,T, de
naturaleza markoviana; es decir, cuando el proceso est en el estado i en el mo-
mento t, hay una probabilidad fija, p
ij
, de que el proceso realice una transicin al
estado j en el momento t+1:
{ } ( ) 0 I , p i , i ,..., i , i / | F
i| 0 0 1 1 1 I 1 I I 1 I
= = = = = =
+
para todos los estados i
0
,i
1
,...i,j(6). Por supuesto, se tiene que:
(5) Los criterios de parada suelen ser, entre otros, que se haya procesado el algoritmo
un nmero determinado de veces, que el valor medio de la funcin de calidad haya alcanza-
do un determinado umbral, o que un determinado porcentaje de individuos haya superado
un determinado nivel en su valor de calidad.
(6) Ntese que se estn considerando probabilidades de transicin estacionarias en el
tiempo. El anlisis de las cadenas de Markov ha sido utilizado para calcular el ratio de con-
vergencia hacia la solucin ptima de los algoritmos genticos. Consltense los artculos de
Goldberg y Segrest (1987), Nix y Vose (1992), Rudolph (1994) y Suzuki (1995).
394 ESTADSTICA ESPAOLA
1, p 0, j i, 0, p
0 j
ij ij
=

=
con i = 0,1,...
La propia supervivencia de los mejores, la imitacin de la herencia gentica que
se produce de generacin en generacin, o la incorporacin de nuevo material
gentico debido a mutaciones en los bits de las cadenas, son principios que inspi-
ran los diferentes operadores. La mayora de ellos fueron planteados originaria-
mente por Holland (1975) y popularizados y modificados por Goldberg (1989). A
continuacin se realiza una breve descripcin de los operadores genticos ms
usados.
Procedimiento de Seleccin
Tratado generalmente como operador, lo cierto es que la seleccin consiste en
un procedimiento que determina el nmero de individuos de la nueva poblacin que
son copias de cada uno de los existentes en la poblacin original, bajo el supuesto
de que, a mayor adaptacin de un individuo, mayor probabilidad de sobrevivir y
mayor herencia gentica dejar para la siguiente generacin. De esta forma, crea
una poblacin intermedia seleccionando un determinado nmero de cadenas o
individuos de la poblacin inicial.
Existen varias definiciones para realizar esta seleccin previa de cadenas, pero
la ms utilizada es la seleccin de tipo proporcional que, sobre una poblacin inicial
de tamao r obtiene una poblacin intermedia de tamao n del siguiente modo. Se
generan aleatoriamente los resultados de n pruebas multinomiales de tamao r con
probabilidades p
1
,...,p
r
, siendo p
i
, con i=1,...,r, la probabilidad de que se copie el
individuo i de la poblacin original en la posicin en que finalmente quedar ubica-
do uno cualquiera de los n individuos de la poblacin final. Dicha probabilidad se
define como el cociente entre la calidad del individuo i y la suma de las calidades
de los r individuos de la poblacin inicial. Efectuadas las copias de los individuos de
la poblacin inicial en el nmero adecuado, se obtiene una nueva poblacin del
tamao deseado.
En trminos formales, si se denota por { }
r , 1 1 , 1 1
l ,..., l = el conjunto de r indivi-
duos de la poblacin inicial y se define { } n ,..., 1 J = como el conjunto de las n posi-
ciones en que se ubican los n individuos de la poblacin resultante de las copias, la
poblacin intermedia, { }
n , 2 1 , 2 2
l ,..., l = (7), se obtiene a travs del operador selec-
cin
1
J : s , definido como s(j) = I
2,j
, de tal manera que:
(7) Ntese que los subndices que irn apareciendo en estas descripciones acompaan-
do al smbolo , no se refieren a poblaciones finales, sino a las poblaciones que van surgien-
do como consecuencia de la aplicacin de los distintos operadores.
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 395
( ) ( ) ( ) n ,... 1 | , r ,..., 1 i
l
`
l
`
p l l F l | s F
r
1 i
i
i
i i , 1 | , 2 i , 1
= = = = = = =

=
Operador Cruce
El operador cruce es la llave para generar nuevas cadenas o nuevos miembros
en la poblacin. Una vez creado un fondo de emparejamiento o poblacin interme-
dia, el cruce se aplica para fundir el material gentico de dos cadenas con calidad
alta y producir otras dos nuevas, que, incluso, pueden estar ms adaptadas al
entorno que sus progenitores.
El tipo de cruce ms habitual en las aplicaciones de los algoritmos genticos es
el conocido como cruce simple o de un punto. Este cruce opera como sigue: con los
individuos de la poblacin intermedia generada tras la aplicacin del procedimiento
de seleccin, se forman pares elegidos aleatoriamente y, sobre cada uno de estos
pares, el cruce se efectuar con una probabilidad dada, , eligindose aleatoria-
mente el punto de cruce. Es decir, fijada aleatoriamente una posicin en las cade-
nas, se intercambiarn los caracteres especificados a la derecha de dicha posicin.
Sea { }
n , 3 1 , 3 3
l ,..., l = la poblacin resultante de efectuar los cruces sobre el
fondo de emparejamientos definido por el procedimiento de seleccin (
2
). Cada
par ( )
3 b , 3 a , 3
l , l se obtiene como resultado de la aplicacin del operador cruce, c,
sobre el par ( )
2 b , 2 a , 2
l , l . Designando por c
i
(I
a
,I
b
) al par de individuos resultantes
de efectuar el cruce en la posicin i-sima del par de individuos (I
a
,I
b
), entonces el
operador cruce acta sobre el par de individuos ( )
b , 2 a , 2
l , l en dicha posicin de
modo que ( )
b , 3 a , 3
l , l se obtiene como ( )
b , 2 a , 2 i
l , l c , donde ( ) ( ) ( ) = =
b , 2 a , 2 i b , 3 a , 3
l , l c l , l F
y ( ) ( ) ( ) = = 1 l , l l , l F
b , 2 a , 2 b , 3 a , 3
.
Por ejemplo, sean las cadenas A y B de longitud fija igual a 5, A = 01110 y B =
10011, cuyo punto de cruce ha recado en la posicin nmero 3. Entonces, las
cadenas resultantes del cruce son A = 01111 y B = 10010.
Evidentemente, el grado de transformacin de la poblacin provocado por cual-
quier operador depende de las probabilidades de actuacin que se le asignen. Con
poblaciones generadas aleatoriamente y formadas por individuos caracterizados
por variables binarias, los resultados empricos han aconsejado un valor para la
probabilidad del operador cruce en torno a 0.6 (Dawid, 1996).
396 ESTADSTICA ESPAOLA
Operador mutacin
El operador mutacin es el encargado de proporcionar innovaciones o cambio
en el valor de algn bit de las cadenas, lo que permite que el algoritmo gentico
encuentre soluciones con nuevo material gentico inexistente en la poblacin
inicial.
Designando por x
i,g
al valor de la caracterstica g del individuo i, donde g=1,...,k,
e i=1,...,n, entonces, dicho carcter puede mantener su valor o transformarse en el
otro valor del rango de la variable binaria X
g
.
Si la probabilidad de que este carcter cambie su valor es , entonces el opera-
dor mutacin, m, puede ser definido como
g g , i
R x : m , tal que:
( ) ( ) ( ) ( ) = = =
g , i g , i g , i g , i
x x m F y , 1 x x m F
Por ejemplo, si { } 1 , 0 R
g
= y la cadena donde ha recado el efecto de la mutacin
sobre la caracterstica g situada en el tercer dgito de la misma, es A=1111, enton-
ces la cadena resultante de la mutacin es A=1101.
Se debe hacer notar que, mientras el procedimiento de seleccin reduce la di-
versidad de la poblacin, la mutacin, como ocurre tambin con el operador cruce,
puede incrementarla de nuevo. A mayor , menor peligro de convergencia prematu-
ra. Adems, la accin del operador mutacin podra dar lugar a una poblacin final
con menor calidad que la inicial. Con objeto de controlar este riesgo, se asume que
la probabilidad de mutacin en cada uno de los caracteres de las cadenas de la
poblacin sea suficientemente pequea(8) normalmente del orden de 10
-3
.
Adems de los operadores genticos bsicos, existen otros que han sido usa-
dos en distintas aplicaciones. Entre los ms conocidos se encuentra el operador
inversin, por el cual se invierte el orden de los dgitos entre dos puntos de la
cadena elegidos aleatoriamente (Holland, 1975). Otro operador secundario es el
operador eleccin, por el que, despus de que se haya aplicado el procedimiento
de seleccin, y los operadores cruce y mutacin, se calcula el valor de calidad para
cada par de descendientes en el entorno actual y se enfrentan las cadenas iniciales
(8) El crecimiento del valor esperado de la calidad en la poblacin intermedia derivada
del procedimiento de seleccin es una consecuencia de la definicin del operador. Pero la
posterior transformacin de dicha poblacin intermedia en una poblacin final no exige un
incremento del nivel esperado de la calidad. No obstante, si la probabilidad de aplicacin de
los operadores cruce y mutacin es suficientemente baja, difcilmente se producir un
decremento de la calidad media de la poblacin final.
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 397
con las finales y, de estas cuatro cadenas, las dos con mayor calidad se transfieren
a la poblacin final (Arifovic, 1989)(9).
Goldberg y otros (1989) definieron adems otros dos operadores, admitiendo la
modificacin de la longitud de la cadena: el de empalme y el de corte. Por el prime-
ro, dos cadenas se unen, una a continuacin de la otra, apareciendo as una nueva
cadena de mayor tamao; por el segundo, una cadena es cortada, por un punto
elegido aleatoriamente, generando dos cadenas nuevas, de menor tamao.
Si bien han ido apareciendo definiciones sobre nuevos operadores, lo cierto es
que la inclusin de stos en la estructura bsica de un algoritmo gentico no ha
admitido ningn tipo de duda en la literatura. En todos los casos, se trataba de
mejorar las propiedades del algoritmo(10). Sin embargo, y como apuntaba De Jong
(1985) en una revisin sobre la historia de la investigacin en torno a los algoritmos
genticos, tampoco pareca haberse mejorado sustancialmente las ideas originales
de Holland (1975) ya que, por ejemplo, no se haba resuelto adecuadamente el
problema de asignar valores iniciales a las probabilidades de actuacin de los
operadores genticos y la modificacin de dichos valores a lo largo de la ejecucin
de un algoritmo gentico.
3. ALGORITMOS GENTICOS Y PREDICCIN. CARACTERSTICAS POBLA-
CIONALES Y MATRIZ DE TRANSICIN
La transformacin de una poblacin en otra a travs de una combinacin del
procedimiento de seleccin y los operadores genticos parece apropiada cuando
las poblaciones se generan aleatoriamente, cada individuo est caracterizado por
variables binarias, y se aplican con determinadas probabilidades sin suponer que
determinados cruces o mutaciones son ms verosmiles que otros. Sin embargo, en
contextos reales y conocidos, la aplicacin mecnica de estas definiciones puede
conducir a la generacin de poblaciones de individuos cuyas caractersticas son
incoherentes. Adems, puede existir informacin de tipo cualitativo que sugiera la
mayor verosimilitud de unas determinadas transformaciones frente a otras, informa-
cin que sera interesante incorporar en la ejecucin del algoritmo. En casos como
(9) Ntese que cada par de individuos del fondo de emparejamiento se compara con el
par resultante de la aplicacin de los operadores de cruce y mutacin.
(10) Baker (1987) sealaba que un algoritmo gentico debe generar poblaciones exactas,
consistentes y eficientes: exactas, en el sentido de que no hubiera diferencia o hubiera la
menor posible entre la poblacin real y la esperada, es decir, el sesgo debera ser bajo;
consistentes o precisas, en el sentido de que la propagacin o el rango de valores posibles
para el nmero de descendientes de cada individuo fuera la menor posible; y eficientes,
desde el punto de vista de que no provocaran incrementos en la complejidad del algoritmo
gentico.