批量生产计划的建模和求解:(一)问题介绍
背景介绍
决策内容
生产计划是工厂进行生产制造最为重要的决策内容之一。它决定了每个订单的应当自行生产还是委托其它工厂进行生产;如何进行本工厂的生产任务安排,从而最大化企业的利润。
决策限制
然而,在进行生产计划决策的过程中,决策者不可能无限制地随时进行生产,而是需要满足各种资源的约束,如场地大小决定了库存的上限;机器的数量、人员的安排、班次的长度等决定了工厂的产能;机器、产品的匹配,综合管理的费用等决定了生产的效率;原材料的数量决定了能生产的最大产量等。这些约束一方面限制了生产的自由度,另一方面其实也隐含了相关的生产成本。最大化总利润需要考虑多方面信息;各种信息相互作用或制约。因此,在决策的过程中,需要权衡各方面信息,决策者既要尽可能地满足客户需求,又需要考虑生产约束和成本,以增大收益,减少成本,得到综合收益的最大化。
生产制造辅助决策工具
随着信息化技术的发展和推广,多种企业辅助决策工具应运而生。比如,企业资源计划(Enterprise Resource Planning,ERP)和物料需求计划(Material Requirements Planning,MRP)系统。但是这些系统不能像高级计划与排程(Advanced Planning Scheduling,APS)系统那样,考虑供应链计划中复杂的资源约束。然而,即使是APS系统,也通常使用启发式的方法生成生产计划,而无法保证该生产计划的质量。
生产计划的数学建模
模型要素:目标函数、决策变量、约束条件
运筹学越来越广泛地被应用到了生产排程中。运筹学通常将一个实际的运营问题表达成数学模型,通过数学模型的求解来得到现实问题的解决方案。一个数学规划模型,常常有目标函数、决策变量和约束条件三部分组成。在制定生产计划的场景中,我们需要用决策变量去表达我们的决策内容,如:是否在某个时间段,某台机器上生产某种产品,如果生产的话具体的产量是多少,有了这些决策变量,我们还可以推导出一些辅助的决策变量,如每天每种产品的库存是多少;我们通过约束条件来表达生产过程需要满足的限制条件,如:库存的最大数量,班次的最大产能,当天初始库存、产量、需求和当天结束库存的相互关系;我们利用目标函数表达优化的目的,如最小化生产成本、库存成本。这个场景的问题被称作有资源约束的批量生产计划问题(Capacitated Lot-sizing Problem,CLP),该问题是一个NP难的问题。下面我们以一个简单的问题举例。
数学建模举例
问题变种
我们可以对上述问题进行变化得到诸多变种。比如:
将一台机器拓展为多台机器。在这种情况下,多台机器可以是同质的;也可以是不同质的,如每种产品在每台机器上生产时间不同,每种机器只能在某种或某几种机器上生产等。
将单层级产品拓展为多层级产品。这里我们生产的产品之间是没有关联的。在某些场景下,我们的产品A可能是由产品B的组件,而我们需要同时安排产品A和产品B生产。
考虑模具个数限制。当我们考虑模具信息时,如果同一班次每套模具只能在一台机器上使用,那么我们就需要要求同一班次同一产品只能在同一台机器上生产。
允许需求延期。上面这个问题中,是不允许需求延期的,即必须在需求要求的期限前完成相应的生产。在某些场景中,我们可以将其建立为允许需求延期的模型。
模型求解
接下来,就需要利用一些数学方法,对我们写出的数学模型进行求解,即给出一个还不错的满足我们的数学规划模型描述的运营规则的解决方案。
上述数学规划模型通常是一个混合整数规划模型(Mixed Integer Programming Model),其中有大量0-1变量描述是否在某个班次某台机器生产某种产品,连续变量如生产的时间。对于很多生产场景而言,如果我们需要在某台机器上生产某种产品,需要先进行机器准备(如更换模具、装入材料等)并产生准备时间。因此,产能这项资源,需要被生产和准备生产共同使用。机器准备时间的考虑,大大加大了这个数学规划模型的求解难度。
学术界提出了诸多方法来解决批量生产计划问题。我们将在下一篇中对这些方法进行进一步的学习和讨论。
- 点赞
- 收藏
- 关注作者
评论(0)