CN103235877B - 机器人控制软件模块划分方法 - Google Patents

机器人控制软件模块划分方法 Download PDF

Info

Publication number
CN103235877B
CN103235877B CN201310127368.XA CN201310127368A CN103235877B CN 103235877 B CN103235877 B CN 103235877B CN 201310127368 A CN201310127368 A CN 201310127368A CN 103235877 B CN103235877 B CN 103235877B
Authority
CN
China
Prior art keywords
module
degree
sigma
correlation
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201310127368.XA
Other languages
English (en)
Other versions
CN103235877A (zh
Inventor
贾松敏
郭兵
王可
庞雄伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201310127368.XA priority Critical patent/CN103235877B/zh
Publication of CN103235877A publication Critical patent/CN103235877A/zh
Application granted granted Critical
Publication of CN103235877B publication Critical patent/CN103235877B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于机器人领域,公布了一种机器人控制软件模块划分方法。首先,将系统按最小机能划分,得到功能粒度最小的元素样本集。然后,从功能和结构的角度对样本集元素进行相关性分析,应用模糊树图聚类方法将具有一定相关性的元素聚类合并。通过选取不同的阈值得到各子树在不同水平上的划分方案。最后,根据信息熵思想综合评价模块划分方案,并选取最优划分结果。通过采用模糊聚类与层次分析的结合量化系统元素之间的相关度,减少了模块划分中人为因素的影响,降低了机器人控制软件模块化过程的难度;通过信息熵思想提出数学评价模型,为机器人软件系统模块划分粒度问题提供了合理有效的解决方案,缩短模块划分的开发周期,降低系统的开发成本。

Description

机器人控制软件模块划分方法
技术领域
本发明属于机器人领域,具体涉及机器人控制软件模块化技术,特别是模糊聚类与层次分析法相结合的机器人控制软件模块划分方法,基于信息熵思想的机器人软件模块化系统评价方法。
背景技术
近年来,随着机器人研究领域的不断发展,机器人模块化控制技术逐渐成为研究的热点,模块划分方法是该技术的关键,如何合理有效地划分机器人软件控制系统成为机器人模块化研究亟待解决的问题。
经对现有技术的文献检索发现,现已有多种模块化的机器人系统。如比,专利号为5523662的美国专利公开了一种模块化、可扩展和可重构的机器人系统,该机器人系统至少包含2个由一些紧凑型的转动关节所组成的机械手模块,每个模块可以被拆卸并重装成各种不同的配置形式。专利号为US2008/0046121A1的美国专利公开了一种可重构模块化机器人的开发系统,该系统包括:一个包含通信接口的单片机,一个连接人机接口的主控制器,一个命令和信号传输模块,以及执行命令的从控制器和一个功能模块。然而,以上两种技术侧重在机器人系统实现上,没有提出控制软件的划分以及模块划分的原则和方法,很难使其中所提到的模块化系统推广使用和普及。
公开号为CN100488732C的中国专利“模块化及标准组件构成的机器人”,提出了一种由能量模块、规划控制模块、驱动模块、传感模块、通讯模块、连接件组成的模块化机器人,连接件通过标准通讯接口连接,方便组件之间的组装公开号为CN101879720A的中国专利“可重构模块化机器人的控制系统”,提供了一个开放的、灵活的、图形化的控制系统。以上两种技术由均设计者根据自己的经验定义系统划分方案,缺乏定量的评价模型,很难获得最优的划分结果。
发明内容
针对机器人系统控制软件模块划分中存在的上述问题,本发明提供了一种通用的机器人控制软件模块划分方法,旨在降低人为因素对模块划分的影响,实现机器人系统控制软件模块化的定量评价,为不同划分粒度下的系统评价提供依据。
本发明采用如下的技术方案:首先,将系统按最小机能划分,使系统划分粒度最小,得到功能粒度最小的元素样本集;然后,从功能和结构的角度对样本集元素进行相关性分析,应用模糊树图聚类方法将具有一定相关性的元素聚类合并。通过选取不同的阈值可以得到各子树在不同水平上的划分方案。最后,根据信息熵思想,从集成复杂度、内聚度、耦合度和负载均衡度四个方面综合评价模块划分方案,并选取最优划分结果。
一种机器人控制软件模块划分方法,其特征在于包括以下步骤:
步骤一,将机器人控制软件按照最小功能进行划分,得到功能粒度最小的元素样本集。
步骤二,从功能和结构的角度对软件最小粒度元素样本集进行相关性分析。
功能交互主要体现在各元素之间的控制流、数据流、信息流和调用流的转换和传输上;结构相关性是指样本元素在内存空间、网络节点分布以及对硬件依赖等方面的相关性,本发明主要从组合类型、联接类型和配合方式3个方面衡量样本元素间的结构相关性。具体方法如下:
(1)确定功能相关性评价指标,建立各个指标的量化值;
(2)确定结构相关性评价指标,建立各个指标的量化值;
(3)建立相关性计算数学模型。
以rij表示样本集中元素i与元素j的相关度,即交互作用程度。相关度的构造方法为:
r ij = w f r ij f + w s r ij s ( i ≠ j ) 1 ( i = j ) ( i , j ∈ { 1,2 , . . . , n } ) - - - ( 1 )
r ij s = Σ k = 1 3 w s k r ij s k ( i ≠ j ) 1 ( i = j ) ( i , j ∈ { 1,2 , . . . , n } ) - - - ( 2 )
其中,为元素i与元素j的功能相关度,为元素i与元素j的结构相关度,为元素i与元素j的第k个结构相关准则的相关度(k=1,2,3),wf为功能相关准则的权重系数,ws为结构相关准则的权重系数,为第k个结构相关准则的权重系数(k=1,2,3)。
步骤三,运用层次分析法获取功能和结构评价准则对元素样本间相关性的权重系数(wf和ws)。
层次分析法(AnalyticalHierarchyProcess,简称AHP方法),是一种定性与定量相结合的决策分析方法。它是一种将决策者对复杂系统的决策思维过程模型化、数量化的过程。
AHP法的具体方法如下:
(1)建立层次结构模型
本发明中将模块划分问题划分为三层结构,最上层为目标,即将机器人控制软件模块化;中间层为准则层,包括四个相关性准则:功能相关性、接口数量、接口联接类型和硬件依赖关联类型;最下层为方案层,即模块划分方案。
(2)构造成对比较矩阵
构造判断矩阵的方法是:每一个具有向下隶属关系的元素(被称作准则)作为判断矩阵的第一个元素(位于左上角),隶属于它的各个元素依次排列在其后的第一行和第一列。
设某层有n个因素:X={x1,x2,...,xn},要比较它们对上一层某一准则(或目标)的影响程度,确定在该层中相对于某一准则所占比重。
用aij表示第i个因素相对于第j个因素的比较结果,得到下面的成对比较矩阵:
A = ( a ij ) n × n = a 11 a 12 · · · a 1 n a 21 a 22 · · · a 2 n · · · · · · · · · · · · a n 1 a n 2 · · · a nn - - - ( 3 )
(3)层次单排序及一致性检验
层次单排序是指每一个判断矩阵各因素针对其目标的相对权重,所以本质上是计算权向量。计算权向量有特征根法、和法、根法、幂法等,本发明采用和法计算权向量。
和法的原理是,对于一致性判断矩阵,每一列归一化后就是相应的权重。对于非一致性判断矩阵,每一列归一化后近似其相应的权重,在对这n个列向量求取算术平均值作为最后的权重。
需要注意的是,在层层排序中,要对判断矩阵进行一致性检验。
在特殊情况下,判断矩阵可以具有传递性和一致性。一般情况下,并不要求判断矩阵严格满足这一性质。但从人类认识规律看,一个正确的判断矩阵重要性排序是有一定逻辑规律的,例如,若A比B重要,B又比C重要,则从逻辑上讲,A应该比C明显重要,若两两比较时出现A比C重要的结果,则该判断矩阵违反了一致性准则,在逻辑上是不合理的。
因此在实际中要求判断矩阵满足大体上的一致性,需进行一致性检验。只有通过检验,才能说明判断矩阵在逻辑上是合理的,才能继续对结果进行分析。
层次单排序及一致性检验的方法如下:
首先,按下式计算权向量:
W i = 1 n Σ j = 1 n aij Σ k = 1 n akj - - - ( 4 )
其中,Wi为第i行的权向量,aij为上面得到的成对比较矩阵中的元素。
然后,进行一致性检验,步骤如下:
(a)按下式计算一致性指标C.I.(ConsistencyIndex):
C . I . = λ max - n n - 1 - - - ( 5 )
(b)查表确定相应的平均随机一致性指标R.I.(RandomIndex)
将经多次正互反矩阵计算得出的平均随机一致性指标R.I.列成表格,根据判断矩阵不同阶数表中查出R.I.。
(c)计算一致性比例C.R.(ConsistencyRatio),并进行判断。C.R.的计算公式为:
C . R . = C . I . R . I . - - - ( 6 )
当C.R.<0.1时,认为判断矩阵的一致性是可以接受的;C.R.>0.1时,认为判断矩阵不符合一致性要求,需要对判断矩阵进行重新修正。
(4)层次总排序及其一致性检验
总排序是指每一个判断矩阵各因素针对目标层(最上层)的相对权重。这一权重的计算采用从上而下的方法,逐层合成。
假定已经算出第k-1层m个元素相对于总目标的权重w(k-1)=(w1 (k-1),w2 (k-1),...,wm (k-1))T,第k层n个元素对于上一层(第k层)第j个元素的单排序权重是其中不受j支配的元素的权重为零。令表示第k层元素对第k-1层元素的排序,则第k层元素对于总目标的总排序为:
w ( k ) = ( w 1 ( k ) , w 2 ( k ) , . . . , w n ( k ) ) T = p ( k ) w ( k - 1 )
或:
w i ( k ) = Σ j = 1 m p ij ( k ) w j ( k - 1 ) i = 1,2 , . . . , n
假定已经算出针对第k-1层第j个元素为准则的 j=1,2,...,m,则第k层的综合检验指标:
C . I . j ( k ) = w ( k - 1 ) Σ j = 1 m C . I . j ( k )
R . I . j ( k ) = w ( k - 1 ) Σ j = 1 m R . I . j ( k )
C . R . ( k ) = C . I . ( k ) R . I . ( k )
当C.R.(k)<0.1时,认为判断矩阵的整体一致性是可以接受的。
步骤四,根据前面三个步骤得到的数据计算相关性矩阵,采用模糊最大树聚类对样本集聚类分析。
模糊聚类是采用模糊数学方法,依据客观事物的特征、亲疏程度和相似性,通过建立模糊相似关系对客观事物进行分类的一门多元技术。模糊聚类分析主要有传递闭包法、动态直接聚类法和最大树法3种算法。本发明采用最大树模糊聚类法进行软件元素的聚类分析。该方法的主要步骤为:
(1)建立模糊相似矩阵
建立模糊相似矩阵rij为步骤二提出的样本集中元素i与元素j的相关度。
(2)画出最大树
步骤一中得到的样本元素之间的关系可以采用模糊关系图G=(V,R*)来表示,V是一个以N个软件元素为节点的集合,R*是由关系矩阵R得到的节点之间的模糊相似关系。
若E={ek=vivj|R*(vi,vj)>0;vi,vj∈V},则称G*=(V,E)是G=(V,R*)的基础图。边vivj赋权w(vivj)=rij(i≠j)。设T是G的生成树,若对于G的一切生成树T′都有:
&Sigma; e &Element; E ( T &prime; ) w ( e ) &le; &Sigma; e &Element; E ( T ) w ( e )
则称T是模糊图G的最大生成树。
构造最大树的方法如下:
a.将模糊相似关系矩阵中的rij由大到小排序:β1>β2>...>βh,其中βk(k=1,2,...,h)为某rij
b.以被分类的对象为顶点,依据模糊相似矩阵将关联程度为β1的顶点连接,并在相应的线段上标明相关度值β1,若在连接某两个顶点时出现回路,则不画此线;
c.依次对β23,...,βk(k≤h)按照上步重复操作,直到所有顶点构成一个无向连通赋权图(不一定到h步),即得到最大树T。
(3)得到聚类结果
根据最大生成树中的w(e),选取不同的阈值λ,对其中w(e)<λ的边进行截割,得到的各个子树就是T在λ水平上的一个模块划分方案。
λ在[0,1]范围内依次取值,可以得到不同的划分方案。
步骤五,根据信息熵思想综合评价模块划分方案,并选取最优划分结果。
通过模糊聚类算法会得到基于不同阈值的划分方案,即粒度不同的划分方案,不同的划分方案对系统产生不同的影响。在信息论中,信息熵可用作某事件不确定度的量度。而对于一个系统,信息熵可以用来度量系统的有序化程度及其不确定性,该不确定性则直接决定了一个系统的可实现性与稳定性。将每种划分方案看作一个具有复杂度的系统,通过确定方案评价指标和对每项指标的量化计算,并对所有指标进行综合计算和比较,从而确定较合理的划分方案。
方案评价指标由下面四项构成:
(1)集成复杂度
在机械构件的模块划分方案评价中将装配复杂度作为一项指标,通过考察模块的接口数量,建立信息熵数学模型。但在软件的模块评价中仅仅考察接口数量是不够的,还应包括模块接口的数据传输数量。本发明采用接口数量与接口中传输数据量相结合的信息熵模型作为集成复杂度的评价。
集成复杂度L1的计算公式如下:
L 1 = &Sigma; i = 1 N d i K &Sigma; j = 1 K 2 N &Sigma; q = 1 n j b jq ln 2 N &Sigma; q = 1 n j b jq
其中,K为模块总数,N为接口总数,di为接口的输入输出数据量(字节表示),bjq为模块j中第q功能的接口数,nj为模块j中的功能个数。
(2)模块间耦合度
耦合度是从模块外部考察模块的独立性程度。它用来衡量多个模块间的相互联系。本发明从功能和结构两个方面来考虑模块间的耦合度。
耦合度L2的计算公式如下:
L 2 = &Sigma; i = 1 k &Sigma; j = 1 j &NotEqual; i k l 1 ij f l 2 ij s
其中,为第i个模块与第j个模块的功能相关度,为第i个模块与第j个模块的结构相关度。
(3)模块内聚度
内聚度是模块内部各功能元素之间的联系。模块内部各成分联系越紧密,系统越易理解和维护。具有良好内聚度的模块可以很好的满足信息局部化的原则。模块内聚度按由弱到强的顺序,模块内元素间的内聚度分为6类:无联系,偶然内聚,时间内聚,通信内聚,顺序内聚和功能内聚。
内聚度L3的计算公式如下:
L 3 = &Sigma; i = 1 k &Sigma; j = 1 N &Sigma; q = 1 q &NotEqual; j N l ijq f
其中,为第i个模块中第j个功能与第q个功能的相关度。
(4)负载均衡度
负载均衡度表示衡量系统各模块负载均衡程度。一个模块化的系统,各模块总的负载是固定的,各模块间负载越均衡系统越稳定,越有利于系统的维护。本发明参考软件模块内的时间复杂度因素,结合信息熵模型给出负载均衡度评价模型。
负载均衡度L4的计算公式如下:
L 4 = &Sigma; j = 1 N x j &Sigma; k = 1 N x k ln ( x j &Sigma; k = 1 N x k ) ln N
其中,xi、xj、xk分别表示第i,j,k模块的时间复杂度,N表示总的模块数。将所得的评价指标按下述公式正规化处理:
L 1 * = L 1 - L 1 min L 1 max - L 1 min
L 2 * = L 2 - L 2 min L 2 max - L 2 min
L 3 * = L 3 max - L 3 L 3 max - L 3 min
L 4 * = L 4 max - L 4 L 4 max - L 4 min
综合集成复杂度、内聚度、耦合度以及负载均衡度,建立以下数学评价模型:
min { H = L 1 * + L 2 * + L 3 * + L 4 * }
分别计算各方案各评价指标的值,再计算H的值,得到的H值最小的方案为较合理的方案。
本发明的有益效果是:本发明提供了一种机器人控制软件模块相关性分析模型,基于该模型采用模糊聚类与层次分析的结合量化系统元素之间的相关度,减少了模块划分中人为因素的影响,降低了机器人控制软件模块化过程的难度;通过信息熵思想提出数学评价模型,为机器人软件系统模块划分粒度问题提供了合理有效的解决方案,缩短模块划分的开发周期,降低系统的开发成本。
附图说明
图1为本发明所涉及的方法流程图;
图2为本发明所涉及的层次结构模型图;
图3为移动机器人地图创建系统的模糊最大生成树。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步的说明。
本发明所涉及的方法流程图如附图1所示,包括以下几个步骤:
步骤一,将机器人控制软件按照最小功能进行划分,得到功能粒度最小的元素样本集。
步骤二,从功能和结构的角度对软件最小粒度元素样本集进行相关性分析。
功能独立性是模块的一个重要特性,在对机器人控制软件模块划分时,将那些为实现同一功能的元素聚在一起构成模块,并保持功能独立,避免功能耦合的现象,有助于提高模块的功能独立性和系统的稳定性。功能相关性评价准则如表1所示。
表1功能相关性评价指标
机器人软件模块划分充分考虑结构因素,不仅可以提高模块化程度,还有助于系统的管理与维护。本发明从三个方面考虑结构相关准则:软件元素间接口连接数量,软件元素间接口联接类型,软件元素硬件依赖关联类型。具体内容见表2。
表2结构相关性评价准则
步骤三,运用层次分析法获取功能和结构评价准则对元素样本间相关性的权重系数wf和ws,具体方法如下:
(1)建立层次结构模型
本发明中将模块划分问题划分为三层结构,如图2所示,最上面为目标:将机器人控制软件模块化;中间层为准则层,包括四个相关性准则:功能相关性、接口数量、接口类型和硬件依赖关联类型;最下面为方案层,即模块划分方案。
(2)构造成对比较矩阵
设某层有n个因素:X={x1,x2,L,xn},要比较它们对上一层某一准则(或目标)的影响程度,确定在该层中相对于某一准则所占比重。上述比较是两两因素之间进行的比较,比较时取1~9尺度。尺度含义见表3所示,尺度为2,4,6,8时,第i个因素与第j个因素的影响分别介于表中与之两个相邻的两个等级之间。
表3比较尺度(1~9尺度的含义)
按公式(3)计算成对比较矩阵。
(3)进行层次单排序及一致性检验
首先,按公式(4)计算权向量,然后,进行一致性检验,步骤如下:
(a)按公式(5)计算一致性指标C.I.(ConsistencyIndex)
(b)查表确定相应的平均随机一致性指标R.I.(RandomIndex)
表4是经1000次正互反矩阵计算得出的平均随机一致性指标R.I.。根据判断矩阵不同阶数从表4中查出R.I.。例如,对于5阶的判断矩阵,查表得到R.I.=1.12。
表4平均随机一致性指标R.I.
(c)按公式(6)计算一致性比例C.R.(ConsistencyRatio),并进行判断。
当C.R.<0.1时,认为判断矩阵的一致性是可以接受的;C.R.>0.1时,认为判断矩阵不符合一致性要求,需要对判断矩阵进行重新修正。
(4)层次总排序与检验
总排序是指每一个判断矩阵各因素针对目标层(最上层)的相对权重。这一权重的计算采用从上而下的方法,逐层合成。
步骤四,根据前面三个步骤得到的数据计算得到相关性矩阵,采用模糊最大树聚类法对样本集聚类分析。
按公式(1)、(2)计算相关度,进而得到相关性矩阵。
步骤五,根据信息熵思想综合评价模块划分方案,并选取最优划分结果。
下面给出本发明的一个应用实例。
采用最小机能划分得到粒度最小的划分方案,该方案由串口驱动模块(M1)、激光控制模块(M2)、机器人控制模块(M3)、里程计模块(M4)、PF模块(M5)、局部地图创建模块(M6)、全局地图创建模块(M7)和GUI模块(M8)组成。
根据模块间功能和结构相关度评价准则,对各模块之间进行功能和结构相关度分析,最后综合得到子结构之间的模糊关系矩阵R,如表5所示。
表5移动机器人地图创建系统的模糊关系矩阵R
根据模块间的模糊关系矩阵,运用模糊树图方法的生成步骤,得到其模糊最大生成树,如图3所示。取λ∈[0,1]变化,对模糊最大生成树进行截割,得到下面不同的模块划分方案(Pi为划分得到的模块):
(1)P1=M1,P2=M2,P3=M3,P4=M4,P5=M5,P6=M6,P7=M7,P8=M8
(2)P1=(M1+M2),P2=(M3+M4),P3=M5,P4=M6,P5=M7,P6=M8
(3)P1=(M1+M2+M3+M4),P2=M5,P3=M6,P4=M7,P5=M8
(4)P1=(M1+M2+M3+M4),P2=M5,P3=(M6+M7+M8);
(5)P1=(M1+M2+M3+M4+M5+M6+M7+M8)。
根据评价模型以及模块的参数计算得到各方案评价的量化结果,见表6。当λ取0.82时得到的划分方案为较合理的方案。方案(3)中将串口驱动、激光控制、里程计、机器人四个元素划分为一个模块。这四部分与机器人硬件相关,并且都分布在机器人平台上,合并为一个模块对于系统维护更为方便,其余元素均单独划分为模块,有利于代码的重复利用。
表6模块划分方案评价

Claims (4)

1.一种机器人控制软件模块划分方法,其特征在于包括以下步骤:
步骤一,将机器人控制软件按照最小功能进行划分,得到功能粒度最小的元素样本集;
步骤二,从功能和结构的角度对软件最小粒度元素样本集进行相关性分析;
步骤三,运用层次分析法获取功能和结构评价准则对元素样本间相关性的权重系数,方法如下:
(1)建立层次结构模型
将模块划分问题划分为三层结构,最上层为目标,即将机器人控制软件模块化;中间层为准则层,包括四个相关性准则:功能相关性、接口数量、接口类型和硬件依赖关联类型;最下层为方案层,即模块划分方案;
(2)构造成对比较矩阵
将每一个具有向下隶属关系的元素作为判断矩阵的第一个元素位于左上角,隶属于它的各个元素依次排列在其后的第一行和第一列;
设某层有n个因素:X={x1,x2,...,xn},要比较它们对上一层某一准则或目标的影响程度,确定在该层中相对于某一准则所占比重;
用aij表示第i个因素相对于第j个因素的比较结果,得到下面的成对比较矩阵:
A = ( a i j ) n &times; n = a 11 a 12 ... a 1 n a 21 a 22 ... a 2 n ... ... ... ... a n 1 a n 2 ... a n n
(3)层次单排序及一致性检验
层次单排序是指每一个判断矩阵各因素针对其准则的相对权重,层次单排序及一致性检验的方法如下:
首先,按下式计算权向量:
W i = 1 n &Sigma; j = 1 n a i j &Sigma; k = 1 n a k j
其中,Wi为第i行的权向量,aij为上面得到的成对比较矩阵中的元素;
然后,进行一致性检验,方法如下:
(a)按下式计算一致性指标C.I.:
C . I . = &lambda; m a x - n n - 1
λmax为最大特征值;
(b)查表确定相应的平均随机一致性指标R.I.
将经多次正互反矩阵计算得出的平均随机一致性指标R.I.列成表格,根据判断矩阵不同阶数表中查出R.I.;
(c)计算一致性比例C.R.,并进行判断;C.R.的计算公式为:
C . R . = C . I . R . I .
当C.R.<0.1时,认为判断矩阵的一致性是可以接受的;C.R.>0.1时,认为判断矩阵不符合一致性要求,需要对判断矩阵进行重新修正;
(4)层次总排序及其一致性检验
总排序是指每一个判断矩阵各因素针对目标层最上层的相对权重,这一权重的计算采用从上而下的方法,逐层合成;
假定已经算出第k-1层m个元素相对于总目标的权重w(k-1)=(w1 (k-1),w2 (k-1),...,wm (k-1))T,第k层n个元素对于上一层即第k层第j个元素的单排序权重是其中不受j支配的元素的权重为零;令表示第k层元素对第k-1层元素的排序,则第k层元素对于总目标的总排序为:
w ( k ) = ( w 1 ( k ) , w 2 ( k ) , ... , w n ( k ) ) T = p ( k ) w ( k - 1 )
或:
w i ( k ) = &Sigma; j = 1 m p i j ( k ) w j ( k - 1 ) , i = 1 , 2 , ... , n
假定已经算出针对第k-1层第j个元素为准则的j=1,2,...,m,则第k层的综合检验指标:
C . I . j ( k ) = w ( k - 1 ) &Sigma; j = 1 m C . I . j ( k )
R . I . j ( k ) = w ( k - 1 ) &Sigma; j = 1 m R . I . j ( k )
C . R . ( k ) = C . I . ( k ) R . I . ( k )
当C.R.(k)<0.1时,认为判断矩阵的整体一致性是可以接受的;
步骤四,根据前面三个步骤得到的数据计算得到相关性矩阵,采用模糊最大树聚类法对样本集聚类分析,方法如下:
(1)建立模糊相似矩阵
建立模糊相似矩阵R=(rij)n×m,rij为步骤二提出的样本集中元素i与元素j的相关度;
(2)画出最大树
系统各元素之间的关系可以采用模糊关系图G=(V,R*)来表示,V是一个以N个软件元素为节点的集合,R*是由关系矩阵R得到的节点之间的模糊相似关系;
若E={ek=vivj|R*(vi,vj)>0;vi,vj∈V},则称G*=(V,E)是G=(V,R*)的基础图;边vivj赋权w(vivj)=rij(i≠j);设T是G的生成树,若对于G的一切生成树T′都有:
&Sigma; e &Element; E ( T &prime; ) w ( e ) &le; &Sigma; e &Element; E ( T ) w ( e )
则称T是模糊图G的最大生成树;
构造最大树的方法如下:
a.将模糊相似关系矩阵中的rij由大到小排序:β1>β2>...>βh,其中βk为某rij,k=1,2,...,h;
b.以被分类的对象为顶点,依据模糊相似矩阵将关联程度为β1的顶点连接,并在相应的线段上标明相关度值β1,若在连接某两个顶点时出现回路,则不画此线;
c.依次对β23,...,βk,k≤h,按照上步重复操作,直到所有顶点构成一个无向连通赋权图,即得到最大树T;
(3)得到聚类结果
根据最大生成树中的w(e),选取不同的阈值λ,对其中w(e)<λ的边进行截割,得到的各个子树就是T在λ水平上的一个模块划分方案;
λ在[0,1]范围内依次取值,可以得到不同的划分方案;
步骤五,根据信息熵思想综合评价模块划分方案,并选取最优划分结果;
将每种划分方案看作一个具有复杂度的系统,通过确定方案评价指标和对每项指标的量化计算,并对所有指标进行综合计算和比较,从而确定较合理的划分方案。
2.根据权利要求1所述的一种机器人控制软件模块划分方法,其特征在于,步骤二对软件最小粒度元素样本集进行相关性分析的方法如下:
(1)确定功能相关性评价指标,建立各个指标的量化值;
(2)确定结构相关性评价指标,建立各个指标的量化值;
(3)建立相关性计算数学模型;
以rij表示样本集中元素i与元素j的相关度,即交互作用程度,相关度的构造算法为:
r i j = w f r i j f + w s r i j s 1 &NotEqual; j 1 i = j , i , j &Element; { 1 , 2 , ... , n }
r i j s = &Sigma; k = 1 3 w s k r i j s k i &NotEqual; j 1 i = j , i , j &Element; { 1 , 2 , ... , n }
其中,为元素i与元素j的功能相关度,为元素i与元素j的结构相关度,为元素i与元素j的第k个结构相关准则的相关度k=1,2,3,wf为功能相关准则的权重系数,ws为结构相关准则的权重系数,为第k个结构相关准则的权重系数k=1,2,3。
3.根据权利要求1所述的一种机器人控制软件模块划分方法,其特征在于,步骤五中的方案评价指标由下面四项构成:
(1)集成复杂度
采用接口数量与接口中传输数据量相结合的信息熵模型作为集成复杂度的评价,集成复杂度L1的计算公式如下:
L 1 = &Sigma; i = 1 N d i K &Sigma; j = 1 K 2 N &Sigma; q = 1 n j b j q l n 2 N &Sigma; q = 1 n j b j q
其中,K为模块总数,N为接口总数,di为接口的输入输出数据量,bjq为模块j中第q功能的接口数,nj为模块j中的功能个数;
(2)模块间耦合度
耦合度是从模块外部考察模块的独立性程度,用来衡量多个模块间的相互联系;
耦合度L2的计算公式如下:
L 2 = &Sigma; i = 1 k &Sigma; i = 1 j &NotEqual; i k l 1 i j f l 2 i j s
其中,为第i个模块与第j个模块的功能相关度,为第i个模块与第j个模块的结构相关度;
(3)模块内聚度
内聚度是模块内部各功能元素之间的联系;模块内聚度按由弱到强的顺序,模块内元素间的内聚度分为6类:无联系,偶然内聚,时间内聚,通信内聚,顺序内聚和功能内聚;
内聚度L3的计算公式如下:
L 3 = &Sigma; i = 1 k &Sigma; j = 1 N &Sigma; q = 1 q &NotEqual; j N l i j q f
其中,为第i个模块中第j个功能与第q个功能的相关度;
(4)负载均衡度
负载均衡度是衡量系统各模块负载均衡程度的一个量;参考软件模块内的时间复杂度因素,结合信息熵模型给出负载均衡度评价模型;
负载均衡度L4的计算公式如下:
L 4 = &Sigma; j = 1 N x j &Sigma; k = 1 N x k ln ( x j &Sigma; k = 1 N x k ) ln N
其中,xi、xj、xk分别表示第i,j,k模块的负载均衡度;N表示总的模块数。
4.根据权利要求3所述的一种机器人控制软件模块划分方法,其特征在于,步骤五中对所有指标进行综合计算和比较,从而确定较合理的划分方案的方法如下:
首先,将所得的评价指标按下述公式正规化处理:
L 1 * = L 1 - L 1 m i n L 1 m a x - L 1 m i n
L 2 * = L 2 - L 2 m i n L 2 m a x - L 2 m i n
L 3 * = L 3 m a x - L 3 L 3 m a x - L 3 m i n
L 4 * = L 4 m a x - L 4 L 4 m a x - L 4 m i n
然后,综合集成复杂度、内聚度、耦合度以及负载均衡度,建立以下数学评价模型:
m i n { H = L 1 * + L 2 * + L 3 * + L 4 * }
分别计算各方案各评价指标的值,再计算H的值,得到的H值最小的方案为较合理的方案。
CN201310127368.XA 2013-04-12 2013-04-12 机器人控制软件模块划分方法 Expired - Fee Related CN103235877B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310127368.XA CN103235877B (zh) 2013-04-12 2013-04-12 机器人控制软件模块划分方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310127368.XA CN103235877B (zh) 2013-04-12 2013-04-12 机器人控制软件模块划分方法

Publications (2)

Publication Number Publication Date
CN103235877A CN103235877A (zh) 2013-08-07
CN103235877B true CN103235877B (zh) 2016-04-06

Family

ID=48883917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310127368.XA Expired - Fee Related CN103235877B (zh) 2013-04-12 2013-04-12 机器人控制软件模块划分方法

Country Status (1)

Country Link
CN (1) CN103235877B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559025B (zh) * 2013-10-21 2017-01-25 沈阳建筑大学 一种采用聚类方式进行软件重构的方法
CN104574141A (zh) * 2014-12-23 2015-04-29 中国移动通信集团广东有限公司 一种业务影响度分析方法
CN106022480B (zh) * 2016-05-13 2018-11-02 北京工业大学 基于d-s证据理论的机器人功能模块粒度划分评价方法
CN108256760B (zh) * 2018-01-15 2021-08-24 中国人民解放军陆军装甲兵学院 基于信息熵的系统功能模块划分评价方法
CN109814921B (zh) * 2019-01-24 2020-10-02 华东师范大学 一种软件结构复杂度降解方法、设备及存储介质
CN110322025B (zh) * 2019-06-25 2023-05-26 北京航空航天大学 一种基于功能、结构与信息相关的lru划分方法、装置及应用
CN110378437B (zh) * 2019-07-26 2023-03-24 西安工业大学 一种考虑变更传播影响的产品模块分类方法
CN110688239A (zh) * 2019-09-27 2020-01-14 上海依图网络科技有限公司 模型的调用方法、装置、设备及计算机可读存储介质
CN111352650B (zh) * 2020-02-25 2023-06-30 杭州电子科技大学 一种基于insga-ii的软件模块化多目标优化方法及系统
CN111625978B (zh) * 2020-05-21 2023-04-07 河南科技大学 一种基于模块化的数控卧式车床设计方法
CN112989621B (zh) * 2021-03-31 2023-06-23 建信金融科技有限责任公司 一种模型性能评价方法、装置、设备及存储介质
CN113393729A (zh) * 2021-06-30 2021-09-14 哈尔滨工业大学 一种模块化可重构的工业机器人实训平台
CN113687812B (zh) * 2021-08-25 2022-09-09 中国人民解放军国防科技大学 信息系统体系结构构建方法、电子设备及存储介质
CN117055849A (zh) * 2023-03-14 2023-11-14 芜湖市桀蒲网络科技有限公司 一种基于大数据的软件模块划分方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102436200A (zh) * 2011-12-04 2012-05-02 河南科技大学 一种模块化多功能机器人控制器
CN102609273A (zh) * 2011-01-20 2012-07-25 深圳市腾讯计算机系统有限公司 一种机器人及其软件升级的方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070075957A (ko) * 2006-01-17 2007-07-24 주식회사 로보스타 멀티 타스킹을 위한 타스크 기반 로봇 제어시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609273A (zh) * 2011-01-20 2012-07-25 深圳市腾讯计算机系统有限公司 一种机器人及其软件升级的方法和系统
CN102436200A (zh) * 2011-12-04 2012-05-02 河南科技大学 一种模块化多功能机器人控制器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于IPC和PMAC的喷涂机器人控制软件体系结构的研究;周青松等;《机床与液压》;20091231;第37卷(第12期);第144-147页 *
机器人控制软件框架中实时任务模块的设计与实现;李晓明等;《机电工程》;20130228;第30卷(第2期);第129-133页 *

Also Published As

Publication number Publication date
CN103235877A (zh) 2013-08-07

Similar Documents

Publication Publication Date Title
CN103235877B (zh) 机器人控制软件模块划分方法
CN107576920B (zh) 一种基于模糊多属性评价的卫星电源健康度计算方法
CN109063976A (zh) 基于模糊层次分析法的智能制造能力成熟度评价方法
CN105469196A (zh) 一种矿井建设项目过程后评价的综合评价方法及系统
CN106204154A (zh) 基于层次分析法和熵值法的用户价值评分系统及其方法
CN103699678B (zh) 一种基于多阶段分层采样的层次聚类方法和系统
CN102073935A (zh) 一种通用综合评价系统及其评价指标体系的定制方法
CN103632203A (zh) 一种基于综合评价的配电网供电区域划分方法
CN102467684A (zh) 基于改进雷达图的综合性能评估系统和方法
CN105007170A (zh) 一种基于fahp-svm理论的wlan网络负载综合评价方法
CN111967721A (zh) 一种综合能源系统绿色化水平评价方法及系统
CN112184008A (zh) 一种基于层次分析法的基站智慧节能模型评估方法及系统
CN106022480B (zh) 基于d-s证据理论的机器人功能模块粒度划分评价方法
CN107180160A (zh) 基于sem模型的公共自行车用户忠诚度确定方法
CN106548272A (zh) 一种电动汽车快充设施综合性能的评价方法
CN104881003A (zh) 一种计量生产设施效能评估方法
CN101963940A (zh) 面向软件演化的可信性动态评估方法
CN108564205A (zh) 一种基于实测数据的负荷模型及参数辨识优化方法
CN114881396A (zh) 一种基于ahp和topsis的隧道坍塌风险评估方法
CN109685296A (zh) 计及历史状态的用电信息采集系统模糊综合评价方法
CN109636189A (zh) 一种基于权重综合评估的输电网规划方案评价方法及系统
CN104376434A (zh) 卷烟多点加工质量的综合评价方法
CN103617447A (zh) 智能变电站的评价系统及评价方法
CN114881490A (zh) 一种变电站绿色施工评价方法及系统
CN109902910A (zh) 区域三生空间耦合定量度量方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160406

Termination date: 20200412