2020五一建模:C题 饲料混合加工问题 题解

本文详细解析了2020五一数学建模竞赛C题——饲料混合加工问题,涉及亲缘值计算、混合加工饲料质量优化、效能率超过80%的加工包数量最大化以及多目标优化。通过Python编程,对16种加工原料进行组合分析,求解最佳混合方案,兼顾饲料质量、加工成本和效能率。
摘要由CSDN通过智能技术生成

我觉得蒸米的时候米与水的配比是一个NP-hard问题

问题一题解

在这里插入图片描述

分析

问题1研究16个加工原料两两之间的亲缘值,并进行统计分析。根据题目所给的16个加工原料的基因序列信息,进行两两比对,若两个加工原料有N个相同位点的基因序列标记相同,就认为这两个加工原料的亲缘值为N。用python进行编程编写计算亲缘度的函数,遍历所有原料两两之间的组合,统计他们的亲缘值并记录在一个16*16的方阵中,并做统计学分析。

求解

首先根据题目所给亲缘值定义:两个加工原料如果有 N 个相同位点的基 因序列标记相同,就认为这两个加工原料的亲缘值为 N(如果 N 大于 0,则说明 这两种加工原料之间具有亲缘关系)。由于两两原料之间没有先后顺序关系,故利用排列组合知识对每一种原料组合的亲缘度进行计算求解。

根据题目所给表 1 各加工原料的品种代码、总重量、效能率和基因序列标记,使用python编写程序计算得到一个16*16的方阵,对应任意两个加工原料间的亲缘度,并对数据进行处理。处理结果如图1,数据分析结果如图2。
在这里插入图片描述

根据图3、4可知,16种加工原料两两组合方式有120种,其中具有亲缘关系的加工原料两两组合种类有40种,亲缘值最小为1,最大为6,均值为3.0500。
在这里插入图片描述

问题二题解

在这里插入图片描述

分析

问题 2 要求将 16 种加工原料全部放入 9 个加工窖中进行加工,建立数学模型,求出能得出饲料质量最高的混合并给出每个加工包的亲缘度。仅从亲缘度角度考虑混合加工饲料的质量,亲缘度越高,饲料质量就越高,则问题二最终目标转化为求取亲缘度最优值问题,并给出饲料质量最高的混合方案。

将16种加工原料进行混合投放到9个加工窖中进行加工,根据亲缘关系进行组合,构成一个排列组合问题,但由于直接对所有组合求取全局最优解所需要时间代价太大,因此使用随机选取的方式来不断选取局部最大值,在局部优化的基础上找到近似的全局最优解。同时在选择方案时,需要考虑加工窖的质量范围约束。

求解

问题2要求将16种原料分别放入9个加工窖中进行加工,求出饲料质量最高的混合方案并给出每个加工包的亲缘度。问题二的假设是饲料质量仅取决于亲缘度,所以我们的优化目标就是使得不同的满足条件的分配,其亲缘度最大。

将16种原料分别放入9个加工窖中进行加工,这样的分配方案有很多种,每种方案的加工包亲缘度也不同,分配方案具有随机性质。又因为直接进行全局考虑十分耗时,代码的运行时间超出实际承受范围。因此我们在最终处理的循环中可以考虑使用随机选取的方式来不断选取局部最大值,在局部优化的基础上找到近似的全局最优解。

目标函数的建立:

最终的优化对象为总亲缘值,即
K = ∑ i = 1 9 K i × W i ∑ i = 1 9 W i K=\frac{\sum_{i=1}^9K_i \times W_i}{\sum_{i=1}^9W_i} K=i=19Wii=19Ki×Wi
其中, W i W_i Wi表示第i个加工包的加工重量
W i = ∑ j = 1 16 w i j × E j W_i=\sum_{j=1}^{16}w_{ij}\times E_j Wi=j=116wij×Ej
混合的方案则为 w i j w_{ij} wij
原料总重量:
W M j = ∑ i = 1 9 w i j WM_j=\sum_{i=1}^9 w_{ij} WMj=i=19wij
加工包总重量:
W C i = ∑ j = 1 16 w i j WC_i=\sum_{j=1}^{16} w_{ij} WCi=j=116wij
加工包总重量要符合加工窖标准:
P i m ≤ W C i ≤ P h m P_{im}\le WC_i \le P_{hm} PimWCiPhm
n=1时,加工窖只有一种原料,重量要超过500kg:
W C i ≥ 500 , n = 1 WC_i \ge 500,n=1 WCi500,n=1
j=10时,原料10必须混合才能加工:
W C i − w i j > 0 , j = 10 , n ≥ 2 WC_i-w_{ij}>0,j=10,n \ge 2 WCiwij>0,j=10,n2
只有一种原料时亲缘值为10:
K i = 10 , n = 1 K_i=10,n=1 Ki=10,n=1
加工包必须任意两个原料亲缘值不为0:
C i ∈ B C_i \in B CiB
根据上述条件建立问题2的优化模型,即:
m a x K = ∑ i = 1 9 K i × W i ∑ i = 1 9 W i max \quad K=\frac{\sum_{i=1}^9K_i \times W_i}{\sum_{i=1}^9W_i} maxK=i=19Wii=19Ki×Wi
s . t . { W i = ∑ j = 1 16 w i j × E j W C i = ∑ j = 1 16 w i j P i m ≤ W C i ≤ P h m W C i ≥ 500 , n = 1 W C i − w i j > 0 , j = 10 , n ≥ 2 K i = 10 , n = 1 C i ∈ B s.t.\left\{ \begin{aligned} W_i&=\sum_{j=1}^{16}w_{ij}\times E_j \\ WC_i&=\sum_{j=1}^{16} w_{ij}\\ P_{im}&\le WC_i \le P_{hm}\\ WC_i &\ge 500,n=1\\ WC_i&-w_{ij}>0,j=10,n \ge 2\\ K_i&=10,n=1\\ C_i &\in B \end{aligned} \right. s.t.WiWCiPimWCiWCiKiCi=j=116wij×Ej=j=116wijWCiPhm500,n=1wij>0,j=10,n2=10,n=1B
模型求解:

1. w i j w_{ij} wij分配的求解过程:考虑不同混合方案对 w i j w_{ij} wij分配不同,每种个原料都可以拆分,因此以每一种原料重量的1/10为步长进行循环迭代,结合随机数的选取,不停的考虑不同情况的分配,直至求到局部最优解。

2.根据1求解后的结果,读取亲缘值表,计算出各加工窖的亲缘值,最终求得总亲缘值。

求解结果:

模型优化求解后,可得按权重平均后的亲缘度为4.845937217,此时的饲料加工配比图如下图所示,即饲料加工质量最高的配比情况。经检验该配比满足所有的约束条件。
在这里插入图片描述

问题三题解

在这里插入图片描述

分析

问题 3 是将16 个加工原料进行混合全部放入9个加工窖中,求出平均效能率超过 80%的加工包数量最多的混合方案并给出每个加工包的效能率。问题三的求解与问题二类似,可以在问题二的基础上改变目标函数和约束条件,寻找加工原料的最优混合方案。

问题中包含16种元素,9个加工窖。假设在加工原料混合方案确定后,将混合原料投放到9个加工窖形成 9 个加工包,每一个加工包都有一个效能率。 因此需建立起优化目标函数,在问题2的基础之上结合题目所给的约束条件

原料油的采购与精炼安排是否合理,直接影响着食品公司所获得的总利润。本文针对食品加工问题,建立了线性规划模型,并依据所给条件,制定了一套最优采购方案和精炼方案,使得公司获得最大利润,并就原料油市场价格的波动对利润的影响作了全面计划。 模型Ⅰ 对问题1建立了线性规划模型。本文用LINDO和LINGO对问题1进行了编程求解,结果一致,得到公司获得的最大利润为 元。 模型Ⅱ 对问题2建立模型。考虑如下的价格变化方式:2月份植物油价上升 ,非植物油上升 ;3月份植物油价上升 ,非植物油上升 ;其余月份保持这种线性的上升势头。对不同的值 (直到20),采用MATLAB编程法计算出变动后的价格矩阵,再将计算出的价格矩阵代入到模型1中求出相应的最大利润。最大利润如表2。 表3 价格波动 与最大利润 的对应关系 1 948222.2 10 -1759.259 2 818018.5 11 -26425.93 3 687814.8 12 -51092.59 4 557611.1 13 -70574.07 5 429907.4 14 -87074.07 6 316796.3 15 -91574.07 7 204485.2 16 -96074.07 8 115848.1 17 -100574.1 9 51411.85 18 -105074.1 19 -109574.1 20 -114074.1 本文针对模型Ⅱ所求的结果进行了拟合,并且拟合函数具有很高的可决系数,因此所拟合的函数能够较好的反应公司所获得的总利润与原料油价格上涨之间的关系。针对原料油价格上涨这一问题,拟合得到的函数为公司提供了很好的生产调整方案,具有很高的实用价值。
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值