提交 c1977733 编写于 作者: W wizardforcel

2021-01-22 22:47:15

上级 b82c71c5
......@@ -17,15 +17,15 @@
* 策略目标函数
* 时差规则
* 策略梯度
* 使用策略梯度的 Agent 学习 Pong
* 使用策略梯度的智能体学习 Pong
# 策略优化方法
策略优化方法的目标是找到随机策略![](img/e183d447-5314-4850-9e50-21a8888bf8c6.png),它是针对给定状态的操作分布,该状态使期望的奖励总和最大化。 它旨在直接找到该策略。 基本概述是创建一个神经网络(即策略网络),该网络处理一些状态信息并输出代理可能采取的行动的分布。
策略优化方法的目标是找到随机策略`π[θ]`,它是针对给定状态的操作分布,该状态使期望的奖励总和最大化。 它旨在直接找到该策略。 基本概述是创建一个神经网络(即策略网络),该网络处理一些状态信息并输出代理可能采取的行动的分布。
策略优化的两个主要组成部分是:
* 神经网络的权重参数由![](img/28e571cd-ca92-4253-ae6c-3be13f0af326.png)向量定义,这也是我们控制策略的参数。 因此,我们的目标是训练权重参数以获得最佳策略。 由于我们将保单视为给定保单的预期奖励总和。 在此,对于![](img/28e571cd-ca92-4253-ae6c-3be13f0af326.png)的不同参数值,策略将有所不同,因此,最佳策略将是具有最大总体奖励的策略。 因此,具有最大预期奖励的![](img/28e571cd-ca92-4253-ae6c-3be13f0af326.png)参数将是最佳策略。 以下是预期奖励金额的公式:
* 神经网络的权重参数由`θ`向量定义,这也是我们控制策略的参数。 因此,我们的目标是训练权重参数以获得最佳策略。 由于我们将保单视为给定保单的预期奖励总和。 在此,对于`θ`的不同参数值,策略将有所不同,因此,最佳策略将是具有最大总体奖励的策略。 因此,具有最大预期奖励的`θ`参数将是最佳策略。 以下是预期奖励金额的公式:
![](img/b0592927-b05c-471e-a9f1-18b6c1bedaa4.png)
......@@ -33,7 +33,7 @@
这里, `H`地平线的时间步长,因此,如果开始时间步长`t = 0`,则总时间步长为`H + 1`
* 随机策略类消除了策略优化问题,为我们提供了一组可以选择最佳策略的策略。 在网格世界环境中采用确定性策略的情况下,由于动作变化而导致的变化并不平滑,但是如果每个州都有动作分布,我们可以稍微改变分布,而这只会稍微改变预期的总和。 奖励。 这是使用随机策略的优势,其中![](img/143e641a-8be1-411e-a866-01e470d80447.png)给出给定状态`s`的动作`a`的概率。 因此,![](img/342e31bf-6e76-40e8-a298-b03277733e73.png)给出了给定状态下动作的概率分布。
* 随机策略类消除了策略优化问题,为我们提供了一组可以选择最佳策略的策略。 在网格世界环境中采用确定性策略的情况下,由于动作变化而导致的变化并不平滑,但是如果每个州都有动作分布,我们可以稍微改变分布,而这只会稍微改变预期的总和。 奖励。 这是使用随机策略的优势,其中`π[θ](a | s)`给出给定状态`s`的动作`a`的概率。 因此,`π[θ]`给出了给定状态下动作的概率分布。
因此,由于随机策略,我们有一个平滑的优化问题,可以应用梯度下降来获得良好的局部最优,从而导致最优策略。
......@@ -74,14 +74,14 @@
在上图中,我们看到有八个状态,其中两个奖励为 -10 的状态是要避免的不良状态,并且有一个奖励为 10 的状态是良好状态,还有目标状态。 但是,我们主要担心的是灰色阴影状态,在该状态下,代理人无法区分这两个状态,因为它们具有相同的特征。
假设任何状态的特征都为![](img/a0e8241f-a4a4-4bbc-a9b8-8912eb94ef2a.png),动作为北,东,西和南。
假设任何状态的特征都为`φ(s, a)`,动作为北,东,西和南。
考虑到这些功能,让我们比较基于值的方法和基于策略的方法:
* 基于值的强化学习将使用近似值函数![](img/bc43afc9-6edf-43f7-9d3c-1a25a10aca56.png)
* 基于策略的强化学习将使用参数化策略![](img/f0d57666-8c89-494e-9345-9b2784a5ddbc.png)
* 基于值的强化学习将使用近似值函数`Q(s, a) = f(φ(s, a), w)`
* 基于策略的强化学习将使用参数化策略`π[θ](s, a) = g(φ(s, a), θ)`
在此,`w`是值函数的参数,![](img/cbfbfe03-7b6c-438f-acd5-3b0a29950004.png)是策略的参数。 众所周知,灰色方块具有相同的特征,即在北部和南部都有墙。 因此,由于相同的特征,这导致状态混淆。 结果,基于价值的强化学习方法学习了如下确定性策略:
在此,`w`是值函数的参数,`θ`是策略的参数。 众所周知,灰色方块具有相同的特征,即在北部和南部都有墙。 因此,由于相同的特征,这导致状态混淆。 结果,基于价值的强化学习方法学习了如下确定性策略:
* 要么在两个灰色阴影状态下向西移动
* 或在两个灰色阴影状态下向东移动
......@@ -99,53 +99,53 @@
# 策略目标函数
现在让我们讨论如何优化策略。 在策略方法中,我们的主要目标是具有参数向量![](img/7f80ae4c-023b-41eb-afe0-4adc03aeaa6f.png)的给定策略![](img/fba31d95-dfc8-484d-89a8-3f18a2a052a1.png)找到参数向量的最佳值。 为了测量哪个最好,我们针对参数向量![](img/1d265c8a-58fb-47ad-a899-332ce8ed4b57.png)的不同值测量![](img/f7d09ac3-d177-4d26-be11-40d62ddd2498.png)策略![](img/7eff98de-883b-4dc2-91b2-bcf5345e6d21.png)的质量。
现在让我们讨论如何优化策略。 在策略方法中,我们的主要目标是具有参数向量`θ`的给定策略`J(θ)`找到参数向量的最佳值。 为了测量哪个最好,我们针对参数向量`θ`的不同值测量`J(θ)`策略`π[θ](s, a)`的质量。
在讨论优化方法之前,让我们首先弄清楚度量策略![](img/a87b9882-1171-43a5-9a30-cb96ac7792f1.png)的质量的不同方法:
在讨论优化方法之前,让我们首先弄清楚度量策略`π[θ](s, a)`的质量的不同方法:
* 如果是情景环境,则![](img/399546eb-fa7e-4286-a286-0bbc7b7075a9.png)可以是开始状态![](img/a8ed5154-6128-47af-9e75-c430390a98e0.png)的值函数,也就是说,如果它从任何状态![](img/224c25b9-df64-40a0-8d0a-cf927ef00be0.png)开始,则其值函数将是该状态开始时的预期奖励总和 。 因此,
* 如果是情景环境,则`J(θ)`可以是开始状态`V[π[θ]](s[1])`的值函数,也就是说,如果它从任何状态`s[1]`开始,则其值函数将是该状态开始时的预期奖励总和 。 因此,
![](img/01578517-3d8f-4227-a234-94a8e6fc9985.png)
* 如果是连续环境,则![](img/67a2605d-5b85-4ef8-8345-23f88e04c7aa.png)可以是状态的平均值函数。 因此,如果环境持续不断,那么策略质量的衡量标准可以是处于任何状态`s`的概率之和,该概率是![](img/a112f968-41ba-4324-8aea-9a7362cd57dc.png)乘以该状态的值 也就是说,从该状态开始的预期奖励。 因此,
* 如果是连续环境,则`J(θ)`可以是状态的平均值函数。 因此,如果环境持续不断,那么策略质量的衡量标准可以是处于任何状态`s`的概率之和,该概率是`d[π[θ]](s)`乘以该状态的值 也就是说,从该状态开始的预期奖励。 因此,
![](img/2cfba9ad-f36c-4239-80f2-8c4acd2b5738.png)
* 对于连续环境,![](img/d7daa239-124e-489d-8dee-dac4ce0c67da.png)可以是每个时间步长的平均奖励,它是处于任何状态`s`的概率的总和,即![](img/ff38860c-55d7-48cb-b711-96730be55ee6.png)乘以对该状态的不同动作的期望奖励![](img/ab734c3a-740c-4d05-bee7-9fee1d71a8ec.png)的总和。 因此:
* 对于连续环境,`J(θ)`可以是每个时间步长的平均奖励,它是处于任何状态`s`的概率的总和,即`d[π[θ]](s)`乘以对该状态的不同动作的期望奖励`E[R[s]^a] = Σ[a] π[θ](s, a) R[s]^a`的总和。 因此:
![](img/d42506b9-9710-4ec3-93a3-50c62b3b2991.png)
在此,![](img/76bb83ab-8783-441c-b93f-9cb852adea36.png)是在状态`s`采取行动`a`的奖励。
在此,`R[s]^a`是在状态`s`采取行动`a`的奖励。
到目前为止,我们知道基于策略的强化学习是一个优化问题,目标是找到使![](img/29b8bcc8-8899-4036-915c-da44b0572d00.png)最大化的![](img/ebff45ff-12c2-44e0-bda5-21cde9d251b6.png)。 同样,在这里,我们将使用基于梯度的方法进行优化。 使用基于梯度的优化的原因是要获得更高的效率,因为与无梯度方法相比,梯度指向了更高效率的方向。
到目前为止,我们知道基于策略的强化学习是一个优化问题,目标是找到使`J(θ)`最大化的`θ`。 同样,在这里,我们将使用基于梯度的方法进行优化。 使用基于梯度的优化的原因是要获得更高的效率,因为与无梯度方法相比,梯度指向了更高效率的方向。
让衡量策略质量的![](img/e692d5f7-a0f4-429d-88b9-76841097db58.png)成为我们的策略目标函数。 因此,策略梯度算法通过相对于参数![](img/ea8c20d8-5c4c-48ed-92eb-d67c4fce01c2.png)提升策略的梯度,在![](img/2db17489-4871-4766-aecf-8ceb59e3588f.png)中寻找局部最大值。 这是因为我们的目标是使![](img/8fa96eec-d05a-4d08-823a-c94a2f12d1f2.png)相对于![](img/a785ed7b-74a1-4b8c-a661-44cbe24676b7.png)最大化,因此我们进行了梯度上升,其中
![](img/029690bc-9836-48b8-b4c6-2106aa3a2a32.png)的参数的增量如下:
让衡量策略质量的``J(θ)``成为我们的策略目标函数。 因此,策略梯度算法通过相对于参数`θ`提升策略的梯度,在`J(θ)`中寻找局部最大值。 这是因为我们的目标是使`J(θ)`相对于`θ`最大化,因此我们进行了梯度上升,其中
`Δθ`的参数的增量如下:
![](img/9ff648e7-9f6f-4a44-a52f-7d749cb6e1cf.png)
在这里,![](img/a0ed8041-0913-44e4-8e75-4a4575f6a43e.png)是策略梯度,![](img/08199fd7-dc55-41ad-b165-1986e4b9b3f0.png)是学习率,也称为**步长参数**,步长参数决定该参数应在每个步长上偏移多少梯度。 策略梯度还可以用以下形式阐述:
在这里,`ᐁ[θ] J(θ)`是策略梯度,`α`是学习率,也称为**步长参数**,步长参数决定该参数应在每个步长上偏移多少梯度。 策略梯度还可以用以下形式阐述:
![](img/0d918775-9864-4b04-9b05-f59c0941e222.png)
# 策略梯度定理
假设给定策略![](img/e3d26803-9858-4ea2-bd79-3e0b45a09f99.png)每当不为零时都是可微的,则给定策略相对于![](img/1ac193f4-8848-497e-b421-fcc2c4f3be6b.png)的梯度为![](img/bdb911f2-ef69-4a03-ad39-6d2c15e520ba.png)。 因此,我们可以以似然比的形式进一步利用此梯度量,如下所示:
假设给定策略`π[θ](s, a)`每当不为零时都是可微的,则给定策略相对于`θ`的梯度为`ᐁ[θ] π[θ](s, a)`。 因此,我们可以以似然比的形式进一步利用此梯度量,如下所示:
![](img/0af8a486-8579-4e97-8e22-ec4b276714f5.png)
此处,![](img/d7dd0cd7-842e-41fb-9d73-bf9ffa1d8df6.png)是得分函数,供将来参考。
此处,`ᐁ[θ] log π[θ](s, a)`是得分函数,供将来参考。
现在,让我们考虑一个简单的一步式 MDP,即马尔可夫决策过程,其中:
* 起始状态为,发生的可能性为![](img/a366eee2-685d-4db4-8eb6-bb12f82762cf.png)
* 终止仅在获得奖励![](img/564de4ef-e5c9-433a-b305-f5727f768af8.png)的情况下执行一次
* 起始状态为`s`,发生的可能性为`d[π[θ]](s)`
* 终止仅发生在获得奖励`r = R[s]^a`的一步之后
考虑到它是一个持续的环境,因此:
![](img/a8296a39-e2c7-4a1e-a8c4-02e15df4fd4e.png)
因此,策略梯度![](img/b7b329f8-340c-472e-afcd-cacd7ff3a1d5.png)将如下所示:
因此,策略梯度`ᐁ[θ] J(θ)`将如下所示:
![](img/ba08ca33-c4b3-4d33-85f9-cd7ee7413342.png)
......@@ -157,7 +157,7 @@
![](img/b6666854-9607-4fcd-9536-6ad2779a7ffd.png)
因此,将该方法推广到多步马尔可夫决策过程将导致状态奖励 Q 值函数![](img/5610aab6-6f91-4840-b4dc-dbb44f9ed700.png)代替瞬时奖励`r`。 这称为**策略梯度定理**。 该定理对前面讨论的其他类型的策略目标函数有效。 因此,对于任何这样的策略目标函数和任何可区分的![](img/e3d26803-9858-4ea2-bd79-3e0b45a09f99.png),策略梯度如下:
因此,将该方法推广到多步马尔可夫决策过程将导致状态奖励 Q 值函数`Q[π](s, a)`代替瞬时奖励`r`。 这称为**策略梯度定理**。 该定理对前面讨论的其他类型的策略目标函数有效。 因此,对于任何这样的策略目标函数和任何可区分的`π[θ](s, a)`,策略梯度如下:
![](img/22aa628a-e90d-49c5-ae2d-c8f5e168393c.png)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册