Sunteți pe pagina 1din 7

Entrevista al Dr.

ngel Kuri Morales del CIC-IPN

Algoritmos Genticos: Herramientas de Inteligencia Artificial


con su Propia Evolucin

Vernica Hernndez Lpez

Los algoritmos genticos son un resultado de los avances de la computacin y de


la gentica. Son herramientas de la inteligencia artificial porque aprenden
simulando parcialmente los mecanismos de la evolucin. Su caracterstica
principal es su eficacia para optimizar casi cualquier problema.
En el Laboratorio de Inteligencia Artificial del Centro de Investigacin en
Computacin (CIC) del Instituto Politcnico Nacional (IPN) se desarrolla el
proyecto Reconocimiento de patrones utilizando un algoritmo gentico universal, a
cargo del doctor ngel Kuri Morales, quien present recientemente su libro A
Comprehensive Approach to Genetic Algorithms in Optimization and Learning
(Enfoque Integral de Algoritmos Genticos en la Optimizacin y Aprendizaje),
que es parte de la coleccin Ciencia de la Computacin que editan conjuntamente
el CIC y la Direccin de Publicaciones y Materiales Educativos del IPN.
El investigador tambin se desempea como subdirector de Investigacin Aplicada
del CIC y desde su tesis doctoral (Genetic Automata and Information System
Losslessness, 1985-1987) se dedica a este campo, aunque admite que en aquel
entonces era tan nuevo que ni siquiera haba una amplia difusin de los libros
acerca del tema. No obstante, trabaj sobre algunas cuestiones ya existentes pero que desconoca- e invent otras, ahora incluidas en su publicacin.
Computacin Evolutiva
Los algoritmos genticos son parte de la Computacin Evolutiva, que segn
explic el doctor Kuri simula el proceso de seleccin natural desde un punto de
vista neodarwiniano. Esto es, cuando Darwin elabor su teora de la evolucin, se
dio cuenta que las especies evolucionaban poco a poco. Eso lo hizo concebir que
la diferenciacin de las especies se daba por pequeos cambios accidentales que,
vistos despus de mucho tiempo, parecan tener un propsito especfico.
En su poca fue muy revolucionario porque iba contra las enseanzas bblicas,
que sealaban que la creacin se hizo por obra de Dios en siete das. Darwin
analiz las caractersticas de los antecesores de las especies e infiri que se
trataba de un proceso evolutivo. En esa poca no se conoca el mecanismo de la
herencia desde el punto de vista molecular. Este se descubri mucho despus, en
los aos 50 de este siglo, cuando Watson y Crick encontraron la forma helicoidal
del DNA. Despus de esto, se entendi mejor que los cambios ocurran porque en
el proceso de copia de la informacin -contenida en los ncleos de las clulas- a
veces hay errores. Unos se deben a que el mecanismo de copia no es perfecto y
otros a que hay agentes exgenos que producen cambios en los genes.

Finalmente, la probabilidad de falla en el proceso de copia de la informacin


gentica es bajsima. Lo que llama la atencin no es que haya errores sino que
sean tan pocos. Si nosotros tomamos la perspectiva de que un ser vivo es la
respuesta a los problemas que plantea el medio ambiente, aquel es un diseo de
la naturaleza que pretende resolver los problemas de su entorno. Un ejemplo es el
del cuerpo de los pinginos: el volumen de estos animales les permite nadar con
muy baja resistencia y a la vez almacenar la grasa en su cuerpo. Este parece ser
el mejor diseo. Pareciera como si un ingeniero lo hubiera creado. Pero tal vez el
ms interesante de todos los diseos lo constituyan los seres humanos, quienes
tienen en su cerebro una caja de simulacin que les permite representar eventos
que todava no suceden. Eso es lo que le otorga su principal ventaja evolutiva al
ser pensante. A diferencia de cualquier otro animal, puede tomar acciones ante
eventos del futuro.
Ms tarde, a alguien se le ocurri que si simulaba eso en la computadora poda
disear aplicaciones en, por ejemplo, la ingeniera, la economa, la toma de
decisiones financieras, etctera. Un algoritmo gentico trabaja de esa forma, con
conjuntos de individuos y propone soluciones distintas. Simulamos que la
representacin, frecuentemente binaria, corresponde a los genes del individuo, su
ADN, y su interpretacin como nmeros, por ejemplo- a las caractersticas
observables el color de sus ojos, su estatura, etctera. A los individuos, los
describimos como cadenas de nmeros y un conjunto de stas forman una
poblacin. As se generan infinidad de individuos y representamos lo que hace la
naturaleza. Luego, observamos las caractersticas que constituyen a las mejores
soluciones y calificamos a los individuos de manera anloga a la forma en que a
naturaleza califica a los individuos ms aptos permitindoles sobrevivir con
mayor probabilidad. De la poblacin escogemos a los individuos ms
sobresalientes y seleccionamos un subconjunto de ellos. De esta forma imitamos
el procedimiento de seleccin natural.
Despus la naturaleza cre el sexo. El sexo es un invento maravilloso de la
evolucin, a travs del cual los genes de ambos padres se combinan para
rpidamente privilegiar las caractersticas que son ms adecuadas para que el
individuo sobreviva en su entorno. Si analizamos la evolucin de los seres vivos,
durante la mayor parte de su historia los organismos fueron asexuales y
evolucionaban lentamente. Cuando apareci el sexo la evolucin se hizo mucho
ms rpida. En computacin hacemos lo mismo. De los individuos tomamos una
cantidad determinada de caractersticas que van a ser del padre y otras tantas de
la madre y se intercambian, de tal suerte que estamos haciendo lo mismo que los
seres vivos. Nosotros tenemos 50% de la madre y el otro 50 del padre, pero
somos distintos de los dos. Eso tambin se hace con algoritmos genticos.
Finalmente, igual que en la naturaleza, se consideran las mutaciones. Contamos
con individuos nuevos con las caractersticas de los mejores, pero mezclados y
adems con ciertas mutaciones para explorar nuevas caractersticas. En la
computadora tenemos la ventaja de que podemos hacer eso varias miles o
millones de veces por segundo. Lo que a la naturaleza le toma millones de aos,
nosotros lo hacemos en unos segundos. El resultado es que tengo una poblacin
de individuos y entre ellos, uno va a ser el mejor. Como por arte de magia
resolvemos el problema de la manera ms econmica posible porque en cada

generacin hacemos un proceso de seleccin, cruzamiento y mutacin, para


finalmente encontrar al mejor individuo.
Por ejemplo, en el CIC, un estudiante de maestra hizo su tesis sobre el tema de
las estructuras para construccin utilizando algoritmos genticos y encontr que
son casi 40% ms baratas de las que se disean sin tomar en cuenta a stos
ltimos.
Todo Empez en los 60
Desde cundo se usan los algoritmos genticos? Desde cundo existen?
Al respecto, el doctor Kuri refiri: En los 60, dos investigadores alemanes
-Shwefel y Rechenberg- inventaron las estrategias evolutivas, con las que
disearon elementos de avin. Ellos trabajaron la evolucin, pero sin tomar en
consideracin la parte gentica, sin hacer mezclas de ese tipo. Simple y
sencillamente tomaron en cuenta la herencia y la mutacin. Tuvieron mucho xito
pero como su trabajo tena implicaciones militares, se clasific la tecnologa y no
se alent la publicacin del tema. Una dcada despus, el estadounidense John
Holland se aplic a la misma idea, pero s consider la parte gentica. Fue
precisamente l quien los bautiz como algoritmos genticos.
El auge de esta tcnica empez a principios de los 80 y realmente se reconoci
como una cuestin muy til a principios de los 90. A partir de entonces ha tenido
una explosin fantstica; segn el investigador mexicano Carlos Coello se
publican alrededor de 100 artculos diarios sobre el tema. Parece exagerado, pero
quiere decir que muchsima gente se dedica a esto.
S Funcionan, pero Siempre?
El investigador politcnico, cuya especialidad es en electrnica digital, diseo
lgico, arquitectura de mquinas, microprocesadores, sistemas de telecomunicaciones digitales y, por supuesto, en algoritmos genticos y su aplicacin a la
inteligencia artificial, seal que los cientficos estn convencidos de que los
algoritmos genticos s funcionan. Ejemplos existen en diversos pases del mundo
y en Mxico. Sin embargo, argument que es necesario saber en qu casos
trabajan y cmo hacer para que siempre sean funcionales.
Necesitamos detectar qu problemas hay en este sistema evolutivo para luego
tratar de corregirlos. Como gente de computacin, me interesa dar con un
programa que sea aplicable a la gran mayora de los problemas. As tiene que ser;
no puedo ofrecer un sistema que a veces realice bien su funcin y otras no.
Los algoritmos genticos se catalogan dentro de las herramientas de la
inteligencia artificial porque el algoritmo aprende. Pero, hay que quitarse de la
mente el significado antropocntrico que se tiene de la palabra aprender: el de
abrir un libro y estudiar. La naturaleza aprende, eso es la evolucin. Nosotros
somos un producto muy acabado de un aprendizaje de muchos millones de aos.
As lo hace un algoritmo gentico: aprende simulando la evolucin. Claro que es
una simulacin parcial, ya que hay muchos elementos no considerados porque no
son necesarios ni tiles en el presente contexto.
Tal es el caso de las cadenas genticas que son diploides. Esto es, cadenas
dobles que permiten que los caracteres llamados recesivos se manifiesten en el
individuo solo si ambos progenitores los presentan. Para qu le sirve eso a la

naturaleza? para que aquellas cosas que fueron buenas en algn momento para
la especie, no se olviden. No obstante, esto en algoritmos genticos no se usa
normalmente porque no lo necesitamos. A nosotros no nos interesa recordar lo
que sucedi con las anteriores generaciones porque en la computadora puedo
trabajar con 100 millones de generaciones en tiempos cortos.
Sus Aplicaciones son muy Vastas
Los algoritmos genticos han sido aplicados con xito en infinidad de problemas,
actuando como un proceso de cmputo que emula la forma de proceder de la
evolucin gentica y opera sobre una poblacin de individuos que representan las
soluciones potenciales a un determinado problema. Al respecto, el doctor Kuri
puntualiz: Los algoritmos genticos son herramientas para optimizar casi
cualquier problema, ya que stos pueden trabajar con base en la descripcin del
medio ambiente, lo cual permite resolver muchos problemas de optimizacin.
Una de las reas donde se aplican es en el aprendizaje automtico. En
inteligencia artificial se conocen como sistemas expertos o programas para la
resolucin de problemas a los que se cuestiona sobre lo qu hay que hacer y da
respuestas. Hay ejemplos de sistemas expertos, por ejemplo, en medicina,
abogaca, etc. La mayor parte de los sistemas expertos no incorporan todas las
reglas ni todo el conocimiento. Queremos que nuevas reglas se vayan
descubriendo y cmo las descubrimos? con algoritmos genticos.
El doctor Kuri ha publicado cerca de 18 trabajos respecto a los algoritmos
genticos. Uno de los primeros fue para hacer modelacin de sistemas
econmicos y predicciones en la economa mexicana: Aunque los sistemas
econmicos son caticos -no existen reglas claras para ellos- slo exhiben esa
caracterstica catica temporalmente. Hay segmentos de tiempo donde s se
comportan de manera ms o menos razonable. Por ello, es posible hacer anlisis
en perodos de estabilidad y lograr predicciones.
Otro de los campos en los que opera esta herramienta es en el reconocimiento de
formas, algo difcil y complicado para la computadora. Un estudiante del CIC est
haciendo su doctorado sobre algoritmos genticos, lo cual lo est conduciendo a
resolver un problema de reconocimiento de rostros.
Por otra parte, tenemos en las telecomunicaciones un mbito ms sofisticado en
el que tambin son aplicables. Cuando enviamos informacin de un continente a
otro utilizamos satlites que funcionan como espejos. Esto es as porque las
seales de alta frecuencia atraviesan la ionosfera y hay que reflejarlas. Poner un
satlite en rbita es muy costoso, por lo que es importante optimizar el uso de los
canales de comunicacin. Si quiero hacer un uso eficiente de stos, envo
informacin y no solamente datos. Aunque en realidad mando los dos, busco que
los ltimos vayan plenos de informacin. La compresin de datos se puede
realizar con los algoritmos genticos, ya que stos aprenden la estructura de los
mensajes y me permiten transmitir ms informacin por el mismo canal.
Otro problema es que en Internet, las imgenes tardan en llegar porque la
informacin no se comprime al mximo. Podramos usar algoritmos genticos para
comprimirla del lado del transmisor y descomprimirla de lado del receptor. Usted
vera que transferencia de imgenes es mucho ms rpida. En eso se est
trabajando.

Otra cuestin que se usa mucho en computacin son las redes neuronales que
pretenden simular la estructura del cerebro. Es un mecanismo interesante que
aprende tambin, pero hay que entrenarlo. A las redes neuronales pueden
entrenarlas los algoritmos genticos para que aprendan mejor. As hacemos
inteligencia artificial, pero no directamente. Las redes neuronales se usan en el
sector financiero, en anlisis de auditoras o en anlisis de riesgo financiero, por
ejemplo. Pero su desempeo es mejor cuando las entrenan los algoritmos
genticos.
Tambin Tienen Limitaciones
Sin embargo, el doctor Kuri admiti que: Los algoritmos genticos no son una
panacea. Aunque los casos en los que no funcionan bien son pocos es muy
importante identificar cules son sus limitaciones y para lograr esto hay que
entenderlos.
Cuando los algoritmos genticos encuentran las soluciones lo hacen muy
rpidamente y en problemas muy complicados, pero se parecen a los humanos en
que no necesariamente hallan cul es la mejor. Qu hacemos nosotros?
Probablemente tomamos la decisin ms rpida o lo que ms se aproxima a lo
mejor que pudimos haber hecho. Ese es el caso de los algoritmos genticos; no
encuentran siempre la mejor solucin cmo sabemos cul es la mejor solucin
en un caso inesperado? Generalmente no lo sabemos, pero s podemos encontrar
una suficientemente buena. As sucede con el algoritmo gentico, que rara vez no
encuentra una solucin cercana a lo ptimo.
Otro aspecto que interviene en el funcionamiento de los algoritmos genticos,
indic el investigador del CIC es el de los problemas engaosos. Hay
informacin en los genes que pueden llevar al algoritmo hacia una solucin
errnea. El algoritmo puede engaarse, es decir, el algoritmo cree que va muy
bien porque que cierta informacin gentica lo lleva hacia un destino equivocado.
De ah la tarea de los especialistas para que esto no pase. En los ejemplos que he
mencionado no hay engao. Son problemas muy especficos aquellos en donde
se presenta esta situacin. No son problemas que ocurran frecuentemente en la
vida real. Adems, el doctor Kuri explic que hay muchas variaciones de
algoritmos genticos. Por ejemplo, con el elitismo hacemos que el mejor
individuo de toda la progenie nunca muera. En algoritmos genticos esto se puede
hacer; en la naturaleza no. O puedo conservar al mejor individuo y hacer
cruzamientos pangenticos. Esto es, se toma un padre y se hace que tenga
miles de descendientes. De manera normal, eso no se lleva a cabo porque
tpicamente se toman parejas. Pero yo puedo encontrar a un individuo que
esparza su herencia gentica en toda la poblacin. El que haya muchas variantes
es lo que hace interesante el estudio de los algoritmos genticos. Podemos hacer
que las poblaciones sean grandes o chicas, que se reproduzcan mucho o poco,
que muten en gran o poca cantidad.
Enfoque Integral y el Trabajo del CIC
Respecto a su especialidad, el doctor Kuri public recientemente el libro A
Comprehensive Approach to Genetic Algorithms in Optimization and Learning

(Enfoque Integral de Algoritmos Genticos en la Optimizacin y Aprendizaje),


dividido en dos volmenes. El primero que se present es acerca de lo qu son
los algoritmos genticos, cmo y por qu funcionan: La teora matemtica de los
algoritmos genticos es muy incipiente porque se trata de un fenmeno muy
complejo, al igual que los de la herencia y la seleccin natural; adems de ser muy
complicada porque es probabilstica. Para su manejo adecuado, es conveniente
conocer una serie de disciplinas como la estadstica, la teora de la informacin y
de la computabilidad, entre otras.
Su autor dijo que con esta publicacin da al lector la posibilidad de encontrar lo
que necesita para entender lo que son los algoritmos genticos, aunque no sepa
estadstica o teora de la informacin; y est dirigida a los estudiantes de los
ltimos semestres de la carrera de computacin y de los primeros aos de
posgrado.
Respecto al trabajo que se realiza en Mxico en este campo, el doctor Kuri
expres que en las diferentes instituciones de educacin superior se llevan a cabo
investigaciones, algunas en la cuestin prctica, otras en la terica. Por ejemplo,
en el ITAM, el Tecnolgico de Monterrey, en Nuevo Len; la Universidad de
Sonora, la UNAM y por supuesto el IPN.
Paralelamente, la ingeniera nacional est aplicando estas herramientas, pero en
general los empresarios mexicanos son muy cautelosos y tienden a no
arriesgarse con tecnologas de vanguardia. Primero, porque en Mxico se disea
poco y despus porque algunos empresarios prefieren a comprar cosas ya
probadas aunque hayan sido diseadas con otro tipo de usuarios en mente: son
consumidores, ms que generadores, de tecnologa.
El CIC tiene como meta producir nuestra propia ciencia y como consecuencia
nuestra propia tecnologa. Solamente as podemos ser independientes. Mientras
no seamos dueos de nuestra tecnologa, difcilmente podemos aspirar a una
verdadera independencia. Si usted ve la historia, en todos los casos, las culturas
hegemnicas son dueas de la tecnologa: en el siglo pasado, por ejemplo, los
ingleses y en ste, los americanos. Toma tiempo. Este es un esfuerzo a mediano
plazo. Por decreto no podemos cambiar la mentalidad de la sociedad mexicana,
sta y el grupo cientfico tienen que convencerse de que pueden asumir su
compromiso social.
Por eso mi libro no est escrito en espaol, sino en ingls. Simplemente me
gustara que lo leyera ms gente. Es una meta ambiciosa, ya que su distribucin
deber darse en el IPN y a nivel internacional. El segundo libro est en proceso y
trata sobre aplicaciones.
Sin embargo, el doctor Kuri Morales est por finalizar, junto con Jos Galaviz,
Algoritmos Genticos, un nuevo libro del IPN, en espaol.
Continuar la evolucin
Los algoritmos genticos van a seguir su evolucin?
El doctor Kuri asegura que as ocurrir porque son muy nuevos en una ciencia
como la computacin, muy joven de por s: Los algoritmos genticos y las redes
neuronales, paradigmas inspirados ambos en analogas con la naturaleza, se han
hecho posibles porque se ha abaratado la computadora. Si hace 15 aos yo

hubiera planteado el paradigma evolutivo, ste hubiera sido prcticamente


incosteable, porque cuando se simulan 10 mil generaciones ocupo minutos de
cmputo. En el tiempo en que estudi el doctorado, el minuto de CPU vala miles
de dlares y me lo hubieran negado.
Los algoritmos genticos son una mezcla del avance de la computacin y de la
gentica. Si las computadoras no fueran tan rpidas y tan baratas este tipo de
tcnicas no tendran sentido, seran muy caras. En la medida en que las
computadoras sigan evolucionando y se abaraten, este tipo de cuestiones se har
ms atractivas.
Actualmente, a un algoritmo gentico aprender le toma segundos o minutos. Con
las nuevas mquinas ms rpidas aprender en milsimas de segundo. Y
entonces tendremos algoritmos genticos hasta en el horno de microondas;
podrn, tambin, reconocer la voz de los dueos de la casa para abrirles la puerta.
Los algoritmos genticos permitirn que las computadoras sepan cules son las
preferencias de su dueo...

S-ar putea să vă placă și