人工智能動(dòng)物識(shí)別系統(tǒng)JAVA_第1頁(yè)
人工智能動(dòng)物識(shí)別系統(tǒng)JAVA_第2頁(yè)
人工智能動(dòng)物識(shí)別系統(tǒng)JAVA_第3頁(yè)
人工智能動(dòng)物識(shí)別系統(tǒng)JAVA_第4頁(yè)
人工智能動(dòng)物識(shí)別系統(tǒng)JAVA_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí) 驗(yàn) 報(bào) 告課程名稱 人工智能與專家系統(tǒng) 實(shí)驗(yàn)名稱 動(dòng)物分類專家系統(tǒng)設(shè)計(jì) 系別 電子信息科學(xué)學(xué)院 專業(yè)班級(jí) 指導(dǎo)教師 學(xué)號(hào)_姓名_實(shí)驗(yàn)日期 2021.4.1 實(shí)驗(yàn)成績(jī)_實(shí)驗(yàn)?zāi)康?、 加深理解專家系統(tǒng)的結(jié)構(gòu)原理與實(shí)際應(yīng)用。2、 初步掌握知識(shí)獲取的根本方法。3、 掌握產(chǎn)生式規(guī)那么知識(shí)表示方法及其編程實(shí)現(xiàn)方法。4、 初步掌握知識(shí)庫(kù)的組建方法。5、加深理解推理機(jī)的算法原理并初步掌握其編程實(shí)現(xiàn)方法。實(shí)驗(yàn)環(huán)境1、硬件環(huán)境:微機(jī)2、編程語(yǔ)言不限三、實(shí)驗(yàn)原理一個(gè)基于規(guī)那么專家系統(tǒng)的完整結(jié)構(gòu)示于圖1。其中,知識(shí)庫(kù)、推理機(jī)和工作存儲(chǔ)器是構(gòu)成專家系統(tǒng)的核心。系統(tǒng)的主要局部是知識(shí)庫(kù)和推理引擎。知識(shí)庫(kù)由謂詞演算事實(shí)和

2、有關(guān)討論主題的規(guī)那么構(gòu)成。推理引擎由所有操縱知識(shí)庫(kù)來(lái)演繹用戶要求的信息的過(guò)程構(gòu)成如消解、前向鏈或反向鏈。用戶接口可能包括某種自然語(yǔ)言處理系統(tǒng),它允許用戶用一個(gè)有限的自然語(yǔ)言形式與系統(tǒng)交互;也可能用帶有菜單的圖形接口界面。解釋子系統(tǒng)分析被系統(tǒng)執(zhí)行的推理結(jié)構(gòu),并把它解釋給用戶。推理機(jī)解釋器工作存儲(chǔ)器知識(shí)庫(kù)外部程序用戶界面開發(fā)界面用戶知識(shí)工程師 圖1 一個(gè)基于規(guī)那么專家系統(tǒng)的完整結(jié)構(gòu)三、實(shí)驗(yàn)內(nèi)容運(yùn)用以下規(guī)那么,設(shè)計(jì)并實(shí)現(xiàn)一個(gè)小型動(dòng)物分類專家系統(tǒng)。規(guī)那么1:如果:動(dòng)物有毛發(fā)那么 :該動(dòng)物是哺乳動(dòng)物規(guī)那么2: 如果:動(dòng)物有奶 那么 :該單位是哺乳動(dòng)物規(guī)那么3: 如果:該動(dòng)物有羽毛 那么 :該動(dòng)物是鳥規(guī)那

3、么4: 如果:動(dòng)物會(huì)飛,且會(huì)下蛋 那么 :該動(dòng)物是鳥規(guī)那么5: 如果:動(dòng)物吃肉 那么 :該動(dòng)物是肉食動(dòng)物規(guī)那么6: 如果:動(dòng)物有犬齒,且有爪,且眼盯前方 那么 :該動(dòng)物是食肉動(dòng)物規(guī)那么7: 如果:動(dòng)物是哺乳動(dòng)物,且有蹄 那么 :該動(dòng)物是有蹄動(dòng)物規(guī)那么8: 如果:動(dòng)物是哺乳動(dòng)物,且是反芻動(dòng)物 那么 :該動(dòng)物是有蹄動(dòng)物規(guī)那么9: 如果:動(dòng)物是哺乳動(dòng)物,且是食肉動(dòng)物,且是黃褐色的,且有暗斑點(diǎn) 那么 :該動(dòng)物是豹規(guī)那么10: 如果:如果:動(dòng)物是黃褐色的,且是哺乳動(dòng)物,且是食肉,且有黑條紋 那么 :該動(dòng)物是虎規(guī)那么11: 如果:動(dòng)物有暗斑點(diǎn),且有長(zhǎng)腿,且有長(zhǎng)脖子,且是有蹄類 那么 :該動(dòng)物是長(zhǎng)頸鹿規(guī)那么

4、12: 如果:動(dòng)物有黑條紋,且是有蹄類動(dòng)物 那么 :該動(dòng)物是斑馬規(guī)那么13: 如果:動(dòng)物有長(zhǎng)腿,且有長(zhǎng)脖子,且是黑色的,且是鳥,且不會(huì)飛 那么 :該動(dòng)物是鴕鳥規(guī)那么14: 如果:動(dòng)物是鳥,且不會(huì)飛,且會(huì)游泳,且是黑色的 那么 :該動(dòng)物是企鵝規(guī)那么15: 如果:動(dòng)物是鳥,且善飛 那么 :該動(dòng)物是信天翁利用上述15條規(guī)那么,可區(qū)分7種動(dòng)物。2推理機(jī)設(shè)計(jì):采用正向推理。3實(shí)驗(yàn)代碼 package tx;import java.awt.Checkbox;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class

5、 RZS extends JFrame implements ActionListener private static JPanel jp = new JPanel(); private JLabel jl1 =new JLabel(請(qǐng)選擇條件:); static Checkbox Checkbox=/用數(shù)組創(chuàng)復(fù)選框 new Checkbox(有毛發(fā)), new Checkbox(有奶), new Checkbox(有羽毛), new Checkbox(會(huì)飛,且生蛋), new Checkbox(吃肉), new Checkbox(有犬齒,且有爪,且眼盯前方), new Checkbox(有

6、蹄), new Checkbox(反芻動(dòng)物), new Checkbox(黃褐色有暗斑點(diǎn)), new Checkbox(黃褐色有黑條紋), new Checkbox(暗斑點(diǎn),長(zhǎng)腿,長(zhǎng)脖子), new Checkbox(黑條紋), new Checkbox(長(zhǎng)腿,長(zhǎng)脖子,黑色,不會(huì)飛), new Checkbox(不會(huì)飛,會(huì)游泳,黑色的), new Checkbox(善飛) ; static JButton but1=new JButton(確定); static JButton but2=new JButton(重置); static JLabel lblImage = new JLabel(

7、new ImageIcon(E:照片nice.jpg); private JLabel jl2 =new JLabel(推出結(jié)果:); private JLabel jl3 =new JLabel();public RZS() /圖形界面 jp.setLayout(null); jp.add(jl1); jl1.setBounds(30, 0, 200,30); for(int i = 0;i=5;i+) jp.add(Checkboxi); Checkboxi.setBounds(30, 30+i*50, 200,26); for(int i = 5;i=10;i+) jp.add(Chec

8、kboxi); Checkboxi.setBounds(230, 30+(i-5)*50, 200,26); for(int i = 10;i=14;i+) jp.add(Checkboxi); Checkboxi.setBounds(430, 30+(i-10)*50, 200,26); jp.add(but1); but1.setBounds(30, 280, 100,30); jp.add(but2); but2.setBounds(150, 280, 100,30); jp.add(jl2); jl2.setBounds(30, 330, 200,30); jp.add(jl3); j

9、l3.setBounds(30, 380, 200,30); but1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) /推理機(jī) if(Checkbox0.getState()=true|Checkbox1.getState()=true) & (Checkbox4.getState()=true|Checkbox5.getState()=true) & (Checkbox8.getState()=true) jl3.setText(豹 ); else if(Checkbox0.

10、getState()=true|Checkbox1.getState()=true) & (Checkbox4.getState()=true|Checkbox5.getState()=true) & (Checkbox9.getState()=true) jl3.setText(虎); else if(Checkbox0.getState()=true|Checkbox1.getState()=true) & (Checkbox6.getState()=true|Checkbox7.getState()=true) & (Checkbox10.getState()=true) jl3.set

11、Text(長(zhǎng)頸鹿); else if(Checkbox0.getState()=true|Checkbox1.getState()=true) & (Checkbox6.getState()=true|Checkbox7.getState()=true) & (Checkbox11.getState()=true) jl3.setText(斑馬); else if(Checkbox2.getState()=true) & (Checkbox12.getState()=true) jl3.setText(鴕鳥); else if(Checkbox2.getState()=true|Checkbo

12、x3.getState()=true) & (Checkbox13.getState()=true) jl3.setText(企鵝); else if(Checkbox2.getState()=true|Checkbox3.getState()=true) & (Checkbox14.getState()=true) jl3.setText(信天翁); else jl3.setText(條件缺乏或出錯(cuò),請(qǐng)重新勾選條件); ); but2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent

13、e) /重置 for(int i=0;i=14;i+) jl3.setText(); Checkboxi.setState(false); ); jp.add(lblImage); lblImage.setBounds(630, 30, 300, 400); this.add(jp); this.setTitle(動(dòng)物識(shí)別系統(tǒng)); this.setBounds(100,100,1000,500); this.setVisible(true); public void actionPerformed(ActionEvent e) / TODO Auto-generated method stub

14、 public static void main(String args) new RZS(); package tx;import java.awt.Checkbox;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class RZS extends JFrame implements ActionListener private static JPanel jp = new JPanel(); private JLabel jl1 =new JLabel(請(qǐng)選擇條件:); static Checkb

15、ox Checkbox= new Checkbox(有毛發(fā)), new Checkbox(有奶), new Checkbox(有羽毛), new Checkbox(會(huì)飛,且生蛋), new Checkbox(吃肉), new Checkbox(有犬齒,且有爪,且眼盯前方), new Checkbox(有蹄), new Checkbox(反芻動(dòng)物), new Checkbox(黃褐色有暗斑點(diǎn)), new Checkbox(黃褐色有黑條紋), new Checkbox(暗斑點(diǎn),長(zhǎng)腿,長(zhǎng)脖子), new Checkbox(黑條紋), new Checkbox(長(zhǎng)腿,長(zhǎng)脖子,黑色,不會(huì)飛), new

16、Checkbox(不會(huì)飛,會(huì)游泳,黑色的), new Checkbox(善飛) ; static JButton but1=new JButton(確定); static JButton but2=new JButton(重置); static JLabel lblImage = new JLabel(new ImageIcon(E:照片nice.jpg); private JLabel jl2 =new JLabel(推出結(jié)果:); private JLabel jl3 =new JLabel();public RZS() jp.setLayout(null); jp.add(jl1); j

17、l1.setBounds(30, 0, 200,30); for(int i = 0;i=5;i+) jp.add(Checkboxi); Checkboxi.setBounds(30, 30+i*50, 200,26); for(int i = 5;i=10;i+) jp.add(Checkboxi); Checkboxi.setBounds(230, 30+(i-5)*50, 200,26); for(int i = 10;i=14;i+) jp.add(Checkboxi); Checkboxi.setBounds(430, 30+(i-10)*50, 200,26); jp.add(b

18、ut1); but1.setBounds(30, 280, 100,30); jp.add(but2); but2.setBounds(150, 280, 100,30); jp.add(jl2); jl2.setBounds(30, 330, 200,30); jp.add(jl3); jl3.setBounds(30, 380, 200,30); but1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) /推理機(jī) if(Checkbox0.getState()=true|Ch

19、eckbox1.getState()=true) & (Checkbox4.getState()=true|Checkbox5.getState()=true) & (Checkbox8.getState()=true)/這里要把其它的復(fù)選框.getState()=false,否那么選擇兩種動(dòng)物以上會(huì)出錯(cuò),但是我懶,沒(méi)改。 jl3.setText(豹 ); else if(Checkbox0.getState()=true|Checkbox1.getState()=true) & (Checkbox4.getState()=true|Checkbox5.getState()=true) & (

20、Checkbox9.getState()=true) jl3.setText(虎); else if(Checkbox0.getState()=true|Checkbox1.getState()=true) & (Checkbox6.getState()=true|Checkbox7.getState()=true) & (Checkbox10.getState()=true) jl3.setText(長(zhǎng)頸鹿); else if(Checkbox0.getState()=true|Checkbox1.getState()=true) & (Checkbox6.getState()=true|Checkbox7.getState()=true) & (Checkbox11.getState()=true) jl3.setText(斑馬); else if(Checkbox2.getState()=true) & (Checkbox12.getState()=true) jl3.setText(鴕鳥); else if(Checkbox2.getState()=true|Checkbox3.getState()=true) & (Checkbox13.getState()=t

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論