Page 403 - 《软件学报》2025年第12期
P. 403
5784 软件学报 2025 年第 36 卷第 12 期
t A 包括相邻网格之
t
在这里, 将每个网格映射为环境状态, 对于网格, 我们用 G 来表示时刻 的状态; 动作空间
i
间移动的 8 个方向, 即 A = {北,南,东,西,东北,东南,西北,西南}. Agent 通过不断地学习来获取知识, 得到环境给予
的反馈并改进决策, 以适应不断变化的动态环境. 如图 3 所示, 在 t −1 时刻 Agent 采取动作以后, 环境向 Agent 反
G 和奖励 , 因此 时刻 G , 接着 t+1 和奖
t
t
R
t
t
馈状态 Agent 所处的状态为 Agent 根据策略选择动作 A t , 环境将状态 G
i i j
t
t
励 R t+1 返回给 Agent, Agent 所处的状态由 G 变成 G t+1 . R t+1 是 Agent 在执行动作 A t 后从当前网格 G 过渡到下一
i
j
i
网格 G t+1 所获得的奖励, 如公式 (3) 所示, 如果数据包被成功转发到目的网格 D, 则奖励为 φ, 否则, 奖励为 0.
j
{
φ, if reach D y
t+1
R t →G t+1 = (3)
G i 0, others
j
Agent
t t
G i R A t
R t +1
Environment
t+1
Gj
图 3 强化学习原理图
在数据采集的过程中每个数据信息的源头不同, 其相应的目的地也不尽相同. 我们设源车辆所处网格作为当
前网格, 目的地 RSU 所处网格作为目标网格, 将问题转化为在当前网格和目标网格之间寻求一条最优的网格路
.
径. 因此, 我们将原来基于特定目标的二维 Q-table 改为基于任意目标的三维 Q-table Q-table 内存储的 Q 值为
( t t ) t t
Q G ,D y ,a , 其表示目标网格为 D y 的情况下, t 时刻在当前网格 G 处采取动作 a 所期望得到的奖励; Agent 每执
x z x z
( t t ) ( t t )
行一步策略就更新一次 Q G ,D y ,a z 值, 改进后的 Q G ,D y ,a z 值更新方法如下所示:
x
x
t t t t t t t+1 t+1
Q(G ,D y ,a ) ← (1−α)× Q(G ,D y ,a )+α×{R(G ,D y ,a )+maxQ(G ,D y ,a )×γ t } (4)
l
x
z
x
z
z
x
t
t
t+1
t
其中, R(G ,D y ,a ) 表示在当前网格 G 处采取动作 a 所获得的奖励; Q(G ,D y ,a ) 表示 t +1 时刻在状态 G t+1 处采
t+1
t
x z x z l l
取动作 a t+1 所期望得到的奖励; α 是学习率, 它决定了新信息覆盖旧信息的程度; 折扣因子 γ t 用于确定未来奖励的
规模.
考虑到路径长度及其车辆密度对 VANET 数据包转发效率的影响, 我们将折扣因子 γ t 设计成与车辆密度和网
格之间距离相关的动态参数:
( ) ( )
t
t
γ t = δ×ρ t G → G t+1 +(1−δ)×d t G → G t+1 (5)
i j i j
t+1
( ) s max − VG
j
t
ρ t G → G t+1 = 1− (6)
j
i
s max − s min
t+1
( ) dist G t+1 →D y
t
d t G → G t+1 = max0,1− t j (7)
i
j
dist
G t →D y
i
√
t 2 2
dist t →D y = (x(i)− x(D y )) +(y(i)−y(D y )) (8)
G i
t
其中, ρ t (G → G ) 用来衡量网格的密度; d t (G → G ) 则用来表示距离变化; s max = max(|VG |), i ∈ {1,...,N} 为 时
t
t
t+1
t+1
t
i j i j i
t
刻所有网格中最大车辆数, N 为划分的网格总数; s min = min(|VG |),i ∈ {1,...,N} 为 时刻网格中最小车辆数; t
t
i
dist t →D y
G i
t t+1 t+1
i
为当前所在网格 G 与目标网格 D y 的距离; dist 是下一网格 G 与 D y 之间的距离; x(i) 表示网格 的横坐标,
i j
G t+1 →D y
j
t+1
t
y(i) 表示网格 i 的纵坐标; δ 为权重因子, 0 < δ < 1. 如果下一网格比当前网格到目标网格的距离更近, 则 d t (G → G )
i
j
更接近 1. 从公式 (6) 可看出, 当下一网格 G t+1 的车辆密度更接近最大车辆密度, 且更接近目标网格时, 折现因子
j γ t
越大.
基于 Q-learning 的离线学习路径选择策略的具体过程如算法 1 所示. 其中, 步骤 3 对于可到达目标网格的网
格将相应的奖励设置为 φ; 步骤 4–14 对 Q-table 进行迭代更新, 其中步骤 7–11 以 ε 的概率选择一个随机动作, 以

