Vous êtes sur la page 1sur 19

ESTADSTICA ESPAOLA

Vol. 46, Nm. 157, 2004, pgs. 389 a 407


Prediccin econmica con algoritmos
genticos: operadores genticos versus
matriz de transicin(1)
(1) La autora de este trabajo desea agradecer sinceramente al Dr. D. Jos Juan Cceres
Hernndez y al evaluador annimo de la Revista sus tiles y acertados comentarios que, sin
duda, han contribuido a mejorar notablemente la versin final de este trabajo.
por
MONTSERRAT HERNNDEZ LPEZ
Departamento de Economa de las Instituciones, Estadstica Econmica y Econometra
Facultad de Ciencias Econmicas y Empresariales
Universidad de La Laguna
RESUMEN
Los algoritmos genticos se disearon originalmente como mtodo
de optimizacin. En este trabajo, se sostiene que los algoritmos gen-
ticos tambin pueden ser utilizados en el contexto econmico como
herramienta predictiva de los cambios en la composicin de una po-
blacin de agentes econmicos. Adems, y como novedad metodol-
gica en la definicin del algoritmo utilizado con este fin, se propone
sustituir los operadores de cruce y mutacin por una matriz de transi-
cin que permita incorporar explcitamente informacin econmica en
la determinacin de las probabilidades de transformacin de las ca-
ractersticas de los individuos de la poblacin bajo estudio.
390 ESTADSTICA ESPAOLA
Palabras clave: Algoritmos genticos, prediccin econmica, operado-
res genticos, matriz de transicin.
Clasificacin AMS: 62M45.
1. ALGORITMO GENTICO COMO TCNICA COMPUTACIONAL PREDICTIVA
Los algoritmos genticos describen el proceso de transformacin de los indivi-
duos de una poblacin, definidos mediante un vector de caractersticas, de acuerdo
con fundamentos tericos (Holland, 1975; Goldberg, 1989) que se basan en los
procesos genticos de formacin, aprendizaje, adaptacin y evolucin de los
organismos biolgicos, y, especialmente, en el principio de seleccin natural o
supervivencia de los mejores trmino acuado por Charles Darwin en The Origin
of Species de 1859, y en los resultados de los intercambios genticos. En la
naturaleza, los procesos de seleccin natural y alteracin gentica ocurren en una
generacin, y luego en su descendencia, y a continuacin en la descendencia de
sta, y as sucesivamente. Despus de cada generacin, o al menos as se desea,
la poblacin ser mejor o ms adaptada a su entorno que las anteriores, es
decir, los individuos estarn ms evolucionados (Moreno y Moreno, 1999).
Tradicionalmente, los algoritmos genticos han sido considerados y aplicados
como algoritmos de bsqueda de soluciones mejores no necesariamente pti-
mas, especialmente tiles en problemas especficos de gran dimensin. Esta
tcnica difiere de los procedimientos tradicionales de optimizacin en varios as-
pectos que contribuyen a la robustez del algoritmo gentico en cierto tipo de pro-
blemas y le proporcionan una ventaja sobre otras tcnicas de optimizacin(2). Pero,
adems de su uso con fines de optimizacin, los algoritmos genticos podran
considerarse como radiografas del proceso dinmico de transformacin interna de
la poblacin bajo estudio. Es decir, ms que determinar el punto final de un proceso
iterativo hasta que se alcanza la convergencia, puede ser interesante observar la
forma en que la poblacin se adapta a su entorno en cada momento, cmo sus
individuos se enfrentan mejor al contexto cambiante que les rodea, y cmo, en
suma, la poblacin evoluciona; lo que, en ltima instancia, sugiere un segundo uso
alternativo de un algoritmo gentico, especialmente til en el contexto econmico:
(2) Los algoritmos genticos utilizan procesos de bsqueda o acercamiento al ptimo
basados en reglas de transicin probabilsticas.
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 391
reflejar el modo en que se transforma tal poblacin, o lo que es lo mismo, servir
como herramienta de prediccin sobre la composicin de la poblacin(3).
Cuando el algoritmo gentico se emplea con la finalidad de optimizar o mejorar
el resultado de alguna funcin, la poblacin inicial est formada por cadenas bina-
rias generadas aleatoriamente, a cada una de las cuales corresponde un determi-
nado valor de la funcin que se desea optimizar. Adems, la nueva poblacin suele
ser creada sobre la base de las probabilidades de actuacin asignadas a determi-
nados operadores. Sin embargo, si se pretende aplicar un algoritmo gentico sobre
una poblacin econmica conocida con el objetivo de predecir su composicin en el
futuro, la estructura bsica del algoritmo gentico en lo que se refiere a la propia
transformacin de la poblacin inicial en final podra ser modificada para lograr
resultados ms apropiados al conocimiento del que se disponga sobre el entorno.
Como seala Davis (1991), para derivar un algoritmo gentico con un alto grado de
eficacia en un contexto determinado es conveniente especializarlo en dicho con-
texto, lo que conlleva el uso de parmetros y operadores especialmente adaptados
al problema en cuestin. As, en un entorno real, la definicin de cadenas binarias
puede ser insuficiente para recoger las caractersticas relevantes de los individuos
de la poblacin. Adems, la obtencin de la nueva poblacin a partir de la actua-
cin de operadores estocsticos convencionales podra, por una parte, conducir a
la aparicin de individuos con caractersticas incoherentes, y, por otra, impedir la
consideracin explcita de que determinadas transformaciones de unos individuos
en otros pueden ser ms probables que otras. Desde este punto de vista, parece
necesario sustituir los operadores genticos por cualquier otro mecanismo que sea
capaz de incorporar una mayor dosis de adaptacin al entorno real y de informacin
cualitativa conocida.
El objetivo de este trabajo es justificar la utilidad de los algoritmos genticos
como herramienta de prediccin de la composicin de determinadas poblaciones y,
en concreto, disear un algoritmo gentico basado en la actuacin de una matriz de
transicin como frmula para incorporar explcitamente la informacin especfica del
entorno que pueda orientar el proceso de transformacin. Para ello, el texto se
estructura en las siguientes secciones. En la primera, se presenta la estructura
habitual de los algoritmos genticos y se definen los operadores genticos en su
versin ms simple. A continuacin, se sugieren modificaciones tericas que sera
conveniente incluir si se desea usar esta tcnica con fines predictivos en un con-
(3) Los algoritmos genticos se han utilizado con el fin de predecir el valor de una mag-
nitud econmica (vase, por ejemplo, Mahfoud y Main, 1996; lvarez-Daz y lvarez, 2002; o
Venkatesan y Kumar, 2002). Sin embargo, no se tiene constancia del uso de esta herramienta
con la finalidad de predecir cambios en la composicin de una poblacin de agentes econ-
micos, excepto en Hernndez Lpez (2002).
392 ESTADSTICA ESPAOLA
texto particular y se describe la forma y actuacin de la matriz de transicin en el
mbito de la prediccin de una poblacin concreta de agentes econmicos. El
artculo finaliza con la exposicin de las conclusiones obtenidas.
2. ESTRUCTURA CONVENCIONAL DE LOS ALGORITMOS GENTICOS
El algoritmo gentico es una herramienta capaz de transformar una poblacin
original, cuyos individuos estn identificados por un vector de caractersticas o
cadena, en otra poblacin final, formada por un cierto nmero de individuos no
necesariamente coincidente con el de la poblacin original, la mayor parte de los
cuales poseen, previsiblemente, caractersticas similares a aqullos que, en la
poblacin original, parecan mejor adaptados al entorno.
Es decir, en el momento temporal t se observa la poblacin inicial,
{ }
n , I 2 , I 1 , I I
l ,..., l , l = , integrada por n individuos cuyas caractersticas estn repre-
sentadas a travs de cadenas codificadas. Cada cadena es evaluada para tener
una medida de su adecuacin al contexto a travs de la funcin objetivo que se
pretende mejorar, llamada funcin de calidad o fitness function.
La poblacin final en el momento t+1,
1 I+
, se forma seleccionando, en primer
lugar, los individuos ms adaptados de
I
, definiendo el grado de adaptacin del
individuo como el valor de la funcin de calidad correspondiente a dicho individuo.
Despus de esta fase, en la que se tiende a producir un incremento de la calidad
media de los individuos, se aplican los operadores genticos para provocar la
transformacin de la poblacin inicial en poblacin final. Estos pasos se reiteran
hasta que se cumpla algn criterio de parada.
Con ayuda de los trminos propios del lenguaje de programacin Borland C
++
, la
estructura bsica del cdigo que define un algoritmo gentico puede representarse,
de forma simplificada, del siguiente modo(4):
Main Algoritmo Gentico
t=0;
Lectura de valores de los parmetros;
Creacin o Lectura de la poblacin inicial (
I
)
;
Evaluacin de
I
a travs de la funcin de calidad (f);
While condicin de parada
(4) Consltense las obras de Holland (1975), Goldberg (1989), Michalewicz (1994), Da-
wid (1996), Bagchi (1999) y Moreno y Moreno (1999).
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.
398 ESTADSTICA ESPAOLA
stos, es necesario redefinir las cadenas que identifican a los individuos de la
poblacin en trminos de caracteres no binarios. Entonces, es imprescindible
replantear la definicin de operadores de cruce y mutacin. Y, sobre todo, quizs
resulte apropiado mantener el operador seleccin para determinar una poblacin
intermedia del tamao deseado. Pero, una vez determinadas las copias, el plan-
teamiento idneo sera conocer los valores p
ij
de una hipottica matriz de transicin
M que, para cada individuo i observado en la poblacin inicial, indique la probabili-
dad de que dicho individuo se transforme en el individuo j, entre todos los posibles
que pudieran ser considerados por combinacin de los distintos valores de cada
una de las caractersticas o variables que los definen.
Antes incluso de construir el algoritmo, su aplicacin est condicionada por la
definicin de los individuos de la poblacin. En un contexto real, carece de sentido
que la poblacin inicial se genere aleatoriamente, pero, adems, las cadenas o
estructuras que identifican a los individuos deben definirse apropiadamente. Algu-
nas de las caractersticas individuales sern atributos policotmicos difciles de
recoger con cadenas binarias si se pretende evitar inconsistencias lgicas sin una
prdida notable de informacin.
Obviamente, es necesario establecer una funcin de calidad que determine el
grado de adaptacin al entorno de cada individuo en funcin de sus caractersticas.
En poblaciones reales, esta funcin suele ser desconocida de antemano, en cuyo
caso tendr que ser estimada. Y en dicho proceso de estimacin, la conversin de
una caracterstica multimodal en una variable dicotmica puede introducir sesgos
considerables como consecuencia de la prdida de informacin. La solucin ele-
mental consiste en definir tantas variables dicotmicas como modalidades posea la
caracterstica original. Es decir, si el individuo i est definido por el vector de ca-
ractersticas ) X ,..., X ( :
k , i 1 , i i
X y la caracterstica X
g , i
posee m modalidades, la
informacin proporcionada por X
g , i
puede sustituirse por la que aportan m varia-
bles dicotmicas
m , g , i 1 , g , i
Y ,..., Y cada una de las cuales toma el valor 1 si la modali-
dad es una determinada y el valor cero en otro caso. Ahora bien, si la cadena o
vector de caractersticas que define al individuo se expresa en trminos de estos
conjuntos de variables dicotmicas, la aplicacin de los operadores de cruce y
mutacin puede conducir a inconsistencias lgicas. En las m posiciones de la
cadena que identifica la caracterstica X
g , i
debe aparecer un 1 en la posicin
correspondiente a la modalidad que caracteriza al individuo i y el valor cero en el
resto de posiciones. Pero esta disposicin no est garantizada cuando se aplican
los operadores de cruce o mutacin.
La solucin a problemas de este tipo exige redisear el algoritmo de forma que
el operador cruce acte directamente sobre cadenas no binarias. Evidentemente,
dado que el carcter x
i,g
puede transformarse en cualquier otro de los valores del
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 399
rango de X
g
, sera necesario tambin redefinir el operador mutacin de forma que
( ) ( ) x' x m F
g i, g i,
g g i,
x x'
R x'
g i, g i,
= =

.
En cualquier caso, y aunque no se produzcan inconsistencias, si se pretende
que la dinmica de transformacin de la poblacin original se adapte al proceso
real, los operadores de mutacin y cruce difcilmente pueden discriminar transfor-
maciones de acuerdo con su naturaleza de modo que unas sean ms probables
que otras. Desde este punto de vista, y como ya se coment, la matriz de transicin
es una herramienta adecuada para este fin. A continuacin, se define con precisin
el mecanismo de actuacin de esta matriz.
Supngase que el individuo i, i = 1,...,n, puede transformarse en el individuo j,
donde j = 1,...,m, con probabilidad p
ij
. En general, m es igual a n, pero se ha inclui-
do el parmetro m para recoger el caso en que slo m de los n individuos se dife-
rencien en, al menos, una caracterstica. Por supuesto, p
ii
es la probabilidad de que
el individuo i no cambie, es decir, que en la poblacin final (generacin t+1) aparez-
ca un individuo cuyas caractersticas son idnticas a las de un individuo de la
poblacin original (generacin t).
Entonces, puede construirse una matriz M que en la fila i-sima contenga los
valores p
ij
, j = 1,...,m, es decir, la probabilidad de que el individuo i se convierta en
cada uno de los m individuos posibles. De este modo, la transformacin de un
individuo i es el resultado de una prueba multinomial de tamao m, con probabili-
dades p
i1
,...p
im
.
El problema de esta nueva aproximacin radica en que la dimensin de la matriz
puede ser muy grande, y adems, en que no existe un criterio nico para determi-
nar los valores p
ij
, aunque la incorporacin de informacin cualitativa y del conoci-
miento ms profundo de la poblacin puede hacer que estos problemas no sean,
finalmente, tan graves.
Supngase que existen m individuos cuyas cadenas representativas o estructu-
ras, E
1
,...,E
m,
son diferentes(11). Se asume que cada estructura E
i
, con i=1,...,m,
puede transformarse en otra estructura E
j
, con j=1,...,m, con probabilidad p
ij
. Por
supuesto, p
ii
es la probabilidad de que las caractersticas del individuo no cambien.
Estas probabilidades pueden recogerse en una matriz cuya fila i-sima contenga
los valores p
ij
, j=1,...,m, que indican la probabilidad de que la estructura E
i
se con-
vierta en cada una de las m estructuras posibles.
(11) Ntese que, en una poblacin real, varios individuos diferentes pueden tener las
mismas caractersticas y, por tanto, estar definidos por la misma cadena o estructura.
400 ESTADSTICA ESPAOLA
Con la finalidad de ilustrar el proceso de determinacin de las probabilidades de
transformacin, p
ij
, supngase que el conocimiento que se tiene de la poblacin
real en el momento t no sugiere grandes cambios para una generacin posterior
t+1. En este caso, una posible forma de establecer las probabilidades de transicin
sera considerando que p
ij
es inversamente proporcional al nmero de bits distintos
entre las estructuras E
i
y E
j
. Es decir, si existe un bit de diferencia, =
i|
p ;
2 / p
i|
= si existen dos bits diferentes; 3 / p
i|
= si las dos estructuras se diferen-
cian en 3 bits, etctera; y si entre dichas estructuras no existe ningn bit de diferen-
cia, =
i|
p , i,j=1,...,m. En general, se tiene que
i| i|
/ p = , en el caso de que las
estructuras E
i
y E
j
difieran en
ij
bits o caracteres, cumplindose que la suma por
filas debe ser igual a la unidad, es decir, m ,..., 1 i , 1 p
m
1 |
i|
= =

=
.
Definida as, la matriz de transicin podra ser esquematizada como sigue:
E
j
(t+1)
E
i
(t)
E
1
E
2
.... E
m
E
1
E
2
E
3
...
E
m
p
11
=
p
21
= /
21
p
31
= /
31
...
p
m1
= /
m1
p
12
= /
12
p
22
=
p
32
= /
32
...
p
m2
= /
m2
...
...
...

p
1m
= /
1m
p
2m
= /
2m
p
3m
= /
3m

p
mm
=
Para determinar el valor de , una vez fijado el valor correspondiente a la pro-
babilidad de que cada estructura aparezca inalterada en la siguiente generacin,
debe tenerse en cuenta el nmero de variables, y el de sus correspondientes
modalidades, que integran la definicin de cada estructura. Si una estructura viene
definida por R variables, E
i
= {X
i,1
,...,X
i,R
}, y cada variable X
h
admite n
h
modalidades,
con h=1,,R, entonces:
1
R
N
...
3
N
2
N
N
R 3 2
1
= + + + + +
siendo N

el nmero de estructuras que difieren de una dada en caracteres,


=1,2,...,R. Algunos casos particulares del clculo de N

son los siguientes:


( ) R n 1 n N
R
1 i
i
R
1 i
i 1
= =

= =
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 401
( )( ) ( ) ( ) ( )
( ) [ ]
( ) ( ) [ ]
( ) [ ]
( )


= = + =
= + =
=

= + =
= + = = + = = + = = + = = + =

+ =
=

+ + + + =
= + + + + + + + +
+ + + =
= + = =
R
1 i
R
1 i
i
R
1 i |
| i
R 2 1
R
1 i
R
1 i |
| i
R
1 i
R R 3 R 2
1 R 2 1
R
1 i
R
1 i |
| i
R
1 i
R
1 i |
R
1 i
R
1 i |
|
R
1 i
R
1 i |
i
R
1 i
R
1 i |
| i
R
1 i
R
1 i |
| i 2
2
R
n ) 1 R ( n n
2
) 1 R ( R
n ... n n ) 1 R ( n n
) i R ( n ... n ... n n ... n
n ... n ) 2 R ( n ) 1 R ( n n
1 n n n n 1 n 1 n N
( )( )( ) ( ) ( )
( ) ( ) ( ) ( )
( )
( ) ( )




= + = = = + = + =
= + = = + = + = + =
= + = = + = + = = + = + = + = = + = + =
= + = + = = + = + = = + = + =


+ =
= +
+ + +
= =
R
1 i
R
1 i |
R
1 i
i
R
1 i
R
1 i |
| i
R
1 | l
l | i
R
1 i
R
1 i |
R
1 i
R
1 i |
R
1 | l
R
1 | l
l
R
1 i
R
1 i |
R
1 i
R
1 i |
R
1 | l
|
R
1 i
R
1 i |
R
1 | l
i
R
1 | l
l |
R
1 i
R
1 i |
R
1 | l
l i
R
1 i
R
1 i |
R
1 | l
| i
R
1 i
R
1 i |
R
1 | l
l | i
R
1 i
R
1 i |
R
1 | l
l | i 3
3
R
n
2
) 2 R )( 1 R (
n n ) 2 R ( n n n
1 n
n n n n n n
n n n n n 1 n 1 n 1 n N
En general:
( ) ( ) ( )

= + = + =

+ + = =

1 i 1 i i
R
1 i i
i i R 1 R 1 R
1 1 2 2 R 1 R
R 1
1 1 ... n ... n n ... n 1 n ... 1 n N
Tericamente, la matriz de transicin ser una matriz cuadrada y simtrica cuyo
nmero de filas y columnas coincide con el nmero total de estructuras diferentes
posibles segn el nmero de variables y el nmero de sus correspondientes
modalidades que se podran observar en la poblacin inicial.
Sin embargo, en determinadas aplicaciones reales de gran dimensin, la infor-
macin disponible sobre la poblacin puede aconsejar la no consideracin de
algunas estructuras. Adems, puede que dicha informacin tambin aconseje
402 ESTADSTICA ESPAOLA
limitar las estructuras distintas de la poblacin final del momento t+1 a aqullas
observadas en el momento t(12).
Manteniendo esta hiptesis, la dimensin de la matriz de transicin se reduce
considerablemente, y el valor de no es el mismo de una fila a otra de la matriz, ya
que vara en funcin del nmero de similitudes entre cada estructura E
i
observada
en el momento t y las restantes estructuras observadas en dicho momento, nicas
candidatas a la transformacin, si la hubiere.
Una vez ha quedado establecida la matriz de transicin, su intervencin en la
ejecucin del algoritmo puede exponerse, formalmente, del siguiente modo.
Sea { }
n , 2 1 , 2 2
l ,..., l = el conjunto de n individuos de la poblacin intermedia re-
sultante de las copias y sea { }
m 1
E ,..., E E = el conjunto de las m estructuras posi-
bles en las que puede transformarse cada uno de los individuos de
2
. Se define
{ } n ,..., 1 : C como el conjunto de las n posiciones en que se ubican los n individuos
de la poblacin final. Esta poblacin final { }
n , 3 1 , 3 3
l ,..., l : se obtiene a travs del
operador mt(q)=I
3,q
, definido como E C : ) q ( mI , tal que:
( ) ( ) ( ) m ,..., 1 | , n ,..., 1 q , p E l F E q mI F
| , q | q , 3 |
= = = = = =
donde p
qj
es la probabilidad de que el individuo I
2,q
, que ocupa la posicin q en la
poblacin intermedia, se transforme en un individuo cuya estructura venga dada por
E
j
. Si el individuo que ocupa la posicin q en la poblacin intermedia posee la
estructura E
i
, entonces p
qj
=p
ij
, es decir, el trmino de la columna j de la fila corres-
pondiente al individuo i en la matriz de transicin.
Para determinar en qu individuo I
3,q
se transforma el individuo I
2,q
, es decir, pa-
ra decidir en qu elemento E
j
se transforma el individuo con estructura E
i
, puede
realizarse una prueba multinomial de tamao m, con probabilidades p
i1
,...,p
im
, que
vienen recogidas en la fila i-sima de la matriz de transicin.
En resumen, el algoritmo se ejecuta en dos fases. En la primera, se generan los
individuos de la poblacin intermedia resultante de las copias. En la segunda, se
generan los individuos de la poblacin final utilizando la matriz de transicin. En
primer lugar, se construye la matriz de transicin, cuya fila i-sima indica las proba-
(12) Es preciso admitir que esta restriccin impide la aparicin de nuevo material genti-
co, pero de este modo se obtienen ventajas computacionales que permitiran la ejecucin
prctica del algoritmo en ordenadores personales, en casos en los que los individuos hayan
sido definidos mediante un importante nmero de caractersticas y cada una de stas pueda
presentar un nmero elevado de modalidades. Obviamente, esta suposicin slo podra ser
admitida si la informacin del contexto as lo aconsejara. No se pretende hacer de la misma
una hiptesis generalizable a cualquier caso.
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 403
bilidades de que la estructura E
i
se transforme en cada una de las m estructuras E
j
posibles. Luego, se identifica cada uno de los n individuos, I
2,q
, con q=1,...,n, de la
poblacin intermedia con alguna de las estructuras E
i
, i=1,...,m. Finalmente, para
determinar en qu nuevo individuo I
3,q
, q=1,...,n, se transforma cada uno de los
individuos I
2,q
identificado con alguna estructura E
i
, se genera una prueba
multinomial cuyos resultados son las estructuras E
j
en que puede transformarse I
2,q
y cuyas probabilidades son las de la fila i-sima de la matriz de transicin corres-
pondiente.
Se podra pensar que un adecuado control de las probabilidades de actuacin
de los operadores genticos evitara la introduccin de la matriz de transicin. No
obstante, la matriz de transicin permite una mayor flexibilidad al posibilitar probabi-
lidades distintas para cada transformacin de las cadenas iniciales, algo que no
ocurre con la utilizacin de los operadores genticos, cuyas probabilidades de
actuacin son aplicables por igual a cualquier individuo de la poblacin sin atender
de forma independiente la mayor o menor versomilitud de ocurrencia de cada una
de las transformaciones de las estructuras integrantes de la poblacin inicial.
Supngase, por ejemplo, que se trata de predecir la composicin de la pobla-
cin que visita un determinado destino turstico(13). Cabe suponer que dicha
poblacin experimenta cambios de una temporada a la siguiente, de modo que los
turistas ms satisfechos probablemente repetirn su visita, mientras que aqullos
no satisfechos difcilmente volvern. En este sentido, el grado de satisfaccin
puede cumplir la labor de la funcin de calidad y ese grado depender de caracte-
rsticas del turista tales como la nacionalidad, la renta, la edad, el gasto realizado o
el rgimen de alojamiento. Probablemente, en la temporada siguiente aumentar la
participacin de los individuos con caractersticas similares a aqullos que en la
temporada anterior mostraron un grado de satisfaccin ms elevado. Este principio
puede guiar la aplicacin del procedimiento de seleccin. Pero, por otra parte,
parece lgico pensar que es ms probable que un turista alemn, con alta renta, de
edad mediana y alojado en hotel de 5 estrellas sea sustituido por un ingls de alta
renta, edad mediana y alojado en hotel de 5 estrellas que por un francs de baja
renta, joven y alojado en apartamento.
Este tipo de informaciones cualitativas pueden incorporarse explcitamente en la
matriz de transicin y, en cambio, no se tomaran en consideracin si se emplean
los operadores convencionales de mutacin y cruce. De este modo, el algoritmo
gentico permite predecir el modo en que va cambiando la poblacin de turistas de
(13) En un entorno turstico, Hurley et al. (1998) proponen un algoritmo gentico cuya
aplicacin se refiere al problema de la localizacin de almacenes de venta al por menor de un
sitio turstico. Sin embargo, el algoritmo no se emplea con la finalidad de predecir cambios
en la composicin de la poblacin de turistas.
404 ESTADSTICA ESPAOLA
acuerdo con caractersticas relevantes para los gestores pblicos y privados de esa
rama de actividad en el rea geogrfica correspondiente.
4. CONCLUSIONES
Este artculo analiza la conveniencia de modificar la estructura habitual de los
algoritmos genticos cuando stos son utilizados con fines predictivos en un entor-
no real y conocido. En el contexto econmico, la prediccin de determinadas pobla-
ciones constituye un objetivo bsico para la planificacin econmica. Pero ms
relevante an puede ser la prediccin de los cambios en la composicin de dicha
poblacin en trminos de caractersticas particulares de los individuos de dicha
poblacin. De este modo, la prediccin del agregado que proporcionan las tcnicas
estadstico-economtricas tradicionales queda complementada por la prediccin
ms rica que aportan los algoritmos genticos.
Sin embargo, con la finalidad de la prediccin de poblaciones reales se hace
imprescindible algn tipo de modificacin en la estructura bsica del algoritmo
gentico. La definicin de poblaciones cuyos individuos estn identificados por
caractersticas no binarias puede provocar la inconsistencia de los operadores
convencionales. Adems, en el proceso de transformacin de la poblacin original
sera interesante incorporar informacin cualitativa sobre el entorno al que pertene-
ce la poblacin analizada.
En este artculo, se ha mostrado que un mecanismo adecuado para este fin
consiste en usar una matriz de transicin que, una vez que se ha procedido a la
seleccin y se ha configurado el fondo de emparejamientos, sea aplicada sobre
cada una de las cadenas integrantes de la poblacin intermedia teniendo en cuenta
la probabilidad de que cada una de aqullas se transforme en cualquiera de las
otras posibles.
Dado que el proceso de bsqueda est iniciado por el procedimiento de selec-
cin, los individuos de la poblacin intermedia tienden a ser los ms adaptados al
entorno, como se espera en la realidad. Adems, dado que la matriz de transicin
toma en consideracin qu transformaciones son ms probables, cabe pensar que
la poblacin predicha de esta forma se ajustar mejor a la poblacin real.
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 405
REFERENCIAS
LVAREZ-DAZ, M. Y LVAREZ, A. (2002) Prediccin no-lineal de tipos de cambio.
Aplicacin de un algoritmo gentico, Documento de Traballo, 0205. Departa-
mento de Economa Aplicada. Universidade de Vigo.
ARIFOVIC, J. (1989) Learning by Genetic Algorithms in Economic Environments,
Working Paper, 90-001. Santa Fe Institute.
BAGCHI, T.P (1999) Multiobjective Scheduling by Genetic Algorithms. Kluwer Aca-
demic Publishers.
BAKER, J.E. (1987) Reducing bias and inefficiency in the selection algorithm,
Genetic algorithms and their applications: Proceedings of the Second Interna-
tional Conference on Genetic Algorithms. John J. Grenfenstett (Ed.). Lawrence
Erlbaum Associates: 14-21. Hillsdale, NJ.
DAVIS, L. (1991) (Ed.) Handbook of Genetic Algorithm. Van Nostrand Reinhold. New
York.
DAWID, H. (1996) Adaptive Learning by Genetic Algorithms. Analytical Results and
Applications to Economic Models. Lecture Notes in Economics and Mathemati-
cal Systems, 441. Springer.
DE JONG, K. (1975) An Analysis of the Behavior of a Class of Genetic Adaptive
Systems. Doctoral Dissertation. Dissertation Abstracts International. 36(10)
5140B, University Microfilms, n 76-9381. University of Michigan.
DE JONG, K. (1985) Genetic Algorithms: A 10 year perspective, Proceedings of
the First International Conference on Genetic Algorithms and their Applications.
John J. Grenfenstett (Ed.). Lawrence Erlbaum Associates: 285-306. Hillsdale,
NJ.
GOLDBERG, D.E. (1989) Genetic Algorithms in Search Optimization, and machine
Learning. Addison Wesley. Reading, M.A.
GOLDBERG, D.E. Y P. SEGREST (1987) Finite Markov chain analysis of genetic
algorithms, Genetic algorithms and their applications: Proceedings of the Sec-
ond International Conference on Genetic Algorithms John J. Grenfenstett (Ed.).
Lawrence Erlbaum Associates: 1-8. Hillsdale, NJ.
GOLDBERG, D.E.; B. KORB Y K. DEB (1989) Messy Genetic Algorithms: Motivation,
Analysis, and First Results, Complex Systems, 3: 493-530.
HERNNDEZ LPEZ, M. (2002) Algoritmos Genticos y Prediccin de la Composicin
de la Demanda Turstica. Tesis Doctoral. Universidad de La Laguna.
406 ESTADSTICA ESPAOLA
HOLLAND, J.H. (1975) Adaptation in Natural and Artificial Systems. Ann Arbor. The
University of Michigan Press.
HURLEY, S.; MOUTINHO, L.; Y WITT, S.F. (1998), Genetic algorithms for tourism
marketing, Annals of Tourism Research, 25 (2): 498-514.
MAHFOUD, S. Y MANI, G. (1996), Financial forecasting using genetic algorithms,
Applied Artificial Intelligence, 10: 543-565.
MICHALEWICZ, Z. (1994) Genetic Algorithms + Data Structures = Evolution Programs.
Springer Verlag.
MORENO, J.M. Y J.A. MORENO (1999) Heursticas en Optimizacin. Coleccin Textos
Universitarios.
NIX, A. Y M.D. VOSE (1992) Modeling genetic algorithm with Markov chains,
Annals of Mathematics and Artificial Intelligence, 5: 79-88.
RUDOLPH, G. (1994) Convergence analysis of canonical genetic algorithms, IEEE
Transactions Neural Netwoks, Special Issue on Evolutional Computing, 5(1):
96-101.
SUZUKI, J. (1995) A Markov chain analysis on simple genetic algorithms, IEEE
Transactions on Systems, Man, and Cybernetics, 25(4): 655-659.
VENKATESAN, R. Y KUMAR, V. (2002) A genetic algorithms approach to growth
phase forecasting of wireless subscribers, International Journal of Forecasting,
18: 625-646.
PREDICCIN ECONMICA CON ALGORITMOS GENTICOS: OPERADORES GENTICOS VERSUS MATRIZ DE TRANSICIN 407
ECONOMIC FORECASTING USING GENETIC ALGORITHMS:
GENETIC OPERATORS VERSUS TRANSITION MATRIX
ABSTRACT
Genetic algorithms were originally designed as a method for opti-
mization purposes. This paper demonstrates another use. Genetic al-
gorithms can be transformed into a forecasting tool by means of new
methodological developments on their usual structure. Genetic ope-
rators may not be appropriate to randomly search the final population
when the aim is to forecast the internal composition of an economic
population. In this case a transition matrix should replace the genetic
operators to guide the search. Thus, it would be possible to insert in-
formation about the environment through the transformation probabili-
ties of each one of the population members.
Keywords. Genetic algorithms, economic forecasting, genetic opera-
tors, transition matrix.
AMS Classification: 62M45.

Vous aimerez peut-être aussi