法律状态公告日
法律状态信息
法律状态
2022-04-12
未缴年费专利权终止 IPC(主分类):H04L12/727 专利号:ZL2016102216599 申请日:20160411 授权公告日:20190723
专利权的终止
2019-07-23
授权
授权
2016-09-21
实质审查的生效 IPC(主分类):H04L12/727 申请日:20160411
实质审查的生效
2016-08-24
公开
公开
技术领域
本发明属于通信技术领域,尤其涉及一种自组织网络基于时延约束的Q学习分组传输方法。
背景技术
Q学习是一种模型无关的强化学习算法,Q学习要解决的是这样的问题:一个能感知环境的自治代理如何通过学习选择能达到其目标的最优动作。主要应用于学习控制机器人的移动,在工厂中学习最优操作工序以及学习棋类对弈等。当代理在其环境中做出一个动作时,施教者会提供奖励或惩罚信息,以表示结果状态的正确与否。例如,在训练代理进行棋类对弈时,施教者可在游戏胜利时给出正回报,而在游戏失败时给出负回报,其他时候为零回报。代理的任务就是从这个非直接的,有延迟的回报中学习,以便后续的动作产生最大的累积效应。Q学习在人工智能领域已得到大范围应用并且性能优良。
在无线自组织网络中,一个节点到目的节点往往具有多个下一跳节点,因此如何选择通往目的节点的下一跳节点来降低端到端的时延、提升网络传输性能就变得尤为重要。
发明内容
本发明的目的在于提供一种自组织网络基于时延约束的Q学习分组传输方法,旨在解决当无线自组织网络中的节点面临多个通往目的节点的下一跳且端到端时延参数时变情况下,满足时延约束指标的中继路径的自主学习和中继节点的动态选择问题。
本发明是这样实现的,一种自组织网络基于时延约束的Q学习分组传输方法,所述自组织网络基于时延约束的Q学习分组传输方法通过网络节点自主学习通往目的节点的不同路径的端到端时延参数;网络节点在面临多个通往目的节点且满足时延约束指标的下一跳时,将不同中继节点的端到端传输时延归一化处理后作为每一次传输时的选择概率,动态选择下一跳节点,从而提升网络端到端传输性能。
进一步,所述自组织网络基于时延约束的Q学习分组传输方法包括以下步骤:
步骤一:对去往目的节点的Q表进行初始化,设置时延奖励值,设定端到端时延约束指标;
步骤二:根据Q表选择去往目的节点的下一跳节点,发送前向控制报文;
步骤三:收到前向控制报文的下一跳节点向发送节点回复反向控制报文;
步骤四:收到前向控制报文的下一跳节点若非目的节点则转发前向控制报文;
步骤五:发送节点收到反向控制报文,对Q表进行更新;
步骤六:间隔一段时间,重复步骤二至步骤五。
进一步,所述步骤一中,任意节点u的Q表初始化方法如下:
Q表至少包括目的节点IP地址、下一跳节点IP地址和Q值字段;其中下一跳节点IP地址字段存放由本节点去往目的节点的下一跳节点的IP地址,Q值字段存放下一跳节点IP地址对应的Q值,初始化为0。
进一步,所述步骤一中,任意节点u设置奖励值au→d的方法如下:
当目的节点不是本节点时,au→d=0,当目的节点是本节点时,au→d=Ad,Ad为一正常量。
进一步,所述步骤二中,任意节点u选择去往目的节点d的下一跳节点的方法如下:
根据Q表中的值去往目的节点的下一跳节点的选择概率
>
其中
任意节点u按概率选择下一跳节点,发送前向控制报文,前向控制报文至少包含控制报文类型、发送节点IP地址、下一跳节点IP地址、目的节点IP地址、报文发送时间字段。
进一步,所述步骤三中,节点v收到来至节点u的前向控制报文后的处理方法如下:
节点v从收到的报文中获得前向控制报文的发送时间,根据报文的接收时间计算报文的传输时延du→v;
节点v获得关于目的节点d的奖励值av→d,计算去往目的节点d的Q表的期望值
>
其中
节点v向节点u发送反向控制报文;反向控制报文至少包含控制报文类型、本节点的奖励值av→d、发送节点到本节点的传输时延du→v、本节点去往目的节点Q表的期望值
进一步,所述步骤五中,发送节点u收到来至下一跳节点v的反向控制报文后的处理方法如下:
节点u计算本次所选择去往目的节点d的下一跳节点v所获得的回报值,计算公式如下:
>
更新Q表中节点u通过选择下一跳节点v传输至目的节点d对应的Q值:
间隔一段时间,重复步骤二至步骤四。
进一步,所述数据报文的传输方法具体包括如下步骤:
步骤一:任意需要传输数据报文的节点u查询去往目的节点d的Q表,计算去往目的节点的下一跳节点的选择概率;
步骤二:依概率选择去往目的节点的下一跳节点v;
步骤三:将数据转发至下一跳v;
步骤四:收到数据报文的节点v重复步骤一至步骤三,直到数据报文送达目的节点d。
进一步,所述步骤二中,任意节点u选择去往目的节点d的下一跳节点的方法如下:
根据Q表中的值设定去往目的节点的下一跳节点的选择概率
其中
本发明提供的自组织网络基于时延约束的Q学习分组传输方法,主要用于当无线自组织网络中的节点面临多个通往目的节点的下一跳且端到端时延参数时变情况下,如何进行满足时延约束指标的中继路径的自主学习和中继节点的动态选择。本发明网络节点自主学习通往目的节点的不同路径的端到端时延参数;网络节点在面临多个通往目的节点且满足时延约束指标的下一跳时,将不同中继节点的端到端传输时延归一化处理后作为每一次传输时的选择概率,动态选择下一跳节点。本发明通过节点自身对网络环境的学习,可以不断适应网络环境的变化,做出满足时延约束的传输方法;通过将时延约束与Q学习算法相结合的无线网络分组传输机制提升了无线自组织网络的端到端传输性能。
附图说明
图1是本发明实施例提供的网络拓扑示例示意图。
图2是本发明实施例提供的Q学习算法框图。
图3是本发明实施例提供的初始化时各节点Q表值。
图4是本发明实施例提供的首次Q学习过程演示。
图5是本发明实施例提供的再次Q学习过程演示。
图6是本发明实施例提供的Q学习算法收敛之后Q表值。
图7是本发明实施例提供的数据报文传输框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图对本发明的应用原理作详细的描述。
网络拓扑示例如图1所示,共9个节点形成自组织网络。考虑源节点为1号节点,目的节点为9号节点,其余节点为中间节点。
网络拓扑对应的时延矩阵D为(单位:毫秒):
>
(1)无线自组织网络基于时延约束的Q学习分组传输方法
由于无线自组织网络的性能随着路由跳数的增加而急剧下降。本实例主要考虑5跳以内的无线自组织网络。
不同的应用通常时延约束也不一样。例如,IP双向通话时延约束通常为100-600毫秒,而单向视频传输的时延约束更加宽松。因此,本实例主要考虑支持IP双向通话业务,时延约束指标为100毫秒。
节点1至节点9的时延奖励值(单位:毫秒)分别设定为:0,0,0,0,0,0,0,0,100。
节点u选择去往目的节点d的下一跳节点v所获得的回报值
>
其中av→d表示节点v关于目的节点d的时延奖励值,
更新规则:
>
其中
图2为Q学习算法框图。
图3表示的是网络初始化时各节点Q表中的值,初始化后各节点Q表中的值均为0。
图4展示了源节点1到目的节点9的首次Q学习过程。
由图4(a)可知,源节点1有数据需要发送至节点9时,启动Q学习算法;节点1首先根据Q表发现对应的下一跳节点2和节点4的Q值相等(初始化都为0),于是等概率选择了节点2作为下一跳节点,向节点2发送前向控制报文,节点2收到前向控制报文之后,计算报文的传输时延为10毫秒;获得关于目的节点9的时延奖励值0,计算去往目的节点9的Q表期望值为0,节点2向节点1发送包含本节点的时延奖励值、传输时延、去往目的节点的Q表期望值的反向控制报文。节点1收到节点2发送的反向控制报文之后,计算选择节点2作为下一跳的回报为-10毫秒,进而得到新的Q值为-9.5毫秒。
由图4(b)可知,节点2收到节点1发送的前向控制报文之后,发现自己并非目的节点9,节点2根据Q表发现对应的下一跳节点3和节点5的Q值相等(初始化都为0),于是等概率选择了节点5作为下一跳节点,向节点5发送前向控制报文,节点5收到节点2转发的前向控制报文之后,计算报文的传输时延为15毫秒;获得关于目的节点9的时延奖励值0,计算去往目的节点9的Q表期望值为0,节点5向节点2发送反向控制报文。节点2收到节点5发送的反向控制报文之后,计算选择节点5作为下一跳的新的Q值为-14.3毫秒。
由图4(c)可知,节点5选择节点6作为下一跳,并获得选择节点6作为下一跳的新的Q值为-6.65毫秒。
由图4(d)可知,节点6选择节点9作为下一跳,与之前的节点不同的是,节点9为目的节点,关于目的节点9的时延奖励值为100毫秒,因而节点6选择节点9作为下一跳的新的Q值为87.4毫秒。
图5展示了源节点1到目的节点9的再次Q学习过程。
由图5(a)可知,节点1根据Q表发现对应的下一跳节点2和节点4的Q并不相同,于是按照概率选择了节点4作为下一跳节点,向节点4发送前向控制报文;节点4收到前向控制报文之后,计算报文的传输时延为4毫秒;获得关于目的节点9的时延奖励值0,计算去往目的节点9的Q表期望值为0,节点4向节点1发送反向控制报文。节点1收到节点4发送的反向控制报文之后,计算选择节点4作为下一跳的回报为-4毫秒,进而得到新的Q值为-3.8毫秒。
由图5(b)可知,节点4收到节点1发送的前向控制报文之后,发现自己并非目的节点9,节点4根据Q表按照概率选择向节点5发送前向控制报文,节点5收到节点4转发的前向控制报文之后,计算报文的传输时延为5毫秒;获得关于目的节点9的时延奖励值0,计算去往目的节点9的Q表期望值为0,节点5向节点4发送反向控制报文。节点4收到节点5发送的反向控制报文之后,计算选择节点5作为下一跳的新的Q值为-4.75毫秒。
由图5(c)可知,节点5选择节点6作为下一跳,并获得选择节点6作为下一跳的新的Q值为71.9毫秒。
由图5(d)可知,节点6选择节点9作为下一跳,并获得选择节点9作为下一跳的Q值为91.77毫秒。
图6为重复以上Q学习步骤,直到Q学习算法收敛之后各节点的Q表中的Q值。
(2)数据报文的传输方法
任意需要传输数据报文的节点查询去往目的节点的Q表,计算去往目的节点的下一跳节点的选择概率;依概率选择去往目的节点的下一跳节点;将数据转发至下一跳;收到数据报文的节点重复以上步骤,直到数据报文送达目的节点。图7为数据报文传输框图。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
机译: 一种海量数据时延容忍网络的传输方法及装置
机译: 基于编码的时延有效的数据传输方法
机译: 基于编码的时延有效的数据传输方法