RL Algorithm Components - 强化学习算法组件
RL Algorithm Components
通常包括一个或者更多:
- Model(模型): world对agent的动作如何改变的一种表示(representation)
- Policy(策略): 映射agent的state到动作的函数
- Value function(价值函数): 遵循一个policy处于一个状态/执行一个动作之后的未来奖励
Model
模型是Agent的world如何对其动作产生回应的表示(what happens in the world as it takes its action and what reward it might get)。
Transition/dynamics(变迁/动态)模型预测下一个agent的state
p
(
s
t
+
1
=
s
′
∣
s
t
=
s
,
a
t
=
1
)
p(s_{t+1}=s'|s_t=s,a_t=1)
p(st+1=s′∣st=s,at=1)
Reward模型预测即时奖励:
r
(
s
t
=
s
,
a
t
=
a
)
=
E
[
r
t
∣
s
t
=
s
,
a
t
=
t
]
r(s_t=s,a_t=a)=\mathbb{E}[r_t|s_t=s,a_t=t]
r(st=s,at=a)=E[rt∣st=s,at=t]
Policy
策略
π
\pi
π决定agent如何选择动作
π
:
S
→
A
\pi: S \rightarrow A
π:S→A,映射states到actions
确定性策略(Deterministic policy):
π
(
s
)
=
a
\pi(s)=a
π(s)=a
随机性策略(Stochastic policy):
π
(
a
∣
s
)
=
P
r
(
a
t
=
a
∣
s
t
=
s
)
\pi(a|s)=Pr(a_t=a|s_t=s)
π(a∣s)=Pr(at=a∣st=s)
Value
价值函数
V
π
V^{\pi}
Vπ: 在一个特定策略
π
\pi
π下所有未来的打折奖励总和的期望。
V
π
(
s
t
=
s
)
=
E
π
[
r
t
+
γ
r
t
+
1
+
γ
2
r
t
+
2
+
γ
3
r
t
+
3
+
.
.
.
+
∣
s
t
=
s
]
V^{\pi}(s_t=s)=\mathbb{E}_{\pi}[r_t+\gamma r_{t+1}+\gamma^2r_{t+2}+\gamma^3r_{t+3}+...+|s_t=s]
Vπ(st=s)=Eπ[rt+γrt+1+γ2rt+2+γ3rt+3+...+∣st=s]
折扣因子(Discount factor) γ \gamma γ(between 0 and 1)加权了即时奖励和未来奖励(weighted by how much I care about immediate versus long term rewards)。
可以被用于量化状态和动作的好坏程度。
通过比较不同的策略决定如何行动。
RL Agents
基于模型的(Model-based)
- 显式:模型
- 可能有也可能没有策略和/或价值函数
不基于模型的(Model-free)
-显式:价值函数和/或策略函数
-没有模型
Key Challenges in Learning to Male Sequences of Good decisions
下面是在对比规划和强化学习:
规划(planning)(Agent的内部计算)
- 给定模型world怎样运作
- 动态和奖励模型
- 算法计算如何行动以取得最大奖励期望
- 和实际环境没有交互
Reinforcement Learning
- Agent不知道world怎样运作
- 显式或者隐式地和world交互以学习world如何运作
- Agent会改进策略(可能包含规划过程)