天然肠衣搭配问题

天然肠衣搭配问题

摘要

肠衣业是我国传统的民族加工业,具有悠久的历史,出口量占世界首位。肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序,根据原材料的长度将原材料按指定的根数和总长度组装成成品(捆),但在实际组装的过程中要考虑到提高生产效率,为此公司先将所有的原料丈量好,建立一个原料表,根据原料表设计搭配方案,工人在使用时直接根据此方案生产来提高效率。但设计方案时要在公司提出的五个要求的前提下设计,即要满足公司的要求,因此这是一个目标规划问题。

针对要求1:在给定原材料的情况下,要求捆数越多越好。采用目标规划,目标函数(准则函数)是按各目标约束的正、负偏差变量和赋予相应的优先因子而构造的。当每一目标值确定后,决策者的要求是尽可能缩小偏离目标值。因此目标规划的目标函数只能是minzf(d,d),目标约束条件是每捆成品的总长度Li,总和总根数Ni,总。然后运用Matlab和Lingo求解,得出每捆成品的最优组合,在此基础上,结合表2给出的在原料一定的条件下,确定每类成品的最优捆数,满足了要求2;

针对要求3包含在目标约束条件中,即总长度的变化范围在88.5米和89.5米之间,总根数介于标准根数减1和标准根数之间;

针对要求4是对模型的优化,如果某种规格对应原料如果出现剩余,我们可以放在上一级使用,这样降低成本;

针对要求5如果不对我们的模型进行优化,则模型运行时间大于30分钟,不满足要求,在此基础上对模型进行优化,使其在规定的时间内给出搭配方案。

关键词:肠衣搭配、目标规划、优先级、矩阵、目标约束条件

一、 问题重述

天然肠衣(以下简称肠衣)制作加工是我国的一个传统产业,出口量占世界首位。肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序。传统的生产方式依靠人工,边丈量原料长度边心算,将原材料按指定根数和总长度组装出成品(捆)。

原料按长度分档,通常以0.5米为一档,如:3-3.4米按3米计算,3.5米-3.9米按3.5米计算,其余的依此类推。表1是几种常见成品的规格,长度单位为米,∞表示没有上限,但实际长度小于26米。

为了提高生产效率,公司计划改变组装工艺,先丈量所有原料,建立一个原料表。表2为某批次原料描述:

方抓药”进行生产。

公司对搭配方案有以下具体要求:

(1) 对于给定的一批原料,装出的成品捆数越多越好;

(2) 对于成品捆数相同的方案,最短长度最长的成品越多,方案越好; (3) 为提高原料使用率,总长度允许有± 0.5米的误差,总根数允许比标准少1根;

(4) 某种规格对应原料如果出现剩余,可以降级使用。如长度为14米的原料可以和长度介于7-13.5米的进行捆扎,成品属于7-13.5米的规格;

(5) 为了食品保鲜,要求在30分钟内产生方案。

请建立上述问题的数学模型,给出求解方法,并对表1、表2给出的实际数据进行求解,给出搭配方案。

二、基本符号假设与说明

2.1基本假设

1、假设题中所给的数据真实可靠,数据误差在允许范围内;

2、假设在成品指定规格的前提下,公司的要求是具有优先级的即成品捆数要求最高,其次是方案要求较好,再次是尽可能使原料剩余较少,最后是方案产生时间较短;

3、假设在测量肠衣的长度时,肠衣的弹性可忽略不计; 4、测量肠衣时的误差可忽略不计;

5、假设所有的肠衣具有相同的质量,质量较好即具有较好的阻隔性、稳定的收缩率和较好的膜强度;;

2.2符号说明

Li,min:第i类成品的最短长度(i1,2,3); Li,max:第i类成品的最大长度(i1,2,3);

Li总:第i类成品中每捆成品的总长度(i1,2,3);

Ni,总:第i类成品中每捆成品的总个数(i1,2,3);

d:决策变量的函数;

d0:d的目标值;

d1:总长度超过目标长度的部分;

d1:总长度未达到目标长度的部分;

:总根数未达到目标根数的部分; d2

d3:装出的成品捆数;

:成品捆数相同时,最短长度最长的成品; d4

d5:某种规格对应原料出现剩余; d6:产生方案的时间在30分钟内; w1:总长度的权系数; w2:总根数的权系数;

,优先级为PnPn1; Pn:优先因子即优先等级(n1,2,3,4,5)A:表示表2原料根数的矩阵;

; Xij:表示A中的元素即分档后的每种原料的根数(i1,2,6;j1,28)B:表示分档原料长度的矩阵;

Bij:表示分档原料的长度。

三、问题分析

根据题目中的表1的信息可知,成品的天然肠衣可分为三类:第一类成品的最短长度L1,min为3米,最大长度L1,max为6.5米,每捆成品要数为20根,每捆总长度为89米;第二类成品的最短长度L2,min为7米,最大长度L2,mzx为13.5米,

每捆成品的根数为8根,每捆成品的总长度为89米;第三类成品的最短长度L3,min为14米,最大长度L3,max为26米,每捆成品的根数为5根,每捆成品的总长度为89米。

表2给出了分档后每种原料的根数,为了方便说明和解题,我们将表2当作一个68的一个矩阵A,矩阵A中的元素用Xij表示,Xij表示每类成品每捆中分档的每种原料的根数,如对于第一类成品而言:X11表示每捆中长度为3米的根数,X12表示每捆成品中长度为3.5米的根数等等依此类推,长度大于26的原料不存在,将其根数设为0,于是我们构造一个68的矩阵A。

根据表1对每捆成品的长度和根数的限定,针对不同的成品我们可以根据其长度和根数列出不等式,再用Lingo和Matlab求解,所得的解是一个可行域,可行域越大,解越多,所得的成品捆数就越多,满足公司的第一个要求;针对要求2我们可以这样理解,如有a,b两个解,所得的成品捆数相同,但a中最短长度的成品捆数有4个,b中成品捆数有5个,则b方案较好;要求3是我们列不等式的条件即总长度应该介于88.5和89.5之间,总根数介于标准根数减1和标准根数之间;要求4是我们对方案的调整即对我们模型的优化,某种规格对应原料如果出现剩余,可以降级使用。如长度为14米的原料可以和长度介于7-13.5米的进行捆扎,成品属于7-13.5米的规格;要求5是我们模型运行的时间的优化,使其运行时间小于30分钟即在食品未过期之前运行出方案。

四、模型的建立与求解

4.1模型的建立与求解

将表2看作是一个68的矩阵,矩阵元素Xij表示组成每捆成品的每类原料的根数,我们建立如下矩阵:

X11X21

A

X61B11BB21

B61

X12

X17

X22X27X62B12

X67B17

X18X28,其中X67,X680,因为无原料,根数为0。 X68

B1833.5

77.5B28

B682323.5

6.5

1010.5,为系数矩阵。 

00

6

B22B27

B62

B67

根据我们假设的优先级,我们可知:满足成品规格是公司规定的,其优先级最高,故设为P其次是公司利润最大即要求成品捆数越多越好,我们设其优先1;级为P2;再次是方案要较好即成品捆数相同的条件下,要求最短长度最长的成

品最多,我们设其优先级为P3;接着应使公司原料浪费少,即出现某种规格的原料剩余量尽可能的少,降低公司成本,我们设其优先级为P4;最后要求方案产生时间尽量短,不影响食品保鲜,是对方案时间的一个限制,我们设其优先级为

P5,我们知道,目标规划的目标函数(准则函数)是按各目标约束的正、负偏差变量和赋予相应的优先因子而构造的。当每一目标值确定后,决策者的要求是尽可能缩小偏离目标值,因此目标规划的目标函数只能是minzf(d,d),即目标函数为:



minzP1(w1(d1d1)w2d2)P2d3P3d4P4d5Pd6

目标约束条件是每捆成品的总长度Li,总和总根数Ni,总。

4.1.1第一类成品模型

(1)满足第一类成品规格,总长度L1,总为89米,允许有± 0.5米的误差;总根数N1,总为20根,允许比标准少1根。由于总长度与总根数具有相同的优先权,故设优先级为P1,权重设为:w1w20.5,所以第一个目标函数为:

minzP(w(dd)wd111122)

由于第一类成品是由3-6.5米规格原料组成的,故我们可以将矩阵A,B中除3-6.5米规格的原料外其它原料的长度设为0,根数设为0,便于计算,设置后的矩阵A,B如下:

X11XA21

X61B11BB21

B61

X12

X17

X22X27X62B12B22B62

X67B17B27B67

X18X11

0X28X680B1833.5

00B28



B6800

X12X1700



00

X180 0

66.500 

00

目标约束条件为:

68

BXdd89;ijij11

i1j168

Xij20;i1j168

Xij19;

i1j1

X20,(i1,2,6,j1,2,8);i1j

(i1,2,6;j1,2,8)Xij0,



运用Lingo求解,程序如下:

model:

!第一类成品搭配方案; sets:

Material/M1..M8/:Length Number; level/1..6/:p,z,goal; variable/1..8/:x;

s_con_num/1..8/:g,dplus,dminus; s_con(s_con_num,variable):c;

obj(level,s_con_num)/1 1,2 2,2 3,2 4,3 8,4 5,4 6,4 7,5 1/:wplus,wminus; endsets !数据部分; data:

Material,Length,Number=M1 3 43 M2 3.5 59 M3 4 39 M4 4.5 41 M5 5 27 M6 5.5 28 M7 6 34 M8 6.5 21; enddata

min=@sum(level:p*z); p(ctr)=1;

@for(level(i)|i#ne#ctr:p(i)=0);

@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)* dminus(j)));

@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i

-262-

)=g(i));

@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal));

End

求得的结果如下:

依次对剩余根数运用上述模型,直到所有根数之和小于20或所有原料的长度总和小于89为止,经运算迭代8次,求得结果1如下表:

(2)根据以上结果,在原料限定的情况下,我们的目标是:

max{d3};

即装出的成品捆数越多越好,根据我们的计算方案我们可知:方案1,3成

品捆数为16,方案2,4,5成品捆数为18捆;所以在原料限定的情况下,我们认为方案2,4,5符合公司要求。

(3)对于成品捆数相同的方案,选择最短长度最长的成品的方案:即在满足(1)的条件下,我们要求成品数相同的方案具有:

max{d4};

由(1)可知方案2,4,5的成品数相同,但它们最短长度都是3米,方案

2用了40根3米的,其总长度为120米;方案4用了43根3米的,其总长度为129米;方案5用了36根3米的,其总长度为108米,故我们认为方案4较好。

(4)某种规格对应原料如果出现剩余,可以降级使用即要求在满足(1)(2)(3)的情况下,尽量不出现剩余或出现剩余的规格较少,但在原料表一定的情况下出现某种规格原料剩余是不可避免的,所以我们的目标是:

min{d5};

然后将剩余原料与上一级组合,得到新的成品,在第一类成品中,剩余原料表分别如上表所示,我们可以看出方案1剩余原料较少,其次是方案4。我们根据优先级目标,选择方案4作为我们第一类成品的方案。

(5)为了食品保鲜,要求在30分钟内产生方案即满足(1)(2)(3)(4)的情况下,要求我们方案产生时间尽的少,即:

min{d6};

由于我们用的是Lingo软件,运行出一个成品所需时间是不到10秒,我们

每个方案运行了八次,五个方案一共产生了87个成品,故产生第一类成品所需时间约为9分钟,满足题目要求。

4.1.2第二类成品模型

(1)满足第二类成品规格,总长度L1,总为89米,允许有± 0.5米的误差;总根数N1,总为8根,允许比标准少1根。由于总长度与总根数具有相同的优先权,故设优先级均为P1,权重设为:w1w20.5,所以第一个目标函数为:

minzP1(w1(d1d1)w2d2)

与第一类成品类似,由于第二类成品是由7-13.5米规格原料组成的,故我们可以将矩阵A,B中除7-13.5米规格的原料外其它原料的长度设为0,根数设为0,便于计算,设置后的矩阵A,B如下

0000

XXXX11121718XXXX21222728XX22X27X282100 A==X31X36



X61X62X67X680000

B11B21

B=B61

B12B17B22B27B62B67

0000

B1877.51010.5B28

0 =1113.50





B68

0000

目标约束条件为:

68

BijXijd1d189;i1j168

Xij8;i1j168

Xij7;

i1j1

X8,(i1,26,j1,2,8);ij

(i1,26,j1,2,8);Xij0,



运用Lingo求解,程序如下:

model:

!第一类成品搭配方案; sets:

Material/M1..M14/:Length Number; level/1..6/:p,z,goal;

variable/1..8/:x;

s_con_num/1..8/:g,dplus,dminus; s_con(s_con_num,variable):c;

obj(level,s_con_num)/1 1,2 2,2 3,2 4,3 8,4 5,4 6,4 7,5 1/:wplus,wminus; endsets !数据部分; data:

Material,Length,Number=M1 7 24 M2 7.5 24 M3 8 20 M4 8.5 25 M5 9 21 M6 9.5 23 M7 10 21 M8 10.5 18 M9 11 31 M10 11.5 23 M11 12 22 M12 12.5 59 M13 13 18 M14 13.5 25 enddata

min=@sum(level:p*z); p(ctr)=1;

@for(level(i)|i#ne#ctr:p(i)=0);

@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)* dminus(j)));

@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i

-262-

)=g(i));

@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal));

End

计算结果如下表格:

(2)根据以上结果,在原料限定的情况下,我们的目标是:

max{d3};

即装出的成品捆数越多越好,根据我们的计算方案我们可知:方案1,3,5

成品捆数为28,方案2品捆数为26捆,方案4捆数为25;所以在原料限定的情

况下,我们认为方案1,3,5符合公司要求。

(3)对于成品捆数相同的方案,选择最短长度最长的成品的方案:即在满足(1)的条件下,我们要求成品数相同的方案具有:

max{d4};

由(1)可知方案1,2,4的成品数相同,但它们最短长度的总长度分别为:

140米,128米和168米,故我们认为方案5较好。

(4)某种规格对应原料如果出现剩余,可以降级使用即要求在满足(1)(2)(3)的情况下,尽量不出现剩余或出现剩余的规格较少,但在原料表一定的情况下出现某种规格原料剩余是不可避免的,所以我们的目标是:

min{d5};

然后将剩余原料与上一级组合,得到新的成品,在第一类成品中,剩余原料表分别如上表所示,我们可以看出方案1剩余原料较少,其次是方案4。我们根据优先级目标,选择方案4作为我们第一类成品的方案。

(5)为了食品保鲜,要求在30分钟内产生方案即满足(1)(2)(3)(4)的情况下,要求我们方案产生时间尽的少,即:

min{d6};

由于我们用的是Lingo软件,运行出一个成品所需时间是不到10秒,我们

产生第二类成品所需时间约为14分钟,满足题目要求。

4.1.3第三类成品模型

与第一类和第二类成品模型相似。

(1)满足第二类成品规格,总长度L3,总为89米,允许有± 0.5米的误差;总根数N3,总为5根,允许比标准少1根。由于总长度与总根数具有相同的优先权,故设优先级均为P1,权重设为:w1w20.5,所以第一个目标函数为:

minzP1(w1(d1d1)w2d2)

第三类成品是由14-26米规格原料组成的,故我们可以将矩阵A,B中除14-26米规格的原料外其它原料的长度设为0,根数设为0,便于计算,设置后的矩阵A,B如下:

0000

XXXX11121718XX3738XX22X27X2821A==X41X42X47X48 X51X52X57X58X61X62X67X68X061X620

B11B21

B=B61

B12B17B22B27B62B67

0000

B181414.5B28=1515.51818.5 

1919.52222.5B6802323.50

目标约束条件:

68

BXdd89;ijij11

i1j168

Xij5;i1j168

Xij4;

i1j1

X5,(i1,26,j1,2,8);ij

(i1,26,j1,2,8);Xij0,



运用Lingo求解,程序如下:

model:

!第一类成品搭配方案; sets:

Material/M1..M24/:Length Number; level/1..6/:p,z,goal; variable/1..8/:x;

s_con_num/1..8/:g,dplus,dminus; s_con(s_con_num,variable):c;

obj(level,s_con_num)/1 1,2 2,2 3,2 4,3 8,4 5,4 6,4 7,5 1/:wplus,wminus; endsets !数据部分; data:

Material,Length,Number=M1 14 35 M2 14.5 29 M3 15 39 M4 15.5 30 M5 16 42 M6 16.5 28 M7 17 45 M8 17.5 49

M9 18 50 …………………

enddata

min=@sum(level:p*z); p(ctr)=1;

@for(level(i)|i#ne#ctr:p(i)=0);

@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)* dminus(j)));

@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i

-262-

)=g(i));

@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal));

End

计算结果如下表格:长度单位:米

(2)根据以上结果,在原料限定的情况下,我们的目标是:

max{d3};

即装出的成品捆数越多越好,根据我们的计算方案我们可知:方案1,2,4

成品捆数为32,方案3,5成品捆数为31捆;所以在原料限定的情况下,我们

认为方案1,2,4符合公司要求。

(3)对于成品捆数相同的方案,选择最短长度最长的成品的方案:即在满足(1)的条件下,方案14 最短长度为14*16=224米,方案2的最短长度为14*35=490米,方案3的最短长度为14*35=490米,故方案1较好。

max{d4};

由(1)可知方案 和方案 的成品数相同,但它们最短长度的总长度分别为:

故我们认为方案较好。

(4)某种规格对应原料如果出现剩余,可以降级使用即要求在满足(1)(2)(3)的情况下,尽量不出现剩余或出现剩余的规格较少,但在原料表一定的情况下出现某种规格原料剩余是不可避免的,所以我们的目标是:

min{d5};

通过比较1,2,4方案 ,我们可知道2方案剩余原料最少,其次是1方案,但考虑到优先级,我们选方案1为本模型的方案

(5)为了食品保鲜,要求在30分钟内产生方案即满足(1)(2)(3)(4)的情况下,要求我们方案产生时间尽的少,即:

min{d6};

于我们用的是Lingo软件,本模型的运行时间为12分钟,满足要求。

4.1.4模型小结

针对三类成品,本文都采用目标规划,将公司提出的五个要求都转化为五个具有优先级别的目标,然后在利用目标约束条件列出不等式,用Lingo求解,得出本题的最优解;

五、模型优缺点

模型的优点:

1. 实用性强。整个过程都可以编制出完整的程序,只需要给出相关参数就可以得出结果。

2. 模型的正确性和稳定性好。根据模型计算出的数据和实验得到的都比较接近证明了模型是很合理的。

3. 计算公式较简洁,编程不复杂。

模型的缺点

1. 本文假设公司要求是具有一个的优先级别的,但实际中或许这们假设的优先级别并不合理。

2. 精确度不是很高。由于用Lingo求解,得出的结果并不是最优的,还要结合公司的要求加上自己的判断,有点繁琐。

六、参考文献

[1] 赵静、但琪,数学建模与数学实验(第3版),北京:高等教育出版社,2008.1

[2] MATLAB the Language of Technical Computing, Mathworks, Inc. 2004 [3] 张德丰,数值分析与应用,北京:国防工业出版社,2007.1

[4] 王国柱. 天然肠衣安全性影响因素及检验检疫措施[J]. 检验检疫科学, 2008,(06)

[5] 刘文斌,高逢结,俞忠民. 影响我国肠衣出口的因素及对策[J]. 中国动物检疫, 2009,(10)

[6] 陈士忠. 天然肠衣的优势[J]. 农产品加工, 2004,(04)

[7] 刘文斌, 高逢结, 俞忠民. 影响我国肠衣出口的因素及对策[J]. 中国动物检疫, 2009,(10)

[8] 张洪路, 周红翠. 优质猪肠衣的加工方法[J]. 农村百事通, 2006,(07) [9] 胡毓达,高校应用数学学报,1986年,1卷,1期 [10] 胡毓达,运筹学杂志,1986年,5卷,1期

[11] 李仲飞 汪寿阳.多目标规划的整体解[J].系统科学与数学 [12] Linear programming in hazardous waste management

[13] 胡毓达.多目标最优化的弱较多有效解类[J].运筹学杂志 [14] 优化建模与LINDO/LINGO软件

[15] 徐浩.LINGO软件在机械工程离散优化设计中的应用[J].机械研究与应用 [16] GeneAS:a robust optimal design, technique for mechanical component design

天然肠衣搭配问题

摘要

肠衣业是我国传统的民族加工业,具有悠久的历史,出口量占世界首位。肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序,根据原材料的长度将原材料按指定的根数和总长度组装成成品(捆),但在实际组装的过程中要考虑到提高生产效率,为此公司先将所有的原料丈量好,建立一个原料表,根据原料表设计搭配方案,工人在使用时直接根据此方案生产来提高效率。但设计方案时要在公司提出的五个要求的前提下设计,即要满足公司的要求,因此这是一个目标规划问题。

针对要求1:在给定原材料的情况下,要求捆数越多越好。采用目标规划,目标函数(准则函数)是按各目标约束的正、负偏差变量和赋予相应的优先因子而构造的。当每一目标值确定后,决策者的要求是尽可能缩小偏离目标值。因此目标规划的目标函数只能是minzf(d,d),目标约束条件是每捆成品的总长度Li,总和总根数Ni,总。然后运用Matlab和Lingo求解,得出每捆成品的最优组合,在此基础上,结合表2给出的在原料一定的条件下,确定每类成品的最优捆数,满足了要求2;

针对要求3包含在目标约束条件中,即总长度的变化范围在88.5米和89.5米之间,总根数介于标准根数减1和标准根数之间;

针对要求4是对模型的优化,如果某种规格对应原料如果出现剩余,我们可以放在上一级使用,这样降低成本;

针对要求5如果不对我们的模型进行优化,则模型运行时间大于30分钟,不满足要求,在此基础上对模型进行优化,使其在规定的时间内给出搭配方案。

关键词:肠衣搭配、目标规划、优先级、矩阵、目标约束条件

一、 问题重述

天然肠衣(以下简称肠衣)制作加工是我国的一个传统产业,出口量占世界首位。肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序。传统的生产方式依靠人工,边丈量原料长度边心算,将原材料按指定根数和总长度组装出成品(捆)。

原料按长度分档,通常以0.5米为一档,如:3-3.4米按3米计算,3.5米-3.9米按3.5米计算,其余的依此类推。表1是几种常见成品的规格,长度单位为米,∞表示没有上限,但实际长度小于26米。

为了提高生产效率,公司计划改变组装工艺,先丈量所有原料,建立一个原料表。表2为某批次原料描述:

方抓药”进行生产。

公司对搭配方案有以下具体要求:

(1) 对于给定的一批原料,装出的成品捆数越多越好;

(2) 对于成品捆数相同的方案,最短长度最长的成品越多,方案越好; (3) 为提高原料使用率,总长度允许有± 0.5米的误差,总根数允许比标准少1根;

(4) 某种规格对应原料如果出现剩余,可以降级使用。如长度为14米的原料可以和长度介于7-13.5米的进行捆扎,成品属于7-13.5米的规格;

(5) 为了食品保鲜,要求在30分钟内产生方案。

请建立上述问题的数学模型,给出求解方法,并对表1、表2给出的实际数据进行求解,给出搭配方案。

二、基本符号假设与说明

2.1基本假设

1、假设题中所给的数据真实可靠,数据误差在允许范围内;

2、假设在成品指定规格的前提下,公司的要求是具有优先级的即成品捆数要求最高,其次是方案要求较好,再次是尽可能使原料剩余较少,最后是方案产生时间较短;

3、假设在测量肠衣的长度时,肠衣的弹性可忽略不计; 4、测量肠衣时的误差可忽略不计;

5、假设所有的肠衣具有相同的质量,质量较好即具有较好的阻隔性、稳定的收缩率和较好的膜强度;;

2.2符号说明

Li,min:第i类成品的最短长度(i1,2,3); Li,max:第i类成品的最大长度(i1,2,3);

Li总:第i类成品中每捆成品的总长度(i1,2,3);

Ni,总:第i类成品中每捆成品的总个数(i1,2,3);

d:决策变量的函数;

d0:d的目标值;

d1:总长度超过目标长度的部分;

d1:总长度未达到目标长度的部分;

:总根数未达到目标根数的部分; d2

d3:装出的成品捆数;

:成品捆数相同时,最短长度最长的成品; d4

d5:某种规格对应原料出现剩余; d6:产生方案的时间在30分钟内; w1:总长度的权系数; w2:总根数的权系数;

,优先级为PnPn1; Pn:优先因子即优先等级(n1,2,3,4,5)A:表示表2原料根数的矩阵;

; Xij:表示A中的元素即分档后的每种原料的根数(i1,2,6;j1,28)B:表示分档原料长度的矩阵;

Bij:表示分档原料的长度。

三、问题分析

根据题目中的表1的信息可知,成品的天然肠衣可分为三类:第一类成品的最短长度L1,min为3米,最大长度L1,max为6.5米,每捆成品要数为20根,每捆总长度为89米;第二类成品的最短长度L2,min为7米,最大长度L2,mzx为13.5米,

每捆成品的根数为8根,每捆成品的总长度为89米;第三类成品的最短长度L3,min为14米,最大长度L3,max为26米,每捆成品的根数为5根,每捆成品的总长度为89米。

表2给出了分档后每种原料的根数,为了方便说明和解题,我们将表2当作一个68的一个矩阵A,矩阵A中的元素用Xij表示,Xij表示每类成品每捆中分档的每种原料的根数,如对于第一类成品而言:X11表示每捆中长度为3米的根数,X12表示每捆成品中长度为3.5米的根数等等依此类推,长度大于26的原料不存在,将其根数设为0,于是我们构造一个68的矩阵A。

根据表1对每捆成品的长度和根数的限定,针对不同的成品我们可以根据其长度和根数列出不等式,再用Lingo和Matlab求解,所得的解是一个可行域,可行域越大,解越多,所得的成品捆数就越多,满足公司的第一个要求;针对要求2我们可以这样理解,如有a,b两个解,所得的成品捆数相同,但a中最短长度的成品捆数有4个,b中成品捆数有5个,则b方案较好;要求3是我们列不等式的条件即总长度应该介于88.5和89.5之间,总根数介于标准根数减1和标准根数之间;要求4是我们对方案的调整即对我们模型的优化,某种规格对应原料如果出现剩余,可以降级使用。如长度为14米的原料可以和长度介于7-13.5米的进行捆扎,成品属于7-13.5米的规格;要求5是我们模型运行的时间的优化,使其运行时间小于30分钟即在食品未过期之前运行出方案。

四、模型的建立与求解

4.1模型的建立与求解

将表2看作是一个68的矩阵,矩阵元素Xij表示组成每捆成品的每类原料的根数,我们建立如下矩阵:

X11X21

A

X61B11BB21

B61

X12

X17

X22X27X62B12

X67B17

X18X28,其中X67,X680,因为无原料,根数为0。 X68

B1833.5

77.5B28

B682323.5

6.5

1010.5,为系数矩阵。 

00

6

B22B27

B62

B67

根据我们假设的优先级,我们可知:满足成品规格是公司规定的,其优先级最高,故设为P其次是公司利润最大即要求成品捆数越多越好,我们设其优先1;级为P2;再次是方案要较好即成品捆数相同的条件下,要求最短长度最长的成

品最多,我们设其优先级为P3;接着应使公司原料浪费少,即出现某种规格的原料剩余量尽可能的少,降低公司成本,我们设其优先级为P4;最后要求方案产生时间尽量短,不影响食品保鲜,是对方案时间的一个限制,我们设其优先级为

P5,我们知道,目标规划的目标函数(准则函数)是按各目标约束的正、负偏差变量和赋予相应的优先因子而构造的。当每一目标值确定后,决策者的要求是尽可能缩小偏离目标值,因此目标规划的目标函数只能是minzf(d,d),即目标函数为:



minzP1(w1(d1d1)w2d2)P2d3P3d4P4d5Pd6

目标约束条件是每捆成品的总长度Li,总和总根数Ni,总。

4.1.1第一类成品模型

(1)满足第一类成品规格,总长度L1,总为89米,允许有± 0.5米的误差;总根数N1,总为20根,允许比标准少1根。由于总长度与总根数具有相同的优先权,故设优先级为P1,权重设为:w1w20.5,所以第一个目标函数为:

minzP(w(dd)wd111122)

由于第一类成品是由3-6.5米规格原料组成的,故我们可以将矩阵A,B中除3-6.5米规格的原料外其它原料的长度设为0,根数设为0,便于计算,设置后的矩阵A,B如下:

X11XA21

X61B11BB21

B61

X12

X17

X22X27X62B12B22B62

X67B17B27B67

X18X11

0X28X680B1833.5

00B28



B6800

X12X1700



00

X180 0

66.500 

00

目标约束条件为:

68

BXdd89;ijij11

i1j168

Xij20;i1j168

Xij19;

i1j1

X20,(i1,2,6,j1,2,8);i1j

(i1,2,6;j1,2,8)Xij0,



运用Lingo求解,程序如下:

model:

!第一类成品搭配方案; sets:

Material/M1..M8/:Length Number; level/1..6/:p,z,goal; variable/1..8/:x;

s_con_num/1..8/:g,dplus,dminus; s_con(s_con_num,variable):c;

obj(level,s_con_num)/1 1,2 2,2 3,2 4,3 8,4 5,4 6,4 7,5 1/:wplus,wminus; endsets !数据部分; data:

Material,Length,Number=M1 3 43 M2 3.5 59 M3 4 39 M4 4.5 41 M5 5 27 M6 5.5 28 M7 6 34 M8 6.5 21; enddata

min=@sum(level:p*z); p(ctr)=1;

@for(level(i)|i#ne#ctr:p(i)=0);

@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)* dminus(j)));

@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i

-262-

)=g(i));

@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal));

End

求得的结果如下:

依次对剩余根数运用上述模型,直到所有根数之和小于20或所有原料的长度总和小于89为止,经运算迭代8次,求得结果1如下表:

(2)根据以上结果,在原料限定的情况下,我们的目标是:

max{d3};

即装出的成品捆数越多越好,根据我们的计算方案我们可知:方案1,3成

品捆数为16,方案2,4,5成品捆数为18捆;所以在原料限定的情况下,我们认为方案2,4,5符合公司要求。

(3)对于成品捆数相同的方案,选择最短长度最长的成品的方案:即在满足(1)的条件下,我们要求成品数相同的方案具有:

max{d4};

由(1)可知方案2,4,5的成品数相同,但它们最短长度都是3米,方案

2用了40根3米的,其总长度为120米;方案4用了43根3米的,其总长度为129米;方案5用了36根3米的,其总长度为108米,故我们认为方案4较好。

(4)某种规格对应原料如果出现剩余,可以降级使用即要求在满足(1)(2)(3)的情况下,尽量不出现剩余或出现剩余的规格较少,但在原料表一定的情况下出现某种规格原料剩余是不可避免的,所以我们的目标是:

min{d5};

然后将剩余原料与上一级组合,得到新的成品,在第一类成品中,剩余原料表分别如上表所示,我们可以看出方案1剩余原料较少,其次是方案4。我们根据优先级目标,选择方案4作为我们第一类成品的方案。

(5)为了食品保鲜,要求在30分钟内产生方案即满足(1)(2)(3)(4)的情况下,要求我们方案产生时间尽的少,即:

min{d6};

由于我们用的是Lingo软件,运行出一个成品所需时间是不到10秒,我们

每个方案运行了八次,五个方案一共产生了87个成品,故产生第一类成品所需时间约为9分钟,满足题目要求。

4.1.2第二类成品模型

(1)满足第二类成品规格,总长度L1,总为89米,允许有± 0.5米的误差;总根数N1,总为8根,允许比标准少1根。由于总长度与总根数具有相同的优先权,故设优先级均为P1,权重设为:w1w20.5,所以第一个目标函数为:

minzP1(w1(d1d1)w2d2)

与第一类成品类似,由于第二类成品是由7-13.5米规格原料组成的,故我们可以将矩阵A,B中除7-13.5米规格的原料外其它原料的长度设为0,根数设为0,便于计算,设置后的矩阵A,B如下

0000

XXXX11121718XXXX21222728XX22X27X282100 A==X31X36



X61X62X67X680000

B11B21

B=B61

B12B17B22B27B62B67

0000

B1877.51010.5B28

0 =1113.50





B68

0000

目标约束条件为:

68

BijXijd1d189;i1j168

Xij8;i1j168

Xij7;

i1j1

X8,(i1,26,j1,2,8);ij

(i1,26,j1,2,8);Xij0,



运用Lingo求解,程序如下:

model:

!第一类成品搭配方案; sets:

Material/M1..M14/:Length Number; level/1..6/:p,z,goal;

variable/1..8/:x;

s_con_num/1..8/:g,dplus,dminus; s_con(s_con_num,variable):c;

obj(level,s_con_num)/1 1,2 2,2 3,2 4,3 8,4 5,4 6,4 7,5 1/:wplus,wminus; endsets !数据部分; data:

Material,Length,Number=M1 7 24 M2 7.5 24 M3 8 20 M4 8.5 25 M5 9 21 M6 9.5 23 M7 10 21 M8 10.5 18 M9 11 31 M10 11.5 23 M11 12 22 M12 12.5 59 M13 13 18 M14 13.5 25 enddata

min=@sum(level:p*z); p(ctr)=1;

@for(level(i)|i#ne#ctr:p(i)=0);

@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)* dminus(j)));

@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i

-262-

)=g(i));

@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal));

End

计算结果如下表格:

(2)根据以上结果,在原料限定的情况下,我们的目标是:

max{d3};

即装出的成品捆数越多越好,根据我们的计算方案我们可知:方案1,3,5

成品捆数为28,方案2品捆数为26捆,方案4捆数为25;所以在原料限定的情

况下,我们认为方案1,3,5符合公司要求。

(3)对于成品捆数相同的方案,选择最短长度最长的成品的方案:即在满足(1)的条件下,我们要求成品数相同的方案具有:

max{d4};

由(1)可知方案1,2,4的成品数相同,但它们最短长度的总长度分别为:

140米,128米和168米,故我们认为方案5较好。

(4)某种规格对应原料如果出现剩余,可以降级使用即要求在满足(1)(2)(3)的情况下,尽量不出现剩余或出现剩余的规格较少,但在原料表一定的情况下出现某种规格原料剩余是不可避免的,所以我们的目标是:

min{d5};

然后将剩余原料与上一级组合,得到新的成品,在第一类成品中,剩余原料表分别如上表所示,我们可以看出方案1剩余原料较少,其次是方案4。我们根据优先级目标,选择方案4作为我们第一类成品的方案。

(5)为了食品保鲜,要求在30分钟内产生方案即满足(1)(2)(3)(4)的情况下,要求我们方案产生时间尽的少,即:

min{d6};

由于我们用的是Lingo软件,运行出一个成品所需时间是不到10秒,我们

产生第二类成品所需时间约为14分钟,满足题目要求。

4.1.3第三类成品模型

与第一类和第二类成品模型相似。

(1)满足第二类成品规格,总长度L3,总为89米,允许有± 0.5米的误差;总根数N3,总为5根,允许比标准少1根。由于总长度与总根数具有相同的优先权,故设优先级均为P1,权重设为:w1w20.5,所以第一个目标函数为:

minzP1(w1(d1d1)w2d2)

第三类成品是由14-26米规格原料组成的,故我们可以将矩阵A,B中除14-26米规格的原料外其它原料的长度设为0,根数设为0,便于计算,设置后的矩阵A,B如下:

0000

XXXX11121718XX3738XX22X27X2821A==X41X42X47X48 X51X52X57X58X61X62X67X68X061X620

B11B21

B=B61

B12B17B22B27B62B67

0000

B181414.5B28=1515.51818.5 

1919.52222.5B6802323.50

目标约束条件:

68

BXdd89;ijij11

i1j168

Xij5;i1j168

Xij4;

i1j1

X5,(i1,26,j1,2,8);ij

(i1,26,j1,2,8);Xij0,



运用Lingo求解,程序如下:

model:

!第一类成品搭配方案; sets:

Material/M1..M24/:Length Number; level/1..6/:p,z,goal; variable/1..8/:x;

s_con_num/1..8/:g,dplus,dminus; s_con(s_con_num,variable):c;

obj(level,s_con_num)/1 1,2 2,2 3,2 4,3 8,4 5,4 6,4 7,5 1/:wplus,wminus; endsets !数据部分; data:

Material,Length,Number=M1 14 35 M2 14.5 29 M3 15 39 M4 15.5 30 M5 16 42 M6 16.5 28 M7 17 45 M8 17.5 49

M9 18 50 …………………

enddata

min=@sum(level:p*z); p(ctr)=1;

@for(level(i)|i#ne#ctr:p(i)=0);

@for(level(i):z(i)=@sum(obj(i,j):wplus(i,j)*dplus(j)+wminus(i,j)* dminus(j)));

@for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i

-262-

)=g(i));

@for(level(i)|i #lt# @size(level):@bnd(0,z(i),goal));

End

计算结果如下表格:长度单位:米

(2)根据以上结果,在原料限定的情况下,我们的目标是:

max{d3};

即装出的成品捆数越多越好,根据我们的计算方案我们可知:方案1,2,4

成品捆数为32,方案3,5成品捆数为31捆;所以在原料限定的情况下,我们

认为方案1,2,4符合公司要求。

(3)对于成品捆数相同的方案,选择最短长度最长的成品的方案:即在满足(1)的条件下,方案14 最短长度为14*16=224米,方案2的最短长度为14*35=490米,方案3的最短长度为14*35=490米,故方案1较好。

max{d4};

由(1)可知方案 和方案 的成品数相同,但它们最短长度的总长度分别为:

故我们认为方案较好。

(4)某种规格对应原料如果出现剩余,可以降级使用即要求在满足(1)(2)(3)的情况下,尽量不出现剩余或出现剩余的规格较少,但在原料表一定的情况下出现某种规格原料剩余是不可避免的,所以我们的目标是:

min{d5};

通过比较1,2,4方案 ,我们可知道2方案剩余原料最少,其次是1方案,但考虑到优先级,我们选方案1为本模型的方案

(5)为了食品保鲜,要求在30分钟内产生方案即满足(1)(2)(3)(4)的情况下,要求我们方案产生时间尽的少,即:

min{d6};

于我们用的是Lingo软件,本模型的运行时间为12分钟,满足要求。

4.1.4模型小结

针对三类成品,本文都采用目标规划,将公司提出的五个要求都转化为五个具有优先级别的目标,然后在利用目标约束条件列出不等式,用Lingo求解,得出本题的最优解;

五、模型优缺点

模型的优点:

1. 实用性强。整个过程都可以编制出完整的程序,只需要给出相关参数就可以得出结果。

2. 模型的正确性和稳定性好。根据模型计算出的数据和实验得到的都比较接近证明了模型是很合理的。

3. 计算公式较简洁,编程不复杂。

模型的缺点

1. 本文假设公司要求是具有一个的优先级别的,但实际中或许这们假设的优先级别并不合理。

2. 精确度不是很高。由于用Lingo求解,得出的结果并不是最优的,还要结合公司的要求加上自己的判断,有点繁琐。

六、参考文献

[1] 赵静、但琪,数学建模与数学实验(第3版),北京:高等教育出版社,2008.1

[2] MATLAB the Language of Technical Computing, Mathworks, Inc. 2004 [3] 张德丰,数值分析与应用,北京:国防工业出版社,2007.1

[4] 王国柱. 天然肠衣安全性影响因素及检验检疫措施[J]. 检验检疫科学, 2008,(06)

[5] 刘文斌,高逢结,俞忠民. 影响我国肠衣出口的因素及对策[J]. 中国动物检疫, 2009,(10)

[6] 陈士忠. 天然肠衣的优势[J]. 农产品加工, 2004,(04)

[7] 刘文斌, 高逢结, 俞忠民. 影响我国肠衣出口的因素及对策[J]. 中国动物检疫, 2009,(10)

[8] 张洪路, 周红翠. 优质猪肠衣的加工方法[J]. 农村百事通, 2006,(07) [9] 胡毓达,高校应用数学学报,1986年,1卷,1期 [10] 胡毓达,运筹学杂志,1986年,5卷,1期

[11] 李仲飞 汪寿阳.多目标规划的整体解[J].系统科学与数学 [12] Linear programming in hazardous waste management

[13] 胡毓达.多目标最优化的弱较多有效解类[J].运筹学杂志 [14] 优化建模与LINDO/LINGO软件

[15] 徐浩.LINGO软件在机械工程离散优化设计中的应用[J].机械研究与应用 [16] GeneAS:a robust optimal design, technique for mechanical component design


相关内容

  • 肠衣的种类
  • 肠衣的种类 一天然肠衣: 天然肠衣是利用猪.牛.羊的小肠.大肠.盲肠.膀胧及牛的食管和猪胃等加工而成.应用最多的是大肠和小肠.原料肠经过除去肠内容物,冲洗后送往肠衣车间进行漂洗.刮肠,刮去浆膜层.粘膜层.肌层,而保留粘膜下层的半透明的坚韧的管状薄膜,按口径不同分类后进行盐腌 一盐肠衣或干燥一干肠衣. ...

  • 中国肠衣进出口情况
  • 中国肠衣进出口情况 4.1.1 近5 年的出口情况 中国肠衣出口一直保持着良好的发展态势,年出口额在3亿美元左右.2002年受欧盟药残检验标准的影响,出口金额略有下降.经过肠衣出口企业的共同努力,2003 年肠衣出口出现恢复性增长,2004 年达到历史最高水平(详见图8). 4.1.2 出口总量和总 ...

  • 自制广式腊肠的做法
  • 主料 猪肉10斤 调料 食盐 110克 鸡精 适量 料酒 125克 老抽 60克 白糖 400克 花椒粉 20克 自制广式腊肠的做法 1.猪肉洗净控干水分,肉切成1.5厘米左右的小块,把筋剔除啊,否则容易搅在机器里面,麻烦,肉要肥瘦搭配才好吃哦. 加入盐1.老抽.白糖.白酒或料酒.花椒粉.味精或鸡精 ...

  • 天然食品防腐剂
  • 天然食品防腐剂-R-多糖 使用说明书 含量 100(%) 类型 天然食品防腐防霉保鲜剂 成分 溶菌酶.壳聚糖.鱼精蛋白.琼脂低聚糖.果胶分解物.辛香料提取物.水等. 有效物质含量: 100(%) 产品规格: 5公斤/桶,20公斤/箱 性能: 本身对人体完全无害,在消化道内降解为食物的正常成分,对食品 ...

  • 2013-2018年中国肝素钠行业投资分析及前景预测报告
  • 2013-2018年中国肝素钠行业投资分析及前景预测报告 [企业网址] http://www.cninfo360.com/yjbg/yyhy/swyx/20130923/300678.html (点击看正文) 报告目录 第一章 全球肝素钠行业发展分析 1 第一节 全球生物制药发展分析 1 一.全球生 ...

  • 香肠(腊肠)配方及制作方法.喜欢吃的朋友一定要收藏噢
  • 南北香肠(腊肠) 南北香肠(腊肠)配方及制作方法 主讲大厨: 皖式香肠 主讲大厨:俞政 下面是芜湖香肠的具体灌制方法,供大家参考: 下面是芜湖香肠的具体灌制方法,供大家参考: 原料:肠衣适量, 原料:肠衣适量,猪瘦肉 6 斤,肥肉 4 斤. 调料: 调料:料酒 250 克,葱姜各 50 克,花椒粉 ...

  • 羊生产学试题及答案2
  • 羊生产学试题及答案(二) 名词解释 胴体重:指羊宰杀放血后,去头.蹄.毛皮.内脏(只留肾脏和板油)后的重量 眼肌面积:沿胴体的第12肋骨后缘切断脊椎上眼肌的(背最长肌)横切面积. GR值:在第12与13肋骨之间,距背脊中线11cm处的组织厚度作为代表胴体脂肪含量的标志.毛囊:是毛鞘及周围的结缔组织层 ...

  • 营养师眼中最垃圾的五种零食
  • 动物油与植物油搭配食用是误区 编者的话:快过年了,大家都在忙着采购过年的零食,在购买之前,最好听听营养师的忠告. 垃圾食品是如此深入我们的生活,实在令人担忧.以下列出的一些堪称垃圾的食品,它们的共同特点是:营养素极少,能量挺多:或含有大量食品添加剂:甚至含有可以致癌的有害物质. 1.派 不论蛋黄派, ...

  • 乳化剂在肉制品加工中的应用
  • 张慧芸 日期:2007-04-10 本专题其它文章 食品乳化剂复配与应用 国外乳化剂乳化剂新产品的发展动向 乳化剂在肉制品加工中的应用 乳化剂在乳品饮料中的应用 我国乳化剂与现代烘焙产业的发展 我国食品乳化剂产业的发展现状 在肉制品生产中使用乳化剂能使配料充分乳化,均匀混合,防止脂肪离析,而且还能提 ...