




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
浙教版高中信息技術選修5人工智能初步全套PPT課件智能和人工智能“智能”是當今社會上流行的時髦術語,大家都已經(jīng)聽慣、說慣、諸如“智能卡”“智能儀表”“智能機器”“智能大樓”等等,不勝枚舉??墒蔷烤故裁词侨斯ぶ悄??本節(jié)的任務就是說明兩者的含義及相互關系。1智能智能通常是指學習、記憶、認識、理解客觀事物和解決實際問題的智慧和能力。智能來源于精神或心理活動,是大腦的一項基本技能智能不是本能,主要是通過參與各項社會實踐活動獲得的,是在認識和改造自身及客觀世界的活動中,由思維過程和腦力活動所體現(xiàn)的能力。它包括:
(1)感知能力:通過視覺、聽覺、觸覺、嗅覺、味覺等來感知客觀世界,獲取感性知識的能力;
(2)思維能力:通過大腦的思維活動(如記憶、聯(lián)想、推理、計算、分析、判斷、決策、規(guī)劃、學習、探索等)對各種輸入信息進行加工處理,將感性知識、經(jīng)驗上升為理性知識的能力;
(3)行為能力:是對感知到的外界信息的一種反應能力。近年來神經(jīng)生理學和腦科學的研究成果表明,腦的感知部分,包括視覺聽覺、運動等腦皮層區(qū)不僅具有輸入/輸出通道的功能,而且具有直接參與思維,運用知識,通過推理解決問題的功能。2人工智能人工智能指的是人造物的智能,在人工智能一詞正式采用以前,人們通常使用“機器智能”這一術語。自古以來,人類就力圖以自身的認識和當時的科學技術條件,用機器來代替人的部分腦力勞動,以提高人們在自然和社會中的生存與發(fā)展的能力。人們對實現(xiàn)機器智能的追求由來已久,直到上世紀40年代中后期電子數(shù)字計算機出現(xiàn),當時就有少數(shù)計算機科學家意識到利用這種機器的巨大潛力,并著手研究怎樣用計算機來解決諸如下棋、自動定理證明之類的典型的智能問題。雖然人工智能科學家從不同的角度對人工智能進行了各種描述,但至今也沒有統(tǒng)一的嚴格的定義。1981年,菲根鮑姆教授指出:“人工智能是計算機科學的一個分支,涉及到智能計算機系統(tǒng)的設計,該系統(tǒng)顯示人類行為中與智能有關的某些特性?!庇嬎銠C會不會有智能,或者說計算機能不能思維?這是一個有爭論的問題。至今為止,我們并不真正知道是否能夠制造這樣的機器,它能像人一樣思考、能用和人同樣的方式理解世界。但是人們已經(jīng)和正在制造在日常生活的許多方面為人們提供幫助的機器,這樣的機器在完成許多任務方面將比人類強,就像計算器在算術運算方面比人強一樣。3討論交流1.討論主題:智能與人工智能
2.活動安排:每位同學至少列舉三個以上能分別說明“智能”和“人工智能”概念的實例。
3.交流方式:建議2-4位同學為一個小組,對以下問題開展討論:
(1)日常生活中所見所聞的人工智能應用的例子。
(2)人工智能是否能達到或超過人類智能?
4.結果呈現(xiàn):可以制作演示文稿或顯示有關網(wǎng)站內(nèi)容。5.活動評價:
(1)填寫下表。
(2)填寫“學生學業(yè)成長記錄表”。活動主題智能與人工智能總計評價指標能列舉三個以上分別說明總計評價指標“智能”和“人工智能”的例子(6分)說明問題時能輔以幻燈片或上網(wǎng)瀏覽等形式(4分)評價THEEND人工智能的若干應用領域1博弈人工智能的一大成就是開發(fā)了能夠求解博弈難題的高水平下棋(如西洋跳棋、國際象棋等)程序。在棋類活動中,除了具有明顯的智能外,棋盤游戲還有很多屬性使其成為早期人工智能研究的對象。由于大多數(shù)游戲都有定義好的競技規(guī)則,這樣一來便可以很容易地產(chǎn)生要搜索的狀態(tài)空間。博弈中的棋局易于在計算機中表示,不需要復雜格式的表征。狀態(tài)空間搜索的大多數(shù)早期研究都是針對常見的棋盤游戲來實現(xiàn)的。棋類博弈游戲軟件比較多,下面以大家常見的五子棋為例,來初步體驗一下人工智能技術應用。2自動定理證明自動定理證明是人工智能最早發(fā)展起來的分支之一。自動定理證明把人證明定理的過程變成能在計算機上實現(xiàn)的符號演算的過程,它的研究肩負了AI早期研究中的很多任務,包括總結搜索算法以及開發(fā)標準的表示語言,例如謂詞演算和邏輯編程語言Prolog。自動定理證明是利用計算機證明非數(shù)值性的結果,即確定它們的真假。許多非數(shù)值領域的任務,都可以轉(zhuǎn)化成自動定理證明問題來解決。中國科學院院士吳文俊在數(shù)學機械化等研究領域取得了突出的成就,1997年獲得“Herbrand自動推理杰出成就獎”,2000年獲得首屆“國家最高科學技術獎”。中國科學數(shù)學機械化重點實驗室推出了數(shù)學機械化與自動推理的軟件工作平臺MMP。3機器人和智能機器人機器人是一種能夠模擬人的行為的機電裝置,當今已經(jīng)被廣泛地用于日常生產(chǎn)和生活中,它能模擬人的觸覺、視覺、聽覺。機器人是種具有傳感機構、作用機構和制導機構,能接受輸入信號、探測環(huán)境狀態(tài)并作出合適的動作反應的可編程的多功能裝置。制導機構的作用是根據(jù)傳感機構接收到的信號,按事先存儲的規(guī)則約定或邏輯關系,對輸入的信號進行運算和處理,并將處理結果傳遞給作用機構,以產(chǎn)生所需要的反應。雖然機器人的外形千變?nèi)f化,但由于它都是模擬人的活動,故稱機器人。如果機器人具有理解推理和判斷能力,則被稱為智能機器人。凡是能接受外界輸入的命令,能夠感知和認識工作環(huán)境、工作目標及當前狀態(tài),能夠自身進行推理和判斷,編制工作計劃,決定工作方法并能跟蹤目標變化,自行調(diào)整適應工作環(huán)境的機器人都可稱為智能機器人。目前世界各先進工業(yè)國家已把機器人或智能機器人的研制和生產(chǎn)作為一個產(chǎn)業(yè)。各種具有高度機動能力、能適應復雜環(huán)境、能覺察有毒氣體和抗核輻射、能獨立決策和靈活行動的機器人正在越來越多地被開發(fā)出來,在醫(yī)療、航天、采礦、水下等各種場合被廣泛應用。4模式識別
“模式識別”是從英文術語“patternrecognition”翻譯過來的一個計算機術語。英文單詞“pattern”是一個多義詞,在這里可以理解為圖案、模樣、式樣、花樣、花紋等等??傊鐖D形、景物、語言、波形、文字、疾病等等都可以作為一種模式。廣義地講,一切可觀察到的客觀存在的事物都可以稱為模式。所謂模式識別,就是把不同的式樣區(qū)分開來,正確判斷它是什么“東西”或不是什么“東西”。這里用“東西”一詞來泛指各種不同的識別對象。比如,如果識別的對象是中文,就是漢字的識別;如果是英文,首先是對26個英文字母和標點符號的識別;如果是一幅海戰(zhàn)現(xiàn)場圖像,很重要的是要區(qū)分(識別)敵艦敵機、友艦友機、我艦我機等等。在今天的社會生活中,無論你是到銀行取錢,到網(wǎng)上交易,還是注冊網(wǎng)絡服務、購物,甚至到朋友單位去拜訪,太多太多的場合都需要身份的認證,而傳統(tǒng)的基于證件、印章、簽名或簡單數(shù)字密碼為標志的身份認證技術由于受到證件偽造以及密碼破解等手段的威脅,安全可靠程度越來越差。怎樣保護自己的重要文件資料,如何保證自己的隱私不被泄露?在傳統(tǒng)的操作中,我們往往使用密碼加密法,面對高明的黑客,由幾個字符組成的密碼已脆弱得不堪一擊?,F(xiàn)在,科技的發(fā)展讓我們有了新的選擇——指紋識別加密產(chǎn)品。根據(jù)人的指紋生成指紋鎖應用于筆記本、機箱甚至鼠標上,可以對文件和系統(tǒng)起保護作用。這里以簡單的指紋識別演示系統(tǒng)為例,了解模式識別的簡單應用。系統(tǒng)通過攝像頭提取指紋,然后輸入計算機,再通過一系列復雜的指紋識別算法,現(xiàn)代計算機指紋識別系統(tǒng)就能在極短的時間內(nèi)完成對任何人的指紋識別并作為該人身份的認證。
沈陽智通科技研制的指紋識別系統(tǒng)是一個簡單的指紋識別演示系統(tǒng),通過單擊按鈕“指紋1”和“指紋2”,分別打開兩個存放指紋的圖像文件,經(jīng)過一系列復雜的指紋識別算法,系統(tǒng)就能很快地得到指紋比對的結果。如果兩個指紋是同一個人的,則系統(tǒng)顯示匹配結果為“相同指紋”,否則顯示“不同指紋”。5自然語言處理和機器翻譯自然語言是人類在長期的生產(chǎn)和社會活動中進行信息交流時形成的一種特殊的溝通工具。例如,英語、漢語、法語和德語等。自然語有是以詞匯為材料,按一定的語法結構規(guī)律構成的體系,它可以用文字、口語及手勢等形式表示。自然語言表示的規(guī)則,較多的是以約定俗成的通行用法為基礎,具有很大的靈話性。自然語言的基本元素是字母或字。用字或字母組合成詞,是表達思想的最小單元。若干個詞的有意義的組合與形變構成語句,由語句的上下文組合構成文章。各種自然語言由于其使用場合、情景和作用的不同而存在多義性、模糊性和隨意性。自然語言處理是人工智能的一個重要分支,包括自然語言之間的轉(zhuǎn)換(機器翻譯)等。自然語言處理的研究內(nèi)容包括:自然語言人機對話(問答)、機器自動文摘和索引以及機器翻譯等。機器翻譯是以計算機為工具將一種自然語言翻譯成另一種自然語言,是一種模擬人類高級思維的活動,是翻譯工作的自動化。機器翻譯是人工智能最早研究的應用領域之一,一直倍受關注。在機器翻譯時,被翻譯的語言稱為源語言,譯成后的語言稱為目標語言。在電子計算機問世不久,人們就想到利用計算機進行翻譯工作。
人工翻譯時,必須掌握源語言和目標語言的詞匯、語法,通常還要查閱字典,懂得領域背景知識和理解上下文語境,才能作好翻譯工作。與人工翻譯相似,機器翻譯系統(tǒng)也需要在計算機中存入數(shù)字化的源語言和目標語言詞典,數(shù)字化了的語法規(guī)則及相關的領域知識。詞典應包括:綜合詞典、專業(yè)詞典、多義詞詞典、結構詞典、成語詞典。在用戶將待譯原文輸入機器翻譯系統(tǒng)后,系統(tǒng)進行詞法分析,從語句中切分詞語,通過查閱詞典,確定詞性(名詞、動詞、形容詞、副詞等)、詞語屬性(人稱、性、數(shù)、格、時態(tài)、語態(tài)等)和詞的意義,再根據(jù)上下文、領域知識選取多義詞中的合適詞意解釋以及對成語進行判定和對照解釋。經(jīng)過語法分析,明確各個語法成分(主語、謂語狀語定語、主句、從句等),根據(jù)各詞之間的關系產(chǎn)生機器的內(nèi)部表示。然后,根據(jù)目標語言的文法要求,調(diào)整語句中的各種成分的次序,進行修辭加工,最后輸出用目標語言表示的譯文。其過程大致如圖所示。6專家系統(tǒng)專家系統(tǒng)是一套智能的計算機程序,它為人們解決某些問題提供幫助,這些問題通常需要某些專門領域的專家才能解決。我們知道,人類專家在解決問題的時候能夠表現(xiàn)出很高的水平,因為他們對自己的專業(yè)領域非常了解,具備了廣泛深入的知識。因此,專家系統(tǒng)被設計成具有這樣的功能,它能在遇到同樣的情況下運用相當于人類專家的知識,模擬人類專家所遵循的因果關系的推理,提出問題處理建議,為用戶提供“專家級”的服務也就是說,專家系統(tǒng)的設計者首先應該在人類專家的幫助下為專家系統(tǒng)輸入或生成足夠的知識,然后再讓專家系統(tǒng)使用這些知識來模仿人類專家解決問題的方法和能力。專家系統(tǒng)和人類專家一樣,往往是針對某一狹窄領域的。專家系統(tǒng)應能在求解問題的實踐中自行獲取知識,提高系統(tǒng)自身對領域問題的理解和解決問題的能力。當今,用來求解許多領域問題,包括:醫(yī)療、數(shù)學、工程、化學、地質(zhì)學、計算機科學、商業(yè)、法律、國防和教育等領域的專家系統(tǒng)不斷地被開發(fā)出來。自上世紀70年代末以來,專家系統(tǒng)的數(shù)量迅速增加,質(zhì)量不斷提高,專家系統(tǒng)已經(jīng)成為人工智能的主要應用領域之一,應用范圍日益擴大。為了讓大家對專家系統(tǒng)有一個初步了解,接下來讓我們學習使用一個簡單小型的專家系統(tǒng)——“ChoosingaDesktopPC”。這是一個PC產(chǎn)品配置專家系統(tǒng),它模擬一個產(chǎn)品顧問的場景為你提供臺式PC產(chǎn)品配置的專家級咨詢,系統(tǒng)將會根據(jù)你的需求,為你選擇和配置一臺臺式計算機系統(tǒng)提供咨詢與建議。這此建議是為運行Windows操作系統(tǒng)的PC計算機用戶提供的。盡管這個系統(tǒng)解決的問題很簡單,但它卻包括了通常專家系統(tǒng)的內(nèi)容。THEEND知識知識是人類對主客觀世界的認識的結果或結晶,依反映對象的深刻性,可分為生活常識和科學知識;依反映層次的系統(tǒng)性,可分為經(jīng)驗知識和理論知識,經(jīng)驗知識是知識的初級形態(tài),系統(tǒng)的科學理論是知識的高級形態(tài);按來源的直接性,可分為直接知識和間接知識。但從總體上說,人的一切知識(才能也屬于知識范疇)都是在社會實踐中形成的,是對現(xiàn)實的反映,培根曾說:“知識的形式不是別的,知識是真理的表象,存在的真實同知識的真實是一致的,知識就是存在的映……”社會實踐是一切知識的基礎和檢驗知識的標準。知識借助于語言、文字或物化為某種勞動產(chǎn)品的形式進行交流和傳遞。1知識的特性知識本身有許多固有的特性。例如,在人事工作領域,“職工年齡達到或超過60歲就要退休”,“大學教師應有大學本科以上的文化程度”,這說明知識的域特性與知識的應用密切相關;又例如,在公歷歷法中的閏年是這樣計算的,凡是能被4整除的年份是閏年;但逢百之年,能被4整除的并不一定是閏年,必須要能被400整除的才是閏年。這種計算方法是按地球繞太陽公轉(zhuǎn)的周期計算出來的,說明了知識的描述特性是針對描述性的知識而言。知識的特性在各種工程系統(tǒng)中如果得到合理運用,就會對系統(tǒng)的成功帶來極大的幫助。了解知識的屬性對人工智能的開發(fā)和應用具有重大價值。知識有以下一些主要特性,如圖。(1)相對正確性。任何知識都是在一定的環(huán)境和條件下形成的,所以知識的正確性也是在一定的條件下才是正確的。知識不可能無條件地正確,也不可能無條件地錯誤,而是相對正確的。例如,水溫降至0℃時,水由液態(tài)開始向固態(tài)(冰)轉(zhuǎn)變,當水溫升至100℃時,水開始汽化,這種常識性知識,只有在標準大氣壓下才是正確的;又如:平面內(nèi)的任何一個三角形其內(nèi)角之和等于180°,只是在歐幾里得幾何體系下才成立。在非歐幾里得體系下,三角形內(nèi)角之和就不再是180°了。(2)不確定性。知識的不確定性是與客觀世界不確定性密切相關的?,F(xiàn)實世界的許多事物和現(xiàn)象都具有不確定性。這種不確定性可以分為兩類,一類是由于事物和現(xiàn)象的隨機性所產(chǎn)生的不確定性,像“明年我國北方地區(qū)會發(fā)生幾次大的沙塵暴?”,“明年我國西北地區(qū)的降雨量有多少?”另一類則是由于概念的外延本身的模糊性面產(chǎn)生的不確定性,像“這個人的個子很高”,到底多高才算是個子很高,并沒有明確的定義。在知識本身既不能完全被確定是真,也不能完全被確定是假時,通常是用“可信度”、“概率”等尺度來刻劃;當事實或概念本身的“邊界“或“定義”不明確時,通常是采用“可能性”、“模糊程度”來度量。(3)可表示性。知識可以通過定義的形式加以表示,例如用語言、文字、圖形、公式來表示。正是由于知識的這一特性,才有可能將知識數(shù)據(jù)化,才能用計算機來存儲、處理、傳播和利用知識。(4)可利用性。人們每時每刻都在利用自己所掌握的知識來解決現(xiàn)實世界中的各種問題,如果知識不能被利用,社會就不會進步,世界就不會發(fā)展。2知識的表示在日常生活中,人們是用語言、文字等方式來表達知識,處理問題的。在人工智能領域中知識表示的主要任務是要使計算機“懂得”所表示的知識,便于用程序處理知識。所以這里所說的知識表示指的是知識的符號化并傳送給計算機的過程。它包含兩層含義:(1)用給定的知識結構,按一定的原則,組織和表示知識;(2)解釋所表示的知識的意義。所謂知識表示,就是一種計算機可以接受的對人類智能行為的描述,或者說是一種約定。對智能機器系統(tǒng)而言,就是要采用某種技術模式,把要求解問題的相關知識,變換成為一種便于找到該問題解的數(shù)據(jù)結構。而對知識的表示過程,就是把相關知識變換成某種數(shù)據(jù)結構的過程。知識表示是各種知識工程中的一個核心研究領域,是知識系統(tǒng)中有效地表示知識、運用知識和管理知識的關鍵之一。知識表示作為一個獨立課題來研究始于上世紀60年代中期。在此后曾相繼出現(xiàn)了語義網(wǎng)絡知識表示、謂詞邏輯框架、產(chǎn)生式規(guī)則等知識表示方法。3問題與練習
1.什么是知識?知識有哪些特征、各舉一兩個實例說明。
2.什么是知識表示?有哪些知識表示方法?THEEND知識的表示方法對同一知識,一般都可以用多種方法進行表示,但不同的方法對同一知識的表示效果是不一樣的,因為不同領域中的知識一般都有不同的特點,而每一種表示方法也都有自己的長處與不足。本節(jié)先介紹五種知識的表示方法,關于狀態(tài)空間表示法將在第五章結合智能捜索作介紹。1謂詞表示法命題邏輯與謂詞邏輯是人工智能的兩種基本邏輯,是大多數(shù)知識表示模式的基礎。
1.命題在邏輯上具有非真即假意義的語句稱為命題。如果命題是真實的,稱這種命題為真命題,否則稱為假命題。下面的語句是真命題:
(1)北京是中華人民共和國的首都。
(2)256是整數(shù)。(3)如果兩條直線平行,那么同位角相等。下面的語句是假命題:
(1)雪不是白色的。
(2)3>5。
(3)5是偶數(shù)。下面的語句不是命題:
(1)請勿吸煙!
(2)天氣真好?。?/p>
其中(1)是祈使句,(2)是感嘆句,都沒有確定的真值,因此它們不是命題。因此,命題是可以辨別真假的語句。一般用P、Q、R、…等大寫字母表示命題,分別用“T”與“F”表示命題的真與假。
2.命題公式在給出命題公式的定義之前,先給出命題公式中的連接詞的定義。(1)連接詞。在日常語言中,可以通過“并且”、“或者”、“如果…,則…”等連接詞,將一些簡單的陳述句組成較為復雜的語句成為復合句。類似地,我們通過以下的連接詞,將些簡單命題連接起來,構成一個復合命題,以表示較為復雜的含義?!模ㄟ壿嬇c),它表示被它連接的兩個命題具有“與(并且)”的關系。
∨(邏機或),它表示被它連接的兩個命題具有“或(或者)”的關系?!ㄌN含),P→Q表示“如果P,則Q”,其中P稱為蘊含式的前件(或前提),Q稱為蘊含式的后件(或結論)。
┐(邏輯非),其作用是否定位于它后面的命題。當命題P為真時,┐P為假;當P為假時,┐P為真。由以上連接詞構成的復合命題的真值表如下。PQ┐PP∧QP∨QP→QTTFTTTTFFFTFFTTFTTFFTFFT2產(chǎn)生式規(guī)則表示方法產(chǎn)生式規(guī)則知識表示方法也稱為產(chǎn)生式知識表示法。它是建立在因果關系的基礎上,因此,可以很容易地用來描述事實、規(guī)則及其不確定的度量。它的一般表達方式是:或者其中,P是產(chǎn)生式的前提(或前件),用于指出該產(chǎn)生式可用的條件;Q是一組結論(或后件)。前件和后件也可以是由“與”、“或”“非”等邏輯運算符組合起來的表達式。如果考慮不確定性,則需另加可信度的度量值。P→QIFPTHENQ3與/或樹表示法在現(xiàn)實生活中,人們在解決問題時,經(jīng)常會根據(jù)問題的具體情況,將它們變換成等價的問題去求解;或者將問題分解成幾個較易解決的子問題,然后對這些子問題分別求解。下面以一道平面幾何證明題為例來加以說明:要求證明兩三角形為相似三角形(記為問題S)。4語義網(wǎng)絡表示法語義網(wǎng)絡是由一些“節(jié)點”和連接節(jié)點的“弧”組成。節(jié)點表示各種事物、概念、屬性、狀態(tài)、事件、動作等,而弧則表示它們之間的關系。許多節(jié)點和弧的相互連接就形成了一個網(wǎng)絡,一句話,語義網(wǎng)絡就是通過概念及其語義關系來表示知識的一種網(wǎng)絡圖,它是一個帶標注的有向圖。在語義網(wǎng)絡中,每個節(jié)點可以帶有若干個屬性,以表征其所代表的對象的特性;網(wǎng)絡中的弧則是有方向有標注的,方向用來體現(xiàn)節(jié)點間的隸屬關系,而其上的標注表示被連接的兩個節(jié)點間的某種語義關系。如下所示:5框架表示法
我們走進一間教室之前,就可以想象到這個教室一定四面有墻,有門、窗、天花板和地板,還有黑板、講臺、課桌、坐椅等。盡管你對這個教室的具體細節(jié)如教室的大小、門窗的扇數(shù)等還不清楚,但對教室的基本結構是可以預見的。之所以能夠做到這一點,是由于在以前的實踐活動中,已在頭腦中建立起了有關“教室”這一概念的基本框架。這一基本框架不僅指出了相應事物的名稱(如教室),而且還指出了事物的各方面屬性(如墻、門、窗等),通過對該框架的查找就很容易得到有關教室的特征。在你進入教室之后,經(jīng)觀察得到了教室的大小、門窗的扇數(shù)等細節(jié),把這些數(shù)據(jù)填入到教室框架中,就得到教室框架的一個具體實例,稱為實例框架??梢?,所謂框架表示就是對一個事物、事件或概念屬性的數(shù)據(jù)結構的描述。框架知識表示也可以對應于面向?qū)ο蟮臄?shù)據(jù)結構。下面,通過一個生活中的例子來了解創(chuàng)建框架的具體步驟:王同學是個計算機愛好者,他要去電腦市場購買一臺用于學習的家用計算機。他來到一家電腦公司的攤位前,銷售員李先生問:“你好,請問你打算買什么檔次的電腦呢?我們這里有品牌機,也賣組裝機?!蓖跬瑢W問:“品牌機都有哪幾種?。俊崩钕壬f:“我們主要經(jīng)銷聯(lián)想電腦?!辈PU型號、內(nèi)存、主板、硬盤等情況一一作了介紹。然后王同學根據(jù)介紹的情況選擇了自己的配置,將電腦買回了家。王同學通過李先生對電腦產(chǎn)品知識的介紹,確定了具體的配置清單,購買了產(chǎn)品。我們可以搭建出一個“計算機主要硬件配置組成”的輪廓圖。如圖所示:THEEND不精確知識在日常工作、學習中,需要解決各種各樣的問題,或?qū)Ω鞣N情況作出判斷。但是,由于客觀事件的出現(xiàn)常常伴有隨機性,許多事實或概念本身不完全、不精確,甚至是不確定的;所用的知識加工系統(tǒng)的功能也常常不夠完善。這一切都將造成人們?nèi)粘K莆盏闹R實際上是不精確的。如何根據(jù)問題的環(huán)境和實踐經(jīng)驗,靈活地運用已經(jīng)掌握的不精確知識進行思維和推理,使問題較好地得到解決,這是人們必需探討的。
為了說明知識的隨機性,先來看一個例子。有一種說法:“過了保修期、計算機會出故障。”那么超過了保修期,計算機要么出現(xiàn)故障,要么不出現(xiàn)故障。過多長時間才出現(xiàn)故障,要到故障發(fā)生以后才能知道。這種知識具有的特性是事先就知道有兩種不同的結果,但是到底會發(fā)生哪一種結果,只有到結果發(fā)生時才能確定,這種特性就叫隨機性,具有這種屬性的知識稱為隨機性知識。對于隨機性知識,可以采用可信度來描述其可信的程度,在一般情況下CF是在區(qū)間[-1,1]上取值,CF在[-1,0)中取值反映知識的不可信程度,-1表示知識完全不可信(即知識為假),值越小不可信程度越高;CF在(0,1]中取值反映知識的可信程度,1表示知識完全可信(即知識為真),值越大可信程度越高;0表示對知識的真假無法判斷。為了便于理解,在以下的例子中,限制CF在[0,1]上取值,也就是僅僅考慮知識的可信程度。因此,在這種情況下,一個命題的可信度是指該命題為真的可信程度。例如,在命題:
這楊球賽甲隊取勝(0.9)中,0.9就是命題“這場球賽甲隊取勝”的可信度,它表示“這場球賽甲隊取勝”為真的可信度為0.9。例如,命題“如果烏云密布并且電閃雷鳴,那么天很可能要下暴雨”,可以表示如下:
(1)如果烏云密布并且電閃雷鳴,那么天要下暴雨(0.95)。其中,0.95是對“很可能”的程度的量化描述。
同樣,命題“如果駕車不遵守交通法規(guī)且速度又快,那么大概會出交通事故”,可以表示如下:
(2)如果駕車不遵守交通法規(guī)且速度又快,那么會出交通事故(0.8)。其中,0.8是對“大概”一詞的量化描述。(1)和(2)中的0.95和0.8分別是兩個規(guī)則的可信度。
在基于可信度的不確定性推理模型中,知識可以用產(chǎn)生式規(guī)則的形式表示,知識的不確定性則用可信度CF(A,B)表示,其一般形式是:IFATHENB(CF(A,B))。其中:
(1)A是知識的前提條件或稱為證據(jù)。它既可以是一個簡單的條件,也可以是用AND及OR把多個簡單條件連接起來構成的復合條件,例如:A=A1ANDA2AND(A3ORA4)。(2)B是結論,它可以是簡單的結論,也可以是多個結論通過AND及OR連接起來的復合結論。
(3)CF(A,B)是知識的可信度,它表示由條作A推出結論B的可信程度。
上面的兩個例子可以表示成:
(1)IF烏云街布AND電閃雷鳴THEN天要下集雨(0.95);
(2)IF駕車不遵守交通法規(guī)AND速度又快THEN會出交通事故(0.8)。在日常生活中,還常常出現(xiàn)與事實和概念的模糊性描述相關的知識,人們通常稱之為模糊知識,為了理解什么是模糊知識,下面通過一些例子加以說明。通過前面的學習,我們知道命題要么是真要么是假是在現(xiàn)實生活中,很多命題并不是絕對的真或假。例如,對于如下命題,張三比較胖;
今天的天氣真熱,“張三比較胖”這個命題就具有模糊性,什么樣的體型稱之為胖,并沒有確切的界定;同理,“今天的天氣真熱”這個命題同樣具有模糊性。在一般情況下,人們不能精確判斷具有模糊性的命題的真和假。這種具有模糊性的命題稱之為模糊命題,通常用大寫的字母P.Q.A…表示。一般采用閉區(qū)間[0,1]上的一個實數(shù)值表示一個命題的模糊程度,當這個數(shù)值為1時,命題為真,當這個數(shù)值為0時,命題為假。如果命題“張三比較胖”的模糊程度值是0.8,“李四比較胖”的模糊程度值是0.6,這就反映張三比較胖的程度比李四比較胖的程度要高,因此,我們更有理由相信張三是比較胖的。事實上,模糊性描述可以廣泛應用于謂詞邏輯、產(chǎn)生式規(guī)則、框架和語義網(wǎng)絡等多種知識表示方法中,從而擴充它們的表示范圍和能力。以產(chǎn)生式規(guī)則為例,對于規(guī)則:
如果“患者的頭很疼”而且“患者有高熱”那么“他患了重感冒”。
假設,“患者的頭很疼”的模糊程度值是0.95,“患者有高熱”的模糊程度值是0.8,那么“他患了重感冒”的模糊程度值可以如下計算:u=min{0.95,0.8}0.8,說明患者患重感冒的真實程度比較高。1實踐體驗
1.實驗名稱:體驗專家系統(tǒng)如何進行汽車啟動故障診斷。
2.實驗要求:通過《DiagnosingWhyaCarWon'tStart》以及不精確知識的概念,了解專家系統(tǒng)是如何表示不精確知識的。
3.實驗內(nèi)容:用戶在系統(tǒng)中根據(jù)系統(tǒng)的提示進行事實或知識的選擇,以及相應的可信度選擇。系統(tǒng)在獲取用戶的選擇以后,也就得到用戶提供的事實及其可信度,系統(tǒng)據(jù)此進行推理計算,最后提供相應結論。
4.實驗步驟提示:
(1)訪問網(wǎng)頁:htp:///webesie/car.
(2)在系統(tǒng)的提示下,用戶根據(jù)已發(fā)現(xiàn)的實際情況對選項列表進行選擇。
5.結果呈現(xiàn):系統(tǒng)根據(jù)用戶的選擇進行推理,將診斷的結果呈現(xiàn)給用戶,并作必要的解釋。
6.實驗評價:(1)填寫下表?;顒又黝}運用專家系統(tǒng)診斷汽車故障總計評價指標對事實和可信度做出選擇,并得出運行結果(3分)對事實和可信度作另一種選擇,并得出運行結果(3分)能對系統(tǒng)運行結果進行解釋(4分)評價(2)填寫“學生學業(yè)成長記錄表”。
7.通過因特網(wǎng)運行專家系統(tǒng)示例的步驟:
(1)訪問網(wǎng)頁;
(2)進入《診斷汽車為什么不能啟動》專家系統(tǒng)頁面。
當你發(fā)現(xiàn)自己的汽車不能啟動,你常要與你信任的技師聯(lián)系?!癆uotDiagnosis”提供了一個專家系統(tǒng)的范例,模擬一個人類專家在做咨詢的場景;系統(tǒng)為你診斷汽車的故障和提出接下來怎么做的建議。THEENDProlog程序?qū)嵗谡浇榻BProlog之前,先以最常見的家庭關系為例,闡述如何用Prolog語言來描述這個問題。家庭關系對大家來說是非常熟悉的,但是一般的程序設計語言表達起來就不太方便了。用Prolog語言能較清楚地對家庭關系進行描述。以小明同學的家庭關系為例,小明家里有五口人,父親(小王)、母親(小張)、祖父(老王)和祖母(老李)。他們家的家庭關系可以用下圖表示。1初識Prolog程序由小明的家庭關系圖所示,很容易看出小明家庭中各成員之間的關系。下面給出用Prolog語言表示的家庭關系程序,目的是使同學們對Prolog程序有個初步的總體的認識。表示家庭關系的Prolog程序如下:father(xiaowang,xiaoming)./*小王是小明的父親*/father(laowang,xiaowang)./*老王是小王的父親*/husband(xiaowang,xiaozhang)./*小王是小張的丈夫*/husband(laowang,laoli)./*老王是老李的丈夫*/mother(X,Z):-father(Y,Z),husband(Y,X)./*如果Y是Z的父親、并且Y是X的丈夫,則X是Z的母親*/grandfather(X,Z):-father(Y,Z),father(X,Y)./*如果Y是Z的父親并且X是Y的父親,則X是Z的祖父*/grandmother(X,Z):-grandfather(Y,Z),husband(Y,X)./*如果Y是Z的祖父,并且Y是X的丈夫,則X是Z的祖母*/?-mother(Who1,xiaoming)./*誰是小明的母親?*/?-grandfather(Who2,xiaoming)/*誰是小明的祖父?*/?-grandmother(Who3,xiaoming)./*誰是小明的祖母?*/運行這個程序,計算機便能夠回答我們提出的有關小明家庭關系的問題。例如問,小明的母親是誰?小明的祖母是誰?等等。雖然上面的語句中沒有直接說明,但計算機就會根據(jù)規(guī)則、推理找到答案,小明的母親是小張,小明的祖母是老李,同學們一定會感到自常驚訝,井且非常想知道其中的奧秘。接下來,就讓我們大家走進Prolog語言的殿堂,感受Prolog語言的魅力。2Prolog的基本語句觀察上面的程序,不難發(fā)現(xiàn),程序共有三部分組成。先來研究第一部分的內(nèi)容。
father(xiaowang,xiaoming).
father(laowang,xiaowang).
husband(xiaowang,xiaozhang).
husband(laowang,laoli).
這一部分內(nèi)容在上一章的謂詞表示部分曾學習過在這里,我們把這服分內(nèi)容中的各項叫做事實,這部分內(nèi)容共有4條事實。
1.事實
事實是對某一事物或概念的陳述,一般用來表示對象的性質(zhì)、狀態(tài)或?qū)ο笾g的關系。事實一般形式為:<謂詞名>(參數(shù)1,參數(shù)2,……).
例:color(apple,red)./*蘋果的顏色是紅的*/color(tomato,red)./*西紅柿的顏色是紅的*/
animal(fowl)./*飛禽是動物*/
fruit(X)./*X是水果*/
vegetable(What)./*What是蔬菜*/
其中的參數(shù)可以是常量,也可以是變量。常量是在程序的執(zhí)行過程中其值不能改變的量,一般用小寫英文字母數(shù)字、下劃線等組成的字符串來表示。如,apple,tomato,red,my_book等。變量是指在程序運行過程中其值可以改變的量,一般用大寫字母開頭,使用字母、數(shù)字、下劃線等組成的字符串來表示。如,X,What,Who2等。在描述事實時,要注意:
(1)在Prolog中謂詞名是以小寫英文字母、數(shù)字、下劃線等組成的字符串;如father,color3均為合法的。而像Desk,pen$等是非法的。
(2)參數(shù)之間用“,”號隔開,如color(apple,red).
(3)在Prolog中用句點“.”表示一條事實陳述語句的結束。如father(xiaowang,xiaoming).
2.規(guī)則
觀察描述小明家庭關系的程序,在四條事實的下面有這樣一些語句
mother(X,Z):-father(Y,Z),husband(Y,X).
grandfather(X,Z):-father(Y,Z),father(X,Y).
grandmother(X,Z):-grandfather(Y,Z),husband(Y,X).其中“:-”表示“如果”,“:-”前后各項便是我們上面所述的事實。上面的語句用自然語言來表述如下:
如果Y是Z的父親,并且Y是X的丈夫,那么X是乙的母親。
如果Y是Z的父親,并且X是Y的父親,那么X是Z的祖父。
如果Y是Z的祖父,并且Y是X的丈夫,那么X是Z的祖母。
我們稱此類語句為規(guī)則。
規(guī)則是知識的一種類型,用于表示對象之間的因果關系、蘊含關系成對應關系。
一個規(guī)則由頭和體兩部分組成,頭是“:-”符號的左部,體是“:-”符號的右部,頭和體由符號“:-”相連?!?-”的意思是“如果”,“,”表示“并且”。
規(guī)則的一般形式為:<謂詞名>(參數(shù)):-<謂詞名>(參數(shù)),<謂詞名>(參數(shù))……一條規(guī)則的意義可以解釋為:當體部(前提部分)的各個條件都滿足時,則頭部(結論)成立。例:likes_to_eat(mary,X):-fruit(X),color(X,red)./*如果X是水果,并且是紅色的,則瑪麗喜歡吃X*/friend(X,tom):-likes(X,sports)./*如果X喜歡運動,則X是湯姆的朋友*/在描述規(guī)則時要注意:
(1)在Prolog語言中,如果要說明一個事實依賴于另一個或另一事實時,就可以使用規(guī)則。
(2)若規(guī)則體內(nèi)有兩個或兩個以上事實,且事實之間是“與”的關系,則事實之間用“,”號隔開,例如:celor(X,red),fruit(X).若規(guī)則體內(nèi)事實之間的分隔符是“;”,則表示事實之間為“或”的關系
(3)每條規(guī)則后面也要附上個圓點“.”,作為結束標志。
3.詢問
繼續(xù)觀察小明的家庭關系程序,注意下面的內(nèi)容:
?-mother(Who1,xiaoming).
?-grandfather(Who2,xiaoming).
?-grandmother(Who3,xiaoming).
其中,“?-”表示詢問,是用來表示用戶所提出的問題,這三條語句可用自然語言表示如下:
誰是小明的母親?
誰是小明的祖父?
誰是小明的祖母?詢問(question)是詢問某種關系是否成立的疑問句,是程序運行的目標。
詢問的一般形式為:?-<謂詞名>(參數(shù))…….
例:?-student(xiaoming)./*小明是學生嗎?*/
?-like(mary,music)./*瑪麗喜歡音樂嗎?*/
?-friend(john,X)./*約翰是X的朋友嗎?*/THEENDProlog的工作機理1匹配與回溯方法
1.實例化Prolog中稱無值的變量為自由變量,有值的變量為約束變量。一個變量取了某值就說該變量約束于某值,或者說該變量被某值實例化了。例:mother(Who1,xiaoming).在Who1有值以前,它是自由變量,如果(Who1=xiaozhang),那么我們就說變量Who1約束于xiaozhang,或說Who1被xiaozhang實例化了。2.匹配如果兩個謂詞的名相同,參數(shù)的個數(shù)和類型對應相同,并且對應參數(shù)滿足下面的條件之一,那么這兩個謂詞可以匹配(match)。
(1)如果兩者都是常量,則必須完全相同。
(2)如果兩者都是約束變量,則兩個約束值必須相同。(3)如果其中一個是常量,一個是約束變量則約束值與常量必須相同。
(4)當兩者至少有一個是自由變量。其實匹配是一種操作,這種操作為參加匹配的自由變量和常量,或者兩個自由變量建立一種對應關系,將常量作為對應變量的約束值,使兩個對應的自由變量始終保持一致。如果其中一個被某值實例化,那么另一個也被同一值實例化;反過來說,如果其中一個被解除約束,則另一個值的約束也被解除。上面例子中每對謂詞均可以匹配。對于含有自由變量的謂詞表示,如Bame(X),它與game(xijizhengba).匹配的結果是自由變量X被常量xijizhengba實例化。再如color(Y)與color(Z),匹配的結果是,當自由變量Y和Z中的一個被某值約束,如Y被apple實例化,則Z也被apple實例化。
3.回溯大家可能玩過走迷宮的游戲,在走迷官的過程中,我們就經(jīng)常用到回溯。讓我們通過個走迷官的例子來解釋回溯這個概念。
迷宮如圖所示,迷宮的左下角有一只的猴子,它想吃到迷宮右上角的香蕉。下面的圖記錄了猴子找到香蕉的過程。在這里畫的幾幅圖是搜索與回溯過程的示例。由這組示意圖可以看出,猴子通過搜索(例如按左手法則,沿左邊的阻擋墻前進)和回溯(在碰壁時往回退)來完成尋找香蕉的過程。圖中帶有箭頭的黑線是搜索路線,紅色帶箭頭的線是回溯路線。在Prolog中,回溯是在程序目標確定后,Prolog就會從上到下,從左到右地在程序中搜索能匹配的事實和規(guī)則。在搜索過程中,當某條事實或規(guī)則無法滿足目標時,Prolog會繼續(xù)搜索其他能滿足目標的事實或規(guī)則,進行掃描實例化和匹配等操作,目的是努力找到程序的一個或多個解。2Prolog程序的運行過程
Prolog程序的運行過程是從詢問語句出發(fā),不斷的進行實例化、匹配、有時還需要回溯,直到目標被完全滿足成最終不能滿足時為止。
以家庭關系程序為例,考察它的運行過程,目的是了解Prolog是怎樣分清家庭成員間關系的。father(xiaowang,xiaoming).father(laowang,xiaoming).
husband(xiaowang,xiaozhang).
husband(laowang,laoli).
mother(X,Z):-father(Y,Z),husband(Y,X)
grandfather(X,Z):-father(Y,Z),father(X,Y).grandmother(X,Z):-grandfather(Y,Z),husband(Y,X).?mother(Who1,xiaoming).?grandfather(Who2,xiaoming).
?grandmother(Who3,xiaoming).
Prolog運行過程:首先從目標出發(fā),即先執(zhí)行第8條語句?-mother(Who1,xiaoming).(誰是小明的母親?)求解目標為Mother(Who1,xiaoming).系統(tǒng)對程序進行掃描,尋找能與目標謂詞匹配的事實或規(guī)則頭部。顯然,程序中前面的四條事實均不能與目標匹配,而第5個語句的左端,即規(guī)則。mother(X,Z):-father(Y,Z)husband(Y,X).的頭部可與目標謂詞匹配。又因為這個語句是一個規(guī)則,所以,要使其結論(頭部)成立,其前提(體部)必須全部為真。于是,對原目標的求解轉(zhuǎn)化為對新目標。father(Y,Z),husband(Y,X).的求解。由于規(guī)則頭部與目標謂詞匹配的結果是Z被xiaoming實例化,即Z=xiaoming。因此程序運行到此處是對子目標father(Y,xiaoming)和husband(Y,X)求解。子目標的求解過程與主目標完全一樣,也是從頭對程序進行掃描,不斷進行匹配,直到匹配成功或掃描完整個程序為止。對于第一個子目標father(Y,xiaoming)的求解,子目標與程序中的第1句事實匹配成功,Y被實例化為xiaowang。于是Prolog接著求解第二個子目標husbnd(Z,X)。由于變量Y被實例化為xiaowang,則第二個子目標實際上已變成了husband(xiaowang,X),這樣,第二個子目標與第三條語句匹配成功,同時X被實例化為xiaozhang.由于兩個子目標都求解成功,所以原目標mother(Whe1,xiaoming)也匹配成動,自由變量Who1被實例化為xiaozhang。于是Prolog回答:Who1=xiaozhang.3問題與練習
1.根據(jù)求解第一個目標的過程來分析第二和第三個詢問的求解過程。2.假設一個Prolog程序包括以下語句
thriftier(carol,john).
thriftier(bill,sue).thriftier(sue,carol).thriftier(X,Z):-thriftier(X,Y),
thriftier(Y,Z).
要求從下面的目標中選擇可以產(chǎn)生的結果
a.thriftier(sue,V).
b.thriftier(U,carol).c.thriftier(U,V).THEENDProlog程序設計1走近TurboProlog
1.TurboProlog2.0的安裝和運行
將TurboProlog文件包復制到硬盤某一目錄位置,如C盤根目錄下,C:\prolog。在此目錄下,找到prolog.exe,雙擊該文件,便會進入TurboProlog編程環(huán)境,TurboProlog2.0用戶界面如圖所示。2.TurboProlog用戶界面簡介菜單欄(Menu)包括:Files(文件)、Edit(編輯)、Run(運行)、Compile(編譯)、Options(選項)、Setup(設置)等六項,使用ESC鍵或F10鍵可以激活菜單,用左右光標鍵選擇菜單項,按“Enter”鍵或向下光標鍵調(diào)出相應菜單項的下級子菜單。
編輯區(qū):用于輸入prolog程序源代碼。
信息窗:用于顯示用戶操作及程序運行的信息。
對話窗:用于實現(xiàn)人機交互及輸出結果。2與TurboProlog面對面通過前面的學習,我們對TurboProlog有了初步的認識。下面就來學習TurboProlog的實際使用方法。
1.輸入Prolog程序
首先,把寫好的程序輸入到計算機里,具體做法是:
(1)輸入文件名。按F10鍵,移動光標至File菜單,按“Enter”鍵,選Load菜單項,按“Enter”鍵(以上幾個步驟可用直接按下快捷鍵F3來替代)。此時會彈出一個對話框,要求你輸入程序的名字,如(文件名的命名是隨意的,但要符合文件名命名的標準,否則為非法文件名),輸入完畢后按“Enter”鍵。(2)在編輯區(qū)輸入編寫好的Prolog程序。(3)程序存盤,按F10鍵,移動光標至File菜單,按“Enter”鍵,選擇Save菜單項,按“Enter”鍵(以上幾個步驟可用直接按下快捷鍵F2來替代)。這樣就可以把自己寫的prolog程序存儲到計算機硬盤上。2.編譯Prolog程序3.運行Prolog程序4.退出Prolog程序3TurboProlog程序當我們按以上步驟把自己編寫的程序輸入計算機中后,在編譯的過程中會給出出錯提示(即出現(xiàn)Illegalkeyword)。這是因為在前面所編寫的Prolog程序并不能直接在TurboProlog環(huán)境中運行。TurboProlog有自己的程序結構,只有符合TurboProlog程序結構的程序才可以在此環(huán)境中運行,因此還需要按照TurboProlog程序結構的要求對上面的程序進行修改。在修改程序以前,大家先要了解TurboProlog的程序結構。
一個完整的TurboProlog程序(2.0版)一般包括常量段、領域段、數(shù)據(jù)庫段、謂詞段、目標段和子句段等六個部分。各段以其相應的關鍵字constants、domains、database、predicates、goal和clauses開頭加以標識。在程序的任何位置都可設置注釋。一個完整的TurboProlog(2.0版)程序的結構如下:
/*<注釋>*/constants
<常量說明>
domains
<域說明>
database
<數(shù)據(jù)庫說明>predicates
<謂詞說明>
clauses
<子句語句>goal
<目標語句>在Prolog中,稱程序目標段中的目標為內(nèi)部目標。其實,我們也可以在程序運行時臨時給出目標,即在程序中沒有目標段,那么程序運行時,對話框內(nèi)會提示用戶輸入目標。這時輸入的目標稱為外部目標。THEEND用Prolog求解簡單問題1基本算術運算加減、乘除是基本算術運算能不能用Prolog求解算術問題呢?答案是肯定的。TurboProlog不僅提供了加減乘除四種運算,還提供了取模運算。運算符號依次為+-*/和mod,我們可以利用這些運算符進行數(shù)值計算。例:從鍵盤輸入兩個整數(shù),用X和Y表示,分別求出X+Y、X-Y、X*Y和X/Y的值。程序如下:goalreadint(X),
/*從鍵盤上讀取一個整數(shù),然后約束給變量X*/readint(Y),Z1=X+Y,/*求兩個整數(shù)的和*/write(X,"+",Y,"=",Z1),nl,/*將所求的和顯示在屏幕上*/Z2=X-Y,write(X,"-",Y,"=",Z1),nl,Z3=X*Y,write(X,"*",Y,"=",Z1),nl,Z4=X/Y,write(X,"/",Y,"=",Z1),nl.在程序中,我們用到了內(nèi)部謂詞readint(X),功能是從鍵盤上讀取一個整數(shù),然后約束給變量X。還有內(nèi)部謂詞write(X1,X2…Xn),功能是把Xi(i=1,2,…,n)的值顯示在屏幕上。運行此程序,結果如圖所示。2遞歸
1.遞歸的定義首先請大家分析下面的程序,這個程序的功能是什么?此程序的規(guī)則有什么特點?domains
C=char
predicates
read_one_char.
goal
read_one_char.
clausesread_one_char:-readchar(C).
write(C)read_one_char.
2.漢諾塔(Hanoi)問題求解(1)問題描述。相傳古代東方有一座寺廟,廟內(nèi)有三根座樁,第一根本樁上疊有一摞64個中心帶孔、從上到下直徑自小到大各不相同的圓盤片。這些圓盤片疊成塔狀,即越上面的盤片直徑越小。要把這64個盤片從第一根座樁搬到第三根座樁上(如圖),搬動的規(guī)則如下:
①一次只能從有盤片的座樁上取走一個盤片;
②被取走的盤片必須馬上放到某一根座樁上;
③任何一根座樁上如果有一個以上盤片,則這些盤片必須呈直徑上小下大的塔狀。向應如何搬動?3實踐體驗
1.實驗名稱:調(diào)入并運行Hanoi程序。2.實驗要求:將Hanoi程序調(diào)入到TurboProlog2.0集成開發(fā)環(huán)境進行編譯連接和運行程序。3.實驗步驟:
(1)在計算機上找到并運行TurboProlog2.0集成開發(fā)環(huán)境。
(2)將Hanoi程序調(diào)入到編輯區(qū)(利用Load菜單項,在彈出對話框內(nèi)輸入“”)。
(3)編譯和連接Hanoi程序。
(4)運行Hanoi程序,并觀察記錄運行結果。4.結果呈現(xiàn):改變Hanoi程序中盤子的數(shù)目,并記錄運行結果。5.實驗評價:
(1)填寫下表?;顒又黝}調(diào)入并運行Hanoi程序總計評價指標調(diào)入Hanoi程序(3分)編輯和連接(4分)運行并記錄結果(3分)評價THEEND專家系統(tǒng)概述本節(jié)主要學習專家系統(tǒng)發(fā)展的簡單歷史回顧和專家系統(tǒng)的基本特征,以便對它有一個概念性的了解。1專家系統(tǒng)發(fā)展的歷史簡述世界上第一個專家系統(tǒng)DENDRAL是由E.A.費根鮑姆(E.A.Feigenbaum)等人于1968年研制成功的,該系統(tǒng)能夠解釋化合物分子結構。人們在總結以往人工智能通用問題求解系統(tǒng)的成功與失敗的經(jīng)驗基礎上,運用化學領域的專門知識,通過質(zhì)譜圖和其他化學試驗數(shù)據(jù)的分析來推算未知化合物可能存在的結構,并用lnterLisp語言來實現(xiàn)它,所以它是一個有機化合物結構分析的專家系統(tǒng)。至今,世界各國已在化學、數(shù)學、物理、生物、醫(yī)藥、農(nóng)業(yè)、氣象、地質(zhì)勘探、軍事、工程、法律、商業(yè)、空間技術和計算機科學等眾多領域開發(fā)了成千上萬個專家系統(tǒng),其中不少成果能達到相當高的水平,在實際應用中產(chǎn)生了巨大的效益。早期的專家系統(tǒng)是采用通用編程語言(如FORTRAN、Paseal、C等)和人工智能語言(如LlSP、Prolog等),由人工智能專家與相關領域?qū)<液献?,直接編程并實現(xiàn)的,所以它們的研制周期長、難度大,但是靈活實用。當今,大部分專家系統(tǒng)的開發(fā)都使用專門的開發(fā)工具,從而為專家系統(tǒng)在各領域的廣泛應用開辟了前景。專家系統(tǒng)的發(fā)展經(jīng)歷了幾個階段。第一階段開發(fā)的專家系統(tǒng)的特點是高度專業(yè)化,求解專門問題的能力強。但在體系結構、功能的完整性、可移植性方面還存在不少缺陷,其代表作品是分析有機化合物結構的專家系統(tǒng)DENDRAL和具有廣泛的代數(shù)處理能力的專家系統(tǒng)MACSYMA等;第二階段的典型作品有MYCIN(診斷和治療感染性疾病的專家系統(tǒng))、CASNET(診斷和治療青光眼的專家系統(tǒng))、PROSPECTOR(處理硬巖石礦物勘探問題的專家系統(tǒng))和HEARSAY(具有語言理解能力的專家系統(tǒng))等。它們屬于單學科專業(yè)型、應用型系統(tǒng),其體系結構較完整,可移植性方面也有所改善,在人機接口、解釋機制、知識獲取技術、應用不精確推理技術、推理方法的啟發(fā)性、通用性等方面都有較多改進:第三階段開發(fā)的專家系統(tǒng),如大型專家系統(tǒng)HP80等,屬多學科綜合型應用系統(tǒng)。它們采用多種人工智能語言,綜合應用各種知識表示方法和多種推理機制及控制策略,運用框架系統(tǒng)和專家系統(tǒng)開發(fā)環(huán)境及工具來研制大型綜合專家系統(tǒng)。與此同時,各種小量實用的專家系統(tǒng)也像雨后春筍般被開發(fā)和應用。2專家系統(tǒng)的基本特征專家系統(tǒng)與傳統(tǒng)的計算機程序有著不同的體系結構。通常由知識庫(knowledgebase)、推理機(inferenceengine)、綜合數(shù)據(jù)庫、知識獲取機制、解釋機制、和人機接口等幾個基本的、相對獨立的部分組成。專家系統(tǒng)體系結構隨其規(guī)模大小、所屬類型和功能要求的不同而有所差異。專家系統(tǒng)的基本特征是:
(1)具有特定領域內(nèi)專家水平的專門知識;
(2)具有對知識及數(shù)據(jù)的符號處理能力;
(3)具有運用專業(yè)知識和經(jīng)驗進行啟發(fā)式推理的能力;(4)具有解釋功能,并能交互式地回答“有什么?”“為什么?”“如何?”等問題;
(5)具有獲取知識的能力,并能確保知識庫中的知識不斷充實和豐富;
(6)在結構上,知識(存儲在加識庫中)與知識處理機構彼此分開、互相獨立;
(7)具有運用不確定(或不精確)知識進行推理的能力。3問題與練習
1.開發(fā)專家系統(tǒng)的目的是什么?2.專家系統(tǒng)與傳統(tǒng)的問題求解程序有何區(qū)別?3.專家系統(tǒng)有哪些基本特征?THEEND專家系統(tǒng)框架1專家系統(tǒng)發(fā)展的歷史簡述下面通過一個專家系統(tǒng)的工作過程讓同學們能夠直觀地了解什么是專家系統(tǒng)。MYCIN是一個診斷有關細菌感染方面的專家系統(tǒng),于1976年在美國研制成功。MYCIN能夠根據(jù)病人的癥狀、病史和化驗結果等等,來判斷一個病人是否感染某種細菌,在確診引起感染的細菌后MYCIN就會開出幾個可供選擇的處方。例:泰勒(簡稱泰)是一位內(nèi)科醫(yī)生。某天,他請求MYCIN來幫助診斷前一天動過手術的病人史密斯先生是否患了感冒。于是,他向MYCIN(以下用字母M表示)請教。MYCIN還會繼續(xù)詢問勒醫(yī)生,直到它獲得充分的診斷信息。最后MYCIN提出了6種可能引起感染的細菌,并開出兩張治療建議處方供泰勒選擇。從上述MYCIN和泰勒醫(yī)生的簡單對話以及治療建議可以看到專家系統(tǒng)的工作過程。MYCIN詢問了泰勒醫(yī)生有關病人的一些常規(guī)資料以及相關的醫(yī)學檢驗的結果,我們知道這些事實是醫(yī)生診斷和醫(yī)治疾病的必要信息。問題是專家系統(tǒng)用什么方式來完成上述工作?
首先,專家系統(tǒng)通過人機的交互界面與泰勒醫(yī)生交流病員的信息;然后,系統(tǒng)運用專家的知識來分析所獲取的信息(在這個過程中系統(tǒng)還可能繼續(xù)詢問泰勒醫(yī)生有關病員的進一步信息):接著,系統(tǒng)將會提供分析的結論,也就是診斷信息以及醫(yī)療處方建議。在系統(tǒng)與泰勒醫(yī)生交互信息以及系統(tǒng)在提供診斷和醫(yī)療信息的過程中,泰勒醫(yī)生有可能會向系統(tǒng)招問:“為什么(Why)需要提供這些信息?”“你是怎樣(How)得出這些診斷結論的?”在這樣的情況下,系統(tǒng)還需要針對這些提問給出解釋。由此,我們還可以想象,MYCIN若是一個既聰明又富有經(jīng)驗的醫(yī)療專家,那么它必須擁有醫(yī)療專家的豐富學識和經(jīng)驗,而且在診治病員的過程中還會逐步地積累和擴充經(jīng)驗,提高自己的水平,增強自己的能力,這是專家系統(tǒng)所應具有的學習能力。2專家系統(tǒng)的基本結構綜合上述對MYCIN工作過程的分析,可以給出專家系統(tǒng)的典型結構如圖所示,它是由若干個模塊組成的。在這里我們分別介紹各個模塊的基本功能,使同學們對專家系統(tǒng)的結構有初步的了解。
1.知識庫知識庫實際上是一個專業(yè)知識的存儲機構,它存放著一定形式表示的專家知識、經(jīng)驗和相關的書本知識以及常識。知識庫中的知識通過知識獲取機構從知識源獲得。它為推理機提供求解問題所需的知識。2.推理機推理是指從存在的事實推出新的知識。推理機是一組程序,用來控制、協(xié)調(diào)整個系統(tǒng)的運行。它的功能是模擬領域?qū)<业乃季S過程,控制并執(zhí)行對問題的求解。它根據(jù)當前輸入的數(shù)據(jù)(如患者的癥狀、一組地質(zhì)數(shù)據(jù)、一幅波形圖等等)中,利用知識庫中的知識,按一定的推理方法和控制策略進行推理,直到提出解決當前問題的建議方案。3.知識獲取機構知識獲取也稱為學習功能,它是建造和設計專家系統(tǒng)的關鍵。它的基本任務是為專家系統(tǒng)獲取知識,建立起健全、完善和有效的知識庫,以滿足求解領域問題的需要。知識獲取一般是由知識工程師與專家系統(tǒng)中的知識獲取機構共同完成的。知識工程師負責從領域?qū)<夷抢铽@取知識,并用適當?shù)姆椒▽⑺@得的知識表示出來;知識獲取機構負責將知識轉(zhuǎn)換為計算機可以儲存的內(nèi)部形式,然后將它們存入知識庫在存儲過程中要對知識進行一致性、完整性的檢測。4.人機接口人機接口是專家系統(tǒng)與領域?qū)<摇⒅R工程師和一般用戶之間進行交互的界面,它由一組程序及相應的硬件組成,用于完成輸入輸出工作。專家系統(tǒng)一般要求有良好的人機接口。因為知識獲取機構通過人機接口與領域?qū)<液椭R工程師進行交互,通過人機接口輸入專家的知識完成對知識庫的更新、完善和擴充;推理機通過人機接口與用戶交互,在推理過程中,系統(tǒng)根據(jù)需要會不斷地向用戶提問,以得到相應的事實數(shù)據(jù),在推理結束時會通過人機接口向用戶顯示結果;解釋機構通過人機接口與用戶交互,向用戶解釋推理過程,回答用戶問題。
5.綜合數(shù)據(jù)庫綜合數(shù)據(jù)庫用于存儲用戶提供的初始事實和推理過程中得到的各種中間信息和最終結果信息,也就是存放用戶提供的事實、已知的事實和由推理得到的事實,通俗地說,綜合數(shù)據(jù)庫用以存放專家系統(tǒng)當前處理對象的一些事實。
6.解釋機構
解釋機構的主要功能是解釋系統(tǒng)本身的推理結果,回答用戶的問題。它是由一組程序組成,能夠跟蹤并記錄系統(tǒng)的推理過程。當用戶提出詢問,要求對系統(tǒng)得到的結果給出解釋時,它將根據(jù)問題的不同要求分別給出適當?shù)奶幚?,最后將解答通過人機接口輸出給用戶。事實上,專家系統(tǒng)是一組計算機程序,它能夠利用存儲于計算機中的關于某個領域的專門知識,運用合適的推理方法來完成相應領域中需要依靠人類專家才能完成的工作。在專家系統(tǒng)中,如何組織和表示領域的專門知識,這在以前的章節(jié)(知識的表示方法)中我們已經(jīng)介紹了。本章將通過具體的專家系統(tǒng),來了解專家系統(tǒng)中相關知識的組織結構和它的工作原理。THEEND兩個簡單專家系統(tǒng)的例子1用于物品裝袋的專家系統(tǒng)BAGGER
BAGGER是一個綜合性的專家系統(tǒng),該系統(tǒng)通過機器人來進行工作。假定我們要求機器人模仿超市營業(yè)員完成物品裝袋的動作。我們先不要求機器人采用的裝袋方法是最佳的,但是希望它具有簡單的物品裝袋的專門知識。例如,大瓶的可樂要放在袋底但每袋中放置的可樂不可過多;冰淇淋要用冷藏袋保護;要先放置好大
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 辦公自動化中的節(jié)能減排技術應用案例分享
- 醫(yī)療領域中區(qū)塊鏈技術的安全透明實踐
- 十二指腸先天性狹窄的臨床護理
- 企業(yè)級應用如何通過區(qū)塊鏈確保商業(yè)版權的完整性
- 個人提成合同范例
- 醫(yī)療信息透明化進程中的區(qū)塊鏈技術作用
- 醫(yī)療AI引領健康管理新潮流
- 代購入駐合同標準文本
- 區(qū)塊鏈賦能投票系統(tǒng)教育領域的創(chuàng)新實踐
- 匠心獨運教育領域的創(chuàng)新實踐與現(xiàn)代審美融合
- 華為服務采購流程
- 油氣管道安全監(jiān)測技術
- JGT312-2011 遇水膨脹止水膠
- 高中化學新課標下大單元教學設計
- 高中生社區(qū)服務、生社會實踐活動記錄表
- 園林景觀工程設計任務書范本
- 美團外賣騎手獎罰制度
- 文物鑒賞講義-課件
- 個體工商戶轉(zhuǎn)讓協(xié)議書
- 【淺析汽車發(fā)動機的維護與保養(yǎng)4600字(論文)】
- 數(shù)學中的整體思想
評論
0/150
提交評論