姚莉娟 張 爽 馮 明
(1.成都紡織高等??茖W(xué)校,四川成都 611731;2.成都瑞泰鴻信科技有限公司,四川成都 610041)
物料管理[1]是提高工程施工項(xiàng)目生產(chǎn)率的重要方式。物料管理為計(jì)劃和控制所有施工工程的必要管理內(nèi)容,通過精心設(shè)計(jì),確保在合適的時(shí)間,由專業(yè)人員使用合適質(zhì)量和數(shù)量的物料和設(shè)備進(jìn)行工程施工。物料管理可以分為物料需求、供應(yīng)商評(píng)估、采購(gòu)、現(xiàn)場(chǎng)庫(kù)管、施工等功能。工程物料管理會(huì)影響整體的工程施工時(shí)間、質(zhì)量和預(yù)算。隨著經(jīng)濟(jì)的發(fā)展,工程施工領(lǐng)域已經(jīng)逐步實(shí)現(xiàn)信息化[2-3]。施工管理領(lǐng)域的施工物料品類日益繁多、施工流程日益專業(yè)化,現(xiàn)在的信息化難以滿足施工要求日益精細(xì)化的管理要求[4]。
本文以現(xiàn)場(chǎng)物料庫(kù)管[5]為中心節(jié)點(diǎn),考慮工程施工流程特點(diǎn),基于規(guī)則引擎技術(shù)[6-8],提出并設(shè)計(jì)一個(gè)施工物料信息驅(qū)動(dòng)引擎。研究以物料為中心編寫引擎規(guī)則并自動(dòng)實(shí)施,施工管理方、業(yè)主方、施工方和物料提供方能夠?qū)κ┕みM(jìn)度進(jìn)行精細(xì)化管理,有效降低損耗,極大提高工程施工效率,以此為基礎(chǔ)實(shí)現(xiàn)施工物料信息驅(qū)動(dòng)。
在復(fù)雜的大中型工程施工中,多種工程如土建、安裝、裝飾等版塊交錯(cuò)進(jìn)行,工程施工涉及物料生產(chǎn)周期、物料規(guī)格、施工工序和生產(chǎn)場(chǎng)地等復(fù)雜因素。
以物料為中心進(jìn)行分析,工程建設(shè)的生產(chǎn)周期包括向供應(yīng)商提出物料需求計(jì)劃(包括招標(biāo));物資生產(chǎn)準(zhǔn)備(供應(yīng)商);物料物流(物流企業(yè));物資收驗(yàn)貨;現(xiàn)場(chǎng)庫(kù)存(現(xiàn)場(chǎng)庫(kù)管方);組織施工(施工方);補(bǔ)料;退還換貨(物流企業(yè))。每一項(xiàng)物料均需要經(jīng)歷該周期,與施工工序、物料的配合具有復(fù)雜的關(guān)聯(lián)。通常情況下,多個(gè)工程同時(shí)在建,項(xiàng)目管理人員難以從紛繁的事務(wù)性事件中抽身實(shí)現(xiàn)對(duì)項(xiàng)目的精細(xì)化管理。
施工物料管理面臨3個(gè)通用需求,物料的自動(dòng)化程度需要提高,使管理人員可以準(zhǔn)確把控工程所處階段的物料需求與損耗;物料的訂貨、物流、進(jìn)場(chǎng)等工序需要與施工流程緊密配合,節(jié)省倉(cāng)儲(chǔ)倉(cāng)庫(kù)容量;相關(guān)聯(lián)的物料間生命周期應(yīng)該緊密配合,以最優(yōu)化施工工程進(jìn)度。隨著信息技術(shù)和物聯(lián)網(wǎng)技術(shù)的發(fā)展,以物料為中心的智能物料庫(kù)管平臺(tái)的建設(shè)成為可能。
施工物料紛繁復(fù)雜,相應(yīng)的關(guān)聯(lián)規(guī)則日趨復(fù)雜多變。為了靈活支撐復(fù)雜的目標(biāo)環(huán)境,需要設(shè)計(jì)施工物料信息驅(qū)動(dòng)引擎體系。
施工物料信息驅(qū)動(dòng)引擎體系結(jié)構(gòu)如圖1所示。
圖1 施工物料信息驅(qū)動(dòng)引擎體系結(jié)構(gòu)
由圖1可知,物料信息作為驅(qū)動(dòng)數(shù)據(jù)被送入處理核心——規(guī)則引擎。規(guī)則引擎包括3個(gè)核心組件,分別是規(guī)則庫(kù)(存儲(chǔ)所有通過驗(yàn)證的規(guī)則集)、工作存儲(chǔ)區(qū)(存放給定輸入的事實(shí)對(duì)象和中間結(jié)果)和推理引擎。推理引擎是規(guī)則引擎的執(zhí)行核心,在數(shù)據(jù)驅(qū)動(dòng)模式下,事實(shí)對(duì)象狀態(tài)的變化會(huì)導(dǎo)致推理引擎執(zhí)行規(guī)則的模式匹配,根據(jù)優(yōu)先級(jí)策略執(zhí)行相應(yīng)動(dòng)作,將信息輸出。
工作流建模是對(duì)工作流過程的抽象建模,是利用建模工具或建模語(yǔ)言描述企業(yè)的業(yè)務(wù)流程,有利于實(shí)現(xiàn)工作的自動(dòng)化與信息化。實(shí)際應(yīng)用和開發(fā)系統(tǒng)時(shí),常使用工作流語(yǔ)言進(jìn)行業(yè)務(wù)流程的定義和設(shè)計(jì),工作流模型能夠被工作流引擎驅(qū)動(dòng)和執(zhí)行,工作流語(yǔ)言能夠被工作流引擎直接執(zhí)行,稱為流程定義語(yǔ)言。本系統(tǒng)使用工作流引擎,在工作流系統(tǒng)開發(fā)上更關(guān)注使用工作流語(yǔ)言進(jìn)行工作流模型的構(gòu)建,可以簡(jiǎn)化業(yè)務(wù)流程的設(shè)計(jì)和開發(fā),提高工作效率。
規(guī)則引擎的工作原理是檢查應(yīng)用程序提交的數(shù)據(jù)對(duì)象,根據(jù)數(shù)據(jù)對(duì)象此時(shí)的屬性值以及關(guān)系,與原先加載在規(guī)則集中的規(guī)則進(jìn)行條件匹配;為符合條件的規(guī)則創(chuàng)建相應(yīng)的執(zhí)行實(shí)例,按照規(guī)則執(zhí)行指令依次執(zhí)行規(guī)則,產(chǎn)生的處理操作規(guī)則引擎是基于規(guī)則的專家系統(tǒng),可以實(shí)現(xiàn)規(guī)則與系統(tǒng)相分離。典型的規(guī)則引擎包括規(guī)則編譯和運(yùn)行時(shí)階段,通常定義一種簡(jiǎn)單靈活的實(shí)現(xiàn)特定業(yè)務(wù)規(guī)則語(yǔ)言,使用語(yǔ)言描述業(yè)務(wù)規(guī)則。業(yè)務(wù)形成的語(yǔ)義規(guī)則非常復(fù)雜,為了系統(tǒng)高效執(zhí)行必須將語(yǔ)義規(guī)則編譯成推理引擎能夠理解的形式,以上過程被稱為規(guī)則編譯階段。
國(guó)內(nèi)外對(duì)規(guī)則引擎進(jìn)行了大量研究,有多種成熟開源項(xiàng)目進(jìn)行應(yīng)用。其中開源業(yè)務(wù)規(guī)則引擎Drools基于JAVA技術(shù)構(gòu)建,采用高效模式匹配算法(Rete算法)支,支持語(yǔ)義文件和xml進(jìn)行規(guī)則的描述,速度快、效率高,應(yīng)用廣泛,非常適合大量事實(shí)輸入,但每次只涉及少數(shù)事實(shí)發(fā)送變化的情況。
規(guī)則引擎Drools提出3個(gè)重要的概念:事實(shí)、規(guī)則和模式。事實(shí)即對(duì)象之間及對(duì)象屬性之間的關(guān)系,規(guī)則是由條件和結(jié)論構(gòu)成的推理語(yǔ)句,模式指IF語(yǔ)句的條件,可以嵌套。
整個(gè)規(guī)則引擎的執(zhí)行過程主要設(shè)計(jì)為4個(gè)階段:
(1)創(chuàng)建規(guī)則庫(kù)。
通過知識(shí)工廠對(duì)象收集編寫好的規(guī)則文件,將編譯好的規(guī)則打包發(fā)布,為應(yīng)用程序的調(diào)用提供規(guī)則包。
(2)創(chuàng)建工作空間并且插入事實(shí)對(duì)象。
創(chuàng)建工作內(nèi)存空間,創(chuàng)建狀態(tài)知識(shí)會(huì)話對(duì)象,在會(huì)話中運(yùn)算需要的業(yè)務(wù)數(shù)據(jù),建立數(shù)據(jù)集,將數(shù)據(jù)集合通過會(huì)話對(duì)象插入到工作空間中。
(3)執(zhí)行規(guī)則流、觸發(fā)規(guī)則。
工作空間創(chuàng)建完成后,通過對(duì)比規(guī)則庫(kù)中的規(guī)則與空間集中的數(shù)據(jù),將匹配后的規(guī)則結(jié)果通過沖突解決策略依次執(zhí)行,觸發(fā)規(guī)則運(yùn)算。
(4)處理結(jié)果與釋放資源。
在規(guī)則引擎執(zhí)行完規(guī)則包邏輯后,會(huì)根據(jù)系統(tǒng)需求進(jìn)行下一步操作,最后釋放狀態(tài)會(huì)話對(duì)象資源。
規(guī)則語(yǔ)言是面向業(yè)務(wù)人員或開發(fā)人員的規(guī)則描述語(yǔ)言,規(guī)定了規(guī)則的形式化定義及詞法、語(yǔ)法定義。一個(gè)基本的規(guī)則結(jié)構(gòu)簡(jiǎn)單,包括規(guī)則名稱、WHEN 件部分和THEN執(zhí)行部分。
以某水電安裝工程水輪機(jī)安裝為例,一臺(tái)水輪機(jī)配件、備品備件和工具包括(尾水管地基圖、肘管裝配、錐管裝配等)達(dá)34個(gè)裝箱。每個(gè)裝箱包含上百種物料,受到裝箱限制可能還會(huì)分箱,多個(gè)裝箱才能夠完成一個(gè)裝配工序,使庫(kù)存、施工的情況變得非常復(fù)雜,不借助規(guī)則引擎很難描述清楚。
業(yè)務(wù)規(guī)則結(jié)構(gòu)偽代碼如圖2所示。
圖2 業(yè)務(wù)規(guī)則結(jié)構(gòu)偽代碼
規(guī)則的條件可以將多個(gè)條件安裝與或非等關(guān)系進(jìn)行組合,具有很大的靈活性。屬性部分為規(guī)則屬性的定義,包括規(guī)則優(yōu)先級(jí)、有效期和分組等。
轉(zhuǎn)動(dòng)裝配的業(yè)務(wù)規(guī)則如圖3所示。
圖3 轉(zhuǎn)動(dòng)裝配的業(yè)務(wù)規(guī)則
本文與設(shè)計(jì)施工公司進(jìn)行大量交互,考慮智能施工系統(tǒng)的需求,設(shè)計(jì)基于施工物料信息的驅(qū)動(dòng)規(guī)則集。施工過程中,受到影響的物料因素主要包括任務(wù)安排、物料類型、物料數(shù)量、施工工具、施工流程等。分析規(guī)則后,進(jìn)行施工任務(wù)規(guī)則的定義。
工程安裝任務(wù)的規(guī)則定義如表1所示。
表1 工程安裝任務(wù)的規(guī)則定義
施工物料信息驅(qū)動(dòng)的智能庫(kù)存管理系統(tǒng)結(jié)構(gòu)如圖4所示。
圖4 施工物料信息驅(qū)動(dòng)的智能庫(kù)存管理系統(tǒng)結(jié)構(gòu)
智能庫(kù)管系統(tǒng)中增加規(guī)則管理模塊,負(fù)責(zé)與基礎(chǔ)資料模塊合作,為施工物料信息驅(qū)動(dòng)引擎提供初始化設(shè)置和規(guī)則配置。各種物料的入庫(kù)、出庫(kù)和基礎(chǔ)資料的更新將轉(zhuǎn)換為規(guī)則引擎的事實(shí)對(duì)象,輸入施工物料信息驅(qū)動(dòng)引擎。引擎的執(zhí)行輸出接入智能庫(kù)管的消息系統(tǒng),包括報(bào)表、訂單、施工安排、物料預(yù)警等工作流模塊。
針對(duì)施工工程領(lǐng)域,根據(jù)物料管理日益精細(xì)化的需求,基于規(guī)則引擎技術(shù),考慮工程施工流程特點(diǎn),本文提出并設(shè)計(jì)施工物料信息驅(qū)動(dòng)引擎。引擎可以實(shí)現(xiàn)業(yè)務(wù)規(guī)則與基本技術(shù)分離,適用多種施工過程管理。具有規(guī)則書寫簡(jiǎn)單、速度快效率高等特點(diǎn)。通過以物料為中心的規(guī)則并自動(dòng)實(shí)施,使庫(kù)管系統(tǒng)能夠?qū)κ┕⑴c方進(jìn)度進(jìn)行精細(xì)化管理,有效降低時(shí)空物的損耗。未來將繼續(xù)探索施工管理需求,優(yōu)化規(guī)則設(shè)計(jì),完善該引擎設(shè)計(jì)。