ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ERP真正的技术瓶颈-详细生产排程

ERP真正的技术瓶颈-详细生产排程

原创 Linux操作系统 作者:icetea_cn 时间:2007-12-19 00:30:27 0 删除 编辑
 

ERP的真正技术瓶颈——详细生产排程

ERP应该以生产为核心,这点是业界公认的。但如何以生产为核心?却极少有详细的论述。根本原因在于‘详细生产排程’这个技术瓶颈。 

‘详细的生产排程’也就是生成‘生产作业计划’的过程,可谓关系重大。企业制定生产计划的过程一般分成两部分,首先是生成‘主生产计划’,其次是根据主生产计划生成‘生产作业计划’。要得到‘主生产计划’一般企业是从订单,部分企业是从市场预测,产生出一个包含生产品种、数量、时间的简单生产计划。基本是管理者在进行决策,人的因素起绝对作用。在这个过程中可能会有一些特定行业或者企业的特别计算方法,需经过一些四则运算式的统计分析,要求ERP软件做二次开发,但基本不存在技术难题。 

但是,光有主生产计划是远远不够的。一个简单的主生产计划中的生产要求,要把它自动分解为复杂、具体的生产作业过程,这就是详细生产排程,这才是ERP系统中最关键的一个环节,是ERP系统真正的核心功能。只有从复杂、具体、详细的作业计划中,才能体现出‘ERP企业资源计划’中的‘R——资源’的存在;也只有从这个详细作业计划的‘可行性’与‘优化性’上,才能体现出‘P——计划’的价值。有了‘资源’,有了‘计划’,才是真正的ERP系统。 

一般说,生产作业计划越详细,它给出的信息越丰富、越有价值,相应计算起来也就越困难。生产作业计划越粗略,越接近主生产计划,信息越少、价值就越低。企业总是希望自动得到尽可能详细的作业计划。但是ERP在这方面遇到了真正的技术瓶颈。就我们目前所见,几乎全部的ERP生产管理都是从四则运算的主生产计划入手,重点利用BOM解决MRP物料需求计划,之后再解决生产过程的记录和统计。恰恰在企业最需要的详细作业计划方面最薄弱、最无所作为。 

如想证明一下这个现状,去考察一下上了ERP的企业,会发现一个有趣的现象——企业里无论ERP搞得怎么如火如荼,似乎都与生产调度人员无关。车间里或者生产线上的生产作业计划、生产过程的调度和管理仍然是在用最初最原始的那种老方式——多数时候是经验,有时候是感觉在起作用,加上少量的以EXCELL为工具的报表运算,虽老虽笨但是有效。ERP功能再强管得再宽似乎也管不到这里。结果,表面风风火火的ERP与企业最关键的生产过程发生了断层,从这个断层衍生出来的一大堆问题成为众家ERP软件难解之死结。最突出的一个:企业生产调度是要对企业最底层的生产资源——人员、设备、场地等,按照它们的能力进行合理安排。但是上层的ERP无论干什么事情都不去考虑这些资源和它们的能力,或者假设生产能力无限,或者按照一个人为定义的瓶颈资源进行简单四则计算。这种关键矛盾由于ERP技术瓶颈的存在而无法解决,ERP的前景可谓是不容乐观。 

那么,这到底有什么难的?为什么众多的名牌ERP企业都无法提供这种基本功能?ERP技术瓶颈到底在什么地方?回答这个问题,就要从企业中直接干此工作的岗位——生产调度的职责说起。 

一个企业的生产调度人员,首先是要对该企业的生产工艺流程烂熟于心,也就是全面了解企业到底是怎么进行生产的,熟悉其中每个细节,这是当一个生产调度最基本的前提条件。同样的,ERP要想干同样的事情也必须达到同样的前提条件:全面了解企业究竟是怎样进行生产的,每个细节都不能差!这对一个人来说可能并不算难,但对于一个ERP系统来说就是一件非常困难的事情!有人称之为企业建模,这远不象建立BOM那么简单,其中涉及到的除了物料,还有工序、资源、时间、逻辑关系、规则、技术参数、成本等等错综复杂的生产信息,要把它们按照一定的规则组织在一起,形成一套全面反应企业生产过程的基础数据,为以后的计算生产排程做好准备。ERP系统给一个企业的生产流程建模已经很复杂,更何况不同行业不同企业的建模方式千差万别,一套通用的软件如何应对?这是详细生产排程遇到的第一个技术难点。 

且不说离散生产模式的电子、汽车行业与流程生产模式的化工、制药行业在基本生产方式上的巨大差别,就算同属电子、汽车行业,或者同属制药、化工行业中的不同企业,他们的生产方式在细节上仍然有很大的差别。一套ERP系统能以不变应万变统统接受这种差别吗?技术上很难!只好对每一个行业开发一个专用生产版本。但是行业版本到了企业里就能高枕无忧了吗?大的行业版本一般仍然无法满足行业内特定类别企业的细节差别,比如制药行业细分为‘制剂药’和‘原料药’,生产方式差别还是很大,需再开发更细分的小类别版本。可是属于同一小类别的不同企业还有自己的生产特性,针对不同企业的二次开发就类似于把企业的生产特征逐一写到程序中。且不说对生产系统的任何改动都要投入巨大人力,软件企业很难接受频繁和复杂的二次开发要求,更不用说企业生产过程一旦发生变化软件还是很难应对!很多企业的生产流程每隔几天就会变,而软件商不可能每天都重写代码。应变方式只能是降低企业的要求——生产流程建模与实际近似、大概差不多就行了。关键是用户会不会满意?忙了半天还是存在差距用不起来,损失就太大了。所以,除了部分大专院校的理论研究者,目前国内ERP厂商还没有尝试迈过详细生产流程建模的这第一道门坎。 

建立生产模型,让软件接受企业的详细生产过程,这的确很麻烦,但并非是无法完成的,真正的难点在于下一步:根据模型和生产请求得到详细的作业计划,也就是详细生产排程。ERP的真正技术瓶颈就发生在这里。 

详细生产排程的结果是‘生产作业计划’,是针对每个人员每个设备的生产资源的工作计划。作业计划必须满足在生产工艺上不能有半点差错。首先,工序之间必须满足特定的逻辑关系,以及要求某些工序必须连续、同时、或者间隔进行等等,这是对作业计划最基本的要求。其次,作业计划必须满足资源能力限制,一个资源在一个时间内只能干一件事情,生产作业计划中不能有资源冲突;最后,作业计划必须满足物料供应的限制,没有原材料不能开始生产。也就是说:作业计划必须同时满足多种复杂的约束条件。TOC约束理论早已有之,只是需要比较高级的算法和数学理论,在这方面需要进行长期投入才会有所收获。因此国内理论界对此的研究还很少。 

有了按照TOC理论计算出来的计划,满足企业生产工艺要求是不是就行了?很遗憾,这还是差的很远。现在我们以一个假想例子来说明。 

一个ERP生产调度系统,很顺利接受了某企业的全部生产细节,并计算出了一套生产作业计划,打印成一份给所有生产资源安排工作的作业计划。现在,由一个有经验的老调度师来决断这个ERP计划系统是不是可以用的,他将如何做? 

首先,他会逐一检查每个工序的时间安排,看它们之间的次序和逻辑关系是不是符合企业生产工艺的逻辑关系要求;其次,他会观察这个计划中对每个资源的安排是不是合理,有没有一个时间干两个活这种冲突的情况发生;最后他要看在计划时间内物料能不能供应的上。这些都没有问题了,他必须承认:这个计划已经是一个‘可行’的计划了,也就是说,照此计划一定可以完成生产任务。 

但是,还有一个关键的事情,老调度师根据自己习惯的做法,也手工制定了一个作业计划,他把这两个计划一对比,发现问题了。手工的计划可以8个小时完成全部工作,而计算机的计划需要9个小时。或者手工计划可以在800完成而计算机的计划要在900点完成。原因在于:计算机对某几个工序的顺序安排虽然可行但是不合理,而老调度师根据长期经验早已清楚此时安排工序应该哪个先、哪个后、哪些并行比较好,结果可以得到更短时间完成的计划。这是一种优化安排,而计算机没有找到这种安排方法,所以计算机给出的是一个‘可行’的,但是‘不好’的计划!理想中计算机应自动找出一个比手工计划更优的排产方案结果,指导人如何工作。这样的软件才能体现出‘企业资源计划’的威力。否则,不能满足优化排程的软件在企业生产中还是无法代替手工。 

这个例子凸现出了一个世界性的关键技术瓶颈:一个生产过程可能有无穷多种‘可行’的安排方式,但是必须从其中找出一个‘最优’的计划,即使不能达到最优,起码要比人的手工计划更优,这才是一套可用的生产排程软件,否则企业还是用不起来。 

找出‘可行’计划的难度已经很大,找出‘优化’计划的难度更大。不仅要处理错综复杂的约束条件,还要从几乎无穷多种满足约束的可行方案中找到优化排程方案。怎样才能找到这种优化的计划?这是ERP系统共同面对的真正瓶颈问题,是世界性的技术难题。其中的关键在于算法,算法的基础是数学模型,特别是高级图论、离散数学、模糊数学与线性代数中的矢量矩阵等前沿技术。对此,国外已经作出了很多年的努力,其研究成果形成了多个‘APS先进生产排程’产品,发展出了几十种先进生产排程算法,比较常用的如:启发式图搜索法、禁忌搜索法、神经网络优化、遗传算法等,这些算法各有优劣,可用在不同场合。目前仍有很多种采用不同新算法的APS系统正在蓬勃发展中。 

用一句话来形容APS的主要功能:可以自动给出‘满足多种约束条件、手工排程难以找到的、优化的’排产方案。其实关键就是‘可行’和‘优化’这两个概念。这个说起来很简单的功能意义十分重大,它可以给传统ERP带来以下几个关键的变化:

1)               对企业来说,在不增加生产资源的情况下,通过最大限度发挥当前资源能力的方式实现了提高企业生产能力的目标。

2)               APS排程的结果给出了精确的物料使用和产出的时间、品种、数量信息,用这些信息可以把很多相关企业或者分厂、车间联合在一起组成一个‘SCM供应链’系统,最大限度减少每个企业的库存量。

3)               APS可以用来做为生产决策的依据,它的排程计算结果不光可以作为生产计划,还可以通过不断what if的‘试算’的方式为企业提供生产决策依据。

4)               根据自动生成的作业计划还可以自动生成质检、成本、库存、采购、设备维护、销售、运输等计划。带动企业各个不同管理模块围绕生产运转,改进这些模块的运转方式,大大提高这些模块的运转效率,提升企业整体管理水平。

 

但是,APS系统的开发难度很大,需要融合最前沿数学理论和最先进管理理论,专业人才很少,投资见效很慢,在国外APS系统价格非常昂贵。即使是世界性大ERP公司也很少独立投入力量研发,都是通过采购外插件直接引入相应功能。国内对这方面的研究除了个别公司外,基本停留在大学院校的实验室中。 

再进一步,如果已经解决了优化排程问题,那么对APS来说又有什么技术瓶颈呢? 

APS第一个最大的技术瓶颈就是它的运算时间问题。因为企业生产过程中经常会有一些突发事件,相当于临时改变了排产的初始条件,需要APS进行动态处理。APS系统能按照旧的条件制定计划也肯定能按照新的条件制定新计划。但是,它的‘操作-计算’时间是不是能赶上变化的时间,这是一个关键。如果APS录入新条件重排计划的时间是10分钟,它大概只能处理30分钟以上的突发事件,而无法处理30分钟以下的突发事件。动态处理突发事件对计算时间的严格要求必然引发APS算法和人机操作界面的不断优化,以及发展并行计算技术,这也是国外APS系统的主要技术发展方向。 

APS的第二个技术瓶颈就是如何不断提升次优解的优化程度。如果不能得到最优解,那么需要找到一个尽可能接近最优的次优解。不同APS软件的算法不同,次优解的优化程度也不同,直接体现了其核心技术水平的高低。所以拿不同APS软件对相同问题进行处理,对比他们解答的优化程度和计算时间,很容易比出高下。易于进行同场竞技——这是APS与核心功能比较模糊的ERP一个很大的不同。这对用户是一个好消息,但是它给APS开发商以极大的压力。因此,不断提高速度,不断接近最优——这是所有APS系统始终不变的追求。 

ERPAPS的结合是ERP未来发展的必然方向。与当前BOMMRP的简单运算和进销存财务功能相比,APS占据了ERP的最核心位置,有极深的技术含量,更是未来SCM系统的基础功能。拥有这种技术的ERP公司必然在市场竞争中占有极大优势。目前,国外很多企业早已经是磨刀霍霍,未来数年内,美国、德国、日本、台湾软件公司开发的结合了APS核心功能的ERP软件就有可能以低廉价格进入国内市场,那时国内ERP软件公司将难有还手之力。 

由于生产排程技术瓶颈的存在,中国ERP软件行业已经远远落后,除了唯一一家专业开发APS系统的北京东方小吉星公司以外,绝大多数企业目前仍然停留在对BOM的低层次的完善和对进销存财务模块低水平重复开发上。由于一直拿不出足够的技术储备向瓶颈发起冲击,因此不重视基础技术储备的工作,甚至对目前状况视而不见;由于不重视基础技术的储备,所以更加无法解决瓶颈问题。目前这个恶性循环还在继续之中。从用友向台湾汉康大价钱买技术的挫折,以及神州数码引入鼎新生产模块的尴尬合作,国内ERP企业对此的无奈状态可见一斑。

 

 

附:回答部分企业和网友的提问——关于APS的实用性,以及它与手工生产排程的关系问题

关于APS对中国企业的实用性

很多网友提出,在国内多数企业基本信息化还没有实现,ERP在中小企业还远没有完全普及的情况下,推广APS(先进生产排程)是不可能完成、也是没有必要的。但是同时也有很多网友认为:APS就是当前国内企业所急需的,必须尽快普及。 

有一个形象的案例很适用于当前这种形势。某个制鞋公司,派人到一个岛屿上调查鞋的销路如何。此人一来就发现岛上的人全都光脚不穿鞋,于是发回了一个很沮丧的调查报告,认为此岛上的人根本没有穿鞋的习惯,公司产品在这里不会有任何销路。公司对此表示怀疑,于是派遣了另外一个人来调查。此人一看岛上的居民都光着脚,大为兴奋,很快写了一份调查报告,认为此处的鞋市场尚未开发,而且无任何竞争,要求公司立即大批发货。 

国内APS也处在类似的状况,大家都光着脚。于是有人认为没有需求所以根本不存在这个市场,有人则认为需求急切市场巨大。两种观点都偏颇于一面,都是在一定的条件下才有道理。对卖鞋来说,需要了解岛上人光脚的真正原因,如果是由于从来没有人来推广过穿鞋,或者仅仅是传统风俗习惯使然,那么未来的市场就会比较广阔;如果是由于当地气候因素,或者特定生活工作环境的需要而不穿鞋,那么市场就会比较小。所以在表面光脚的背后存在更关键的决定因素。

 对中国的企业来说,不上APS也有更深刻的原因,目前国内市场上只有少数国外大型ERP软件才有APS功能,而且价格昂贵,这是一个很重要的限制条件。此外,APS有它的适用范围,最适用于多品种小批量生产过程复杂的企业,对于单一品种、大批量、生产过程简单的企业来说,APS的效果与它的价格就不成比例。还有就是对APS概念的普及程度不够,绝大多数ERP用户还搞不清APSERP生产管理之间的真正区别是什么,以及为什么要上APS。认识不足是中国企业上APS的一个重要限制因素。 

这对认识国内APS的现状很有帮助,目前国内所有企业中估计有10%以下属于多品种、小批量、工艺复杂、按订单生产类型,这是APS的基本潜在市场。而其中只有10%以下的企业对APS有清醒的认识,也就是说国内只有不到1%的企业组成比较成熟的APS市场。对他们来说上APS的最大限制是功能、价格还有实施问题。国内软件公司必须解决APS核心技术问题,开发出功能强大、价格低廉、实施方便的产品,这1%的‘小’市场还是大有可为的。而且,市场发展规律决定了这个比例会逐步扩大而不是缩小,所以APS并非没有市场,而是有很大市场空间和发展前途。但种种限制因素也决定了它并不是可以简单开发出财富的金矿,需要经过比较艰苦的积累和努力。 

很多网友表现出对APS的部分技术细节特别重视,认为,APS所建立的是一个脆弱的计划体系,生产线上一个很小的突发事件足以摧毁整个APS计划系统,使它从基础理论上就不能成立。 

对突发事件的应变处理可以称为‘动态处理’,其实质是计划的条件发生了改变。APS既然可以处理多种复杂的生产条件生成一个优化的计划,也同样可以对变化以后的条件进行处理生成同样优化的计划,新计划本身就是对条件变化的一个回应。只是,它的计算时间可能会赶不上变化的突发和频繁,无法实现‘动态’的要求。所以计算速度成为APS处理突发事件中的关键,只要时间允许就不存在突发事件导致任何问题的可能。 

手工条件下很容易处理突发事件,是由于处理的标准很低,在‘优化’上根本没有特别的要求,所以几乎不需要计算时间。而APS由于对‘优化’的标准很高,需找到比手工更好的处理方法,更加接近最优方案,所以计算时间才会长。它们对问题的解决完全处在不同的层面上。换一种说法,假设放弃APS的优化追求,用最原始的手工方式处理突发事件,结果就会是优化程度减弱,但是仍然是一种次优方案。这种次优方案对比‘手工计划-手工处理突发事件’方式,仍然保持巨大的优势。这是由于APS初始计划本身已经打下了很好的基础,这从饭局模型上可以给出详细说明。 

在饭局模型中,一般手工制定计划,完成饭局的时间一般在120分钟以上,而APS给出的优化方案只要42分钟就能完成。假设现在有了一个突发事件:增加一道30分钟丸子汤的菜。在小吉星PRM的案例中,由APS来完成,整个时间只增加了11分钟,整体时间变为53分钟,如果在APS计划基础上用手工方法处理这个突发事件,时间变为423072分钟,当然不如APS的计算结果53分钟,但是仍然远远优于‘手工计划-手工处理突发事件’的:12030150。所以APS系统即时间不足而使用手工方式处理突发事件,得到的仍然不失为可行的次优方案。 

只要不断缩短计算时间,APS就可以逐步解决突发事件的难题。在计算时间赶不上变化时间的情况下,APS还可以放弃追求最优来换取时间,快速计算出次优解,部分解决计算时间与优化之间的矛盾。最后,即使APS在突发事件处理上完全无所作为,仅凭初始计划的优化,仍然可以对手工计划体现出它的巨大优势。 

更主要的是,APS的一个关键用处体现在决策支持上。也就是用户可以不断改变排产条件,计算出多种‘what if’(如果-如何)的结论。它给企业提供丰富的决策支持信息,可以利用事先的充足时间对多种可能的突发事件做好了充分准备,这对很多企业来说是比排产更急切的一种需求。它也可以部分弥补APS计算时间过长、动态处理能力不足的缺陷。

 

有了APS以后的企业生产排程方式

APS与没有集成APSERP系统在生产排程方式之间的区别,可以用下棋的比喻来解释。

没有使用APS之前的ERP生产管理,类似于人在下棋,用ERP来记录棋谱。记录下棋局的过程当然很重要,各种统计和分析也是必须的,它的意义之大怎么说都不过分。但是,对于一个对局者来说最急需的恐怕并不是记录棋谱或者对它分析,而是希望直接了当得知下一步该怎么走,‘赢棋’总是比什么都重要的事情。这个ERP无能为力,而APS的作用就是给你下一步的走法,这个走法比人走的更好,可以帮助你赢棋,因此它是一种‘智能’的软件。那么,它与原来人脑的工作是一种什么关系呢?是不是要取代人脑?人的决策还有存在的意义吗?这个问题可以用下面这个同样是下棋的案例来解释。

大家可能还记得IBM的‘深蓝’系统与国际象棋特级大师卡斯帕罗夫的人机大战,这是1997年的一件大事。实际上这是蓝色巨人IBM挺进大型机市场的一个关键契机。为了达到其商业目的,IBM可以说顷尽全公司之力投入了一场与卡斯帕罗夫的战争之中。其中包括聘请多名国际象棋大师在幕后助阵,这就让比赛的公平性受到怀疑。实战中,在关键性的第二局,卡斯帕罗夫精心设下了一个圈套,给了对手留了一个看上去看占优势但是以后会不利的走法:Qf2-b6, 它可强行得子并同时保持了全部局面优势。但是计算机没有上当,而是走了一步暂时吃亏但是长远有利的著名走法:Bc2-e4。可谓是深谋远虑,最后因这步好棋而赢得了比赛,而这很不像计算机的特点,卡斯帕罗夫说:只有‘阿南德、克拉姆尼克、伊万丘克及其他但不多的几个’可能会想到这种走法。以后的数局比赛,当时媒体评价是:电脑的走法就像卡斯帕罗夫的风格,而卡斯帕罗夫的走法反而很像电脑。最终结果众所周知是人脑输给了电脑。这引起卡斯帕罗夫对比赛公平性的强烈抗议,要求IBM公司提供程序和比赛过程的记录,但IBM坚决拒绝,并很快拆除了深蓝系统,删除了全部比赛资料,再没有给卡斯帕罗夫再次比赛的机会。以后卡斯帕罗夫多次指责这次比赛的不公。因为一个关键要点:一台超级计算机加上一个象棋大师,远远强于一个单独的人或者计算机系统。而IBM无法证明深蓝的每一步棋没有人的参与!

企业生产排程的要点也在于此。任何单独APS系统的生产排程、或者人的生产调度,都比不上一个有经验的调度师加上一个强大的APS排程系统。企业生产不是象棋比赛,没有任何规则的限制。所以在生产排程中,APS不是要代替人,而是帮助人进行决策;不是做人的主人,而是做人的奴隶或者工具。它只做最繁琐最劳累的那部分工作,按照人给出的条件和要求算出一个复杂的排程结果。但是在更高层次上,人可以发挥机器不具备的综合判断的功能,人机结合才可以得出最好的企业生产排程。

现在回过头来想想深蓝的‘作弊’过程,其实非常简单。一个特级大师根据当前局面给出两种最有可能的走法,只要计算机算出这两种不同的走法在20步以后最合理的局面,再由大师来判断哪个局面占优就可以了。人负责把握大局,机器负责复杂的计算,在这种强大组合之下卡斯帕罗夫肯定不是对手。企业利用APS进行生产排程的过程与‘深蓝’的‘作弊’过程很相似:人提出各种要求和条件,计算机一一给出方案,每个方案都满足工艺要求、满足多种约束条件并经过优化,再由人根据多种因素来判断各方案的优劣并不断进行调整,最后给出综合的决策。这是一个人机交互的过程,最终结果是得到单独的人和机器都无法得到的、最能满足企业生产需求的排程方案。

这与很多人想象中的生产排程电脑完全代替人脑,或者人脑负责一切电脑无所用处都有很大的区别。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/79716/viewspace-844/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 猎头招聘
请登录后发表评论 登录
全部评论

注册时间:2007-12-12

  • 博文量
    86
  • 访问量
    80718