人工智能產(chǎn)生式系統(tǒng)實驗報告(共12頁)_第1頁
人工智能產(chǎn)生式系統(tǒng)實驗報告(共12頁)_第2頁
人工智能產(chǎn)生式系統(tǒng)實驗報告(共12頁)_第3頁
人工智能產(chǎn)生式系統(tǒng)實驗報告(共12頁)_第4頁
人工智能產(chǎn)生式系統(tǒng)實驗報告(共12頁)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、PAGE PAGE 13實 驗 報 告【實驗(shyn)名稱】_產(chǎn)生式系統(tǒng)_【實驗(shyn)目的】1. 理解產(chǎn)生式系統(tǒng)的結(jié)構(gòu)原理(yunl)與實際應(yīng)用。2. 掌握產(chǎn)生式規(guī)則表示及規(guī)則庫組建的實現(xiàn)方法。3. 熟悉和掌握產(chǎn)生式系統(tǒng)的運行機(jī)制,掌握基于規(guī)則推理的基本方法?!緦嶒炘怼慨a(chǎn)生式系統(tǒng)用來描述若干個不同的以一個基本概念為基礎(chǔ)的系統(tǒng),這個基本概念就是產(chǎn)生式規(guī)則或產(chǎn)生式條件和操作對。在產(chǎn)生式系統(tǒng)中,論域的知識分為兩部分:用事實表示靜態(tài)知識;用產(chǎn)生式規(guī)則表示推理過程和行為。【實驗內(nèi)容】1.自己建造產(chǎn)生式系統(tǒng)(包括規(guī)則庫和事實庫),然后進(jìn)行推理,即可以自己輸入任何的事實,并基于原有的規(guī)則和輸入的事

2、實進(jìn)行推理。2.建造動物識別系統(tǒng),能根據(jù)輸入的動物特征判斷是那種動物或給出相應(yīng)的回答。3.算法設(shè)計 = 1 * GB3 首先建立事實庫事實庫是在程序的開始直接輸入的,用戶根據(jù)需要選擇,即要求用戶先輸入特征個數(shù),然后輸入動物的特征,進(jìn)行識別。如果未識別出來,則可以重新選擇,或者退出。動物的特征如下:1有奶 2有毛發(fā) 3有羽毛(ymo) 4會飛 5生蛋 6有爪 7有犬齒 8目盯前方 9吃肉 10有蹄 11反芻(fnch)食物 12黃褐色 13黑色條紋 14黑色斑點 15長腿 16長脖子 17暗斑點 18白色(bis) 19不會飛 20黑白色 21會游泳 22善飛 23不怕風(fēng)浪 24哺乳動物 25鳥

3、 26食肉動物 27有蹄動物 28偶蹄動物 29海燕 30老虎 31金錢豹 32長頸鹿 33斑馬 34鴕鳥 35企鵝 = 2 * GB3 建立靜態(tài)規(guī)則庫即建立產(chǎn)生式規(guī)則,本算法采用了產(chǎn)生中間事實的方法,便于建立和使用規(guī)則。為了便于設(shè)計,我們把要識別的動物限于7種,這樣所需要的產(chǎn)生式規(guī)則就比較少。本算法共有15種規(guī)則,如下:R1: 如果動物有奶,則它是哺乳動物R2: 如果動物有毛發(fā),則它是哺乳動物R3: 如果動物有羽毛,則它是鳥R4: 如果動物會飛且生蛋,則它是鳥R5: 吃肉的哺乳動物是食肉動物R6: 有爪有犬齒木釘前方的哺乳動物是食肉動物R7: 有蹄的哺乳動物是有蹄動物R8: 反芻食物的有蹄動

4、物是偶蹄動物R9: 黃褐色有黑條紋的食肉動物是老虎R10:黃褐色有黑色斑點的食肉動物是金錢豹R11:長腿長脖子有黃褐色暗斑點的有蹄動物是長頸鹿R12:有黑白條紋的有蹄動物是斑馬R13:不會飛長腿長脖的鳥是鴕鳥R14:不會飛會游泳黑白色的鳥是企鵝R15:善飛不怕風(fēng)浪的鳥是海燕具體表示如下:R1: 1-24R2: 2-24R3: 3-25R4: 4*5-25R5: 6*7*8*24-26R6: 9*24-26R7: 10*24-27R8: 11*27-28R9: 12*13*24-30R10: 12*14*24-31R11: 12*15*16*17*27-32R12: 13*18*27-33R13

5、: 15*16*19*25-34R14: 19*20*21*25-35R15: 22*23*25-29 = 3 * GB3 正向(zhn xin)推理過程從已知事實出發(fā),通過規(guī)則庫求得結(jié)論,或稱數(shù)據(jù)驅(qū)動方式。推理(tul)過程是:規(guī)則集中的規(guī)則前件與事實庫中的事實進(jìn)行匹配(ppi),得匹配的規(guī)則集合。從匹配規(guī)則集合中選擇一條規(guī)則作為使用規(guī)則。執(zhí)行使用規(guī)則的后件,將該使用規(guī)則的后件送入事實庫中。重復(fù)這個過程直至達(dá)到目標(biāo)。 如有多條匹配規(guī)則需從中選一條作為使用規(guī)則,本算法是根據(jù)規(guī)則的順序依次選擇,且規(guī)則中不存在同一組事實對應(yīng)多條匹配規(guī)則。 = 4 * GB3 實驗流程圖 = 5 * GB3 實驗結(jié)

6、果及分析如輸入如下事實:有羽毛、善飛、不怕風(fēng)浪。系統(tǒng)的推理過程如下: 先從規(guī)則(guz)庫中取出第一條規(guī)則R1,檢查(jinch)其前提是否可與事實庫中的已知事實相匹配。 R1的前提(qint)是“有奶”,但事實庫中無此事實,故匹配失??;然后取R2,匹配失?。唤又3,該前提與已知事實“有羽毛”相匹配,故R3被執(zhí)行,并將其結(jié)論“鳥”作為新的事實加入到事實庫中。此時,事實庫的內(nèi)容變?yōu)椋河杏鹈?、善飛、不怕風(fēng)浪、鳥;此后,R4R14均匹配失敗,接著取R15,該前提“善飛+不怕風(fēng)浪+鳥”與已知事實相匹配,R15被執(zhí)行,并推出“該動物是海燕”。由于“海燕”已是目標(biāo)集合中的一個結(jié)論,即已推出最終結(jié)果,故

7、問題求解過程結(jié)束。 下面是程序運行的結(jié)果:【實驗程序】#include#define N 23void main()int i,j,k,a,b,c;int num;int factN,tempN;int flag=1;while(flag=1)printf(動物的特征如下:n);printf(1有奶 2有毛發(fā) 3有羽毛 4會飛 5生蛋n6有爪 7有犬齒(qunch) 8目盯前方 9吃肉 10有蹄n11反芻食物 12黃褐色 13黑色條紋 14黑色斑點 15長腿n16長脖子 17暗斑點 18白色 19不會飛 20黑白色n21會游泳 22善飛 23不怕風(fēng)浪n);printf(請輸入描述(mio sh

8、)該動物特征的個數(shù):);scanf(%d,&num);printf(請輸入(shr)對這只動物的特征描述的序號(按序號由小到大):n);for(i=0;inum;i+)scanf(%d,&a);facti=a;/*for(i=0;inum;i+)if(facti=1)factnum=24;num+;printf(使用規(guī)則1,新增加的事實為: 哺乳動物n);break;/*for(i=0;inum;i+)if(facti=2)factnum=24;num+;printf(使用規(guī)則2,新增加的事實為: 哺乳動物n);break;/*for(i=0;inum;i+)if(facti=3)factnu

9、m=25;num+;printf(使用規(guī)則3,新增加的事實為:鳥n);break;/*k=0;for(i=0;inum;i+)if(facti=4)tempk=facti;k+;continue;if(facti=5)tempk=facti;break;if(temp0=4&temp1=5)factnum=25;num+;printf(使用(shyng)規(guī)則4,新增加的事實為:鳥n);/* k=0;for(i=0;inum;i+)if(facti=6)tempk=facti;k+;continue;if(facti=7)tempk=facti;k+;continue;if(facti=8)te

10、mpk=facti;k+;continue;if(facti=24)tempk=facti;break;if(temp0=6&temp1=7&temp2=8&temp3=24)factnum=26;num+;printf(使用規(guī)則(guz)5,新增加的事實為:食肉動物n);/*k=0;for(i=0;inum;i+)if(facti=9)tempk=facti;k+;continue;if(facti=24)tempk=facti;break;if(temp0=9&temp1=24)factnum=26;num+;printf(使用規(guī)則6,新增加(zngji)的事實為:食肉動物n);/*k=0

11、;for(i=0;inum;i+)if(facti=10)tempk=facti;k+;continue;if(facti=24)tempk=facti;break;if(temp0=10&temp1=24)factnum=27;num+;printf(使用規(guī)則(guz)7,新增加的事實為:有蹄動物n);/*k=0;for(i=0;inum;i+)if(facti=11)tempk=facti;k+;continue;if(facti=27)tempk=facti;break;if(temp0=11&temp1=27)factnum=28;num+;printf(使用(shyng)規(guī)則8,新增

12、加的事實為:偶蹄動物n);/*k=0;for(i=0;inum;i+)if(facti=12)tempk=facti;k+;continue;if(facti=13)tempk=facti;k+;continue;if(facti=24)tempk=facti;break;if(temp0=12&temp1=13&temp2=24)factnum=30;/num+;printf(使用規(guī)則(guz)9,新增加的事實為:老虎n該動物為老虎n);/*k=0;for(i=0;inum;i+)if(facti=12)tempk=facti;k+;continue;if(facti=14)tempk=fa

13、cti;k+;continue;if(facti=24)tempk=facti;break;if(temp0=12&temp1=14&temp2=24)factnum=31;/num+;printf(使用規(guī)則(guz)10,新增加的事實為:金錢豹n該動物為金錢豹n);/*k=0;for(i=0;inum;i+)if(facti=12)tempk=facti;k+;continue;if(facti=15)tempk=facti;k+;continue;if(facti=16)tempk=facti;k+;continue;if(facti=17)tempk=facti;k+;continue;

14、if(facti=27)tempk=facti;break;if(temp0=12&temp1=15&temp2=16&temp3=17&temp4=27)factnum=32;/num+;printf(使用規(guī)則11,新增加(zngji)的事實為:長頸鹿n該動物為長頸鹿n);/*k=0;for(i=0;inum;i+)if(facti=13)tempk=facti;k+;continue;if(facti=18)tempk=facti;k+;continue;if(facti=27)tempk=facti;break;if(temp0=13&temp1=18&temp2=27)factnum=

15、33;/num+;printf(使用規(guī)則12,新增加的事實為:斑馬(bnm)n該動物為斑馬n);/*k=0;for(i=0;inum;i+)if(facti=15)tempk=facti;k+;continue;if(facti=16)tempk=facti;k+;continue;if(facti=19)tempk=facti;k+;continue;if(facti=25)tempk=facti;break;if(temp0=15&temp1=16&temp2=19&temp3=25)factnum=34;/num+;printf(使用規(guī)則13,新增加的事實為:鴕鳥(tunin)n該動物為

16、鴕鳥n);/*k=0;for(i=0;inum;i+)if(facti=19)tempk=facti;k+;continue;if(facti=20)tempk=facti;k+;continue;if(facti=21)tempk=facti;k+;continue;if(facti=25)tempk=facti;break;if(temp0=19&temp1=20&temp2=21&temp3=25)factnum=35;/num+;printf(使用規(guī)則(guz)14,新增加的事實為:企鵝n該動物為企鵝n);/*k=0;for(i=0;inum;i+)if(facti=22)tempk=facti;k+;continue;if(facti=23)tempk=facti;k+;continue;if(facti=25)tempk=facti;break;if(temp0=22&temp1=23&temp2=25)factnum=29;/num+;printf(使用規(guī)則15,新增加的事實(shsh)為:海燕n該動物為海燕n);/*if(factnum29)printf(現(xiàn)有事實(shsh)無法推斷出結(jié)果!n);printf(n);printf(繼續(xù)(jx)請按1,退出按其它數(shù)字鍵:);scanf(%d,&c

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論