数学建模论文1天然肠衣搭配问题的优化摘要本文通过建立了两个模型,模型一依据成品天然肠衣的长度规格进行分组,通过分组考虑,在每个组中充分考虑最优化的原则,运用线性规划求得最多捆数。我们将原料长度为3米到6.5米称为规格一原料组,依次类推,得到规格二原料组和规格三原料组。模型二通过将模型一求解之后剩余的肠衣进行降级处理,即规格三剩余的肠衣降级到规格二进行处理,规格二剩余的肠衣降级到规格一进行处理。不断的求得局部最优解,然后将模型一和模型二相结合,就可以得到全局最优解,从而求得最优方案。首先,我们将原料表所示的原料按规格分成三个规格的原料组,长度分别为3米到6.5米,7米到13.5米,14米到25.5米。然后按照成品规格表所要求的总长度和总根数来计算三种规格的成品肠衣的平均值,得到4.45米、11.125米、17.8米.在每个组中,都采用以平均数为标准,将长度大于平均值的肠衣和长度小于平均值的肠衣进行适当的组合,运用线性规划,求得最大捆数,因此通过模型一可得规格一型的肠衣最多捆数为14捆,规格二型的肠衣最多有34捆,规格三型的肠衣最多有129捆。因此,模型一可得最多捆数为177捆。由于通过模型一运用线性规划求得最优解之后会剩余一些不同长度的肠衣,为了充分提高原料利用率,考虑到为提高原料使用率,总长度允许有±0.5米的误差,总根数允许比标准少1根,我们通过模型二将规格三中剩下的肠衣降级到规格二,将两种规格的原料一起考虑,运用线性规划求得最多捆数,求得局部最优解之后,再将规格二剩余的肠衣降级到规格一,以同样的方式进行处理,运用线性规划求得局部最优解。整个模型二通过降级处理,最多可得12捆。将模型一和模型二所得到的局部最多捆数相加,就可以得到全局的最优解为189捆。通过模型一和模型二的处理,最终我们对肠衣原料的利用率进行了分析,从长度角度出发为97.99%,从根数角度出发为96.75%,原料利用率较高。关键词:线性规划模型、分组组合搭配、Lingo、目标优化2问题重述1.问题背景:天然肠衣制作加工是我国的一个传统产业,肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序。传统的生产方式依靠人工,边丈量原料长度边心算,将原材料按指定根数和总长度组装出成品(捆)。原料按长度分档,通常以0.5米为一档,如:3-3.4米按3米计算,3.5米-3.9米按3.5米计算,其余的依此类推。表1是几种常见成品的规格,长度单位为米,∞表示没有上限,但实际长度小于26米。表1成品规格表最短长度最大长度根数总长度36.52089713.588914∞589为了提高生产效率,公司计划改变组装工艺,先丈量所有原料,建立一个原料表。表2为某批次原料描述。表2原料描述表长度3-3.43.5-3.94-4.44.5-4.95-5.45.5-5.96-6.46.5-6.9根数4359394127283421长度7-7.47.5-7.98-8.48.5-8.99-9.49.5-9.910-10.410.5-10.9根数2424202521232118长度11-11.411.5-11.912-12.412.5-12.913-13.413.5-13.914-14.414.5-14.9根数3123225918253529长度15-15.415.5-15.916-16.416.5-16.917-17.417.5-17.918-18.418.5-18.9根数3042284245495064长度19-19.419.5-19.920-20.420.5-20.921-21.421.5-21.922-22.422.5-22.9根数526349352716122长度23-23.423.5-23.924-24.424.5-24.925-25.425.5-25.9根数0600012.需要解决的问题:根据以上成品和原料描述,设计一个原料搭配方案,工人根据这个方案“照方抓药”进行生产。公司对搭配方案有以下具体要求:(1)对于给定的一批原料,装出的成品捆数越多越好;(2)对于成品捆数相同的方案,最短长度最长的成品越多,方案越好;(3)为提高原料使用率,总长度允许有±0.5米的误差,总根数允许比标准少1根;(4)某种规格对应原料如果出现剩余,可以降级使用。如长度为14米的原料可以和长度介于7-13.5米的进行捆扎,成品属于7-13.5米的规格;(5)为了食品保鲜,要求在30分钟内产生方案。3请建立上述问题的数学模型,给出求解方法,并对表1、表2给出的实际数据进行求解,给出搭配方案。模型假设1.假设肠衣原料长度分布都是相对均匀的分布,不会出现某一个长度的肠衣数量特别多的情况。2.假设在长度降级处理时只能降级到相邻的长度,如规格三只能降级到规格二,规格二只能降级到规格一。3.假设降级处理时肠衣的长度按原长度计算,如7米的降级后长度仍按7米进行计算。4.假设成品肠衣总长度为89米,总根数分别为5根、8根、20根是最佳成品肠衣。符号说明A1:表示成品肠衣长度为3米到6.5米的平均值A2:表示成品肠衣长度为7米到13.5米的平均值A3:表示成品肠衣长度为14米到25.5米的平均值yi:表示第i种成品肠衣有yi捆xij:表示第i种成品肠衣中每种不同长度的原料所需的原料根数mi:表示第i种长度肠衣可用根数n:表示假设有n组解模型分析通过对原料数据的分析规格一原料:4长度33.544.555.566.5总根数/总长度根数4359394127283421292长度*根数129206.5156184.5135154204136.51305.5规格二:长度77.588.599.510根数24242025212321长度*根数168180160212.5189218.5210长度10.51111.51212.51313.5总根数/总长度根数18312322591825354长度*根数189341264.5264737.5234337.53705.5规格三长度1414.51515.51616.51717.5根数3529304228424549长度*根数490420.5450651448693765857.5长度1818.51919.52020.52121.5根数5064526349352716长度*根数90011849881228.5980717.5567344长度2222.52323.52424.52525.5总根数/总长度根数122060001677长度*根数26445014100025.512159.5因此,我们建立了两个模型。模型一主要针对前两个要求,分别是对于给定的一批原料,装出的成品捆数越多越好和对于成品捆数相同的方案,最短长度最长的成品越多,方案越好。因此,我们建立了按不同规格分组进行优化的模型,这样在每一个规格组中,我们运用线性规划,通过C++编程和Lingo软件求得每个组中的最多捆数,这样可以尽量使得在对肠衣降级处理之前充分利用肠衣原料得到局部最多捆数。模型二主要针对后面的要求,分别是为提高原料使用率,总长度允许有±0.5米的误差,总根数允许比标准少1根,某种规格对应原料如果出现剩余,可以降级使用。如长度为14米的原料可以和长度介于7-13.5米的进行捆扎,成品属于7-13.5米的规格,另外为了食品保鲜,要求在30分钟内产生方案。因此,我们针对剩下的肠衣,将规格三剩余的原料降级到规格二处理,为了充分考虑原料利用率,此时将长度误差可以为±0.5米,总根数可以比标准根数少一个这两点考虑在内,运用线性规划,通过C++编程和Lingo软件求得此时的局部最多捆数。然后再将规格二所剩下的肠衣原料降级到规格一中,同样运用线性规划,通过C++编程和Lingo软件求得局部最多捆数。最后,我们将模型一分组组合时求得的局部最多捆数与模型二降级处理时所得到的局部最多捆数相加就可以得到全局最多捆数。5模型建立与求解一.模型一的建立通过分析原料表中的数据,我们充分考虑对于给定的一批原料,装出的成品捆数越多越好和对于成品捆数相同的方案,最短长度最长的成品越多,方案越好的要求,可以将肠衣原料按照成品肠衣每种规格的最大长度和最小长度将原料分成三组,即长度为3米到6.5米的规格一原料组,长度为7米到13.5米的规格二原料组,长度为14米到25.5米的规格三原料组。下面我们先求出三种规格的成品肠衣的平均值A1=89/20=4.45(米)A2=89/8=11.125(米)A3=89/5=17.8(米)对于规格一原料组,我们将长度为(3米,3.5米,6米,6.5米)的原料进行组合,将长度为(4米,4.5米,5米,5.5米)的原料进行组合,如下表:长度(米)33.566.5根数43593421(表1.1)长度(米)44.555.5根数39412728(表1.2)每个组合分别运用编程求出总根数为20根,、总长度为89米所有可能的组合方式,再运用Lingo软件求出最多捆数。对于规格二的原料组,我们将长度为(7米,7.5米,8米,13米,13.5米)的原料进行组合,将长度为(8.5米,9米,9.5米,12.5米)的原料进行组合,将长度为(10米,10.5米,11米,11.5米,12米),如下表:长度(米)77.581313.5根数2424201825(表1.3)长度(米)8.599.512.5根数25212359(表1.4)6长度(米)1010.51111.512根数2118312322(表1.5)每个组合分别运用编程求出总根数为8根、总长度为89米的所有可能的组合方式,同样再次运用Liogo软件求出最多捆数。对于规格三的原料组,我们将长度为(14米,14.5米,15米,15.5米,20.5米,21米,21.5米,22米)的原料进行组合,将长度为(16米,16.5米,19米,19.5米,20米)的原料进行组合,将长度为(17米,17.5米,18米,18.5米)的原料进行组合,如下表:长度(米)1414.51515.520.52121.522根数3529304235271612(表1.6)长度(米)1616.51919.520根数2842526349(表1.7)长度(米)1717.51818.5根数21183123(表1.8)运用编程求出总根数为20根,、总长度为89米所有可能的组合方式,再运用Lingo软件求出最多捆数。二.模型一的求解首先运用C++编程求出三种不同规格原料的所有可能解,假设有n组,l种肠衣长度,设这些可能解的系数为yi,组合方式xij,可有如下方程组:nililiniiiniimxymxyy11111......max7运用Lingo软件对上述方程组求得最优解,可得如下捆数表格:规格一捆数情况:规格二捆数情况:长度/米77.588.599.51010.51111.51212.51313.5第1捆03000000000023第2捆03000000000023第3捆03000000000023第4捆03000000000023第5捆03000000000023第6捆03000000000023第7捆03000000000023第8捆03000000000023第9捆00012000000500第10捆00012000000500第11捆00012000000500第12捆00012000000500第13捆00020100000500第14捆00020100000500第15捆00020100000500第16捆00020100000500第17捆00020100000500第18捆00020100000500第19捆00020100000500第20捆00000004103000第21捆00000004103000第22捆00000010421000长度/米33.544.555.566.5第1捆210000080第2捆210000080第3捆211000025第4捆211000025第5捆211000025第6捆92000072第7捆110000054第8捆006104000第