工件的安装与排序问题
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
观察图 1、图 2,发现工件的重量与体积分布没有明显的关联,因此很难找 到一种统一的优化方法。 若分别进行优化一方面在重量与体积两个解空间中进行 搜索算法复杂度过大且效率不高, 另一方面可能遵循重量约束的组合目标优化的 可行解集与遵循体积约束的组合优化解集并无交集,即使有运算量过于庞大,效 果并不理想[3]。不过在优化之前我们可以通过两个约束条件的单独组合优化来验 证是否存在可行解,以下为算法过程: Step1(可行性验证) :验证单一约束条件下可行解是否存在,即满足重量之差不 大于给定值(4g)的可行解是否存在,满足体积之差不小于给定值(3 cm3 )的可行 解是否存在。若找不到满足约束条件的可行解,则算法结束,返回不能满足要求 的信息。 Step2(可行解寻找) :将对体积的约束条件嵌入到问题 1 的算法一中去,作为搜 索过程中的一项约束条件, 即在搜索过程中工件组合必须满足体积的要求,若进 入了不满足体积要求的空间则退到上一层循环中去以退出不满足要求的空间。
3
5.1.1 模型的建立 用 i 1,2,,24 表示 24 个工件, j 1,2,,6 表示圆盘上的 6 个扇区, M j 表 示各扇区上 4 个工件的总重量。 引入决策变量,定义如下:
1, 第i个工件分配在第j个象限 xij = 0,第i个工件没有分配在第j个象限
定义工件分配矩阵如下:
x11 x21 X x31 x (24)1 x12 x22 x32 x(24)2 x16 x26 x26 x(24)6
(1)
(2)
在工件分配矩阵中, 列表示圆盘上的一个扇形区域, 行表示一个工件。 显然, 题目中要求每个工件必须且只能放到一个位置上,因此在工件分配矩阵中,每一 行的所有元素的和必须为 1,即
扇形区域 1 2 8 15 20 1357. 5 扇形区域 4 6 14 22 23 1357
扇形区域 2 4 10 16 21 1357 扇形区域 5 1 11 18 25 1357
扇形区域 3 9 12 13 17 1356.5 扇形区域 6 3 6 7 19 1357.5
注:扇形区域的工件次序可任意排列
关键字:工件排序 0-1 规划 多目标规划
分层序列法
3 准则
1
一 问题重述
某设备由 24 个工件 组成,安装时需要按工艺要求重新排序。 Ⅰ.设备的 24 个工件均匀分布在等分成六个扇形区域的一圆盘的边缘上, 放在每个扇形区域的 4 个工件总重量与相邻区域的 4 个工件总重量之差 不允许超过一定值(如 4g) 。 Ⅱ.工件的排序不仅要对重量差有一定的要求,还要满足体积的要求,即两 相邻工件的体积差应尽量大,使得相邻工件体积差不小于一定值(如 3 ; cm3 ) Ⅲ.当工件确实不满足上述要求时,允许更换少量工件。 针对工件的重量和体积有不同的排序原则,提出了以下 3 个问题: 1. 按重量排序算法; 2. 按重量和体积排序算法; 3. 当工件不满足要求时,指出所更换工件及新工件的重量和体积值范围, 并输出排序结果。
6
当把体积约束条件嵌入到问题一的约束条件中去,得到以下规划模型:
min m 6 xij 1 j 1 24 xij 4 i 1 s.t. M j M j 1 m M M m 1 6 vi vi 1 3 v24 v1 3 x 0或1 ij
i 1, 2, j 1, 2, j 1, 2, i 1, 2,
, 24 , 6 ,5 , 23
(15)
用 lingo 软件运行一段时间发现,存在一组局部最优解使当相邻工件间的体 积差不超过 3 cm3 时,相邻象限间的工件重量差的最大值为 0.5g。说明第一组数 据可以同时满足重量和体积的约束条件进行排序。 5.2.3 模型的建立 问题二要求同时考虑重量和体积的约束, 工件加工工艺要求象限间工件的重 量差不大于一定的值,工件间的体积差不小于一定的值,是典型的双目标优化问 题。 根据分层序列法,本文优先考虑扇形区域间的重量差这一工艺要求,尽量满 足工艺要求的体积差。 以模型一求出的全局最优解的目标函数值——象限间的重 量差的最大值为 0.5g 作为约束条件, 以工件间的体积差的最小值 h 作为目标函数, 从而将双目标规划就变成单目标规划,得到模型二如下:
二 问题分析
2.1 问题一的分析 针对问题一,要求每个相邻的象限的总重量差值不能超过某个数值(m)但 主要问题是对工件的安排如何将这些工件分配到各个象限,此时我们引入 0-1 变量来确定第几个工件是否放到第几象限, 最后通过一些约束条件来建立规划模 型即可进行求解。 2.2 问题二的分析 针对问题二, 既要求满足重量约束又要求满足体积约束, 是多目标优化问题。 由于重量与体积之间相互并不一定有太大关联, 因此若数据不理想而两者又要同 时满足可能是非常困难的。 在建模之前, 我们把对体积的要求作为一项约束条件, 按重量目标优化, 如果得到局部最优解,说明该组数据可以同时满足重量和体积 的约束条件。 本文优先考虑重量的约束条件,利用模型一求解的全局最优解的目 标函数值作为约束条件, 以相邻工件间的体积差的最小值作为目标函数,将双目 标规划转换为单目标规划,建立问题二的求解模型。 2.3 问题三的分析 当模型一、 二的排列方式不满足仍不满足重量与体积要求,需要更换少量叶 片,针对问题三,我们提出了工件的重量与体积更换模型。 考虑到生产叶片产生的误差属于随机误差, 所以数据属于正态分布, 根据 3
x
j 1
6
ij
i 1, 2,
, 24
(3)
又因为每个扇形区域都要分到 4 个工件,要求每个位置必须且只能放一个 工件,即
x
i 1
24
ij
4
j 1, 2,
, 6
(4)
以相邻扇区重量之差 M ij 的最大值为目标函数,建立最大最小化模型,寻 找一组排序方案使这个值最小,即
分析表 2 的计算结果可以发现, 扇形区域 1~6 的工件总质量分别为: 1395g、 1395.5g、1395g、1395.5g、1395.5g、1395.5g,扇形区域间的质量差的最小值为 0g,最大值为 0.5g,为全局最优解。 5.2 问题二 5.2.1 模型准备 分层序列法的概述[1] 分层序列法是根据各个目标的重要程度顺序排列,以决定在多个目标中,各 个目标考虑的优先级,假设: F1 ,F2 , , Fm 为一系列的目标, 重要程度依次降低。 将第一个目标 F1 与约束并 列,求解之,得到最优解集 R1 。再在 R1 的约束下,求 F2 的最优值,得 R2 ,依次 类推,直到求出 Rm ,即为多目标问题的最优解集合。 5.2.2 可行性检验 本问题要求给出一个同时满足重量和体积约束条件的排序算法, 首先我们绘
工件的安装与排序
工件的安装与排序问题
摘要
工件的安装与排序是典型的组合优化问题。 由于本题要求考虑工件重量及体 积的差异,故结合实际情况,本文为给出了不同约束条件下的工件排序模型,并 得出相应的工件安排方案。 针对问题一,我们运用了 0-1 规划的指派问题模型,以各扇形区域间叶片重 量差的最大值为目标函数,求其最小值,根据指派问题的要求,每个工件必须且 只能被分配一次, 圆盘上的每个位置必须且只能分配一个工件,我们以此为约束 条件,运用 lingo 软件编程对数据一、二进行计算,均得到了全局最优解,即相邻 扇形区域总重量差的最大值 0.5g。 针对问题二, 题目要求同时考虑重量和体积的约束,是典型的双目标优化问 题。本文根据分层序列法,将双目标规划转化为单目标规划,在优先考虑扇形区 域间的重量差这一工艺要求的条件下,针对数据一,以模型一求出的全局最优解 的目标函数值——相邻象限间的重量差的最大值为 0.5g 作为约束条件,并以工 件间的体积差的最小值-- h 作为目标函数进行求解,最终得到了符合题意的较优 解使 h 4cm3 。针对数据二,为了快速运行出结果,将相邻象限间的重量差的最 大值为赋值为 1, 最终得到的较优解使 h 4cm3 , 并分别给出了相应的工件排序。 对于问题三,本文先利用 3 原则初步替换整体数据的奇异值,然后建立了 以对方差均值分析为基础的工件重量与体积更换模型, 即以将重量向均值方向靠 拢,体积与均值远离的原则,对叶片进行更换,最后根据替换后的数据,给出新 工件重量与体积的范围。
扇形区域 1 4 10 17 20 1395 扇形区域 4 5 15 22 24 1395.5
扇形区域 2 2 6 9 23 1395.5 扇形区域 5 1 8 18 19 1395.5
扇形区域 3 3 7 11 16 1395 扇形区域 6 12 13 14 21 1395.5
注:扇形区域的工件次序可任意排列
min max{M12 , M 23 , M 34 , M 45 , M 56 , M 61}
(5)
令 m max{M12 , M 23 , M 34 , M 45 , M 56 , M 61} ,建立基于 0-1 规划的模型 一如下:
min m 6 xij 1 j 1 24 xij 4 s.t. i 1 M M m j 1 j M 6 M1 m xij 0或1
5
出了第一、二组数据重量和体积的散点图,如下:
30 25 20 15 10 5 0 0 5 10 15 20 25 30 图 1 数据一重量、体积的散点图分布 20 18 16 14 12 10 8 6 4 2 0 0 5 10 15 20 25 30 图 2 数据二重量、体积的散点分布图 重量 体积 重量 体积
分析表 1 的计算结果可以发现, 扇形区域 1~6 的工件总质量分别为: 1357.5g、 1357g、1356.5g、1357g、1357g、1357g、1357.5g,扇形区域间的质量差的最小 值为 0g,最大值为 0.5g,为全局最优解。 第二组数据的求解结果如下:
表 2 数据二的计算结果
区域 工件序号 每个区域的重量 区域 工件序号 每个区域的重量
Mi
M
,6 ;
vi
, 24
当 xij 为 1 时,表示第 i 个工件分配在第 j 个区域;
xij
当 xij 为 0 时,表示第 i 个工件未分配在第 j 个区域。
五 模型的建立与求解
5.1 问题一 设备的 24 个工件均匀分布在等分成六个扇形区域的一圆盘的边缘上,放在 扇形区域的 4 个工件总重量与相邻区域的 4 个工件总重量之差不允许超过一定值 (如 4g) ,这是一个组合优化问题,本文考虑建立 0-1 规划指派问题模型[2]。
2
准则,我们可初步剔除数据中的奇异值。在此基础上,通过对数据分布及其方差 均值的分析,我们提出了工件重量与体积更换模型。对于重量,将偏离重量较大 的值更换为均值,使数据向中心即均值靠拢;而对于体积,将与均值最为接近的 值更换为对应区域的最值,增大方差,使数据远离所在部分的均值,更利于题目 条件的满足,并根据更换后的数据,给出新工件重量与体积的范围。
三 模型假设
1. 假设题目中所给的数据真实可靠。 2. 仅靠重量和体积对工件排序的影响。 3. 假设工件的性能足够好,不会因磨损而改变重量和体积等参数。
四 符号的定义与说明
符号
符号的含义 第 i 个扇区的所有工件的总重量
Mi
M ij
i 1, 2,
,6 ; ,6 ;
第 i 个扇区与第 j 个扇区工件的重量差 i, j 1, 2, 第 i 个扇区所有工件重量的平均值 i 1, 2, 所有工件重量的平均值; 第 i 个工件的体积 i 1, 2,
i 1, 2, j 1, 2, j 1, 2,
, 24 , 6 ,5
(14)
4
5.1.2 模型的求解 利用 lingo 软件编程(程序及运行结果见附录) ,第一组数据的求解的结果 如下表所示:
表 1 数据一的计算结果
区域 工件序号 每个区域的重量 区域 工件序号 每个区域的重量