¿Cómo se comienza a resolver problemas de Inteligencia Artificial en HackerRank?

La IA es un gran campo . Sugiero estudiar una introducción bien escrita para obtener una visión general. El libro de texto de introducción clásico es Inteligencia artificial: un enfoque moderno (AIMA) de Russel y Norvig.

Pero no se desanime por su tamaño y el hecho de que apenas toca cada tema que contiene. No es necesario que lo leas de principio a fin para ser productivo en ciertos campos de la IA, solo úsalo como referencia cuando entres en nuevos temas.

¿Conoces el algoritmo de ruta más corta de Dijkstra ? Si es así, entonces tiene la base abajo para todos los enfoques basados ​​en la búsqueda , ya que A * es una generalización y se usa ampliamente para varios casos. AIMA es una buena introducción a este tema, que incluye Min-Max-Search con Alpha-Beta-Pruning y más.

La planificación de la IA es un enfoque basado en la búsqueda y ha establecido un lenguaje formal para describir estados, objetivos y acciones problemáticos. Este campo es especialmente interesante por sus métodos avanzados de optimización no heurística y las rigurosas combinaciones de diferentes técnicas de búsqueda. No puedo recomendar ningún libro para este tema, pero puedo proporcionar diapositivas de una conferencia, si lo desea.

La teoría de juegos es otro tema fascinante. Lo aprendí principalmente a través de un curso en mi universidad, pero Osborne y Rubinstein tomaron prestados algunos temas de A Course in Game Theory , que parece un buen libro. La teoría de juegos es diferente a muchos otros temas de IA, porque analiza y predice el comportamiento de los agentes racionales a nivel del sistema, en lugar de a nivel individual. Mientras que en los sistemas basados ​​en agentes, el objetivo es optimizar la utilidad de un solo agente, la teoría de juegos está más preocupada por los estados de equilibrio de todo el sistema. Para mí fue un proceso de aprendizaje que me abrió la mente y animaría a cualquiera que esté interesado en la IA y que no tenga miedo de las matemáticas discretas a aprender algo al respecto.

Los problemas de satisfacción de restricciones pueden parecer un tema más teórico, pero es aplicable en una variedad de problemas del mundo real. El procesamiento de restricciones de Dechter ofrece una introducción agradable y profunda de este tema y muchas de sus técnicas de optimización.

El aprendizaje automático es un tema candente en alta demanda, ya que trata muy bien con datos borrosos, incertidumbre, mejora automática y adaptación a estados desconocidos. Machine Learning de Mitchell es un libro maravilloso al respecto, que recomiendo como introducción. Además, Coursera tiene una buena conferencia sobre aprendizaje automático del Prof. Ng, que no solo le enseñará algunos temas relevantes, sino que también le proporcionará una introducción a Octave como lenguaje de modelado y creación de prototipos.

Aprender significa practicar , y los temas de IA son divertidos de practicar. Crea algo para cada algoritmo sobre el que leas. HackerRank ofrece una buena variedad de desafíos, el mundo real (leer Internet) ofrece aún más desafíos. Has aprendido a clasificar objetos, ¿qué tal si intentas clasificar los tweets? Has aprendido sobre algoritmos de juegos de mesa para 2 jugadores, ¿qué tal escribir un bot de ajedrez (o Go, si estás preparado para un verdadero desafío)? Los desafíos están ahí afuera y son innumerables. Además, los editoriales en HackerRank pueden ser interesantes, pero intente resolver el problema por su cuenta antes de leerlo.

Este blog debería ayudarlo a comenzar – Comience con la Inteligencia Artificial en HackerRank – HackerRank Blog