Sie sind auf Seite 1von 5

Cmo Empezar con la Inteligencia Artificial By James Matthews Traducido por Year of the Dragon Una de las preguntas

ms frecuentes que me pregunta la gente es, "Por dnde empiezo?!". De echo, por dnde debe empezar un principiante en la IA? Simple encuentra un campo de la IA que te interese y lee sobre l. La IA es tan amplia que intentar mirar todo lo relacionado con la IA de una sola vez har atascarse hasta a las personas ms entusiastas. Este ensayo mirar diferentes reas de la IA e intentar dar pistas sobre que es interesante y que es ms pedestre. Las reas que tocaremos sern juegos, redes neuronales, algoritmos genticos y programacin evolutiva, robtica, y vida artificial. juegos Finalmente, despus de muchos aos de juegos-deimpresionantes-grficos-sin-jugabilidad, estn apareciendo juegos con grficos impresionantes pero tambin con impresionantes inteligencias artificiales. Los modernos shoot-em-up en primera persona como HalfLife, HalfLife: Opposing Forces, Unreal yQuake III: Revolution demuestran un impresionante nivel de IA. Otros juegos como Colin McRae Rally 2.0 estn usando modernas tcnicas de la IA como redes neuronales para controlar los oponentes dentro del juego. Este es desde luego un buen momento para iniciarse en la IA de los juegos. As que, por dnde empezar? Esto depende en gran cantidad de tu habilidad como programador - si eres bueno podrs enfrentarte a un juego completo por ti mismo, o disfrutar modificando uno ya existente (como uno de los juegos con desarrollo de mods al estilo de Quake). Sea como sea, conocer la programacin en un lenguaje 'real' es indispensable - la mayora de juegos estn escritos en C/C++. De cualquier manera, si escribes el juego desde cero, podrs escribirlo en cualquier lenguaje que desees. Para saber ms detalles acerca de dnde empezar, mira en How to Get Started with Gaming AI. Lo Bueno La mejor parte de la IA para juegos es que los efectos son muy visuales y fciles de entender. No te enfrentas a una lista de nmero o a un grafo - lo que programas tendr un efecto directo en como juegas el juego. Esto puede ser muy gratificante si el tiempo se emplea modificando la IA. Es ms divertido que el resto de programacin de IA por la misma razn - programar, jugar, modificar.

Lo Malo Necesitas un juego para empezar! La mayora de proyectos de juegos de IA nunca se completan debido a lo increblemente duro que es escribir la IA del juego sin escribir el juego en si. Modificar juegos existentes puede ser increiblemente desalentador, y aadir grandes cambios puede duplicar el trabajo - escribir el cdigo y despus integrarlo en el juego.

Redes Neuronales El campo de las redes Neuronales Artificiales intenta utilizar estructuras de datos diseadas para imitar las neuronas dentro del cerebro para realizar reconocimiento y clasificacin de datos. Pueden ser (y han sido) usados para una gran cantidad de tareas diferentes: predecir el mercado de acciones, extraer datos de imagen a partir de informacin del radar, controlar coches, robots - y mucho ms. Lo que est claro de las redes neuronales es que aprenden. Son bsicamente funciones de mapeado de lujo: realizarn mapeados de un grupo de vectores sobre otro, pero aprender a realizar este mapeado por ellas mismas, a travs de aprendizaje supervisado o no supervisado. Empezar con las redes neuronales no es fcil ya que necesitan un fuerte conocimiento de la teora, requiriendo un cierto grado de conocimiento algebraico e incluso clculo si realmente deseas entender como funcionan los algoritmos usados.

Generation5 tiene una series of essays que estn dirigidos a introducir las redes neuronales lentamente: primero cubre el tema de los perceptrones (la red neuronal ms sencilla), entonces detallando perceptrones multicapa y el algoritmo de propagacin hacia atrs (back-propagation). Si quieres empezar con redes neuronales, preprate para leer y programar mucho ya que no son fciles de entender sin ponerse "manos a la obra". Lo Bueno Las redes neuronales son muy tiles en IA y pueden ser aplicadas en todas partes. Crear una buena red neuronal es una actividad muy gratificante. Pueden ser usadas en reas como procesamiento de sonido e imagen o incluso controladores de robots - haciendo ms interesantes la investigacin y los resultados.

Lo Malo Las redes neuronales quiz no sean el mejor lugar por donde empezar ya que son un poco duras - acadmica y algortmicamente hablando. La mayora de redes neuronales son programas muy difciles ya que no hay guas ni tipos definidos de redes neuronales para ciertos problemas. Hay tantos tipos de redes neuronales como problemas! Algoritmos Genticos y Programacin Evolutiva AGs y programacin evolutiva son campos muy interesantes, si las ideas de la evolucin y la gentica llaman tu atencin. Gente con conocimientos en biologa encontrarn la programacin evolutiva muy estimulando, ya que toma mucha teora de la biologa/gentica/biologa terica. Los algoritmos genticos bsicamente usan el poder de la evolucin y la gentica para evolucionar soluciones a un problema. Las soluciones a un problema se codifican en genotipos, que son entonces manipulados. Se comprueba la idoneidad de cada genotipo y los mejores reproducen entre ellos para producir la siguiente generacin. Esta

secuencia se repite hasta que se descubre la solucin o la mejor aproximacin posible.

Los algoritmos genticos son un subgrupo de un campo mucho ms amplio: programacin evolutiva. La programacin evolutiva agrega otras reas de la computacin inspiradas en la biologa como la programacin gentica (evolucin de algoritmos para resolver un problema). La programacin evolutiva se usa habitualmente junto con otras reas de la IA como las redes neuronales. Los AGs aveces se usan para evolucionar la arquitectura de redes neuronales o sus pesos, o son usadas para afinar parmetros en mquinas de estados finitos (en juegos). Empezar con los algoritmos genticos es relativamente fcil ya que la teora es fcil de comprender para cualquiera que estudi biloga en secundaria. Echad un vistazo en Generation5 essays para ms informacin Lo Bueno Es fcil empezar con ello ya que la teora bsica es fcil de entender para la mayora y la programacin no es nada compleja. Los algoritmos genticos son fciles de aplicar a muchos problemas, y son un buen tema de investigacin para aquellos a quienes le interesa. Los fenmenos biolgicos como la coevolucin, la relacin genotipo/fenotipo y el elitismo puede ser interesante incorporarlos en tus algoritmos genticos y observar como afectan a su rendimiento.

Lo Malo Es algo aburrido trabajar con ellos, muchos algoritmos genticos lanzan grandes listas de nmeros. Robtica Mi favorito personal, la robtica es casi lo mejor de los dos mundos ya que consigues "pulcro-ingenioso" factor de la Inteligencia Artificial unido con el realismo fsico del robot ie, es algo que puedes tocar, construir e interaccionar con ello. La robtica comercial est empezando a despegar. SONY hizo un gran salto hacia delante en la industria del entretenimiento con el lanzamiento deSony ERS-110/111 AIBO (dibujo a la derecha). Ahora con el nuevo AIBO ERS210 y su prximo compaero bpedo robtico el SDR (Sony Dream Robot), es fcil ver que muchas familias pronto van a tener un pequeo compaero mecnico!

La robtica es un buen campo por el que preocuparse ya que escala desde lo ms simples robots programables hasta los ultra-complicados robots de investigacin. Si deseas empezar con la robtica echa un vistazo a How to Get Started with Robotics. Lo Bueno En mi opinin, esta es el rea que ms recompensa: si disfrutas construyendo algo y ver como funciona, entonces ser capaz de programarlo para que haga cosas interesantes - la robtica es definitivamente para t! Es divertido jugar con robots, divertido programarlos y pueden ser prcticos y entretenidos. Podrs fcilmente aplicar cualquiera de los otros

paradigmas de la IA como las redes neuronales o los algoritmos genticos en la programacin.

Lo Malo Requiere formacin en electrnica. Esto es bueno y malo. Si nunca has soldado algo antes, pero quieres saltar a hacer unos robots alucinantes, las posibilidades son bastante altas que te veas limitado en lo que puedes conseguir. Si te tomas el tiempo para aprender y entender la teora elctrica tras los robots que construyes puede convertirse en una ventaja insustituible. La robtica tambin es cara comparada con las otras reas (que son mucho ms gratuitas, ya que puedes conseguir compiladores gratuitos para la mayora de lenguajes).

Vida Artificial La Vida Artificial es un campo que avanza rpidamente dedicado a simular la vida en un ordenador. Puede ser vida en el sentido ms estricto (imitando fenmenos biolgicos como la digestin o el sistema nervioso) o, ms comnmente, consiste en abstracciones de la vida. Una gran cantidad de vida-a se produce en forma de autmatas celulares. Los AC estn normalmente organizados en un plano 2D y gobernados por reglas muy sencillas, de esas reglas surgen algunos comportamientos increblemente complejos. Por ejemplo , el juego de la vida de Conway, uno de los primeros autmatas celulares fuertemente estructurados es gobernado por 2 simples reglas. Una clula no puede 'vivir' si hay ms de tres o menos de dos clulas en las 8 clulas adyacentes y si el nmero de clulas alrededor de una clula muerta es exactamente tres, nace una nueva clula. Puedes creerlo o no, pero algunos comportamientos increiblemente complejos emergen - de hecho, se ha probado que el juego de la vida de Conway puede ser configurado para actuar como una Mquina de Turing, hacindola en teora capaz de calcular cualquier cosa que puede calcular un ordenador actual! El mejor consejo para empezar en la Vida-a es bajarse algunos programas de AC como el MCell y experimentar. Entonces busca experimentos de Vida-a ms avanzados como TIERRA, antes de intentar programar algo por ti mismo.

Lo Bueno Puede ser muy interesante, ya que pueden encontrarse gran cantidad de paralelismos entre las abstracciones de la vida y la vida misma. Los efectos pueden ser muy visuales, especialmente con cosas como los Boids (comportamiento de grupos) o autmatas celulares complejos. Son sencillos de programar.

Lo Malo No es demasiado aplicable. La Vida-a no es el tipo de cosa que puedes aplicar a un problema. La Vida-a se usa sobre todo para estudio e investigacin.

Filosofa La filosofa se filtra en cualquier campo si se le da la oportunidad, pero es una parte intrnseca en la Inteligencia Artificial. Preguntas como "Pueden pensar los ordenadores?","Es el pensamiento simulado autntico pensamiento?", "Deben tener derechos los ordenadores sentientes?", as como preguntas ms fundamentales como el problema del cuerpo/mente estn fuertemente ligados a la IA. La filosofa de la IA ha sido potenciada recientemente debido a una serie de pelculas de alto presupuesto de Hollywood (The Matrix, Inteligencia Artificial). Internet tiene cientos de pginas con informacin sobre varios temas de Filosofa/IA - intenta buscar gente como John Searle (La Habitacin China), Daniel Dennett y David Chalmers o conceptos como dualismo o funcionalismo computacional.

Lo Bueno Si adoras sentarte y pensar, no puedes conseguir nada mejor que la filosofa de la mente. La filosofa puede unir otros campos que disfrutes: lingstica, neurociencia, tica y diseo de software por nombrar algunos.

Lo Malo Si adoras pensar, no hay nada malo. Leer toda la teora puede ser algo aburrido para algunos, especialmente dada la notoria capacidad de los filsofos en convertirse en horribles autores!

Conclusiones Esta lista no es de ninguna manera exhaustiva, hay: programacin de satisfaccin de restricciones, reconocimiento del habla e imagen, lgica difusa, data mining y muchas otras reas. Lee por ah pginas como Generation5 para encontrar algo que puedas encontrar suficientemente interesante para leer durante un par de semanas, experimenta con diferentes tcnicas de programacin y lenguajes - la IA es tan amplia que ests obligado a encontrar algo interesante. Submitted: 08/08/2004 Article content copyright James Matthews, 2004.

Das könnte Ihnen auch gefallen