CS 188 Project3(RL) Q9: Q-Learning and Pacman

本文介绍如何使用Q-Learning训练Pacman在小型迷宫中学习策略。训练阶段Pacman通过调整epsilon和alpha参数进行学习,测试阶段则不再学习并展示策略。在训练结束后,Pacman应能赢得至少80%的测试游戏。然而,这种方法在中等规模迷宫上表现不佳,无法泛化到复杂场景,表明对于更大地图和更多状态的MDP问题,当前策略有限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   是时候玩Pacman了!Pacman将分两个阶段玩游戏。在训练的第一阶段,Pacman将开始学习位置和动作的值。因为学习精确的Q-values值需要很长的时间,即使是很小的网格,Pacman的训练游戏默认以安静模式运行,没有GUI(或控制台)显示。一旦Pacman的训练完成,将进入测试模式。测试时,Pacman的self.epsilon和self.alpha将被设置为0.0,有效地停止Q-learning学习和禁用探索,以允许Pacman利用其学习策略。默认情况下,测试游戏显示在GUI中。在没有任何代码更改的情况下,您应该能够为非常小的网格运行 Q-learning Pacman,如下所示:

python pacman.py -p PacmanQAgent -x 2000 -n 2010 -l smallGrid 

请注意,PacmanQAgent的QLearningAgent已经为您定义了。PacmanQAgent的唯一不同之处在于它有默认的学习参数,这些参数对Pacman问题更有效(epsilon=0.05,alpha=0.2,gamma=0.8)。您的代理至少赢得80%的时间,您将获得此问题的全部学分。2000次训练结束后,autograder将进行100次测试。
提示:如果您的qLearningAgent适用于gridworld.py和crawler.py,但似乎没有为smallGrid上的pacman学习提供好的策略,可能是因为您的getAction或computerationFromQValues方法在某些情况下不能正确考虑未看到的动作。特别是,由于未看到的动作在定义上具有0的Q-value值,如果所有已看到的动作都具有负的Q值,则未

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大模型与Agent智能体

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值