Unl articulo cientifico-1

8
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. I NTRODUCCI ´ 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: [email protected] R. Rojas, Universidad Nacional de Loja, Yanzatza, Ecuador, E-mail: [email protected] Existe una poblaci´ on de individuos con diferentes propie- dades y habilidades. As´ ı mismo existe una limitaci´ on sobre el 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 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]. 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

Transcript of Unl articulo cientifico-1

Page 1: Unl articulo cientifico-1

1

Algoritmo Genetico para predecir los cuatromejores Equipos de Futbol 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 ArtificialIntelligence in its attempt to replicate biological behaviors, withscientific advances that implies, through computation. They aresearch algorithms based on the mechanics of natural selectionand genetics. They use historical data to find new points of searchfor an optimal solution of the problem. In this paper a geneticalgorithm is performed to predict the top four teams of the WorldCup 2014.

Index Terms—Algoritmos Geneticos, Equipos de Futbol, Mun-dial 2014

I. INTRODUCCION

El comportamiento del ser humano en su entorno con elpaso del tiempo ha ido aumentando. Ası mismo, va compren-diendo que, si era capaz de controlar muchos aspectos de lavida cotidiana, y su actuar con lo que le rodeaba, no lo erapara otros.

Pues es ası que la inteligencia artificial es responsable demuchos de esos logros. Los pioneros de esta ciencia estabantan interesados en la electronica, como en la biologıa, y poreso sus aplicaciones iban desde tratar de modelizar el cerebro,de imitar el proceso de aprendizaje humano, y de simular laevolucion biologica[3].

Tras varios anos se marca el florecimiento del interesde la comunidad cientıfica por estos temas computacionalesinspirados en la biologıa, que han visto como su desarrolloles llevaba a cosas inimaginables, primero en el campo de lasRedes Neuronales, luego en el del Aprendizaje, y por ultimoen lo que ahora se conoce como “computacion evolutiva”,de la que los algoritmos geneticos constituyen su maximoexponente[3].

II. ESTADO DEL ARTEII-A. Algoritmos Geneticos

II-A1. Antecedentes historicos: Los algoritmos geneticostienen sus antecedentes en la biologıa y comienzan con CharlesDarwin, que con su libro El origen de las especies pormedio de la seleccion natural o la preservacion de las razasfavorecidas en su lucha por la vida, nos habla sobre losprincipios de la seleccion natural.

Charles Darwing Los principios basicos de los algoritmosgeneticos se derivan de las Leyes de la Vida Natural descritospor Darwin:

A. Armijos, Universidad Nacional de Loja, Loja, Ecuador, E-mail:[email protected]

R. Rojas, Universidad Nacional de Loja, Yanzatza, Ecuador, E-mail:[email protected]

Existe una poblacion de individuos con diferentes propie-dades y habilidades. Ası mismo existe una limitacion sobre elnumero de individuos que existen en una determinada pobla-cion. La naturaleza crea nuevos individuos con propiedadessimilares a los individuos existentes. Los individuos mas pro-metedores se seleccionan mas a menudo para la reproduccionde acuerdo con la seleccion natural. Los algoritmos geneticosimitan los principios de la vida descritos y los utilizan parapropositos de optimizacion.

Una de las principales deficiencias del argumento de Darwines que, a pesar de que la herencia juega un papel preponde-rante en su teorıa, no ofrece una explicacion acerca de sufuncionamiento. Sin embargo, desde Mendel se conoce que laherencia se produce a traves del codigo genetico presente enlas celulas reproductivas [5].

II-A2. Definicion: Los Algoritmos Geneticos (AGs) sonmetodos adaptativos que pueden usarse para resolver pro-blemas de busqueda y optimizacion. Estan basados en elproceso genetico de los organismos vivos. A lo largo de lasgeneraciones, las poblaciones evolucionan en la naturalezade acorde con los principios de la seleccion natural y lasupervivencia de los mas fuertes, postulados por Darwin.Por imitacion de este proceso, los Algoritmos Geneticos soncapaces de ir creando soluciones para problemas del mundoreal. La evolucion de dichas soluciones hacia valores optimosdel problema depende en buena medida de una adecuadacodificacion de las mismas[1].

Basicamente, el Algoritmo Genetico funciona como sigue:en cada generacion, se crea un conjunto nuevo de “criaturasartificiales” (cadenas) utilizando bits y partes mas adecuadasdel progenitor. Esto involucra un proceso aleatorio que no es,en absoluto, simple. La novedad que introducen los Algorit-mos Geneticos es que explotan eficientemente la informacionhistorica para especular sobre nuevos puntos de busqueda,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 ejecucion,por lo que no requiere largos perıodos de entrenamientoespecializado por parte del ser humano, principal defecto deotros metodos para solucionar problemas, como los SistemasExpertos[1].

II-A3. Clases de Algoritmos Geneticos: A continuacion,se describen las clases de algoritmos geneticos:

Generacionales: Se asemejan a la forma de reproduccionde los insectos, donde una generacion pone huevos, sealeja geograficamente o muere y es sustituida por una

Page 2: Unl articulo cientifico-1

2

nueva.De estado fijo: Utilizan el esquema generacional delos mamıferos y otros animales de vida larga, dondecoexisten padres y sus descendientes, permitiendo que loshijos sean educados por sus progenitores, pero tambienque a la larga se genere competencia entre ellos.Paralelo: Se origina dos modelos que toman en cuentaesta variacion, y utilizan no una poblacion como losanteriores sino multiples concurrentemente.Modelos de Isla: Si se tiene una poblacion de indivi-duos, esta se divide en sub-poblaciones que evolucionanindependientemente. Ocasionalmente se producen migra-ciones entre ellas permitiendoles intercambiar materialgenetico.Modelo celular: Los individuos estan distribuidos alazar sobre la matriz. Posteriormente empiezan a emergerzonas como cromosomas y adaptaciones semejantes. Lareproduccion y seleccion local crea tendencias evolutivasaisladas[2].

II-A4. Representacion: Todos los organismos vivos estanconstituidos por celulas, y cada celula contiene uno o mascromosomas (cadenas de ADN), que le sirven como unaespecie de “plano” al organismo. Un cromosoma puede serconceptualmente dividido en genes cada uno de los cualescodifica una proteına. En terminos generales, se puede decirque un gen se codifica como si fuera un rasgo, como puedeserlo el color de ojos. Cada gen se encuentra en una posicionparticular del cromosoma, y esta formado por alelos.

Se supone que los individuos, pueden representarse como unconjunto de parametros (genes), los cuales agrupados formanuna ristra de valores, a menudo referida como cromosoma.Debe existir una representacion de estos genes para poderutilizarlos posteriormente en el algoritmo genetico y dotarlesde unos valores. Se pueden considerar tres tipos basicos derepresentacion o codificacion de los genes[5]

Binaria: en ella se utiliza un vector cuya longitud es ladel numero de genes de cada individuo y el valor quepuede tomar cada elemento es un numero binario.

Entera: en ella se utiliza un vector cuya longitud es ladel numero de genes de cada individuo y el valor quepuede tomar cada elemento es un numero entero.

Real: en ella se utiliza un vector cuya longitud es la delnumero de genes de cada individuo y el valor que puedetomar cada elemento es un numero real[5].

II-B. Algoritmo

Fig 1: Esquema Algoritmo

Desarrollado por John H. Holland, el algoritmo geneticoopera entonces a nivel de genotipo de las soluciones mediantela siguiente secuencia:

1. Comenzar con una poblacion inicial, la cual puede sergenerada de manera aleatoria.

2. Calcular el fitness (aptitud) de cada individuo.3. Aplicar el operador de seleccion con base en el fitness

de la poblacion.4. Aplicar los operadores geneticos de reproduccion, cruce

y mutacion a la poblacion actual para generar a lapoblacion de la siguiente generacion.

5. Ir al paso 2 hasta que la condicion de parada se satisfaga.6. Cuando se cumple la condicion de parada, se devuelve

al mejor individuo encontrado (bien el mejor de todaslas generaciones, bien el mejor de la ultima generacion).

Al igual que en muchas otras heurısticas, el comportamien-to del algoritmo genetico es altamente dependiente de losparametros iniciales (tamano de la poblacion, porcentaje decruce, porcentaje de mutacion, numero de generaciones, etc.),por lo que sera necesario ajustar esos parametros para tratarde mejorar la solucion para los objetivos del problema. Acada iteracion de este proceso se le denomina una generacion.Un algoritmo genetico tıpicamente se itera de 50 a 500 oincluso mas generaciones. El conjunto entero de generacionesse denomina una ejecucion. Al final de una ejecucion existena menudo uno o varios cromosomas altamente adecuados enla poblacion, y que pueden ser elegidos como solucion alproblema.

La funcion de evaluacion o de fitness de un problema esrealmente la funcion que se desea optimizar. Su diseno es juntocon el del genotipo, una de las caracterısticas mas importantesa la hora de encontrar la mejor solucion a un problema.

II-B1. Elementos de Algoritmos Geneticos: Como los AGsse encuentran basados en los procesos de evolucion de losseres vivos, casi todos sus conceptos se basan en biologıa ygenetica que son faciles de comprender.

Individuos: Un individuo es un ser que caracteriza supropia especie. El individuo es un cromosoma y es elcodigo de informacion sobre el cual opera el algoritmo.Cada solucion parcial del problema a optimizar esta co-dificada en forma de cadena o String en un alfabetodeterminado, que puede ser binario[2].

Fig 1: Individuos

Page 3: Unl articulo cientifico-1

3

Poblacion: A un conjunto de individuos (Cromosomas)se le denomina poblacion. El metodo de AGs consiste enir obteniendo de forma sucesiva distintas poblaciones.

Operadores Geneticos: Son los diferentes metodos u ope-raciones que se pueden ejercer sobre una poblacion y que nospermiten poblaciones nuevas[2]:

Seleccion: El proceso de seleccion sirve para escoger alos individuos de la poblacion mejor adaptados, para queactuen de progenitores de la siguiente generacion. En lanaturaleza existen varios factores que intervienen paraque 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 esmenos probable, sigue siendo posible. En los algoritmosgeneticos, la seleccion es un conjunto de reglas quesirven para elegir a los progenitores de la siguientegeneracion. Estos progenitores se reproduciran y gene-raran descendencia. Un sistema muy utilizado en losalgoritmos geneticos es la seleccion por torneo. Este sis-tema consiste en escoger aleatoriamente de la poblacionun cierto numero de individuos. De esos individuos seescoge el mejor de todos para ser el padre. Para escogerla madre se repite el proceso[5].Reproduccion: En este contexto, se entendera por “re-produccion” la clonacion de un individuo. Es decir, unindividuo pasara a la siguiente generacion sin modifi-cacion. De esta manera, la reproduccion es un operadorgenetico que se contrapone al cruce y la mutacion, puestoque estos ultimos modifican los individuos que pasan ala siguiente generacion. El objetivo de la reproducciones mantener en la siguiente generacion a individuos confitness alta de la presente generacion.Relacionado con el concepto de reproduccion esta el de“elitismo”, el cual mantiene a los mejores individuos deuna generacion a la siguiente, para que no se pierda suinformacion[5].Cruce: Se trata de un operador cuya labor es elegirun lugar, y cambiar las secuencias antes y despues deesa posicion entre dos cromosomas, para crear nuevadescendencia (por ejemplo, las cadenas 10010011 y11111010 pueden cruzarse despues del tercer lugar paraproducir la descendencia 10011010 y 11110011). Imita larecombinacion biologica entre dos organismos haploides.

Fig 2: Cruce

Mutacion: Este operador produce variaciones de modoaleatorio en un cromosoma (por ejemplo, la cadena00011100 puede mutar su segunda posicion para darlugar a la cadena 01011100). La mutacion puede darseen cada posicion de un bit en una cadena, con unaprobabilidad, normalmente muy pequena (por ejemplo0.001)[2].

Fig 3: Mutacion

Estructura de Algoritmos Geneticos:

Fig 4: Estructura General de Algoritmos Geneticos

Codificacion: los elementos caracterısticos del problemase pueden representar de tal forma que resulte sencillasu implementacion y comprension.Poblacion inicial: para constituir la poblacion inicial,que sera la poblacion base de las sucesivas generaciones,existen varios metodos.Funcion Fitness: asigna a cada cromosoma un numeroreal, que refleja el nivel de adaptacion al problema delindividuo representado por el cromosoma. La funcion deaptitud (fitness) es la que permite valorar la aptitud delos individuos y debe tomar siempre valores positivos.Ambas funciones suelen ser iguales, pero puede serque la funcion objetivo sea muy compleja, tome valoresnegativos, o no proporcione un valor numerico y, porlo tanto, sea necesario definir una funcion de aptituddiferente. En un algoritmo genetico la informacion ha decodificarse para poder trabajar adecuadamente con ella.Como hemos visto, existen numerosos sistemas de codifi-cacion, aunque nosotros utilizaremos la codificacion real.Una vez definido el sistema de codificacion a emplear severa como actuan los operadores basicos de seleccion,cruce y mutacion sobre este codigo.Seleccion: es el proceso por el cual se eligen una o variasparejas de individuos de la poblacion inicial para quedesempenen el papel de progenitores, cruzandose poste-riormente y obteniendo descendencia o permaneciendoen la siguiente generacion.Cruzamiento: el operador cruce permite el intercam-bio de informacion entre individuos de una poblacion,recombinando los cromosomas, dando lugar a nuevosindividuos.Mutacion: el operador mutacion se aplica tras elcruce con el objetivo de incrementar la diversidadpoblacional[2].

II-B2. Implementacion de Algoritmos Geneticos en Java:Para la implementacion de algoritmos geneticos, disponemosde un framework para Java llamado JGAP (Java GeneticAlgorithms Package)

Page 4: Unl articulo cientifico-1

4

JGAP proporciona los metodos y mecanismos basicos paraimplementarlo. Fue disenado para que fuera muy facil deusar, siendo altamente modular y configurable, llegando aser realmente facil crear incluso nuevos y personalizadosoperadores geneticos.

Se distribuye bajo licencia GPL. En su pagina web podemosencontrar gran variedad de ejemplos de uso y documenta-cion[5].

A continuacion mostramos el diagrama de clases implemen-tado en JGAP:

Fig 5: Diagrama de clases implementado en JGAP

JGAP: El mismo esta disenado para hacer casi todo el tra-bajo evolutivo para que de una manera relativamente generico.Sin embargo, no se tiene conocimiento de la problematicaespecıfica que en realidad estas tratando de resolver, y porlo tanto no tiene manera intrınseca de decidir si una posiblesolucion es mejor que otra posible solucion para su problemaespecıfico. Ahı es donde la funcion de aptitud entra en juego:se trata de un metodo unico que debe implementar que acepteuna solucion potencial problema y devuelve un valor enteroque indica lo bien (o .ajuste”) que la solucion esta en relacioncon otras posibles soluciones. Cuanto mayor sea el numero,mejor sera la solucion. Cuanto mas bajo sea el numero (1es el valor mas bajo de la aptitud legal), el mas pobre es lasolucion. JGAP utilizara estas mediciones de la aptitud paraevolucionar la poblacion de soluciones hacia un sistema masoptimo de las soluciones[6].

II-C. Mundial 2014

La Copa Mundial de la FIFA Brasil 2014 sera la XX edicionde la Copa Mundial de Futbol. Esta version del torneo serealizara en Brasil entre el 12 de junio y el 13 de julio de2014, siendo la segunda vez que este certamen deportivo serealiza en Brasil despues de la Copa Mundial de Futbol de1950.

En 2004, la FIFA eligio a Sudamerica como sede de laCopa Mundial de 2014. Pese al entusiasmo inicial de algunospaıses, solo Brasil y Colombia presentaron sus candidaturasoficiales antes del cierre del plazo, el 18 de diciembre de2006. Algunos meses despues, Colombia retiro su candidatura,dejando como unico postulante a Brasil. El 30 de octubre de

2007, la FIFA designo de manera oficial a Brasil como el paısque albergara la Copa del Mundo de Futbol de 2014.

El ganador del torneo participara en su calidad de campeondel mundo en Copa FIFA Confederaciones 2017, a realizarseen Rusia.

Como dato destacable, por primera vez en una Copa Mun-dial de Futbol, los partidos utilizaran la tecnologıa que ofreceel balon inteligente, para determinar en jugadas dudosas, si elbalon cruzo 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

Page 5: Unl articulo cientifico-1

5

II-C3. Numero de Campeonatos Obtenidos :

Fig 8: Equipos Campeonatos

III. RESULTADOS

III-A. Vistas Equipos del Mundial 2014

Pantalla PrincipalPara inicializar tenemos la pantalla principal donde mepresenta el menu archivo que contiene diversas opcionesque se podran efectuar en este proyecto.

Fig 9: Pantalla PrincipalMenu ArchivoEn la cual tenemos las opciones de: Agregar Equipos, VerGrupos clasificados, Generar cuatro mejores equipos delmundial 2014, Buscar equipos y Ver equipos clasificados.

Fig 10: Menu Archivo

Menu Agregar EquiposNos presenta la pantalla donde se van a ingresar losdatos de cada equipo, los cuales son codigo, continente,nombre del equipo, puntos del ranking, posicion delranking, grupo en el cual se encuentra, tıtulos ganadosy la informacion acerca de los tres ultimos partidosjugados.

Fig 11: Agregar EquiposMenu Ver GruposDonde podremos visualizar los grupos que contiene a losequipos clasificados para el mundial 2014.

Fig 12: Ver GruposMenu Generar cuatro mejores equiposEn esta pantalla se podra efectuar la generacion deacuerdo al algoritmo genetico de los cuatro mejoresequipos del mundial 2014.

Fig 13: Generar cuatro mejores equipos

Page 6: Unl articulo cientifico-1

6

Para darnos cuenta que de acuerdo a la funcion fitnesslos equipos no siempre seran los mismos, se presenta tresejecuciones efectuadas, donde se varıa los equipos gene-rados como los cuatros mejores del mundo. Y ademasla consola que presenta las interacciones realizadas paraefectuar esta generacion.

1. Primera Ejecucion

Fig 14: Primera Ejecucion2. Segunda Ejecucion

Fig 15: Segunda EjecucionMenu Buscar Equipo En esta pantalla se podra efectuarbusquedas sea por codigo, equipo, grupo o contiene.

Fig 16: Buscar Equipo

1. Busqueda por Grupo

Fig 17: Busqueda por GrupoModificar EquipoDentro de la pantalla busqueda ademas tenemos la opcionde Editar Equipo, la cual nos envıa a una nueva pantallapara editar los datos de cada equipo, tomando en cuentaque no se puede dejar campos vacıos.

Fig 18: Modificar Equipo1. Resultado Equipo Modificado

Fig 19: Equipo ModificadoMenu Ver Equipos Clasificados En esta pantalla se vi-sualiza todos los equipos ingresados.

Fig 20: Equipos Clasificados

Page 7: Unl articulo cientifico-1

7

III-B. Funcion Fitness

Metodo FitnessFunction(evaluate): En este metodo nosda el valor de aptitud de acuerdo al problema a resolver.Ademas realiza un recorrido de la poblacion para obtenerlos individuos de la poblacion e ir comparando paraescoger la solucion optima.

Fig 21: FitnessFunction(evaluate)Metodo getGenreScore: En este metodo obtengo losvalores de cada individuo para determinar sı es o no elmejor.

Fig 22: getGenreScoreMetodo SeleccionarFittestEquipos: Es un metodo parapresentar los valores en consola de acuerdo a la poblacionevolucionada.

Fig 23: SeleccionarFittestEquipos

Metodo testSelectFitnesstEquipos: Me permite obtener elvalor de la poblacion de acuerdo al valor de aptitud ofitness.

Fig 24: testSelectFitnesstEquiposMetodo TestEquipoFitness: Este metodo es toda la con-figuracion inicial.

Fig 25: TestEquipoFitness

Page 8: Unl articulo cientifico-1

8

IV. CONCLUSIONES

• Los algoritmos geneticos tienen la ventaja de ofrecer unmecanismo adaptativo de resolucion de problemas, deforma que aunque el problema cambie, este se puedaseguir resolviendo. Resolver un problema cambiante”,llevado al lımite, es igual a Resolver cualquier problema”.Segun este planteamiento podrıamos pensar en disenarun esquema comun que facilite a los agentes aprenderen cualquier entorno de problema.

• Los algoritmos geneticos garantizan la busqueda de unasolucion optima para las condiciones particulares delproblema a traves de un procedimiento aleatorio deensayo y error.

• En el desarrollo de un algoritmo genetico se realizaun analisis, se plantea la estructura del cromosoma,la poblacion con la que se trabajara, los metodos deevaluacion, seleccion, cruzamiento y mutacion.

• Estos tienen un gran atractivo debido a la capacidad paraencontrar un balance de explotacion y exploracion desoluciones a lo largo de su evolucion.

• En algoritmos geneticos la parte mas importante es lafuncion de .adaptacion 2a que de acuerdo a esta evolucio-nan los parametros indicados.

• La estructura general del algoritmo usualmente es lamisma para cualquier aplicacion practica, por lo cualperfectamente pudo dar la solucion de los cuatro mejoresequipos del mundial 2014.

V. RECOMENDACIONES

• En cuanto al desarrollo de un algoritmo informaticoes preferible realizar un estudio sobre el tamano de lapoblacion y la cantidad de evoluciones que es propicioutilizar en el modelo a implementarse, ya que esto im-plica en el comportamiento del Algoritmo y la ejecuciondel sistema.

• Realizar un estudio mas profundo del tema algoritmosgeneticos ya que este permite dar soluciones a problemasde diversa complejidad.

• Para los alumnos de la carrera profesional, efectuar in-vestigacion en cuanto a inteligencia artificial, algoritmosgeneticos y sus ramas afines, para contribuir al desarrolloy mejoramiento tanto personal como institucional.

VI. ENLACE

Disponible en:

http://mundial-ageneticos.googlecode.com/svn/trunk/mundialBrasil/MundialBrasil2014/

https://github.com/anelar21/Mundial2014AlgoritmosGeneticos.git

REFERENCIAS

[1] @inproceedingsgeneticos2007, title=Algoritmos Geneticos,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 Geneticos,pages = 18, title = expo1-121113073140-phpapp01, url =http://www.slideshare.net/MarcoGmez/algoritmo-genetico-15154635,year = 2012

[3] @articleRodriguez-pinero1960, author = Rodrıguez-pinero, PiedadTolmos, keywords = algoritmo genetico, bits,cadena de, capacidad, gencromosoma,operador,optimizacion, poblacion, problemas de busqueda,title = Introduccion a los algoritmos geneticos y sus aplicaciones,url=http://www.uv.es/asepuma/X/J24C.pdf, year = 1960

[4] @articleRussell, author = Russell, S, file = Tema-3 4 algoritmosgeneticos.pdf:pdf, title = TEMA 3: Areas de la IA: Ejemplos de in-vestigacion actual., url = http://personales.upv.es/ccarrasc/extdoc/Tema-3 4 algoritmos geneticos.pdf

[5] LOPEZ Juan Carlos, “Introduccion a los algoritmos geneticos: comoimplementar un algoritmo genetico 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 laUniversidad Nacional de Loja, Conocedora en Analisis y Diseno deSoftware, Gestion de Redes, Mantenimiento y Seguridad, Provinciade Loja, Ciudad Loja, Ecuador, 2014.

Ronald Rojas

Estudiante de la Carrera de Ingenierıa en Sistemas de laUniversidad Nacional de Loja, Programador Junior en Matlab, Pro-gramador Senior en Java, Provincia de Zamora Chinchipe, CiudadYanzatza, Ecuador, 2014.