价值迭代求解MDP

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 22

价值迭代法求解 MDP

The Value Iteration of solving Markov Decision Process

QQ : 1071955807
2021 年 8 月 15 日
目录 1 价值迭代算法

CONTENTS 2 公主的营救

3 车辆的盈利
第一部分 Value Iteration 价值迭代算法

前情回顾
算法流程
前情回顾

策略( Policy )
是给定状态的动作分布 𝝅 ( 𝒂| 𝒔 ) =𝑷 [ 𝑨 𝒕 =𝒂∨𝑺𝒕 =𝒔 ]
随机变量

• 策略完全决定智能体行为

• MDP 策略依赖于当前状态 ( 无关历史 )

• 策略是固定的 ( 无关时间 ) 𝑨 𝒕 𝝅 ( ·|𝑺𝒕 ) , 任意 𝒕 > 𝟎

强化学习的目标是给定一个马尔可夫决策过程,寻找最优策略
1
前情回顾

最优策略( Optimal Policy )


策略
🤴 🤴

最优策略
👸
🤴

• 每走一步,减少 1 体力,记为 - 最优状态价值


1
• 找到公主,游戏结束 2
前情回顾

状态价值函数的贝尔曼最优方程 𝒒 (𝒔 , 𝒂)
𝒗 ∗ ( 𝒔 )=𝒎𝒂𝒙 [ 𝑹 +𝜸
𝒂
𝒂
𝒔 ∑𝑷

𝒂
𝒔𝒔
′ 𝒗∗ ( 𝒔 ) ]

𝒔 ∈𝑺

动作价值函数的贝尔曼最优方程 •价值迭代 (Value

𝒒 ∗ ( 𝒔 ,𝒂) =𝑹 +𝜸 ∑ 𝑷 𝒎𝒂𝒙 𝒒∗ ( 𝒔′ , 𝒂′Iteration)


𝒂 𝒂
𝒔 𝒔𝒔′ )
•策略迭代 (Policy Iteration)

𝒔 ∈𝑺 𝒂′
•Q-Learning
•Sarsa 3
算法流程

价值迭代算法( Value Iteration )

 对于每个状态,初始化 =0
 重复循环取
 价值函数收敛时,输出最优策略

4
第二部分 🤴→👸 公主的营救

问题情景
求解过程
问题情景

公主的营救( Rescue the princess )

🤴
:王子所在的位置
:向上 / 下 / 左 / 右走一格
:体力损耗
👸

• 每走一步,减少 1 体力,记为 -1
• 找到公主,游戏结束
5
• 最小体力损耗找到公主
求解过程

 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′

𝒔 ∈𝑺
 至价值函数收敛,输出最优策略

🤴
0
-1
-1
0 -1
0 𝒎𝒂𝒙🤴 {−𝟏
-2 +𝟎 -2 } −𝟏
-2, −𝟏+𝟎
-1
0
-1 0
-1 0
-1 -2 -1 -2
👸 👸
0
-1 0 0
-1 -1 0 -1
6
求解过程

 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′

𝒔 ∈𝑺
 至价值函数收敛,输出最优策略

🤴 🤴
-2 -2 -2 -3 -2 -3

-2 -1 -2 -2 -1 -2
👸 👸
-1 0 -1 -1 0 -1
7
求解过程

 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′

𝒔 ∈𝑺
 至价值函数收敛,输出最优策略

🤴 🤴
-3 -2 -3 -3 -2 -3

-2 -1 -2 -2 -1 -2
👸 👸
-1 0 -1 -1 0 -1
8
第三部分 🚕→💴 车辆的盈利

问题情景
求解过程
问题情景

车辆的盈利( More revenue )


• 车辆位于的结点为状态 State
• 所选择的道路为动作 Action
+5 -5
𝑺𝟏 40% 𝑺𝟐 60% 𝑺𝟑 • 每经过一段道路,收益已知 Reward
• 在每个状态,策略已知 Policy
60% 40% 100%
+12 0 +10 • 折减系数 =0.5 Discount factor
• 到达,行驶结束
𝑺𝟒 100% 𝑺𝟓 100% 𝑺𝟔 • 求每一结点的状态价值
+5 0
• 求每一结点的最优状态价值
• 从哪里出发,如何行驶收益最大? 9
求解过程

求每一状态的状态价值

𝑽 𝝅 ( 𝒔 ) = ∑ 𝝅 (𝒂∨𝒔)𝒒 𝝅𝒂 ( 𝒔 , 𝒂 ′)
𝑽 𝝅 ( 𝒔) = ∑
𝒂∈ 𝑨
𝝅 ( 𝒂|𝒔 ) [ 𝑹 𝒔 +𝜸 ∑ 𝑷 𝒔 𝒔 𝑽 𝝅 ( 𝒔 ) ]
𝒂

𝒒 𝝅 𝒔 , 𝒂 = 𝑹 𝒔 +𝜸 ∑ 𝑷 𝒔 𝒔′ 𝑽 𝝅 ( 𝒔 ′ )
𝒂 𝒔 ∈𝑺 𝒂
( )

𝒂∈ 𝑨

𝒔 ∈𝑺
=0.5
𝑽 𝝅 ( 𝑺𝟔 ) =100 % ( 0 +0.5 𝑉 𝜋 ( 𝑆5 )
9.475 1.375 11.25 最优状态价值
𝑽 𝑺 =100 %
𝝅 ( 𝟓 ) (5+ 0.5 𝑉 𝜋 ( 𝑆4 )
0 % 10+50.5 𝑉 2.5
𝑽 𝝅 ( 𝑺𝟑 ) =100 ( 𝜋 ( 𝑆6 ) ) 𝑽 𝝅 ( 𝑺 𝟒 )= 0 10
求解过程

求每一状态最优状态价值
0 0 0
0 0 0
第一次价值迭代

12 0 10
=0.5
0 5 0
 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′

𝒔 ∈𝑺 11
 至价值函数收敛,输出最优策略
求解过程

求每一状态最优状态价值
12 0 10
0 5 0
第二次价值迭代

12 2.5 10
=0.5
0 5 2.5
 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′

𝒔 ∈𝑺 12
 至价值函数收敛,输出最优策略
求解过程

求每一状态最优状态价值
12 2.5 10
0 5 2.5
第三次价值迭代

12 2.5 11.25
=0.5
0 5 2.5
 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′

𝒔 ∈𝑺 13
 至价值函数收敛,输出最优策略
求解过程

求每一状态最优状态价值
12 2.5 11.25
0 5 2.5
第四次价值迭代

12 2.5 11.25
=0.5
0 5 2.5
 对于每个状态,初始化
 重复循环取 ( ) 𝒂
𝑽 ∗ 𝒔 =𝒎𝒂𝒙 [ 𝑹 𝒔 +𝜸
𝒂
∑′
𝑷 𝑽 ∗ 𝒔 )]
𝒂
𝒔𝒔
′( ′
停止迭代
𝒔 ∈𝑺 14
 至价值函数收敛,输出最优策略
小结

序贯决策问题

马尔可夫决策过程 MDP(S,A,P,R,)
(S,A,P,R,) (S,A,P? R? )
基于模型的动态规划方法 无模型的强化学习方法

策略迭代 价值迭代 策略搜索

15
小结

初始化价值函数,
策略迭代
策略评估

计算各状态的动作价值收益

值迭代算法 计算策略下各状
态的
𝑽 ( 𝒔 ) =𝒎𝒂𝒙𝒒(𝒔 , 𝒂)
策略改善 状态价值 否

𝑽 ( 𝒔 )收敛 ?
𝑽 ( 𝒔 ) =𝒎𝒂𝒙 𝒒(𝒔 , 𝒂)


输出, 𝝅 收敛 ? 16
欢迎批评指正
THANKS

You might also like