[0021] 如图1所示,图1(a)是一种10杆同构运动链简图,其中杆2和杆4、杆9之间无运动副联接;图1(b)是另一种10杆同构运动链简图,其中杆2和杆4、杆8之间无运动副联接,图1(a)和图1(b)中数字代表杆件,空心圆点代表连接杆件的运动副。图2(a)和图2(b)是根据图1(a)和图1(b)的机构运动链的结构形成的对应的运动链拓扑图,实心圆点代表杆件,边表示连接杆件的运动副。本发明的实施方式如下:
[0022] 参见如图2(a)和图2(b),用顶点表示构件,用边表示运动副,当两构件之间有运动副直接连接时,该两构件对应的两顶点之间用一条边连接,再将每一条边赋以数值表示运动副类型则得到平面运动链的无向拓扑图。
[0023] 首先对运动链拓扑图分层,将拓扑图节点集V中的度d(i)(即拓扑图中与该点直接连接的边数)最大的一类节点归为第一层点集,其中节点集V表示运动链拓扑图中不同构件组成的集合,一个构件代表一个节点,如图2(a)的节点集V={1,2,3,4,…,10},最大的一类节点表示图2(a)和图2(b)中节点连接的边数为最大。图2(a)节点10对应4个直接连接的边,图2(b)节点10对应4个直接连接的边。图2(a)和图2(b)中的节点10分别组成第一层点集,L1(C)={10},L1(D)={10}。
[0024] 将拓扑图中不属于第一层点集且与第一层点集中的点直接相连的节点归为第二层点集;其中图2(a)第二层点集为L2(C)={1,2,5,9},图2(b)第二层点集为L2(D)={1,2,4,
9}。以此类推,直到所有点全部分层成功,图2(a)和图2(b)的第三层点集分别为L3(C)={4,
6,8},L3(D)={5,6,8},图2(a)和图2(b)的第四层点集分别为L4(C)={ 3,7},L4(D)={3,7}。
[0025] 再对各层点集中的点进行层内初步排序,排序原则如下:
[0026] 1、将得到的分层点集是初始分层点集,没有考虑点集中的点的顺序问题,在同一层点集中存在两个未排序点i、j(i和j分别表示运动链拓扑图中的不同构件),若i点与上一层点集中所有点的连接多于点j的连接,则在这一层中点i的排列次序要先于点j;根据此原则,图2(a)的O3={6,8,4},O4={7,3};图2(b)的O3={6,8,5},O4={7,3}。
[0027] 2、在同一层点集中存在两个未排序点i、j,若点i与所在这层中的点集的连接多于点j的连接,则在这一层中点i的排列次序要先于点j。
[0028] 3、在同一层点集中存在两个未排序点i、j,若i点与下一层点集中所有点的连接多于点j的连接,则在这一层中点i的排列次序要先于点j;根据此原则,图2(a)的O2={9,1,2,5},图2(b)的O2={9,1,2,4}。
[0029] 上述排序原则中优先权分别是1最高,2次之,3最低。
[0030] 由此,得到了机构结构特征集合,图2(a)和图2(b)根据排序原则得到的排序后的点集如下:将原运动链拓扑图中的节点按照其所属层依次进行排序及重新赋排列次序编号,第一层排在最前面。图2(a):O1 ={10}, O2={9,1,2,5}, O3={6,8,4},O4={7,3};图2(b):
O1={10},O2={9,1,2,4},O3={6,8,5},O4={7,3}。
[0031] 最后,利用自适应的鱼群算法求解机构结构特征集合的条件最大结构码,结构码的计算公式如下:
[0032] (1)
[0033] 式(1)中,i,j表示连接矩阵A中的行和列,i, j表示运动链拓扑图中的构件,N表示维数,即运动链拓扑图中总的构件数目。A=[dij]n×n, ,对于图2(a)和图2(b),其连接矩阵分别为:
[0034] ,
[0035] ,
[0036] 其中自适应的鱼群算法是指动态调整视野visual和拥挤度因子 ,其动态调整的计算公式如下所示:
[0037] (2)
[0038] 式(2)中,g表示当前迭代的次数;G表示最大的迭代次数,s是大于1的整数,此处取为5。
[0039] 利用自适应的鱼群算法来求解机构结构特征集合的条件最大结构码,判断结构码是否相等,相等则同构,否则不同构。其中,自适应鱼群算法具体如下:
[0040] (1)初始化,随机产生N条人工鱼,分别表示图2(a)和图2(b)得到的机构特征集合结构码m(A1)和m(A2),m(A)即求解机构结构特征集合的条件最大结构码,设定鱼群算法的参数,包括鱼群规模的大小,最大迭代次数,人工鱼的感知范围Visual,拥挤度因子 ,最大试探次数try-number。
[0041] (2)计算初始化人工鱼群所在位置的实物浓度,并相互比较它们的大小,找到当前全局最大值,即机构结构特征集合的条件最大结构码,并保存显示在公告板上。
[0042] (3)执行鱼群算法,每条人工鱼按照一定的条件执行觅食、聚群、追尾行为,并且更新自己的状态。
[0043] (4)每条人工鱼迭代一次之后,评价自身浓度值 和当前最优浓度 值,如果,则以自身的状态取代当前的最优状态,最优状态就是最大结构码,否则当前最优
状态保持不变。
[0044] (5)根据公式(2)对人工鱼群的感知范围Visual和拥挤度因子 适时地进行自我调整,以便将具有自适应策略的人工鱼群算法用在机构同构识别中;
[0045] (6)重复步骤(3)至步骤(4)步,直到达到最大迭代次数,则最终的全局最大值为机构结构特征集合的条件最大结构码。通过比较两个运动链的条件最大结构码,即可判别两个运动链是否同构,将运动链的同构识别转化为判断条件最大结构码是否相等,能够更好
地解决现有机构创新设计周期长、成本高而且效率低的问题。具有自适应策略的人工鱼群
算法,对参数visual、 进行适时的自行调整,能够调节好全局搜索和局部搜索之间的关
系,提高收敛精度。