大数据挖掘生产排程有困难,运筹优化

编辑推荐

运筹优化就是使用运筹学得到最优结果的方法,我们相信,这一学科在各个行业都将有巨大的应用空间。下面就来看一个运筹优化生产排班的例子吧。

之前顺应潮流,我们写过关于买房的数据分析文章。不过,你以为买房就是故事的结局吗?并不是,很快你就会发现,装修才是最让你精疲力尽的环节。

比如最近笔者家里的装修工作终于进入了安装阶段。各个主材厂家基本都早于预期进场,然而只有木门厂家比预期的时间晚了20多天。后期安装环节一环扣一环,由于木门的推迟,导致后续环节也不得不连锁反应,拖延了20多天,浪费了宝贵的通风散味时间。虽然木门的销售姑娘服务态度很好,一再表示歉意,但是还是严重影响了客户体验。以后再装修,笔者决不会再订这家的木门,和亲戚朋友分享装修经验的时候,也决不会推荐这个品牌了。

据销售姑娘解释,推迟的原因是因为实木木门的工艺比较复杂,流程多,导致迟迟发不出货。然而在笔者看来,这个理由完全站不住脚,即使流程再复杂,下订单的时候也该根据历史经验预留出充分的时间。现在迟迟不发货,想必只有一个原因,那就是生产排程没有做好。要知道,这是一家早在年就创办的知名企业,并号称已经进入智能工厂快速转型期,开始了全面强化全价值链体系实力的发展;一开始正是这些宣传吸引了我,但现在看来,这家企业对于生产计划的智能性还远远不够。

在绝大多数企业里,生产计划往往是由生产计划员根据经验来安排制定的。如果订单的数量和节奏保持平稳状态,计划员很容易就能安排好车间的生产计划。但是,如果订单一下子如潮水般涌进,交付延时就很难避免,最终好事变坏事,销量变延迟。

很不巧,笔者家的木门在装修旺季就严肃地考验了工厂生产计划员的应变能力,而且这位计划员看来是考砸了。作为一个大数据挖掘从业者,职业习惯驱使笔者不自觉地思考,工厂应该怎么做才能让生产排程更智能,保证客户的及时到货率呢?答案很简单:运筹优化(oprationsrsarch,简称OR)就是一个有效的决策支持手段。

运筹学是20世纪30年代初发展起来的一门新兴学科,利用统计学、数学模型和算法等方法,为复杂问题寻找最佳、或近似最佳的解答。运筹学在近代的兴起,要归功于它在二战中的贡献;战后,这个理念开始进入工业和商业领域,逐渐得到了长足的发展,最终形成完备的理论。再加上现代计算技术的发展,运筹学已经成为了决策论中不可或缺的科学技术,甚至是现在正当红的人工智能,也需要OR的技术支撑。

OR听起来很高深,实际上特别容易理解。OR的精髓就是在约束条件下求极值。比如说,在有限的资金下如何做资产配置达到收益最大,在满足所有人的需求的前提下如何分配资源实现成本最小……

下面我们以一个简单的例子来对OR的生产排程做示例:

假设这个被我嫌弃的木门生产厂家,其产品为实木门和板材门,两种产品产能共用。生产周期一个班为12小时,其中生产时间为8.5小时,其他时间为保养时间,一天共计2个班。可以生产木门的共有5台机器,其中三台为19型机,两台为22型机。这两台22型机可以各自独立生产,每天分别生产82扇门;而三台19型机则不同,必须同起同停,每天共同产能为66扇门。

可以很容易求出,对于同种型号的木门,工厂每天的最大产能为82+82+66=扇门。当一天的任务量低于最大产能的时候,可以仅调用部分机器,生产82扇、66扇,或者82+66=扇门;如果任务量比这还要低,也可以选择只开工半天、做1个班。我们可以得出,该工厂生产的最小单元为1个班的产量、即41扇门或者33扇门。因此,生产时的任务量必须是最小单元的倍数,不可能正好产出扇门之类的数字;需求如不能满足应可以提醒。

同时,实木门和板材门的生产都需要使用一定量的原材料,比如实木原材、板材原材和五金件之类,每天的原材料也由一家合作厂商限量供应。

现在我们来假定一个场景:工厂接到了一个大订单,需要每天生产A扇实木门、B扇板材门,而合作厂商可以提供的原材料量每天也是一定的。

首先,我们当然需要满足客户提出的生产需求,即每天的生产量必须不小于A扇实木门、B扇板材门;其次,我们使用的原材料不能超过合作厂商的原料供应量;最后,客户提出的A、B扇门需求显然不一定是我们最小生产单元的倍数,也就是说,我们的产量很可能大于客户的需求,造成库存压力。

因此,我们应该在满足需求的前提下,实现最小化生产量,避免库存积压。

对于这样的生产场景,该如何安排每台机器的生产计划呢?我们可以写出如下的目标函数和约束条件。

目标函数:最小化生产量

MIN(41*甲22机实木门+41*乙22机实木门+33*三19机实木门+41*甲22机板材门+41*乙22机板材门+33*三19机板材门)

这里以半天为一个班次,41和33分别是一个班次的生产量,而“甲22机实木门”是指甲号22型机器在一天内生产实木门的排班数,“三19机实木门”指共同运行的三台19型机器在一天内生产实木门的排班数。其他表识以此类推。

可以列出约束条件:

22机甲总排班数=1*甲22机实木门+1*甲22机板材门=2

22机乙总排班数=1*乙22机实木门+1*乙22机板材门=2

19机总排班数=1*三19机实木门+1*三19机板材门=2

实木门需求:41*甲22机实木门+41*乙22机实木门+33*三19机实木门=A

板材门需求:41*甲22机板材门+41*乙22机板材门+33*三19机板材门=B

五金件用量=41*甲22机实木门+41*乙22机实木门+33*三19机实木门+41*甲22机板材门+41*乙22机板材门+33*机19机板材门<五金件的供应量

实木原材用量=41*甲22机实木门+41*乙22机实木门+33*三19机实木门<实木原材的供应量

板材原材用量=41*甲22机板材门+41*乙22机板材门+33*三19机板材门<板材原材的供应量

按实际情况给A、B、C赋值,基于上述的目标函数和约束条件,就可以借用运筹优化软件,轻松计算出每台机器的排班数了。

需要注意的是,以上只是将最简单的生产情况抽象化的演绎,在工厂实际的生产过程中,情况会比上述复杂很多,依靠人脑有时很难应付。不过,不管情况有多复杂,只要能清晰地理顺目标函数和约束条件,基本都可以在各类OR的软件中解决。当然也会存在无解的情况,那就需要调整约束条件,以达到近似的最优解。

最后,祝愿我们的制造业企业,能够引入更多的大数据挖掘技术,让中国制造真正成为中国智造

关于本文

本文转载自毕马威大数据挖掘







































最好的白癜风医院电话
治疗白癜风的中成药



转载请注明:http://www.guyang114.com/qtwzyhjq/yxfa/6300.html