Back
History
作业4: PacMan游戏
([course_ai18|Back to course page]) ==作业总览== 本次作业目的是使用强化学习来自主玩Mr. PACMAN游戏。 首先,下载本次作业程序包[{UP}course_ai18_project4/gvgai-assignment4.zip|(点击下载ZIP)] 程序包解释: * src 是源代码目录 * sprites 和 examples 目录是运行需要的资源 * weka.jar 是开源机器学习包,配置Java项目时需包含此库 在本次作业中,你需要阅读程序,理解其中使用的强化学习算法,并训尝试修改程序提高学习性能。 ==代码介绍== 在之前的作业中,同学们已经了解了GVG-AI游戏的构成。在进行每一步决策时,agent可以通过模拟器进行动作模拟,以得到应该采用的动作。 本次作业中,在进行每一步决策时,我们将通过强化学习,得到Q值函数,并根据Q值函数进行决策。 Assignment4.java 是本次作业的入口,执行该程序,将启动游戏,可以观察到不断学习作出的决策。 controllers.learningmodel 目录下为该次作业的Agent代码,包含Agent.java, QPolicy.java, RLDataExtractor.java * Agent.java 是Agent的封装 * QPolicy.java 是策略对象 * RLDataExtractor.java 是特征提取方法 ==作业内容== # 阅读代码,阐述强化学习的方法和过程。并且回答以下问题: ## 策略模型用什么表示?该表示有何缺点?有何改进方法? ## Agent.java 代码中 SIMULATION_DEPTH, m_gamma, m_maxPoolSize 三个变量分别有何作用? ## QPolicy.java 代码中,getAction 和 getActionNoExplore 两个函数有何不同?分别用在何处? # 尝试修改特征提取方法,得到更好的学习性能,并报告修改的尝试和得到的结果 # 尝试修改强化学习参数,得到更好的学习性能,并报告修改的尝试和得到的结果 ==作业报告== 本次作业只需要提交报告。报告需详细介绍学习方法和进行的实验尝试。 使用[{UP}course_ai18_project1/template-2.doc|这个文档模版(点击下载)] 撰写实验报告。 ==作业提交== 将 <font color="blue">作业报告</font> 存储为PDF文件,用学号命名,例如151221001.pdf 上传到 {{ftp://lamda.nju.edu.cn/AI/assignment4/}} (用户名: ai18, 密码: ai18)<br/> (注意:该ftp不能替换文件,上传一次后,如果需要修改,请在文件名后加上版本号再上传,例如151221001-1.pdf) 注意:<font color="red">作业严禁抄袭!</font>
The end