排样算法综述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

排样算法综述

1距形排料算法 (2)

1.1.底层几何算法 (2)

1.2.排样策略 (2)

1.3.优化算法 (4)

2不规则形状排样算法概述 (5)

2.1不规则形状矩形拟合排样算法 (5)

2.2移动碰撞排样算法 (5)

2.3临界多边形在不规则形状排样问题中的应用 (6)

3异形件排样的零件定位策略 (9)

3.1基于NFP 最低点的定位算法 (9)

3.2基于重心NFP 的不规则形状零件定位算法 (10)

3.3排样顺序算法 (10)

4基于智能优化的二维排样算法 (11)

4.1 智能优化算法在排样问题中的应用 (11)

4.2二维排样问题的模拟退火算法求解 (12)

4.3二维排样问题的遗传算法求解 (14)

1距形排料算法

距形排料相对于多边形排料来说要简单许多,但是再简单的东西想要做到完美都是件很难的事。这里提供的算法比目前国内的公开研究文献中99.9%的来说都要高效,我指的是最终效率。当然每个环节都要仔细考虑,细节非常重要。我还是按照三个层次来描述。

1.1.底层几何算法

对于矩形来说,计算矩形之间的距离和重叠基本上没什么可说的,因为它太简单。这里我还是提几个可能被忽略的地方。1.尽可能的用空间换取时间的办法让实际运算时的时间更短。2.尽量用内联函数。

1.2.排样策略

基本上我把它归为左底策略,对于矩形来说,左底策略还是相当有效的,当然这只是基本策略,还有很多细节需要明确。如下图:

假设R1和R2是已经按照某种规则放置进容器矩形的两个材料矩形。

现在有一个新的待放置的矩形R. 定义A为矩形R的左下角。对于每一个已经放置进容器的矩形,比如R1,对于矩形R来说新的可能的放置点是(我们先不考虑R2的存在):

1. R靠紧容器矩形的左上角排放

2. R靠紧容器矩形的左下角排放

3. A点放置在R1的左上角

4. A点放置在R1的右下角

5. R的左上角对齐R1的右上角排放

显然,在上图中,2位置由于有R1存在不可行,3位置由于已经放置R2也不可行。所以可以选择的位置是1,4,5. 同理分析R2的加入后R可能增加的新的排放位置,分别是:

6. A点对齐R2的左上角

7.A点对齐R2的右下角

8. R的左上角对齐R2的右上角(图中所示正是这个位置)

好了,现在我们大概知道了有哪些可行的排放点。知道了这些点都是按照什么规则得来的。那么怎么在这些可行点中选择呢,就是说选择的标准是什么呢?如下图。

上图中内圈的两个矩形是紧靠排放的,外圈的分别是两个矩形缩放一定比例后的矩形。阴影部分就是外圈的两个矩形的重叠面积,它基本上表示了两个矩

形的紧密程度。当然,对于靠紧容器矩形的也要和容器矩形做这种运算,而且应当赋予更重的权值,因为靠边更能利用空间。最后你要累加这些重叠面积,它表示的就是这个位置的排放的总体紧密程度。

对于图一所示的情形,位置1应该是比较好的排放点。这取决于计算结果,还有一个因素就是排放点越靠近左边越好,这样,我们可以用排放优先值=重叠面积/排放点X坐标. 我们选择值最大的.

还有一个需要注意的是排放的位置要做左-上/下的滑动,而且可能是多次反复的。这样会使矩形更靠近边和角。所以矩形的放置点一定要有一个间隙(可以很小,比如0.00001),这样矩形才能滑动而没有阻碍。

1.3.优化算法

这基本上是调序的组合优化算法,你可以用任何一种智能优化算法来做. 但是我不推荐用遗传算法,遗传算法对于种群大小的设定取决于你的规模,当你的容器里要放置上千个矩形的时候,种群会变的很大,遗传和变异操作都会影响整个速度,而且你还要尝试各种遗传和变异因子,够你折腾的。

另外一个关键点是:你需要做一个启发式的搜索。就是说你要对这些待排放的矩形排序,规则有很多种,比如面积大小排序,周长,宽度,高度等。

你需要组织一下搜索的策略。实际情况中是这样的,用户需要在很短时间内找到一个较优解,然后在后续时间内慢慢搜索更好的解。

所以可以这样做:

1.先在几种排序规则内做局部搜索,这样有可能在较短时间内找到较优解。

2.然后在几种规则内用最好的那一个展开做全局搜索。当然这个全局搜索不是绝对的,其大概的过程都是这样的局部搜索--》在规定时间内未改进则跳出局部搜索--》进入另外一个局部搜索--》......

2不规则形状排样算法概述

现有不规则形状排样算法主要包括矩形拟合方法,移动碰撞法以及NFP。

2.1不规则形状矩形拟合排样算法

矩形拟合方法以 Jakobs的工作为代表,其主要原理是首先将不规则零件拟合为矩形,然后利用较为成熟的矩形排样方法进行排样。由于不规则形状可能和矩形形状之间相差很大,拟合为矩形后和矩形的边界存在很大空隙,因此这种方法的排样效果显然存在较大的材料浪费,如下图所示:

图2-1矩形拟合排样算法造成较低的材料利用率

在矩形拟合排样算法的基础上,可以采用“压缩”过程对排样方案进行进一步的优化,即在矩形排样结束后,对每个零件进行试探性的移动测试,以“压缩”未利用空间。但是压缩算法可能导致其他零件的排样位置发生连锁变化。

E.Hopper指出该方法无法保证“挤压”算法的有效性。单个零件的移动将可能导致多个零件的排样位置发生变化,形成连锁反应,其计算时间较长,另外零件的移动方向也很难确定。

2.2移动碰撞排样算法

碰撞排样算法目前应用比较广泛,其思想是将零件不停往下移动,直到发生碰撞无法移动为止。该算法模拟了物体的坠落和滑动过程,然而该方法也存在明显的缺陷,其缺陷主要包括:1)零件无法移动到被遮挡的空腔内部;2)零件无法移动到全局最低位置。如下图所示:

相关文档
最新文档