人工智能實(shí)驗(yàn)報(bào)告_第1頁
人工智能實(shí)驗(yàn)報(bào)告_第2頁
人工智能實(shí)驗(yàn)報(bào)告_第3頁
人工智能實(shí)驗(yàn)報(bào)告_第4頁
人工智能實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.暨南大學(xué)人工智能實(shí)驗(yàn)報(bào)告題 目: 動(dòng)物識(shí)別系統(tǒng)院 系: 信科院計(jì)算機(jī)系 專 業(yè): 計(jì)算機(jī)軟件與理論 學(xué) 號(hào): 0934061004 學(xué)生姓名: 張韶遠(yuǎn) 成 績(jī):日期: 2009年11月10日. v.一、 目的與要求1 掌握人工智能的知識(shí)表示技術(shù),能用產(chǎn)生式表示法表示知識(shí),并實(shí)現(xiàn)一個(gè)用于識(shí)別的專家系統(tǒng)。2 推理策略采用正向推理和反向推理兩種。二、 主要內(nèi)容1 學(xué)習(xí)人工智能的知識(shí)表示技術(shù),關(guān)鍵掌握產(chǎn)生式知識(shí)表示的具體應(yīng)用方法。 2 實(shí)現(xiàn)的動(dòng)物識(shí)別系統(tǒng)的主要功能如下:21系統(tǒng)能通過正向、反向推理得到正確的動(dòng)物識(shí)別結(jié)果。22系統(tǒng)能動(dòng)態(tài)地添加規(guī)則、能顯示推理過程。三實(shí)驗(yàn)原理產(chǎn)生式表示:產(chǎn)生式表示是知識(shí)

2、表示的一種。這種方法是建立在因果關(guān)系的基礎(chǔ)上的,可很容易的描述事實(shí)、規(guī)則及其不確定性度量。1事實(shí)的表示:事實(shí)可看成是斷言一個(gè)語言變量的值或是多個(gè)語言變量間的關(guān)系的陳述句,語言變量的值或語言變量間的關(guān)系可以是一個(gè)詞。不一定是數(shù)字。一般使用三元組(對(duì)象,屬性,值)或(關(guān)系,對(duì)象1,對(duì)象2)來表示事實(shí),其中對(duì)象就是語言變量,若考慮不確定性就成了四元組表示(增加可信度)。這種表示的機(jī)器內(nèi)部實(shí)現(xiàn)就是一個(gè)表。 如事實(shí)“老李年齡是35歲”,便寫成(Lee,age,35) 事實(shí)“老李、老張是朋友”,可寫成(friend,Lee,Zhang) 2規(guī)則的表示:規(guī)則用于表示事物間的因果關(guān)系,以if conditio

3、n then action 的單一形式來描述,將規(guī)則作為知識(shí)的單位。其中的condition 部分稱為條件式前件或模式,而action部分稱作動(dòng)作、后件或結(jié)論。產(chǎn)生式一般形式為:前件后件。前件和后件也可以是有“與”、“或”、“非”等邏輯運(yùn)算符的組合的表達(dá)式。條件部分常是一些事實(shí)的合取或析取,而結(jié)論常是某一事實(shí)B。如果不考慮不確定性,需另附可信度度量值。產(chǎn)生式過則的含義是:如果前件滿足,則可得到后件的結(jié)論或者執(zhí)行后件的相應(yīng)動(dòng)作,即后件由前件來觸發(fā)。一個(gè)產(chǎn)生式生成的結(jié)論可以作為另一個(gè)產(chǎn)生式的前提或語言變量使用,進(jìn)一步可構(gòu)成產(chǎn)生式系統(tǒng)。蘊(yùn)涵式表示的知識(shí)只能是精確的,產(chǎn)生式表示的知識(shí)可以是不確定的,原

4、因是蘊(yùn)涵式是一個(gè)邏輯表達(dá)式,其邏輯值只有真和假。蘊(yùn)含式的匹配一定要求是精確的,而產(chǎn)生式的匹配可以是不確定的,原因是產(chǎn)生式的前提條件和結(jié)論都可以是不確定的,因此其匹配也可以是不確定的。.產(chǎn)生式系統(tǒng)的結(jié)構(gòu):推理機(jī)規(guī)則集數(shù)據(jù)庫.數(shù)據(jù)庫數(shù)據(jù)庫中存放構(gòu)成產(chǎn)生式系統(tǒng)的基本元素,又是產(chǎn)生式的作用對(duì)象。包括系統(tǒng)設(shè)計(jì)時(shí)輸入的事實(shí)、外部數(shù)據(jù)庫輸入的事實(shí)以及中間結(jié)果和最后結(jié)果。數(shù)據(jù)的格式是多種多樣的,可以是常量、變量、多元組、謂詞等。在推理過程中,當(dāng)規(guī)則庫中某條規(guī)則的前提可以和數(shù)據(jù)庫中的已知事實(shí)相匹配時(shí),該規(guī)則被激活,由它推出的結(jié)論將被作為新的事實(shí)放入數(shù)據(jù)庫,成為后面推理的已知事實(shí)。.規(guī)則庫規(guī)則庫中存放的是與求解有

5、關(guān)的所有產(chǎn)生式規(guī)則的集合,每個(gè)規(guī)則由前件和后件組成。其中包含了將問題從初始化狀態(tài)轉(zhuǎn)換成目標(biāo)狀態(tài)所需的所有變換規(guī)則。這些規(guī)則描述了問題領(lǐng)域中的一般性知識(shí)。規(guī)則庫是產(chǎn)生式系統(tǒng)進(jìn)行問題求解的基礎(chǔ),其知識(shí)的完整性、一致性、準(zhǔn)確性、靈活性,以及知識(shí)組成的合理性等性質(zhì),對(duì)產(chǎn)生式系統(tǒng)的運(yùn)行效率都有重要的影響。.推理機(jī)推理機(jī)是一個(gè)解釋程序,控制協(xié)同規(guī)則庫與數(shù)據(jù)庫,負(fù)責(zé)整個(gè)產(chǎn)生式系統(tǒng)的運(yùn)行,決定問題求解過程的推理路線,實(shí)現(xiàn)對(duì)問題的求解。推理機(jī)主要包括下面一些工作內(nèi)容:(1)按一定策略從規(guī)則庫中選擇規(guī)則與數(shù)據(jù)庫的已知事實(shí)進(jìn)行匹配。匹配的過程中會(huì)產(chǎn)生三種情況。第一種匹配成功,則此條規(guī)則將被列入被激活候選集;第二種匹

6、配失敗,即輸入條件與已知條件矛盾;第三種匹配無結(jié)果,即該條規(guī)則前件的已知條件中完全與輸入事實(shí)無關(guān),則將規(guī)則列入待測(cè)試規(guī)則集,將在下一輪匹配中再次使用。因?yàn)橛锌赡芡评碇虚g結(jié)果符合其前件的已知條件。(2)當(dāng)匹配成功的規(guī)則多于一條時(shí),需要從匹配成功的規(guī)則中選出一個(gè)加以執(zhí)行,即根據(jù)一定的策略解消沖突。(3)解釋執(zhí)行規(guī)則后件的動(dòng)作。如果該規(guī)則的后件不是問題的目標(biāo),即如果這些后件為一個(gè)或多個(gè)結(jié)論時(shí),將其加入到數(shù)據(jù)庫中。對(duì)要執(zhí)行的規(guī)則,如果該規(guī)則的后件滿足問題的結(jié)束條件,則停止推理。四、實(shí)驗(yàn)正文1需求分析 1.1功能需求111動(dòng)物識(shí)別正向推理正向推理是從已知事實(shí)出發(fā),通過規(guī)則庫求的結(jié)論,也稱為自底向上,或稱

7、為數(shù)據(jù)驅(qū)動(dòng)方式。正向推理過程的具體步驟是:(1)讀入事實(shí)集到工作存儲(chǔ)器。(2)取出某條規(guī)則,將規(guī)則的全部前件與工作存儲(chǔ)器中的所有事實(shí)進(jìn)行比較。如果匹配成功,則所得結(jié)果顯示到屏幕上,轉(zhuǎn)向(3);否則,直接轉(zhuǎn)向(3)。(3)結(jié)束。112刪除規(guī)則可以添加新的事實(shí)和規(guī)則。 1.2性能需求軟件環(huán)境·操作系統(tǒng):Windows Server 2003; Windows Vista; Windows XP ·開發(fā)工具:數(shù)據(jù)庫:SQL Server 2005.人工智能技術(shù)的應(yīng)用動(dòng)物識(shí)別系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn). 動(dòng)物識(shí)別系統(tǒng)設(shè)計(jì)的基本思路 動(dòng)物識(shí)別系統(tǒng)的實(shí)質(zhì)是將人的思維過程轉(zhuǎn)化為計(jì)算機(jī)語言的邏輯過程

8、,其關(guān)鍵在于知識(shí)和信息的表示,智能推理或求解的基礎(chǔ)知識(shí)庫的創(chuàng)建和管理,以及基于某種知識(shí)和信息表示的智能推理或求解過程。該系統(tǒng)的知識(shí)表示采用產(chǎn)生式表示法。產(chǎn)生式系統(tǒng)由條件和規(guī)則數(shù)據(jù)庫、控制系統(tǒng)、界面三個(gè)部分構(gòu)成。數(shù)據(jù)庫中規(guī)則表、條件表分別對(duì)應(yīng)數(shù)據(jù)庫系統(tǒng)中的動(dòng)物庫表,動(dòng)物特征詢問序列表。動(dòng)物庫表放入推理規(guī)則,包括動(dòng)物的各種屬性和所應(yīng)推出的動(dòng)物名稱。動(dòng)物特征詢問序列表放入要選擇的各種動(dòng)物的屬性。動(dòng)物識(shí)別系統(tǒng)設(shè)計(jì)主體框架:本系統(tǒng)只用了一個(gè)頁面實(shí)現(xiàn),界面使用上下結(jié)構(gòu)的框架設(shè)計(jì),當(dāng)用戶進(jìn)入系統(tǒng)的時(shí)候,打開Default.aspx,該頁面分為上下兩個(gè)部分,上面的部分是用于根據(jù)問題輸入動(dòng)物特征,下面的部分是新

9、規(guī)則的加入功能部分,也是用戶進(jìn)行添加新規(guī)則的頁面,這好似一個(gè)導(dǎo)航頁面,用戶可以更具自己的選擇進(jìn)行的操作,由上至下進(jìn)入不同的功能部分。各個(gè)功能模塊的設(shè)計(jì):(1)正向推理鑒別動(dòng)物:Default.aspx這個(gè)頁面中的控件有:一個(gè)FormView,其作用是顯示系統(tǒng)向用戶獲得動(dòng)物特征的詢問問題。一個(gè)DropDownlist,用于顯示與切換第五特征詢問的問題。一個(gè)Label,用于顯示查詢結(jié)果。一個(gè)按鈕,用于用戶傳入查詢命令。用戶點(diǎn)擊查詢按鈕,button的click事件,在這個(gè)事件中,首先定義一個(gè)string:result,用來存儲(chǔ)最后的輸出結(jié)果的初始字符串“查詢結(jié)果是:”然后在后面的查詢過程中,如果查

10、詢到有新的規(guī)則符合要求,就將該規(guī)則加到這個(gè)string中,當(dāng)查詢結(jié)束后,這個(gè)字符串中就存放了所有符合用戶所選條件的規(guī)則,再將這個(gè)字符串顯示在頁面中的textbox中。(2)添加規(guī)則添加規(guī)則頁面中的控件有一個(gè)Textbox,用于在查找不到規(guī)則的時(shí)候,用于添加規(guī)則的。 .動(dòng)物識(shí)別系統(tǒng)的實(shí)現(xiàn) 1.開發(fā)工具:SQLserver2005,Visual Studio 2008 設(shè)計(jì)語言:ASP.NET2.0 , C* 2. 數(shù)據(jù)庫設(shè)計(jì)思想:將所有的條件存放在動(dòng)物特征查詢表中,所有的規(guī)則存放在動(dòng)物庫表中,在規(guī)則表中所有的條件和結(jié)論均以編號(hào)的形式存放,當(dāng)要進(jìn)行查詢的時(shí)候,從條件表中查到對(duì)應(yīng)標(biāo)號(hào)的條件或者結(jié)論,

11、將原來查到的編號(hào)替換為文字的條件或者編號(hào)。 3測(cè)試及驗(yàn)收 通過測(cè)試,用正向推理和反向推理實(shí)現(xiàn)動(dòng)物識(shí)別的功能基本實(shí)現(xiàn),效果不錯(cuò)。界面設(shè)計(jì)的也比較簡(jiǎn)潔。在調(diào)試的時(shí)候發(fā)現(xiàn)添加規(guī)則時(shí)候有一些問題,就是用戶在選擇條件的時(shí)候如果已經(jīng)存在這個(gè)基本事實(shí)的話,則不應(yīng)該再添加相同的記錄。通過和老師探討與研究,最終解決了這個(gè)問題,即在添加規(guī)則前,檢查數(shù)據(jù)庫中是否有該規(guī)則存在,如沒有,再進(jìn)行規(guī)則的添加操作。五、綜合實(shí)驗(yàn)總結(jié)和結(jié)論1.對(duì)人工智能的產(chǎn)生式系統(tǒng)有了進(jìn)一步的認(rèn)識(shí),特別是對(duì)正向推理和反向推理有更深的了解。2.本次實(shí)驗(yàn)是單獨(dú)完成的,通過查找資料,最終圓滿的完成了實(shí)驗(yàn)。這次實(shí)驗(yàn)充分培養(yǎng)了我們的獨(dú)立解決問題的能力。3

12、.實(shí)驗(yàn)的關(guān)鍵是對(duì)正向推理算法的掌握和對(duì)數(shù)據(jù)庫的設(shè)計(jì),由于前期我們花了比較多的時(shí)間進(jìn)行算法的理解和數(shù)據(jù)庫的設(shè)計(jì),大量查找資料,因此最終我們能更快更好的完成了實(shí)驗(yàn)。4.通過這次實(shí)驗(yàn),使我們熟悉了軟件的開發(fā)全程,也更加熟悉了編程工具和編程語言。5.通過兩周的設(shè)計(jì)與開發(fā),動(dòng)物識(shí)別系統(tǒng)基本開發(fā)完畢,但是由于時(shí)間較短,所以該系統(tǒng)還有許多不盡如人意的地方,比如沒有文檔,反向推理出現(xiàn)一些缺陷等問題。因此有待進(jìn)一步改進(jìn)??偟膩碚f,這次實(shí)驗(yàn)我們收益頗多,通過這個(gè)獨(dú)立完成的小型項(xiàng)目,培養(yǎng)了我軟件開發(fā)設(shè)計(jì)的能力,熟悉了軟件開發(fā)的過程步驟,加強(qiáng)了團(tuán)隊(duì)協(xié)作的能力,進(jìn)一步掌握了運(yùn)用ASP.NET2.0進(jìn)行軟件開發(fā),熟悉了C

13、*語言。為以后我們進(jìn)行軟件開發(fā)奠定了基礎(chǔ)。六、參考文獻(xiàn)1 佘玉梅, 段鵬. 人工智能及其應(yīng)用. 上海交通大學(xué)出版社, 2007年4月第一版。2 馬少平,朱曉燕。人工智能。清華大學(xué)出版社,2004年8月第一版。3李勇平 ASP.NET 2.0(C*)基礎(chǔ)教程 清華大學(xué)出版社 2008年4月第一版4陸永禎,段慧坤,周蕓 SQL Server 2000數(shù)據(jù)庫管理和程序開發(fā)一周通 中國(guó)鐵道出版社 2005年4月第一版5龍馬工作室 ASP.NET 2.0+SQL Server 2005從入門到精通通 人民郵電出版社 2008年4月第一版. v.附錄(程序流程圖、程序、界面、數(shù)據(jù)等)1. 程序流程圖2.部

14、分程序代碼:publicpartialclass_Default : System.Web.UI.Pageint j = 0, Num, Number2;staticint a = newint7; SqlConnection con = newSqlConnection("Server = PC-11; user id = sa;password = 123456;Database = animal;");protectedvoid Page_Load(object sender, EventArgs e) protectedvoid YesOption_CheckedC

15、hanged(object sender, EventArgs e) aConvert.ToInt32(Questionselected.SelectedValue) = 1; Questionselected.SelectedIndex+; YesOption.Checked = false; protectedvoid NoOption_CheckedChanged(object sender, EventArgs e) aConvert.ToInt32(Questionselected.SelectedValue) = 0; Questionselected.SelectedIndex+

16、; NoOption.Checked = false; protectedvoid HandIn_Click(object sender, EventArgs e) string SeleceString = "select 動(dòng)物名稱 from 動(dòng)物庫 where 會(huì)游泳='" + a0 + "' and 會(huì)飛翔='" + a1 + "' and 吃肉='" + a2 + "' and 有爪子='" + a3 + "' and 眼盯前方=&#

17、39;" + a4 + "' and 會(huì)下蛋='" + a5 + "' and 有腿='" + a6 + "'"SqlCommand cmd = newSqlCommand ( SeleceString ,con); con.Open();SqlDataReader sdr = cmd.ExecuteReader();if (sdr.Read() Result.Text = " 查找成功,該動(dòng)物為 " + sdr.GetString(0);else Result.T

18、ext = " 查找失敗,若要添加該動(dòng)物請(qǐng)?jiān)谙旅孑斎雱?dòng)物名稱。 " con.Close(); protectedvoid AddAnimal_Click(object sender, EventArgs e) if (Result.Text = " 查找失敗,若要添加該動(dòng)物請(qǐng)?jiān)谙旅孑斎雱?dòng)物名稱。 ") string FindMaxNumber = "select max(動(dòng)物序號(hào)) from 動(dòng)物庫"SqlCommand cmd2 = newSqlCommand ( FindMaxNumber ,con); con.Open();SqlDataReader sdr2 = cmd2.ExecuteReader();if (sdr2.Read() InsertNumber.Text = " " + (sdr2.Get

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論