(论文阅读)Neuro-DCF: Design of Wireless MAC via Multi-AgentReinforcement Learning Approach


前言

文章链接:2021_Mobihoc_NeuroDCF.pdf (yung-web.github.io)

文章分类:网络→链路层协议;计算方法→多智能体强化学习

关键词:无线MAC,最优CSMA,多代理RL


一、背景知识

O-DCF和A-DCF

  1. O-DCF(Optimal Distributed Coordination Function):O-DCF是一种尝试通过重新设计CSMA参数控制方式来提高性能的方法。CSMA是一种用于协调多个无线设备访问相同通信频率的协议。O-DCF采用了一些理论结果,通常称为最优CSMA,以调整CSMA的参数设置。它还使用了额外的本地信息,例如队列长度,以更智能地响应网络中的不同情况,如碰撞。这使得O-DCF能够更好地适应局部干扰模式。尽管O-DCF取得了一定的改进,但它仍然需要一些工程性的修补来解决某些性能问题,特别是在延迟和与TCP协议的兼容性方面。

  2. A-DCF(Adaptive Distributed Coordination Function):A-DCF是另一种尝试改善802.11 DCF性能的方法。与O-DCF类似,A-DCF重新设计了CSMA参数控制方式,并使用额外的本地信息来更智能地协调无线设备的行为。A-DCF采用了一种自适应的方法,以便能够根据网络中的实际情况自动调整参数。这种自适应性可以帮助A-DCF更好地适应不同的干扰模式。然而,类似于O-DCF,A-DCF也需要进行一些工程性的修补来解决性能上的问题,特别是在延迟和与TCP协议的兼容性方面。

他们存在的问题:

  1. 修补性工程解决方案:这两种方法需要一些工程性的修补,以解决性能问题。这意味着它们并不能提供一个完全通用的解决方案,而需要在特定情境下进行额外的调整和改进。这使得它们在某些网络配置和干扰模式下可能表现不佳,需要不断进行调整。

  2. 性能度量的不足:尽管O-DCF和A-DCF在一些性能指标上表现出改进,但它们可能在其他方面表现不佳,尤其是在延迟和与TCP协议的兼容性方面。这意味着它们可能无法提供全面的性能改进,而只关注了部分方面的优化。

  3. 有界的局部信息:这些方法使用本地信息,如队列长度,来做出决策。这些信息是有限的,可能不足以完全理解复杂的网络干扰模式。因此,它们在某些情况下可能无法提供最佳性能,特别是在需要全局网络信息的情况下。

CCA (Clear Channel Assessment)

CCA (Clear Channel Assessment) 是一种通信协议或机制,通常用于 Wi-Fi 和其他无线通信技术中,以确定无线信道是否可用或是否存在干扰,以避免数据碰撞和冲突。CCA 主要用于遵守通信标准,以确保无线通信的可靠性和效率。

具体来说,CCA 通过监听无线信道上的活动来判断是否可以进行数据传输。它可以识别其他设备的传输或干扰信号,以避免在同一时间和频率上发送数据,从而减少数据碰撞和丢失。CCA 可以分为两种主要模式:

  1. Energy Detect (ED): 在这种模式下,设备检测无线信道上的能量级别。如果检测到足够的能量,表示信道可能被其他设备使用,因此当前设备将等待一段时间再次尝试传输。

  2. Carrier Sense (CS): 这种模式涉及检测信道上是否存在正在传输的信号。如果检测到其他设备的传输,当前设备将等待,以避免冲突。

图神经网络(GNN)

GNN(Graph Neural Network)是一种机器学习模型,专门设计用于处理图结构数据。图结构数据包括节点和节点之间的连接关系,通常用于表示网络、社交网络、推荐系统、生物信息学和许多其他领域的数据。GNN的主要作用是在图数据中学习节点之间的关系,以便进行各种任务,包括节点分类、链接预测、社交网络分析等。GNN的主要作用:

  1. 节点分类:GNN可以用于将图中的节点分类到不同的类别或标签中。这对于社交网络中的用户分类、推荐系统中的商品分类等任务非常有用。

  2. 链接预测:GNN可以帮助预测两个节点之间是否存在连接。这在社交网络中可以用于友谊关系预测,或在推荐系统中用于预测用户是否会购买某个商品。

  3. 社交网络分析:GNN可用于分析社交网络中的节点之间的影响和关系。它可以揭示社交网络中的子群体、信息传播路径等。

  4. 推荐系统:在推荐系统中,GNN可用于理解用户、商品和它们之间的关系,从而提供更精确的个性化推荐。

  5. 生物信息学:GNN在生物信息学领域用于分析蛋白质相互作用网络、基因调控网络等,以了解生物体内分子之间的相互作用。

  6. 图数据的特征提取:GNN可以将图数据中的节点映射到一个低维特征空间中,以便进行后续的机器学习任务。这对于图数据的降维和可视化非常有用。

演员-评论家模型

  1. 演员:可以把演员看作每个智能体的决策者。演员基于智能体在本地环境中所观察到的情况,决定智能体应该采取什么行动。你可以把它想象成每个智能体都有自己的“大脑”来决定该采取什么行动。

  2. 评论家:评论家看到了整体情况。它综合考虑了所有智能体的行动以及环境的整体状态,预测了智能体未来会获得多少奖励。这个奖励预测是基于所有智能体一起协作的成功程度。

“中央培训与分散执行”(CTDE)

  • 这种方法允许智能体在实际执行任务时独立做决策,但它们在训练过程中仍然可以通过中央训练过程学到如何高效协作。
  • 通常使用了“演员-评论家”架构。
  • 这个方法鼓励智能体之间的合作。智能体不再只关心自己的表现,而是为了共同的目标而工作,这个目标由全局奖励来表示。这个全局奖励反映了它们在共同的任务中表现得有多好。
  • 为了使这个方法生效,通常会在这些算法中使用深度神经网络,这些网络就像强大的数学工具,帮助演员记住它们以前做过什么(使用所谓的“递归神经网络”),并帮助评论家估计智能体联合行动的价值。

策略梯度:

什么是策略梯度?
直接根据状态输出动作或者动作的概率。那么怎么输出呢,最简单的就是使用神经网络啦!我们使用神经网络输入当前的状态,网络就可以输出我们在这个状态下采取每个动作的概率,那么网络应该如何训练来实现最终的收敛呢?我们之前在训练神经网络时,使用最多的方法就是反向传播算法,我们需要一个误差函数,通过梯度下降来使我们的损失最小。但对于强化学习来说,我们不知道动作的正确与否,只能通过奖励值来判断这个动作的相对好坏。基于上面的想法,我们有个非常简单的想法:如果一个动作得到的reward多,那么我们就使其出现的概率增加,如果一个动作得到的reward少,我们就使其出现的概率减小。

反事实基线:

反事实基线是一种用于评估每个智能体在多智能体环境中的贡献的方法。这个方法的核心思想是,通过考虑每个智能体采取的行动,然后将其排除在未来奖励的估计中,以确定每个智能体实际上对于环境的影响。

在多智能体环境中,每个智能体的行动可能会影响其他智能体的奖励和环境状态。使用反事实基线,我们可以将某个智能体采取的行动排除在计算未来奖励估计中,从而获得一种“如果该智能体不采取这个行动,未来奖励会是什么样”的估计。这种估计有助于更准确地评估每个智能体的贡献,因为它考虑了其他智能体的行动如何影响环境。

通过使用反事实基线,MAPPO可以更好地理解每个智能体在多智能体环境中的行动对整体性能的影响,从而更有效地进行策略更新和协作。这有助于提高学习效率,因为每个智能体的策略更新更具针对性和信息化

一、文章摘要

CSMA通常用于控制无线设备如何共享通信频率。这个协议在802.11标准中使用,因为它简单而通用。然而,研究发现,CSMA在复杂多跳通信环境中性能较差,并且通常需要各种修补性的解决方案。

作者提出了一种新的方法,称为"Neuro-DCF",它使用深度强化学习来改进CSMA协议。这个方法有两个关键挑战:一是如何稳定地训练分布式系统,二是如何适应不同的干扰模式和配置。

为了解决第一个挑战,他们采用了多智能体强化学习框架。对于第二个挑战,他们引入了一种新颖的图神经网络(GNN)结构来进行训练。

作者进行了大量的模拟实验,结果表明他们的"Neuro-DCF"协议在性能上显著优于802.11 DCF和最近的O-DCF协议,特别是在提高延迟性能的同时保持了最佳效用。

二、INTRODUCTION

现存问题

802.11 DCF(分布式协调功能)在协调吞吐量和公平性方面存在问题:

当有三个数据流(F1、F2和F3)形成所谓的“中间流”拓扑结构,其中F1和F3与F2发生冲突,而F1和F3之间不发生冲突时,802.11 DCF会导致中间的数据流F2性能严重下降,几乎为零。

为了去解决802.11 DCF的这些问题,提出了O-DCF和A-DCF,重新设计了控制CSMA(载波监听多路访问)参数的方式,采用了一些理论结果(通常称为最优CSMA)。

但是这些方法存在以下问题:

  1. 修补性工程解决方案:这两种方法需要一些工程性的修补,以解决性能问题。这意味着它们并不能提供一个完全通用的解决方案,而需要在特定情境下进行额外的调整和改进。这使得它们在某些网络配置和干扰模式下可能表现不佳,需要不断进行调整。

  2. 性能度量的不足:尽管O-DCF和A-DCF在一些性能指标上表现出改进,但它们可能在其他方面表现不佳,尤其是在延迟和与TCP协议的兼容性方面。这意味着它们可能无法提供全面的性能改进,而只关注了部分方面的优化。

  3. 有界的局部信息:这些方法使用本地信息,如队列长度,来做出决策。这些信息是有限的,可能不足以完全理解复杂的网络干扰模式。因此,它们在某些情况下可能无法提供最佳性能,特别是在需要全局网络信息的情况下。

因此,这篇论文作者采用了一种基于学习的方法来训练一个实用的无线MAC控制器,他们将其称为Neuro-DCF。这个协议受到了深度强化学习(DRL)的最新突破的启发,DRL引入了一种基于经验样本训练控制器的方法,而无需显式了解模型结构。

提出的这种方法的难点:

  • 一是如何稳定地训练分布式系统

在训练中,有一个简单的方法是假设有一个单一的协调者,它了解整个网络的状态并负责操作所有无线设备。然而,这种方法不允许在执行时进行分布式操作,因此需要找到一种解决方法。

为了解决这个问题,作者将问题建模为一个协作的多智能体强化学习(MARL)问题,其中所有智能体都被训练来优化一个共同的目标。一种简单的方法是分别训练环境中的每个智能体,将其他智能体的行为视为环境的一部分。然而,这种方法在复杂情况下通常不起作用,因为其他智能体政策的变化会导致非稳态问题。因此,需要理解多个可控实体之间的复杂相互作用,并开发一个培养结构,即使在智能体之间不交换状态信息的情况下,也能诱导协作。

作者的选择是采用一种最近引入的范式,称为“中心化训练与分散执行”(CTDE)。CTDE具有一个中心化的培训方案,它有效利用联合经验来学习可以单独执行的智能体的分散策略。这一范式已经在许多多智能体强化学习方法中使用,但关键的设计选择在于选择哪种强化学习算法以及如何将与分布式多智能体操作相关的策略评估和改进模块整合在一起,这取决于目标任务。

  • 二是如何适应不同的干扰模式和配置。

传统上,针对MAC调度任务的强化学习培训需要为每个具体的网络拓扑结构和节点/链路数量进行分开的培训。这对于多智能体强化学习来说是非常具有挑战性的。

作者的目标是使他们的MAC控制器适用于现实世界的网络环境。为了实现这一目标,他们提出了三种设计选择:

  1. 使用图神经网络(GNN):他们采用了GNN结构来表示链路之间的干扰关系。这有助于建立一个通用的值函数,这是强化学习的关键组成部分。GNN接受图形结构的输入并输出嵌入式特征表示。它能够很好地捕捉智能体之间的局部互动关系,而且参数的数量不会随着输入图的大小而增加。

  2. 随机图训练:为了有效地培训他们的GNN值函数,他们引入了一种称为随机图培训的方法。在这个方法中,他们从给定的分布中随机选择干扰图形。他们为每个培训周期生成不同的图形,并在相同的值网络下在不同环境中训练无线MAC控制器。这确保了他们的策略在培训阶段使用的分布内的图形上有效运行。

  3. 参数共享结构:作者建议使用参数共享(PS)结构,即所有控制器具有相同的模型参数。这符合网络协议的一般设计原则,即网络中的节点必须根据相同的算法操作。参数共享结构有两个好处:首先,随着网络规模的增长,参数的数量不会发生变化,因此他们的算法可以轻松适应大规模网络。其次,借助GNN和参数共享,他们确保了满足了上述要求,而无需额外决定要在每个无线节点上部署哪个模型。

三、具体方法

CTDE框架:

  1. 演员(Actor):每个智能体(标记为“i”)从自己的局部环境中收集信息,这些信息用“𝑜𝑖𝑡”表示,然后基于这些信息来决定它应该采取什么行动,这个行动用“𝑎𝑖𝑡”表示。你可以把它看作是每个智能体根据它附近的情况来做出自己的决策。

  2. 评论家(Critic):相反,评论家获得了更广泛的环境视图。它接收了所有智能体的综合观察,表示为“[𝑜𝑖𝑡]𝑁𝑖=1”,以及所有智能体的行动,表示为“[𝑎𝑖𝑡]𝑁𝑖=1”。此外,评论家还考虑了环境的结构,这被表示为一个图。这个图显示了环境的不同部分如何连接在一起以及它们之间可能的相互干扰。

    在这个设置中,我们假设通过查看所有智能体的观察来估计环境的真实状态,“𝑠𝑡”。

  3. 训练环境:为了训练智能体,它们被放置在一个模拟环境中。这个环境设置为一个网络,其中有多个智能体之间的连接,类似于通信网络。每个连接或流就像智能体之间的通信通道。我们假设这些连接不重叠,并将它们的相互关系表示为一个无向图。这个图有助于我们了解不同通信流如何相互干扰。评论家除了考虑智能体的观察和行动之外,还考虑这个图结构,以更好地理解环境。

  4. 评论家的作用:评论家的主要任务是预测价值函数,它本质上估计了智能体的行动在实现共同目标方面有多好。它使用一个奖励信号表示为“𝑟𝑡”进行训练,这个信号反映了智能体共同协作的效果有多好。这个奖励信号有助于评论家了解他们的行动是否导致成功或失败。

    评论家的估算然后用来指导智能体政策的更新,帮助他们随着时间做出更好的决策。

  5. 评论家和奖励的使用只在训练中使用,在推理过程中评论家并不参与。

智能体的观察、行动和奖励

观测(Observation):在这个环境中,每个智能体根据它自身能够观测到的局部信息来做出决策。这些局部信息包括网络统计数据,比如连接的吞吐量(传输速率)和端到端平均帧延迟(数据从发送到接收所需的时间)(平均帧延迟是根据ACK帧时间戳测量的每帧端到端延迟的指数加权移动平均(EWMA)估计来计算的)。这些信息用于帮助智能体了解它们所在的网络环境。

观察的特征包括:

行动(Action):为了优化通信性能,每个智能体需要采取行动。在这个问题中,智能体的行动包括两部分。首先,他们可以调整从控制队列(Control Queue)到媒体访问队列(Medium Access Queue)的排队速率。这是为了控制数据包的输入速率,以使网络不被过度拥塞。其次,他们可以调整一个参数,叫做"争用窗口"(CW),它影响了他们在竞争式媒体访问(CSMA)协议中的等待时间。这有助于避免碰撞,从而减小帧延迟。

奖励(Reward):在训练过程中,智能体会收到奖励信号,以指示它们的行动效果如何。奖励函数有两个部分。第一部分是为了最大化网络效用,奖励是根据每个智能体的吞吐量来计算的。这鼓励智能体通过调整它们的行动来提高网络性能。第二部分是为了减小排队延迟,奖励与队列的长度成负相关,鼓励智能体通过调整排队速率来减小延迟。

改变奖励函数一个研究方向。

网络结构:

演员结构:

评论家结构(MAPPO):

左边的图描述了两个不同的反事实的分离计算控制组件,速度控制和MAC

模型流程:

  1. 输入数据:首先,模型接收来自多个智能体的观测数据和执行的动作,包括速率控制(RC)和MAC(媒体访问控制)动作。

  2. 节点表示:每个智能体的观测数据和执行的动作经过全连接神经网络("Dense"块)的处理,生成相应的嵌入(Embeddings)𝜙 (·)。这些嵌入捕捉了智能体的状态和动作信息。

  3. 图卷积操作:模型使用图卷积操作("Conv"块)来考虑智能体之间的相互作用和协作。这是为了更好地理解不同智能体之间的关系。

  4. 基线计算:为了评估每个智能体的决策,模型计算counterfactual基线,即在不同决策情况下的预期奖励。这涉及到对per-action嵌入和other-agent嵌入的组合,以估算基线。

  5. 评估决策:Critic模型使用计算的基线来评估每个智能体的决策,确定哪些决策可能导致更好的性能。

图嵌入评论家(GNN):

智能体必须在各种不同的网络结构中运行。因此我们需要一种能够在不同图拓扑结构下保持一致表示的方法。我们设计了一个多智能体Critic,采用了图神经网络(Graph Neural Network,GNN)的结构。

每次训练的时候,他们都会随机生成一个新的图形𝐴 𝑒,这个图形是从某个图形分布P中随机抽取的。然后,每个智能体按照它们当前的策略在这个新生成的图形上执行,并收集相关的经验数据。接着,他们从这些数据中运行一次训练迭代。

共享参数:

  • 共享训练参数:他们的方法是将训练参数共享给所有智能体,无论有多少智能体。这意味着不需要为每个智能体单独设置参数,从而节省了计算和存储资源。

  • 参数规模控制:共享参数的架构使得模型的大小不会随着智能体数量的增加而大幅度增长。这意味着他们可以有效地处理大量的智能体,而不需要大量的计算资源。

  • 局部网络环境:他们的方法特别适用于局部的自组织无线网络环境,因为他们可以合理地假设底层信道条件是均匀的。在这种情况下,共享参数的方法特别有效。

四、实验结果

实验设置

网络配置:在一个饱和流量环境中测试了我们的MAC算法,其中固定了12 Mbps的UDP流量,每个数据包大小为1500字节,通道带宽也为12 Mbps。

不同的拓扑结构:

  • Flow-in-the-middle (FIM):有三个流,其中两个是外部流,一个是内部流。外部流只与一个流发生干扰,但内部流与两个流发生干扰,因此形成了不对称的干扰关系,这是一个经典的802.11算法容易出现饥饿情况的示例。

  • Fully-connected with size 𝑛 (FC-𝑛):所有 𝑛 个流相互干扰(图5b)。FC拓扑结构在各个流之间具有对称的干扰关系。

  • Random geometric graph with 𝑁 flows and 𝑑 threshold (𝐺(𝑁 , 𝑑)):有 𝑁 个流均匀随机分布在2-D单位正方形内,只有在距离阈值 𝑑 以内的流之间建立连接)。

FIM" 和 "FC" 拓扑结构是一种人为合成的网络拓扑,"Random geometric graph" 是一种模拟干扰节点在空间中随机分布的拓扑结构,它更贴近真实的干扰情景。这些不同的拓扑结构被用来模拟不同的无线通信环境,以便测试和研究MAC算法的性能。

训练设置:训练神经-DCF(Neuro-DCF)这个系统时使用了不同的拓扑结构,Neuro-DCF-T(Neuro-DCF-single来)是在单一拓扑结构上训练的,而Neuro-DCF-𝐺(𝑁 , 𝑑)(Neuro-DCF-general)是在多个不同的随机几何拓扑结构上进行训练的。

计算资源:20核i9-9900X处理器、128GB内存和2个TITAN Xp GPU来训练Neuro-DCF-𝐺(10, 0.3)算法。

评价标准

(i) 平均吞吐量和队列长度,(ii) 短期效用,(iii) 队列随时间的动态变化,以及 (iv) 泛化性能。每个结果都显示了5个随机初始化模型的平均值和95%置信区间。

网络效用这样表示:

实验结果

每个拓扑结构中MAC算法的总体效用,802.11在所有环境中的网络效用(长期吞吐量和效用测量)最低。O-DCF和所有Neuro-DCF变种在效用方面表现相似。但是在FC-6情况下Neuro-DCF-FC-6表现不好,但是Neuro-DCF-𝐺(10, 0.3)的性能很好。这是因为FC-6拓扑结构具有非常严格的干扰特性,因此从短期来看,吞吐量的估计与长期吞吐量不一致。euro-DCF-𝐺(10, 0.3)在FC-6拓扑结构下表现更好,这是因为它能够学习一般的干扰结构,从而更有效地找到更好的解决方案。这意味着Neuro-DCF-𝐺(10, 0.3)具有更好的通用性。

除了长期吞吐量和效用的测量之外,还进行了实验来提供短期吞吐量的统计数据。(公式(6))

图8a显示了不同流之间的信道分配的二维直方图。从图中可以看出,普通的802.11算法有时无法有效地在不同流之间共享信道。O-DCF和Neuro-DCF在长期吞吐量上表现相似,但短期统计数据有很大的差异。Neuro-DCF的直方图显示更多的测量集中在中心位置,这表明与O-DCF的波动行为相比,Neuro-DCF实现了更稳定的调度。

图8b显示了不同网络拓扑中短期效用的直方图。我们使用的短期效用是从公式(5)中得出的,基于EWMA估计的短期吞吐量。与802.11和O-DCF相比,Neuro-DCF算法显示出更为集中的效用分布。这意味着在Neuro-DCF中,短期网络效用变化较小,从而导致更稳定的调度行为。Neuro-DCF-𝐺(10, 0.3)与Neuro-DCF-single模型相比,由于通用性,短期统计数据略微分散。

通过研究队列长度随时间变化的情况来了解MAC算法的瞬时表现。队列长度是指每个流的队列中等待传输的数据包数量,反映了调度过程中到达和服务的情况。图示了O-DCF和Neuro-DCF的队列长度动态。从图中可以看出,O-DCF和Neuro-DCF-𝐺(10, 0.3)的队列长度存在相对较大的偏差,而Neuro-DCF-single模型的队列长度几乎没有偏差。这表明Neuro-DCF-single模型在瞬时行为方面表现更为稳定。

Neuro-DCF-single模型由于在单一拓扑上训练,不需要进行复杂的推断,因此队列长度变化较小。而O-DCF和Neuro-DCF-𝐺(10, 0.3)需要进行一些观测和推断,因此队列长度的波动较大,但均值队列长度较低。

​​​​​​​

泛化能力。在不同的(𝑁 , 𝑑)配置下测试了Neuro-DCF-𝐺(10, 0.3)和Neuro-DCF-single模型的性能,以了解它们在不同拓扑结构下的表现。

使用已经训练好的模型在随机几何图的(𝑁 , 𝑑)空间中的不同拓扑结构上进行测试。在图10中,他们绘制了一个10×10的网格热图,其中每个网格块代表了离散的(𝑁, 𝑑)空间,即𝑁 ∈ {2, 4, · · · , 20} 和 𝑑 ∈ {0.1, 0.2, · · · , 1.0}。他们从每个(𝑁 , 𝑑)配置中随机选择了五个图形拓扑,并还测量了O-DCF在所有设置下的性能,以评估Neuro-DCF的相对改进。图10a显示了Neuro-DCF-𝐺(10, 0.3)的泛化性能,图10b显示了Neuro-DCF-T2的泛化性能。根据图表,随机图形训练的Neuro-DCF-𝐺(10, 0.3)优于Neuro-DCF-single模型,因为它在更广泛的(𝑁 , 𝑑)范围内显示出更多的改进。这意味着Neuro-DCF-𝐺(10, 0.3)在更多种类的拓扑结构上都有更好的性能。


总结

这篇论文介绍了一种协同的多智能体强化学习(MARL)方法,用于解决无线调度问题。主要目标是提出一种基于学习的方法,用于训练一个高效的无线MAC控制器。使用本篇论文的方法,与最佳的CSMA相比,可以将延迟降至最低,同时保持吞吐量和公平性的最佳性能。该方法采用了修改版的PPO算法来进行稳定和高效的训练,并提出了基于图神经网络(GNN)的评论者架构,用于训练通用的MAC算法,以实现最佳效用和最小延迟。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值