createGridWorld
描述
例子
创建网格世界环境
对于这个示例,考虑5-by-5电网世界使用以下规则:
5-by-5网格边界,有界的世界4可能的行动(= 1,南北= 2,= 3,东部西= 4)。
代理从细胞开始(2,1)(第二行,第一列)。
代理收到奖励+ 10,如果它到达终端状态细胞(5,5)(蓝色)。
环境包含一个特殊的从细胞(2、4)细胞(4,4)+ 5的奖励。
代理被障碍细胞[3 3],[3,4],[3,5]和[4 3](黑细胞)。
所有其他行为导致1奖励。
首先,创建一个GridWorld
对象使用createGridWorld
函数。
GW = createGridWorld (5,5)
GW = GridWorld属性:GridSize: 5[5]现状后:“[1]”状态:[25 x1字符串]行动:[4 x1字符串)师:[25 x25x4双]R: [25 x25x4双]ObstacleStates: [0 x1字符串]TerminalStates: [0 x1字符串]ProbabilityTolerance: 8.8818 e-16
现在,设置初始,终端和障碍。
GW。现状后=(2,1)的;GW。TerminalStates =“[5,5]”;GW。ObstacleStates = [“[3 3]”;“[3,4]”;“[3,5]”;“[4 3]”];
更新状态和状态转移矩阵的障碍设置障碍跳统治的国家。
updateStateTranstionForObstacles (GW) GW.T (state2idx(吉瓦,”“(2、4))::)= 0;GW.T (state2idx(吉瓦,”“(2、4)),state2idx(吉瓦,“(4,4)”):)= 1;
接下来,定义的奖励奖励转移矩阵。
nS =元素个数(GW.States);nA =元素个数(GW.Actions);GW。R=-1*ones(nS,nS,nA); GW.R(state2idx(GW,”“(2、4)),state2idx(吉瓦,“(4,4)”):)= 5;GW.R (:, state2idx (GW, GW.TerminalStates):) = 10;
现在,使用rlMDPEnv
创建一个网格世界环境使用GridWorld
对象吉瓦
。
env = rlMDPEnv (GW)
env = rlMDPEnv属性:模型:[1 x1 rl.env。GridWorld] ResetFcn: []
你可以想象世界网格环境中使用情节
函数。
情节(env)
输入参数
米
- - - - - -网格的行数
标量
网格的行数,指定为一个标量。
n
- - - - - -网格的列数
标量
网格的列数,指定为一个标量。
移动
- - - - - -动作名称
“标准”
(默认)|“国王”
动作名称,指定为“标准”
或“国王”
。当移动
被设置为
“标准”
操作的,[' N '; ' S ' E '; ' W ']
。“国王”
操作的,[' N ',“S”;“E”;“W”;“东北”;“西北”;“SE”;“西南”)
。
输出参数
吉瓦
——二维网格世界
GridWorld
对象
二维网格的世界,作为一个返回GridWorld
下面列出的对象的属性。有关更多信息,请参见创建自定义网格的世界环境。
GridSize
——网格的大小
(m, n)
向量
网格的大小世界,指定为一个(m, n)
向量。
现状后
——当前状态的名称
字符串
当前状态的名称,指定为一个字符串。
行动
——行动的名字
字符串向量
T
——状态转移矩阵
三维数组
状态转移矩阵,指定为一个三维数组,这决定了代理的可能运动的环境。状态转移矩阵T
是一个概率矩阵,表明可能代理将从当前状态年代
任何可能的下一个状态年代
通过执行行动一个
。T
是由,
T
是:
一个
K
——- - - - - -K
4数组,如果移动
被指定为“标准”
。在这里,K
=米
*n
。一个
K
——- - - - - -K
8数组,如果移动
被指定为“国王”
。
R
——奖励转移矩阵
三维数组
奖励转移矩阵,指定为一个三维数组,决定了奖励代理接收环境中执行一个动作之后。R
有相同的形状和大小是状态转移矩阵吗T
。奖励转移矩阵R
是由,
R
是:
一个
K
——- - - - - -K
4数组,如果移动
被指定为“标准”
。在这里,K
=米
*n
。一个
K
——- - - - - -K
8数组,如果移动
被指定为“国王”
。
ObstacleStates
——国家名称,不能达到网格中的世界
字符串向量
国家名称,不能达到网格中的世界,指定为一个字符串向量。
TerminalStates
——终端状态名称网格中的世界
字符串向量
终端状态名称网格中的世界,指定为一个字符串向量。
版本历史
介绍了R2019a
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。