• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
Algoritmos y Programaci´on en Robocode
Julio Ren´e Santizo Ochoa - 200511763 juliosantizo@gmail.comIng Huber FloresGuatemala, GuatemalaUniversidad de San CarlosFacultad de Ingenier´ıaEscuela de Ciencias y Sistemas1 de julio de 2009
Resumen
En este articulo tocamos temas un poco mas avanzados sobre laprogramaci´on de robots en Robocode, se empieza con una introcucci´onconceptual a ciertos temas de inteligencia artificial, posteriormentese presentan las diferentes opciones de estrategias que tenemos paraprogramar nuestro robot en Robocode, sus ventejas y desventas ylos escenarios donde deberiamos utilizarlas y finalmente se explicadetalladamente la estrategia y algoritmos utilizados para el robot quese entregar´a como proyecto del curso.
Abstract
This article describes things a little more advanced on the pro-gramming of robots in Robocode, it starts with an introduction tocertain subjects of artificial intelligence, then describes the differentoptions of strategies available to program our robot in Robocode, itsadvantages and disadvantages and the scenes where we would haveto use them and finally explains in detail the strategy and algorithmsused for the robot that will be the final project of the course.
1
 
1 Introducci´on
Robocode es una plataforma de simulaci´on bastante completa y realista yesto afecta de cierta manera a la programaci´on del robot, porque por ejem-plo, debemos tomar en cuenta que el ca˜on del arma se calienta con cadadisparo, impidi´endonos disparar como locos sin parar, otro aspecto, es que lasbalas viajan a una velocidad constante, por lo que debemos tener en cuentael tiempo que tardar´a en llegar al objetivo, si este se encuentra muy lejos,tambi´en perdemos cierta energ´ıa con cada disparo por lo que no deber´ıamosdesperdiciarlos, sino que tratar de atinarle al objetivo.Todo esto influye bastante en la estrategia que implementemos para ganar,a continuaci´on se presenta una descripci´on breve de algunos algoritmos deinteligencia artificial que podr´ıan ser aplicados a la programaci´on de nuestrorobot, no se presentan ejemplos, ni explicaciones detalladas de su funciona-miento, porque eso se sale del alcance de este articulo, pero si se da unadescripci´on bastante clara de ellos.
2 Inteligencia Artificial
Se denomina inteligencia artificial a la rama de la ciencia inform´atica dedi-cada al desarrollo de agentes racionales no vivos.[1]En este sentido, vemos que Robocode es una aplicaci´on muy adecuada parael curso de inteligencia artificial, ya que el objetivo es crear robots que sepanqu´e hacer en el momento adecuado.2
 
2.1 Aplicaciones
Algunas aplicaciones de la inteligencia artificial son:Data MiningMedicinaProcesamiento de lenguaje naturalRob´oticaSistemas de apoyo a la decisi´onVideojuegos
2.2 Algoritmos
Un algoritmo es una lista bien definida, ordenada y finita de operaciones quepermite hallar la soluci´on a un problema.[2]
2.2.1 Algoritmos gen´eticos
Son llamados as´ı porque se inspiran en la evoluci´on biol´ogica. Estos algorit-mos hacen evolucionar una poblaci´on de individuos someti´endola a mutacio-nes.Los algoritmos gen´eticos establecen una analog´ıa entre el conjunto de so-luciones de un problema, llamado fenotipo, y el conjunto de individuos deuna poblaci´on natural, codificando la informaci´on de cada soluci´on en una cadena, generalmente binaria, llamada cromosoma. Los s´ımbolos que formanla cadena son llamados los genes. Cuando la representaci´on de los cromo-somas se hace con cadenas de d´ıgitos binarios se le conoce como genotipo.Los cromosomas evolucionan a trav´es de iteraciones, llamadas generaciones.En cada generaci´on, los cromosomas son evaluados usando alguna medida deaptitud. Las siguientes generaciones (nuevos cromosomas), llamada descen-dencia, se forman utilizando dos operadores gen´eticos, de sobrecruzamientoy de mutaci´on.[3] Este tipo de algoritmo puede llegar a ser muy ´util en Robocode, tanto pa-ra hacer movimientos inteligentes y as´ı evitar los disparos de los enemigos,as´ı como para decidir el angulo del disparo para que sea acertado.
2.2.2 Redes Neuronales
Tambi´en son conocidas como ANN por sus siglas en ingl´es. Son un paradig-ma de aprendizaje y procesamiento autom´atico inspirado en la forma en que3
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...