<规划与决策>—MDP、POMDP及其应用

2,193 阅读1分钟

马尔可夫决策过程(Markov Decision Process,MDP)

马尔可夫决策是一种序贯决策的数学模型,用于在具有马尔可夫性的系统中模拟智能体的策略和回报。 如果想要解决一个决策问题,首先建立马尔可夫决策模型,然后可以使用强化学习的算法对其进行求解。最后的结果形式为一组贯序策略:π(θ)={π1,π2,,πτ}\begin{array}{l} \pi(\theta)=\left\{\pi_{1}, \pi_{2}, \cdots, \pi_{\tau}\right\} \\ \end{array},对策略参数θ\theta也即下式,即可得到最优策略。

θ=argmaxθJ(θ)\theta=\arg \max _{\theta} \mathcal{J}(\theta)

马尔可夫性

何为马尔可夫性?当状态的关系满足以下式子时就称该环境具有马尔可夫性。

Pss=P(St+1St)P_{ss'}=P(S_{t+1}|S_{t})

也就是,环境当前状态仅与上一时刻状态有关,而和之前的历史状态无关。

马尔可夫奖励

P= from [P11 to P1nPn1Pnn]Rs=E[Rt+1St=s]\begin{array}{l} \mathcal{P}=\text { from }\left[\begin{array}{ccc} \mathcal{P}_{11} & \text { to } & \mathcal{P}_{1 n} \\ \vdots & & \\ \mathcal{P}_{n 1} & \ldots & \mathcal{P}_{n n} \end{array}\right] \\ R_{s}=E\left[R_{t+1} \mid S_{t}=s\right] \end{array}

马尔可夫链

马尔可夫链是由状态和状态转移表示的一种随机过程,其满足马尔可夫性。

价值函数

状态价值

马尔可夫决策的目的是为了最大化整体回报值。

  • 状态价值
v(s)=E[GtSt=s]=E[Rt+1+γRt+2+γ2Rt+3+St=s]=E[Rt+1+γ(Rt+2+γRt+3+)St=s]=E[Rt+1+γGt+1St=s]=E[Rt+1+γv(St+1)St=s]\begin{aligned} v(s) &=\mathbb{E}\left[G_{t} \mid S_{t}=s\right] \\ &=\mathbb{E}\left[R_{t+1}+\gamma R_{t+2}+\gamma^{2} R_{t+3}+\ldots \mid S_{t}=s\right] \\ &=\mathbb{E}\left[R_{t+1}+\gamma\left(R_{t+2}+\gamma R_{t+3}+\ldots\right) \mid S_{t}=s\right] \\ &=\mathbb{E}\left[R_{t+1}+\gamma G_{t+1} \mid S_{t}=s\right] \\ &=\mathbb{E}\left[R_{t+1}+\gamma v\left(S_{t+1}\right) \mid S_{t}=s\right] \end{aligned}

于是有:

v(s)=Rs+γsSPssv(s)v(s)=\mathcal{R}_{s}+\gamma \sum_{s^{ \prime} \in \mathcal{S}} \mathcal{P}_{s s^{\prime}} v\left(s^{\prime}\right)

求解

  • 求解各状态价值:
v=R+γPvv=\mathcal{R}+\gamma \mathcal{P}v
[v(1)v(n)]=[R1Rn]+γ[P11P1nP11Pnn][v(1)v(n)]v=R+γPv(IγP)v=Rv=(IγP)1R\begin{array}{l} {\left[\begin{array}{c} v(1) \\ \vdots \\ v(n) \end{array}\right]=\left[\begin{array}{c} \mathcal{R}_{1} \\ \vdots \\ \mathcal{R}_{n} \end{array}\right]+\gamma\left[\begin{array}{ccc} \mathcal{P}_{11} & \ldots & \mathcal{P}_{1 n} \\ \vdots & & \\ \mathcal{P}_{11} & \ldots & \mathcal{P}_{n n} \end{array}\right]\left[\begin{array}{c} v(1) \\ \vdots \\ v(n) \end{array}\right]} \\ v=\mathcal{R}+\gamma \mathcal{P} v \\ (I-\gamma \mathcal{P}) v=\mathcal{R} \\ v=(I-\gamma \mathcal{P})^{-1} \mathcal{R} \end{array}

部分可观的马尔可夫决策过程(Partial observable markov decision process,POMDP)

在真实应用中,环境的状态通常对于智能体来说是不完全可观的,因此使用MDP模型不能够精确的描述问题,由此引入了POMDP模型。 在POMDP模型中,引入了状态观测器来使得智能体能够推断状态的概率分布。

置信度迭代公式:

b(s)=ηO(os,a)sST(ss,a)b(s){{b^\prime }\left( {{s^\prime }} \right) = \eta O\left( {o\mid {s^\prime },a} \right)\sum\limits_{s \in S} T \left( {{s^\prime }\mid s,a} \right)b(s)}

其中η=1/Pr(ob,a)\eta=1 / \operatorname{Pr}(o \mid b, a)Pr\operatorname{Pr}可表示为Pr(ob,a)=sSO(os,a)sST(ss,a)b(s){\Pr (o\mid b,a) = \sum\limits_{{s^\prime } \in S} O \left( {o\mid {s^\prime },a} \right)\sum\limits_{s \in S} T \left( {{s^\prime }\mid s,a} \right)b(s)} 状态价值为:

Vπ(b0)=t=0γtr(bt,at)=t=0γtE[R(st,at)b0,π]{{V^\pi }\left( {{b_0}} \right) = \sum\limits_{t = 0}^\infty {{\gamma ^t}} r\left( {{b_t},{a_t}} \right) = \sum\limits_{t = 0}^\infty {{\gamma ^t}} E\left[ {R\left( {{s_t},{a_t}} \right)\mid {b_0},\pi } \right]}

最优化方程为:

π=argmaxπVπ(b0){{\pi ^*} = \mathop {{\mathop{\rm argmax}\nolimits} }\limits_\pi {V^\pi }\left( {{b_0}} \right)}
V(b)=maxaA[r(b,a)+γoΩPr(ob,a)V(τ(b,a,o))]{{V^*}(b) = {{\max }_{a \in A}}\left[ {r(b,a) + \gamma \sum\limits_{o \in \Omega } {\Pr } (o\mid b,a){V^*}(\tau (b,a,o))} \right]}

应用

待补充~