13066158880
当前位置:首页 / 新闻动态

APS答疑精华系列

admin 2022-08-18 新闻动态


问题目录

1、目前业界有比较好的开源代码、工具或者类似kaggle那样的比赛吗?

2、如何没有源码,自己开发采用哪个算法一般效果比较不错?自己从头开始实现的话难度会不会很大?

3、在实际工厂条件下,要重点关注那几个问题,比如订单分批,基于客户订单、交货期变更等的动态调度。

图片



Q&A:



图片

1、目前业界有比较好的开源代码、工具或者类似kaggle那样的比赛吗?

目前确实没有很标准化的开源工具或代码,没有的原因是因为生产模式不同,调度复杂度不同,调度目标不同,考虑的约束不同,企业的成熟度不同,都会对调度系统提出不同的要求,很难有一套放之四海而皆准的系统,这也是aps比mes难得原因,之所以有这么多因素,并且企业级别的应用的重点从不是算法,所以也就没人去搞这样的比赛了。

图片
图片

2、如何没有源码,自己开发采用哪个算法一般效果比较不错?自己从头开始实现的话难度会不会很大?

算法本身很难比较好坏,还是要根据应用模式来定,如果产品很固定,生产工艺也很成熟,基础数据很准确,生产扰动比较少,重调度也不是很频繁,花半个小时甚至一个小时,用一些智能优化算法也是不错的,这样的结果会比较优的。但是相反,如果是新品的调度,工艺不稳定,基础数据也不准,这些往往会导致不断的重调度,那么花一个小时哪怕是10分钟,调度员也是不能接受的,此时一些简单规则方法就比较实用,如最短加工时间优先(SPT),最早交货期(EDD)等,所以使用什么算法还是要结合工厂实际的。至于从头开发的话,我是真心建议,如果没有经验是不要自己做的,就算做了出来,也只能满足第一期需求,后面再追加需求的话,软件系统很难可持续的,因为做aps绝不是解决一个算法问题就能解决的,一般做aps有仿真方法和析取图方法,我们之前用的是后者,析取图的原理还是要有一定基础的,并不是一个列表排序,而是一张图节点排序。我们使用析取图的目的就是可以考虑更多实际约束,使得软件可以更加贴近实际生产环境,如工件之间某些工序是有顺序约束的,某些设备上工序顺序是有要求的,通过析取图的约束网络就可以实现这些。一句话,没有过开发经验的话,难度还是很大的(做到真正能用),我们哪怕现在自己重新再做一套,也会好好设计一番的。

图片
图片

3、在实际工厂条件下,要重点关注那几个问题,比如订单分批,基于客户订单、交货期变更等的动态调度。

具体实际工厂注重什么问题,其实这需要来源于具体的需求了。你举例的这几个问题都是要绝对考虑的,这些基本是各个工厂的共性问题。我们可以把软件系统当成一个黑盒,其有输入和输出,输入包括物料,订单,工艺,资源,任务,从这几个方面考虑的话,物料就可以考虑库存,库存不够不能参与调度,订单可以考虑订单的分批交付,可以有客户订单,也可以有库存订单,工艺要考虑工艺的柔性,资源要考虑资源柔性,要有设备组的概念,任务也要考虑分合批,和设备的兼容性等。对于输出,就是要有指标来反映调度结果好坏,因此调度系统必须有一些可视化的输出报告,如拖期天数,拖期比例,制造期,机床利用率等等。对于中间的黑盒,比较重要的问题就是对于同一个问题,可以制定多个不同的方案进行对比,如不同算法实现的方案,不同操作(有的分批,有的没分批)实现的方案。其实还有可以考虑的还有很多,只能通过不断的调研才能考虑的更完整,这也是我们这么多年做下来的感受,做aps一定是在工厂里做出来了,办公室里只能做出只能用于演示的东西,落不了地了。

图片




推荐新闻