1.精选优质文献-奉献给您 精选优质文献-专心-专注-专业奉献给您 专心-专注-专业 精选优质文献-专心-专注-专业奉献给您 箱子摆放策略 摘要 本文针对箱子最优摆放问题,采用循环嵌套算法,建立利用率最优的整数规划模型,运用LINGO,求解,并用Excel画图,实现箱子的最优摆放与评估。针对问题一,建立数学模型,求在不让箱子超出底边的情况下,最多可以摆放多少个箱子。借助循环嵌套算法,采用由外向内逐步优化的改进模型:先摆放各边的外层,使边界利用率最大化,再摆放内层剩余的矩形空间,循环往复,直到里面剩余的空间再也无法容纳箱子。利用编程及解法分析:用
2. 根据此模型,第一类箱子数量为16个,第二类箱子数量为4个,第三类箱子数量为20个。针对问题二,建立数学模型,确定在允许箱子超出上、左、右三边的情况下,最多可以摆放多少个箱子。建立由下向上逐渐优化的模型:以底边为基准,每边向外扩展长边长度的一半。先摆放底边,使边界利用率最大化,再向上堆叠,使箱子之间没有空隙,使面积利用率最大化,直到上边最多超出箱子边长度的一半。 使用lingo编程,解决方案分析:根据此模型,第一类箱子数量为23个,第二类箱子数量为8个,第三类箱子数量为28个。对于问题三,我们采用左右对称的解决方案,箱子水平放置并向上堆叠,少量超出左侧、右侧和顶部。引入箱子数量和稳定性两个指标,并通过线性加权评估方法将此解决方案与模型一进行比较。
3.进行评价分析。得出在实际情况中,当考虑不同权重的综合指标时,模型1和模型3的摆放方式各有优缺点。关键词:最高利用率,循环嵌套算法,线性加权评价。1.问题重述。叉车是指装卸、堆垛和操作单件货物的各种轮式运输车辆。如何摆放箱子,使得叉车能够将最多的货物从生产车间运送到仓库,是很多企业关心的问题。现将箱子底部简化为相同形状和大小的矩形,将叉车底板设为边长为1.1米的正方形。需要建立一个通用的优化模型。在给出矩形箱子的长和宽后,可以利用此模型计算出使箱子数量最多的摆放方式。本题需要解决的问题是:问题1:构造一个优化模型,不允许箱子超出叉车底板或相互重叠。
4、根据问题提供的三种箱型数据,确定可摆放的箱型数量及摆放示意图。 问题2:假设箱型密度均匀,允许箱型在方形底板上方,左右部分超出底板,但不会从叉车底板上掉下来。重新构建优化模型,考虑问题1中三种规格箱型的摆放情况。 问题3:在不允许箱型相互重叠的条件下,设计另一种摆放方案,然后与问题1中的摆放方案比较设计方案的优缺点。 二、模型假设 1 假设箱型密度均匀,如果允许箱型在方形底板上方,左右部分超出底板(底部靠近叉车壁,不能超出),只要重心不超过底板,就不会从叉车底板上掉下来。 2. 假设箱子表面光滑,箱子之间没有缝隙,即把箱子分析成一个小矩形。 3. 假设叉车可以
5.力是无穷的,能承载足够多的箱子。 三、符号说明 符号说明 a 小矩形箱的长度 b 小矩形箱的宽度 c 长边向上堆放的矩形箱数量 d 宽边向上堆放的矩形箱数量 m 底座上矩形箱长边的数量 n 底座上矩形箱宽边的数量 sum 小矩形的总数 wj 摆放指标的权重系数 xj 无量纲化后的摆放指标的值 四、问题分析 本文研究的是边长为1.1的正方形叉车底板上矩形箱的堆放问题,不同规格的箱子最佳的堆放方式不一样,为尽可能满足各种型号箱子数量最多,必须设计一个通用的优化方案。问题1要求考虑货物的堆放方案,不允许箱子超出叉车底板,也不让箱子互相重叠。首先借鉴嵌套循环的启发式算法,列出一个列表,设计不超过边距的最优化堆放方式。
6.求解最大限度利用方形底板边长的方案,求得最佳长宽组合及所有小矩形个数。然后结合矩形问题的贪心算法进行挖坑动作,以最大限度利用方形边长为优化目标,求得最终的摆放方案,并用EXCEL制作示意图。问题2需要在能超出方形底板的上、左、右三面的条件下重新考虑问题1。为使可用面积最大,先将方形底板靠近叉车壁的边向左右各加宽箱体长度的一半,再将对边向上扩大箱体长度的一半,求得本题最大可用面积(矩形)。类比第一题的分析,LINGO算法设计先求解靠近叉车壁的边的最佳长宽比。 为了避免内部出现缝隙,以此边为依据,直接向上堆叠,得到最优解并用EXCEL做出示意图。
7.L制作示意图。问题三要求在不允许箱子重叠的情况下重新设计摆放方案。首先将矩形箱按同样的方法摆放进叉车,让小矩形箱的一小部分超出叉车底板,并且不允许矩形箱旋转,做到摆放时没有间隙,摆放对称。然后用线性加权综合指标法设定摆放数量、稳定性指标,比较模型三和模型一摆放方式的优缺点。 5.模型建立与求解 问题一: 模型一:从外到内的逐步优化模型基于循环嵌套算法,用简化模型解决二维矩形摆放问题。在边长为1.1的正方形内,摆放小矩形(a为长,b为宽),使小矩形的数量最多。 这就相当于利用a和b的各种组合,使得大正方形每条边的利用率尽可能高,也就是对边上的a和b的组合进行优化。
8.合理布局后,补齐剩余部分,结合矩形问题的贪心算法,进行占坑动作,得到最终的摆放方案。建立边长利用率最大化的目标函数:。其中,m、n分别表示大正方形某边上的小矩形的长边数和宽边数。利用LINGO程序求解。(1)第一个方框:a=0.3 b=0.24 L=1.1利用lingo程序求解,可得:m=2,n=2。摆放示意图如图1所示。图1 (2)第二个方框:a=0.6 b=0.4 L=1.1利用lingo程序求解,可得:m=1,n=1。摆放示意图如图2所示:图2 (3)第三个方框:a=0.3 b=0.2 L=1.1利用lingo程序求解,可得:m=1,n=4。摆放示意图如图3所示
9.图3 模型2:由外向内逐步优化的改进型模型 由于模型1流程复杂,不利于推广,我们构造了一个新的模型,即基于循环嵌套算法的改进型模型,用于解决二维矩形排列问题。在一个边长为1.1的正方形中,放入小矩形(a为长,b为宽),使小矩形的数量最大化。这就相当于利用a和b的各种组合,使得大正方形每条边的利用率尽可能高,即在边上优化a和b的组合。外层排列完后,再排列里面剩余的矩形区域,如此循环,直到剩余区域无法容纳小矩形为止。此模型不断循环,利于推广。 图4 参照流程图,设计程序求解每层小矩形的长边和宽边的数量m和n,以及所有小矩形的数量和。 模型解:(1)第一个盒子:a=0.3 b=0。
10, 24 L=1.1 使用程序求解得到:m=2,n=2,sum=16 因为算法的思想是:从外到内每一层都分成4个对称的部分,每个部分都是相同形状的矩形,所以此解只有一层,布局图如图5所示: 图5(2) 第二个箱子:a=0.6 b=0.4 L=1.1 使用程序求解得到:m=1,n=1,sum=4 布局图如图6所示: 图6(3) 第三个箱子:a=0.3 b=0.2 L=1.1 使用程序求解得到:m= 1 1 , n= 4 1 , sum=24 布局图如图7所示: 图7 问题2: 模型3:从下到上逐步优化 模型(1)允许箱子在方形底板上方,左右部件超出底板。因此,对于
11.为使面积最大,将正方形底座的左右边各扩大a/2,使其成为矩形。 (2)正方形底座的底边不能超过。以底边为依据,优化目标是让它的利用率尽量高,即先在扩大后的底边上优化a和b。图8 参考图8设计LINGO程序,设定目标函数为: 求出靠近叉车壁的小矩形的长边和宽边的数量m和n,以及向上累积的长边和宽边的小矩形的数量c和d。然后填充剩余的上面部分: 以整体的面积利用率为优化目标(面积利用率越大,在扩大的矩形底座上放置的小矩形越多),采用紧密相连的解法,以底边为依据,逐个向上累积。 模型解:第一个框:a=0.3 b=0.24 L=1.1 使用 LINGO 程序求解,得到:m=3, n=2, c=5, d
12. =4 摆放图如图9所示: 图9 注:最外面的实线代表最大可能的利用面积。 (2)第二类箱子:a=0.6 b=0.4 L=1.1 用LINGO程序求解,可得:m=2,n=1,c=3,d=2 摆放图如图10所示: 图10 (3)第三类箱子:a=0.3 b=0.2 L=1.1 用LINGO程序求解,可得:m=4,n=1,c=6,d=4 摆放图如图11所示: 图11 问题3: 1.摆放方法简述在箱子数量不一定相等的前提下,我们将每个小矩形箱按照相同的方式从叉车底板底部向顶部摆放在叉车中。 小矩形箱体按照问题2的要求,允许在方形地板的上方。箱子的左右部分略微超出地板,但不会从叉车地板上掉下来。不允许矩形箱旋转
13.情况是摆放没有缝隙,左右对称,这就是我们问题三的摆放方法。下图12是问题三中模型1的矩形盒的摆放方法(4X5),左右对称,每条边超出底板0.05米,顶部超出底板0.1米。下图13是问题三中模型2的矩形盒的摆放方法(2X6),左右对称,每条边超出底板0.05米,顶部超出底板0.1米。下图14是问题三中模型3的矩形盒的摆放方法(4X6),左右对称,每条边超出底板0.05米,顶部超出底板0.1米。 图12 图13 图14 2. 线性加权综合法分析 (1) 数据的采集和计算分别以问题一和问题三中的三个小矩形盒的摆放方式为依据,从这六种摆放方式的摆放次数和摆放稳定性两个方面收集评价数据,在查阅文献和模型总结后
14、我们认为,叉车的稳定性可以用重心偏移量来衡量,重心偏移量是每个矩形箱的重心到叉车底板中心的平均距离。因此,在六种摆放方式中,我们以叉车底板重心为原点建立直角坐标系。在保证每个矩形箱密度均匀的前提下,确定每个矩形箱的重心坐标(即矩形中点),并计算重心偏移量的值。第一题数据汇总如表1所示; 第三问题的数据汇总见表2。表1 模型一数重心偏移量 图1160.图240.图3200.表2 模型三数重心偏移量 图1200.图260.图3240.(2)数据一致性及无量纲处理12上表中,评价指标(摆放次数)属于“极大指标(总是期望指标值尽可能大)”,(重心偏移量)属于“极小指标(总是期望指标值尽可能大)”。
15.期望指标值越小越好),因此评价指标类型应先经过变换保持一致。经过考虑,我们采用倒数法将极小转化为极大,即把重心偏移指标的数据改为其倒数进行计算,得到的数据即为稳定性指标。倒数法:。上表中评价指标(安置次数)和(稳定性)之间由于单位和数量级不同,导致这些指标无法通约,给综合评价带来困难。在数学上,我们经常采用数据的无量纲处理,使指标数据标准化。常用的方法有:标准差法、极值差法、功效系数法等。通过比较,本次我们采用标准差法进行无量纲处理。其中。显然,指标的均值和均方差分别为0和1,即无量纲指标,称为标准观测值。第一题的数据处理如表3所示
16、第二题的数据处理见表4。表3问题一数稳态图10.-1。图2-1.0。图30.1。表4问题三数稳态图10.-1。图2-1.0。图31.0。(3)权重系数的讨论权重系数是指把整体分解为若干个因素(指标)时,用以表示各因素在整体中大小的数值,简称权重。指标的权重反映了该指标在整体中的相对重要性;同时也是评价对象对该指标值认可程度的反应,即指标越重要,权重越大;反之,权重较小。确定权重系数的常用方法有:层次分析法(AHP)、法()、主成分分析法、熵值法和均方误差法等。 这些方法求解起来比较麻烦,需要大量的计算,不太适合这个问题。由于实际应用中矩形框的放置可能会受到矩形框质量的影响,
17、箱内货物数量、种类等问题对权重系数的选取有影响,导致权重系数选取不一致,因此我们暂时将作为指标(摆放数量)的权重系数和作为指标(稳定性)的权重系数。本次我们将讨论三种方案下不同权重系数下的结果: 方案一:要求注重矩形箱数量,以数量多为主要目标,则权重系数确定为。 方案二:要求同时考虑矩形箱数量和稳定性,则权重系数确定为。 方案三:要求注重矩形箱稳定性,以稳定性好为主要目标,则权重系数确定为。 (4)加权综合指数计算 根据公式,可计算出指定摆放方式的加权综合指数: 公式中,表示摆放指标的权重, 表示摆放指标无量纲化后的数值。 各放置方式加权综合指数最终计算结果如表5所示。表5 权重图
18、1 图 2 图 3 问题 1 -0.-1.0。 问题 3 0.-0.1。 问题 1 -0.-0.0。 问题 3 -0.-0.0。 问题 1 -0.0.0。 问题 3 -1.0.0。 从表格分析中我们可以看出:(1)在方案1(重量)的情况下,问题3中型号1、2、3的矩形箱的摆放方式均优于问题1,也就是说,在注重箱子数量的前提下,问题3的摆放方式优于问题1。(2)在方案2(重量)的情况下,问题1中型号1、2、3的矩形箱的摆放方式均优于问题3,也就是说,在同时考虑箱子数量和稳定性的前提下,问题1的摆放方式优于问题3。(3)在方案3(重量)的情况下,问题1中型号1、2、3的矩形箱的摆放方式均优于问题3,也就是说,在注重箱子稳定性的前提下,问题1的摆放方式优于问题3。
19. 摆放方式均优于问题3。 (4)综上所述,在不同权重的综合指标计算中,问题1和问题3的摆放方式各有优缺点。实际情况中,如果追求项目数量较大,选择问题3的摆放方式更为合适;如果追求稳定性更好,选择问题1的摆放方式更为合适。 六、模型验证 对于模型1:设底盘总面积为S,小矩形的长宽分别为a、b,N为底盘面积利用率最高时的小矩形个数。由N=S/(ab)可得:N1=16 N2=5 N3=20。由模型1可得:sum1=16 sum2=4 sum3=20。由模型1得到的面积利用率很高,结果合理。 理想情况下,第二种盒子可以容纳 5 件物品,但根据实际情况,盒子的形状是固定的,无法分割,所以只能容纳 4 件物品。因此,我们得到的结果是
20.全局最优解。对于模型2:因为条件允许箱子在方形底板的上方,左右两侧部分超出底板(底部紧贴叉车壁,不能超出),只要重心不超过底板,就不会从叉车底板上掉下来。因此,我们假设其他三条边向外扩展一半长边,对新构造的矩形底板做如下测试:N1=23 N2=9 N3=29,由模型可知:sum1=23 sum2=8 sum3=28。根据实际情况,箱子的形状是固定的,无法分割,而实际情况中并不是所有的箱子都是以一半长边向外摆放的,因此我们得到了一个较优的解。七、模型评价1.模型的优点:用于问题1和2的优化模型有以下优点:(1)该方法计算简单,操作性强,易于推广使用。 (2)模型得到的可行解已被验证为全局最优解。
21.解决方案。问题3中采用的线性加权综合法有以下优点:(1)评价指标之间的影响是线性补偿的,保证了综合评价指标的公平性;(2)不同的权重系数对评价结果有显著的影响,即权重较大的指标值对综合指标的影响较大;模型的缺点:问题1和2中采用的优化模型有以下缺点:(1)如果方案中有多个可行解,则结果只能提供一个答案。(2)模型得到的结果是基于理想化的,可能与实际情况不一致。问题3中采用的线性加权综合法有以下缺点:(3)选取的评价指标相对较少,可能导致结果考虑不全面。 参考文献 1 陈敬兵, 黄文奇, 求解矩形问题的贪婪算法, 计算机工程, 33(4): 160-162, 2007. 2 隋树林, 邵炜, 高子有
22. 等体积货物三维装箱问题的一种启发式算法,信息与控制,34(3):490-494,2005。 3 张伯贤,港口叉车,武汉:武汉江运学校,1979。 4 叶宗禹,论多指标综合评价中指标正量纲法与无量纲法的选取,诸子百家,24-25,2003。 5 刘子元,刘成福,综合评价中指标权重系数确定方法探讨,研究与方法,44-48,2006。 附录 附录1:LINGO程序 min=1.1-a*n1-b*n2;1.1-a*n1-b*n2=0;gin(n1);gin(n2);data:a=?;b=?; 附录2:程序 task1.ma=input(box a=);b=input(box width b=);
23. l=input(底板边长l=);i=1;f(i),m(i),n(i)=msy(a,b,l);c=min(a*m(i),b*n(i);while (l-2*c)=ai=i+1; f(i),m(i),n(i)=msy(a,b,l-2*c); c=c+min(a*m(i),b*n(i);endm,nsum=4*sum(m.*n)Msy. fmax,x1,x2=msy(a,b,l)m1=fix(l/a);n1=fix(l/b);fmax=0;for i=0:m1 for j=0:n1 f=a*i+b*j; if ffmax&f=l fmax=f; x1=i; x2=j; end 附录3:LINGO程序数据: a=?; b=?; l=?; = m*c+n*d; l+a-ba*m+b*n; a*m+b*n=l+a; lb*cb/2; b*c=l+b/2; la*da/2; a*d=l+a/2; gin(m); gin(n); gin(c); gin(d);