本節書摘來自華章計算機《人工智能:計算agent基礎》一書中的第1章,第1.2節,作者:(加)david l.poole,alan k.mackworth 更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。
縱觀人類曆史,人們曾一直用技術為人類自身建立模型,例如古代的中國、古埃及和古希臘都可以證明,每一種新技術都不斷地用來建造agent或其他意識模型。發條裝置、水力學、電話轉換系統、全息圖、模拟計算機以及數字計算機等都被提出作為智能裝置和意識模型的技術原理。
大約400年前,人們開始解釋思維與推理的本質。hobbes(1588—1679)被haugeland6[1985,p.85]稱為人工智能的始祖,認為思考是符号推理,例如大聲說話或用紙筆計算出某個答案。descartes(1596—1650)、pascal(1623—1662)、spinoza(1632—1677)、leibniz(1646—1716)以及精神哲學領域的其他先驅者對符号推理這一理念進行了更深層次的研究。
随着計算機的發展,符号運算這個概念變得更為具體。第一台通用計算機是一個分析機,它是由babbage(1792—1871)設計的,但直到1991年才真正制造出來,現在位于倫敦科學博物館内。在20世紀早期,進行了很多關于認知計算的研究,提出了幾種計算模型,例如turing(1912—1954)提出的圖靈機——一種在無限長的錄音帶上書寫符号的理論機器,church(1903—1995)提出的λ演算——一種重寫公式的數學形式體系,這種理論表明不同的數學形式其實是等價的,因為任意一個可計算的函數可以由其他函數計算得到。由此,我們得到church-turing理論:
任何有效可計算的函數都可以通過圖靈機來運作(同樣适用于λ演算或其他等價的形式體系)。
這裡“有效可計算的”是指那些定義明确的操作;圖靈機時代的“計算機”是執行明确定義步驟的人,而我們現在所熟悉的計算機那時并不存在。此理論表明所有的計算都可以通過圖靈機或其他與之等價的計算機器來執行。我們雖然無法證明church-turing理論,但它确實是一種經得住時間檢驗的假設。因為到現在都沒有人可以制作出一種機器,來進行圖靈機無法進行的計算,而且也沒有證據說明存在某種函數,人類可以計算而圖靈機卻不能進行計算。agent的動作是一個關于其能力、曆史、目标及偏好的函數。這也證明計算不僅僅是一個智能的暗喻;推理是可以通過計算機來執行的一系列的計算。
計算機出現之後,最早期的某些計算機應用是人工智能程式。例如,samuel[1959]在1952年開發的國際跳棋程式,在20世紀50年代末期,人們可以通過這樣的程式來學習下國際跳棋。newell和simon[1956]開發的程式“邏輯理論家”可以證明命題邏輯中的定理。
除了研究進階的符号推理,還有一些工作研究低級學習,這些研究從神經元如何工作受到啟發。mcculloch和pitts[1943]說明了一個簡單的門檻值“形式神經元”如何作為圖靈完全機器的基礎(圖靈完全指在可計算性理論中,程式設計語言或任意其他的邏輯系統具有等價于通用圖靈機的計算能力。換言之,此系統可與通用圖靈機互相模拟。圖靈完全性通常指具有無限存儲能力的通用實體機器或程式設計語言。——譯者注)。最早提出神經網絡的人是minsky[1952],早期關于神經網絡标志性的研究工作是rosenblatt[1958]的感覺機。而1968年之後,神經網絡的7研究工作面臨衰退,因為minsky和papert[1988]認為這種學術表達不勝任智能行為。 此處“澳洲”指“澳大拉西亞”,一般包括澳洲、紐西蘭及附近南太平洋諸島。——譯者注
早期的應用程式主要關注該領域的基礎方面:學習和搜尋。怎麼描述解決問題需要的知識是要解決的主要難題之一,這個問題變得越來越明顯。在學習之前,agent需要有适合已知知識的目智語言。有很多表達方法,從基于特征的表達到mccarthy和hayes[1969]的複雜的邏輯表達,還有很多介于兩者之間的表達方式,如minsky[1975]提出的架構表達。
20世紀六七十年代,在一些限定領域中建立的自然語言了解系統取得了成功。例如,daniel bobrow[1967]的student應用程式,可以用來解決用自然語言表示的高中代數問題。winograd[1972]的shrdlu系統,可以利用受限的自然語言讨論和解決模拟積木世界的任務。chat-80[warren和pereira,1982]可以回答一些用自然語言表達的地理問題。圖1-2展示了chat-80可以回答的一些問題,它的回答是建立在國家、河流等事實資料庫的基礎上。這些系統僅僅是在有限的領域内利用受限的詞彙和語句結構來進行推理的。8
阿富汗與中國相鄰嗎?
上沃爾特的首都是哪裡?
哪國的首都是倫敦?
最大的非洲國家是哪個?
最小的美洲國家有多大?
與非洲國家及亞洲國家相毗鄰的海洋是哪個?
與波羅的海相鄰國家的首都有哪些?
多瑙河流經多少個國家?
赤道以南并且不屬于澳洲的那些國家的總面積是多少?
每個大洲上國家的平均面積是多少?
每個大洲都多于一個國家嗎?
流入黑海的河流發源于哪些國家?
不存在這樣國家的洲有哪些?即人口超過100萬的城市多于兩個的國家。
哪個地中海沿岸的國家與人口超過印度的國家相鄰?
哪些國家與大西洋相鄰,并且人口超過1000萬?

https://yqfile.alicdn.com/a9b0df2664cd1cc26514ae6f5b037fbf69fcaba5.png" >
在20世紀七八十年代,關于專家系統有大量的研究工作,目的是擷取某個領域内專家的知識,以便于用計算機來執行專家任務。例如,從1965年到1983年在有機化學領域開發的dendral專家系統[buchanan和feigenbaum,1978],可以為新型有機化合物提出理論結構。從1972到1980年開發的mycin專家系統[buchanan和shortliffe,1984],可以進行血液傳染性疾病的診斷,制定抗生素治療方案并解釋它的形成原因。同期,人工智能推理得到了迅速發展,例如prolog語言[colmerauer和roussel,1996;kowalski,1988]。
在20世紀90年代和21世紀初,人工智能的子學科迅速發展,例如認知學、機率推理、決策理論推理、規劃、嵌入式系統、機器學習以及其他很多學科。本領域的基礎部分獲得了進一步發展,這也正是本書的基礎組成部分。
與其他學科的關系
人工智能是一門非常年輕的學科,而像哲學、神經生物學、進化生物學、心理學、經濟學、政治學、社會學、人類學、控制工程學等學科研究智能已經很久了。
人工智能學科可以描述為“人造心理學”、“實驗性哲學”或“計算認識論”,其中認識論主要研究知識。人工智能可以看做研究知識與智能本質這個老問題的一種方式,但采用了比以前更有效的實驗工具。不同于哲學、心理學、經濟學和社會學等隻是傳統地觀察智能系統的外部行為,人工智能研究者們則對智能行為的可執行模型進行實驗驗證。更重要的是,這些模型還可以檢查和重新設計,并以一種完全和嚴格的方式進行實驗。現代計算機可以構造模型,而哲學家隻能建立理論。人工智能研究者可以對這些模型進行實驗,而不僅僅是讨論它的抽象性質。人工智能理論可以作為其實作的基礎。此外,我們常常會對簡單的agent表現出複雜的行為感到非常驚訝,而這些是我們沒有實作這些agent時所想不到的。
對比過去幾個世紀裡飛行器的發展與過去幾十年裡計算機的發展,是非常有建設性意義的。我們通過幾個方面來了解飛行,一種是仔細剖析已知的飛行動物,并将它們的共同結構特征假設為任意飛行agent的必要基本特性。通過這種方法,檢查鳥類、蝙蝠及昆蟲的共同特征發現,飛行需要翅膀的拍動,而翅膀上面需有羽毛或薄膜。此外,這個假設可以通過實驗9來驗證,就像伊卡洛斯做的那樣,将翅膀捆綁在手臂上,拍動,然後跳到空中。另一個可行方法就是試圖了解飛行的原理,不僅僅局限于自然界中的飛行。它涉及嵌入假設原理的人工産品結構,除了能飛之外,其他地方與飛行動物根本沒有類似之處。通過第二種方法不僅制造出了飛機這樣有用的工具,還産生了航空動力學這門能更好地了解飛行原理的學科。
人工智能采用和航空動力學類似的方法。人工智能研究者們對驗證智能本質的一般假設很感興趣,而制造智能機器并不一定要模仿人類或組織。通過考慮“飛機真的能飛嗎?”這樣類似的問題,給我們提供了解決“計算機真的能思考嗎?”問題的一個思路。
人工智能與計算機科學緊密相連。盡管人工智能領域的很多研究者不是計算機科學家,但即使不是大部分,很多的人工智能研究都需依靠計算機科學才能完成。由于計算的研究是人工智能的中心,是以這是合理的。了解算法、資料結構及組合複雜性對于建構智能機是非常重要的。人工智能也為計算機科學帶來了很多衍生利益,從分時系統到計算機代數系統等。
最後,人工智能可以看做認知科學的一部分。認知科學連接配接着多門研究認知與推理的學科,如心理學、語言學、人類學和神經學等。人工智能差別于認知科學的地方是它能提供工具構造智能,而不僅僅是研究agent的外部行為或分析智能系統的内部運作原理。