• 马尔科夫决策过程和Bellman方程


    要求:

    1.能够检测到理想的状态

    2.可以多次尝试

    3.系统的下个状态只与当前状态信息有关,而与更早之前的状态无关,在决策过程中还和当前采取的动作有关。

    马尔科夫决策过程由五个元素组成:

    S:表示状态集(states)

    A:表示一组动作(actions)

    P:表示状态转移概率Psa表示在当前s∈S,经过a∈A作用后,会转移到的其他状态的概率分布情况。在状态s下执行动作a,转移到s'的概率可以表示为p(s'|s,a)

    R:奖励函数,表示agent采取某个动作后的即时奖励

    y:折扣系数,意味着当下的reward比未来反馈的reward更重要 ΣγtR(st) 0≤γ<1

    上图即为决策过程,可以大致描述为,智能体初始状态为S0,选择一个动作a0,按概率转移矩阵Psa转移到了下一个状态S1,由此反复。

    在马尔科夫决策模型中,有一个状态价值函数:v(s) = E(Ut|St = s),表示t时刻状态s能获得的未来回报的期望,用来衡量某个状态或者状态-动作对的优劣价值,累计奖励的期望。从而就有最优价值函数 v*(s) = max v(s) (表示所有策略下最优累计奖励期望)

    Bellman方程:当前状态的价值和下一步的价值及当前的奖励(Reward)有关  

    Bellman方程用如下公式表示(其中π是给定状态s下,动作a的概率分布,γ为折扣系数):

    vπ(s) = Σa∈A π(a|s)(Rs+ γΣs'∈S Pss'a vπ(s'))

    Pss'a = P(St+1=s'|St=s,At=a)

    vπ(s) = Eπ [Rsa + γ vπ(St+1)|St =s]

    可以理解成,在某状态s下,当前奖励为Rsa,对于a‘∈A和s,会有相应的后续一个或多个状态s',这时需要求每个后续s'对应的价值和其发生概率的乘积,从而计算出bellman中的vπ

  • 相关阅读:
    SQL语句调优
    Oracle start with connect by prior
    博客园如何转载博客
    初遇java.lang.NoClassDefFoundError
    二叉搜索树、B树、B+树、B*树
    初见POJO
    win10系统Myeclipse装载tomcat7.0x遇见的新问题
    Myeclise新导入项目遇到的红色感叹号和红色叉问题
    SSM框架中文乱码解决方案
    第五天
  • 原文地址:https://www.cnblogs.com/zdm-code/p/13873820.html
Copyright © 2020-2023  润新知