强化学习工具箱™软件提供了几个预定义的网格世界环境,其中的行动、观察、奖励和动态已经定义。你可以使用这些环境:
学习强化学习概念。
熟悉强化学习工具箱软件功能。
测试您自己的强化学习代理。
您可以加载以下预定义的MATLAB®网格世界环境使用rlPredefinedEnv
函数。
环境 | 代理任务 |
---|---|
基本网格的世界 | 通过从离散动作空间选择移动,从二维网格上的起始位置移动到目标位置{N, S、E、W} . |
瀑布网格世界 | 在具有未知确定性或随机动力学的更大的二维网格中,从起始位置移动到目标位置。 |
有关网格世界环境属性的更多信息,请参见创建自定义网格世界环境.
还可以加载预定义的MATLAB控制系统环境。有关更多信息,请参见加载预定义的控制系统环境.
基本的网格世界环境是一个二维的5 × 5网格,包含起始位置、终点位置和障碍。环境还包含一个从状态[2,4]到状态[4,4]的特殊跳转。agent的目标是从起点位置移动到终点位置,同时避开障碍并最大化总奖励。
要创建一个基本的网格世界环境,请使用rlPredefinedEnv
函数。这个函数创建一个rlMDPEnv
对象表示网格世界。
env = rlPredefinedEnv (“BasicGridWorld”);
控件可以可视化网格世界环境情节
函数。
探员的位置是一个红圈。缺省情况下,代理启动状态为[1,1]。
终端位置是一个蓝色的正方形。
障碍是黑色方块。
情节(env)
代理可以向四个可能的方向之一移动(北、南、东或西)。
代理人受到以下奖励或处罚:
+ 10
到达终点[5,5]的奖励
+5
从状态[2,4]跳到状态[4,4]的奖励
-1
其他行为的惩罚
确定性瀑布网格世界环境是一个二维的8 × 7网格,具有起始位置和终点位置。环境包括一个瀑布,将代理推向网格的底部。代理的目标是从起始位置移动到终端位置,同时使总奖励最大化。
要创建一个确定性瀑布网格世界,请使用rlPredefinedEnv
函数。这个函数创建一个rlMDPEnv
对象表示网格世界。
env = rlPredefinedEnv (“WaterFallGridWorld-Deterministic”);
与基本网格世界一样,您可以可视化环境,其中代理是一个红色的圆圈,终端位置是一个蓝色的正方形。
情节(env)
代理可以向四个可能的方向之一移动(北、南、东或西)。
代理人受到以下奖励或处罚:
+ 10
到达终点[4,5]的奖励
-1
其他行为的惩罚
在这种环境中,瀑布将代理推向网格的底部。
瀑布的强度在柱之间变化,如上图顶部所示。当代理进入一个非零强度的列时,瀑布将它按指定的方块数量向下推。例如,如果agent从状态[5,2]向东移动,则到达状态[7,3]。
随机瀑布网格世界环境是一个8 × 7的二维网格,具有起始位置和终点位置。该环境包括一个瀑布,以随机强度将代理人推向网格底部。代理的目标是从起点位置移动到目标终端位置,同时避免网格底部的惩罚终端状态,并使总奖励最大化。
要创建一个随机瀑布网格世界,使用rlPredefinedEnv
函数。这个函数创建一个rlMDPEnv
对象表示网格世界。
env = rlPredefinedEnv (“WaterFallGridWorld-Stochastic”);
与基本网格世界一样,您可以可视化环境,其中代理是一个红色的圆圈,终端位置是一个蓝色的正方形。
情节(env)
代理可以向四个可能的方向之一移动(北、南、东或西)。
代理人受到以下奖励或处罚:
+ 10
到达终点[4,5]的奖励
-10
到达网格底部任何终端状态的惩罚
-1
其他行为的惩罚
在这种环境中,瀑布以随机的强度将代理推向网格的底部。基线强度与确定性瀑布环境的强度相匹配。然而,在随机瀑布的情况下,代理人有相同的机会体验指示的强度,一个水平以上的强度,或一个水平以下的强度。例如,如果agent从状态[5,2]向东移动,那么它到达状态[6,3]、[7,3]或[8,3]的机会是相等的。