本文是关于工厂生产计划的问题介绍、数学模型、求解结果及应用展示等内容。

一、问题介绍
在生产规划问题中,需要对生产的产品种类、数量、生产能力进行决策和分配,从而实现有限生产能力下的最大利润。为帮助制造企业更好地决策以上问题,现以下述生产场景为例,给出久章智能在工厂生产计划问题的场景化解决方案和求解展示。
假设工厂生产7种产品(PROD 1至PROD 7),共有4台磨机(grinders,以下简称GR)、2台立钻(vertical drills,以下简称VD)、3台卧钻(horizontal drills,以下简称HD)、1台钻机(borer,以下简称BR)和1台刨机(planer,以下简称PL)。每种产品的单位利润(定义为单位销售价格减去原材料成本)以及每个工艺所需的生产机器、单位生产时间(小时)如下。
表1 每种产品的单位利润及每个工艺所需的单位加工时间

在本月(1月)和随后的五个月,某些机器将停机维护。这些机器的维护时间和数量计划表如下:
表2 机器维护计划表

受到市场需求限制,每种产品每个月有最大可销售数量有限。如下表所示:
表3 每种产品每个月最大可销售数量限制

此外,还需考虑产成品库存容量限制、工作日历等约束:
库存容量限制:每个月每种产品最多100个单位存储量。计划期初没有库存,但希望在6月底每种产品都有50个单位的库存量。并且如果产品存放到仓库,每种产品每个月会在单位销售利润的基础上扣除单位库存持有成本为0.5元。
工作日历:工厂每周工作六天,可以假设每个月只有24个工作日,每个工作日两班8小时。
假设暂时不需要考虑任何排序问题。为了使总利润最大化,工厂应该何时生产多少数量的何种产品?
二、数学模型建立
根据上述问题介绍,进行以下符号定义:
表4 数学模型的符号及含义

【约束条件】
(1)生产能力约束:
由于设备维护和工作日历的限制,工厂内的设备生产能力每个月都不同。每种设备每个月的剩余生产能力可以由计算公式abilitymj=(nm-nj)*24*8*2得到。结合每种产品所需的设备占用加工时间就可以得到以下约束:

(2)库存约束:
每个月库存数量与上个月的库存结转、本月的销售数量、生产数量有关,每个月库存数量之间的递归关系根据Hij-1+Mij=Sij+Hij决定,且第1个月月初库存为0,第6个月月末库存为50,即生产计划周期初和周期末对每种产品的存储数量都有一定要求,则对于∀i∈I,都有以下约束:

(3)其他变量约束:
所有变量不应该小于0,且Mij≤sold_maxij,Sij≤sold_maxij,
每个月每种产品最多100个单位存储量,即Hij≤100
【目标函数】
假设我们生产的产品都可以卖出,即总销售数量=总生产数量,我们的求解目标是最大化总利润,可以由每个月的单位产品销售利润*生产数量,将6个月的总利润进行累加,再减去总库存持有成本得到,即:

三、问题求解及应用展示
以上问题涉及到总共126个变量、72个约束,此外每个月,7种产品有市场销售界限和持有数量界限。这就给出了总共84个上界。我们对原问题进行求解,可在几秒钟内求出每种产品的生产计划时间、数量、对应的库存量以及最后最大化的总利润。如下图所示:

图1 每月每种产品应生产的数量

图2 每月每种产品应设库存量

图3 执行该生产计划的期望利润
以下是我们开发的网页版求解器,可以导入其他数据,进行一键求解:

作者 | 韩新悦 王科俊
本文转载自久章智能微信公众号(原文发布于 2024-09-23),内容保持原貌。扫码关注公众号「久章智能」,第一时间获取智能决策系列文章。阅读原文 ↗

