人工智能小型專家系統(tǒng)的設(shè)計與實現(xiàn).docx

上傳人:小** 文檔編號:16793378 上傳時間:2020-10-25 格式:DOCX 頁數(shù):16 大?。?97.32KB
收藏 版權(quán)申訴 舉報 下載
人工智能小型專家系統(tǒng)的設(shè)計與實現(xiàn).docx_第1頁
第1頁 / 共16頁
人工智能小型專家系統(tǒng)的設(shè)計與實現(xiàn).docx_第2頁
第2頁 / 共16頁
人工智能小型專家系統(tǒng)的設(shè)計與實現(xiàn).docx_第3頁
第3頁 / 共16頁

下載文檔到電腦,查找使用更方便

5 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《人工智能小型專家系統(tǒng)的設(shè)計與實現(xiàn).docx》由會員分享,可在線閱讀,更多相關(guān)《人工智能小型專家系統(tǒng)的設(shè)計與實現(xiàn).docx(16頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 人工智能技術(shù)基礎(chǔ)實驗報告 指導(dǎo)老師: 朱力 任課教師: 張勇 實驗三 小型專家系統(tǒng)設(shè)計與實現(xiàn) 一、實驗?zāi)康? (1)增加學(xué)生對人工智能課程的興趣; (2)使學(xué)生進一步理解并掌握人工智能prolog語言; (3)使學(xué)生加強對專家系統(tǒng)課程內(nèi)容的理解和掌握,并培養(yǎng)學(xué)生綜合運用所學(xué)知識開發(fā)智能系統(tǒng)的初步能力。 二、實驗要求 (1)用產(chǎn)生式規(guī)則作為知識表示,用產(chǎn)生系統(tǒng)實現(xiàn)該專家系統(tǒng)。 (2)可使用本實驗指導(dǎo)書中給出的示例程序,此時只需理解該程序,并增加自己感興

2、趣的修改即可;也可以參考該程序,然后用PROLOG語言或其他語言另行編寫。 (3)程序運行時,應(yīng)能在屏幕上顯示程序運行結(jié)果。 三、實驗環(huán)境 在Turbo PROLOG或Visual Prolog集成環(huán)境下調(diào)試運行簡單的PROLOG程序。 四、實驗內(nèi)容 建造一個小型專家系統(tǒng)(如分類、診斷、預(yù)測等類型),具體應(yīng)用領(lǐng)域由學(xué)生自選,具體系統(tǒng)名稱由學(xué)生自定。 五、實驗步驟 1、專家系統(tǒng): 1.1建造一個完整的專家系統(tǒng)設(shè)計需完成的內(nèi)容: 1.用戶界面:可采用菜單方式或問答方式。 2.知識庫(規(guī)則庫):存放產(chǎn)生式規(guī)則,庫中的規(guī)則可以增刪。 3.數(shù)據(jù)庫:用來存放用戶回答的問題、已知事實

3、、推理得到的中 間事實。 4.推理機:如何運用知識庫中的規(guī)則進行問題的推理控制,建議 用正向推理。 5.知識庫中的規(guī)則可以隨意增減。 1.2推理策略 推理策略包括:正向(數(shù)據(jù)驅(qū)動),反向(目標驅(qū)動),雙向 2、動物分類實驗規(guī)則集 (1)若某動物有奶,則它是哺乳動物。 (2)若某動物有毛發(fā),則它是哺乳動物。 (3)若某動物有羽毛,則它是鳥。 (4)若某動物會飛且生蛋,則它是鳥。 (5)若某動物是哺乳動物且有爪且有犬齒且目盯前方,則它是食肉動物。 (6)若某動物是哺乳動物且吃肉,則它是食肉動物。 (7)若某動物是哺乳動物且有蹄,則它是有蹄動物。 (8)若某動物是有蹄動

4、物且反芻食物,則它是偶蹄動物。 (9)若某動物是食肉動物且黃褐色且有黑色條紋,則它是老虎。 (10)若某動物是食肉動物且黃褐色且有黑色斑點,則它是獵豹。 (11)若某動物是有蹄動物且長腿且長脖子且黃褐色且有暗斑點,則它是長頸鹿。 (12)若某動物是有蹄動物且白色且有黑色條紋,則它是斑馬。 (13)若某動物是鳥且不會飛且長腿且長脖子且黑白色,則它是駝鳥。 (14)若某動物是鳥且不會飛且會游泳且黑白色,則它是企鵝。 (15)若某動物是鳥且善飛且不怕風(fēng)浪,則它是海燕。 3、實驗具體步驟 本實驗用正向推理策略來完成,實現(xiàn)推理機的程序與知識庫的具體內(nèi)容無關(guān),對知識庫的修改不需要改動推理

5、機。 1、充分理解知識庫現(xiàn)有知識,提出待解決問題 2、建立規(guī)則庫 3、從規(guī)則庫中獲取可用規(guī)則集 4、確定搜索控制策略(例如:估價函數(shù)策略) 5、通過搜索控制策略,從規(guī)則集中選出最優(yōu)規(guī)則 6、執(zhí)行最優(yōu)規(guī)則,更新知識庫 7、反復(fù)多次以上步驟 8、獲得解決方案或無解 4、編寫程序及調(diào)試運行步驟 4.1程序代碼 “小型動物分類專家系統(tǒng)” /*An Animal Classifying Expert System*/ database xpositive(symbol,symbol) xnegative(symbol,symbol) predicates run

6、 animal_is(symbol) it_is(symbol) positive(symbol,symbol) negative(symbol,symbol) clear_facts remember(symbol,symbol,symbol) ask(symbol,symbol) goal run. clauses run:- animal_is(X), !, write("\nYour animal may be a(n) ", X), nl, nl, clear_facts. run:- write("\nUnable

7、to determine what"), write("your animal is.\n\n"), clear_facts. positive(X,Y):-xpositive(X, Y),!. positive(X,Y):-not(xnegative(X,Y)), ask(X,Y). negative(X,Y):-xnegative(X,Y), !. negative(X,Y):-not(xpositive(X,Y)), ask(X,Y). ask(X,Y):- write(X, " it ", Y, "?\n"), readln(Reply),

8、remember(X, Y, Reply). remember(X, Y, y):-asserta(xpositive(X, Y)). remember(X, Y, n):-asserta(xnegative(X, Y)),fail. clear_facts:-retract(xpositive(_, _)),fail. clear_facts:-retract(xnegative(_, _)),fail. clear_facts:-write("\n\nPlease press the space bar to Exist"), readchar(_). /* K

9、nowledge Base*/ animal_is(cheetah):- %獵豹 it_is(carnivore), positive(has,tawny_color), positive(has,black_spots). animal_is(tiger):- %老虎 it_is(carnivore), positive(has, tawny_color), positive(has, black_stripes). animal_is(giraffe):- %長頸鹿 it_is(ungulate), positive(has,

10、 long_neck), positive(has, long_legs), positive(has, dark_spots). animal_is(zebra):- %斑馬 it_is(ungulate), positive(has,black_stripes). animal_is(ostrich):- %鴕鳥 it_is(bird), negative(does, fly), positive(has, long_neck), positive(has, long_legs), positive(has, black_a

11、nd_white_color). animal_is(penguin):- %企鵝 it_is(bird), negative(does, fly), positive(does, swim), positive(has, black_and_white_color). animal_is(albatross):- %信天翁 it_is(bird), positive(does,fly_well). it_is(mammal):- %哺乳動物 positive(has,hair). it_is(mammal):- positive

12、(does,give_milk). it_is(bird):- %鳥類 positive(has,feathers). it_is(bird):- positive(does,fly), positive(does,lay_eggs). it_is(carnivore):- %肉食動物 positive(does,eat_meat). it_is(carnivore):- it_is(mammal), positive(has,pointed_teeth), positive(has,claws), positive(has,fo

13、rward_eyes). it_is(ungulate):- %有蹄類動物 it_is(mammal), positive(has,hooves). it_is(ungulate):- it_is(mammal), positive(does,chew_cud). 4.2調(diào)試步驟 1.在TXT文本中編寫規(guī)則代碼,添加到狀態(tài)圖通用搜索程序中,修改程序。 2.打開Turbo prolog2.0文件,啟動prolog.exe應(yīng)用程序,并按空格鍵(SPACE)進入集成開發(fā)環(huán)境。 3.選擇Setup項,打開下拉菜單,選擇Directories項,進行工作目錄修改,

14、按Esc鍵退出,選擇Save Configuration項,保存修改。 4.在相應(yīng)的路徑所在文件件夾中會生成work.Pro文件將其用文本打開,將要運行的程序?qū)懭?,保存? 5.選擇Files項,選擇Load項,選擇要打開的示例程序 6.編輯之后,可以選擇Run項,執(zhí)行程序,可以在Dialog窗口進行詢問,并回答y/n,依次回答問題,即可找到解 7.退出,選擇Quit項,可以退出Turbo Prolog程序。 4.3書籍識別系統(tǒng) 根據(jù)所給示例程序,我修改出一個簡單的書籍識別系統(tǒng) 4.3.1系統(tǒng)簡介 這是一個簡單的書籍識別系統(tǒng),有:唐詩三百首、魯迅散文集、紅樓夢、泰戈爾詩詞、呼嘯山

15、莊。使用我們這個系統(tǒng),只需根據(jù)窗口提供的內(nèi)容回答y/n,系統(tǒng)將會幫你選擇你可能中意的書籍。 該專家系統(tǒng)設(shè)計書籍的特性是:中文,英文,詩集,散文,小說 各種書籍特性如下: 書籍 特性 唐詩三百首 中文 詩詞 紅樓夢 中文 小說 泰戈爾詩詞 英文 詩詞 魯迅散文集 中文 散文 呼嘯山莊 英文 小說 4.3.2系統(tǒng)程序 database xpositive(symbol,symbol) xnegative(symbol,symbol) predicates run book_is(symbol) positive(symbol,symb

16、ol) negative(symbol,symbol) clear_facts remember(symbol,symbol,symbol) ask(symbol,symbol) goal run. clauses run:- book_is(X), !, write("\nYour favorite book may be ", X), nl, nl, clear_facts. run:- write("\nUnable to determine what"), write("your book is.\n\n"), clear

17、_facts. positive(X,Y):-xpositive(X,Y),!. positive(X,Y):-not(xnegative(X,Y)), ask(X,Y). negative(X,Y):-xnegative(X,Y), !. negative(X,Y):-not(xpositive(X,Y)), ask(X,Y). ask(X,Y):- write("Question:- ",X, " it ", Y, "?\n"), readln(Reply), remember(X,Y, Reply). remember(X,Y, y):-asse

18、rta(xpositive(Y)). remember(X,Y, n):-asserta(xnegative(Y)),fail. clear_facts:-retract(xpositive(_, _)),fail. clear_facts:-retract(xnegative(_, _)),fail. clear_facts:-write("\n\nPlease press the space bar to Exist"), readchar(_). /* Knowledge Base*/ book_is(tangShiSaibaishou):- %唐詩三百首

19、 positive(is,chinese), positive(is,poem). book_is(luxunwenji):- %魯迅文集 positive(is,chinese), positive(is, prose). book_is(hongloumeng):- %紅樓夢 positive(is, chinese), positive(is, novel). book_is(taigerwenji):- %泰戈爾文集 positive(is, english), positive(is, poem). book_is(h

20、uxiaoshanzhaung):- %呼嘯山莊 positive(is, english), positive(is, novel). 五、實驗結(jié)果 5.1動物分類實驗結(jié)果 圖1 圖2 圖3 5.2書籍識別實驗結(jié)果 圖4 圖5 圖6 六、問題思考 思考:你所實現(xiàn)的基于產(chǎn)生式的專家系統(tǒng)所采用的推理算法是正向推理還是反向推理?采用prolog語言編寫專家系統(tǒng)有何優(yōu)點與不足? 解:(1)正向推理(2)嚴格來講,該專家系統(tǒng)程序中并無顯式的推理機,而是利用了PROLOG語言本身的推理機制實現(xiàn)推理的。這就是說,用PROLOG編寫

21、專家系統(tǒng)程序,可以省去推理機部分。如果用其他語言編程,推理機則是必不可少的。當然,用PROLOG編寫專家系統(tǒng)程序,也可以不用它自身的推理機作為所實現(xiàn)的專家系統(tǒng)的推理機,而用戶自己重新編寫一個顯式的推理機,這可根據(jù)問題和需要而定。如果要重新編寫推理機,一般說來,規(guī)則就要用PROLOG的事實來實現(xiàn)。知識庫就要用PROLOG的動態(tài)數(shù)據(jù)庫來實現(xiàn)。 七、實驗中出現(xiàn)的問題及解決方案 實驗中由于最開始對于專家系統(tǒng)了解不夠深刻,對于理解小動物分類的程序是,遇到了很多問題,后來我仔細看了書,掌握了專家系統(tǒng)的整體架構(gòu),對于動態(tài)數(shù)據(jù)庫有了一定的了解,加深了我對于程序的理解,同時有咨詢老師和同學(xué),理解了程序。 在理解程序之后,我又嘗試著自己改編了一段小程序,雖然遇到了一些語句上的小問題,但是翻書之后,問題可以解決,同時程序可以運行出來。 八、實驗總結(jié) 通過本次實驗,加深了我對人工智能課程的興趣,進一步掌握了prolog語言,加深了我對于專家系統(tǒng)的理解和掌握,理解了專家系統(tǒng)的知識庫,推理機,動態(tài)數(shù)據(jù)庫。并且在這最后一次人工智能上機實驗中,嘗試著自己修改編寫一段程序,相對于前兩次實驗,我對于prolog語言的運用更加熟悉。 16

展開閱讀全文
溫馨提示:
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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!