为什么总是至少有一项政策优于或等于所有其他政策?


15

强化学习:简介。 理查德·萨顿(Richard S.Sutton)和安德鲁·G·巴托(Andrew G.Barto)(c)2012年第二版,第67-68页。

解决强化学习任务,粗略地讲,是找到一种从长远来看会获得很多回报的政策。对于有限的MDP,我们可以通过以下方式精确定义最佳策略。值函数定义了对策略的部分排序。策略被定义为优于或等于政策如果它的预期收益大于或等于的,所有状态。换句话说,对于且仅对于所有,仅当。总有至少一项策略优于或等于所有其他策略。这是一个最佳策略。ππ′π′π≥π′vπ(s)≥vπ′(s)s∈S

为什么总是至少有一项政策优于或等于所有其他政策?


Puterman在“ Markov决策过程”的第6.2章中出现了非常详细的证明(确实使用了Banach不动点定理)。
— Toghs '18

Answers:


3

在引用的部分之后,同一段实际上告诉您该策略是什么:它是在每个州中采取最佳措施的策略。在MDP中,我们在一种状态下采取的行动不会影响在其他状态下采取的行动的回报,因此我们可以简单地逐个州地最大化政策。


这个答案不是完全错误吗?您如何说逐个州优化策略会导致优化策略。如果我优化过状态和它需要我š 吨+ 1,然后在优化小号吨+ 1根引线为最佳值函数V 吨+ 1,但存在其中另一策略š 吨未达最佳导致小号升和最优的值函数小号升高于V 吨+ 1。您如何通过这样的粗略分析将其排除在外?StSt+1St+1Vt+1StSlSlVt+1
— MiloMinderbinder

@MiloMinderbinder如果在最优策略是选择小号吨+ 1,则值小号吨+ 1比的值高的小号升。StSt+1St+1Sl
— 唐·雷巴

我的错。错字纠正:“这个答案不是完全错误吗?您如何说逐个州优化策略会导致最优策略?如果我优化过状态和它带我到小号吨+ 1,然后在优化小号吨+ 1根引线为最佳值函数V 吨+ 2的小号吨+ 2,但存在其中另一策略š 吨虽然引线未达最佳到小号升+ 1,因而价值函数小号吨+ 1StSt+1St+1Vt+2St+2StSl+1St+1高于但价值函数小号吨+ 2是根据本政策比政策下更高发现通过优化状态状态。你怎么不接受这个?” Vl+1St+2
— MiloMinderbinder

我认为的定义将首先阻止这种情况的发生,因为它也应考虑未来的回报。V
— Flying_Banana '19

问题是:为什么存在?不能绕过Banach不动点定理:-)q∗
— Fabian Werner

10

最优政策的存在并不明显。要了解原因,请注意,值功能在策略空间上仅提供了部分排序。这表示:

π′≥π⟺vπ′(s)≥vπ(s),∀s∈S

由于这只是一个偏序,有可能是其中两个政策的情况下,和π 2,没有可比性。换句话说,状态空间的子集S 1和S 2使得:π1π2S1S2

vπ′(s)≥vπ(s),∀s∈S1

vπ(s)≥vπ′(s),∀s∈S2

在这种情况下,我们不能说一项政策优于另一项。但是,如果我们要处理具有有限值函数的有限MDP,则永远不会发生这种情况。尽管可能存在多个最优策略,但仅存在一个最优值函数。

为了证明这一点,您需要了解Banach不动点定理。有关详细分析,请参阅。


8

设置

我们正在考虑以下设置:

  • 离散动作
  • 离散状态
  • 无限奖励
  • 固定政策
  • 无限的视野

V * = 最大π V π(小号),∀ 小号∈ 小号V * = V π *

(1)π∗∈arg⁡maxπVπ(s),∀s∈S
(2)V∗=maxπVπ(s),∀s∈S
(3)V∗=Vπ∗

问题

如何证明至少存在一个,它同时满足所有(1)?小号∈ 小号π∗s∈S

证明大纲

  1. 构造最优方程以用作最优值函数的临时替代定义,我们将在步骤2中证明它等同于等式(2)。

    (4)V∗(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V∗(s′)]
  2. 通过等式(4)和等式(2)推导定义最优值函数的等价性。

    (注意实际上,我们只需要证明中的必要性方向,因为自从等式(2)构造等式(4)以来,明显性就足够了。)

  3. 证明对方程(4)有一个独特的解决方案。

  4. 在步骤2中,我们知道在步骤3中获得的解也是方程(2)的解,因此它是最优值函数。

  5. 通过最优值函数,我们可以通过在等式(4)中为每个状态选择最大化器动作来恢复最优策略。

详细步骤

1个

由于,所以我们有。并且如果有使得,我们可以通过最大化选择一个更好的政策超过。V∗(s)=Vπ∗(s)=Ea[Qπ∗(s,a)]Vπ∗(s)≤maxa∈AQπ∗(s,a)s~Vπ∗≠maxa∈AQπ∗(s,a)Q∗(s,a)=Qπ∗(s,a)a

2

(=>)

跟随步骤1。

(<=)

即如果满足,则。V~V~(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V~(s′)]V~(s)=V∗(s)=maxπVπ(s),∀s∈S

将最佳Bellman运算符定义为 因此,我们的目标是证明如果,则。我们通过结合Puterman [1]的两个结果来证明这一点:

(5)TV(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V(s′)]
V~=TV~V~=V∗

a)如果,则。V~≥TV~V~≥V∗

b)如果,则。V~≤TV~V~≤V∗

证明:

一种)

对于任何, 这里是决策规则(在特定时间的动作轮廓),是立即奖励的向量表示从诱导的和是从诱导的转移矩阵。π=(d1,d2,...)

V~≥TV~=maxd[Rd+γPdV~]≥Rd1+γPd1V~
dRddPdd

通过归纳,对于任何, 其中表示下的步跃迁矩阵。n

V~≥Rd1+∑i=1n−1γiPπiRdi+1+γnPπnV~
Pπjjπ

由于 我们有了 因此我们有了。并且由于这适用于任何,因此得出结论 b)

Vπ=Rd1+∑i=1∞γiPπiRdi+1
V~−Vπ≥γnPπnV~−∑i=n∞γiPπiRdi+1⏟→0 as n→∞
V~≥Vππ
V~≥maxπVπ=V∗

从步骤1开始。

3

最佳的Bellman算子是范数的一个收缩,请参见。[2]。L∞

证明:对于任何, ,其中(*)中使用 s最大一个˚F(一)-最大一个'克(一')≤最大一个[˚F(一)-克(一)]

|TV1(s)−TV2(s)|=|maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V1(s′)]−maxa′∈A[R(s,a′)+γ∑s′∈ST(s,a′,s′)V(s′)]|≤(∗)|maxa∈A[γ∑s′∈ST(s,a,s′)(V1(s′)−V2(s′))]|≤γ‖V1−V2‖∞
maxaf(a)−maxa′g(a′)≤maxa[f(a)−g(a)]

因此,根据Banach不动点定理,具有唯一的不动点。T

参考文献

[1] Puterman,Martin L.。“马尔可夫决策过程:离散随机动态规划。” (2016)。

[2] A. Lazaric。http://researchers.lille.inria.fr/~lazaric/Webpage/MVA-RL_Course14_files/slides-lecture-02-handout.pdf

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.