本書共分10章,每章包含知識要點、案例分析、思考題及習題。第1章是緒論,概要介紹人工智能研究內容及應用領域、發展動態;第2章概述命題邏輯、謂詞邏輯、歸結推理、產生式系統、語義網絡、框架、腳本等知識表示和推理方法;第3章討論一般搜索技術,概述了盲目搜索、啟發式搜索、問題歸約和AND-OR圖啟發式搜索、博弈等方法和技術;第4章討論高級搜索,包括爬山法搜索、模擬退火搜索、遺傳算法;第5章討論不確定知識表示和推理;第6章討論智能體和多智能體系統;第7章討論自然語言處理技術;第8章討論機器學習和神經網絡;第9章討論智能規劃;第10章討論機器人學。并將通過網站提供習題解析、實驗工具平臺和參考答案代碼。
人工智能是計算機科學的一個分支,是一門研究機器智能的學科,即用人工的方法和技術研制智能機器或智能系統來模仿、延伸和擴展人的智能,實現智能行為。參考文獻\[2\]給出了有代表性的人工智能的8種定義(如表1所示)。該表按上下、左右兩個維度排列,上面4個定義關注思維過程與推理,下面4個定義則強調行為。左側的定義根據與人類表現的逼真度來衡量成功與否,右側的定義則依靠一個稱為合理性的理想表現量來衡量。一個系統若能基于已知條件“正確行事”,那么它就是合理的。
表1 組織成四類的人工智能的若干定義像人一樣思考 合理地思考 “使計算機思考的令人激動的新成就……按完整的字面意思就是:有頭腦的機器”(Haugeland,1985) “與人類思維相關的活動,諸如決策、問題求解、學習等的‘自動化’”(Bellman,1978) “通過使用計算模型來研究智力”(Charniak & McDermott,1985) “使感知、推理和行動成為可能的計算的研究”(Winston,1992)像人一樣行動合理地行動 “創造能執行一些功能的機器的技藝,當由人來執行這些功能時需要智能”(Kurzweil,1990) “研究如何使計算機能做那些目前人比計算機更擅長的事情”(Rich和Knight,1991) “計算智能研究智能體的設計”(Poole等人,1998) “AI……關心人工制品中的智能行為”(Nilsson,1998)人工智能一般可分為符號智能和計算智能。符號智能是傳統人工智能,它以物理符號系統為基礎,研究知識表示、獲取、推理的過程。運用知識解決問題是符號智能基本、重要的特點。20世紀80年代興起的知識工程側重研究知識信息處理的方法和技術,促進了人工智能的發展。計算智能以數據為基礎,包括神經計算、模糊系統、遺傳算法、進化規劃等。20世紀90年代興起的智能信息處理反映了這種綜合、交叉的研究趨勢。進入21世紀以來,其在機器學習、知識發現、多智能體系統、互聯網智能等方面取得了許多重要的進展。
典型應用概述人工智能的長期目標是建立人類水平的人工智能。人工智能誕生60年來,在崎嶇不平的道路上取得了可喜的進展,特別是給與機器學習、數據挖掘、計算機視覺、專家系統、自然語言處理、規劃和智能機器人等相關的應用帶來了良好的經濟效益和社會效益。廣泛使用的互聯網應用知識表示和推理,構建語義Web,提高了互聯網信息的利用率。信息化的必然趨勢是智能化,智能革命將開創人類后文明史。如果說蒸汽機創造了工業社會,那么智能機也能實現社會生產的自動化和智能化,促進知識密集型經濟的大發展。近年來,人工智能界引人關注的熱點不斷,如:
●2015年7月26~27日,中國人工智能大會(CCAI 2015)在北京召開。李德毅院士報告的“腦認知的形式化”,講述了腦認知的神經學方法與物理學方法,指出人腦成長的認知性和社會性,提出了腦認知如何度量的問題;在腦認知的形態上認為記憶認知、計算認知、交互認知是關鍵,腦認知的核心是記憶認知;報告著重介紹了機器駕駛腦的形式化及其實現思路,劃分為感知、認知、行為三個階段;報告還闡述了機器駕駛腦形式化的普適性,并提出了腦科學和人工智能交叉研究載體的建議。大會設置了機器學習與模式識別、大數據的機遇與挑戰、人工智能與認知科學、人工智能與機器人的未來共四場主題論壇。
●李國杰院士在《中國計算機學會通訊》2015年第8期的主編評語中指出:“我們是不是可以從更新、更寬廣的角度思考機器學習和類腦計算。”文中提及美國工程院院士霍金斯的觀點:大腦不是“計算”出問題的答案,而是從記憶中提取答案。霍金斯猜想:智能的本質是“預測”,并據此提出了智能的“記憶預測框架”。
●美國武裝部隊研發出一套人工智能界面,能夠幫助識別和分類大量的圖片,并協助軍方尋找潛在的恐怖襲擊等威脅。在面對龐大的互聯網圖片資源時,軍方想要的不單單是識別,還需要極高的識別精確度和準確的分類。它強大的地方莫過于能夠處理龐大的圖片數據庫,識別圖片的內容,然后根據內容將所有圖片分類(智能界,2015-07-07)。
●語音將再度流行。語音正是我們同我們的互聯家庭進行互動的完美途徑。“想象一個場景,你問你的雨傘今天是否會下雨,是否應該帶它出門,而你的雨傘回答道,‘當然應該帶上我,今天會下雨!’這是一件多么酷的事情。”澳大利亞的維斯認為,機器視覺技術將重新迸發活力,并應用到人們的智能手機中。他舉例說,如果你打算帶一瓶酒去參加圣誕節的百樂餐,拿出手機就可以捕捉這瓶酒的圖像,然后通過視覺搜索就能夠得到關于這瓶酒的所有信息,它比文本搜索的準確率高出30%,這將是一種美妙的體驗。維斯表示,智能手機的機器視覺將能夠比人類更好地識別圖像(中國信息產業網,2015-6-30)。
●人工智能與其他商業模式將更加緊密地結合。微軟“小冰”是一款人工智能機器人,通過大數據、深度神經網絡等技術,超越簡單人機對話的自然交互。“小冰”的人機對話輪數可達到23,即每次與用戶的對話平均可持續23輪。以往人工智能的內容100%來自搜索引擎大數據構建系統內容,但現在“小冰”已有45%的對話能力來自人機交互中的自我完善和自我學習(新華社,2015-8-21)。
●IBM開發了一款基于云計算的人工智能文本分析工具(Tone Analyzer),能對電子郵件、博客文章以及手機短信進行感情色彩分析,以確定它的措辭是否如實地表達了你的憤怒、肯定、高興或者悲傷等感情。這一試驗性的功能或將改變未來商家和營銷人員同消費者、客戶的溝通方式(2015-7-20)。阿根廷研究人員開發出一種基于西班牙語的人工智能程序(名為“人格洞察力”),可以分析被測試者的微博、論壇帖子、社交網站的評論或者公開演講,然后與心理學模型所提供的100個參數進行相關度比對,從而描繪被測試者的人格特征(新華社,2015-8-13)。
●2015世界機器人大會于2015年11月23~25日在國家會議中心(北京)舉行,由2015世界機器人論壇、2015世界機器人博覽會、2015世界青少年機器人邀請賽三大板塊組成。大會圍繞世界機器人研究和應用重點領域以及智能社會創新發展,開展高水平的學術交流和新成果展示。邀請賽包括WRO常規賽和VEX機器人工程挑戰賽。
●2015年10月,由GoogleDeepMind開發的人工智能圍棋程序AlphaGo(阿爾法狗)以5∶0戰勝歐洲圍棋冠軍樊麾。2016年3月15日,AlphaGo以4∶1戰勝世界圍棋冠軍李世石。
●AlphaGo開發出了自我學習的功能。它初通過模仿人類玩家,在達到一定熟練程度之后,可以通過與自己對弈來提升棋力。同時,AlphaGo使用蒙特卡洛樹搜索,借助值網絡與策略網絡這兩種深層神經網絡合作挑選棋步。通過值網絡來計算局面,評估大量選點,拋棄某些線路,并通過策略網絡選擇落點,從而將計算量控制在計算機可完成的范圍內。
我們相信,人工智能必將對人類和社會走向智能化起到積極作用。本書特色隨著智能時代的到來,“人工智能”課程將煥發出越來越旺盛的生命力。傳統的“人工智能”課程偏重理論,隨著智能技術的不斷發展,在課程中強化實踐內容,理論與實踐相結合成為課程發展的主要趨勢。為此,我與國防科技大學毛新軍教授、武漢工程大學張彥鐸教授等人一起撰寫了本書。希望讀者在學習理論的同時,通過習題、課程大作業掌握人工智能的基本方法,并能將其用于解決實際問題。
本書共分10章,每章包含四方面的內容,一是知識要點,二是案例分析,三是習題解析(因為篇幅問題,解析部分將作為教輔資料提供,使用本書的師生可從華章網站www.hzbook.com下載),四是思考題。第1章是緒論,從人工智能的認知問題出發,介紹本書撰寫的指導思想,簡要介紹人工智能的研究內容及應用領域、發展動態,案例包括SP先生謎題、NIM問題。第2章討論知識表示和推理,概述命題邏輯、謂詞邏輯、歸結推理、產生式系統、語義網絡、框架、腳本等知識表示和推理方法,介紹了基于知識系統的框架,案例分析包括傳教士和野人問題、量水問題、漢諾塔問題、一個基于邏輯的財務顧問、電路領域的知識工程。第3章討論一般搜索技術,概述了盲目搜索、啟發式搜索、問題歸約和AND-OR圖啟發式搜索、博弈等方法和技術,案例分析包括八皇后問題、洞穴探寶、五子棋等。第4章討論高級搜索,內容包括爬山法搜索、模擬退火搜索、遺傳算法,案例分析分別介紹應用爬山算法、模擬退火算法和遺傳算法求解旅行商問題。第5章討論不確定知識表示和推理,概述了非單調邏輯、主觀Bayes方法、確定性理論、證據理論、模糊邏輯和模糊推理,案例分析包括有經紀人的交易、小型動物分類專家系統。第6章討論了智能體和多智能體系統,概述了智能體與多智能體系統的概念與示例、智能體的體系結構、智能體間的交互與協同、多智能體系統的應用,介紹了多智能體系統的實現方式和多智能體系統開發框架JADE,重點對火星探礦機器人進行了案例分析。第7章討論自然語言處理技術,概述了詞法分析、句法分析、語義分析、大規模真實文本的處理技術,重點介紹了信息搜索、機器翻譯、語音識別技術,案例分析包括在線漢英互譯舉例分析、單詞音節劃分、人民日報的詞頻統計、中文語句自動分析、美國地理信息查詢系統。第8章討論機器學習和神經網絡,主要介紹基于符號的機器學習方法(包括機械學習、歸納學習、決策樹學習、基于范例的學習、解釋學習、強化學習)和基于神經網絡的學習,案例分析包括感知器分類、非線性可分的分類問題、基于反向傳播網絡擬合曲線。第9章討論智能規劃,概述了狀態空間搜索規劃、偏序規劃、命題邏輯規劃、分層任務網絡規劃、非確定性規劃、多智能體規劃,案例分析包括Shakey世界和規劃問題的建模與規劃系統的求解過程。第10章討論機器人學,概述了機器人的分類、特性及研究領域、應用與展望,介紹了機器人系統、機器人的編程模式與語言,對機器人足球進行了案例分析。本書既可作為課程教材單獨使用,也可與其他人工智能教材(如《人工智能》(第2版)》(參考文獻\[1\]等)配套使用。
本書給出了27個問題的案例分析,設計了50道思考題。思考題的設計參考了《人工智能:一種現代的方法(原書第3版)》(參考文獻\[2\])、《中國計算機學會通訊》、中國計算機學會“技術動態”等資料,特此致謝。
本書第3、4、9、10章由張彥鐸、蔡敦波撰寫,第6章由毛新軍撰寫,鄭笛撰寫了第7章習題及解析和案例分析部分,其余各章(包括第3章案例分析及部分習題和解析)由賁可榮撰寫。全書由賁可榮統稿。張獻繪制了部分圖形并開發了NIM問題程序,王求真開發并實現了第6章的案例軟件,一并致謝。
撰寫本書是一項具有挑戰性的工作,許多問題沒有標準答案,因此本書的答案只能看成參考答案。毛新軍教授為本教材建立了網站,名稱為“人工智能實踐教程社區”。我們將通過網站提供實驗工具平臺、參考答案代碼,歡迎讀者提出寶貴意見,并在網站討論專區參與討論。
賁可榮
前言
教學建議
第1章 緒論1
1.1 人工智能的基本概念1
1.2 人類智能與人工智能1
1.3 人工智能各學派的認知觀3
1.4 人工智能的研究與應用領域4
1.4.1 智能感知4
1.4.2 智能推理6
1.4.3 智能學習8
1.4.4 智能行動10
1.5 人工智能發展動態14
1.6 案例分析17
1.6.1 SP先生謎題17
1.6.2 NIM問題18
1.7 習題22
1.8 思考題22
第2章 知識表示和推理24
2.1 概述24
2.2 命題邏輯25
2.3 謂詞邏輯28
2.3.1 語法28
2.3.2 語義30
2.3.3 謂詞邏輯形式系統FC32
2.4 歸結推理33
2.4.1 命題演算中的歸結推理33
2.4.2 謂詞演算中的歸結推理35
2.4.3 謂詞演算歸結反演的合理性和完備性38
2.5 產生式系統40
2.6 知識表示的其他方法43
2.6.1 語義網絡43
2.6.2 框架45
2.6.3 腳本46
2.7 基于知識的系統47
2.7.1 知識獲取47
2.7.2 知識組織49
2.7.3 知識應用49
2.7.4 常識知識和大規模知識處理50
2.8 案例分析51
2.8.1 傳教士和野人問題51
2.8.2 量水問題52
2.8.3 漢諾塔問題57
2.8.4 一個基于邏輯的財務顧問61
2.8.5 電路領域的知識工程64
2.9 習題67
2.10 思考題70
第3章 搜索技術73
3.1 概述73
3.2 盲目搜索方法74
3.3 啟發式搜索76
3.3.1 啟發性信息和評估函數76
3.3.2 最好優先搜索算法77
3.3.3 貪婪最好優先搜索算法78
3.3.4 A算法和A算法79
3.3.5 迭代加深A算法81
3.4 問題歸約和AND-OR圖啟發式搜索82
3.4.1 問題歸約的描述82
3.4.2 問題的AND-OR圖表示83
3.4.3 AO算法85
3.5 博弈88
3.5.1 極大極小過程90
3.5.2 α-β過程92
3.6 案例分析94
3.6.1 八皇后問題94
3.6.2 洞穴探寶95
3.6.3 五子棋97
3.7 習題102
3.8 思考題103
第4章 高級搜索107
4.1 爬山法搜索107
4.2 模擬退火搜索109
4.2.1 模擬退火搜索的基本思想110
4.2.2 模擬退火算法111
4.2.3 模擬退火算法關鍵參數和操作的設計112
4.3 遺傳算法114
4.3.1 遺傳算法的基本思想114
4.3.2 遺傳算法的基本操作115
4.4 案例分析120
4.4.1 爬山算法求解旅行商問題120
4.4.2 模擬退火算法求解旅行商問題121
4.4.3 遺傳算法求解旅行商問題122
4.5 習題124
4.6 思考題124
第5章 不確定知識表示和推理125
5.1 概述125
5.2 非單調邏輯127
5.2.1 單調性與非單調性127
5.2.2 缺省推理邏輯127
5.2.3 非單調邏輯系統128
5.2.4 非單調規則129
5.3 主觀Bayes方法130
5.3.1 全概率公式和Bayes公式131
5.3.2 主觀Bayes方法132
5.4 確定性理論137
5.4.1 建造醫學專家系統時的問題137
5.4.2 C-F模型138
5.5 證據理論142
5.5.1 假設和證據的不確定性142
5.5.2 證據的組合函數144
5.5.3 規則的不確定性145
5.5.4 不確定性的傳遞145
5.5.5 不確定性的組合145
5.6 模糊邏輯和模糊推理146
5.6.1 模糊集合及其運算146
5.6.2 模糊關系147
5.6.3 模糊邏輯148
5.6.4 模糊推理148
5.7 案例分析150
5.7.1 有經紀人的交易150
5.7.2 小型動物分類專家系統152
5.8 習題155
5.9 思考題157
第6章 智能體和多智能體系統158
6.1 概述158
6.1.1 智能體的概念與示例158
6.1.2 多智能體系統的概念
與示例160
6.2 智能體的體系結構161
6.2.1 知識型體系結構161
6.2.2 反應型體系結構163
6.2.3 認知型體系結構164
6.2.4 混合型體系結構167
6.3 智能體間的交互與協同169
6.3.1 智能體間的交互方式170
6.3.2 智能體通信語言ACL171
6.3.3 交互協議和協同模型174
6.4 多智能體系統的應用177
6.4.1 多智能體系統技術的適應系統178
6.4.2 多智能體系統技術的應用領域179
6.5 多智能體系統的實現方式181
6.6 多智能體系統開發框架JADE184
6.6.1 程序模型186
6.6.2 可重用開發包186
6.6.3 開發和運行的支持工具191
6.7 火星探礦機器人案例分析193
6.7.1 需求分析193
6.7.2 設計與實現194
6.8 習題198
6.9 思考題199
第7章 自然語言處理技術200
7.1 自然語言理解的一般問題200
7.2 詞法分析202
7.3 句法分析202
7.4 語義分析205
7.5 大規模真實文本的處理205
7.6 信息搜索206
7.7 機器翻譯208
7.8 語音識別210
7.9 案例分析213
7.9.1 在線漢英互譯舉例分析213
7.9.2 單詞音節劃分214
7.9.3 中文文本的詞頻統計215
7.9.4 中文語句自動分析218
7.9.5 美國地理信息查詢系統223
7.10 習題231
7.11 思考題232
第8章 機器學習和神經網絡234
8.1 機器學習概述234
8.2 基于符號的機器學習方法236
8.2.1 機械學習236
8.2.2 歸納學習237
8.2.3 決策樹學習238
8.2.4 基于范例的學習240
8.2.5 解釋學習244
8.2.6 強化學習246
8.3 基于神經網絡的學習247
8.3.1 神經網絡概述247
8.3.2 基于反向傳播網絡的學習250
8.3.3 Hopfield網絡模型258
8.4 知識發現261
8.5 案例分析262
8.5.1 感知器分類262
8.5.2 非線性可分的分類問題264
8.5.3 基于反向傳播網絡擬合曲線266
8.6 習題271
8.7 思考題274
第9章 智能規劃276
9.1 規劃問題276
9.2 狀態空間搜索規劃279
9.3 偏序規劃282
9.4 命題邏輯規劃286
9.5 分層任務網絡規劃288
9.6 非確定性規劃290
9.7 多智能體規劃292
9.8 案例分析296
9.8.1 Shakey世界296
9.8.2 規劃問題的建模與規劃系統的求解過程297
9.9 習題299
9.10 思考題300
第10章 機器人學301
10.1 概述301
10.1.1 機器人的分類302
10.1.2 機器人的特性303
10.1.3 機器人學的研究領域303
10.2 機器人系統304
10.2.1 機器人系統的組成304
10.2.2 機器人的工作空間305
10.2.3 機器人的性能指標307
10.3 機器人的編程模式與語言308
10.4 機器人的應用與展望309
10.4.1 機器人應用310
10.4.2 機器人發展展望313
10.5 機器人足球案例分析315
10.5.1 仿真平臺316
10.5.2 機器人運動程序318
10.5.3 動作函數321
10.5.4 足球比賽策略322
10.5.5 定位球狀態的判斷方法325
10.5.6 比賽規則326
10.6 習題326
10.7 思考題326
參考文獻328