ERP的真正技術瓶頸——詳細生產排程(轉)

urinator發表於2007-08-11
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個小時。或者手工計劃可以在8:00完成而計算機的計劃要在9:00點完成。原因在於:計算機對某幾個工序的順序安排雖然可行但是不合理,而老排程師根據長期經驗早已清楚此時安排工序應該哪個先、哪個後、哪些並行比較好,結果可以得到更短時間完成的計劃。這是一種優化安排,而計算機沒有找到這種安排方法,所以計算機給出的是一個‘可行’的,但是‘不好’的計劃!理想中計算機應自動找出一個比手工計劃更優的排產方案結果,指導人如何工作。這樣的軟體才能體現出‘企業資源計劃’的威力。否則,不能滿足優化排程的軟體在企業生產中還是無法代替手工。

  這個例子凸現出了一個世界性的關鍵技術瓶頸:一個生產過程可能有無窮多種‘可行’的安排方式,但是必須從其中找出一個‘最優’的計劃,即使不能達到最優,起碼要比人的手工計劃更優,這才是一套可用的生產排程軟體,否則企業還是用不起來。

  找出‘可行’計劃的難度已經很大,找出‘優化’計劃的難度更大。不僅要處理錯綜複雜的約束條件,還要從幾乎無窮多種滿足約束的可行方案中找到優化排程方案。怎樣才能找到這種優化的計劃?這是ERP系統共同面對的真正瓶頸問題,是世界性的技術難題。其中的關鍵在於演算法,演算法的基礎是數學模型,特別是高階圖論、離散數學、模糊數學與線性代數中的向量矩陣等前沿技術。對此,國外已經作出了很多年的努力,其研究成果形成了多個‘APS先進生產排程’產品,發展出了幾十種先進生產排程演算法,比較常用的如:啟發式圖搜尋法、禁忌搜尋法、神經網路優化、遺傳演算法等,這些演算法各有優劣,可用在不同場合。目前仍有很多種採用不同新演算法的APS系統正在蓬勃發展中。

  用一句話來形容APS的主要功能:可以自動給出‘滿足多種約束條件、手工排程難以找到的、優化的’排產方案。其實關鍵就是‘可行’和‘優化’這兩個概念。這個說起來很簡單的功能意義十分重大,它可以給傳統ERP帶來以下幾個關鍵的變化:

  1)對企業來說,在不增加生產資源的情況下,通過最大限度發揮當前資源能力的方式實現了提高企業生產能力的目標。

  2)APS排程的結果給出了精確的物料使用和產出的時間、品種、數量資訊,用這些資訊可以把很多相關企業或者分廠、車間聯合在一起組成一個‘SCM供應鏈’系統,最大限度減少每個企業的庫存量。

  3)APS可以用來做為生產決策的依據,它的排程計算結果不光可以作為生產計劃,還可以通過不斷whatif的‘試算’的方式為企業提供生產決策依據。

  4)根據自動生成的作業計劃還可以自動生成質檢、成本、庫存、採購、裝置維護、銷售、運輸等計劃。帶動企業各個不同管理模組圍繞生產運轉,改進這些模組的運轉方式,大大提高這些模組的運轉效率,提升企業整體管理水平。

  但是,APS系統的開發難度很大,需要融合最前沿數學理論和最先進管理理論,專業人才很少,投資見效很慢,在國外APS系統價格非常昂貴。即使是世界性大ERP公司也很少獨立投入力量研發,都是通過採購外外掛直接引入相應功能。國內對這方面的研究除了個別公司外,基本停留在大學院校的實驗室中。

  再進一步,如果已經解決了優化排程問題,那麼對APS來說又有什麼技術瓶頸呢?

  APS第一個最大的技術瓶頸就是它的運算時間問題。因為企業生產過程中經常會有一些突發事件,相當於臨時改變了排產的初始條件,需要APS進行動態處理。APS系統能按照舊的條件制定計劃也肯定能按照新的條件制定新計劃。但是,它的‘操作-計算’時間是不是能趕上變化的時間,這是一個關鍵。如果APS錄入新條件重排計劃的時間是10分鐘,它大概只能處理30分鐘以上的突發事件,而無法處理30分鐘以下的突發事件。動態處理突發事件對計算時間的嚴格要求必然引發APS演算法和人機操作介面的不斷優化,以及發展平行計算技術,這也是國外APS系統的主要技術發展方向。

  APS的第二個技術瓶頸就是如何不斷提升次優解的優化程度。如果不能得到最優解,那麼需要找到一個儘可能接近最優的次優解。不同APS軟體的演算法不同,次優解的優化程度也不同,直接體現了其核心技術水平的高低。所以拿不同APS軟體對相同問題進行處理,對比他們解答的優化程度和計算時間,很容易比出高下。易於進行同場競技——這是APS與核心功能比較模糊的ERP一個很大的不同。這對使用者是一個好訊息,但是它給APS開發商以極大的壓力。因此,不斷提高速度,不斷接近最優——這是所有APS系統始終不變的追求。

  ERP與APS的結合是ERP未來發展的必然方向。與當前BOM-MRP的簡單運算和進銷存財務功能相比,APS佔據了ERP的最核心位置,有極深的技術含量,更是未來SCM系統的基礎功能。擁有這種技術的ERP公司必然在市場競爭中佔有極大優勢。目前,國外很多企業早已經是磨刀霍霍,未來數年內,美國、德國、日本、臺灣軟體公司開發的結合了APS核心功能的ERP軟體就有可能以低廉價格進入國內市場,那時國內ERP軟體公司將難有還手之力。

  由於生產排程技術瓶頸的存在,中國ERP軟體行業已經遠遠落後,除了唯一一家專業開發APS系統的北京東方小吉星公司以外,絕大多數企業目前仍然停留在對BOM的低層次的完善和對進銷存財務模組低水平重複開發上。由於一直拿不出足夠的技術儲備向瓶頸發起衝擊,因此不重視基礎技術儲備的工作,甚至對目前狀況視而不見;由於不重視基礎技術的儲備,所以更加無法解決瓶頸問題。目前這個惡性迴圈還在繼續之中。從用友向臺灣漢康大價錢買技術的挫折,以及神州數碼引入鼎新生產模組的尷尬合作,國內ERP企業對此的無奈狀態可見一斑。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7942439/viewspace-21022/,如需轉載,請註明出處,否則將追究法律責任。

相關文章