23

Para un proyecto de ai-clase, necesito implementar un algoritmo de aprendizaje de refuerzo que supera un simple juego de tetris. El juego está escrito en Java y tenemos el código fuente. Conozco los conceptos básicos de la teoría del aprendizaje reforzado, pero me preguntaba si alguien en la comunidad SO tenía experiencia práctica en este tipo de cosas.Buenas implementaciones de aprendizaje de refuerzo?

  1. ¿Cuáles serían sus lecturas recomendadas para ser una implementación de aprendizaje reforzado en un juego de Tetris?
  2. ¿Hay algún buen proyecto de código abierto que logre cosas similares que valdría la pena revisar?

Editar: Cuanto más específico mejor, pero los recursos generales sobre el tema son bienvenidos.

seguimiento:

pensó que sería bueno si he publicado un seguimiento.

Aquí está la solución (código y descripción) que terminé con cualquier futuro estudiante :).

Paper/Code

+7

+1 por hacer una buena pregunta de tarea. Es refrescante ver a alguien pidiendo aprender algo que pedir que le den algo. –

+3

Definitivamente de acuerdo; pedir buenos recursos de aprendizaje es una gran pregunta, y también es útil para otros en el futuro – Sukasa

Respuesta

12

Tome un vistazo a la RL-competition 2009. Uno de los dominios problemáticos es un tetris game. Hubo un problema de tetris el año anterior también. Aquí está el 52-page final report del quinto lugar finalista de ese año, que detalla muchos detalles sobre cómo trabajó el agente.

+0

suena interesante, pero los enlaces parecen estar muertos .... – mikera

+0

@mikera Parcialmente fijo; el sitio web RL-competition 2009 desapareció, pero Internet Archive guardó la mayor parte del texto. – andrewdotn

+0

Los enlaces de Dropbox arrojan errores 404. –

3

El Heaton Research libro electrónico es bastante bueno para explicar los conceptos de redes neuronales (con código). El Capítulo 4 está dedicado al aprendizaje automático y a los diversos métodos de entrenamiento para sus redes. Hay una biblioteca descargable y aplicaciones de muestra para que pueda ver.

2

TD-Gammon, gnubackgammon, o cualquier otro proyecto similar fueron éxitos masivos en los juegos.

Sutton & El libro de Barto "Aprendizaje de refuerzo: una introducción" también tiene otro Case Studies.

1

Esto no es específico de aprendizaje reforzado, pero Stanford tiene una gran serie de conferencias sobre machine learning on Youtube e iTunes.

El enlace corresponde a la primera conferencia, que tarda aproximadamente 30 minutos en sumergirse en el contenido.

1

Burlap es una biblioteca reciente de Java que proporciona implementaciones de muchos algoritmos de aprendizaje de refuerzo comunes, así como algunos entornos y herramientas útiles.