?Qu¨¦ son los algoritmos gen¨¦ticos?
El proceso de buscar soluciones a un problema concreto implica mecanismos que simulan los de la evoluci¨®n de las especies de la biolog¨ªa
Un algoritmo es una serie de pasos que describen el proceso de b¨²squeda de una soluci¨®n a un problema concreto. Y un algoritmo gen¨¦tico es cuando se usan mecanismos que simulan los de la evoluci¨®n de las especies de la biolog¨ªa para formular esos pasos. Es una t¨¦cnica de inteligencia artificial inspirada en la idea de que el que sobrevive es el que est¨¢ mejor adaptado al medio, es decir la misma que subyace a la teor¨ªa de la evoluci¨®n que formul¨® Charles Darwin y que combina esa idea de la evoluci¨®n con la gen¨¦tica.
Pero claro, ?c¨®mo se implementa esto con f¨®rmulas matem¨¢ticas? Pues lo que haces es transformar la resoluci¨®n de cualquier problema en un conjunto de soluciones en el que cada una de ellas funciona como si fuera un individuo. Abordas los problemas de manera que puedas decir, este conjunto de soluciones es como una poblaci¨®n, una poblaci¨®n de soluciones. Imagina que tu problema a resolver es que quieres saber cu¨¢l es el camino m¨¢s corto para ir de Madrid a San Petersburgo y tienes miles de soluciones. Cada camino que encuentres podr¨ªa ser una opci¨®n, si le aplicas un algoritmo gen¨¦tico, cada camino que encuentres ser¨ªa un individuo. Para poder aplicar algoritmos gen¨¦ticos debes ser capaz de convertir las soluciones a tu problema en vectores matem¨¢ticos, entonces, un vector para ir de aqu¨ª a San Petersburgo puede ser uno que enumere las ciudades por las que vas pasando. Puede haber muchos recorridos: unos m¨¢s largos y otros m¨¢s cortos, unos tendr¨¢n m¨¢s tr¨¢fico, otros tendr¨¢n menos tr¨¢fico¡
Los algoritmos gen¨¦ticos tienen como punto de partida un conjunto de soluciones aleatorio. Si continuamos con el ejemplo de San Petersburgo, puedo ir poniendo ciudades y puedo pasar hasta por Australia para ir a Rusia. Obviamente esa combinaci¨®n no va a ser muy eficiente pero el procedimiento acabar¨¢ descart¨¢ndola. Una vez que tengo ese conjunto de soluciones inicial aleatorio aplico lo que se llama una funci¨®n de ajuste o funci¨®n objetivo, que en este caso es llegar en el menor tiempo posible a San Petersburgo. Mi funci¨®n objetivo ser¨ªa el tiempo que tardo teniendo en cuenta el tr¨¢fico y teniendo en cuenta los kil¨®metros que recorro. Esa funci¨®n objetivo sirve para clasificar las soluciones aleatorias: las que duran menos tiempo son mejores y las que duran m¨¢s tiempo son peores. Una vez que las tengo clasificadas lo que hago, y aqu¨ª entra la gen¨¦tica, es reproducirlas. Reproduzco las soluciones, como se reproducen los individuos en una poblaci¨®n, e implemento los tres mecanismos que intervienen en la selecci¨®n de las especies: la reproducci¨®n en s¨ª, el cruzamiento y la mutaci¨®n.
Para imitar la reproducci¨®n hay diferentes mecanismos matem¨¢ticos, uno de ellos es a partir de la funci¨®n objetivo, es decir que se reproduzcan m¨¢s aquellas soluciones que son mejores y por lo tanto las que son peores desaparecer¨¢n; al aplicar el cruzamiento combinas unas soluciones con otras. Por ejemplo, cojo la mitad de una soluci¨®n que pasaba por Australia y la combino con otra soluci¨®n que pasaba por China¡ Las vas combinando garantizando que son l¨®gicas y luego, finalmente, aplicas un procedimiento de mutaci¨®n de forma matem¨¢tica, pues si antes pasaba por S¨ªdney yo implemento matem¨¢ticamente que me cambie S¨ªdney por ejemplo por cualquier otra ciudad australiana y ya no pasa por S¨ªdney, pasa por Melbourne o por d¨®nde sea. Eso ser¨ªa un poco como aplicar las tres din¨¢micas que existen en el mundo biol¨®gico cuando se reproducen las especies.
Una vez que he aplicado todo esto, de nuevo hay que calcular la funci¨®n objetivo de la nueva poblaci¨®n. Ver¨¦ que algunas soluciones habr¨¢n mejorado y otras habr¨¢n empeorado. Quiz¨¢ me d¨¦ soluciones que tardan menos de Madrid a San Petersburgo y otras al rev¨¦s, que tardan much¨ªsimo m¨¢s. Como vuelvo a aplicar el mecanismo de la reproducci¨®n que est¨¢ basado en la funci¨®n objetivo, lo que ocurre es que va a reproducir en mayor n¨²mero las soluciones que tardan menos y va a eliminar aquellas que tarden much¨ªsimo. Y de nuevo vuelvo a aplicar el cruzamiento y las mutaciones entre las mejores soluciones. As¨ª funcionan los algoritmos gen¨¦ticos. Cuando est¨¢s buscando resolver problemas en un campo enorme no es viable el procedimiento enumerativo de ir de una en una porque puedes tener millones y millones de posibles soluciones. Estos algoritmos gen¨¦ticos combinan la aleatoriedad porque se inician con un conjunto de soluciones totalmente aleatorio pero luego tambi¨¦n est¨¢n dirigidas porque buscan el resultado m¨¢s ¨®ptimo. Y gracias a ello encuentras soluciones muy eficientes en muy poco tiempo de computaci¨®n.?
Laura N¨²?ez es doctora en Econom¨ªa, profesora de Finanzas en el IE Business School, IE University.
Pregunta realizada v¨ªa email por Myriam Garc¨ªa S¨¢nchez
Nosotras respondemos es un consultorio cient¨ªfico semanal, patrocinado por la Fundaci¨®n Dr. Antoni Esteve, que contesta a las dudas de los lectores sobre ciencia y tecnolog¨ªa. Son cient¨ªficas y tecn¨®logas, socias de AMIT (Asociaci¨®n de Mujeres Investigadoras y Tecn¨®logas), las que responden a esas dudas. Env¨ªa tus preguntas a nosotrasrespondemos@gmail.com o por Twitter #nosotrasrespondemos.
Coordinaci¨®n y redacci¨®n: Victoria Toro
Tu suscripci¨®n se est¨¢ usando en otro dispositivo
?Quieres a?adir otro usuario a tu suscripci¨®n?
Si contin¨²as leyendo en este dispositivo, no se podr¨¢ leer en el otro.
FlechaTu suscripci¨®n se est¨¢ usando en otro dispositivo y solo puedes acceder a EL PA?S desde un dispositivo a la vez.
Si quieres compartir tu cuenta, cambia tu suscripci¨®n a la modalidad Premium, as¨ª podr¨¢s a?adir otro usuario. Cada uno acceder¨¢ con su propia cuenta de email, lo que os permitir¨¢ personalizar vuestra experiencia en EL PA?S.
En el caso de no saber qui¨¦n est¨¢ usando tu cuenta, te recomendamos cambiar tu contrase?a aqu¨ª.
Si decides continuar compartiendo tu cuenta, este mensaje se mostrar¨¢ en tu dispositivo y en el de la otra persona que est¨¢ usando tu cuenta de forma indefinida, afectando a tu experiencia de lectura. Puedes consultar aqu¨ª los t¨¦rminos y condiciones de la suscripci¨®n digital.