● 首先看env,MATLAB提供了几个已经搭建好的,只要
env = rlPredefinedEnv(env名字)
env名字可以选择以下几个
'BasicGridWorld'
简单的网格环境

'CartPole-Discrete'
离散型外力输入值的倒立摆
'CartPole-Continuous'
连续型外力输入值的倒立摆

'DoubleIntegrator-Discrete'
'DoubleIntegrator-Continuous'
一个木块在木板上滑动,就是这样
'SimplePendulumWithImage-Discrete'
'SimplePendulumWithImage-Continuous'
一根摆杆,可以观测到图像

'WaterFallGridWorld-Stochastic'
'WaterFallGridWorld-Deterministic'
一个逆水行舟的网格环境,全局有外力在把agent往回推
其中网格环境是可以从空网格自定义起点终点障碍物的,也可以添加全局外力,甚至跳跃障碍物的特殊功能
还有2个是simulink搭建的环境模型
'SimplePendulumModel-Discrete'
'SimplePendulumModel-Continuous'
'CartPoleSimscapeModel-Discrete'
'CartPoleSimscapeModel-Continuous'
功能上和m语言搭建的一致
除了上面说的用基础网格搭建环境,还可以搭建复杂环境,需要注意的是这样几点
初始化,设定环境的输入输出,根据情况选择离散还是连续,维度也要在这里确定
执行一步,计算输出,reward,是否结束
绘图,重点关注是否绘图,因为训练过程每次都绘图严重降低效率
另外我们还试验成功了调用Python搭建强化学习环境的方法MATLAB调用pygame实现强化学习环境