IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
Algoritmo Genético
1. 1
Algoritmo Gen´etico para predecir los cuatro
mejores Equipos de F´utbol del Mundial 2014
Armijos-Cartuche, Andrea-Elizabeth and Rojas-Livisaca, Ronald-Fabricio. (Estudiantes Ingenier´ıa en Sistemas)
Paz-Arias, Henry-Patricio Ingeniero en Sistemas
Resumen—Genetic algorithms are an achievement of Artificial
Intelligence in its attempt to replicate biological behaviors, with
scientific advances that implies, through computation. They are
search algorithms based on the mechanics of natural selection
and genetics. They use historical data to find new points of search
for an optimal solution of the problem. In this paper a genetic
algorithm is performed to predict the top four teams of the World
Cup 2014.
Index Terms—Algoritmos Gen´eticos, Equipos de F´utbol, Mun-
dial 2014
I. INTRODUCCI ´ON
El comportamiento del ser humano en su entorno con el
paso del tiempo ha ido aumentando. As´ı mismo, va compren-
diendo que, si era capaz de controlar muchos aspectos de la
vida cotidiana, y su actuar con lo que le rodeaba, no lo era
para otros.
Pues es as´ı que la inteligencia artificial es responsable de
muchos de esos logros. Los pioneros de esta ciencia estaban
tan interesados en la electr´onica, como en la biolog´ıa, y por
eso sus aplicaciones iban desde tratar de modelizar el cerebro,
de imitar el proceso de aprendizaje humano, y de simular la
evoluci´on biol´ogica[3].
Tras varios a˜nos se marca el florecimiento del inter´es
de la comunidad cient´ıfica por estos temas computacionales
inspirados en la biolog´ıa, que han visto como su desarrollo
les llevaba a cosas inimaginables, primero en el campo de las
Redes Neuronales, luego en el del Aprendizaje, y por ´ultimo
en lo que ahora se conoce como “computaci´on evolutiva”,
de la que los algoritmos gen´eticos constituyen su m´aximo
exponente[3].
II. ESTADO DEL ARTE
II-A. Algoritmos Gen´eticos
II-A1. Antecedentes hist´oricos: Los algoritmos gen´eticos
tienen sus antecedentes en la biolog´ıa y comienzan con Charles
Darwin, que con su libro El origen de las especies por
medio de la selecci´on natural o la preservaci´on de las razas
favorecidas en su lucha por la vida, nos habla sobre los
principios de la selecci´on natural.
Charles Darwing Los principios b´asicos de los algoritmos
gen´eticos se derivan de las Leyes de la Vida Natural descritos
por Darwin:
A. Armijos, Universidad Nacional de Loja, Loja, Ecuador, E-mail:
aearmijosc@unl.edu.ec
R. Rojas, Universidad Nacional de Loja, Yanzatza, Ecuador, E-mail:
rfrojasl@unl.edu.ec
Existe una poblaci´on de individuos con diferentes propie-
dades y habilidades. As´ı mismo existe una limitaci´on sobre el
n´umero de individuos que existen en una determinada pobla-
ci´on. La naturaleza crea nuevos individuos con propiedades
similares a los individuos existentes. Los individuos m´as pro-
metedores se seleccionan m´as a menudo para la reproducci´on
de acuerdo con la selecci´on natural. Los algoritmos gen´eticos
imitan los principios de la vida descritos y los utilizan para
prop´ositos de optimizaci´on.
Una de las principales deficiencias del argumento de Darwin
es que, a pesar de que la herencia juega un papel preponde-
rante en su teor´ıa, no ofrece una explicaci´on acerca de su
funcionamiento. Sin embargo, desde Mendel se conoce que la
herencia se produce a trav´es del c´odigo gen´etico presente en
las c´elulas reproductivas [5].
II-A2. Definici´on: Los Algoritmos Gen´eticos (AGs) son
m´etodos adaptativos que pueden usarse para resolver pro-
blemas de b´usqueda y optimizaci´on. Est´an basados en el
proceso gen´etico de los organismos vivos. A lo largo de las
generaciones, las poblaciones evolucionan en la naturaleza
de acorde con los principios de la selecci´on natural y la
supervivencia de los m´as fuertes, postulados por Darwin.
Por imitaci´on de este proceso, los Algoritmos Gen´eticos son
capaces de ir creando soluciones para problemas del mundo
real. La evoluci´on de dichas soluciones hacia valores ´optimos
del problema depende en buena medida de una adecuada
codificaci´on de las mismas[1].
B´asicamente, el Algoritmo Gen´etico funciona como sigue:
en cada generaci´on, se crea un conjunto nuevo de “criaturas
artificiales” (cadenas) utilizando bits y partes m´as adecuadas
del progenitor. Esto involucra un proceso aleatorio que no es,
en absoluto, simple. La novedad que introducen los Algorit-
mos Gen´eticos es que explotan eficientemente la informaci´on
hist´orica para especular sobre nuevos puntos de b´usqueda,
esperando un funcionamiento mejorado[2].
Una de sus caracter´ısticas principales es la de ir perfec-
cionando su propia heur´ıstica en el proceso de ejecuci´on,
por lo que no requiere largos per´ıodos de entrenamiento
especializado por parte del ser humano, principal defecto de
otros m´etodos para solucionar problemas, como los Sistemas
Expertos[1].
II-A3. Clases de Algoritmos Gen´eticos: A continuaci´on,
se describen las clases de algoritmos gen´eticos:
Generacionales: Se asemejan a la forma de reproducci´on
de los insectos, donde una generaci´on pone huevos, se
aleja geogr´aficamente o muere y es sustituida por una
2. 2
nueva.
De estado fijo: Utilizan el esquema generacional de
los mam´ıferos y otros animales de vida larga, donde
coexisten padres y sus descendientes, permitiendo que los
hijos sean educados por sus progenitores, pero tambi´en
que a la larga se genere competencia entre ellos.
Paralelo: Se origina dos modelos que toman en cuenta
esta variaci´on, y utilizan no una poblaci´on como los
anteriores sino m´ultiples concurrentemente.
Modelos de Isla: Si se tiene una poblaci´on de indivi-
duos, esta se divide en sub-poblaciones que evolucionan
independientemente. Ocasionalmente se producen migra-
ciones entre ellas permiti´endoles intercambiar material
gen´etico.
Modelo celular: Los individuos est´an distribuidos al
azar sobre la matriz. Posteriormente empiezan a emerger
zonas como cromosomas y adaptaciones semejantes. La
reproducci´on y selecci´on local crea tendencias evolutivas
aisladas[2].
II-A4. Representaci´on: Todos los organismos vivos est´an
constituidos por c´elulas, y cada c´elula contiene uno o m´as
cromosomas (cadenas de ADN), que le sirven como una
especie de “plano” al organismo. Un cromosoma puede ser
conceptualmente dividido en genes cada uno de los cuales
codifica una prote´ına. En t´erminos generales, se puede decir
que un gen se codifica como si fuera un rasgo, como puede
serlo el color de ojos. Cada gen se encuentra en una posici´on
particular del cromosoma, y est´a formado por alelos.
Se supone que los individuos, pueden representarse como un
conjunto de par´ametros (genes), los cuales agrupados forman
una ristra de valores, a menudo referida como cromosoma.
Debe existir una representaci´on de estos genes para poder
utilizarlos posteriormente en el algoritmo gen´etico y dotarles
de unos valores. Se pueden considerar tres tipos b´asicos de
representaci´on o codificaci´on de los genes[5]
Binaria: en ella se utiliza un vector cuya longitud es la
del n´umero de genes de cada individuo y el valor que
puede tomar cada elemento es un n´umero binario.
Entera: en ella se utiliza un vector cuya longitud es la
del n´umero de genes de cada individuo y el valor que
puede tomar cada elemento es un n´umero entero.
Real: en ella se utiliza un vector cuya longitud es la del
n´umero de genes de cada individuo y el valor que puede
tomar cada elemento es un n´umero real[5].
II-B. Algoritmo
Fig 1: Esquema Algoritmo
Desarrollado por John H. Holland, el algoritmo gen´etico
opera entonces a nivel de genotipo de las soluciones mediante
la siguiente secuencia:
1. Comenzar con una poblaci´on inicial, la cual puede ser
generada de manera aleatoria.
2. Calcular el fitness (aptitud) de cada individuo.
3. Aplicar el operador de selecci´on con base en el fitness
de la poblaci´on.
4. Aplicar los operadores gen´eticos de reproducci´on, cruce
y mutaci´on a la poblaci´on actual para generar a la
poblaci´on de la siguiente generaci´on.
5. Ir al paso 2 hasta que la condici´on de parada se satisfaga.
6. Cuando se cumple la condici´on de parada, se devuelve
al mejor individuo encontrado (bien el mejor de todas
las generaciones, bien el mejor de la ´ultima generaci´on).
Al igual que en muchas otras heur´ısticas, el comportamien-
to del algoritmo gen´etico es altamente dependiente de los
par´ametros iniciales (tama˜no de la poblaci´on, porcentaje de
cruce, porcentaje de mutaci´on, n´umero de generaciones, etc.),
por lo que ser´a necesario ajustar esos par´ametros para tratar
de mejorar la soluci´on para los objetivos del problema. A
cada iteraci´on de este proceso se le denomina una generaci´on.
Un algoritmo gen´etico t´ıpicamente se itera de 50 a 500 o
incluso m´as generaciones. El conjunto entero de generaciones
se denomina una ejecuci´on. Al final de una ejecuci´on existen
a menudo uno o varios cromosomas altamente adecuados en
la poblaci´on, y que pueden ser elegidos como soluci´on al
problema.
La funci´on de evaluaci´on o de fitness de un problema es
realmente la funci´on que se desea optimizar. Su dise˜no es junto
con el del genotipo, una de las caracter´ısticas m´as importantes
a la hora de encontrar la mejor soluci´on a un problema.
II-B1. Elementos de Algoritmos Gen´eticos: Como los AGs
se encuentran basados en los procesos de evoluci´on de los
seres vivos, casi todos sus conceptos se basan en biolog´ıa y
gen´etica que son f´aciles de comprender.
Individuos: Un individuo es un ser que caracteriza su
propia especie. El individuo es un cromosoma y es el
c´odigo de informaci´on sobre el cual opera el algoritmo.
Cada soluci´on parcial del problema a optimizar est´a co-
dificada en forma de cadena o String en un alfabeto
determinado, que puede ser binario[2].
Fig 1: Individuos
3. 3
Poblaci´on: A un conjunto de individuos (Cromosomas)
se le denomina poblaci´on. El m´etodo de AGs consiste en
ir obteniendo de forma sucesiva distintas poblaciones.
Operadores Gen´eticos: Son los diferentes m´etodos u ope-
raciones que se pueden ejercer sobre una poblaci´on y que nos
permiten poblaciones nuevas[2]:
Selecci´on: El proceso de selecci´on sirve para escoger a
los individuos de la poblaci´on mejor adaptados, para que
act´uen de progenitores de la siguiente generaci´on. En la
naturaleza existen varios factores que intervienen para
que un individuo pueda tener descendencia.
Sin embargo, en la realidad es posible que “el mejor”
individuo no pueda reproducirse, pero otro individuo de
“peor calidad” pueda conseguirlo. Aunque este hecho es
menos probable, sigue siendo posible. En los algoritmos
gen´eticos, la selecci´on es un conjunto de reglas que
sirven para elegir a los progenitores de la siguiente
generaci´on. Estos progenitores se reproducir´an y gene-
rar´an descendencia. Un sistema muy utilizado en los
algoritmos gen´eticos es la selecci´on por torneo. Este sis-
tema consiste en escoger aleatoriamente de la poblaci´on
un cierto n´umero de individuos. De esos individuos se
escoge el mejor de todos para ser el padre. Para escoger
la madre se repite el proceso[5].
Reproducci´on: En este contexto, se entender´a por “re-
producci´on” la clonaci´on de un individuo. Es decir, un
individuo pasar´a a la siguiente generaci´on sin modifi-
caci´on. De esta manera, la reproducci´on es un operador
gen´etico que se contrapone al cruce y la mutaci´on, puesto
que estos ´ultimos modifican los individuos que pasan a
la siguiente generaci´on. El objetivo de la reproducci´on
es mantener en la siguiente generaci´on a individuos con
fitness alta de la presente generaci´on.
Relacionado con el concepto de reproducci´on est´a el de
“elitismo”, el cual mantiene a los mejores individuos de
una generaci´on a la siguiente, para que no se pierda su
informaci´on[5].
Cruce: Se trata de un operador cuya labor es elegir
un lugar, y cambiar las secuencias antes y despu´es de
esa posici´on entre dos cromosomas, para crear nueva
descendencia (por ejemplo, las cadenas 10010011 y
11111010 pueden cruzarse despu´es del tercer lugar para
producir la descendencia 10011010 y 11110011). Imita la
recombinaci´on biol´ogica entre dos organismos haploides.
Fig 2: Cruce
Mutaci´on: Este operador produce variaciones de modo
aleatorio en un cromosoma (por ejemplo, la cadena
00011100 puede mutar su segunda posici´on para dar
lugar a la cadena 01011100). La mutaci´on puede darse
en cada posici´on de un bit en una cadena, con una
probabilidad, normalmente muy peque˜na (por ejemplo
0.001)[2].
Fig 3: Mutaci´on
Estructura de Algoritmos Gen´eticos:
Fig 4: Estructura General de Algoritmos Gen´eticos
Codificaci´on: los elementos caracter´ısticos del problema
se pueden representar de tal forma que resulte sencilla
su implementaci´on y comprensi´on.
Poblaci´on inicial: para constituir la poblaci´on inicial,
que ser´a la poblaci´on base de las sucesivas generaciones,
existen varios m´etodos.
Funci´on Fitness: asigna a cada cromosoma un n´umero
real, que refleja el nivel de adaptaci´on al problema del
individuo representado por el cromosoma. La funci´on de
aptitud (fitness) es la que permite valorar la aptitud de
los individuos y debe tomar siempre valores positivos.
Ambas funciones suelen ser iguales, pero puede ser
que la funci´on objetivo sea muy compleja, tome valores
negativos, o no proporcione un valor num´erico y, por
lo tanto, sea necesario definir una funci´on de aptitud
diferente. En un algoritmo gen´etico la informaci´on ha de
codificarse para poder trabajar adecuadamente con ella.
C´omo hemos visto, existen numerosos sistemas de codifi-
caci´on, aunque nosotros utilizaremos la codificaci´on real.
Una vez definido el sistema de codificaci´on a emplear se
ver´a c´omo act´uan los operadores b´asicos de selecci´on,
cruce y mutaci´on sobre este c´odigo.
Selecci´on: es el proceso por el cual se eligen una o varias
parejas de individuos de la poblaci´on inicial para que
desempe˜nen el papel de progenitores, cruz´andose poste-
riormente y obteniendo descendencia o permaneciendo
en la siguiente generaci´on.
Cruzamiento: el operador cruce permite el intercam-
bio de informaci´on entre individuos de una poblaci´on,
recombinando los cromosomas, dando lugar a nuevos
individuos.
Mutaci´on: el operador mutaci´on se aplica tras el
cruce con el objetivo de incrementar la diversidad
poblacional[2].
II-B2. Implementaci´on de Algoritmos Gen´eticos en Java:
Para la implementaci´on de algoritmos gen´eticos, disponemos
de un framework para Java llamado JGAP (Java Genetic
Algorithms Package)
4. 4
JGAP proporciona los m´etodos y mecanismos b´asicos para
implementarlo. Fue dise˜nado para que fuera muy f´acil de
usar, siendo altamente modular y configurable, llegando a
ser realmente f´acil crear incluso nuevos y personalizados
operadores gen´eticos.
Se distribuye bajo licencia GPL. En su p´agina web podemos
encontrar gran variedad de ejemplos de uso y documenta-
ci´on[5].
A continuaci´on mostramos el diagrama de clases implemen-
tado en JGAP:
Fig 5: Diagrama de clases implementado en JGAP
JGAP: El mismo est´a dise˜nado para hacer casi todo el tra-
bajo evolutivo para que de una manera relativamente gen´erico.
Sin embargo, no se tiene conocimiento de la problem´atica
espec´ıfica que en realidad est´as tratando de resolver, y por
lo tanto no tiene manera intr´ınseca de decidir si una posible
soluci´on es mejor que otra posible soluci´on para su problema
espec´ıfico. Ah´ı es donde la funci´on de aptitud entra en juego:
se trata de un m´etodo ´unico que debe implementar que acepte
una soluci´on potencial problema y devuelve un valor entero
que indica lo bien (o .ajuste”) que la soluci´on est´a en relaci´on
con otras posibles soluciones. Cuanto mayor sea el n´umero,
mejor ser´a la soluci´on. Cuanto m´as bajo sea el n´umero (1
es el valor m´as bajo de la aptitud legal), el m´as pobre es la
soluci´on. JGAP utilizar´a estas mediciones de la aptitud para
evolucionar la poblaci´on de soluciones hacia un sistema m´as
´optimo de las soluciones[6].
II-C. Mundial 2014
La Copa Mundial de la FIFA Brasil 2014 ser´a la XX edici´on
de la Copa Mundial de F´utbol. Esta versi´on del torneo se
realizar´a en Brasil entre el 12 de junio y el 13 de julio de
2014, siendo la segunda vez que este certamen deportivo se
realiza en Brasil despu´es de la Copa Mundial de F´utbol de
1950.
En 2004, la FIFA eligi´o a Sudam´erica como sede de la
Copa Mundial de 2014. Pese al entusiasmo inicial de algunos
pa´ıses, solo Brasil y Colombia presentaron sus candidaturas
oficiales antes del cierre del plazo, el 18 de diciembre de
2006. Algunos meses despu´es, Colombia retir´o su candidatura,
dejando como ´unico postulante a Brasil. El 30 de octubre de
2007, la FIFA design´o de manera oficial a Brasil como el pa´ıs
que albergar´a la Copa del Mundo de F´utbol de 2014.
El ganador del torneo participar´a en su calidad de campe´on
del mundo en Copa FIFA Confederaciones 2017, a realizarse
en Rusia.
Como dato destacable, por primera vez en una Copa Mun-
dial de F´utbol, los partidos utilizar´an la tecnolog´ıa que ofrece
el bal´on inteligente, para determinar en jugadas dudosas, si el
bal´on cruz´o o no toda la l´ınea de gol.
II-C1. Grupos del Mundial :
Fig 6: Grupos Mundial 2014
II-C2. Ranking de la FIFA :
Fig 7: Ranking FIFA Mundial 2014
5. 5
II-C3. N´umero de Campeonatos Obtenidos :
Fig 8: Equipos Campeonatos
III. RESULTADOS
III-A. Vistas Equipos del Mundial 2014
Pantalla Principal
Para inicializar tenemos la pantalla principal donde me
presenta el men´u archivo que contiene diversas opciones
que se podr´an efectuar en este proyecto.
Fig 9: Pantalla Principal
Men´u Archivo
En la cual tenemos las opciones de: Agregar Equipos, Ver
Grupos clasificados, Generar cuatro mejores equipos del
mundial 2014, Buscar equipos y Ver equipos clasificados.
Fig 10: Men´u Archivo
Men´u Agregar Equipos
Nos presenta la pantalla donde se van a ingresar los
datos de cada equipo, los cuales son c´odigo, continente,
nombre del equipo, puntos del ranking, posici´on del
ranking, grupo en el cual se encuentra, t´ıtulos ganados
y la informaci´on acerca de los tres ´ultimos partidos
jugados.
Fig 11: Agregar Equipos
Men´u Ver Grupos
Donde podremos visualizar los grupos que contiene a los
equipos clasificados para el mundial 2014.
Fig 12: Ver Grupos
Men´u Generar cuatro mejores equipos
En esta pantalla se podr´a efectuar la generaci´on de
acuerdo al algoritmo gen´etico de los cuatro mejores
equipos del mundial 2014.
Fig 13: Generar cuatro mejores equipos
6. 6
Para darnos cuenta que de acuerdo a la funci´on fitness
los equipos no siempre ser´an los mismos, se presenta tres
ejecuciones efectuadas, donde se var´ıa los equipos gene-
rados como los cuatros mejores del mundo. Y adem´as
la consola que presenta las interacciones realizadas para
efectuar esta generaci´on.
1. Primera Ejecuci´on
Fig 14: Primera Ejecuci´on
2. Segunda Ejecuci´on
Fig 15: Segunda Ejecuci´on
Men´u Buscar Equipo En esta pantalla se podr´a efectuar
b´usquedas sea por c´odigo, equipo, grupo o contiene.
Fig 16: Buscar Equipo
1. B´usqueda por Grupo
Fig 17: B´usqueda por Grupo
Modificar Equipo
Dentro de la pantalla b´usqueda adem´as tenemos la opci´on
de Editar Equipo, la cual nos env´ıa a una nueva pantalla
para editar los datos de cada equipo, tomando en cuenta
que no se puede dejar campos vac´ıos.
Fig 18: Modificar Equipo
1. Resultado Equipo Modificado
Fig 19: Equipo Modificado
Men´u Ver Equipos Clasificados En esta pantalla se vi-
sualiza todos los equipos ingresados.
Fig 20: Equipos Clasificados
7. 7
III-B. Funci´on Fitness
M´etodo FitnessFunction(evaluate): En este m´etodo nos
da el valor de aptitud de acuerdo al problema a resolver.
Adem´as realiza un recorrido de la poblaci´on para obtener
los individuos de la poblaci´on e ir comparando para
escoger la soluci´on optima.
Fig 21: FitnessFunction(evaluate)
M´etodo getGenreScore: En este m´etodo obtengo los
valores de cada individuo para determinar s´ı es o no el
mejor.
Fig 22: getGenreScore
M´etodo SeleccionarFittestEquipos: Es un m´etodo para
presentar los valores en consola de acuerdo a la poblaci´on
evolucionada.
Fig 23: SeleccionarFittestEquipos
M´etodo testSelectFitnesstEquipos: Me permite obtener el
valor de la poblaci´on de acuerdo al valor de aptitud o
fitness.
Fig 24: testSelectFitnesstEquipos
M´etodo TestEquipoFitness: Este m´etodo es toda la con-
figuraci´on inicial.
Fig 25: TestEquipoFitness
8. 8
IV. CONCLUSIONES
• Los algoritmos gen´eticos tienen la ventaja de ofrecer un
mecanismo adaptativo de resoluci´on de problemas, de
forma que aunque el problema cambie, ´este se pueda
seguir resolviendo. Resolver un problema cambiante”,
llevado al l´ımite, es igual a Resolver cualquier problema”.
Seg´un este planteamiento podr´ıamos pensar en dise˜nar
un esquema com´un que facilite a los agentes aprender
en cualquier entorno de problema.
• Los algoritmos gen´eticos garantizan la b´usqueda de una
soluci´on optima para las condiciones particulares del
problema a trav´es de un procedimiento aleatorio de
ensayo y error.
• En el desarrollo de un algoritmo gen´etico se realiza
un an´alisis, se plantea la estructura del cromosoma,
la poblaci´on con la que se trabajar´a, los m´etodos de
evaluaci´on, selecci´on, cruzamiento y mutaci´on.
• Estos tienen un gran atractivo debido a la capacidad para
encontrar un balance de explotaci´on y exploraci´on de
soluciones a lo largo de su evoluci´on.
• En algoritmos gen´eticos la parte m´as importante es la
funci´on de .adaptaci´on2
a que de acuerdo a esta evolucio-
nan los par´ametros indicados.
• La estructura general del algoritmo usualmente es la
misma para cualquier aplicaci´on pr´actica, por lo cual
perfectamente pudo dar la soluci´on de los cuatro mejores
equipos del mundial 2014.
V. RECOMENDACIONES
• En cuanto al desarrollo de un algoritmo inform´atico
es preferible realizar un estudio sobre el tama˜no de la
poblaci´on y la cantidad de evoluciones que es propicio
utilizar en el modelo a implementarse, ya que esto im-
plica en el comportamiento del Algoritmo y la ejecuci´on
del sistema.
• Realizar un estudio m´as profundo del tema algoritmos
gen´eticos ya que este permite dar soluciones a problemas
de diversa complejidad.
• Para los alumnos de la carrera profesional, efectuar in-
vestigaci´on en cuanto a inteligencia artificial, algoritmos
gen´eticos y sus ramas afines, para contribuir al desarrollo
y mejoramiento tanto personal como institucional.
VI. ENLACE
Disponible en:
http://mundial-ageneticos.googlecode.com/svn/trunk/
mundialBrasil/MundialBrasil2014/
https://github.com/anelar21/Mundial2014
AlgoritmosGeneticos.git
REFERENCIAS
[1] @inproceedingsgeneticos2007, title=Algoritmos G´en´eticos,
url=http://nando1-utb.blogspot.com/p/algoritmos-geneticos.html,
year=2011,
[2] @inproceedingsSocorro2012, author = Socorro, Ingrid and Sevilla,
Patricia and Gamez, Patricio, booktitle = Algoritmos Gen´eticos,
pages = 18, title = expo1-121113073140-phpapp01, url =
http://www.slideshare.net/MarcoGmez/algoritmo-genetico-15154635,
year = 2012
[3] @articleRodriguez-pinero1960, author = Rodr´ıguez-pi˜nero, Piedad
Tolmos, keywords = algoritmo gen´etico, bits,cadena de, capacidad, gen
cromosoma,operador,optimizaci´on, poblaci´on, problemas de b´usqueda,
title = Introducci´on a los algoritmos gen´eticos y sus aplicaciones,
url=http://www.uv.es/asepuma/X/J24C.pdf, year = 1960
[4] @articleRussell, author = Russell, S, file = Tema-3 4 algoritmos
geneticos.pdf:pdf, title = TEMA 3: ´Areas de la IA: Ejemplos de in-
vestigaci´on actual., url = http://personales.upv.es/ccarrasc/extdoc/Tema-
3 4 algoritmos geneticos.pdf
[5] L ´OPEZ Juan Carlos, “Introducci´on a los algoritmos gen´eticos: como
implementar un algoritmo gen´etico en JAVA”, 2010, Recuperado de:
http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=jgap
[6] Meffert Klaus, “Primeros Pasos con JGAP”, 2012, Recuperado de:
http://jgap.sourceforge.net/doc/tutorial.html
Andrea Armijos
Estudiante de la Carrera de Ingenier´ıa en Sistemas de la
Universidad Nacional de Loja, Conocedora en An´alisis y Dise˜no de
Software, Gesti´on de Redes, Mantenimiento y Seguridad, Provincia
de Loja, Ciudad Loja, Ecuador, 2014.
Ronald Rojas
Estudiante de la Carrera de Ingenier´ıa en Sistemas de la
Universidad Nacional de Loja, Programador Junior en Matlab, Pro-
gramador Senior en Java, Provincia de Zamora Chinchipe, Ciudad
Yanzatza, Ecuador, 2014.