Finite Markov Decision Processes(MDPs)
MDPs are a classical formalization of sequential decision making,
where actions influence not just immediate rewards, but also subsequent situations, or
states, and through those future rewards.
参考:Sutton R , Barto A . Reinforcement Learning:An Introduction[M]. MIT Press, 1998.
强化学习的任务
马尔科夫特性:与决策过程无关,只与状态有关
the probability of each possible value for St and Rt
depends only on the immediately preceding state and action, St−1 and At−1, and, given
them, not at all on earlier states and actions.
agent(include strategy和model)
环境提供state给agent,agent选择action 作用于环境,环境reward给agent…
通过不断改变action 最大化award
成分:
- 环境,黑盒 只看得到输入输出,包含除agent以外的everything(agent无法任意改变的)
- 学习的agent,= learner and decision maker is called the agent
- state,agent关于环境的observation 选择的basis
- reward,single number(随时间改变) goal
- strategy, state->action mapping
- action, 展示选择,影响环境
最大的问题是 长期过程中的most reward
假设(S,A,R)
时间离散(t=1,2,3,…)
状态空间离散且有限(可以很大但有限)
state是完全observable
state满足马尔科夫特性(知道past也no gain),那么问题来了,怎么让state有这种特性?
reward也是single number 在每个时间
公式化
时间:t =1,2,3…
状态:
s
t
∈
S
s_{t} \in S
st∈S
action:
a
t
∈
A
a_{t} \in A
at∈A
reward:
r
t
∈
R
r_{t} \in R
rt∈R
stategy(policy):
- deterministic π : S − > A \pi :S->A π:S−>A(order a single state to action)
- stochastic(trial or error):
π ( s , a ) = ( π ( a ∣ s ) ) \pi(s,a)=(\pi(a|s)) π(s,a)=(π(a∣s))条件概率 given s,选择action a 的概率, π : S × A − > [ 0 , 1 ] \pi : S \times A ->[0,1] π:S×A−>[0,1]
交互
s1->a1->s2->…->st->at
- 通过环境的dynamics建模,transition probabilities: P r ( s t + 1 ∣ s 1 , a 1 , . . . . , s t , a t ) P_{r}(s_{t+1}|s_{1},a_{1},....,s_{t},a_{t}) Pr(st+1∣s1,a1,....,st,at)
- rewards: R ( s 1 , a 1 , . . . . . , s t , a t ) R(s_{1},a_{1},.....,s_{t},a_{t}) R(s1,a1,.....,st,at) 在time t的reward(depend on the whole history)
- goal:最大化expected long-term reward: E π ( r 1 + r 2 + . . . . ) E_{\pi}(r_{1}+r_{2}+....) Eπ(r1+r2+....) 取决于a,s,tran prob.
马尔科夫-assumption
不计算past
- 动态环境由transition probability 矩阵给出: P r ( s t + 1 ∣ s 1 , a 1 , . . . . , s t , a t ) = P r ( S t + 1 ∣ s t , a t ) P_{r}(s_{t+1}|s_{1},a_{1},....,s_{t},a_{t})=P_{r}(S_{t+1}|s_{t},a_{t}) Pr(st+1∣s1,a1,....,st,at)=Pr(St+1∣st,at)
- 即时reward:
R
(
s
1
,
a
1
,
.
.
.
.
.
,
s
t
,
a
t
)
=
R
(
s
t
,
a
t
)
R(s_{1},a_{1},.....,s_{t},a_{t})=R(s_{t},a_{t})
R(s1,a1,.....,st,at)=R(st,at)
即, P ( s , a , s ′ ) = P r ( s ′ ∣ s , a ) P(s,a,s')=P_{r}(s'|s,a) P(s,a,s′)=Pr(s′∣s,a), 任意s,s’,a
两种task
1 epizodic(fixed time)
2 non epizodic(non-fixed time)
目标是optimize expression E π ( r 1 + r 2 + . . . . ) E_{\pi}(r_{1}+r_{2}+....) Eπ(r1+r2+....) ,在stochastic环境中agent学习得到stochastic action选择,在计算平均。
是连续任务,问题是
∑
t
=
0
∞
r
t
\sum_{t=0}^{\infty}r_{t}
∑t=0∞rt可能会无穷,发散,所以引入discouting factor
λ
\lambda
λ,即,
∑
t
=
0
∞
λ
t
r
t
\sum_{t=0}^{\infty}\lambda ^{t}r_{t}
∑t=0∞λtrt.
λ
<
1
\lambda<1
λ<1的情况下是有限的
这个discounting方法很有用,也可以用在固定时间的任务上。
RL model(MDPS)
马尔科夫决策过程也可以用一个元组(S,A,P,R,s0,γ)来表示。
- S是决策过程中的状态集合;
- A是决策过程中的动作集合;
- P( S × A × S S \times A \times S S×A×S)是状态之间的转移概率transition prob.,[0,1];
- s0是初始状态
- R( S × A S\times A S×A)是采取某一动作到达下一状态后的回报(也可看作奖励)值,属于实数范围;
- γ是折扣因子。
cr:https://blog.csdn.net/unixtch/article/details/78922936
解 MDPs
- 环境根据 P 和 R 来make a step: s t + 1 ∼ P ( s t , a t ) ; r t + 1 ∼ R ( s t , a t ) s_{t+1}\sim P(s_{t},a_{t});r_{t+1} \sim R(s_{t},a_{t}) st+1∼P(st,at);rt+1∼R(st,at)
- 代理根据 π \pi π(strategy)来make a step: a t ∼ π ( s t , . ) a_{t}\sim \pi(s_{t},.) at∼π(st,.)
- π \pi π(strategy)最优,当 E π ( r 1 + λ r 2 + λ 2 r 3 . . . . ) E_{\pi}(r_{1}+\lambda r_{2}+\lambda^{2}r_{3}....) Eπ(r1+λr2+λ2r3....) 最大
状态-value 方程(指定状态下的累计reward计算)
state s的值:累计reward期望(从s开始,在时间t)取决于从开始状态开始可以获得多少reward
π
(
s
,
a
)
为
选
择
a
的
条
件
概
率
\pi(s,a)为选择a的条件概率
π(s,a)为选择a的条件概率,用他乘
R
(
s
,
a
)
R(s,a)
R(s,a)为看能不能被选择,被选择reward才作数
状态-action value 方程指定状态和动作下的累计reward计算
二者的联系
π \pi π的比较
π
1
>
=
π
2
\pi1>=\pi 2
π1>=π2当
V
π
1
(
s
)
>
=
V
π
2
(
s
)
V^{\pi1}(s)>=V^{\pi2}(s)
Vπ1(s)>=Vπ2(s)状态值方程,只能部分排序
π
∗
\pi^{*}
π∗最优 当
π
∗
>
=
π
\pi^{*}>=\pi
π∗>=π对于所有的stategy,存在吗?存在