随着大数据及工业大数据又被业界泛化,而工业企业却需要重点关注此技术对制造的核心竞争力QCD(质量、成本、交货)方面的应用。而大量的案例均是在设备维修和产品售后服务领域的成功应用。
而制造企业的管理者们会发现,他们在追求转型升级尤其适用智能化手段时,他们仍处在一个完全不舒服,充满混沌和复杂性、感觉很狼狈的世界。越来越多的人讨论的都是事实与认识之间的不协调,新的现实的特征就是不确定性和歧义丛生。因为脱离整个系统或有效产出(throughput)孤立的智能化、提高设备效率或降低成本是没有意义的。
随着智能制造的持续推进,智能计划排产成了中国制造企业转型升级的刚性需求,APS就成了制造企业需要迫切了解的系统。可视化的图形界面和高级的算法,它们适合我们吗?在我们的需求中,哪些方面它们可以完美的满足?如果我们使用,可能会带来的具体效益和潜在障碍会是什么呢?
一、理清概念
关于APS具体是哪些单词的缩写,有据可查的就有很多种,这就造成了都在讨论APS的人忽然发现对方讲的和自己不完全是一回事的尴尬局面。A 是Advanced (高级)的缩写,没有分歧。P 可查的说法包括Planning, 和Production; S 包括Scheduling 和System。经过排列组合,就会发现APS 有的代表Advanced Planning and Scheduling, 有的代表Advanced Production Scheduling,有的代表Advanced Planning System,等等。
无论用什么词汇,可以看出在帮助企业进行资源规划和优化的系统中,我们关注点在Planning 和 Scheduling这两个方面。 Planning 代表了“计划”;而Scheduling代表了 “调度”、“排程”,或者在很多人理解中,代表了“排产”。
为什么要把这两个词分开表述,因为它们代表了不同的优化精度和优化算法,对数据有着不同的要求,也就造成了对企业有着不同的适用程度。这两个概念之间的关系如果不搞清楚,我们就没有办法准确地评价一个系统是否适合自己的需要。
理想中,我们希望有一个智能系统可以像一个智者一样,时时刻刻告诉我们该生产什么产品,该在哪台设备上生产,该生产多少,在生产现场发生变化的时候,该如何调整等等。幸运的是,目前这个智者正是工业4.0的智能制造所追求的。
在满足客户需求情况下最有效率安排企业资源是一个理论上非常具有挑战性的问题。这个问题正因为过于复杂,大部分问题即使用超高速的计算机也无法在可以忍耐的时间范围内得到最优的结果。这个现象随着计算机硬件速度的提升和大内存的虚拟云计算得到了缓解,但仍然没有根本得到解决,这正是理论研究没有止境、软件开发没有止境的原因。
因此,解决复杂问题的思路只能是缩小问题的范畴,主要通过两个方面:
(1)把问题分割成子问题,分别解决;
(2)把时间分割成不同精度,分别解决;
采用(1)方法最典型的例子就是ERP中将生产主计划(MPS)、能力计划(CRP)和物料需求计划(MRP)作为三个或者几个分开模块、分别运算的情况。这种分割除了满足计算速度的要求外,在产能和物料规划的准确度上越来越显示突出的缺陷。如果理解这种分割发生在六十年代计算机运算速度更加落后的背景下,那么这种当初合理的分割现在已经不合适宜,因为无论从计算机速度、优化算法的质量都比六十年代提升了几个数量级。
为什么这种分割计算是不够准确?道理非常简单,产能的安排和物料的调配互相制约、互为条件,本质上并不存在哪一个可以先于另一个完成。一般来说,资源安排起步于对产能的规划,合理安排最终产品和半成品对企业有限资源的占用;然后根据生产计划产生物料需求计划。但物料供给的波动会造成生产计划的调整,成为一个不但是有限产能,而且是有限物料的优化问题。
采用(2)方法最典型的方法就是提供不同管理层面的计划问题,包括战略层面(长期),管理层面(中长期)和执行层面(短期)。
无论何种层面,为了降低优化计算的复杂程度(例如决策变量的数量),都需要做一定程度的取舍。如果做长期计划,当时间跨度增加、视野更加开阔的时候,优化精度就会降低,比如说采用以周、月为单位的时间刻度。如果做短期计划,例如生产排产,当需要具体安排某个工序在具体时刻发生的时候,这时候时间刻度缩小到分钟级别,那么整个计划排产的跨度就会缩短。
一般来说,时间刻度(或者说时间精度)是划分“计划”和“调度”的最重要依据之一。如果时间刻度是以月、周、天为主,那么这样的资源安排一般称为“计划”或者“规划”(Planning);如果时间刻度已经深入到小时和分钟(甚至秒)的级别,并且资源安排具备明显的次序要求,那么这样的资源安排一般称为“调度”或者“排产”(Scheduling)。此外,这种划分的另一个重要依据是这两类问题的处理算法一般也大不相同。
按照现在算法和计算机处理能力的发展,现在资源优化的方向已经逐渐摒弃(1)当中产能和物料割裂计算的方式即传统ERP的计划模式(现有的ERP系统也内置APS算法引擎),而是在更系统的“有限产能计划的”框架内一并解决产能和物料的问题。我们所看到的新近涌现出来的很多APS系统。
但碍于算法的复杂程度,在相当长的时间内,采用不同时间精度的方式仍然会很流行,但所幸的是,不同企业或者企业中的不同职能部门对于时间精度的要求是不一样的。
但是,我们需要统一的“有限产能、有限物料”的优化框架下来讨论“计划”和“排产”在中国企业中的适用度,而不再将产能和物料分割开计算。并且还要形成自反馈闭环。
二、优化面临的主要问题、目标、方法和算法
(1)三大难题
在资源优化问题中,我们面临的三大难题是:Lot Sizing(产量),ResourceAssignment (资源调配) 和 Sequencing (顺序)。简单来说,就是决定企业每天生产什么产品、生产多少、由谁来完成以及以什么样的次序来完成。
Lot Sizing 试图确定在一定单位时间内(例如班次、天、月、周等)生产制造的种类和数量。Resource Assignment 试图确定各种加工产品如何分配到多个资源上。Sequencing 试图确定具体的设备加工的次序和生产准备的方式。
(2)多个目标
在资源优化问题中,我们也面临着企业优化的目标。很遗憾的是,企业目标的选取没有降低,反而增大了上述三个问题解决的难度。因为企业对于资源利用的目标不但是多维的,也是不断变化的。企业资源的目标可以包括:库存最小化、资源利用最大化、客户订单满足率最高(客户缺货率最低)、生产转换最短、生产连续性一致化、生产加班最少等等。这些目标随着经营环境的变化,优先级有可能发生变化。
(3)二种方法
一般而言,“计划”所主要针对的问题就是Lot Sizing (产量) 和 Resource Assignment (资源调配)的问题;而“排产”所主要针对的问题是Sequencing(顺序)问题。这种对应关系是和问题中所隐含的对时间刻度的要求是紧密相关的。
一个工厂如果获得当天的生产计划,也就是获得了当天需要加工的产品、数量和设备的大致安排,也就具备了基本的生产启动指令。车间排产调度人员具有灵活安排生产加工次序和组织生产的灵活性。“计划”的优点在于在统筹的资源调配情况下,赋予车间现场人员比较宽松的灵活度来应付各种可能的突发事件,缺点在于并没有告诉操作人员如何安排更细致的工作。
反之,“排产”则详细而具体的安排了设备在更精细时间刻度上(小时、分钟)的工作量,以及工序之间应该如何衔接和先后次序。“排产”的优点在于明确操作次序,减少现场人员的随意性;但缺点也是显而易见的,就是对于生产现场的变化处理并不具备宽容度。
(4)多种算法
“计划”和“排产”所采用的算法往往大不相同,对企业优化目标所造成的影响也大不相同。在“计划”当中,当时间刻度是以班次、天、周、月等划分的时候,为了实现“有限产能、有限物料”的统一优化,往往采用是以线性规划或者混合整数规划为主的优化方法。
在“排产”当中,当时间刻度非常小,或者允许是连续时间的时候,为了实现次序的优化,往往采用以约束规划、经验规则或者启发式算法为主的优化方法。
“计划”可以对企业多目标进行优化,但在时间刻度上做了简化,是一个以企业多目标为导向的优化工具;而“排产”的优势在于执行层面,但因为算法本身的制约,无法看得更宏观、更系统。
时间刻度越小,为了能够在可以容忍的时间内产生一个较好的方案,问题的范围就越要缩小,“调度”算法在增加细节操作的可控性的同时,失去了时间跨度的优势,也就失去了对企业在较长时间范围内目标的可控性。
很多软件很难既能够满足“计划”的要求,也能够产生“排产”的细节,这就导致市面上的APS软件有的擅长计划,有的擅长排产调度。所以就有供应链级的APS系统和工厂级的APS系统。
例如采用经验规则、启发算法或者约束规划,那么优化结果将会是次优解,处理复杂、变化问题可以较快速度计算。但无法实现企业多个目标的同时优化(或者只是找到一个可行解)。
如果企业问题本身已经具备某种特征,比如说按照客户订单生产中,加工批量就是客户订单数量等,这样在某种程度上规避了资源优化问题中的某一个(例如Lot Sizing) 问题,算法的难度可以大大降低。
当然,也有同时包含了两种(或者多种)不同的算法,可以按照一定逻辑先后运行的软件,比如ILOG开发的Power Op系统。
三、“计划”和“排产”,哪个适合我们?
企业管理本身目标的多样性和易变性,以及企业从战略到管理层面都需要进行业务规划的特点,直接决定了“计划”的必要性和可行性。这也正是很多ERP系统在销售时所宣传的,虽然没有太多企业成功的实施了ERP当中的生产计划功能。没有成功实施的原因很多,但其中很重要的一条,就是和传统ERP计划当中无限产能和无限物料和没有在统一的框架内计算而造成的结果偏差有关。
好的“计划”可以在系统、宏观的层面决定了企业的KPI绩效水平,为执行层面上的“排产”打下好的基础。 又能在执行层面给计划层面快速反馈,纠正计划的偏差,提高企业的KPI绩效水平。正是基于这个考虑,制造企业首先考虑的是为ERP的短板,生产计划排产功能找到好的解决方案,或者说为ERP找到好的计划排产优化引擎。
所以好的“排产”系统也是我们所需要的,智能调度排产需要与计划实时自动闭环,实现交期最短化。但需要注意的是“排产”系统的难度却不可不见。
(1)“排产”系统的精密性和对多目标的可控性
以前,在需求稳定的条件下,企业大部分系统级别的绩效指标在“计划”的时候,就已经确定了,而“排产”只是将这个方案更细化。例如,对于资源的平衡利用目标,当我们通过计划系统确定每个设备在一周内的生产数量的时候,就已经确定了每个设备在这一周内的耗费工时,也就确定了生产系统在这一周内是否均衡地利用产能。至于让某个设备先加工产品A还是产品B,这种排序调度不会改变资源在这周内的平衡率。类似的指标还包括库存水平、设备利用率等。
但是,面对需求波动较大的条件下,“计划不如变化快”、“不能更贴近现场现实”。通过排产系统动态的确定每个设备在一天或更短的时间内的生产数量并能动态调整以适应复杂的变化就尤为重要。“排产”系统中算法本身的决定了“排产”系统在整个企业资源优化过程中,处在现场执行层面的地位上并追求适应而不是最优。在考虑企业现场的复杂性、动态性,“排产”系统,需检验“计划”结果的可行性并保证生产能够准确运转,及时的于计划行成有效的闭环。
(2)“排产”系统对于生产的波动必须提供更智能化的包容度。
毫无疑问,制造企业生产的波动性是管理的魔鬼。无论标准工时,材料供给、设备人员状态等等,无时无刻不在发生着变化。这种变化太普遍、太不可预见、太难以跟踪。如果没有一个系统提供准确及时地数据MES,“排产”系统如何能够控制到分钟、小时这样的时间精度上?如果一个环节发生了超出计划的延迟,“排产”系统要以怎么样的方式来调整后续的操作?时效性如何?影响面有多大?“排产”系统能否跟得上这样频繁的变化?
(3)“排产”系统算法本身和现实操作不一致的问题
正是由于生产的波动性,生产过程中不可避免的出现人员休息、设备中断、运输等待等临时突发事件所带来的生产效率损耗。在“排产”系统中,如何从静态的排产处理转变为动态的排产的柔性处理。也就是说,“排产”系统不但试图排产有效的处理时间,也要排产不可预见的无效时间。
在处理适用单件流的生产方式和批量流的批量化生产的方式的两者之间的并发活动的处理下,如何决定工序间产品流转的批量,是固定流转批量重叠,还是根据前后两个工序的节拍的变化动态的处理流转批量,这给“排产”系统应付这样灵活的处理方式带来难度。
正是因为以上讨论的“排产”系统的难度,在引入“排产”系统的时候,我们需要仔细地考察企业自身的生产状态。
-企业的管理精度和软件系统的时间刻度匹配
排产系统的优化精度应该和生产现场控制的精细程度相匹配。如果排产精度到小时甚至分钟,而现场状态数据(在制库存、设备和人员状态、材料供应状态等等)无法准确到小时或者分钟,现场指令无法应变到小时或者分钟,这是控制落后排产的情况,应用效果不会理想。
-产品的加工次序显著影响到企业的运营水平或者某个局部的运营水平
例如对某些瓶颈工序或需要较长生产准备的昂贵设备,引入“排产”软件对于这些局部产线或者工序进行排序优化,是一个可以充分发挥“排产”软件优势。但多品种、小批量环境下,瓶颈在动态的漂移,这也是“排产”软件超出TOC的DBR排产原理,对所有设备进行排产优化的原因。
-生产波动性可以实时反映到实时数据
这一点非常容易理解,一旦采集的实时数据跟不上频繁变化,“排产”系统是会很快被最终用户放弃的。
四、利用好高级计划的包容性与高级排产的精确性
因为“计划”系统比“排产”系统对于企业管理水平有更大的包容性,建立一个统一集成的“有限产能、有限物料”的“计划”系统和灵活、动态的可执行的“排产”系统,才能应对现在的多品种、小批量的按单快速的个性化生产。
因为,目前很多企业仍然用无限产能、无限物料约束的ERP的计划系统,来与有限产能、有限物料的“排产”系统集成,这显然有点头轻脚重了。
因为“计划”系统体现在对时间刻度的控制既不是太粗放(控制到班次和天、周等),又不太精细(对现场具体操作留有灵活性)。同时,更重要的是这样的时间刻度可以有效地利用数学算法在企业多个绩效目标之间进行权衡。在很多时候,这些绩效目标之间存在着互相矛盾(例如库存水平和客户按时交货率),企业按照实际需要进行优先级的设定。
而在APS系统中,应是“计划”、“排产”统一的集成一个可行的、涵盖企业多个绩效目标、集成的"有限产能、有限物料”系统,将产能和物料的计划与排产在统一的框架内同时解决,不仅如此,还需要与车间执行MES系统、生产过程控制PCS系统紧密的集成动态的融合,才符合目前迈向中国制造2025的智能制造战略的MOM生产运作系统。
五、面对工业4.0的智能制造的挑战
基于传统控制论指导下,集中算法优化,尽可能详尽预先优化好所有流程已达到顶峰。尽管精益生产系统TPS可以使系统进一步稳定、均衡、简化,而面对日益复杂的制造需求,尤其是多品种、小批量、短交期、个性化定制的生产模式的到来,这种中央集中处理变得极为复杂,也极不稳定,约束条件、随机因素、因果关系不明显等,构成一个不确定的非线性不稳定系统,仅仅让数字自由的流通来消除复杂系统的不确定已力不从心,而APS高级优化算法的优化空间的提高已经十分有限 当然,精益工厂、数字化工厂是智能工厂的重要基础。
而中国制造企业现在需要的是有宽容度、可以针对企业多个目标同时优化的计划系统,可以宽容企业管理的波动性和不完美。在这种宽容中,系统可以智能的为企业提供具有指导意义的生产计划排产。当然,没有完美、一劳永逸的生产计划和排产系统,在信息与物理不断融合的系统中,利用物联网技术、工业大数据、人工智能、云计算,APS的第四代算法MAS(Multiple Agent System)多智能体,从这个视角看工业4.0的核心网络信息物理系统CPS(Cyber Physical System)和基于它的理论的生产系统称为CPPS (Cyber Physical Production System)网络信息物理生产系统来看,它其实是一组架设在一个传感器网络上的、基于不同的本体论和语义服务的、基于一套分布式决策算法的多智能主体。这样,就可以场景化感知、边缘化计算、分布式决策、自主执行来适应现场动态复杂变化的生产环境。
随着分布式人工智能从理论进入到实践,网络信息物理系统CPS(Cyber Physical System)成为研究应用的热点。尤其是基于CPS的理论的生产系统称为CPPS (CyberPhysical Production System)网络信息物理生产系统,利用松耦合的系统,分布式与自组织来应对制造的复杂性。只有通过自组织的分布式计算与控制,大幅度对复杂制造过程进行优化。
APS系统以将基于MAS多层代理技术与模拟仿真结合起来,使得网络导向结构的APS解决供应链制造同步化问题,模拟仿真APS的优化顺序器解决工厂的顺序冲突问题。通过时间段与复杂程度的感知采用不同的算法并可以自动选择合适的算法。这样,APS的计划优化与顺序的安排就可以提供给制造商解决全球的优先权和工厂本地的优化顺序问题,来满足制造业对客户响应越来越强烈的需求。