基于伪杂交混合遗传算法的机构运动链同构识别方法

文档序号:6581125阅读:200来源:国知局

专利名称::基于伪杂交混合遗传算法的机构运动链同构识别方法
技术领域
:本发明涉及机构运动链同构识别方法,特指一种用于机构创新设计及智能CAD中机构运动链同构识别方法。
背景技术
:由于运动链同构识别应用的广泛性和在机构创新设计及智能CAD中的重要地位,近半个世纪以来,专家和学者提出了很多种机构运动链同构识别方法,大致可分为如下几大类1、基于邻接矩阵特征多项式的同构判定方法。2、基于编码的同构判定方法。3、基于哈明串的同构判定。4、基于特征值和特征向量的同构判定方法。上述各方法在应用中,机构运动链同构识别中出现误识、漏识的概率较大,可靠性较差,并且随着运动链构件的增多,识别的时间耗费严重,效率很低,具体表现为1、基于特征多项式法的同构判别方法以特征多项式作为指标来判别同构仅仅只是同构判别的必要条件而非充分条件,这必然导致很多失效的反例;并且这种方法的另外一个不足是其不可以编码。2、基于编码的同构判别方法从理论上来说具有编码唯一性和可解码性的优点,并且可以用此来对运动链进行拓扑分类。但是到目前为止,大多数被提出的方法都只能有效判别10杆以内的运动链。3、基于哈明码的同构判别方法的失效性已成为事实,而且在什么情况下一阶哈明串的判别方法失效还是未知,而二阶哈明串的计算量则很大。4、基于特征值和特征向量的同构识别方法在出现相同的特征值时,寻找两图特征向量的一一对应关系是十分复杂的,并且这种方法也不是基于编码的方法。
发明内容本发明的目的是为克服已有的设计方法的缺陷、解决现有机构创新设计、机构同构识别效率低的问题、一步促使机构创新设计向高效及低成本的方向发展而提供一种基于伪杂交混合遗传算法的机构运动链同构识别方法。本发明技术方案是依次采用如下步骤1)根据机构运动链的结构形成其对应的机构拓扑图;2)根据机构拓扑图设定邻接矩阵的遗传编码;3)取待判定的两机构拓扑图邻接矩阵确定目标函数,计算每个个体的目标函数值和适应度;4)采用伪杂交算子,在随机产生的群体中随机选取两个个体,随机产生两个杂交点进行空中扩展;从扩展生成的中间种群中选择两个个体进行初步局部寻优;5)结合局部搜索算子形成伪杂交混^t传算法,进行机构运动链同构识别的运,仿真。本发明的有益效果是1、本发明基于遗传算法,确立明确的目标函数,构成同构判别的充分必要条件,并借助了遗传算法易于计算机编码的特征,克服了基于特征多项式法的同构判别方法的缺点。2、本发明不但具有编码唯一性和可解码性的优点,而且能对15杆运动链,甚至20杆运动链进行高效、准确的同构判别,从而克服了基于编码的同构判别方法的缺点。3、本发明对20杆以内的同构识别效果最佳,克服了基于哈明码的同构判别方法的失效性的缺点。4、本发明的算法省去了寻找特征向量一一对应关系这一复杂繁琐的过程,只需迭代重复计算目标函数即可,而且本发明提出的方法易于编码,从而克服了基于特征值和特征向量的同构识别方法在出现相同的特征值时寻找两图特征向量的一一对应关系十分复杂的缺点。5、本发明提出了伪杂交算子,预杂交的两个个体相互根据对方的元素排列信息重新对自身的元素进行排列,而不是实际的交叉,这一算子不但能避免个体中元素重复,而且包含了空间拓展和局部搜索的功能。图l为本发明的流程示意图。图2为两种10杆同构运动链及对应的拓扑图,其中图2(a)为一种10杆同构运动链,图2(b)为另一种10杆同构运动链,图2(c)为图2(a)对应的机构拓扑图,图2(d)为图2(b)对应的机构拓扑图。具体实施例方式如图l-2所示,本发明的实施步骤如下(1)遗传编码根据机构运动链的结构可形成其对应的机构拓扑图,如图2(c)为图2(a)对应的机构拓扑图G2。这两机构拓扑图G1、G2中的顶点都有标号,而且是可以改变的。根据机构拓扑图可设定邻接矩阵的遗传编码,当给图中顶点赋予一组标号时,就可以唯一确定一个邻接矩阵;但是当交换两个顶点的标号后,又可以唯一确定另一个邻接矩阵。因此,顶点的一组标号序列唯一对应一个邻接矩阵。本发明的个体为一组顶点标号序列,即1,2.....d的排列,c/为顶点数,也是个体长度,如图2中^/=10,也是个体长度和邻接矩阵的阶数。(2)适应度函数待判定的两个机构拓扑图G1、G2的邻接矩阵分别为a、S,目标函数取min/0)=ZlC(")U,式中,^为顶点数,也是个体长度,r=/^>2……/>,其中《为矩阵;c为邻接矩阵^经过变换矩阵r进行行变换和列变换后得到的矩阵;当/0c)为0时,达到最优值,Gl、G2同构。适应度函数取尸0)=1//(1),,(:c)的取值在(0,1]之间,/(JC)越小,F(X)就越大;当/(1)=0时,设置F(JC)-IOO。(3)伪杂交算子本发明中个体为一组自然数的排列,排列中的元素不能重复。如果简单地将两个父代个体交叉,则可能会在子代个体中出现重复元素;本发明采用的是伪杂交算子能很好地避免上述缺陷,具体操作过程如下-图l中"选择"步骤随机产生的群体为父代群体,在父代群体中随机选取两个个体x和y,并随机产生两个杂交点^和^(O^AS^《c0,则个体可表示为x=(X,L,、,、+1山,、—p^,L,xd),y-(A,L,A,yj^,LJ—!,;^,L,&)先进行空间扩展,令fcc-x,0^y,",ty为替换变量,对x进行如下操作步骤l:令Z'-A+1;步骤2:令_/=0;步骤3:如果^",则_/=_/+1,重复步骤3;步骤4:如果("y)I0t1+lW"2-1),则转步骤5;否则转步骤6;步骤5:交换^和;步骤6:/=/+1,如果/=&,结束,否则转步骤2;对y进行如下操作步骤l:令/=^+1;步骤2:令_/=0;步骤3:如果-,则_/=_/+1,重复步骤3;步骤4:如果(/-;)I(it,+1"2-1),则转步骤5;否则转步骤6;步骤5:交换y,.和^;步骤6:/=/+1;如果/=^,结束;否则转步骤2;在交叉过程中,对jc和y的操作从步骤2到步骤5是并行的,此步骤采用并行方法。再进行初步局部寻优,随机从上部操作生成的中间种群中选择两个个体;c-(wL,&)和:v-"力,L,力)进行如下操作步骤l:令/=1;步骤2:如果^^/,则交换^和x力,得到x^(x,,L,、—i,、,Xw,L,、—,,、,、+,,L,&);否则转步骤4;步骤3:若F(jc〕〉F(jc),贝ijx二x';步骤4:!'="1,如果!'>(^,则结束;否则转步骤2。由上可知,整个交叉过程并没有进行真正的杂交,而是一个体根据另一个体中元素排列信息改变自身元素的排列顺序,因此称为伪杂交。此过程先扩展搜索空间,后进行局部寻优。本发明将局部搜索算子与遗传算法及伪杂交算子结合,其中,选择、交叉、变异为遗传算法步骤,而交叉步骤采用伪杂交算子,然后结合局部搜索算子。本发明采用的局部搜索本质上是邻域搜索,对于个体X:(、气L,A)算法如下步骤l:令/=1;步骤2:令_/=1;步骤3:如果_/*/,则交换x,.和j^的位置,得到;c';否则转步骤5;步骤4:比较x和;c'的适应度,如果f(x')〉f(;c),贝"=;步骤5:y=+l;如果y、rf(个体长度),则转步骤3;步骤6:=/+1;如果^rf,转步骤2;否则结束。基于上述可将本发明算法作一个整体描述,如图l,本发明将伪杂交遗传算法与局部搜索算法结合,具体流程可描述如下步骤i:由式c-7^r、变换r来随机产生一个规模为m的初始种群户o尸;步骤2:计算每个个体的目标函数值和适应度,如果找到最优解,则转步骤8;步骤3:根据无回放余数随机选择方法选择个体,构成交配池户OP';步骤4:从尸O尸'中随机选取两个个体,执行伪杂交算子中的第一部分,共[M《/2]次,得到中间种群CO,,其中A为杂交概率,[.]为取整函数。对CQ中的个体重复执行伪杂交算子中的第二部分,共[A/g^/2]次,得到中间种群CO,。计算个体适应度,如果找到最优解即F(;c)-100,则转步骤8.如果有90%以上的个体适应度都一样,则转步骤8';步骤5:采用逆序变异方法,变异后得到中间种群CO,,计算适应度,如果找到最优解尸00=100,则转步骤8;步骤6:执行局部搜索算子,得到更新种群C";步骤7:以CO,构成下一代种群,转到步骤2;步骤8:找到最优解,两运动链同构;步骤8':两运动链不同构。以下提供本发明的一个实施例实施例如图2(a)、2(b)所示两IO杆运动链,两运动链对应的机构拓扑图分别如图2(c)、2(d)所示。参数设置种群规模A/=50;杂交概率《=0.8;变异概率^=0.6根据图l的程序流程进行迭代,可在很短的时间内得到两运动链同构的结果。为了证实本发明算法的高效性,对该实施例重复独立运算iooo次,并统计性能指标,如下表l所表l<table>tableseeoriginaldocumentpage9</column></row><table>由表l的实施结果证明伪杂交遗传算子克服了简单遗传算法的缺陷,遗传算法和局部搜索算法的结合,大量减少了冗余计算,提高了搜索效率。权利要求1、一种基于伪杂交混合遗传算法的机构运动链同构识别方法,其特征是依次采用如下步骤1)根据机构运动链的结构形成其对应的机构拓扑图;2)根据机构拓扑图设定邻接矩阵的遗传编码;3)取待判定的两机构拓扑图邻接矩阵确定目标函数,计算每个个体的目标函数值和适应度;4)采用伪杂交算子,在随机产生的群体中随机选取两个个体,随机产生两个杂交点进行空中扩展;从扩展生成的中间种群中选择两个个体进行初步局部寻优;5)结合局部搜索算子形成伪杂交混合遗传算法,进行机构运动链同构识别的运算和仿真。2、根据权利要求l所述的基于伪杂交混合遗传算法的机构运动链同构识别方法,其特征是步骤3)中目标函数为min/("-》C(,'力-U,式中,d为个体长度,7^《尸2……i>,其中《为矩阵,j、5为两个机构拓扑图的邻接矩阵,c为邻接矩阵j经过变换矩阵r进行行变换和列变换后得到的矩阵。3、根据权利要求l所述的基于伪杂交混合遗传算法的机构运动链同构识别方法,其特征是步骤4)中两个杂交点为&和&,两个个体x、y表示为,;x^,;^+pL,气屮;x^,L,x》;y=(x,L,^,y4i+1,L,yt2—,,:^,L,_yrf),(0《&《&《力;令&=;<:,/>=y,对JC进行如下操作步骤l:令/=&+1;步骤2:令/=0;步骤3:如果-",贝1』_/=_/+1,重复步骤3;步骤4:如果(/"')1(*1+1《_/"2-1),则转步骤5;否则转步骤6;步骤5:交换X,.和.;步骤6:!'=/+1,如果/=&,结束,否则转步骤2;对y进行如下操作步骤l:令Z'-A+1;步骤2:令_/=0;步骤3:如果0;;#巧,贝1』_/=_/+1,重复步骤3;步骤4:如果("力I1),则转步骤5;否则转步骤6;步骤5:交换;;,.和^;步骤6:/=/+1;如果/=^,结束;否则转步骤2。4、根据权利要求l所述的基于伪杂交混合遗传算法的机构运动链同构识别方法,其特征是步骤4)初步局部寻优的步骤为步骤l:令Z:l.步骤2:如果7,^/,则交换x,.和、,得到:c'-(:^,L,a^,Xy,,x,+pL,、中《,、+pL,x》;否则转步骤4.步骤3:若F(jc')〉F0c),KUx=步骤4:/=/+1,如果/>山则结束;否则转步骤2。5、根据权利要求l所述的基于伪杂交混合遗传算法的机构运动链同构识别方法,其特征是步骤5)的局部搜索算子步骤如下步骤l:令/=1.步骤2:令7=1.步骤3:如果_/7/,则交换A和、.的位置,得到x';否则转步骤5.步骤4:比较;c和jc'的适应度,如果f(x')〉f(;c),则jc二jc'.步骤5:_/=y+l;如果y、rf(个体长度),则转步骤3.步骤6:/=i+l;如果^d,转步骤2;否则结束。全文摘要本发明公开了一种基于伪杂交混合遗传算法的机构运动链同构识别方法,先根据机构运动链的结构形成其对应的机构拓扑图;设定邻接矩阵的遗传编码;取待判定的两机构拓扑图邻接矩阵确定目标函数,计算每个个体的目标函数值和适应度;再采用伪杂交算子,在随机产生的群体中随机选取两个个体,随机产生两个杂交点进行空中扩展;从扩展生成的中间种群中选择两个个体进行初步局部寻优;最后结合局部搜索算子形成伪杂交混合遗传算法,进行机构运动链同构识别的运算和仿真,能对运动链进行高效、准确的同构判别。文档编号G06N3/12GK101655928SQ200910184138公开日2010年2月24日申请日期2009年8月25日优先权日2009年8月25日发明者曾科翰,平杨申请人:江苏大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1