1. 这是作者花费一周的时间,使用python写出的策略迭代和值迭代强化学习算法,以一个完整的项目发布,为解决“已知马尔科夫决策过程五元组,求最优策略”这类问题提供了算法与通用框架
2. 项目采用面向对象架构和面向抽象编程,用户可以在抽象类基础上,利用继承机制,定义新的具体环境类,测试该算法的有效性。项目还给出了unittest.Testcase的测试代码。
3. 在该项目中算法名称分别对应类:ValueIterationAgent和PolicyIterationAgent(都继承自MdpAgent),马尔科夫决策模型已知的环境抽象类MdpEnv
4. 为展示该算法的有效性,定义了一个GridWorldEnv的具体类,实现了作者博文中“在格子世界中寻宝”的最优策略的学习,并定义了一个GridWorldUI类可视化最优策略及基于最优策略的,用户可以运行住文件main.py
5. 该项目源码的最大特点是:架构合理,可维护性好,可读性强。你不断能学到这两个强化学习算法的精髓,也能够学到什么是好的python程序架构。
6.注意先阅读里面的readme.txt文件。
1