首页 > 代码库 > MDP(MarkovDecisionProcess,马尔卡夫决策树)实现总结

MDP(MarkovDecisionProcess,马尔卡夫决策树)实现总结

MDP算法简介:首先MDP算法由五个单元组成(S、A、Psa(s)、R、G)

S:代表状态集合,即整个事件有多少中可能的状态
A:代表每个状态下的所有可能的行为
Psa(s):代表在状态s下采取行为a转移到s的状态转移概率
R:代表的是回报函数(reward function),指到达某个状态获得的利弊
G:是一个大于0小于1的常数系数,越接近1表示该策略行为越看重未来的获利,越接近于0表示该策略越看重当前行为的获利
 
以上五个单元的关系简单来说就是:在状态集S中根据Psa(s)和R寻找一个行为集合(策略),使该行为的获利最大,用G控制未来获利与当前获利之前的比重关系
 
为了实现上述寻找最大获利策略的目的,有值函数替代法(value iteration)和策略替代方法(policy iteration)
 
值函数替代法:
  首先是值函数的定义:
    技术分享
  值函数替代法的实现算法:
    技术分享

  实现过策程的注意点:

    如下图所示值函数

      技术分享

    状态1为目标状态,状态3为避免状态,状态3为不存在状态

    首先1状态和2状态的值在整个替代过程中不能改变,否则值函数不会收敛

    其次3状态,不能使用非常低或者高的值函数参与运算,因为一旦参与运算会直接拉低其相邻状态的值函数

策略替代法:未完待续

 

MDP(MarkovDecisionProcess,马尔卡夫决策树)实现总结