面料剪裁利用率优化问题,即二维不规则带排样(Strip Packing)问题简介

  • 2020 年 3 月 26 日
  • 筆記

人工智能是国家战略性新兴产业。随着制造产业信息建设的不断完善,且产业布局较为完整,逐渐诞生了一批信息化程度高的工业制造企业。

面料切割利用率的提升是纺织行业长期追求的目标。如何提升面料切割利用率,既是企业生产精益化的难点,也是痛点。当前纺织行业布匹原材料的成本占到40%左右,价值较高。优秀的算法应当实现在较短时间范围内计算获得高质量可执行的排版结果,减少切割中形成的边角废料,提升面料切割利用率,减少计划时间。

针对这个问题,数据魔术师团队有一套完整的、成熟的解决方案。

下面给出这个问题的介绍。

问题介绍

问题聚焦面料剪裁利用率优化,要求开发高效可靠的算法,在较短时间范围内计算获得高质量可执行的排版结果,减少切割中形成的边角废料,提升面料切割利用率,减少计划时间、提高工作效率和避免人工计算的失误,提升价值降低成本。

在规则面料的情况下,满足零件旋转角度、零件最小间距、最小边距的约束,解决以下两类问题:

1.基于所给零件,进行面料排版加工,耗料长度最短,面料利用率最高;

2.在问题一的基础上,避开瑕疵区域面料加工,耗料长度最短,面料利用率最高。

数据及约束说明

数据包含:面料数据表、零件数据表。

数据文件夹内包括:

  • 批次1零件数据
  • 批次1面料数据
  • 批次2零件数据
  • 批次2面料数据
  • readme:数据的基本介绍

1)零件数据

编号

列名

说明

示例

1

下料批次号

Primary key

L0001

2

零件号

Primary key

s000001

3

数量

1

4

外轮廓

[[1420.0, 5998.6], [1420.0, 6062.8], [2183.1, 6062.8],[2183.1, 5998.6], [1420.0, 5998.6]]

5

允许旋转角度

逆时针旋转角度

0,90,180,270

6

面料号

M0001

注:外轮廓曲线数据均离散化为点坐标序列;所有尺寸的单位为毫米(mm). 2)面料数据说明

编号

列名

说明

示例

1

面料号

Primary key

M0001

2

面料规格

规则(矩形)面料,长度*宽度(单位:mm)

10000*100

3

瑕疵区域

瑕疵均为圆形区域,标注方式为圆形中心、圆形半径。比如[[2000,400],80],即圆形中心坐标点为[2000,400],半径为80。坐标系的原点为面料的左下角(参考“约束说明“第(7)条说明)

[[[2000,400],80],[[1000,1200],50],⋯]

4

零件间最小间距

5

5

最小边距

10

注:瑕疵区域均为圆形;所有尺寸的单位为毫米(mm)。

排样规则

1)排版的零件不能超出面料的可行区域;

2)排版零件互不重叠;

3)零件按批次,在同一面料上排版;

4)面料可能存在多个长宽度规格,如宽度为900mm、1000mm等、长度为10000mm、12000mm等;

5)允许用户设置切边预留量,如面料四边各预留5mm(最小边距);切割零件间预留量5mm(最小间距);

6)某些零件存在旋转角度上的要求,比如零件纹理方向必须保持一致;旋转角度为0表示,零件不允许发生旋转,必须原样放在面料上,面料的放置方向为面料窄边(宽度)在垂直方向,面料宽边(长度)在水平方向;旋转角度为90表示允许零件逆时针旋转90度。

7)切割零件需要避开面料上的瑕疵,瑕疵均为圆形区域,标注方式为圆形中心、圆形半径,坐标系的原点为面料的左下角(参考“数据说明”第(2)条“面料数据说明”),面料的放置方向为面料窄边(宽度)在垂直方向,面料宽边(长度)在水平方向;瑕疵与零件间间距视同零件间间距,即,如果零件间间距(最小距离)为5mm,零件与瑕疵的间距(最小距离)也为5mm。

移步留言区可下载相关数据

———- END ———-