什么是构建实时游戏玩家模拟器的首选机器学习技术?

时间:2011-11-11 09:21:06

标签: machine-learning reinforcement-learning tetris

我已着手构建一个学习玩俄罗斯方块的AI引擎,即可以通过调整其启发式等来改善其性能的引擎。让我们说我已经开始使用GUI了 - 我将在哪里开始构建引擎?作为初学者,我将使用哪些资源来理解这涉及的机器学习概念?

特别是,我正在寻找基于代码和实际例子的解释性材料,而不是主题的数学处理。

1 个答案:

答案 0 :(得分:4)

这种事情的标准ML规则(即创建一个玩视频游戏的机器人)是 强化学习 。这是一个由许多不同技术/算法组成的广泛领域;或许与您的项目更相关的是 Q-Learning

强化学习的标准论文之一是理查德·萨顿和安德鲁·巴托的Reinforcement Learning: An Introduction。刚刚提供的链接将您带到本书的主页,其中包括该书的公共访问在线版本的链接,以及免费pdf版本的链接。

这里有一个demo on YouTube,显示了一个基于RL的机器人,它已经学会了扮演PacMan女士。

博客机械师有一个完整的tutorial,用于使用强化学习(使用python语言)构建一个PackMan游戏机器人。我想这肯定是一个很好的开始。

我还会考虑用您选择的语言安装一个好的RL库。查看源代码并试用库的API。在Python中,有(至少)两个非常好的RL库:PyBrainMaja(又名MMLF)。

使用这些图书馆中的任何一个,你都可以建立一个玩俄罗斯方块的机器人;实际上,PyBrain包含一个基于类似于俄罗斯方块的环境的教程。