基于SPMA协议的数据通信方法、装置、设备及介质与流程

文档序号:19427769发布日期:2019-12-17 15:51阅读:2229来源:国知局
基于SPMA协议的数据通信方法、装置、设备及介质与流程

本发明涉及数据通信领域,特别涉及一种基于spma协议的数据通信方法、装置、设备及计算机可读存储介质。



背景技术:

战术数据链是一种用于战场环境下的数据通信系统,它能够链接战场上的传感器平台、指挥控制单元和武器平台等各种作战平台,从而使各种作战平台之间快速地交换各种情报信息,实现战场态势和信息的共享,提高协同作战的能力。基于统计优先级的多址接入协议spma(statisticalpriority-basedmultipleaccess)是美军战术数据链系统ttnt所使用的mac协议。spma协议是美国罗克韦尔·柯林斯公司在其专利(us7680077b1)中提出的方法,图1所示为基于spma协议执行信道访问的示意图。spma协议不同于其他数据链系统通常所使用的tdma协议,spma协议不需事先为网络中各通信设备分配或预约时隙,而只需在业务的数据包到达对应优先级的发送队列时统计信道占用率,通过将信道占用率与该业务的优先级所对应的接入阈值进行比较,来决定是否立即发送该数据包:如果当前信道占用率低于对应的接入阈值,则直接发送该数据包;如果信道占用率高于对应的接入阈值,则随机退避一段时间后再次检测信道占用率,并与接入阈值相比较,判断是否发送该数据包。在spma协议中,不同优先级类型的业务所对应的接入阈值不同,优先级越高,接入阈值越大,立即发送数据包的概率越大,发送时延越小。基于该方法,spma协议能够保证在传输距离达到100海里时最高优先级业务的数据包端到端传输时延不超过2ms,同时保证所有优先级的业务数据包的首次发送成功率不低于99%。

可见,在基于spma协议的数据通信方法中,各不同优先级业务所对应的接入阈值的大小对于数据通信性能起到至关重要的作用。为了便捷准确地得出各不同的优先级业务所对应的接入阈值,现有技术中的方法是通过在理想化假设条件、约束条件的前提下,通过网络仿真的方式确定接入阈值或者采用理论分析推导出接入阈值。然而,由于现有方法所预设的假设条件和约束条件过于理想化,因此通过公式推导的方式得出的接入阈值无法适应实际网络情况;在理想化假设条件和约束条件的基础上,设置仿真网络的方式也无法通过列举穷尽的方式准确模拟出所有的实际网络情况。因此,按照现有技术的方法得出的接入阈值无法适应节点数量、业务种类、分组长度、发送速率、信道条件等多种因素动态变化的实际网络,利用现有技术的方法得出的接入阈值进行数据通信,将存在通信不稳定、不可靠的情况,降低数据通信的质量。

因此,如何便捷准确地得出spma协议中各不同优先级业务所对应的接入阈值,进而提高基于spma协议的数据通信方法中通信的稳定性和可靠性,保障数据通信的质量,是本领域技术人员目前需要解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于spma协议的数据通信方法,能够提高基于spma协议的数据通信方法中通信的稳定性和可靠性,进而保障数据通信的质量;本发明的另一目的是提供一种基于spma协议的数据通信装置、设备及计算机可读存储介质,均具有上述有益效果。

为解决上述技术问题,本发明提供一种基于spma协议的数据通信方法,包括:

预先根据通信设备的业务优先级类型的数量设置初始状态和多个动作数组,并利用所述初始状态和多个所述动作数组设置q表模板;其中,所述初始状态为各所述优先级类型的业务分别对应的初始接入阈值的数组,所述动作数组为对当前状态中各接入阈值分别对应执行的更新操作方式的数组;

依据当前网络和所述初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送所述业务数据包的情况更新所述q表模板,直至所述q表模板达到目标收敛状态,得到目标q表;

在发送目标业务的目标数据包时,从所述目标q表中选择与当前状态中的最大q值对应的目标动作数组,并根据所述目标动作数组得出所述目标业务的目标状态;

依据所述目标状态发送所述目标数据包,并在观测窗口时间后将所述目标状态设置为当前状态,继续利用更新后的当前状态发送所述目标数据包,直至将所述目标业务的所述目标数据包发送完毕。

优选地,所述依据当前网络和所述初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送所述业务数据包的情况更新所述q表模板,直至所述q表模板达到目标收敛状态,得到目标q表的过程,具体包括:

在当前网络中,按照预设选择规则选择所述目标动作数组;

利用所述目标动作数组更新所述初始状态,得到新增的第一状态;

依据所述第一状态发送所述业务数据包,统计在所述观测窗口时间内,发送所述业务数据包的首次发送成功率和信道占用率,并依据所述首次发送成功率和所述信道占用率计算出所述第一状态和所述目标动作数组对应的奖励;

根据所述奖励更新所述初始状态和所述目标动作对应的q值;

将所述第一状态作为新的初始状态,并进入所述在当前网络中,按照预设选择规则选择所述目标动作数组的步骤,以迭代增加对应的状态并更新所述q表模板,直至所述q表模板达到目标收敛状态,得到所述目标q表。

优选地,进一步包括:

根据当前网络中的通信设备数量、业务数量以及所述优先级类型的数量,建立与当前网络对应的计算机网络仿真模型;

对应的,所述依据当前网络和所述初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送所述业务数据包的情况更新所述q表模板,直至所述q表模板达到目标收敛状态,得到目标q表的过程,具体为:

将所述计算机网络仿真模型对应的网络设置为所述当前网络,并依据所述当前网络和所述初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送所述业务数据包的情况更新所述q表模板,直至所述q表模板达到目标收敛状态,得到所述目标q表。

优选地,所述依据所述目标状态发送所述目标数据包,并在观测窗口时间后将所述目标状态设置为当前状态,继续利用更新后的当前状态发送所述目标数据包,直至将所述目标业务的所述目标数据包发送完毕的过程,具体包括:

依据所述目标状态发送所述目标数据包,并根据所述目标数据包在所述观测窗口时间内的发送情况更新所述目标q表中与当前状态和所述目标动作数组对应的目标q值;

在所述观测窗口时间后将所述目标状态设置为当前状态;

利用更新后的当前状态发送所述目标数据包,直至将所述目标业务的所述目标数据包发送完毕。

优选地,所述按照预设选择规则选择所述目标动作数组的过程,具体包括:

按照贪心算法以概率ε选择当前状态对应的q值最大的所述目标动作数组,或者以概率(1-ε)任意选择所述目标动作数组。

优选地,所述动作数组中的每个参数包括增加、减少和不变三种更新操作方式,且所述增加和所述减少的步进长度为固定值。

为解决上述技术问题,本发明还提供一种基于spma协议的数据通信装置,包括:

设置模块,用于预先根据通信设备的业务优先级类型的数量设置初始状态和多个动作数组,并利用所述初始状态和多个所述动作数组设置q表模板;其中,所述初始状态为各所述优先级类型的业务分别对应的初始接入阈值的数组,所述动作数组为对当前状态中各接入阈值分别对应执行的更新操作方式的数组;

更新模块,用于依据当前网络和所述初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送所述业务数据包的情况更新所述q表模板,直至所述q表模板达到目标收敛状态,得到目标q表;

计算模块,用于在发送目标业务的目标数据包时,从所述目标q表中选择与当前状态中的最大q值对应的目标动作数组,并根据所述目标动作数组得出所述目标业务的目标状态;

发送模块,用于依据所述目标状态发送所述目标数据包,并在观测窗口时间后将所述目标状态设置为当前状态,继续利用更新后的当前状态发送所述目标数据包,直至将所述目标业务的所述目标数据包发送完毕。

为解决上述技术问题,本发明还提供一种基于spma协议的数据通信设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现上述任一种基于spma协议的数据通信方法的步骤。

为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种基于spma协议的数据通信方法的步骤。

本发明提供的一种基于spma协议的数据通信方法,在发送目标业务的目标数据包时,从目标q表中选择与当前状态中的最大q值对应的目标动作数组,并根据目标动作数组得出目标业务的目标状态;再依据目标状态发送目标数据包,并在观测窗口时间后将目标状态设置为当前状态,继续利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕。也就是说,在发送目标业务的目标数据包时,每次通过选择当前状态中的最大q值对应的目标动作数组来更新对应的接入阈值,以实现每次都是利用最优的目标状态发送目标数据包。因此,本方法能够便捷准确地得出spma协议中各不同优先级业务所对应的接入阈值,进而提高基于spma协议的数据通信方法中通信的稳定性和可靠性,保障数据通信的质量。

为解决上述技术问题,本发明还提供了一种基于spma协议的数据通信装置、设备及计算机可读存储介质,均具有上述有益效果。

附图说明

为了更清楚地说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为基于spma协议执行信道访问的示意图;

图2为本发明实施例提供的一种基于spma协议的数据通信方法的流程图;

图3为本发明实施例提供的一种得出目标q表的方法的流程图;

图4为本发明实施例提供的一种基于spma协议的数据通信装置的结构图;

图5为本发明实施例提供的一种基于spma协议的数据通信设备的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例的核心是提供一种基于spma协议的数据通信方法,能够提高基于spma协议的数据通信方法中通信的稳定性和可靠性,进而保障数据通信的质量;本发明的另一核心是提供一种基于spma协议的数据通信装置、设备及计算机可读存储介质,均具有上述有益效果。

为了使本领域技术人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

图2为本发明实施例提供的一种基于spma协议的数据通信方法的流程图。如图2所示,一种基于spma协议的数据通信方法包括:

s10:预先根据通信设备的业务优先级类型的数量设置初始状态和多个动作数组,并利用初始状态和多个动作数组设置q表模板;

其中,初始状态为各优先级类型的业务分别对应的初始接入阈值的数组,动作数组为对当前状态中各接入阈值分别对应执行的更新操作方式的数组。

本实施例中,以一个通信设备为主体,根据该通信设备的业务优先级类型的数量设置初始状态和多个动作数组,然后将初始状态和动作数组分别作为表格的行和列,利用初始状态和多个动作数组设置q表模板。

也即,首先初始化一张q表模板,该q表模板的行可以是由各不同的优先级类型的业务分别对应的接入阈值所组成的数组所表示的一系列状态。并且,一般将第一行的初始状态的各接入阈值设置得足够小,以保证各业务的数据包的首次发送成功率均超过99%,随着行数的递增,各接入阈值越大。q表模板的列可以是对不同优先级类型对应的接入阈值分别进行更新操作的矢量所表示的一系列动作,因此,每个动作数组中的元素个数与优先级类型的数量一致,动作数组中的各元素表示依次对当前状态中的各接入阈值分别执行对应的操作。也就是说,q表模板中的元素表示在一个状态state下执行一个动作action所对应的q值q(s,a),初始化q表各个元素值为0,即表示q表模板。

s20:依据当前网络和初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表。

在当前网络情况下,依据初始状态发送业务数据包,并按照预设规则增加对应的状态,因此,得到新增的状态,再根据实际情况依据新增的状态发送业务数据包,并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表。

s30:在发送目标业务的目标数据包时,从目标q表中选择与当前状态中的最大q值对应的目标动作数组,并根据目标动作数组得出目标业务的目标状态;

s40:依据目标状态发送目标数据包,并在观测窗口时间后将目标状态设置为当前状态,继续利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕。

在得出目标q表之后,则可以依据目标q表发送目标业务的目标数据包。具体的,在发送第一个目标数据包时,则利用初始状态对应的接入阈值进行发送,即初始状态为当前状态,然后选择当前状态中最大的q值对应的目标动作数组,依据目标动作数组对当前状态进行更新,得到目标状态;然后依据目标状态发送目标数据包。在观测窗口时间后,将目标状态设置为当前状态,即利用目标状态作为当前状态,再利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕。

本发明实施例提供的一种基于spma协议的数据通信方法,通过预先根据通信设备的业务优先级类型的数量设置初始状态和多个动作数组,并利用初始状态和多个动作数组设置q表模板;其中,初始状态为各优先级类型的业务分别对应的初始接入阈值的数组,动作数组为对当前状态中各接入阈值分别对应执行的更新操作方式的数组;然后依据当前网络和初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表;也就是说,本申请中的目标q表是根据每次基于spma协议发送业务数据包的实际情况更新得出的。因此,在发送目标业务的目标数据包时,从目标q表中选择与当前状态中的最大q值对应的目标动作数组,并根据目标动作数组得出目标业务的目标状态;再依据目标状态发送目标数据包,并在观测窗口时间后将目标状态设置为当前状态,继续利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕。也就是说,在发送目标业务的目标数据包时,每次通过选择当前状态中的最大q值对应的目标动作数组来更新对应的接入阈值,以实现每次都是利用最优的目标状态发送目标数据包。因此,本方法能够便捷准确地得出spma协议中各不同优先级业务所对应的接入阈值,进而提高基于spma协议的数据通信方法中通信的稳定性和可靠性,保障数据通信的质量。

在上述实施例的基础上,本实施例结合图3所示的一种得出目标q表的方法的流程图和表1所示的本发明实施例提供的一种目标q表对技术方案作了进一步的说明和优化,具体的,本实施例中,依据当前网络和初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表的过程,具体包括:

s101:在当前网络中,按照预设选择规则选择目标动作数组;

s102:利用目标动作数组更新初始状态,得到新增的第一状态。

具体的,在当前网络中发送业务数据包时,由于目前q表模板中只有初始状态,因此首先将该初始状态作为当前状态,然后按照预设规则选择目标动作数组。

表1一种目标q表

如表1所示,第1行状态state1各优先级类型的业务p0、p1和p2分别对应的接入阈值为6%,4%,2%,也就是说,初始状态时,仅当信道占用率分别小于6%、4%、2%时,才能够分别发出最高优先级p0、次高优先级p1、最低优先级p2的数据包。

作为优选的实施方式,按照预设选择规则选择目标动作数组的过程,具体包括:

按照贪心算法以概率ε选择当前状态对应的q值最大的目标动作数组,或者以概率(1-ε)任意选择目标动作数组。

需要说明的是,贪心算法中的概率ε的取值为(0,1)之间的正数,ε越大,算法越趋向于直接选择q值最大的动作数组,但这样有可能忽视了潜在的更好的动作。因此可以以概率(1-ε)任意选择目标动作数组,以执行多种形式动作数据,使得动作更加全面。可以理解的是,一旦选择一个目标动作数组之后,则根据该动作数组更新当前状态,得到另一个状态,即新增的第一状态。

s103:依据第一状态发送业务数据包,统计在观测窗口时间内,发送业务数据包的首次发送成功率和信道占用率,并依据首次发送成功率和信道占用率计算出第一状态和目标动作数组对应的奖励。

将新增的第一状态增加至q表模板中,并依据第一状态发送业务数据包,并统计在观测窗口时间内,发送业务数据包的首次发送成功率和信道占用率,并依据首次发送成功率和信道占用率计算出第一状态和目标动作数组对应的奖励。

具体的,观测窗口时间指的是预设的发送业务数据包的时间,一般设置观测窗口时间为发送多个业务数据包的时间,本实施例对观测窗口时间的具体时长不做限定,以具体实施为准。

具体的,奖励由业务数据包的首次发送成功率变化所产生的奖励和信道占用率变化所产生的奖励组成。假设该通信设备共有3个优先级类型p0、p1和p2对应的业务,则奖励r由4项组成,即优先级业务p0~p2的首次发送成功率变化所分别产生的3个奖励,以及信道占用率所产生的1个奖励。

本实施例提供了一种奖励r的具体计算规则如下:

1)如果在当前状态s,一个业务的首次发送成功率不低于99%,执行动作a以后进入下一个状态s',其首次发送成功率变为低于99%,则首次发送成功率产生的奖励为:

-100×0.8p,p=0,1,2,...,最高优先级业务p=0,优先级越高,p越小;

2)如果在状态s,一个业务的首次发送成功率低于99%,执行动作a以后进入下一个状态s',其首次发送成功率变为不低于99%,则首次发送成功率产生的奖励为:

100×0.8p,p=0,1,2,...;

3)如果在状态s,一个业务的首次发送成功率低于99%,执行动作a以后进入下一个状态s',其首次发送成功率仍然低于99%,则首次发送成功率产生的奖励为:

100×[fts(s')-fts(s)]×0.8p,p=0,1,2,...;

其中,fts(s')表示下一状态s'对应的首次发送成功率,fts(s)表示当前状态s对应的首次发送成功率;此处,首次发送成功率fts为一个百分比;

4)如果在状态s,一个业务的首次发送成功率不低于99%,执行动作a以后进入下一个状态s',其首次发送成功率仍然不低于99%,则首次发送成功率产生的奖励为:

100×[fts(s')-fts(s)]×0.8p,p=0,1,2,...;

5)关于信道占用率变化所产生的奖励,仅当执行动作a以后进入下一个状态s',所有业务的首次发送成功率都不低于99%时,才计算信道占用率的奖励,具体算法可以是:

1000×[cor(s')-cor(s)];

其中,cor(s')表示下一状态s'对应的信道占用率,cor(s)表示当前状态s对应的信道占用率;此处,信道占用率cor也是一个百分比。

计算奖励r的目的是在所有业务的首次发送成功率均不低于99%的前提下,促使降低接入阈值,从而使信道占用率得到提高。因此,在执行动作a以后进入下一个状态s',此时只要有一个业务首次发送成功率低于99%,在整个奖励中就不再考虑信道占用率。这是因为,降低接入阈值,会使信道占用率增加,但是也有可能导致业务的首次发送成功率降低,而在首次发送成功率低于99%的情况下,首要关心的是提高首次发送成功率,但如果把信道占用率的变化计算到奖励中去,则有可能出现信道占用率增加所带来的积极影响超过了首次发送成功率降低所带来的消极影响,使主体更加倾向于执行降低阈值的动作,导致首次发送成功率进一步降低。

s104:根据奖励更新初始状态和目标动作对应的q值;

具体的,在观测时间窗口中统计通信设备在利用更新的状态发送业务的业务数据包的首次发送成功率和信道占用率,综合首次发送成功率和信道占用率计算当前状态对应的奖励r,据此更新q表模板中所对应的q值q(s,a),即当前状态和目标动作数组对应的q值:

其中,α为学习率,取值范围在(0,1)之间;α越大,算法对奖励(包括及时奖励和远期奖励)越重视,但是α取值太大,有可能造成算法不收敛,因此本实施例优选地将α取值设置为0.1。γ表示对后续状态q值的重视程度,其取值范围也在(0,1)之间。γ越大,算法越重视远期奖励,也就是公式(1)中这一项;γ越小,算法越重视及时奖励,也就是公式(1)中r这一项。在实际应用中,γ可以取值偏大一些,例如0.8,这样可以让算法更加稳定一些。

s105:将第一状态作为新的初始状态,并进入在当前网络中,按照预设选择规则选择目标动作数组的步骤,以迭代增加对应的状态并更新q表模板,直至q表模板达到目标收敛状态,得到目标q表。

在下一状态s',根据贪心算法重新执行如上过程,并不断更新q表模板中各元素的值。当执行次数足够多时,q表模板中的各元素更新幅度逐渐减小,并逐渐趋于稳定,即表示q表模板达到目标收敛状态,同时表示通信设备将进入目标状态,即在各优先级业务首次发送成功率均不低于99%的情况下,各业务接入阈值尽量大,使得信道占用率达到最大。到达此状态时,就能够达到spma协议的设计目标,即:既能够保证最高优先级业务端到端传输时延小于2ms,又能够使尽可能多的业务的首次发送成功率不低于99%,因此将该q表模板作为目标q表。

本发明实施例提供的一种得出目标q表的方法,通过根据当前实际网络情况不断计算更新q表模板得出目标q表,完全遵从实际网络情况进行更新,使得得出的目标q表能够适应该通信设备以及该通信设备所在的网络。

在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例进一步包括:

根据当前网络中的通信设备数量、业务数量以及优先级类型的数量,建立与当前网络对应的计算机网络仿真模型;

对应的,依据当前网络和初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表的过程,具体为:

将计算机网络仿真模型对应的网络设置为当前网络,并依据当前网络和初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表。

需要说明的是,在实际操作中,网络中通信设备的数量、业务数量、业务优先级的类型和数量不同,需要根据实际情况建立对应的计算机网络仿真模型,使得最终得出的目标q表是不同的。

在本实施例中,为了缩短设备部署到实际网络后的学习和训练时间、加快收敛,可以预先使用实际网络参数,如当前网络中的通信设备数量、业务数量以及优先级类型的数量,在计算机中建立与当前网络对应的计算机网络仿真模型,然后以离线的方式在该计算机网络仿真模型中对模型进行大量、长时间训练,从而预先得到达到稳定状态的目标q表。进而,再在相对应的实际网络中使用离线预先训练好的目标q表进行发送目标业务的目标数据包,就可以大大缩短初始化训练时间,快速收敛到目标状态。

需要说明的是,在实际网络中使用该通信设备进行在线学习更新目标q表的过程中,并不总是选择q值最大对应的目标动作数组,而是以一定概率(1-ε)选择其他动作数组,这样做的目的是,可以快速应对网络中可能出现的设备数量、业务类型、业务流量等参数发生变化的情况。考虑到离线网络参数变化远远小于在线网络参数变化,因此本发明为离线学习设置一个较大的ε值,为在线学习设置一个较小的ε值,这样就使得离线学习能够以更快的速度收敛到目标状态,同时使得在线学习更加快速的应对网络的复杂变化。

作为优选的实施方式,本实施例中,动作数组中的每个参数包括增加、减少和不变三种更新操作方式,且增加和减少的步进长度为固定值。

需要说明的是,对动作数组中的每个参数包括增加、减少和不变三种更新操作方式,即表示可以对对应的接入阈值执行增加、减少和不变三种更新操作。

本实施例使用各种优先级类型的业务分别对应的接入阈值所组成的数组作为q表模板的行,为了减少行的数量,本发明使用离散数值来表示各接入阈值,而不是使用连续数值,进一步考虑到spma协议规定高优先级的业务的接入阈值必须大于等于低优先级业务的接入阈值,因此优先级越高,其接入阈值的取值范围就会更进一步减少。为了减少列的数量,本实施例同样使用离散数值来表示对各个优先级的业务的接入阈值进行的更新操作,对各个优先级的接入阈值只设置增加、减少和不变三种更新操作。其中,增加和减少的步进长度为固定值,并且,本实施例优选的将步进长度设置为2%,这样每个优先级阈值的取值范围就只有49个,即(2%~98%)。

对应的,在实际操作中,按照贪心算法,选择一个目标动作数组a,则对当前状态s中所包含的各个阈值进行更新操作,之后进入下一状态s'。如表1所示,假如当前状态为state1(6%,4%,2%),如果选择目标动作数组actio1n(i,i,u)。其中,动作i是指对接入阈值增加2%,d是指对接入阈值减少2%,u是保持不变;并且,目标动作数组action1中的(i,i,u)表示分别对当前状态state1中的(6%,4%,2%)执行对应的更新操作,因此下一状态就进入state2(8%,6%,2%);在当前状态为state2时,如果选择目标动作数组action2(d,u,i),则下一个状态就进入了state3(6%,6%,4%)。

本实施例中,通过将阈值和动作都设计为离散值,因此可以使目标q表的尺寸得以大大缩减,这样可以显著减少算法迭代次数;另一方面,目标q表的压缩同时也能降低计算能力和存储容量,从而提升通信设备的运行性能。

在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,依据目标状态发送目标数据包,并在观测窗口时间后将目标状态设置为当前状态,继续利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕的过程,具体包括:

依据目标状态发送目标数据包,并根据目标数据包在观测窗口时间内的发送情况更新目标q表中与当前状态和目标动作数组对应的目标q值;

在观测窗口时间后将目标状态设置为当前状态;

利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕。

需要说明的是,在本实施例中,在发送目标业务时,都是将目标q表中的初始状态作为第一次发送目标数据包的当前状态,这与一般的q学习算法随机选择一个初始状态是非常不同的。之所以这样设计,是因为本实施例中,目标q表的第1行的初始状态的各接入阈值总是一个非常保守的取值,每次从第1行的初始状态开始,可以从开始严格控制信道上的数据包的数量,从而保证各优先级的业务的首次发送成功率都能达到99%以上。

在依据目标状态发送目标业务数据的观测窗口时间内,根据目标业务数据的发送情况更新与当前状态和目标动作对应的q值,并将目标状态设置为当前状态,继续更新对应的q值,直至将执行完成目标业务。并且,在发送目标业务的目标数据包的过程中更新目标q表中的q值时,通过设置较小的学习率α,能够小幅度地更新q值,从而尽量保证在整个学习过程中各优先级业务的首次发送成功率能够一直维持在较高的水平,而不会突然显著下降。

可见,本实施例可以根据对目标业务的目标数据包的实时发送情况对应的q值不断调整发送目标业务的目标数据包的接入阈值,依据最大q值选择目标动作数组,得到发送效果最优的目标状态,再根据该目标状态中的接入阈值发送目标数据包,在传输目标业务的基础上,实现最优的传输。并且,本实施例在发送目标业务的目标数据包时,也对目标q表中对应的q值进行更新,以使得目标q表更加适应当前网络以及对应的通信设备。

上文对于本发明提供的一种基于spma协议的数据通信方法的实施例进行了详细的描述,本发明还提供了一种与该方法对应的基于spma协议的数据通信装置、设备及计算机可读存储介质,由于装置、设备及计算机可读存储介质部分的实施例与方法部分的实施例相互照应,因此装置、设备及计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

图4为本发明实施例提供的一种基于spma协议的数据通信装置的结构图,如图4所示,一种基于spma协议的数据通信装置包括:

设置模块41,用于预先根据通信设备的业务优先级类型的数量设置初始状态和多个动作数组,并利用初始状态和多个动作数组设置q表模板;其中,初始状态为各优先级类型的业务分别对应的初始接入阈值的数组,动作数组为对当前状态中各接入阈值分别对应执行的更新操作方式的数组;

更新模块42,用于依据当前网络和初始状态发送业务数据包,按照预设规则增加对应的状态并根据发送业务数据包的情况更新q表模板,直至q表模板达到目标收敛状态,得到目标q表;

计算模块43,用于在发送目标业务的目标数据包时,从目标q表中选择与当前状态中的最大q值对应的目标动作数组,并根据目标动作数组得出目标业务的目标状态;

发送模块44,用于依据目标状态发送目标数据包,并在观测窗口时间后将目标状态设置为当前状态,继续利用更新后的当前状态发送目标数据包,直至将目标业务的目标数据包发送完毕。

本发明实施例提供的基于spma协议的数据通信装置,具有上述基于spma协议的数据通信方法的有益效果。

图5为本发明实施例提供的一种基于spma协议的数据通信设备的结构图,如图5所示,一种基于spma协议的数据通信设备包括:

存储器51,用于存储计算机程序;

处理器52,用于执行计算机程序时实现如上述基于spma协议的数据通信方法的步骤。

本发明实施例提供的基于spma协议的数据通信设备,具有上述基于spma协议的数据通信方法的有益效果。

为解决上述技术问题,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述基于spma协议的数据通信方法的步骤。

本发明实施例提供的计算机可读存储介质,具有上述基于spma协议的数据通信方法的有益效果。

以上对本发明所提供的基于spma协议的数据通信方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1