对于一个ai级项目,我需要实现强化学习算法,该算法击败了一个简单的俄罗斯方块游戏。游戏是用Java编写的,我们有源代码。我知道强化学习理论的基础知识,但想知道SO社区中是否有人亲身体验过这类事情。
答案 0 :(得分:13)
看看2009 RL-competition。其中一个问题域是tetris game。前一年也有一个俄罗斯方块问题。这是当年第五名决赛选手的52-page final report,其中详细介绍了代理人的工作方式。
答案 1 :(得分:3)
Heaton Research电子书非常擅长解释神经网络概念(带代码)。第4章专门介绍机器学习和网络的各种培训方法。有一个可下载的库和示例应用程序供您查看。
答案 2 :(得分:3)
这是一本关于这个主题的好书:
Machine Learning and Data Mining: Introduction to Principles and Algorithms
作者:Igor Kononenko,Matjaz Kukar(2007年6月)
另请参阅这些开源项目:
答案 3 :(得分:2)
TD-Gammon,gnubackgammon或任何其他类似项目在游戏中取得了巨大的成功。
萨顿&巴托的着作“强化学习:简介”也有其他一些Case Studies。答案 4 :(得分:1)
这不是强化学习的具体内容,但斯坦福大学在machine learning on Youtube和iTunes上有很多讲座。
链接是第一个讲座,大约需要30分钟才能深入了解内容。
答案 5 :(得分:1)
Burlap是最近的Java库,它提供了许多常见强化学习算法的实现,以及一些环境和有用的工具。
答案 6 :(得分:1)
这个问题真的很老了,但对于2018年阅读本文的人来说,如果您对现有RL算法的实体参考感兴趣,我强烈建议您使用OpenAI Baselines。这些算法由OpenAI的一群员工实施,他们真正了解这些内容,并经过了广泛的微调和调试。
公平地说,你不需要这些用于俄罗斯方块,但现在我怀疑家庭作业问题可能涉及一些更复杂的环境。
答案 7 :(得分:0)
我建议学习基于Java的RL4J。 我一直在使用它,我惊讶于事情如何顺利进行,您甚至可以使用Actor Critic算法(称为A3C)在强化学习算法中学习LSTM网络
这里是链接: https://github.com/maxim-saplin/CrossPlatformDiskTest
答案 8 :(得分:-1)
我注意到这个问题已经过时了(已有10年的历史了),现代RL框架和环境的集合在这里可能会有用。我为此创建了GitHub存储库,并打算定期对其进行更新。