當前位置:首頁 > 百科知識 > 人工智能 > 正文

人工智能語言

是一類適應于人工智能和知識工程領域的、具有符號處理和邏輯推理能力的計算機程序設計語言。能夠用它來編寫程序求解非數(shù)值計算、知識處理、推理、規(guī)劃、決策等具有智能的各種復雜問題。

   簡介

  人工智能(AI)語言是一類適應于人工智能和知識工程領域的、具有符號處理和邏輯推理能力的計算機程序設計語言。能夠用它來編寫程序求解非數(shù)值計算、知識處理、推理、規(guī)劃、決策等具有智能的各種復雜問題。典型的人工智能語言主要有LISP、Prolog、Smalltalk、C++等。

  一般來說,人工智能語言應具備如下特點:

  具有符號處理能力;

  適合于結構化程序設計,編程容易;

  具有遞歸功能和回溯功能;

  具有人機交互能力;

  適合于推理。

  發(fā)展

  許多對信息技術劃代的標準都是硬件,如電子管為第一代,晶體管為第二代,集成電路為第三代,等等,對用戶來說,與計算機打交道要通過計算機語言,一般把機器語言稱為第一代,第二代是匯編語言,第三代是ALGOL、COBOL、FORTRAN等語言,第三代語言延續(xù)時間較長,從六十年代開始,在七十年代得到進一步發(fā)展,但是隨著計算機應用的普及,到七十年代末出現(xiàn)一些第四代語言的產(chǎn)品。

  第四代語言這個術語是由J.Martin首先創(chuàng)立并積極推廣,他和P.Mimn下的簡單定義是:

  用戶得結果的時間只需第三代語言的十分之一,

  系統(tǒng)與用戶比較友好,易于學習和記憶,

  既適合于最終用戶又適合于數(shù)據(jù)處理專業(yè)人員使用。

  根據(jù)J.Martin定義,依應用生成的類型而區(qū)分為集成的個人計算機工具,查詢語言和報表生成器,圖象語言,決策支持和財會模型系統(tǒng),面向最終用戶的應用生成器,面向數(shù)據(jù)處理專業(yè)人員的應用生成器,等等。有人說,前三代語言應用于工業(yè)時代,而第四代語言則標志著信息時代的開始。

  現(xiàn)在,計算機語言仍是計算機科學和計算機軟件中的活躍分支,其研究領域可分為:語言理論、設計、處理實現(xiàn)和環(huán)境。語言種類也大大擴充,包括:需求、設計、實現(xiàn)語言,函數(shù)、邏輯和關系語言;分布式、并行和實時語言;面向對象的語言,硬件描述語言;數(shù)據(jù)庫語言;視覺圖形語言;協(xié)議語言原型語言,自然語言。

  在人工智能的研究發(fā)展過程中,從一開始就注意到了人工智能語言問題。實際上四十多年來有一百來種人工智能語言先后出現(xiàn)過,但很多都被淘汰了。它們大抵有三個來源。第一個來源是計算機科學家們對可計算性理論的研究。例如,LISP語言是為處理人工智能中大量出現(xiàn)符號編程問題而設計的,它的理論基礎是符號集上的遞歸函數(shù)論。已經(jīng)證明,用LISP可以編出符號集上的任何可計算函數(shù)。Prolog語言是為處理人工智能中也是大量出現(xiàn)的邏輯推理問題(首先是為解決自然語言理解問題)而設計的。它的理論基礎是一階謂詞演算(首先是它子集Horn子句演算)的消解法定理證明,其計算能力等價于LISP。OPS5面對的問題也是邏輯推理。不過PROLOG是向后推理,OPS5是向前推理。OPS5的理論基礎是Post的產(chǎn)生式系統(tǒng),其計算能力也等價于LISP。第二個來源是認知科學的研究成果。人們研究出各種各樣的認知模型,并為這些模型設計相應的知識表示語言。例如產(chǎn)生式表示、框架表示、語義網(wǎng)絡表示等實際上都有其認知模型作為背景。如上所述的OPS5是產(chǎn)生式表示的語言,SRL、FRL、FEST等是框架語言,概念圖和SNetI都是語義網(wǎng)絡表示語言。面向對象的程序設計是在SIMULA中的類程和Minsky的框架表示兩種思想融合的基礎上發(fā)展起來的(它適用于計算機軟件的所有領域,不只是人工智能)。

  人工智能語言系統(tǒng)理論研究

  在這個問題上,國外一些卓有成就的語言學家、邏輯學家和心理學家都在自然語言理解中的語法、句法及語義分析方面提出了一系列較為系統(tǒng)的理論方法。比較有影響的理論有:

  轉換生成語法

  1957年美國的喬姆斯基(N.Chomsky)創(chuàng)建了轉換生成語法(Transformational Generative Grammar)。喬姆斯基用數(shù)字方法定義的人工語言(形式語言)來研究語言學同題,用他的語言生成方法去研究形式語言。喬姆斯基將句子的結構分為深層結構和表層結構兩個層次,一些表達相同意義的句子盡管表層結構不同,但其深層結構卻是相同的。轉換生成語法的原理是,通過上下文無關語法生成句子的深層結構,然后應用轉換規(guī)則再將深層結構轉換為表層結構。在喬姆斯基的語法中基本上完全拋開了語義、語用和語境(廣義)方面的知識,只局限在一個形式化的機制上,因此很難完整確切地描述自然語言。

  依存語法

  1959年法國的語言學家特思尼耶爾(Lucien Tesniere)提出了依存語法(Dependency Grammar)。依存語法描述的是句子中詞與詞之間直接的句法關系。特思尼耶爾認為詞與詞之間存在著一種“依存”關系。這種關系原則上將一個上項詞與一個下項詞聯(lián)系起來,上項叫支配詞,下項叫從屬詞。一個詞可以同時是某個上項的從屬詞和另一個下項的支配詞,這樣句子里的所有詞便構成一個“分層次體系”。動詞是句子的中心,支配句中的其他成分。依存語法由于依存關系的數(shù)目不宜過多或過少。過少的依存關系使得語言描寫的深度和精度不夠,而太多的依存關系又會使語言分析和處理的過程太繁雜,代價太高,從而影響它的可操作性。

  語義網(wǎng)絡

  1968年美國奎廉(Quilian)首次提出了一種知識表示工具——語義網(wǎng)絡(Semantie Network)??ㄗh用語義網(wǎng)絡來描述人對事物的認識,實際上是對人腦功能的模擬,并希望這種語義網(wǎng)絡能用于進行知識推導。在這個網(wǎng)絡中,代替概念的單位是節(jié)點,代替概念之間關系的則是節(jié)點間的連接弧,稱為聯(lián)想弧。因此這種網(wǎng)絡又稱為聯(lián)想網(wǎng)絡。

  蒙塔鳩語法

  1970年美國蒙塔鳩(R.Montague)創(chuàng)建了一個完備的自然語言體系(U—niversalGrammar)——蒙塔鳩語法。蒙塔鳩語法由三部分組成:第一部分是用喬姆斯基的轉換生成語法推導出成立的句子,第二部分是把成立的句子轉化為內(nèi)涵邏輯表達式,第三部分是內(nèi)涵邏輯學的語義理論。這是一套集轉換生成語法、內(nèi)涵邏輯和語義理論為一體、形式化程度較高的語法體系,較好地解決了語形與語義的關系問題,但它還是一種以句法為目標的分析器,無法解決句子所包含的深層意義以及與其他心智能力的關系等問題。

  擴展轉換網(wǎng)絡

  1970年美國伍茲(W.A.Woods)根據(jù)喬姆斯基創(chuàng)建的轉換生成語法,設計了擴展轉換網(wǎng)絡(Augmented Transitional Network,簡稱ATN),并于1972年建成了LU—NAR模型[1引。擴展轉換網(wǎng)絡既可以看成是一種語法描述工具。在ATN中,文法被表示為一組圖(或稱為網(wǎng)絡),這些網(wǎng)絡表示了句子成分的可能順序以及在處理過程中分析器可能進行的各種選擇。LUNAR是把ATN語法應用于實際問題的一個范例,由于系統(tǒng)只要求有限的性能目標,所以自然語言對話中的某些常見的復雜問題被回避了。

  系統(tǒng)語法

  1972年美國維諾格拉德(T.Winograd)根據(jù)韓禮德(Halliday)的系統(tǒng)語法提出SCHRRDLU模型。系統(tǒng)語法把語言看成是一種社會現(xiàn)象,采用描述和歸納的方法進行研究。維諾格拉德認為語義理論必須在三個平面上描述關系:確定詞的意義;確定詞組在句法結構中的意義;一個自然語言的句子決不應該被孤立解釋,一種語義理論必須描述一個句子的意義如何依賴于它的上下文,語義理論必須涉及語言學背景(說話的上下文)和現(xiàn)實社會(世界)背景(即同非語言學事實的知識的相互作用),語義理論必須同句法和語言的邏輯方面(演繹推理)相聯(lián)系SCHRRDLU是一個在“積木世界”中進行英語對話的自然語言理解系統(tǒng)。同樣由于系統(tǒng)只在一個簡單的限定領域(積木世界),所以自然語言對話中的某些常見的復雜問題被回避了。

  格語法和語義網(wǎng)絡理論

  1973年美國西蒙RFSimmons(R.F.Simmons)在伍茲的ATN的基礎上,采用菲爾摩(Fillmore)的格語法(CaseGrammar)建立了語義網(wǎng)絡理論。格語法將自然語言理解中的語法和語義分析結合起來,它的語法規(guī)則是用于描述語法規(guī)律而不是語義規(guī)律的,但規(guī)律所產(chǎn)生的最終結構不是嚴格表示語法結構而是描述語義關系。語義網(wǎng)絡表示描述了知識的分層分類結構下的概念關系,主要推理形式是概念(結點)間屬性的繼承。這種分層的繼承關系刻畫了客觀知識與人類常識。語義網(wǎng)絡表示有實現(xiàn)系統(tǒng),但一直缺乏理論基礎。

  概念依存理論

  1972年美國杉克(C.Sehank)提出了概念依存理論(ConceptualDependencyTheory),建立了MARGI系統(tǒng),1977年又建立SAM系統(tǒng)。杉克認為句子的句法分析對語言理解的幫助不大,句法結構無法提供必要的信息來理解語義,人類在理解語句時全靠生活知識。在理解時,語法只起到一個指引的作用,即根據(jù)某些輸人詞語找到所需的概念結構。任何兩段話,只要意思相同,無論是否屬于同一種語言,都有同一個概念內(nèi)容。概念內(nèi)容應具有中性的結構形式,超脫于特定的語言文法,超脫于一切表層結構。概念內(nèi)容由概念及其相互之間的從屬關系構成。由于用概念依存理論來理解自然語言時,大量使用到語義知識,使得對純粹語法分析有二義性的句子亦能賦以唯一的解釋。但另一方面,要很好地完成分析工作又需要龐大的語義知識庫。

  境況語義學

  1983年美國的巴杯士(John Barwise)和佩里(John Perry)建立了系統(tǒng)的語義學——境況語義學(situation semantics),發(fā)表了他們的代表性著作《境況與態(tài)度》。巴杯士和佩里認為他們的語義理論可以克服傳統(tǒng)的真值條件語義學遇到的一些困難,特別是如何處理態(tài)度動詞等問題。境況語義學是一種語義與語用相結合的語義分析理論。廣義的境況包括客觀世界中所有動態(tài)和靜態(tài)的事件,它是連續(xù)時間和連續(xù)空間中呈現(xiàn)的連續(xù)畫面;狹義的境況是指與某個言語活動相聯(lián)系的動態(tài)或靜態(tài)事件,即包括該言語活動所涉及的事件。境況理論認為,語言表達式的含義是兩個境況之間的關系:一個是話語發(fā)生時的境況,另一個則是該話語所描述的境況,這兩個境況之間的關系要受人們對語言使用規(guī)則的約束,正是這種約束決定了語言表達式的含義。語言之所以具有交流信息的功能,是因為對語言使用規(guī)則的約束要為整個社會所遵從。境況理論的任務,就是要從客觀世界存在的大量真實境況中,抽象出所有境況共有的內(nèi)部結構,在此基礎上探討境況之間的約束關系,揭示出語言表達式的含義,從而為基于境況的自然語言理解提供一個具有可計算的數(shù)學模型。

  語料庫語言學

  近幾年來,在國際范圍內(nèi)掀起了語料庫語言學(CorpusLinguistics)的研究熱潮。語料庫語言學研究機器可讀的自然語言文本的采集、存儲、檢索、統(tǒng)計、語法標注、句法——語義分析以及具有上述功能的語料庫在語言定量分析、詞(字)典編撰、作品風格分析、自然語言理解和機器翻譯等領域的應用。

  人工智能語言與傳統(tǒng)語言的區(qū)別

  傳統(tǒng)方法

  通常把問題的全部知識以各種的模型表達在固定程序中,問題的求解完全在程序制導下按著預先安排好的步驟一步一步(逐條)執(zhí)行。解決問題的思路與馮·諾依曼式計算機結構相吻合。當前大型數(shù)據(jù)庫法、數(shù)學模型法、統(tǒng)計方法等都是嚴格結構化的方法。

  把問題的全部知識以各種的模型表達在固定程序中,問題的求解完全在程序制導下按著預先安排好的步驟一步一步(逐條)執(zhí)行。這種方法解決嚴格結構(Well Structured)問題非常有效。如果把這類問題形式化為三元組(x,->,y),“x”是給定的信息,“->”為求解途徑,“y”是目標。傳統(tǒng)方法的特點:“x”、“y”是明確的、完備的;“->”有著固定的明確的程式。這個方法之所以有效,主要是因為這個思路與馮.諾依曼式計算機結構相吻合。當前大型數(shù)據(jù)庫法、數(shù)學模型法、統(tǒng)計方法等都是嚴格結構化的方法。

  人工智能方法

  對于人工智能技術要解決的問題,通常需要建立一個知識庫,程序根據(jù)環(huán)境和所給的輸入信息以及所要解決的問題來決定自己的行動,所以它是在環(huán)境模式的制導下的推理過程。這種方法有極大的靈活性、對話能力、有自我解釋能力和學習能力。這種方法對解決一些條件和目標不大明確或不完備,的非結構化問題比傳統(tǒng)方法好。它采用用試探法來解決問題。人工智能也尚未發(fā)展到完全能解決這類問題的全部問題。這類問題是人工智能研究要解決的問題。

  人工智能要解決的問題,無法把全部知識都體現(xiàn)在固定的程序中。它要建立一個知識庫(包含事實和推理規(guī)則),程序根據(jù)環(huán)境和所給的輸入信息以及所要解決的問題來決定自己的行動,所以它是在環(huán)境模式的制導下的推理過程。這種方法有極大的靈活性、對話能力、有自我解釋能力和學習能力。這種方法對解決一些弱結構(ill structured)問題比傳統(tǒng)方法好。弱結構指“x”、“y”不大明確或不完備,即不能很好地形式化,不好描述。“->”用試探法。AI也尚未發(fā)展到完全能解決這類問題的全部問題。這類問題是AI研究要解決的問題。隨之而來也希望計算機硬件結構也來一個革命,突破馮.諾依曼體系結構。

  面向主體(Agent,亦稱活體)程序設計

  近年來出現(xiàn)了具有人工智能特色面向對象程序設計,稱為面向主體(Agent,亦稱活體)程序設計。往一個對象中增加更多的智能,使它能根據(jù)環(huán)境的變化進行推理并規(guī)劃自己的行為,就得到主體(Agent)。主體概念符合Minsky提出的“意念社會”認知模型,特別適用于分布環(huán)境。經(jīng)典的面向對象程序設計語言是Smalltalk,面向主體的程序設計語言也已經(jīng)有了一些,如OZ等,但還沒被大家公認和普遍采用。也有基于PDP認知模型(Parallel Distributed Processing)的神經(jīng)網(wǎng)絡語言。第三來源是知識工程的實際需要。例如,為了開發(fā)各種領域的專家系統(tǒng)而設計的包含不精確推理或不確定推理功能,甚至包含多種不同推理機制的AI語言,例如Loops和TUILI。還有的是看到某一個專家系統(tǒng)做得比較成功,干脆抽去它的領域知識,留下它的表示方法,也成為一種語言,俗稱專家系統(tǒng)外殼。例如,抽去醫(yī)學專家系統(tǒng)MYSIN的領域知識就得到一個外殼語言Emycin。

  人工智能語言的特點

  由于人工智能研究的問題的特點和解決問題的方法的特殊性,為了能方便而有效地建立人工智能系統(tǒng),需要發(fā)展專門的人工智能語言。人工智能語言的特點是什么,亦即人工智能語言應具備的特征是什么?

  一般來說,人工智能語言應具備如下特點:

  1.要有符號處理能力(即非數(shù)值處理能力);

  2.適合于結構化程序設計,編程容易;(要把系統(tǒng)分解成若干易于理解和處理的小單位的能力,從而既能較為容易地改變系統(tǒng)的某一部分,而又不破壞整個系統(tǒng)。)

  3.要有遞歸功能和回溯功能;

  4.要有人機交互能力;

  5.適合于推理;

  6.要有把過程與說明式數(shù)據(jù)結構混合起來的能力,又要有辨別數(shù)據(jù)、確定控制的模式匹配機制。

  名家名言

  編輯

  談到LISP和PROLOG兩種AI語言的重要性,我們可以從美國AI界的權威學者、麻省理工學院教授P.H.Winston(溫斯頓)所說的三段話來體會:

  (1)溫斯頓認為,LISP 語言是AI的數(shù)學,不僅對AI的機器實現(xiàn)有重要意義,而且是AI理論研究的重要工具。

  (2)“在中世紀,拉丁文和希臘文的知識對所有學者來說,都是必不可少的。只懂一種語言的學者必然是一個殘缺不全的學者,他缺乏從兩個方面來觀察世界所獲得的那種理解力。同樣地,現(xiàn)代的AI專業(yè)人員如果不能同時大致通曉LISP和Prolog,也猶如一個殘疾人,因為就廣義來說,這兩種人工智能的主要語言的知識都是必不可少的。”

  “我一直熱衷于Lisp,Lisp是在MIT被制造并且在那兒成長起來的。”

  (3)概括地說,計算機語言的發(fā)展正是一個從HOW型低級語言向WHAT型高級語言進化的過程.在HOW型語言中,程序編制者必須詳細說明運算是怎樣(HOW)一步一步進行的;而在WHAT型語言中,程序編制者只需簡單說明要做的事情是什么(WHAT) 。 …現(xiàn)代的LISP語言是這些語言的佼佼者,因為采用Common Lisp格式的Lisp具有非凡的表現(xiàn)力,但是如何做某件事情仍然是有待于Lisp程序編制者來表達的東西.相反,Prolog是一種明顯地沖破了HOW型語言陳規(guī)的語言, 它鼓勵程序編制者去描述情況和問題,而不是那些用來解決問題的詳細步驟。”

  由以上論述可以看出LISP語言和Prolog語言對人工智能學科和人工智能學者的重要性。

  一般來說,LISP可以稱為人工智能的匯編語言, Prolog是人工智能更高級的語言。

 


內(nèi)容來自百科網(wǎng)