作业4: CartPole游戏

Modified: 2018/03/09 15:03 by admin - Uncategorized
(Back to course page)

Edit

作业总览

本次作业目的是使用强化学习来自主玩 CartPole 游戏。

首先,下载本次作业程序包(点击下载ZIP)

程序包解释:
  • main.py 是主函数(即运行该文件来启动游戏)。
  • agent.py中为强化学习算法DQN和DDQN的实现

在本次作业中,你需要阅读程序,理解其中使用的强化学习算法,并训尝试修改程序提高学习性能。
Edit

代码介绍


本次作业中,在进行每一步决策时,我们将通过强化学习,得到Q值函数,并根据Q值函数进行决策。

main.py 是本次作业的入口,执行该程序,将启动游戏。

agent.py 目录下为该次作业的Agent代码。
  • agent.py 是Agent的封装。
  • q_network.py 中实现的策略网络结构。

Edit

作业内容

  1. 阅读代码,阐述强化学习的方法和过程。并且回答以下问题:
    1. main.py 代码中 lr, gamma, buffer_size 三个变量分别有何作用?
    2. agent.py ,act 和 act_no_explore 两个函数有何不同?训练过程中采用act_no_explore函数会有什么问题?
  2. 尝试修改强化学习参数,得到更好的学习性能,并报告修改的尝试和得到的结果。
  3. 尝试修改agent_name为ddqn,与dqn进行对比,分析两者的区别并报告实验结果的区别。

Edit

作业报告

本次作业只需要提交报告。报告需详细介绍学习方法和进行的实验尝试。 使用这个文档模版(点击下载) 撰写实验报告。

Edit

作业提交

作业报告 存储为PDF文件,用学号命名,例如231221001.pdf

上传到sftp sftp://www.lamda.nju.edu.cn 作业文件夹地址:/D:/Courses/IntroAi_HW/hw4 (用户名: IntroAI, 密码: course01234!@#$)
(注意:该sftp不能替换文件,上传一次后,如果需要修改,请在文件名后加上版本号再上传,例如231221001-1.zip)

注意:作业严禁抄袭!

The end