首页 >> 大全

php和html混合写 先执行哪个_2020五一建模:C题 饲料混合加工问题

2023-12-17 大全 38 作者:考证青年

题干很长,要善于抽象出约束条件,毕竟C是优化问题,先建立目标模型,而后用Lindo/Lingo解答

退而求其次,暴力求解,蚁群算法、退火算法做也是可以做的。

第一步:分析

题中写道“加工动物饲料原料有16种,其中不同原料有不一样的效能率,总量也不一样,不同原料之间还有相似度的要求。可供加工的装置有9台,分3种规格,成本计算也不同。”

“品种代码10的原料不能单独成为一个加工包,必须与其他原料混合。”这一点容易遗忘。

分析数据可以获得“需要加工的原料有16种,共,所有9台加工装置的加工能力在5400~之间。”“16种原料中有六种饲料的能耗

问题一,研究16种原料两两之间的亲缘度,并进行统计性分析。即依据亲缘值N的计算方法得出一个16*16方阵,并做简要统计学分析。这一问题只是做个小热身,给大家加个油。建议先编写个可以求任意多个原料混合后亲缘度的函数,之后调用就可以。

问题二,将16种原料进行混合“全部”放入9个加工装置中,求出饲料质量最高的混合方案并给出每个加工包的亲缘度。即要求一次性全部加工完毕,且要求饲料质量最高。此问题的目标函数是饲料质量,饲料质量完全可以由“亲缘度”替代,所以优化目标就是“亲缘度”,约束条件仅限于原料混合方式、加工装置的重量范围以及全部加工,不考虑加工成本和能耗率!!

相比需要考虑的约束条件而言,不需考虑的因素更为重要,因为这些不需要考虑的因素是我们可以放弃的,换来优化目标最大化。

问题三,也要求“全部”加工,题中的“能耗率”即为“效能率”,应为出题不严谨,不需在这个点过多纠结。求出平均能耗率超过80%的加工包数量最多的混合方案并给出每个加工包的能耗率。即要求一次性全部加工完毕,且要求能耗率最高。有没有发现和问题二很相像,只是优化目标变为“能耗率>0.8的加工包数”,约束条件与问题二相同,不考虑加工成本和饲料质量!!

解题要点:对16种原料的能耗率稍作分析,发现2、6、7、11、12、14,这六种饲料的能耗率

问题四,问题是层层递进的,部分加工装置可以不生产,用尽量低的加工成本完成整个加工任务,同时要求平均能耗率超过80%的加工包尽量的多。即取消的一次性加工的限制,可以多次加工,优化目标变为“加工成本最低”“能耗率>0.8的加工包数”,约束条件变为原料混合方式、加工装置的重量范围以及加工成本的构成,不考虑饲料质量!!

建议编写一个加工成本的计算函数,参数包括加工装置类型、加工重量。

解题要点:对加工成本稍作分析就可发现,使用的加工装置容量越大,加工重量越重,加工成本就越低。所以考虑极端情况,不需考虑饲料质量——“亲缘度”,尽量使所有加工包能耗率>0.8,且尽量用第三类加工装置进行加工。

问题五,问题更进一步,在问题四的基础上增加了问题二中“亲缘度”的优化目标。

注:问题五中“必须完成整个加工任务”是废话,没有那个问题说可以不加工完的。

解题要点:与问题四相同,没有要求一次性全部加工。在问题四“加工成本最低”“能耗率>0.8的加工包数”的基础上,对“亲缘度尽量高”这一目标进行优化。那么就涉及到一个问题,各优化目标的重要性,打个比方,加工成本与能耗率>0.8的加工包数在不考虑亲缘度的时候已经达到最优,那么现在要考虑亲缘度,我可以为了亲缘度牺牲多大程度的成本和能耗率?这就需要对三个目标排个先后顺序,定个目标比重。可以在论文中进行说明,对各指标进行标准化后,按照各占1/3的重要性进行优化。

标准化的方式可以借鉴B题中第四问写的方式。

饲料混合加工问题背景_2020五一建模c题饲料加工_

第二步:第一问求解

研究16种原料两两之间的亲缘度,并进行统计性分析。即依据亲缘值N的计算方法得出一个16*16方阵,并做简要统计学分析。

图1 将表格复制的excel中,标记出不能单独加工的10号和效能率低于0.8的品种

使用替换功能将a~z替换为1~26,或者直接导入,这里我采用后者(需要一些技巧)。

编写个简单的比较函数(稍晚一点我会把函数和相关表格放到公众号里,大家可以下载),结果如下:

图2 可以看出有不少都是亲缘值为0的,在第二问和第五问中需要考虑亲缘值

有了任意两样本的亲缘值数据,根据题中的公式,就可以计算任意多个样本之间亲缘值了。

题目还要求统计学分析,可以统计一下亲缘值0~10的占比,简单描述一下就可以了。

第三步:第二问求解

将16种原料进行混合放入9个加工装置中,求出饲料质量最高的混合方案并给出每个加工包的亲缘度。

此问题的优化目标是饲料质量,也就是“亲缘度”最高。那么什么是饲料质量最高呢?假果我们已经有最优的混合方案,那么饲料质量=九个加工装置的“混合后亲缘值×加工质量”之和。

16种一次性放入9个装置中,必有混合。而所有装置的加工下限是300kg,所以

我们暂且只考虑可以两两混合的情况。

做题的过程中,发现一个之前没注意到的点:饲料质量,只有成品才能称之为饲料,没加工过的就是原料。

那么总的饲料质量如何计算呢?

毋庸置疑,饲料质量用亲缘值表示。在问题二中,九个加工装置要求一次性加工完全,那就是九种成品饲料,可以计算出九个亲缘值。九种饲料的重量不一,总的饲料质量需要使用饲料重量对九种饲料的亲缘值进行加权。

饲料重量等于各加工装置中不同原料的重量与能效率的乘积之和。

这也就是为什么我的程序里需要按照下图进行计算了。

很多人问我为什么要×质量,我举个例子。

比方说两个加工窖,1号窖里加工了300千克饲料,2号窖里加工了600千克饲料,1号窖的亲缘值是0.8,2号窖的亲缘值是0.6。 总体亲缘值是等于0.8+0.6么?,不是的,应该等于(0.8×300+0.6×600)÷900。这就是权重。

下划线为新增,完善了两两亲缘值为零不能混合的约束条件

加工窖的编码修改为m,因为到了第四问时加工包的个数可以比加工窖多。

标黄的地方有改动

第四步:第三问求解

第五步:第四问求解

对于多目标优化,下面采用了线性加权和法,除此之外还有理想点法。

第六步:第五问求解

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了