结合协同控制的机器人软件模块间资源调度方法技术

技术编号:25689690 阅读:34 留言:0更新日期:2020-09-18 21:01
本发明专利技术公开了一种结合协同控制的机器人软件模块间资源调度方法,包括将整体软件系统划分为多个工作互相独立的模块,并记录各模块的资源占用、机器人对该模块的需求度等信息;考虑模块的资源占用,以及当前机器人工作状态对其的需求度等,利用单纯形法进行初次资源调度;计算各模块内的资源调整误差,并对该误差设计模块间的同步结构,设计同步补偿率,将得到的同步补偿律附加在初次资源调度结果中,得到对各模块最终的资源调度结果。本发明专利技术结合了控制工程中的控制理论,利用反馈保证系统调节的精度,并合理控制软件系统对计算环境资源的占用,保障机器人的工作性能。

【技术实现步骤摘要】
结合协同控制的机器人软件模块间资源调度方法
本专利技术属于软件工程领域,具体为一种结合协同控制的机器人软件模块间资源调度方法。
技术介绍
软件自适应即软件在运行期间,通过一些可观测的性能或非性能指标,在一定自定义的适应框架下,可以感知需求变化或者环境变化,并通过自身的配置、逻辑等可控量来调整整个软件系统的行为,从而达到在复杂多变的客户需求与计算环境中,维持整个软件系统的功能或非功能指标在一个符合设计者期望的水平。目前,对软件自适应技术的需求领域主要是一些存在计算环境发生大幅变化可能,且需要软件系统能保证较为鲁棒的应对能力的场景,例如,对于购物网站,人流可能在某个时间段逐渐增多,但是又应该确保整个网站的工作性能,不能崩溃,这就需要软件系统在设计时为其提供自适应方案;对于一些工作机器人,计算环境的改变包括能源限制、网络质量等不应该导致机器人的异常状态,这也就需要软件系统在感知到工作环境变化后,及时调整机器人的工作方式。一般在使用单纯形法等动态规划进行资源调度时,仅仅考虑了理想情况下的软件系统状态,即认为资源调度决策下发后,软件系统的下层各个模块将同时调节到指定资源占用。然而由于不同软件模块内部工作逻辑不同,可调节配置参数存在差异,很难做到天然的整齐划一。因此在资源调度决策下发的短时间内,由于软件模块调整速率的差异,可能产生意外的超调等现象。若此时软件系统处于临界状态,则由于该意外超调,可能会直接引发系统崩溃等危害,不利于软件系统的自适应调整。
技术实现思路
本专利技术的目的在于提供一种结合协同控制的机器人软件模块间资源调度方法。实现本专利技术目的的技术方案为:一种结合协同控制的机器人软件模块间资源调度方法,包括以下步骤:步骤1、根据功能分布将软件系统划分为工作相互独立的功能模块,并确定各模块的计算环境资源、机器人对该模块的需求度;步骤2、根据划分的功能模块,以及得到的计算环境资源与需求度,确定资源调度器为每一个功能模块初分配的资源量,通过资源调度器将软件系统的总许用资源分配至每一个功能模块;步骤3、根据为每个功能模块初分配的资源量,以及当前每个功能模块的实际资源占用量,设计协同补偿器,将协同补偿器输出的协同补偿量附加至初分配的资源量上,得到为每个功能模块最终分配的资源量;步骤4、重复进行步骤2、步骤3,使得整个软件系统的资源占用符合许用资源预期。优选地,各模块的计算环境资源的确定方法为:分别运行单一功能模块,记录每一个功能模块正常工作时需要消耗的计算环境资源。优选地,定资源调度器为每一个功能模块初分配的资源量的具体方法为:步骤2-1、构建如下单纯形表:MinZ=c1x1+c2x2+c3x3+c4x4+c5x5步骤2-2、对单纯形表引入人工变量得如下变式:MinZ=c1x1+c2x2+c3x3+c4x4+c5x5+0x6+0x7+0x8式中,ci表示机器人对第i个功能模块的需求度,aji表示第i个功能模块对第j种计算环境资源的额定消耗量,bj表示第j种计算环境资源的总许用量,xi表示资源调度器对第i个功能模块的初分配结果;利用单纯形法对引入人工变量的单纯形表进行迭代求解,得到在当前软件系统总许用资源的限制下,资源调度器为每一个功能模块初分配的资源量xi。优选地,设计协同补偿器,将协同补偿器输出的协同补偿量附加至初分配的资源量上,得到为每个功能模块最终分配的资源量的具体方法为:步骤3-1、根据为每个功能模块初分配的资源量,以及当前每个功能模块的实际资源占用量确定每个功能模块的资源占用调节差,具体为:其中,eij为第i个功能模块内部对第j种资源占用调节差,表示第i个功能模块当前的实际资源占用量;步骤3-2、根据得到的调节差,确定第i个功能模块对第j种资源占用的协同误差ξij为:步骤3-3、根据步骤3-2得到的每个功能模块的协同误差,设计模块内补偿律为:Compensateij=-kijξijsgn(eij)其中,kij为可调参数,Compensateij表示第i个功能模块对第j种资源占用的协同补偿量;步骤3-4、确定为每个功能模块最终分配的资源量为:本专利技术与现有技术相比,其显著优点为:1)本专利技术更多的结合了控制工程中的控制理论,利用反馈保证系统调节的精度,并合理控制软件系统对计算环境资源的占用,保障机器人的工作性能;2)本专利技术通过引入控制理论的知识得到了适用于当前巡检机器人后台主控软件系统的软件自适应设计,体现了将控制理论应用于软件行为调整的有效性;3)本专利技术设计简单,方便应用于实际系统中。附图说明图1为资源控制与分配设计框架图。图2为单纯形法计算流程图。图3为协同补偿器设计框图。图4为实施例中软件功能模块划分。图5为实施例中结合协同控制的机器人软件模块间资源调度的MATLAB仿真结构。图6为实施例中基于协同控制下的软件自适应演化模拟实验结果图。具体实施方式如图1~3所示,一种结合协同控制的机器人软件模块间资源调度方法,包括以下步骤:步骤1、根据功能分布将软件系统划分为多个工作相互独立的功能模块,并确定各模块的计算环境资源、机器人对该模块的需求度等信息;在某些实施例中,根据软件系统的功能需求,结合多线程设计方法,在软件系统中采用多个软件功能模块并行工作的编程方式,各功能模块间只存在数据通讯,互相不影响工作状态。每一个模块可以看作为一个原子整体,通过消耗一定的资源来提供相应服务。在某些实施例中,通过分别运行单一功能模块的方式,记录每一个功能模块正常工作时需要消耗的计算环境资源(如CPU占用、内存占用等)。同时,结合实际机器人工作中的使用经验,确定机器人工作时对每个功能模块的需求度。步骤2、根据步骤1中划分的功能模块,以及得到的计算环境资源与需求度,确定资源调度器为每一个功能模块初分配的资源量,通过资源调度器将软件系统的总许用资源分配至每一个功能模块。进一步的实施例中,具体方法为:结合单纯形法,设计资源调度器。令ci表示机器人对第i个功能模块的需求度,aji表示第i个功能模块对第j种计算环境资源的额定消耗量,bj表示第j种计算环境资源的总许用量,xi表示资源调度器对第i个功能模块的初分配结果,构建如下单纯形表:MinZ=c1x1+c2x2+c3x3+c4x4+c5x5对上式引入人工变量得如下变式:MinZ=c1x1+c2x2+c3x3+c4x4+c5x5+0x6+0x7+0x8由于加入的人工变量对目标函数没有贡献,所以不会影响到最后的最优解规划结果。利用单纯形法对上式进行迭代求解,可以得到在当前软件系统总许用资源的限制下,资源调度器为每一个功能模块初分配的资源量xi。步骤3、根据步骤2得到的为每个功能模块初本文档来自技高网...

【技术保护点】
1.一种结合协同控制的机器人软件模块间资源调度方法,其特征在于,包括以下步骤:/n步骤1、根据功能分布将软件系统划分为工作相互独立的功能模块,并确定各模块的计算环境资源、机器人对该模块的需求度;/n步骤2、根据划分的功能模块,以及得到的计算环境资源与需求度,确定资源调度器为每一个功能模块初分配的资源量,通过资源调度器将软件系统的总许用资源分配至每一个功能模块;/n步骤3、根据为每个功能模块初分配的资源量,以及当前每个功能模块的实际资源占用量,设计协同补偿器,将协同补偿器输出的协同补偿量附加至初分配的资源量上,得到为每个功能模块最终分配的资源量;/n步骤4、重复进行步骤2、步骤3,使得整个软件系统的资源占用符合许用资源预期。/n

【技术特征摘要】
1.一种结合协同控制的机器人软件模块间资源调度方法,其特征在于,包括以下步骤:
步骤1、根据功能分布将软件系统划分为工作相互独立的功能模块,并确定各模块的计算环境资源、机器人对该模块的需求度;
步骤2、根据划分的功能模块,以及得到的计算环境资源与需求度,确定资源调度器为每一个功能模块初分配的资源量,通过资源调度器将软件系统的总许用资源分配至每一个功能模块;
步骤3、根据为每个功能模块初分配的资源量,以及当前每个功能模块的实际资源占用量,设计协同补偿器,将协同补偿器输出的协同补偿量附加至初分配的资源量上,得到为每个功能模块最终分配的资源量;
步骤4、重复进行步骤2、步骤3,使得整个软件系统的资源占用符合许用资源预期。


2.根据权利要求1所述的结合协同控制的机器人软件模块间资源调度方法,其特征在于,各模块的计算环境资源的确定方法为:
分别运行单一功能模块,记录每一个功能模块正常工作时需要消耗的计算环境资源。


3.根据权利要求1所述的结合协同控制的机器人软件模块间资源调度方法,其特征在于,定资源调度器为每一个功能模块初分配的资源量的具体方法为:
步骤2-1、构建如下单纯形表:
MinZ=c1x1+c2x2+c3x3+c4x4+c5x5






步骤2-2、对单纯形表引入人工变量得如下变式:
MinZ=c1x1+c2x2+c3x3+c4x4+c5x5+0x...

【专利技术属性】
技术研发人员:郭健屠腾宋恺秦逸马晓星李胜
申请(专利权)人:南京理工大学南京大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1