一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种切割路径的优化方法与流程

2021-09-25 04:09:00 来源:中国专利 TAG:切割 路径 优化 智能 方法


1.本发明涉及智能制造技术领域,特别是一种切割路径的优化方法。


背景技术:

2.刀具切割的过程中,裁片的加工总时长等于刀具空跑时间与切割整个裁片的时间之和,其中刀具空跑时间跟空跑路径相关,因此优化空跑路径对提高裁片的加工总时长至关重要。但现有的切割路径选取的方法还存在一定的局限性,并不能选出切割的最优路径,从而无法进一步缩短裁片的加工总时长,生产加工成本还比较高。


技术实现要素:

3.针对上述缺陷,本发明的目的在于提出一种切割路径的优化方法,利用贪心算法和蚂蚁算法,解决了现有的方法不能选出切割的最优路径,无法进一步缩短裁片的加工总时长,生产加工成本高的问题。
4.为达此目的,本发明采用以下技术方案:一种切割路径的优化方法,包括以下步骤:
5.步骤a:确定刀具原点和裁片的切割点;
6.步骤b:利用贪心算法得到刀具从所述刀具原点开始走完所有裁片的切割点的初始路径,建立切割顺序集合,并依据所述切割顺序集合内元素的顺序算出第一空跑行程l0;
7.步骤c:利用蚂蚁算法得到蚂蚁从所述刀具原点开始走完所有裁片的切割点的当前路径,建立蚂蚁访问顺序集合,并依据所述蚂蚁访问顺序集合内元素的顺序计算出第二空跑行程l
k

8.步骤d:比较所述第一空跑行程l0和所述第二空跑行程l
k
的大小;
9.当所述第二空跑行程l
k
小于所述第一空跑行程l0时,所述第二空跑行程l
k
对应的所述蚂蚁访问顺序集合覆盖所述切割顺序集合,成为新的切割顺序集合;
10.当所述第二空跑行程l
k
大于或等于所述第一空跑行程l0时,所述切割顺序集合不变;
11.步骤e:输出所述切割顺序集合作为切割路径。
12.值得说明的是,所述步骤b包括:
13.步骤b1:建立每个裁片的切割起始点,并形成切割起始点集合p,p={p1,p2,...p
n
},其中p1为第一个裁片的切割起始点,p2为第二个裁片的切割起始点,p
n
为第n个裁片的切割起始点;
14.步骤b2:计算刀具原点p0与第k个裁片的切割起始点p
k
的距离d(p
k
,p0),以及计算刀具原点p0与第k 1个裁片的切割起始点p
k 1
的距离d(p
k 1
,p0),其中k∈n,k 1∈n;
15.步骤b3:比较d(p
k
,p0)和d(p
k 1
,p0)的大小,当d(p
k
,p0)大于d(p
k 1
,p0)时,调换p
k
和p
k 1
在切割起始点集合p中的位置,当d(p
k
,p0)小于或等于d(p
k 1
,p0)时,p
k
和p
k 1
在切割起始点集合p中的位置不变。
16.可选地,所述步骤b还包括步骤b4;
17.所述步骤b4为:重复步骤b2和步骤b3,直到所述切割起始点集合p中的所有元素都计算完毕,形成以距离所述刀具原点最近的裁片的切割起始点作为第一个元素并且以升序排列的切割顺序集合。
18.具体地,所述步骤c包括:
19.步骤c1:用表示第k只蚂蚁在t时刻从第i个裁片转移到第j个裁片的概率,其公式为:
[0020][0021]
其中,allowed
k
为第k只蚂蚁下一步允许的选择,α为信息启发式因子,β为期望启发式因子,τ
ij
(t)为t时刻从第i个裁片转移到第j个裁片的信息素,η
ij
(t)为t时刻从第i个裁片转移到第j个裁片的启发函数,η
ij
(t)是t时刻第i个裁片和第j个裁片之间的距离的倒数,s为第k只蚂蚁停留的终点裁片,τ
is
(t)为t时刻从第i个裁片转移到终点裁片的信息素,η
is
(t)为t时刻从第i个裁片转移到终点裁片的启发函数;
[0022]
步骤c2:根据概率选择第j个裁片,直到第k只蚂蚁访问完所有所述裁片,按照第k只蚂蚁访问所述裁片的顺序建立蚂蚁访问顺序集合,并依据所述蚂蚁访问顺序集合内元素的顺序算出刀具的第二空跑行程l
k

[0023]
优选的,在所述步骤d和步骤e之间还包括步骤f;
[0024]
所述步骤f为:比较第k只蚂蚁对应的第二空跑行程l
k
和第k 1只蚂蚁的第二空跑行程l
k 1
的大小;
[0025]
当所述第二空跑行程l
k 1
小于所述第二空跑行程l
k
时,所述第二空跑行程l
k 1
对应的所述蚂蚁访问顺序集合覆盖所述切割顺序集合成为新的切割顺序集合;
[0026]
当所述第二空跑行程l
k 1
大于或等于所述第二空跑行程l
k
时,所述切割顺序集合不变。
[0027]
值得说明的是,在所述步骤f和步骤e之间还包括步骤g;
[0028]
所述步骤g为:在所有蚂蚁访问完所有裁片后,更新信息素,其公式为:
[0029]
τ
ij
(t c)=ρ.τ
ij
(t) δτ
ij
[0030][0031]
其中,τ
ij
(t c)为t c时刻从第i个裁片转移到第j个裁片的信息素,ρ为信息挥发系数,0<ρ≤1,δτ
ij
为从第i个裁片转移到第j个裁片的轨迹边上留下的单位长度轨迹信息素,为第k只蚂蚁从第i个裁片转移到第j个裁片的轨迹边上留下的单位长度轨迹信息素,m为蚂蚁总数。
[0032]
可选地,在所述步骤g更新信息素的过程中,加入最优路径增加的信息素,其公式为:
[0033][0034][0035]
其中,e为权值,δb(i,j)为第i个裁片转移到第j个裁片增加的信息素,l
b
为最优路径。
[0036]
具体地,在所述步骤g更新信息素的过程中,加入补偿信息素,使在蚂蚁经过的数量越高的路径上留下的信息素越少,其公式为:
[0037][0038]
其中,q(t)为补偿信息素,r为从第i个裁片转移到第j个裁片的蚂蚁的数量,r为经过第i个裁片的蚂蚁的数量。
[0039]
优选的,在步骤g和步骤e之间,还包括步骤h;
[0040]
所述步骤h为:设定额定迭代次数,重复步骤c、f和g,直到迭代次数等于额定迭代次数为止。
[0041]
值得说明的是,所述第一空跑行程l0和所述第二空跑行程l
k
通过以下公式得到:
[0042][0043]
其中,l
p
为第一空跑行程l0或第二空跑行程l
k
,l
s
为刀具原点到第一个裁片的切割点的距离,l
e
为第n个裁片的切割点回到刀具原点的距离,为刀具或蚂蚁从第i个裁片到第i 1个裁片的空跑路径,i=1为第一个裁片,n

1为第n

1个裁片。
[0044]
上述技术方案中的一个技术方案具有以下有益效果:在所述切割路径的优化方法中,被切割的裁片为封闭图形,利用混合旅行商问题和蚁群算法的求解能提高效率。先用贪心算法生成最近原点的切割起始点,然后利用蚁群算法求精确解,就能得到优化后的切割路径。已知空跑行程符合一个旅行商问题,先运用贪心算法确定每个裁片的切割初始点,将路径优化问题转化为旅行商问题,在确定起始的切割顺序后运用蚂蚁算法算出优化的路径再作比较,就能得出最优切割路径,从而进一步缩短裁片的加工总时长,降低生产加工成本。
附图说明
[0045]
图1是本发明的一个实施例的流程图。
具体实施方式
[0046]
下面详细描述本发明的实施方式,实施方式的示例在附图中示出,其中,相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附
图描述的实施方式是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
[0047]
一种切割路径的优化方法,包括以下步骤:
[0048]
步骤a:确定刀具原点和裁片的切割点;
[0049]
步骤b:利用贪心算法得到刀具从所述刀具原点开始走完所有裁片的切割点的初始路径,建立切割顺序集合,并依据所述切割顺序集合内元素的顺序算出第一空跑行程l0;
[0050]
步骤c:利用蚂蚁算法得到蚂蚁从所述刀具原点开始走完所有裁片的切割点的当前路径,建立蚂蚁访问顺序集合,并依据所述蚂蚁访问顺序集合内元素的顺序计算出第二空跑行程l
k

[0051]
步骤d:比较所述第一空跑行程l0和所述第二空跑行程l
k
的大小;
[0052]
当所述第二空跑行程l
k
小于所述第一空跑行程l0时,所述第二空跑行程l
k
对应的所述蚂蚁访问顺序集合覆盖所述切割顺序集合,成为新的切割顺序集合;
[0053]
当所述第二空跑行程l
k
大于或等于所述第一空跑行程l0时,所述切割顺序集合不变;
[0054]
步骤e:输出所述切割顺序集合作为切割路径。
[0055]
在所述切割路径的优化方法中,被切割的裁片为封闭图形,利用混合旅行商问题和蚁群算法的求解能提高效率。先用贪心算法生成最近原点的切割起始点,然后利用蚁群算法求精确解,就能得到优化后的切割路径。已知空跑行程符合一个旅行商问题,先运用贪心算法确定每个裁片的切割初始点,将路径优化问题转化为旅行商问题,在确定起始的切割顺序后运用蚂蚁算法算出优化的路径再作比较,就能得出最优切割路径,从而进一步缩短裁片的加工总时长,降低生产加工成本。
[0056]
对于已知的裁片加工切割点集合,由于是旅行商问题,人们对于旅行商问题,提出过很多解决办法,典型的有局部优化,遗传算法,模拟退火等等启发性搜索算法,于此相比,蚁群算法明显优于其他算法。蚁群算法具有较强的鲁棒性。相对于其它算法,蚁群算法对起始路线要求不高,即蚁群算法的求解结果不依赖于初始路线的选择,而且在搜索过程中不需要进行人工的调整。其次,蚁群算法的参数数目少,设置简单,易于蚁群算法应用到其它组合优化问题的求解。蚂蚁在觅食过程中会散发信息素分布,路径越短,信息素越浓,在正反馈机制的引导下逐渐聚集在最短的路径上。
[0057]
一些实施例中,所述步骤b包括:
[0058]
步骤b1:建立每个裁片的切割起始点,并形成切割起始点集合p,p={p1,p2,...p
n
},其中p1为第一个裁片的切割起始点,p2为第二个裁片的切割起始点,p
n
为第n个裁片的切割起始点;
[0059]
步骤b2:计算刀具原点p0与第k个裁片的切割起始点p
k
的距离d(p
k
,p0),以及计算刀具原点p0与第k 1个裁片的切割起始点p
k 1
的距离d(p
k 1
,p0),其中k∈n,k 1∈n;
[0060]
步骤b3:比较d(p
k
,p0)和d(p
k 1
,p0)的大小,当d(p
k
,p0)大于d(p
k 1
,p0)时,调换p
k
和p
k 1
在切割起始点集合p中的位置,当d(p
k
,p0)小于或等于d(p
k 1
,p0)时,p
k
和p
k 1
在切割起始点集合p中的位置不变。
[0061]
步骤b4为:重复步骤b2和步骤b3,直到所述切割起始点集合p中的所有元素都计算完毕,形成以距离所述刀具原点最近的裁片的切割起始点作为第一个元素并且以升序排列的切割顺序集合。
[0062]
贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择,该算法不从整体最优上加以考虑,该算法得到的是在局部最优解。贪心算法在问题求解方面可以作出最优选择,并且求解率较高。采用贪婪算法确定刀具的切割初始点,可以简单有效的优化路径。
[0063]
通过遍历所有所述裁片,将所有所述裁片的切割起始点与刀具原点之间的距离对比后按照升序的方式排序,所述切割顺序集合中靠前的元素对应的裁片的切割起始点与刀具原点之间的距离总会小于靠后的元素对应的裁片的切割起始点与刀具原点之间的距离,从而实现切割路径从初步优化。
[0064]
值得说明的是,所述步骤c包括:
[0065]
步骤c1:用表示第k只蚂蚁在t时刻从第i个裁片转移到第j个裁片的概率,其公式为:
[0066][0067]
其中,allowed
k
为第k只蚂蚁下一步允许的选择,α为信息启发式因子,β为期望启发式因子,τ
ij
(t)为t时刻从第i个裁片转移到第j个裁片的信息素,η
ij
(t)为t时刻从第i个裁片转移到第j个裁片的启发函数,η
ij
(t)是t时刻第i个裁片和第j个裁片之间的距离的倒数,s为第k只蚂蚁停留的终点裁片,τ
is
(t)为t时刻从第i个裁片转移到终点裁片的信息素,η
is
(t)为t时刻从第i个裁片转移到终点裁片的启发函数;
[0068]
步骤c2:根据概率选择第j个裁片,直到第k只蚂蚁访问完所有所述裁片,按照第k只蚂蚁访问所述裁片的顺序建立蚂蚁访问顺序集合,并依据所述蚂蚁访问顺序集合内元素的顺序算出刀具的第二空跑行程l
k

[0069]
蚂蚁算法是一种用来寻找优化路径的概率型算法。采用正反馈机制,使得搜索过程不断收敛,最终逼近最优解。每个蚂蚁个体可以通过释放信息素来改变周围的环境,且每个蚂蚁个体能够感知周围环境的实时变化,个体间通过环境进行间接地通讯。搜索过程采用分布式计算方式,多个蚂蚁个体同时进行并行计算,大大提高了算法的计算能力和运行效率。启发式的概率搜索方式不容易陷入局部最优,易于寻找到全局最优解。
[0070]
可选地,在所述步骤d和步骤e之间还包括步骤f;
[0071]
所述步骤f为:比较第k只蚂蚁对应的第二空跑行程l
k
和第k 1只蚂蚁的第二空跑行程l
k 1
的大小;
[0072]
当所述第二空跑行程l
k 1
小于所述第二空跑行程l
k
时,所述第二空跑行程l
k 1
对应的所述蚂蚁访问顺序集合覆盖所述切割顺序集合成为新的切割顺序集合;
[0073]
当所述第二空跑行程l
k 1
大于或等于所述第二空跑行程l
k
时,所述切割顺序集合不变。
[0074]
当所有蚂蚁都遍历完所有的裁片后,会形成与蚂蚁数量相对应的第二空跑行程,通过比对这些第二空跑行程的大小,提取其中最小的第二空跑行程,就会对切割路径进行优化。蚂蚁的数量越大,形成的第二空跑形成就会越多,从而能更加逼近最优解。
[0075]
一些实施例中,在所述步骤f和步骤e之间还包括步骤g;
[0076]
所述步骤g为:在所有蚂蚁访问完所有裁片后,更新信息素,其公式为:
[0077]
τ
ij
(t c)=ρ.τ
ij
(t) δτ
ij
[0078][0079]
其中,τ
ij
(t c)为t c时刻从第i个裁片转移到第j个裁片的信息素,ρ为信息挥发系数,0<ρ≤1,δτ
ij
为从第i个裁片转移到第j个裁片的轨迹边上留下的单位长度轨迹信息素,为第k只蚂蚁从第i个裁片转移到第j个裁片的轨迹边上留下的单位长度轨迹信息素,m为蚂蚁总数。
[0080]
用蚂蚁的行走路径表示切割路径优化问题的可行解,整个蚂蚁群体的所有路径构成切割路径优化问题的解空间。路径较短的蚂蚁释放的信息素量较多,随着时间的推进,较短的路径上累积的信息素浓度逐渐增高,选择该路径的蚂蚁个数也愈来愈多。最终,整个蚂蚁会在正反馈的作用下集中到最佳的路径上,此时对应的便是待优化问题的最优解。
[0081]
另一个实施例中,在所述步骤g更新信息素的过程中,加入最优路径增加的信息素,其公式为:
[0082][0083][0084]
其中,e为权值,δb(i,j)为第i个裁片转移到第j个裁片增加的信息素,l
b
为最优路径。
[0085]
τ
ij
(t c)=ρ.τ
ij
(t) δτ
ij
[0086]
在公式的基础上运用强化信息素的手段来更好的引导蚂蚁的搜索方向,增加额外的信息素量来提高算法效率。
[0087]
另一个实施例中,在所述步骤g更新信息素的过程中,加入补偿信息素,使在蚂蚁经过的数量越高的路径上留下的信息素越少,其公式为:
[0088][0089]
其中,q(t)为补偿信息素,r为从第i个裁片转移到第j个裁片的蚂蚁的数量,r为经过第i个裁片的蚂蚁的数量。
[0090]
蚁群算法在搜索过程中,蚂蚁在路径上释放一个常量q的信息素,因此在次优路径上留下大量的信息素,容易陷入局部最优解。在蚂蚁经过的数量越高的路径上留下的信息素越少能避免失去全局性。
[0091]
优选的,在步骤g和步骤e之间,还包括步骤h;
[0092]
所述步骤h为:设定额定迭代次数,重复步骤c、f和g,直到迭代次数等于额定迭代次数为止。
[0093]
设定的迭代次数越多,所有蚂蚁遍历所有裁片的次数就越多,从而能更加逼近最优解。
[0094]
值得说明的是,所述第一空跑行程l0和所述第二空跑行程l
k
通过以下公式得到:
[0095][0096]
其中,l
p
为第一空跑行程l0或第二空跑行程l
k
,l
s
为刀具原点到第一个裁片的切割点的距离,l
e
为第n个裁片的切割点回到刀具原点的距离,为刀具或蚂蚁从第i个裁片到第i 1个裁片的空跑路径,i=1为第一个裁片,n

1为第n

1个裁片。
[0097]
通过公式计算出第一空跑行程l0或第二空跑行程l
k
后,就能通过所述步骤d来比较所述第一空跑行程l0和所述第二空跑行程l
k
的大小。
[0098]
下文的公开提供了许多不同的实施方式或例子用来实现本发明的实施方式的不同结构。为了简化本发明的实施方式的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明的实施方式可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。
[0099]
在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
[0100]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0101]
尽管上面已经示出和描述了本发明的实施方式,可以理解的是,上述实施方式是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施实施进行变化、修改、替换和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜