用规划求解做计划排程,自动化不是不可能!


作者:刘程浩  广州CPDA第11期学员   经济学硕士

擅长通过数据对业务流程进行分析和优化。

 

预备队训战课上,曹博士和我们介绍了一种可视化的小工具来做计划的排程工作。虽然整个过程他并没有把线性规划4个字说出来,但是从目标函数约束条件反复的出现在他的讲解过程来看,其实也就间接的告诉我原理就是如此。

课堂上有一句话我是非常认同的:我们在业务应用的时候,尤其是调研约束条件和目标函数时,要充分的和业务部门做沟通,当你从一开始别人介绍业务时都听不懂人家说什么,到经过调研后比谁都懂这个业务,那么你的工具才能发挥到作用。

后来在实战演练的时候,虽然讲师没有说要我们用这个方法,但是感觉曹博士的这个点子倒是戳到了我的痒处,嘿嘿我于是照着猫画虎整吧整吧也搞了出来一个,小有成就感。

那么废话不多说了,我就举一个安装计划的排程案例,作为介绍分享吧。

假设哈,今年天气热的太早了,我灵机一动承包了马蹄山村、黄金山村、雪象村的空调售后安装工作。下面是我的业务范围和要求:

  1. 我手上一共承包了美的、格力、志高、长虹4个牌子(随便瞎说的哈)。

  2. 未来8周内我要安装完800台空调,它们的品牌及分布数量如下表

用规划求解做计划排程,自动化不是不可能!

(偷笑一下,真要装完800台空调,我的手不给冲击钻震出老茧才怪)

3.各个村的情况和各个品牌的安装要求如下

 

用规划求解做计划排程,自动化不是不可能!

 

4.我根据手头上能够招到的临时安装工人和工具的情况,对安装计划的总量做了如下的规划

 

用规划求解做计划排程,自动化不是不可能!

现在问:

    每个村,每个品牌、每一周的安装计划如何排程,能满足以上几点的安装计划诉求?

具体的解法:

其实一开始我看曹博士介绍,他是用R语言来实现这个小工具的。但是他举得例子和实战演练的例子目标函数的设定有些差别,他的目标函数是总成本最小的问题,而我这个例子的目标函数确是一个定值,R的各个线性规划求解的包里的参数并没有这种设定,所以我还是搬出了Excel作为具体解法的工具。(不知道是不是我没找到R语言可以设定目标函数为定值的包,谁找到的话麻烦告诉下我,定有谢!)

那么做线性规划求解的过程,是将语文题翻译成数学题的过程。

首先,我们一次性将规划求解的算式,用下表给排出来:

用规划求解做计划排程,自动化不是不可能!

 

将规划求解用数学的表达式列出来,看看会不会让人头大?

用规划求解做计划排程,自动化不是不可能!

怎么样,头大了吧,那么我们转换成容易理解的EXCEL,就没那么头大了。

第一步,翻译目标函数和初始化解题区域

用规划求解做计划排程,自动化不是不可能!

第二步,“翻译”安装总量诉求

用规划求解做计划排程,自动化不是不可能!

第三步,翻译各品牌安装总量诉求

用规划求解做计划排程,自动化不是不可能!

 

第四步,翻译各个品牌在每个村的计划排程

 

用规划求解做计划排程,自动化不是不可能!

然后将这些参数录入到EXCLE中去

用规划求解做计划排程,自动化不是不可能!

然后,点击求解,得到以下的结果

 

用规划求解做计划排程,自动化不是不可能!

如果是非线性GRG求解,可以得到另外一个结果,都可以应用,感觉从顾客的体验来看,每个品牌每周都有人安装,会更好些。

用规划求解做计划排程,自动化不是不可能!

小结:

  1. 总是在喊AI要替代人工操作的狼来了已经有一段时间了,通过这次的训战演练,我算是从本职工作上又、双、叒、叕一次听到了狼叫声。不过,听到了狼叫还算是比较好,至少我知道狼是如何叫的原理,以后我能够让狼叫的更动听些,或者更响亮些。因为我理解业务。

  2. 曹博士只是在课堂上点了一下方向,并没有实际讲解具体过程。但是却启发了我在其他业务场景的实现,这也许才是搞学术研究的高阶路径。或许,读博也是这个过程吧,呵呵。


    上海CPDA35期课程

    扫码添加课程顾问老师的微信即可报名哦!


    内容转载自公众号:statist3927