APS经过十多年的蛰伏和修炼,不论是从技术角度还是市场角度已经逐步走向成熟。本文从APS属性的学术角度,分析了智能制造关键软件之——APS智能排产系统的一些特性,仅作为企业用户选型的参考思路。
一、APS的基本属性
APS(AdvancedPlanningandScheduling高级计划和排程)是一个比较年轻的工业软件。从软件的应用目的和目标来说,APS与其他的软件有很大的不同。比如,财务软件、进销存软件、客户资源管理软件等,主要是利用计算机运算速度快,数据存储、传递、演绎、纠错和交换方便,可以把人的很多工作实现“自动化”。这些软件没有决策功能,只会做我们让它做的事情,不会指挥人来做什么事情。
APS最重要的属性就是它有决策功能,它是否“聪明能干”,就看它的决策好坏了,而它的决策直接关系到企业的生产效率和效益。排程也就是排序。排程就是把企业的资源状况和将要应对的一组任务告诉APS,APS来回答该怎么办,谁(设备、人)来做?做什么?做多少?什么时间做?等等。
APS最初出现在一些流程型工业和专线生产环境。其实,在这些应用场合,APS一点儿也不比人聪明,但是它处理速度快,可以实现自动化,还不会出错。
生产计划调度的复杂程度主要由资源(Resources)、物料清单(BOM)、流程(Process)的情况决定的。比如说,一个厂把资源分为若干条生产线,专门生产若干种不同产品,排程很简单。但是,如果几百种产品混线生产,排程就复杂得多。如果再加上动态的资源(例如模具、工装、人员的约束和变量)、物料结构的复杂性以及特定的一些时间的约束,暂且不说优化的问题,仅仅是排出一个可执行的调度指令就变得异常复杂(生产调度员多么不容易!这也证明计算机太认真,丁是丁卯是卯;不像人那么灵活,有错误也没有关系,到现场再临时调整)。
在离散型制造业,呈现出多目标、多约束、动态随机的环境条件,企业生产计划调度是一个极其复杂的大系统问题。如果要应用于实际生产中,排程的困难远远不止像一个零件毛坯,经过车、铣、刨、磨的工序交接就完了。时间、空间、温度、物料的形态、交集、分散等等,具有非常多的约束条件。工序工艺的特定要求可以罗列出成千上万。排程中如果遇到相对重要的约束没有考虑进去,其结果就不可执行。不可能利用一种数学模型应对所有问题。这也就是APS要做到像ERP那样通用性几乎是不可能的。而ERP应用MRP/MRPII这一种方法来应对所有的工业企业计划问题,也恰恰是它在某些项目实施中引起失败的主要原因。
对于APS来说,应对企业千差万别的生产约束条件,能否具有非常强大的、灵活的建模方式是它的主要性能之一,这是解决排程是否可以执行,是否符合企业实际的方法。其次就是它的择优能力,也就是在无穷多的可执行方案中能否找到最优的那个。一般来说,找到一个可执行排程还不算非常难,可能用不了一秒钟。但要择优就太困难了。
排程结果的择优有两个方面的困难。企业的需求是多目标的,并且很多目标相互是矛盾的。比如,完成最多的订单又要缩短订单的生产周期就是矛盾的。择优需要人来决策。确定目标后,就是如何找到最好的工作排序了。排序在数学上就是排列组合。这可以用N!来表示。如果计算机每秒可处理1,000,000序列,我们每分钟最多只能处理11个结果排序。如果给定20个结果排序,找出最优解则需要77147年!实际上,我们排程的可执行解何止是成千上万!这就需要我们常常谈到的“优化算法”。
优化算法问题的探讨过于高深,生产企业根本就不想听,也无须多费口舌。企业用户就看结果。只需要说明的一点,优化算法的实现必须要一个强大的“优化引擎”,优化的过程需要时间,APS不可能在瞬间运算得到优化结果。这将使云计算平台大有作为。
有没有优化运算,直接的结果就是延迟订单数量是多是少?或者是潜在的20%产能是否挖掘出来。对生产企业来说,这有质的区别,可能正是企业上APS的初衷。
二、如何选择APS
PK的方式
APS是一个优化的排程调度工具,归根结底,APS追求的是企业生产效率的提升,而不是替代人工排程。如何验证呢?对于APS用户来说,检验衡量的最简单的方法就是,拿出过去某一个月实际生产计划的历史数据,指定一个优化指标序列,让若干APS软件供应商排一下。可以提出一个目标序列,例如:第一满足订单最少延迟;第二满足最大设备使用率;第三满足最短订单生产周期等。企业只要给APS供应商提供统一的基本数据和必须的约束条件即可。有些数据(例如标准工时)不是十分准确也没有关系,差不多就行了。必要时,可以请APS供应商到生产现场调研。因为生产企业的计划调度专家已经非常有经验了,一看排程结果就能知道这个APS是否适合自己的企业应用,通过对比就知道各个供应商的结果有什么区别。让几家APS供应商PK,客户坐等结果再分析论证。
企业用户根据实际需求还可以提出一些苛刻的目标。比如,给出足够的订单,要求结果将一些相对瓶颈设备的使用率逼近100%;某些订单的生产周期不得超过多少天,等等。太简单的数据和需求就没有PK的意义了。即使这些目标不能实现,APS供应商也必须给出让人信服的原因。
排程结果是否符合并满足企业需求是选择APS最重要的条件,企业生产效率的提升主要依赖与此,同时这也是APS技术含量的体现。在可视界面上的其他需求(报表、甘特图等)都属于次要需求。
客户的适应能力
生产计划调度绝不是精度越高越好。理论上,APS可以实现排程到分秒不差,可以排到每一个人每个设备的每个动作。这只对自动化生产线有意义。
我国企业的管理水平参差不齐。不客气地说,很多工业企业的管理水平可能还达不到一百年前泰勒所在的年代。对于一些以农民工为主的工业企业,能把订单跟住,能够实现班组、工作中心级别的信息流和物质流的同步就非常不错了。所以,企业选择APS并不是越高级越好,可以选择比较经济实用的APS。
各个企业的生产现场管理的复杂性差距很大。有些企业,产品品种不多,专线生产,产品结构简单,设备资源很少,工艺简单,人工排程和APS排程的结果不会有太大差距。这种情况下,利用APS可以大大降低人工的工作强度,也能避免一些低级错误。这种企业也没有必要选择太昂贵的APS。
有些企业,具有明显的瓶颈设备(主资源)。不论是用APS或者是ERP中的MRP都能实现企业的需求。
有一点需要强调。精益管理是一个渐进的过程。一些企业目前管理水平只能适应比较粗的管理,采用功能简单的APS是可以的。但是,当企业管理水平提升以后,APS是否能够适应新的需求环境是必须要考虑的。
一个优秀的APS,应该体现先进的管理理念并将这一理念在系统运行过程得到贯彻实施。在APS的系统下运行,企业能够不断发现问题,不断解决问题,不断提高企业的管理水平。而这些要求的实现,应该由生产企业自行实施,而不是必须随时要软件供应商提供帮助。
是手工自动化?还是利用人工智慧?
在大型工业企业,生产计划调度专家是企业的宝贵财富。在多年的生产实践中,他们积累了大量的经验。这些经验绝不是用某些软件就能替代的。换句话说,如果软件系统不能吸收企业的专家经验(用专业一点的说法是:量化专家经验),那么,这个APS可能不会得到比这些专家更好的结果。
受到ERP解决方案模式的影响,国内外一些APS供应商根据工业企业普遍性的问题设计标准模板(标准化建模),再根据客户的需求做一些个性化的输出表格方面的外围开发。这种建模方式必须对生产现场需求和约束做出简化或者近似,同时很难吸收专家经验。从这一方面讲,不要指望APS有非常成熟的模板可以套用。相对ERP来说,APS的二次开发量应该多很多,企业调研也更加细致。尤其是,在软件系统中对于专家经验的量化工作得到体现。没有这些条件,APS的排程优化问题无从谈起。
企业多年形成的管理模式包括一些细节都是有其合理性的。APS必须适应企业并在原有基础不断改善;而不是企业适应APS,一开始就要求企业做出某种改变。比如,企业生产中的各种报表,APS应该完美地适应企业的习惯。这一点与ERP的实施非常不同。
三、关于APS展现形式
倒排和正排:
一些市场上的APS具有倒排和正排的选择功能。首先,这个不应该是用户需要选择的功能。软件爱怎么排都行,用户只关心结果。其次,理论和实践都已经证明,倒排(JIT)必须以足够的设备资源能力为前提,只有流水作业或者产能非常丰富的时候,倒排才是可选择的。优化排程目标是挖掘最大产能和降低成本。到底是采用正排?倒排?混合排?是“整体解决方案”确定的,而不是要客户选择的。
人工干预:
看到排程结果(甘特图)有些不满意的时候,局部拖动甘特图,试图对排程结果进行改善,并体现人工干预。在十年前,这个方法在欧美地区应用很多。这是因为,当时运筹学的成果还不能支持复杂生产现场的计划调度运算。现在,在欧美地区这个方法早就弃用了。能否支持全局优化是APS升级换代的一个标志。
1.甘特图拖动并立即重新排程,它的前提是排程运算必须非常快,否则人们三拖两拽就烦了。前面已经说过了,找出千千万万可执行解中的一个排程结果是容易的。例如有些算法只排出一个结果就结束了。在系统不会自动去寻找最优结果。所以,需要人工反复拖拽,期望找到比较满意的结果。
2.实际上,通常人工拖拽甘特图的方法一定是局部的优化,整体指标不一定有好处。只有在产能极大丰富的时候,才有可能同时得到全局的改善。
3.采用了智能化的软件工具,人工干预应该体现在“排兵布阵”,而不是“指挥单兵作战”。看到某个班组(设备)空闲或者哪个订单延迟,拖拽一下让他们提前作战,攻占了这个山头。但如果后续部队没有跟进是毫无意义的,或者是占了这个山头丢了那个山头。
4.从软件供应商拓展市场的需要,一拖拽,呼啦啦出现一个新的排程结果,这的确好看。对于初次接触APS的人来说,非常有鼓动效果。但是,APS是一个优化排程工具,而不是游戏机。从技术实现角度,甘特图拖拽没有任何难度。关键的是当排程考虑到全局优化的时候,这样做没有实际意义。再说,人的视觉是有很大局限性的,当几百个订单甘特图呈现在眼前,如果产能已经很紧张了,拖拽的结果一定是顾此失彼。
人工干预应该体现在整体布局和目标上。例如,制定本阶段的排程优化目标序列;一些订单需要优先安排;把某些资源指定给某个对质量要求高的重要客户;安排定期维护计划;缩减和调整非瓶颈设备资源和人力,安排到瓶颈环节;供应链的改善等等。把你的需求和战略告诉APS,具体的安排由它来做并且达到你的要求,这才是需要的人工干预。
四、APS仅仅是一个软件工具
企业生产管理是一个系统工程问题,从形式上看到的生产现场的计划调度问题是一种表象。解决企业生产管理难题只能从全系统的角度去分析去论证。千万不要以为上一个APS就能解决企业的生产计划调度难题,APS仅仅是一个工具,并且是必须在拥有了正确的整体解决方案后才能奏效的。
造成企业生产计划调度困惑的原因很多,影响的程度也不同。企业的管理体制机制、销售和市场的管理模式、供应链尤其是供应商的管理问题、库存管理、布局和环境问题、设备管理体制、工艺技术管理问题、人力资源管理机制、以及车间的生产管理模式,生产流程等等问题都会为计划调度带来困惑。对一个企业改善生产现场管理,首要的是对企业生产管理全面做一个科学诊断,找到问题的核心以及各种问题之间的关系。之后,才能根据企业的实际设计APS解决方案。这是APS真正的价值所在。与ERP等软件不同的是,APS必须适应企业现状,而不是相反。受传统的软件工具实施模式的影响,企业往往会忽视这个关键问题。企业诊断和咨询又是另外一个密切相关科学领域。
五、其他技术指标:系统集成(接口)
企业的信息化构架应该以企业的核心业务为主,也就是应该从企业的生产计划调度的信息化为核心,并由此向外围扩展。遗憾的是,很多企业或多或少有了ERP、MES、PDM、CAPP等软件,恰恰在核心部分属于空白。无论现状怎么样,APS必须考虑好与其他软件的接口问题。
1.开放标准
2.模块设计
3.良好的应用编程接口(API)设计
4.分布式协议
5.整合机制