文件帮助中心文件
创建马尔可夫决策过程模型
mdp = createmdp(状态,操作)
例子
MDP.= createmdp(状态那行动)使用指定的状态和操作创建Markov决策过程模型。
MDP.= createmdp(状态那行动)
MDP.
状态
行动
全部收缩
使用八个状态和两种可能的操作创建MDP模型。
mdp = createmdp(8,[“向上”;“下”]);
指定状态转换及其相关的奖励。
%州1转型和奖励mdp.t(1,2,1)= 1;MDP.R(1,2,1)= 3;mdp.t(1,3,2)= 1;MDP.R(1,3,2)= 1;%州2转型和奖励mdp.t(2,4,1)= 1;MDP.R(2,4,1)= 2;mdp.t(2,5,2)= 1;MDP.R(2,5,2)= 1;%州3转型和奖励mdp.t(3,5,1)= 1;MDP.R(3,5,1)= 2;mdp.t(3,6,2)= 1;MDP.R(3,6,2)= 4;%状态4转型和奖励mdp.t(4,7,1)= 1;MDP.R(4,7,1)= 3;mdp.t(4,8,2)= 1;MDP.R(4,8,2)= 2;%州5转型和奖励mdp.t(5,7,1)= 1;MDP.R(5,7,1)= 1;mdp.t(5,8,2)= 1;MDP.R(5,8,2)= 9;%州6转型和奖励mdp.t(6,7,1)= 1;MDP.R(6,7,1)= 5;mdp.t(6,8,2)= 1;MDP.R(6,8,2)= 1;%州7转型和奖励mdp.t(7,7,1)= 1;mdp.r(7,7,1)= 0;mdp.t(7,7,2)= 1;MDP.R(7,7,2)= 0;%州8转型和奖励mdp.t(8,8,1)= 1;mdp.r(8,8,1)= 0;mdp.t(8,8,2)= 1;mdp.r(8,8,2)= 0;
指定模型的终端状态。
mdp.terminalstates = [“S7”;“S8”];
模型状态,指定为以下之一:
正整数 - 指定模型状态的数量。在这种情况下,每个状态都有默认名称,例如“s1”对于第一个州。
“s1”
字符串矢量 - 指定状态名称。在这种情况下,状态的总数等于矢量的长度。
模型操作,指定为以下之一:
正整数 - 指定模型操作的数量。在这种情况下,每个操作都有一个默认名称,例如“A1”对于第一个行动。
“A1”
字符串矢量 - 指定操作名称。在这种情况下,行动总数等于矢量的长度。
genericmdp.
MDP模型,作为一个返回genericmdp.对象具有以下属性。
当前状态
当前状态的名称,指定为字符串。
状态名称,指定为字符串向量,长度等于状态数。
操作名称,指定为具有长度等于操作次数的字符串向量。
T.
状态转换矩阵,指定为3-D阵列,其确定了代理在环境中的可能运动。国家转换矩阵T.是一个概率矩阵,其指示代理从当前状态移动的可能性有多大程度S.任何可能的下一个州S'通过执行行动一种。T.是一个S.-经过-S.-经过-一种阵列,其中S.是州的数量和一种是行动的数量。它由:
S.
S'
一种
T. ( S. 那 S. ' 那 一种 ) = P. R. O. B. 一种 B. 一世 L. 一世 T. y ( S. ' | S. 那 一种 ) 。
从非锤子状态出来的过渡概率之和S.在给定的动作之后必须总结一个。因此,必须同时指定给定状态的所有随机转换。
例如,表明在状态下1以下行动4.搬到州的平等概率2或者3.,使用以下内容:
1
4.
2
3.
mdp.t(1,[2 3],4)= [0.5 0.5];
您还可以指定,在一个操作之后,剩余状态仍有一些概率。例如:
MDP.T(1,[11],1)= [0.25 0.25 0.25 0.25];
R.
奖励转换矩阵指定为3-D阵列,该数组确定代理在环境中执行操作后收到的奖励程度。R.具有与状态转换矩阵相同的形状和大小T.。从州移动的奖励S.国家S'通过执行行动一种是(谁)给的:
R. = R. ( S. 那 S. ' 那 一种 ) 。
终端
网格世界中的终端状态名称,指定为状态名称的字符串向量。
rlmdpenv.|creategridworld.
rlmdpenv.
creategridworld.
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系您当地的办公室