一种基于拓扑特征环路码的含复铰运动链的同构识别方法
【技术领域】
[0001] 本发明设及平面含复较运动链的同构识别方法,属于机构创新设计及智能CAD领 域,特指一种基于拓扑特征环路码的含复较运动链的同构识别方法。
【背景技术】
[0002] 在平面机构运动链的类型综合过程中,最为关键的问题就是要作同类运动链相应 的同构判别。在近半个世纪W前,机构学家们对于运动链的同构判别运个重点问题进行深 入的研究和探索,提出了许多不同的同构判别方法。运些方法可分为W下几大类:
[0003] 1、基于编码的同构判别方法:主要包括①最大最小码法;②度码法;③分层代码 法;④唯一边序列法;运些方法在一定程度上判别运动链的同构时被证明是很有效的,具有 唯一性和可解码性的优点,但是到目前为止,大多数都是针对单较,且构件数少的运动链。
[0004] 2、基于特征多项式法的同构判别:主要包括①顶点邻接矩阵的特征多项式法;② 描述矩阵的行列式多项式法;③参数矩阵的特征多项式法;④结构矩阵的特征多项式法;⑤ 距离矩阵的特征多项式法;运些方法的特点是W特征多项式作为判别运动链的同构仅仅是 必要的条件还非充分条件,可W找到失效的反例,且不适用于含复较的运动链;
[0005] 3、基于运动链邻接矩阵特征值和特征向量的同构判别:该方法在出现特征值相同 时,寻找两图的特征向量的一一对应关系,该方法的实现比较复杂,也不易用于含复较的运 动链的同构判别;
[0006] 4、基于哈明串的同构判定方法:该方法的计算量很大,且该方法也被找到了相应 的反例来证明其失效性。
[0007] 总之,上述方法在应用中,主要是用于单较的运动链的同构识别,很多都不能直接 用于平面含复较的运动链的同构识别,且它们在识别的过程中漏识的可能性较大,可靠性 较差,并且它们的识别时间较长,效益不高。
【发明内容】
[000引本发明的目的是为了解决平面含复较运动链类型综合中同构识别运一难点问题, 提供一种基于拓扑特征环路码的含复较运动链的同构识别方法,具有可靠性好,效率高,编 码唯一性,适合于构件较多的含复较运动链的同构识别的优点。
[0009] 本发明一种基于拓扑特征环路码的含复较运动链的同构识别方法,包括W下步 骤:
[0010] 步骤1、由含复较两运动链的关联矩阵Ai和Bi,生成它们对应的双色拓扑图邻接矩 阵A和B,即由关联矩阵Al=[aiu](n,m)生成相应的双色拓扑图的邻接矩阵A=[au](n+v)(m+v), 其中η为构件数,V为复较数,邻接矩阵B同理;
[0011] 步骤2、取待判定的一个含复较运动链对应的邻接矩阵Α,捜索过双色拓扑图的所 有多自由度顶点的环路,即过所有多副杆和复较的环路化1,L2, . . .,Lnl),通过选择算法取 出满足该条件的最大环路化i,L2, . . .,Ln2),其中nl表示过所有多副杆和复较的环路数,n2 表示最大环路数;
[0012] 步骤3、由最大环路化i,L2, ...,Ln)生成运动链相应的规范化双色拓扑图(Gi, 〇2, . . .,Gn),再由(Gi,G2, . . .,Gn)生成相应的特征环路码(ASi,AS2, . . .,ASn),取特征环路码 中值最大的作为该运动链的拓扑特征环路码ASMax;
[0013] 步骤4、取待判定的另一个运动链的邻接矩阵B,按步骤2至步骤3,求出相应的拓扑 特征环路码BSmsx ;
[0014] 步骤5、比较两运动链拓扑特征环路码(ASMax,BSMax)的大小,如果ASMax = BSMax,则两 运动链同构,否则它们不同构。
[001引所述步骤2具体如下:
[0016] 步骤21、求出邻接矩阵A中的所有多自由度顶点集(AVi,AV2,. . .,AVl),L<(n+v),η 为构件数,V为复较数;
[0017] 步骤22、对顶点集(AVi,AV2, . . .,AVl)进行检ii:若存在任一相邻的顶点对(AVi, AVj),则利用深度优先捜索算法求解出过所有多自由度顶点的路径(Pl,P2, . . .,Pnl),即得到 满足要求的所有环路化i,L2, . . .,Lni),若不存在相邻的顶点对(AVi,AVj),则转步骤23;
[0018] 步骤23、从顶点集取不相邻的顶点对(AVi,AV2),利用深度优先捜索算法求解出通 过该两点的所有路径。1,?2,...,口。1),取其中的任两条路径。1,門),若它们满足所有多自 由度顶点集(AVi,AV2, . . .,AVl)过运两路径(Pi,門)有且仅有一次,则该两条路径形成满足要 求的一个环路k,由此对所有路径进行两两排列组合,即得到所有的环路化1,L2, ...,Lnl);
[0019] 步骤24、对求得的环路化1,L2, . . .,Lnl),利用选择算法选取最大环路化1,L2,..., Ln),n<nlD
[0020] 所述步骤24具体如下:
[0021] 在运动链的拓扑图邻接矩阵A=[aij](n+v,m+v)中,如果某行有:aij+a2j+. . .+anj〉= 3, 则表示编号为j的顶点为多自由度顶点,则按行的顺序标记得到所有的多自由度顶点(AVi, AV2,. . .,AVl),L<(n+v);按顺序取多自由度顶点对,如果存在:a(Avi,Avj) = l,则存在两相邻的 多自由度顶点,若不存在a(Avi,Avj) = l,则不存在相邻的顶点对;如果存在相邻的顶点对 (AVi,AVj),则直接利用深度优先捜索算法求解出过所有多自由度顶点的所有路径(Pi, P2,. . .,Pw),如果Pi通过所有的多自由度顶点(AVi,AV2, . . .,AVl)且路径最长,则该路径形成 的环路以为最大环路,按此法依次对路径(Pl,P2, ...,Pw)进行选择得到所有最大环路化1, L2,· · ·,Ln)〇
[0022] 步骤3中所述由最大环路k的拓扑特征生成相应的规范化双色拓扑图Gi规则为:把 最大环路以放在最外围,构成拓扑图的外圆,把其它的二自由度顶点放在圆内。
[0023] 步骤3中所述的由规范化双色拓扑图Gi生成相应的拓扑特征环路码ASi的规则如 :ASi-[曰SI,曰S2,...,曰SL];(曰SI〉曰S2,....,〉曰SL)
[0024] 其中:[曰31,曰32,...,曰31]为规范化双色拓扑图的多自由度顶点的特征编码序列, asi为任一顶点的特征编码。
[0025] 本发明主要是针对含有复较的运动链的同构识别,对单较运动链的同构识别同样 有效,本发明基于运动链的拓扑图的结构特征,确立代表运动链拓扑不变性的特征环路码, 构成运动链的同构判别的充分必要条件,有利于计算机的自动实现,克服了现有方法的缺 陷。本发明对含多复较的15杆W下的同构效果最佳,速度快,效率高,可靠性好;该方法最高 识别过2帥干的运动链,其效果在国内外属领先水平。本发明可直接用于机构创新设计的含 复较运动链的类型综合,实际应用中已通过本发明综合出了 3000多种的10杆及10杆W下的 含复较的新运动链。
【附图说明】
[0026] 图1为本发明的流程示意图;
[0027] 图2为两种10杆单自由度4复较运动链及对应的双色拓扑图,其中:图2(a)为一种 10杆单自由度4复较运动链;图2(b)为另一种10杆单自由度4复较运动链;图2(c)为图2(a) 对应的运动链双色拓扑图;图2(d)为图2(b)对应的运动链双色拓扑图;
[002引图3由本发明实施例中邻接矩阵A最大环路化i,L2,L3)生成相应的规范化双色拓扑 图(a)(b)(c);
[0029] 图4由本发明实施例中邻接矩阵B最大环路化i,L2)生成相应的规范化双色拓扑图 (a)(b)〇
[0030] W下结合附图和具体实施例对本发明做进一步详述。
【具体实施方式】
[0031] 如图1所示,一种基于拓扑特征环路码的含复较运动链的同构识别方法,包括W下 步骤:
[0032] 步骤1、由含复较两运动链的关联矩阵Ai和Bi,生成它们对应的双色拓扑图邻接矩 阵A和B,即由关联矩阵Al = [aiij](n,m)生成相应的双色拓扑图的邻接矩阵A= [aij](n+v)(m+v), 其中η为构件数,V为复较数,邻接矩阵B同理;该邻接矩阵A与运动链的构件邻接矩阵不同, 避免了由多个复较的存在而产生奇异性,同时也方便了含复较运动链的环路捜索;
[0033] 在运动链的关联矩阵Ai = [aiij] (n,m)中,如果某一列中存在:aiij+ai2j+. . . +ainj> = 3,则表示编号为j的运动副编号(关联矩阵的列码)是复较,按列依次标记复较(Vi,V2,..., Vv),若编号为j的运动副为第k个复较Vk,且在该列中aiij = l,aikj = l,。。。,aihj=l不为零,h 表示相应的构件编号,则:
[0034] ai(n+k) = 1;ak(n+k) = 1; . . . ;ah(n+k) = 1;
[0035] a(n+k)i = l ;a(n+k化=1; . . . ;a(n+k化=1;
[00%]如果某一列中存在:aiij+ai2j+. . .+ainj = 2,若编号为j的运动副中aiij = l,aikj = l 不为零,卯J:aik=l;aki=l;
[0037] 运样即可得到运动链双色拓扑图邻接矩阵A=[au](n+v,m+v);
[0038] 步骤2、取待判定的一个含复较运动链(即步骤1含复较运动链中的第一个运动链) 对应的邻接矩阵A,捜索过双色拓扑图的所有多自由度顶点的环路,即过所有多副杆和复较 的环路化1,L2, . . .,Lnl),通过选择算法取出满足该条件的最大环路化1,L2, . . .,Ln2),其中nl 表示过所有多副杆和复较的环路数,n2表示最大环路数,具体如下:
[0039] 步骤21、求出邻接矩阵A中的所有多自由度顶点集(AVi,AV2, . . .,AVL),L<(n+v),n 为构件数,V为复较数;
[0040] 步骤22、对顶点集(AVi,AV2, . . .,AVl)进行检测:若存在任一相邻的顶点对(AVi, AVj),则利用深度优先捜索算法(the Depth-First Traversal method)求解出过所有多自 由度顶点的路径(Pl,P2, . . .,Pnl),即得到满足要求的所有环路化1,L2, . . .,Lnl),若不存在相 邻的顶点对(AVi,AVj),则转步骤23;
[0041] 步骤23、从顶点集取不相邻的顶点对(AVi,AV2),利用深度优先捜索算法(the Depth-First Traversal method)求解出通过该两点的所有路径(Pi,P2, ...,Pni),取其中 的任两条路径(Pi,門),若它们满足所有多自由度顶点集(AVi,AV2, . . .,AVl)过运两路径(Pi, Pj)有且仅有一次,则该两条路径形成满足要求的一个环路以,由此对所有路径进行两两排 列组合,即得到所有的环路化1,L2, . . .,Lnl);
[0042] 步骤24、对求得的环路化i,L2, . . .,Lni),利用选择算法选取最大环路化i,L2,..., Ln),n<nl;
[0043] 具体为:在运动链的拓扑图