基于深度强化学习的客机自组网络分组路由
摘要
由于空中自组织网络(AANETs)具有高度动态的拓扑结构,其数据包路由面临巨大挑战。本文引入深度强化学习(RL)用于AANETs中的路由,旨在最小化端到端延迟(E2E delay)。具体而言,设计了一种深度Q网络(DQN),用于捕捉最优路由决策与转发节点所观测到的局部地理信息之间的关系。该DQN基于历史飞行数据以离线方式训练,并由每架飞机存储,以辅助其在飞行过程中的路由决策。为了提升所提出的DQN路由的学习效率和在线适应性,我们进一步利用系统动态知识,设计了一个带有反馈机制的深度值网络(DVN)。仿真结果表明,DQN路由和DVN路由均比基准协议实现更低的端到端延迟,且DVN路由的性能接近依赖完美全局信息的最优路由。
索引术语
AANET,路由,深度强化学习
一、引言
下一代无线系统有望支持随时随地的全球通信[1]。当前由地球静止卫星或直接空地(A2G)通信支持的飞行中互联网接入通常存在高延迟或覆盖范围有限的问题。空中自组织网络(AANETs)有望通过利用客机作为中继,借助多跳空对空(A2A)通信链路构建自配置无线网络,从而扩展A2G网络的覆盖范围[2]。
由于飞机的高速运动以及自组织网络的分布式特性,AANETs面临的一个基本挑战是在任意时刻设计一种高效路由协议,以构建适当的数据传输路径。传统的基于拓扑的自组织路由协议[3]通常要求每个节点本地存储一个指定下一跳的路由表。然而,在通信会话期间,每当网络拓扑发生变化时,路由表都必须刷新,从而在AANETs中引入了巨大的信令开销和延迟。尽管已有研究致力于提升AANETs中路由的稳定性[4, 5],但它们在高动态场景下快速更新路由表以实现及时适应方面能力有限。
相比之下,另一类自组织网络路由协议即基于位置(或地理)的路由[6],仅需单跳邻居和目的节点的位置信息即可确定下一跳。由于无需维护路由表,地理路由在拓扑变化时几乎可以立即找到新的路由。由于所需的位置信息可通过飞机上搭载的自动相关监视广播系统轻松获取,因此地理路由在空中自组织网络中更具吸引力。贪婪周边无状态路由(GPSR)[7]是最流行的地理路由协议之一,也在AANETs中启发了多种扩展[8, 9]。贪婪路由的核心思想是将数据包转发给地理位置上最接近目的节点的特定邻居。在[8]中,通过考虑下一跳的队列状态改进了贪婪路由以避免拥塞。在[9]中,进一步考虑了移动性信息以选择更稳定的下一跳。然而,当不存在比转发节点更靠近目的节点的邻居时,贪婪路由的性能会下降(这种情况称为通信空洞)。
具体而言,基于贪婪策略的路由的局限性源于节点无法获知整个网络拓扑结构。因此,我们的目标是使转发节点能够从其局部观测中推断出全局拓扑结构,从而更高效地绕过通信空洞。尽管AANETs的拓扑结构动态变化,但由于飞行路径和起飞时间是预先规划的,并且在不同周的同一天往往非常相似,因此表现出一定的规律性。这表明局部地理信息可能与整体拓扑结构存在强相关性,而这种相关性可以从历史飞行数据中学习得到。在此背景下,近年来深度强化学习(DRL)[10]的发展已展现出深度神经网络(DNN)在从观测信息直接映射到所需动作方面的强大能力。
在此背景下,我们引入深度强化学习(DRL)用于空中自组织网络(AANETs)中的路由,以最小化端到端延迟(E2E delay)。我们的主要贡献可总结如下:
1) 我们提出了一种基于深度强化学习(DRL)的路由算法,使用深度Q网络(DQN)[10],将局部地理信息直接映射到最优路由决策。与基于表格型强化学习(RL)的路由算法(如Q路由[11]及其变体[12])不同,后者在拓扑变化时需要频繁交换信息以在线更新Q表,而我们提出的DQN可以基于历史飞行数据离线训练,从而“嵌入”全局网络拓扑。在飞行过程中,转发节点只需将其局部观测输入DQN即可推断出决定下一跳所需的信息,无需任何在线更新。
2) 为了提高学习效率,我们进一步设计了另一种基于深度价值网络(DVN)的路由算法,利用有关系统动态的知识。此外,我们引入了反馈机制,使转发节点能够提前规划一步,以增强在线适应性。
3) 我们的仿真结果表明,DQN路由和DVN路由均比GPSR实现了更低的端到端延迟。此外,DVN路由与依赖完美全局信息的最优路由之间的性能差距很小。
II. 系统模型
考虑一个由客机组成的AANET。当两个节点处于无线视距以上时,可以建立直接通信链路。从节点 i到节点 j的直连链路的延迟可以表示为
$$ D_{\text{link}}(i, j) = \frac{d(i, j)}{c} + \frac{S}{R(i, j)} $$
其中,第一项和第二项分别为传播延迟和传输时延,$d(i, j)$表示节点 i和 j之间的距离,$c$为光速,$S$为分组大小,$R(i, j)$表示链路 $i \to j$的数据速率。我们考虑采用解码‐转发中继协议,并令$D_{\text{que}}(i)$表示节点 i处的排队延迟。
我们的目标是找到最优路径 $P=(i_1, \cdots, i_T)$,以最小化源节点 $i_s$ 与目的节点 $i_d$ 之间的端到-end分组延迟,该问题可表述为
$$
\min_P \sum_{t=1}^{T-1} [D_{\text{que}}(i_t) + D_{\text{link}}(i_t, i_{t+1})] \quad \text{(2a)}
$$
$$
\text{s.t. } I(i_t, i_{t+1}) = 1, \forall t = 1, \cdots, T - 1, \quad \text{(2b)}
$$
其中,$I(i_t, i_{t+1}) = 1$当节点 $i_t$ 和 $i_{t+1}$ 位于无线视距以上时成立,否则为0,$i_1 = i_s$ 和 $i_T = i_d$。
问题(2)可以通过经典的最短路径搜索算法来解决,但这需要关于每个节点的排队延迟以及每两个节点之间链路延迟的全局信息。然而,由于飞机的高速运动,节点位置会快速变化。因此,为保持实现该算法所需信息的实时性,可能会带来巨大的信令开销。
接下来,我们假设每个节点仅知晓自身位置、其直接通信范围内的节点(即邻居)的位置以及目的节点,并以分布式方式调用深度强化学习来寻找最优路径。
III. 深度强化学习在地理路由中的应用
在本节中,我们首先通过设计强化学习的关键要素,将路由问题(2)重新构建为强化学习框架,并提出了基于深度强化学习的路由策略。
A. 强化学习框架
在强化学习问题中,智能体通过与环境的交互来学习以实现预期目标[13]。在每个时间步长 $t$,智能体观察到环境的状态 $s_t$,并在此基础上执行一个动作 $a_t$。随后,智能体接收到从环境获得一个奖励 $r_{t+1}$ 并转移到新状态 $s_{t+1}$。智能体的目标是学习从 $s_t$ 到 $a_t$ 的映射(即策略 $\pi$),以最小化在包含 $T$ 个时间步长的回合中智能体所获得的累积奖励的期望回报 $E[\sum_{t=1}^{T-1} \gamma^{t-1} r_{t+1}]$。
在路由问题(2)中,我们规定当一个节点接收到数据包时开始一个时间步长,当该数据包被传输到下一个节点时该时间步长结束。整个回合从源节点生成数据包开始,到目的节点成功接收数据包,或在 $t_{\text{max}}$ 跳内未能到达目的节点时结束。与现有的为每个单独节点训练独立智能体的基于强化学习的路由算法不同,我们框架中的智能体随着数据包的传递而移动,所有节点共享该智能体的参数,从而提高了学习效率和可扩展性。
令 $i_t$ 表示数据包在时间步 $t$ 开始时所在的节点,并令 $x(i) = (\text{经度} i[E^\circ], \text{纬度}_i[N^\circ], \text{高度}_i[\text{km}])$ 表示节点 $i$ 的位置。那么,数据包当前位置和目的节点位置可分别表示为 $x(i_t)$ 和 $x(i_d)$。令 $N {i_t} = {j | I(i_t, j) = 1}$ 表示节点 $i_t$ 的邻居。为了限制动作探索的维度,邻居按其到目的节点的距离升序排列,下一跳仅从排名前 $K$ 的邻居中选择。这些邻居被称为候选者,记为 $C_{i_t} = {i^1_t, \cdots, i^K_t}$,其中 $i^k_t$ 表示节点 $i_t$ 的第 $k$ 个排名的邻居(候选者)。
动作 :在时间步长 $t$,转发节点 $i_t$ 应确定选择哪个候选节点作为下一跳。因此,动作 $a_t$ 可以用待选节点的排序来表示。然后,下一跳是节点 $i^{a_t}_t$。
状态
:由于我们的目标是学习一种仅依赖于局部地理信息的路由策略,因此状态的设计包含了源和目的节点的位置,以及候选者的位置,即
$$
s_t = [x(i_t), x(i^1_t), \cdots, x(i^K_t), x(i_d)], s(i_t),
$$
其中我们引入符号 $s(i_t)$ 以强调 $s_t$ 是节点 $i_t$ 观测到的局部地理信息,在下文中我们将交替使用 $s_t$ 和 $s(i_t)$。
奖励
:奖励函数可以自然地设计为在时间步长 $t$ 内经历的延迟,
$$
r_{t+1} = D_{\text{que}}(i_t) + D_{\text{link}}(i_t, i_{t+1}). \quad \text{(4)}
$$
因此,最小化回报等同于最小化平均端到端延迟。
动作值函数
定义为
$$
Q^\pi(s_t, a_t) = E\left[\sum_{l=t}^{T-1} \gamma^{l-t} r_{l+1} \mid s_t, a_t, \pi\right]. \quad \text{(5)}
$$
对于所考虑的路由问题,我们设定 $\gamma = 1$,因此 $Q^\pi(s_t, a_t)$ 表示选择节点 $i^{a_t}_t$ 作为下一跳,并根据策略 $\pi$ 继续转发数据包时,转发节点到目的节点之间的延迟。然后,最优动作值函数定义为 $Q^
(s_t, a) = \min_\pi Q^\pi(s_t, a_t)$,由此可得最优策略
$$
\pi^
(s_t) = \arg\min_a Q^
(s_t, a).
$$
从这个意义上说,$Q^
(\cdot)$ 包含了确定最优下一跳所需的全部信息,换句话说,它嵌入了全局网络拓扑。因此,智能体的目标可以通过学习 $Q^*(\cdot)$ 来实现。
$Q^
(\cdot)$ 的贝尔曼方程可以表示为
$$
Q^
(s_t, a_t) = E[r_{t+1} + \min_a Q^
(s_{t+1}, a) \mid s_t, a_t, \pi^
], \quad \text{(6)}
$$
基于此,已开发出多种强化学习算法(如Q‐学习[13])来学习最优动作价值函数。然而,由于状态 $s_t$ 的连续性,Q‐学习面临维度灾难问题。因此,我们采用深度强化学习(特别是DQN)来学习最优动作值函数。
B. DQN路由
我们采用一个由所有节点共享的DNN $Q(s_t, a_t; \theta_Q)$ 来学习最优动作值函数 $Q^*(s_t, a_t)$。DQN参数 $\theta_Q$ 使用历史飞行轨迹进行离线训练。具体而言,我们创建了大量快照,其中包含每个飞行在每个时间戳的位置。
在离线训练阶段,传输时延和传播时延可根据飞行位置计算得出。至于排队延迟,由于我们的目标是训练 DQN以嵌入历史拓扑结构信息,而该信息与分组流量无关,因此我们假设在训练期间所有节点的排队延迟相同且恒定。通过这种方式,总的排队延迟实际上由路由中的跳数决定。
让每个节点以 $\epsilon$‐贪婪方式转发其接收的数据包,即以概率 $\epsilon$ 随机选择一个动作进行探索,以概率 $1 - \epsilon$ 选择动作 $a_t = \arg\min_a Q(s_t, a; \theta_Q)$ 进行利用。每次将数据包转发到下一跳时,经验向量 $e_t = [s_t, a_t, r_{t+1}, s_{t+1}]$ 被记录在回放内存 $D$ 中,并从 $D$ 中随机采样一批经验 $B$ 用于更新参数 $\theta_Q$(即经验回放[10])。基于贝尔曼方程(6),通过最小化损失函数 $E[(y_t - Q(s_t, a_t; \theta_Q))^2]$ 来使用随机梯度下降更新 $\theta_Q$,
$$
\theta_Q \leftarrow \theta_Q - \frac{\delta}{|B|} \nabla_{\theta_Q} \sum_{e_l \in B} [y_l - Q(s_l, a_l; \theta_Q)]^2,
$$
其中 $\delta$ 是学习率,$y_l = r_{l+1}$ 若回合在状态 $s_{l+1}$ 结束,否则为
$$
y_l = r_{l+1} + Q’(s_{l+1}, \arg\min_a Q(s_{l+1}, a; \theta_Q); \theta’_Q).
$$
此外,$Q’(\cdot; \theta’_Q)$ 表示目标网络,其结构与 DQN $Q(\cdot; \theta_Q)$ 相同,并通过
$$
\theta’_Q \leftarrow \tau \theta_Q + (1 - \tau)\theta’_Q
$$
以非常小的 $\tau$ 值进行更新,以降低动作值 $Q(s_l, a_l; \theta_Q)$ 与目标值 $y_l$[10]之间的相关性。
训练收敛后,可将DQN复制到每架飞机上以支持在线路由决策。在飞行过程中,每架飞机根据其观察到的状态,利用DQN转发其接收到的数据包。具体而言,节点 $i_t$ 观测其状态 $s(i_t)$,然后进行评估
$$
a^
t = \arg\min
{a \in A_t} [Q(s(i_t), a; \theta_Q)],
$$
其中 $A_t = {k | 1 \leq k \leq K, i^k_t \neq i_1, \cdots, i_{t-1}}$ 表示下一跳不能从先前已选择的节点中选取以避免路由中的环路。然后,节点 $i_t$ 将其接收的数据包转发到节点 $i^{a^
_t}_t$。
上述DQN的实现代表了一种解决完全无模型强化学习问题的通用方法。然而,在所考虑的路由问题中,系统的动态可以部分获知,这一特性可用于实现更快的学习和更好的在线适应性。此外,DQN的训练将排队延迟视为一个相同的常数,而实际上由于数据包到达率的不同,排队延迟是变化的。在下文中,我们开发了一种专用深度强化学习算法,以更高效地学习最优路由策略,并引入反馈机制以考虑实时排队延迟。
C. 带反馈的DVN路由
在本小节中,我们首先明确有关系统动态的知识,该知识随后被用于提升学习效率。然后,基于从下一跳候选者接收到的反馈,转发节点能够在转发数据包之前提前一步规划,从而提高策略的在线适应性。
1) 利用系统动态
对于AANET的路由问题,给定当前状态 $s_t$ 和任意动作 $a_t$,可以在转发节点发送数据包之前预测下一个状态,因为在单个时间步长内可以忽略节点移动。具体而言,下一个状态 $s_{t+1}$ 实际上是节点 $i^{a_t}
t$ 在时间步长 $t$ 观察到的状态,由此可得
$$
s
{t+1} = s(i^{a_t}_t) = [x(i^{a_t}_t), x(i^{a_t,1}_t), \cdots, x(i^{a_t,K}_t), x(i_d)],
$$
其中 $i^{a_t,k}_t$ 表示节点 $i^{a_t}_t$ 的第 $k$ 个候选。
关于奖励,在 $i_t$ 转发数据包之前,可以根据(1)式在下一跳 $i^{a_t} t$ 处提前计算链路延迟 $D {\text{link}}(i_t, i^{a_t} t)$,并且 $i^{a_t}_t$ 还可以根据其队列状态[8]测量排队延迟 $D {\text{que}}(i^{a_t}_t)$。
为了利用上述关于状态转移和奖励的知识,我们引入路由策略 $\pi$ 的中间状态值函数,其定义为
$$
V^\pi(s_t) = E\left[D_{\text{link}}(i_t, i^{a_t}
t) + \sum
{l=t+1}^{T-1} r_{l+1} \mid s_t, \pi\right],
$$
该函数表示数据包在节点 $i_t$ 经历排队延迟后,按照 $\pi$ 进行转发,从该时刻起至到达最终目的地的期望延迟。相应地,最优中间状态值函数定义为 $V^*(s_t) = \min_\pi V^\pi(s_t)$。
考虑到 $V^
(\cdot)$ 和 $Q^
(\cdot)$ 以及 $r_{t+1}$ 的定义,我们可以将 $V^
(\cdot)$ 表示为 $Q^
(\cdot)$ 的形式
$$
V^
(s_t) + E[D_{\text{que}}(i_t)] = \min_a Q^
(s_t, a),
$$
并用 $V^
(\cdot)$ 表示 $Q^
(\cdot)$
$$
Q^
(s_t, a) = E[r_{t+1} + D_{\text{que}}(i^{a}_t)] + V^
(s_{t+1}).
$$
从(11)可以看出,$Q^
(\cdot)$ 的值可以通过学习 $V^
(\cdot)$ 来获得。然后,将(11)代入(10)并考虑 $s_{t+1} = s(i^{a}
t)$,我们可以得到 $V^
(\cdot)$ 的贝尔曼方程为
$$
V^
(s_t) = \min_a {E[r(i_t, i^{a}_t)] + V^*(s(i^{a}_t))}, \quad \text{(12)}
$$
其中 $r(i_t, i^{a}_t) = D
{\text{link}}(i_t, i^{a}
t) + D
{\text{que}}(i^{a}_t)$。
2) 离线训练
与DQN路由类似,我们调用一个深度神经网络 $V(s_t; \theta_V)$ 来学习 $V^*(s_t)$,称为DVN。与DQN相比,DVN的规模可以小得多,因为它不依赖于动作,因此需要训练的参数更少。
在离线训练阶段,我们再次使用历史飞行数据,并假设具有恒定且相同的排队延迟。让每个节点以 $\epsilon$‐贪婪的方式转发其接收的数据包。根据(12),利用的动作为
$$
a_t = \arg\min_a [r(i_t, i^{a}
t) + V(s(i^{a}_t); \theta_V)].
$$
然后,由经验向量组成
$$
\tilde{e}_t = [s_t, s(i^1_t), \cdots, s(i^K_t), r(i_t, i^1_t), \cdots, r(i_t, i^K_t)]
$$
被记录在回放内存 $D$ 中,我们从 $D$ 中随机采样一批经验 $B$。基于贝尔曼方程(12),通过随机梯度下降最小化损失函数 $E[(y_t - V(s_t; \theta_V))^2]$ 来更新 $\theta_V$
$$
\theta_V \leftarrow \theta_V + \frac{\delta}{|B|} \sum
{\tilde{e}_l \in B} [y_l - V(s_l; \theta_V)]^2,
$$
其中 $y_l = r(i_l, i^{a^
}_l) + V’(s(i^{a^
}_l); \theta’_V)$ 如果 $i^{a^
}_l = i_d$,否则 $y_l = r(i_l, i^{a^
}_l)$;$a^* = \arg\min_a [r(i_l, i^{a}_l) + V(s(i^{a}_l); \theta_V)]$;最后,$V’(\cdot; \theta’_V)$ 是由 $\theta’_V \leftarrow \tau \theta_V + (1 - \tau)\theta’_V$ 更新的目标网络。
3) 在线路由决策
经过充分训练后,将DVN复制到每架飞机上以进行在线路由决策。由于在(13)中确定动作所需的信息,即 $r(i_t, i^{a}
t)$ 和 $V(s(i^{a}_t); \theta_V)$ 对于 $a = 1, \cdots, K$,仅在下一跳候选节点处可用,因此我们引入一种反馈机制,使转发节点 $i_t$ 能够获取这些信息。具体而言,每个候选者 $i^{a}_t$ 估计 $D
{\text{link}}(i_t, i^{a}
t)$ 和 $D
{\text{que}}(i^{a}
t)$,观测其状态 $s(i^{a}_t)$ 并计算 $V(s(i^{a}_t); \theta_V)$,然后将 $r(i_t, i^{a}_t) + V(s(i^{a}_t); \theta_V)$ 发送给转发节点 $i_t$,如图1所示。最后,转发节点 $i_t$ 选择动作
$$
a^*_t = \arg\min
{a \in A_t} [r(i_t, i^{a}_t) + V(s(i^{a}_t); \theta_V)],
$$
其中 $A_t$ 用于避免路由中的环路。
与直接根据(7)式通过DQN确定动作相比,用于决策动作的信息是由每个下一跳候选节点观测到的,而不仅仅由转发节点观测。通过这种方式,转发节点能够提前规划一步,更快速地适应动态环境。例如,当下一跳候选 $i^{a} t$ 的流量负载较高时,排队延迟 $D {\text{que}}(i^{a}_t)$ 将增加,这会提高 $r(i_t, i^{a}_t)$ 的值,因此根据(16)式,$i^{a}_t$ 被选为下一跳的可能性较小。
整个学习和决策过程如算法1所示。
算法1 AANETs的DVN路由
1: 初始化 $\theta_V$ 和 $\theta’
V \leftarrow \theta_V$。
离线DVN训练
2: 对于 回合 = 1, 2, …, N 执行
3: 从历史飞行中随机采样一个拓扑结构快照数据
4: 设置源 $i_s$ 和目的节点 $i_d$。
5: 对于 $t = 1, 2, \cdots$ do
6: 如果 $i^{a_t}_t = i_d$, $t > t
{\text{max}}$,那么
7: 中断
8: 观察状态 $s_t = s(i_s)$。
9: 随机选择动作 $a_t \in {1, \cdots, K}$(以概率 $\epsilon$),或设置 $a_t = \arg\min_a [r(i_t, i^{a}_t) + V(s(i^{a}_t); \theta_V)]$ 否则。
10: 存储由 $\tilde{e}_t$ 组成的经验 将(14)代入 $D$。
11: 从 $D$ 中随机采样一批经验作为 $B$。
12: 根据(15)更新 $\theta_V$ 和 $\theta’_V$。
在线路由决策
输入: $i_s$, $i_d$, $\theta_V$.
13: 对于 $t = 1, 2, \cdots$ 执行
14: 如果 $i_t = i_d$ 那么
15: 中断
16: 转发节点 $i_t$ 观察到 $s(i_t)$。
17: 对于 $a = 1, \cdots, K$ 执行
18: 节点 $i^{a}_t$ 观测 $s(i^{a}_t)$,估计 $r(i_t, i^{a}_t)$,计算 $V(s(i^{a}_t); \theta_V) + r(i_t, i^{a}_t)$ 并将结果发送到节点 $i_t$。
19: 节点 $i_t$ 根据(16)计算 $a^
_t$,并将数据包转发到 $i^{a^
_t}_t$。
IV. 仿真结果
在本节中,我们介绍仿真环境,并通过仿真比较深度强化学习所学的路由策略与基准策略的性能。
A. 仿真环境
由于可用于训练和测试的真实飞行数据不足,我们在仿真中生成合成飞行数据以模拟飞机移动性。具体而言,我们考虑一个经度 $-40^\circ \sim -5^\circ$ 东、纬度 $25^\circ \sim 55^\circ$ 北、高度 $0 \sim 13$ 公里的三维空域,其二维投影如图2所示。
为了反映典型的非均匀飞行密度分布,并评估在存在通信空洞时路由算法的性能,我们在 $(-17.25^\circ, 40^\circ, 0)$ 和 $(-27.75^\circ, 44.5^\circ, 0)$ 处划定一对禁飞区,每个禁飞区的半径为500公里,高度为13公里,且无任何飞行路径穿过这些区域。
时间 t1 时的飞行位置)
t50 时间的飞行位置)
在可用区域内随机绘制了40条预规划的大圆航线,并在整个仿真过程中保持固定,以表示季节性飞行走廊。总共100架飞机均匀分布在40条飞行路径上,同一条路径上的飞机以同一方向和恒定速度飞行,以保持安全飞行间隔距离。每架飞机的高度在 $9 \sim 13$ km的正常巡航高度范围内随机选择。
实际上,由于各种原因,每架飞机可能无法准时起飞,也可能不会严格按照预规划路径飞行,这导致历史飞行位置(即训练数据)与当前飞行位置(即测试数据)之间存在不匹配。为了反映这一问题,我们向计划飞行位置(即飞机严格按照计划飞行时的位置)添加随机偏差,以生成用于训练和测试路由算法的合成飞行位置,如图2所示。具体而言,沿纬度和经度方向的随机偏差遵循标准差为100公里的高斯分布。
我们生成了2000个网络快照,其中一半用于训练,另一半用于训练集之外的测试。在图2中,我们展示了不同时刻的一对示例快照。可以看出,飞行位置随时间变化,且同一飞行在训练集和测试集中的位置不同。
在每个快照中,源节点被随机选择,而目的节点设置为位于地面站 $(-10^\circ, 52^\circ, 0.05)$。在训练期间,排队延迟设置为 $D_{\text{que}} = 5$ 毫秒。分组大小为 $S = 15$ KB,传输速率根据基于距离的自适应编码和调制方案[14,表I]进行配置,采用基于匹配滤波器的波束成形,依赖于32个发射天线和四个接收天线。
B. DQN与DVN路由的精细调参
深度神经网络(DNNs)经过如下调优以实现最佳性能。候选集大小为 $K = 10$。DQN和DVN均具有两个隐藏层,其中DQN的每层分别包含100和50个节点,DVN的每层也分别包含100和50个节点。在此设置下,DVN中需要学习的未知参数总数相比DQN大约减少了三倍。隐藏层使用修正线性单元(ReLU)作为激活函数,而输出层不使用激活函数。在训练阶段,探索概率在前100轮设为 $\epsilon = 1$,在接下来的400轮内下降至0.1,并在后续回合中保持为0.1。DQN和DVN的学习率 $\delta$ 均为 $10^{-4}$,两个目标网络的更新率均为 $\tau = 10^{-3}$。批次大小为 $|B| = 32$。
在测试阶段,我们对DQN和DVN均设置 $\epsilon = 0$,且参数 $\theta_V$、$\theta_Q$ 被冻结。
C. 性能比较
以下基准被用于比较:
-
最优
:通过Floyd-Warshall算法求解问题(2)得到的最优路径,该算法依赖于每两个节点之间的链路延迟以及每个节点的排队延迟的全局信息。
-
GPSR
:文献[7]中提出的路由协议,该协议仅基于局部地理信息。具体而言,每个节点将其接收的数据包转发给地理位置上最接近目的地的特定邻居。当数据包到达无法进行贪婪转发的节点时,算法通过沿该区域边界绕行来恢复路由。
在图3中,我们比较了所提出的DQN路由和DVN路由算法在训练期间的学习曲线。可以看出,在经过500回合的训练后,这两种算法的平均端到端延迟均低于GPSR,并最终接近最优路由的延迟。此外,由于DVN路由利用了有关系统动态的知识,因此在其收敛后,其端到端延迟低于DQN路由。
在在线测试阶段,如前所述,快照是在训练集之外生成的,以反映飞行位置的不确定性。此外,为了反映流量负载的波动,随机选择20%的节点设置为具有50毫秒的较高排队延迟。在图4中,我们比较了测试阶段端到端延迟的累积分布函数(CDF)曲线。可以看出,在忽略端到端延迟计算中的排队延迟时,DQN实现了接近最优的性能。然而,当考虑排队延迟时,最优路由策略与DQN路由之间的差距增大。尽管如此,DQN路由的表现仍优于GPSR。相比之下,即使DVN是在离线训练时假设恒定且相同的排队延迟条件下进行的,DVN路由仍能实现接近最优的性能,因为反馈机制允许每个下一跳候选在在线决策阶段向转发节点报告其实时排队延迟。
在图5中,我们展示了测试阶段的一个示例快照,用于比较不同路由算法找到的路由。可以看出,GPSR 相当“短视”,难以绕过禁飞区。相比之下,DQN 路由和 DVN 路由都能找到与最优路由策略跳数相近的路由,因为它们隐式地利用了网络拓扑信息,这些信息已嵌入到使用历史数据训练的DQN/DVN中。由于DQN路由不了解实时排队延迟,它可能在路由过程中遇到一些拥塞节点(标记为“F”)。通过让每个下一跳候选节点向转发节点反馈其排队延迟,DVN路由可以找到一条绕过拥塞中继节点的路径。
五、结论与未来研究方向
在本文中,我们提出了基于深度强化学习的路由策略,以最小化空中自组织网络中的端到-end延迟。我们首先使用DQN学习从局部地理信息到最优路由决策的直接映射。为了提高所提出的DQN路由的学习效率和在线适应性,我们进一步通过利用关于系统动态的知识并引入反馈机制,提出了DVN路由。仿真结果表明,DQN路由和DVN路由均比GPSR实现了更低的端到-end延迟,而DVN路由的性能非常接近基于全局信息的最优路由。
值得注意的是,尽管在航班密度足够高的许多区域可以形成AANETs,但在航班密度较低的某些区域可能会失败。未来的研究可能会将低地球轨道卫星集成到AANET中,以支持真正的全球覆盖。
1201

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



