一种DDS中基于机器学习的QoS配置方法

文档序号:26919530发布日期:2021-10-09 16:29阅读:758来源:国知局
一种DDS中基于机器学习的QoS配置方法
一种dds中基于机器学习的qos配置方法
技术领域
1.本发明属于通信领域,具体的说是涉及一种dds中基于机器学习的qos配置方法。


背景技术:

2.数据分发服务dds(data distribution service)是对象管理组织(object management group,omg)在hla及corba等标准的基础上制定的新一代分布式实时通信中间件技术规范,该规范支持广泛的服务质量(quality of service,qos)参数,可以对交付期限,资源限制,故障进行精细控制容忍或网络通信,使其适合开发分布式实时和嵌入式系统。此外,丰富的qos服务质量策略,以数据为中心,保障了数据进行实时、高效、灵活地分发,以满足各种分布式实时通信应用需求。
3.dds在通过qos策略为开发人员提供高度可配置中间件服务及控制应用程序通讯质量的同时,还存在着动态和不可预知环境给通信系统带来的挑战,因为在动态和不可预知的环境中,通信系统的工作负载和资源可能随着执行上下文的不同而在时间上发生显著的变化,开发人员通常很难在一开始就选择和应用正确的qos属性以应对不断变化的通讯环境。
4.因此需要qos属性在通信系统运行期间不是固定,而是根据执行上下文自动更改,满足与性能或资源消耗相关的非功能性需求,此外还需要保证在系统运行时修改qos属性不会导致不同通信参与者之间的不兼容,因为不同参与者使用的配置需要相互一致。
5.cn110769461a公开了一种qos参数的配置方法,包括:建立一个或多个无线承载;设置所述rb的相关信息;所述rb的相关信息至少包括:所述rb的qos参数信息和所述rb承载的服务质量流(qosflow)的标识信息;发送所述rb的相关信息到终端,但其依然无法解决传送数据对网络环境的要求。


技术实现要素:

6.为了解决dds中qos配置面临的自适应配置及兼容问题,本发明提供了一种dds中基于机器学习的qos配置方法,该方法主要用于使用dds中间件通信的设备间qos的自动配置,根据所传数据对网络环境的要求,动态生成适配的qos配置文件,为通信设备提供最优的qos配置,提高通讯质量。
7.为了达到上述目的,本发明是通过以下技术方案实现的:
8.本发明是一种dds中基于机器学习的qos配置方法,包括如下步骤:
9.步骤1:判断是否需要构建qos配置决策树,是则进入训练阶段,否则进入发布阶段;
10.步骤2:若步骤1中结果为是,则读取已有qos配置数据集;
11.步骤3:根据步骤2中已有qos配置数据集构造初始决策树,在构造过程中以网络环境要求作为决策树的根节点;得到的决策树中每个非根非叶节点代表网络状态属性,每个叶节点表示对应属性的一种配置方案,所述网络环境包括但不限于网络延迟、可靠性、稳定
性。
12.步骤4:对步骤3中生成的初始决策树进行剪枝生成qos配置决策树模型,在剪枝过程中首先去除内容相同仅顺序不同的重复分支,然后去除配置项不兼容的分支,生成最终的决策树;
13.步骤5:若步骤1中结果为否,则进入发布阶段,发布者发布头部增加tag标签的数据;
14.步骤6:读取步骤5中待发布数据头部的tag标签;
15.步骤7:结合步骤6获取的tag标签以及步骤4中得到的决策树进行匹配,选择最优项即权重之和最大进行组合,生成初始qos配置文件;
16.步骤8:对步骤7中生成的初始qos配置文件进行兼容性检测,在检测过程中对各配置项之间组合的兼容性进行校验,及时发现不兼容的配置组合;
17.步骤9:当步骤8检测结果为不兼容时,重复步骤7、步骤8、步骤9并在步骤7中选择次优组合,直至所有配置项组合间相互兼容时生成兼容的qos配置文件,或直至所有组合都无法兼容时使用dds默认qos配置;
18.步骤10:在发布端生成qos配置文件后,将qos配置文件存入共享资源库,当订阅者现有qos配置与发布端qos配置不匹配时,通过调用回调函数更新共享资源库,并同步发布端qos到本地。
19.具体的,所述步骤3中,使用已知消息类型即发布者发布消息的类型,例如:命令、视频、图片等等的qos配置文件进行训练,构造初始决策树,在构造过程中我们将消息类型视为根节点,得到的决策树中每个非根非叶节点代表网络状态属性,每个叶节点表示对应属性的一种配置方案。
20.具体的,所述步骤4中,判断叶节点内容是否重复以及配置项组合间是否兼容,从而对初始决策树进行剪枝。由于dds支持的qos配置项共22项且已知相互间不兼容的配置项组合,所以我们将叶节点中配置项与不兼容配置项组合进行对比,实现配置项组合是否兼容的判断。
21.具体的,所述步骤8中,由于初始qos配置文件可能由决策树中多个叶节点组合生成,所以需要对初始qos配置进行兼容性检测,我们将初始qos配置文件与已知不兼容配置项组合进行比对,从而实现初始qos配置文件的兼容性检测。
22.具体的,所述步骤10中,发布端更新qos配置文件后会自动将qos配置文件存入共享资源库,当订阅者现有qos配置与发布端qos配置不匹配时,利用订阅失败时自动调用回调函数的机制,在回调函数中更新订阅端共享资源库,并将新增qos配置应用到本地。
23.本发明方法有两个非常重要的创新点:
24.一、使用机器学习方法在已知消息类型的qos配置文件数据集上进行训练,得到决策树模型,并根据发布者将要发布数据即消息的消息类型,自动配置适配的qos配置,将开发人员从繁琐的配置中解放出来,此外,由于该方法按消息类型选取最优qos配置,所以与通用默认qos策略相比,具有更高的通信服务质量;
25.二、在发布端生成qos配置后,会将qos配置同步到共享文件中,当订阅端qos配置与其不匹配时,会利用回调函数更新共享文件库,并同步最新qos配置到本地,保证发布/订阅端qos配置的相互兼容。
26.本发明的有益效果是:本发明将qos配置和机器学习方法相结合,根据已有qos配置数据集生成决策树模型,在使用时根据消息类型标签自动生成qos配置,简化了开发人员的配置工作;本发明的方法有效解决了发布/订阅端qos配置的兼容问题;与默认qos配置相比,本发明的方法可以在各个消息类型中选择最优qos配置。
附图说明
27.图1是本发明dds支持的qos配置。
28.图2是本发明qos配置的流程示意图。
29.图3是本发明dds发布订阅树形结构示意图。
30.图4是本发明qos策略模型示意图。
31.图5是本发明qos策略决策树模型示意图。
32.图6是本发明qos策略决策树训练样本模型表。
具体实施方式
33.以下将以图式揭露本发明的实施方式,为明确说明起见,许多实务上的细节将在以下叙述中一并说明。然而,应了解到,这些实务上的细节不应用以限制本发明。也就是说,在本发明的部分实施方式中,这些实务上的细节是非必要的。
34.如图1所示为dds支持的qos配置,首先,找出不兼容的配置组合,用于后期决策树的剪枝以及发布/订阅端qos配置的兼容性检测。
35.一种dds中基于机器学习的qos配置方法流程如图2所示,首先,通过判断本地是否存在已训练出的决策树模型选择进入训练阶段或进入应用阶段,在训练阶段,首先读取本地已知消息类型的训练数据集,然后根据数据集中各个文件对应的环境标签构造决策树,生成初始决策树模型,随后对初始决策树模型进行剪枝,剪去重复分支及存在qos配置项冲突的分支,至此最终生成决策树模型;在应用阶段,首先发布者发布数据,数据中添加消息类别标签,紧接着读取数据中标签值,并结合决策树模型选择合适的qos配置项组合生成初始qos配置文件,然后对初始qos配置文件进行兼容性检测,检测文件中是否存在冲突配置项,随后重新选择次优组合项生成初始qos配置文件,重复直至生成兼容的配置文件,最后,发布端应用生成的qos配置文件并同步到共享资源库。
36.具体的qos配置方法包括如下步骤:
37.步骤一:定位执行阶段
38.通过检查设备本地及内存中是否存在qos配置决策树模型进行流程控制,若不存在,则定位到训练阶段,否则定位到应用阶段。
39.步骤二:读取qos配置数据集
40.通过脚本程序读取已知qos配置文件到内存。选取具有良好通信质量的qos配置文件按照使用场景进行标注,例如,属于发布命令的qos配置文件,标注为命令并标注该配置文件具有的特点,例如快速、稳定和可靠等,此外,还为数据集中每个文件的各个特点设置了权重。
41.步骤三:构造初始qos配置决策树
42.在构造qos配置决策树前,先将22项qos配置项分为可自动配置项和非可自动配置
项两类,其中可自动配置项有:reliability、latencybudget、history、ownership、presentation、userdata、topicdata、groupdata、deadline、entityfactory、partition、liveliness、resourcelimits、durabilityservice、destinationorder、durability共16项,按照顺序,分别记为t1~t16,剩余7项在创建发布者或订阅者实体后便不可更改。以具有代表性的7个配置文件为例,对构造决策树的过程进行介绍。
43.如图6即qos策略决策树训练样本模型表所示,编号代表已有qos配置文件的id、t1~t16表示该配置文件中的16项qos配置,即算法中的特征、剩余列代表该配置文件的标签。
44.选择网络环境作为根节点,标签项作为子节点,如图5所示。以可靠性为例,选择qos的16项配置作为特征,计算最优划分特征,以二分类为例,就是尽量使划分的样本属于同一类别,也称为纯度最高的特征,在计算纯度时引入信息熵,假如当前样本集d中第k类样本所占的比例为p
k
(k=1,2,3...,|k|),k为类别的总数,对于二元分类来说,k=2,则样本集的信息熵计算公式如下:
[0045][0046]
ent(d)的值越小,则特征d的纯度越高,在得到信息熵后,通过计算得到每个特征的信息增益,选取信息增益大的特征作为划分特征,假定特征a有v个可能的取值{a1,a2,...,a
v
},如果使用特征a来对数据集d进行划分,则会产生v个分支结点,其中第v个结点包含了数据集d中所有在特征a上取值为a
v
的样本总数,记为d
v
。因此可以根据上面信息熵的公式计算出信息熵,再考虑到不同的分支结点所包含的样本数量不同,给分支节点赋予权重即样本数越多的分支节点的影响越大,信息增益计算公式如下:
[0047][0048]
在得到所有特征的信息增益值后,选择信息增益最大的特征作为节点,由该特征的不同取值建立子节点,再对子节点递归的调用以上方法,直到所有的特征信息增益均很小或没有特征可以选择为止,初始qos配置决策树构建完成。
[0049]
步骤四:剪枝生成qos配置决策树模型
[0050]
由于在构造qos配置决策树模型的过程中会不断出现重复分支以及配置项不兼容的分支,所以会浪费宝贵的计算资源及存储资源。因此在构造qos配置决策树模型的过程中,需要会对模型进行预剪枝和后剪枝,预剪枝即在qos配置决策树构建时不断对生成的节点内容进行校验,若内容重复则删除该分支,避免该分支继续划分;后剪枝即在初始qos配置决策树生成后对叶节点进行校验,删除重复且节点内配置不兼容的叶节点,精简决策树模型。
[0051]
步骤五:发布者发布数据
[0052]
发布者需要在发布数据的头部增加tag标签,用于表明希望数据在传输过程中具有的特点,例如稳定、可靠等。
[0053]
步骤六:提取数据中消息类别标签
[0054]
发布者发布数据时,自动提取消息头部tag标签值,用于生成发布者所需类型的qos配置文件。
[0055]
步骤七:生成初始qos配置文件
[0056]
根据发布者对qos配置文件的需求以及训练时得到的qos配置决策树进行匹配,选择最优项即权重之和最大进行组合,生成初始qos配置文件。
[0057]
步骤八:qos配置项兼容性校验
[0058]
在得到初始qos配置文件后,首先检查文件中是否存在不兼容的配置项,如果存在,则返回步骤七,选择次优于上次选择的选项进行组合,直至配置文件中各配置项相互兼容。
[0059]
步骤九:生成最终qos配置文件
[0060]
检测完成兼容性校验的qos配置文件中是否存在重复配置项,若不存在,则直接生成最终qos配置文件,若存在,则将所有重复配置项的值都赋值为具有最大权值的配置项对应的值并生成qos配置文件。
[0061]
步骤十:同步qos配置文件
[0062]
在发布端生成qos配置文件后,将qos配置文件上传到共享资源库。当订阅者现有qos配置与发布端qos配置不兼容时,通过调用回调函数更新共享资源库,并同步发布端qos配置到本地。
[0063]
本发明将qos配置与传统机器学习方法相结合,实现了通信中间件dds中qos的自动配置。
[0064]
以上所述仅为本发明的实施方式而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理的内所作的任何修改、等同替换、改进等,均应包括在本发明的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1