ICLR 2024
paper
Intro
以往O2O方式普遍将离线与在线过程分开看待,为了避免过渡时容易出现performance drop,引入了各式正则化或者保守价值估计。本文启发于BPPO,提出on-policy的算法Uni-O4将离线与在线阶段的策略优化目标统一,实现了无需额外的正则,算法在纯离线、O2O以及online-offline-online均表现出很好的实验效果。
Method
在解决O2O时的Uni-O4包含三个部分。离线监督学习、多步策略提升以及在线策略微调

Ensemble BC and IQL
通过BC训练一个策略集合
∏
n
=
{
π
^
β
1
,
…
,
π
^
β
n
}
\prod_{n}=\{\hat{\pi}_{\beta}^{1},\ldots,\hat{\pi}_{\beta}^{n}\}
∏n={π^β1,…,π^βn}, 同时保证集合中策略的多样性添加正则化

结合上面定理将问题转化为优化其下界:
Maximize:
J
(
π
^
β
i
)
=
E
(
s
,
a
)
∼
D
l
o
g
π
^
β
i
(
a
∣
s
)
+
α
E
(
s
,
a
)
∼
D
log
(
π
^
β
i
(
a
∣
s
)
m
a
x
1
⩽
j
⩽
n
π
^
β
j
(
a
∣
s
)
)
\text{Maximize:}J(\hat{\pi}_{\beta}^{i})=\mathbb{E}_{(s,a)\sim\mathcal{D}}\mathrm{log}\hat{\pi}_{\beta}^{i}(a|s)+\alpha\mathbb{E}_{(s,a)\sim\mathcal{D}}\log\left(\frac{\hat{\pi}_{\beta}^{i}(a|s)}{\mathrm{max}_{1\leqslant j\leqslant n}\hat{\pi}_{\beta}^{j}(a|s)}\right)
Maximize:J(π^βi)=E(s,a)∼Dlogπ^βi(a∣s)+αE(s,a)∼Dlog(max1⩽j⩽nπ^βj(a∣s)π^βi(a∣s))
对于价值函数
Q
^
\hat{Q}
Q^与
V
^
\hat{V}
V^采用IQL的方法:
L
(
V
)
=
E
(
s
,
a
)
∼
D
⌊
L
2
τ
(
Q
^
(
s
,
a
)
−
V
(
s
)
)
⌋
,
L
(
Q
)
=
E
(
s
,
a
,
s
′
)
∼
D
[
(
r
(
s
,
a
)
+
γ
V
(
s
′
)
−
Q
(
s
,
a
)
)
2
]
,
L(V)=\mathbb{E}_{(s,a)\sim\mathcal{D}}\left\lfloor L_{2}^{\tau}\left(\hat{Q}(s,a)-V(s)\right)\right\rfloor,\\L(Q)=\mathbb{E}_{(s,a,s^{\prime})\sim\mathcal{D}}[\left(r(s,a)+\gamma V(s^{\prime})-Q(s,a)\right)^{2}],
L(V)=E(s,a)∼D⌊L2τ(Q^(s,a)−V(s))⌋,L(Q)=E(s,a,s′)∼D[(r(s,a)+γV(s′)−Q(s,a))2],
多步策略优化
利用IQL得到的价值函数并固定参数, 对于集合中的每一个策略采用类似BPPO的优化目标:
J
k
(
π
i
)
=
E
s
∼
ρ
D
(
⋅
)
,
a
∼
π
k
i
(
⋅
∣
s
)
[
min
(
r
(
π
i
)
A
π
k
i
(
s
,
a
)
,
clip
(
r
(
π
i
)
,
1
−
ϵ
,
1
+
ϵ
)
A
π
k
i
(
s
,
a
)
)
]
J_k\left(\pi^i\right)=\mathbb{E}_{s\sim\rho_{\mathcal{D}}(\cdot),a\sim\pi_k^i(\cdot|s)}\left[\min\left(r(\pi^i)A_{\pi_k^i}(s,a),\text{clip}\left(r(\pi^i),1-\epsilon,1+\epsilon\right)A_{\pi_k^i}(s,a)\right)\right]
Jk(πi)=Es∼ρD(⋅),a∼πki(⋅∣s)[min(r(πi)Aπki(s,a),clip(r(πi),1−ϵ,1+ϵ)Aπki(s,a))]
其中
r
(
π
i
)
=
π
i
(
a
∣
s
)
π
k
i
(
a
∣
s
)
r(\pi^{i})=\frac{\pi^{i}(a|s)}{\pi_{k}^{i}(a|s)}
r(πi)=πki(a∣s)πi(a∣s),k表示迭代次数。若k=0表示单步优化,容易导致次优策略产生。为了保证多步优化的安全性,算法首先利用离线数据构造动态转移模型,
min
T
^
E
(
s
,
a
,
s
)
∼
D
[
−
l
o
g
T
^
(
s
′
∣
s
,
a
)
]
.
\min_{\hat{T}}\mathbb{E}_{(s,a,s)\sim\mathcal{D}}[-\mathrm{log}\hat{T}(s'|s,a)].
T^minE(s,a,s)∼D[−logT^(s′∣s,a)].
然后按照一定频率基于该模型进行H-steps的rollout得到轨迹数据,并利用BC中fixed Q与V计算轨迹累计Q期望
J
τ
^
(
π
)
=
E
(
s
,
a
)
∼
(
T
^
,
π
)
[
∑
t
=
0
H
−
1
Q
τ
^
(
s
t
,
a
t
)
]
\widehat{J_{\tau}}(\pi)=\mathbb{E}_{(s,a)\sim(\hat{T},\pi)}\left[\sum_{t=0}^{H-1}\widehat{Q_{\tau}}(s_{t},a_{t})\right]
Jτ
(π)=E(s,a)∼(T^,π)[t=0∑H−1Qτ
(st,at)]
当
J
^
τ
(
π
i
)
>
J
^
τ
(
π
k
i
)
\widehat J_{\tau}(\pi^{i})>\widehat J_{\tau}(\pi_{k}^{i})
J
τ(πi)>J
τ(πki),则更新
π
k
i
←
π
i
\pi_k^i\leftarrow\pi^i
πki←πi。
Online Fine tuning
离线阶段得到的价值函数以及策略将作为初始化给到在线阶段,采用PPO方法优化。整个离线和离线到在线训练中没有额外的保守正则化或重放缓冲区平衡策略。得益于on-policy算法使得算法非常简单和高效。
伪代码



被折叠的 条评论
为什么被折叠?



