版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、使用使用javajava規(guī)則引擎規(guī)則引擎DroolsDrools自動排班自動排班前言前言本文以一個經(jīng)簡化的運(yùn)輸車隊(duì)自動排班需求為例,詳細(xì)講解了如何使用java規(guī)則引擎Drools進(jìn)行商業(yè)規(guī)則的形式語言描述,并編寫java代碼實(shí)現(xiàn)問題求解。背景介紹背景介紹(引自Drools中文文檔)A.I.(ArtificialIntelligence)是一個關(guān)注于“使計(jì)算機(jī)像人類一樣思考”的廣泛的研究領(lǐng)域,包括Neuralwks(神經(jīng)網(wǎng)絡(luò))GeicAl
2、githms(遺傳算法)DecisionTrees(決策樹)FrameSystems(框架系統(tǒng))ExpertSystems(專家系統(tǒng))。Knowledgerepresentation(知識呈現(xiàn))是A.I.的一部分,關(guān)注于如何呈現(xiàn)和操縱知識。專家系統(tǒng)使用知識表示把知識編碼簡化成一個可用于推理的知識庫──比如,我們可以用知識庫處理數(shù)據(jù)以推出結(jié)論。專家系統(tǒng)又叫基于知識的系統(tǒng)、基于知識的專家系統(tǒng),并被認(rèn)為是A.I.的一個應(yīng)用。開發(fā)一個專家?guī)煜到y(tǒng)
3、的過程被稱為知識工程。EMYCIN是最早的專家系統(tǒng)Shell(外殼)之一,它從醫(yī)學(xué)診斷專家系統(tǒng)MYCIN發(fā)展而來。早期的專家系統(tǒng)有自己的logichardcoded“shells“(邏輯硬件編碼環(huán)境),把邏輯與系統(tǒng)相分離,為用戶輸入提供一個簡單的使用環(huán)境。Drools是一個使用基于規(guī)則的方法實(shí)現(xiàn)的專家系統(tǒng)的規(guī)則引擎,更準(zhǔn)確的說屬于產(chǎn)生式規(guī)則系統(tǒng)。術(shù)語“產(chǎn)生式規(guī)則”從形式語法中產(chǎn)生,形式語法——使用一種抽象結(jié)構(gòu)來準(zhǔn)確描述形式語言。知識知識
4、(facts,事實(shí),環(huán)境):1,員工分為兩種:司機(jī),外勤2,每天分白、中、晚三個班次3,每班3人,一個司機(jī),兩個外勤規(guī)則規(guī)則(rules):1,司機(jī)可以當(dāng)外勤,外勤不可以當(dāng)司機(jī)2,每個員工每個月至少休息6天3,每個員工連續(xù)上班不能超過5天4,工作分配應(yīng)盡可能均勻目標(biāo)目標(biāo)(goal):1,按日期和班次打印排班表2,按員工打印各人的班次任務(wù)notWker(shiftTotaltotal)notShift(assistant2==nullwk
5、Date.day$date.day)notShift(assistant2==nullwkDate.day==$date.dayno$no)thenshift.setAssistant2(wker)wker.addShift(shift)update(shift)update(wker)endrule“移除班次“whenshift:Shift()eval(shift.isDone())thenretract(shift)end規(guī)則說明規(guī)
6、則說明:1,“司機(jī)”:表示為司機(jī)分配班次2,“外勤1”:表示為外勤1分配班次3,“外勤2”:表示為外勤2分配班次4,“移除班次”:從“工作區(qū)”中移除已分配司機(jī)和外勤的班次,以加快后續(xù)運(yùn)算速度javajava代碼實(shí)現(xiàn):代碼實(shí)現(xiàn):WkDate.javapackageTESTimptjava.util.HashMapimptjava.util.CollectionpublicclassWkDateprivateInteger_daypriva
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- drools規(guī)則引擎介紹
- 基于Rete算法的規(guī)則引擎Drools的研究.pdf
- 基于java的規(guī)則引擎
- drools規(guī)則引擎模式匹配效率優(yōu)化研究及實(shí)現(xiàn).pdf
- 基于Drools動態(tài)規(guī)則引擎的證券資產(chǎn)服務(wù)系統(tǒng)設(shè)計(jì).pdf
- 基于Drools的分布式業(yè)務(wù)規(guī)則引擎的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 輕量級規(guī)則引擎Drools在物聯(lián)網(wǎng)平臺中的應(yīng)用研究.pdf
- 規(guī)則引擎
- 基于Java規(guī)則引擎的動態(tài)數(shù)據(jù)清洗研究與設(shè)計(jì).pdf
- Java規(guī)則引擎在機(jī)場業(yè)務(wù)及資源管理中的應(yīng)用.pdf
- 基于規(guī)則引擎的機(jī)車周轉(zhuǎn)圖的自動調(diào)整.pdf
- 客運(yùn)站進(jìn)站車輛排班規(guī)則
- 基于Java EE的飛機(jī)排班系統(tǒng)研究.pdf
- 基于Java規(guī)則引擎技術(shù)的擴(kuò)展開發(fā)工具的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 規(guī)則引擎中模式匹配算法及規(guī)則引擎應(yīng)用的研究.pdf
- 基于規(guī)則引擎的自動核保系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 自動排班系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于規(guī)則引擎的自動運(yùn)維虛擬器件模型研究與實(shí)現(xiàn).pdf
- 復(fù)句關(guān)系詞自動標(biāo)識中規(guī)則引擎的實(shí)現(xiàn)策略研究.pdf
- 現(xiàn)金使用規(guī)則
評論
0/150
提交評論