本发明涉及夹具布局领域,特别是涉及一种基于迁移行为的moead优化夹具布局的方法及装置。
背景技术:
机床夹具属于生产制造过程的重要装备,用于完成工件在机床上的定位和夹紧,使工件在整个加工过程中能够抵抗外力的作用,保证工件相对于机床、刀具始终处于正确的位置,以顺利完成工件全部特征的加工。合理的夹具布局能够将工件定位在正确的位置上,保持工件处于稳定状态,为后续的切削、焊接、装配等工序提供保障。不合理的夹具布局,工件在后续加工过程中,受到切削力等外力的影响时,会导致工件相对于机床和刀具的位置发生偏离,导致工件加工出现较大误差,甚至会与夹具发生脱离,造成危险。
现有的工件位置偏移模型是将x、y、z方向上的移动和转动合成一个目标,然后使用算法进行优化,这种方法相当于给三个方向上的偏移分配了相同的权重,但是不同工件的加工需求是不同的,所以现有方法无法适应不同加工需求的工件。
moead(基于分解的多目标进化算法)将mop分解为n个标量的子问题。它通过进化出一个解的种群来同时解决所有子问题。对于每一代种群,种群是从所有代中选出的每一个子问题的最优解的集合。相邻两个子问题间的关联程度是由他们的聚合系数向量间的距离所决定的。对于两个相邻子问题来说,只是用与其相邻的子问题的信息来优化它,最优解应该是非常相似的。
moead具有以下特性:(1)moead提供了一个简单有效的方法,将分解的方法引入到多目标进化计算中。对于常在数学规划领域发展的分解方法,它可以真正的被并入到ea(进化算法)中,通过使用moead框架来解决mop(多目标优化)问题。(2)因为moead算法是同时优化n个标量子问题而不是直接将mop问题作为一个整体来解决,那么对于传统的并不是基于分解的moea(多目标进化)算法来说,适应度分配和多样性控制的难度在moead框架中得到了降低。
夹具的布局问题,因为每个接触面上都存在大量的点,所以很容易陷入局部最优,因此,需要进一步提升moead的搜索能力,增强其种群的多样性。
借鉴并模拟生态学中的物种进化规律和模式正是ga(遗传算法)的初衷和精髓所在。在物种的自然进化现象中,存在一些这样的种群:它们往返迁移于不同类型的自然环境之间,受不同环境因素的影响,使得这些种群对这些环境的适应能力都有所提高。我们将这种自然的生态学现象简单地抽象为物种的环境迁移模型,在模型中,假设存在物种p和k个不同的自然环境ei,其中i小于等于k,k为大于1的正整数,首先,让物种p进入环境e1中,完成竞争、繁衍和淘汰等生存任务,然后让物种p从环境e1迁移到下一个环境e2中,并完成同样的任务,按照这种方式依次在不同的环境中迁移,直到物种p在最后一个环境ek中完成生存任务,这时我们称物种p完成了一轮环境迁移。在物种p完成了若干轮环境迁移后,从适者生存这一生态规律来说,迁移后的物种p’中的个体较之迁移前种群p中的个体对于环境ei的适应能力都会提高。
技术实现要素:
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于迁移行为的moead优化夹具布局的方法及装置。
为解决上述技术问题,本发明提供以下技术方案:
一方面,本发明提供了基于迁移行为的moead优化夹具布局的方法,包括:
构建基于多目标方法的工件位置偏移模型,并分别确定x、y、z三个方向上的偏移量为目标函数;
在工件位置的可行域空间中按照预设方式产生初始种群;
在原始环境中将初始种群按照预设次数进行迭代计算得到原始环境的非支配解集,其中,一次迭代计算过程中,对种群中的个体进行基因重组得到新的个体,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群;
将原始环境中得到的非支配解集作为下一环境的初始种群继续按照所述预设次数进行与下一环境对应的迭代计算,在满足预设终止条件后得到最终的非支配解集。
可选地,所述构建基于多目标方法的工件位置偏移模型,并分别确定x、y、z三个方向上的偏移量为目标函数,包括:
分别确定工件定位点在工件位置偏移模型的x、y、z方向的位移和转动角度;
基于工件定位点在工件位置偏移模型的x方向的位移和转动角度按照第一目标函数
基于工件定位点在工件位置偏移模型的y方向的位移和转动角度按照第二目标函数
基于工件定位点在工件位置偏移模型的z方向的位移和转动角度按照第三目标函数
可选地,所述在工件位置的可行域空间中按照预设方式产生初始种群,包括:
计算任意两个权重向量间的欧氏距离,查找每个权重向量最近的t个权重向量,其中t表示邻域中权重向量的个数,对于每个i=1,...,n,令b(i)={i1,...,it},
建立一个外部种群,用于存储搜索过程中找到的非支配解,初始化时设置外部种群为空;
在可行空间中均匀随机采集决策变量x1,...,xn,基于采集的决策变量和所述目标函数产生初始种群;
利用切比雪夫方法,将目标函数f(x)分解成n层子问题:
第j个子问题的相邻关系由所有的子问题关于λj点的权重向量来表示,z*是目前能搜索到的目标函数的最小的向量值;其中,m表示目标函数的数量,h表示目标函数的序号。
可选地,所述一次迭代计算过程中,对种群中的个体进行基因重组得到新的个体,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群,包括:
从集合b(i)中随机选取两个序号u,v,运用遗传算子由xu和xv产生一个新的值,从产生的值与其邻域的值中筛选出偏移量最小的值,并利用筛选出偏移量最小的值更新种群。
可选地,所述将原始环境中得到的非支配解集作为下一环境的初始种群继续按照所述预设次数进行与下一环境对应的迭代计算之前,还包括:
设定一个数值p,并随机生成一个随机数rand,分析所述随机数rand是否小于p,其中,rand位于0-1的范围内,p大于0小于1;
若是,将原始环境中得到的非支配解集中的个体向所述原始环境中得到的非支配解集中的其他个体靠近以迁移至第一迁移环境,将所述第一迁移环境作为下一环境;
若否,将原始环境中得到的非支配解集中的个体在自身周围基于正态分布随机选取一个新的位置进行迁移以迁移至第二迁移环境,将所述第二迁移环境作为下一环境。
可选地,若第一迁移环境为下一环境,所述将原始环境中得到的非支配解集作为下一环境的初始种群继续按照所述预设次数进行与下一环境对应的迭代计算,包括:
第一迁移环境中每一次迭代按照xi_new=(1-rand)*xi+rand*xj的方式得到新的个体;其中,xi表示新种群中的第i个个体,xj表示个体xi邻域中随机选择的第j个个体,xi_new表示第i个个体xi向邻居xj的方向迁移后的最终位置,i≠j;
在一次迭代计算后,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群。
可选地,若第二迁移环境为下一环境,所述将原始环境中得到的非支配解集作为下一环境的初始种群继续按照所述预设次数进行与下一环境对应的迭代计算,包括:
第二迁移环境中每一次迭代按照xi_new=xi+w.*(varmax-varmin)*randn/norm(randn,2)的方式得到新的个体;其中,w表示基于迭代次数非线性自适应系数,w=exp(-10*rand*it/maxit),xi表示新种群中的第i个个体,it表示当前迭代次数,maxit表示所述预设次数,xi_new表示第i个个体xi在周围基于正态分布随机选择一个位置进行迁移后的最终位置,varmax、varmin分别表示当前工件位置的可行域空间的搜索空间的上界和下界,randn表示产生均值为0,方差为1的正态分布;
在一次迭代计算后,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群。
根据本发明的另一方面,还提供了一种基于迁移行为的moead优化夹具布局的装置,包括:
构建模块,适于构建基于多目标方式的工件位置偏移模型,并分别确定x、y、z三个方向上的偏移量为目标函数;
生成模块,适于在所述工件位置的可行域空间中按照预设方式产生初始种群;
计算模块,在原始环境中将初始种群按照预设次数进行迭代计算得到原始环境的非支配解集,其中,一次迭代计算过程中,对种群中的个体进行基因重组得到新的个体,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群;
迁移模块,将原始环境中得到的非支配解集作为下一环境的初始种群继续按照所述预设次数进行与下一环境对应的迭代计算,在满足预设终止条件后得到最终的非支配解集。
在本发明实施例中,本发明将x、y、z方向上的偏移作为目标函数,可以根据工件各方向上的不同加工精度,给x、y、z方向上的偏移分别分配相应的权重,工件加工精度越高的方向,其对应的方向的偏移分配的相应的权重越大,从而可以满足对各种不同需求零件的加工。并且在moead算法中引入迁移行为,不同的环境有不同的计算方法,增强了种群的多样性,提升了该算法的搜索能力,经过多种环境的优胜略汰,筛选出偏移量小的值,提高了种群的整体适应度。在优化夹具布局时,不会因为加工工件面上存在大量的点而陷入局部最优。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的基于迁移行为的moead优化夹具布局的方法流程示意图;
图2示出了根据本发明另一个实施例的工件模型的静力平衡关系示意图;
图3示出了根据本发明另一个实施例的基于迁移行为的moead优化夹具布局的生成初始种群的方法流程示意图;
图4示出了根据本发明另一个实施例的种群迁移方法示意图;
图5示出了根据本发明另一个实施例的铣通槽的示意图;
图6示出了根据本发明另一个实施例的moead改进前后的结果对比示意图;
图7示出了根据本发明再一个实施例的基于迁移行为的moead优化夹具布局的装置示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为解决上述技术问题,本发明实施例提供了一种基于迁移行为的moead优化夹具布局的方法。图1示出了根据本发明一个实施例的基于迁移行为的moead优化夹具布局的方法的流程示意图。参见图1,基于迁移行为的moead优化夹具布局的方法包括步骤s101至步骤s104。
步骤s101,构建基于多目标方法的工件位置偏移模型,并分别确定x、y、z三个方向上的偏移量为目标函数。
步骤s102,在工件位置的可行域空间中按照预设方式产生初始种群。
步骤s103,在原始环境中将初始种群按照预设次数进行迭代计算得到原始环境的非支配解集。
其中,一次迭代计算过程中,对种群中的个体进行基因重组得到新的个体,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选,并更新种群。
步骤s104,将原始环境中得到的非支配解集作为下一环境的初始种群继续按照预设次数进行与下一环境对应的迭代计算,在满足预设终止条件后得到最终的非支配解集。
在该实施例中,预设次数可以人为设定,预设终止条件为达到预设次数,即最后一次迭代计算结束后终止。将x、y、z方向上的偏移作为三个不同的目标函数,可以根据工件各方向上的不同加工精度,给x、y、z方向上的偏移分别分配相应的权重,从而可以满足对各种不同需求零件的加工,加工精度越高的方向,分配的相应权重越大。并且在moead算法中引入迁移行为,迁移至不同的环境,不同的环境有不同的迭代计算方法,增强了种群的多样性,提升了该算法的搜索能力,经过多种环境的优胜略汰,提高了种群的整体适应度。在优化夹具布局时,不会因为加工工件面上存在大量的点而陷入局部最优。
参见图2,在本发明一实施例中,步骤s101中的构建基于多目标方法的工件位置偏移模型,并分别确定x、y、z三个方向上的偏移量为目标函数,包括分别确定工件定位点在工件位置偏移模型的x、y、z方向的位移和转动角度。
基于工件定位点在工件位置偏移模型的x方向的位移和转动角度按照第一目标函数
基于工件定位点在工件位置偏移模型的y方向的位移和转动角度按照第二目标函数
基于工件定位点在工件位置偏移模型的z方向的位移和转动角度按照第三目标函数
在该实施例中,结合图2所示内容,现介绍目标函数f1(x),f2(x),f3(x)的步骤如下:
步骤1.1,选定由u个定位元件和v个夹紧元件来进行装夹布局,u,v均为大于1的正整数。工件受到加工力、重力等外力及力矩组成的加工力旋量、重力旋量以及夹紧力。根据工件的受力情况,可知其静力平衡方程
由
步骤1.2,所有定位元件处接触力与局部变形的之间的关系为
第i个装夹元件处的局部变形包括装夹元件变形
步骤1.3,工件和第i个定位元件之间的第i个接触点的位置可用以下两式表示
在实际装夹过程中,工件与第i个定位元件在第i个接触点处始终保持接触,所以
依据上述过程,可以得到第一目标函数、第二目标函数和第三目标函数。
此外,还为目标函数设置了约束条件:
静力平衡约束
在该实施例中,本发明将x、y、z方向上的偏移作为三个不同的目标函数,可以根据工件各方向上的不同加工精度,给x、y、z方向上的偏移分别分配相应的权重,加工精度越高的方向,其对应的方向的偏移分配的相应的权重越大,从而可以满足对各种不同需求零件的加工。
在本发明一实施例中,参见图1和图3,步骤s102在工件位置的可行域空间中按照预设方式产生初始种群包括步骤s1021~s1024。
步骤s1021,计算任意两个权重向量间的欧氏距离。查找每个权重向量最近的t个权重向量,其中t表示邻域中权重向量的个数,对于每个i=1,2,...,n,令b(i)={i1,...,it},
步骤s1022,建立一个外部种群,用于存储搜索过程中找到的非支配解,初始化时设置外部种群为空。
步骤s1023,在可行空间中均匀随机采集决策变量x1,...,xn,基于采集的决策变量和目标函数产生初始种群。其中,x1,...,xn即x1,x2...,xn,这里的n表示n个决策变量x对应的序号。
步骤s1024,利用切比雪夫方法,将目标函数f(x)分解成n层子问题。切比雪夫方法如下所示:
第j个子问题的相邻关系由所有的子问题关于λj点的权重向量来表示,z*是目前能搜索到的目标函数的最小的向量值;其中,m表示目标函数的数量,m的值为3,h表示目标函数的序号。
在该实施例中,
在本发明一实施例中,一次迭代计算过程中,对种群中的个体进行基因重组得到新的个体,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群,包括,
从集合b(i)中随机选取两个序号u,v,运用遗传算子由xu和xv产生一个新的值,从产生的值与其邻域的值中筛选出偏移量最小的值,并利用筛选出偏移量最小的值更新种群。
在该实施例中,x表示决策变量,运用遗传算子由xu和xv产生一个新的值与第i个决策变量邻域的值进行比较,选出偏移量最小的值。一次迭代计算后选出的各个决策变量的最小值用来更新外部种群。
在发明一实施例中,在执行步骤s104将原始环境中得到的非支配解集作为下一环境的初始种群继续按照预设次数进行与下一环境对应的迭代计算之前,还可以按照如下方式来选择下一环境。
设定一个数值p,并随机生成一个随机数rand,分析随机数rand是否小于p,其中,rand位于0-1的范围内,p大于0小于1。若随机数rand小于p,将原始环境中得到的非支配解集中的个体向原始环境中得到的非支配解集中的其他个体靠近以迁移至第一迁移环境,将第一迁移环境作为下一环境。若随机数rand不小于p,将原始环境中得到的非支配解集中的个体在自身周围基于正态分布随机选取一个新的位置进行迁移以迁移至第二迁移环境,将第二迁移环境作为下一环境。
参见图4,图4为物种迁移的示意图,迁移前的物种p经过环境e1、环境e2、环境ei以及环境ek多个环境的迁移,得到迁移后的物种p′,提高了物种的多样性和适应能力。图4的迁移次数仅为示意性表示,与本方案并不冲突。
在该实施例中,在moead中引入迁移行为,增强了种群的多样性,提升了该算法的搜索能力,经过多种环境的优胜略汰,筛选出偏移量小的值,提高了种群的整体适应度。在优化夹具布局时,不会因为加工工件面上存在大量的点而陷入局部最优。
在本发明一实施例中,若第一迁移环境为下一环境,将原始环境中得到的非支配解集作为下一环境的初始种群继续按照预设次数进行与下一环境对应的迭代计算的具体过程可以是,在第一迁移环境中的每一次迭代按照xi_new=(1-rand)*xi+rand*xj的方式得到新的个体。其中,xi表示新种群中的第i个个体,xj表示个体xi邻域中随机选择的第j个个体,xi_new表示第i个个体xi向邻居xj的方向迁移后的最终位置,i≠j。并且,在一次迭代计算后,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群。
当然,在下一次迭代计算时,可以将上一次筛选后得到的更新后的种群继续按照xi_new=(1-rand)*xi+rand*xj的方式迭代计算得到新的个体,并继续按照预设规则进行相应的筛选。预设规则可以为原始环境中的筛选规则。
在本发明一实施例中,若第二迁移环境为下一环境,将原始环境中得到的非支配解集作为下一环境的初始种群继续按照预设次数进行与下一环境对应的迭代计算的具体过程可以是,在第二迁移环境中每一次迭代按照xi_new=xi+w.*(varmax-varmin)*randn/norm(randn,2)的方式得到新的个体。其中,w表示基于迭代次数非线性自适应系数,w=exp(-10*rand*it/maxit),xi表示新种群中的第i个个体,it表示当前迭代次数,maxit表示预设次数,xi_new表示第i个个体xi在周围基于正态分布随机选择一个位置进行迁移后的最终位置,varmax、varmin分别表示当前工件位置的可行域空间的搜索空间的上界和下界,randn表示产生均值为0,方差为1的正态分布。在一次迭代计算后,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群。
当然,在下一次迭代计算时,可以将上一次筛选后得到的更新后的种群继续按照xi_new=xi+w.*(varmax-varmin)*randn/norm(randn,2)的方式迭代计算得到新的个体,并继续按照预设规则进行相应的筛选。预设规则可以为原始环境中的筛选规则。
参见图5,图5示出了根据本发明另一个实施例的铣通槽的示意图,图5中的a、b、c、d、e、f表示定位点,p1、p2、p3表示夹紧点。
参见图6,从改进moead前后的非支配解集中选取x、y、z方向上的最小偏移进行结果的比较,每组改进前后的算法公用同一个初始种群,独立运行4组后的结果如下表1所示,moead为原算法,imoead为改进后的算法。改进前后的对比如图6所示。在该实施例中,图5仅为模型示意图,图5的模型示意图与图6表示的结果并不存在对应关系。
此外,参见表1所示的偏移结果对比,改进后的imoead在x、y、z三个方向上的最小偏移量小于原始的moead的最小偏移量,改进后的imoead的搜索能力相对于原始的moead得到了提高,经过多种环境后得到的种群适应能力也是优于原始的moead的。
表1
参见图7,本发明还提供了一种基于迁移行为的moead优化夹具布局的装置,基于迁移行为的moead优化夹具布局的装置600包括如下模块。
构建模块610,适于构建基于多目标方式的工件位置偏移模型,并分别确定x、y、z三个方向上的偏移量为目标函数。
生成模块620,与构建模块610耦合,在工件位置的可行域空间中按照预设方式产生初始种群。
计算模块630,与生成模块620耦合,在原始环境中将初始种群按照预设次数进行迭代计算得到原始环境的非支配解集。其中,一次迭代计算过程中,对种群中的个体进行基因重组得到新的个体,对重组后得到的个体以及上一次迭代后的种群按照预设规则进行筛选并更新种群。
迁移模块640,与计算模块630耦合,将原始环境中得到的非支配解集作为下一环境的初始种群继续按照预设次数进行与下一环境对应的迭代计算,在满足预设终止条件后得到最终的非支配解集。
在该实施例中,本发明将x、y、z方向上的偏移作为三个不同的目标函数,可以根据工件各方向上的不同加工精度,给x、y、z方向上的偏移分别分配相应的权重,从而可以满足对各种不同需求零件的加工,加工精度越高的方向,分配的权重越大。并且在moead中引入迁移行为,不同的环境有不同的计算方法,增强了种群的多样性,提升了该算法的搜索能力,经过多种环境的优胜略汰,提高了种群的整体适应度。在优化夹具布局时,不会因为加工工件面上存在大量的点而陷入局部最优。
根据上述任意一个优选实施例或多个优选实施例的组合,本发明实施例能够达到如下有益效果:
在本发明实施例中,本发明将x、y、z方向上的偏移作为目标函数,可以根据工件各方向上的不同加工精度,给x、y、z方向上的偏移分别分配相应的权重,从而可以满足对各种不同需求零件的加工。并且在在moead中引入迁移行为,增强了种群的多样性,提升了该算法的搜索能力,经过多种环境的优胜略汰,筛选出偏移量小的值,提高了种群的整体适应度。在优化夹具布局时,不会因为加工工件面上存在大量的点而陷入局部最优。
所属领域的技术人员可以清楚地了解到,上述描述的装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络设备等)在运行指令时执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom)、随机存取存储器(ram),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络设备等的计算设备)来完成,程序指令可以存储于一计算机可读取存储介质中,当程序指令被计算设备的处理器执行时,计算设备执行本发明各实施例方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。