多智能體
多智能體
1989年舉行的第一屆國際多智能體歐洲學術會議,標誌著該技術受到了研究者的廣泛重視。1993年首次召開了智能體形式化模型國際會議,1994年又召開了第一屆智能體理論、體系結構和語言國際會議,表明多智能體技術日益獲得了重視。
說到“多智能體”,一般專指多智能體系統(MAS, Multi-AgentSystem)或多智能體技術(MAT, Multi-Agent Technology)。多智能體系統是分散式人工智慧(DAI,DistributedArtificial Intelligence)的一個重要分支,是20世紀末至21世紀初國際上人工智慧的前沿學科。研究的目的在於解決大型、複雜的現實問題,而解決這類問題已超出了單個智能體的能力。
多智能體系統是多個智能體組成的集合,它的目標是將大而複雜的系統建設成小的、彼此互相通信和協調的,易於管理的系統。
它的研究涉及智能體的知識、目標、技能、規劃以及如何使智能體採取協調行動解決問題等。研究者主要研究智能體之間的交互通信、協調合作、衝突消解等方面,強調多個智能體之間的緊密群體合作,而非個體能力的自治和發揮,主要說明如何分析、設計和集成多個智能體構成相互協作的系統。
同時,人們也意識到,人類智能的本質是一種社會性智能,人類絕大部分活動都涉及多個人構成的社會團體,大型複雜問題的求解需要多個專業人員或組織協調完成。要對社會性的智能進行研究,構成社會的基本構件物——人的對應物——智能體理所當然成為人工智慧研究的基本對象,而社會的對應物——多智能體系統,也成為人工智慧研究的基本對象,從而促進了對多智能體系統的行為理論、體系結構和通信語言的深入研究,這極大的繁榮了智能體技術的研究與開發。
多智能體系統在表達實際系統時,通過各智能體間的通訊、合作、互解、協調、調度、管理及控制來表達系統的結構、功能及行為特性。
多智能體系統具有自主性、分佈性、協調性,並具有自組織能力、學習能力和推理能力。採用多智能體系統解決實際應用問題,具有很強的魯棒性和可靠性,並具有較高的問題求解效率。
多智能體系統是智能體技術應用及研究上的一個質的飛躍,不同行業的專家學者對之進行了深入的研究並從多個角度闡述了多智能體系統用於解決實際問題的優勢,歸納起來,主要有以下幾點:
(1)在多智能體系統中,每個智能體具有獨立性和自主性,能夠解決給定的子問題,自主地推理和規劃並選擇適當的策略,並以特定的方式影響環境。
(2)多智能體系統支持分散式應用,所以具有良好的模塊性、易於擴展性和設計靈活簡單,克服了建設一個龐大的系統所造成的管理和擴展的困難,能有效降低系統的總成本;
(3)在多智能體系統的實現過程中,不追求單個龐大複雜的體系,而是按面向對象的方法構造多層次,多元化的智能體,其結果降低了系統的複雜性,也降低了各個智能體問題求解的複雜性;
(4)多智能體系統是一個講究協調的系統,各智能體通過互相協調去解決大規模的複雜問題;多智能體系統也是一個集成系統,它採用信息集成技術,將各子系統的信息集成在一起,完成複雜系統的集成;
(5)在多智能體系統中,各智能體之間互相通信,彼此協調,并行地求解問題,因此能有效地提高問題求解的能力;
(6)多智能體技術打破了人工智慧領域僅僅使用一個專家系統的限制,在MAS環境在,各領域的不同專家可能協作求解某一個專家無法解決或無法很好解決的問題,提高了系統解決問題的能力;
(7)智能體是異質的和分佈的。它們可以是不同的個人或組織,採用不同的設計方法和計算機語言開發而成,因而可能是完全異質的和分佈的。
(8)處理是非同步的。由於各智能體是自治的,每個智能體都有自己的進程,按照自己的運行方式非同步地進行。
多智能體系統研究領域,主要包括:多智能體規劃、學習、推理、協商、交互機制等等理論,及其實際應用。
多智能體系統適合於複雜的、開放的分散式系統。它們通過智能體的合作來完成任務的求解,實現多智能體系統的關鍵是多個智能體之間的通信和協調。
最具影響力的通信語言是在ARPA主持下研究而成的ACL(智能體CommunicationLanguage)語言,它由KIF(KnowledgeInterchange Format)和KQML(KnowledgeQuery and Manipulation Language)等組成。
(01)智能機器人
在智能機器人中,信息集成和協調是一項關鍵性技術,它直接關係到機器人的性能和智能化程度。一個智能機器人應包括多種信息處理子系統,如二維或三維視覺處理、信息融合、規劃決策以及自動駕駛等。各子系統是相互依賴、互為條件的,它們需要共享信息、相互協調,才能有效地完成總體任務,其目標是用來結合、協調、集成智能機器人系統的各種關鍵技術及功能子系統,使之成為一個整體以執行各種自主任務。利用多智能體系統,將每個機器人作為一個智能體,建立多智能體機器人協調系統,可實現多個機器人的相互協調與合作,完成複雜的并行作業任務。
(02)交通控制
由於交通控制拓撲結構的分散式特性,使其很適合於應用多智能體技術,尤其對於具有劇烈變化的交通情況(如交通事故),多智能體的分散式處理和協調技術更為適合。
(03)柔性製造
多智能體技術應用在柔性製造領域,可表示製造系統,並為解決動態問題的複雜性和不確定性提供新的思路。如在製造系統中,各加工單元可看作智能體,從而使加工過程構成一個半自治的多智能體製造系統,完成單元內加工任務的監督和控制。多智能體技術可用於製造系統的調度、製造過程中的分散式控制。
(04)協調專家系統
對於複雜的問題,採用單一的專家系統往往不能滿足要求,需要通過多個專家系統協作,共同解決問題。利用多智能體技術,可實現多專家系統的協調求解。
(05)分散式預測、監控及診斷
智能體具有意圖的性質,利用多智能體的聯合意圖機制可實現聯合行動,從而實現分散式預測與監控。
(06)分散式智能決策
採用智能體技術將多個專家系統的決策方法有機地協調起來,可建立基於多智能體協調的環境決策支持系統。智能體採用基於規則的描述方法,可實現環境管理的分散式智能決策。
(07)軟體開發
利用計算機來開發多智能體系統,稱為軟體智能體。軟體工程的研究從模型角度考察智能體,認為面向智能體的軟體開發方法是為更確切地描述複雜併發系統的行為而採用的一種抽象的描述形式,是觀察客觀世界和解決問題的一種方法。
(08)虛擬現實
採用虛擬智能體技術建立了電子市場的模擬系統(MA GMA),可實現電子市場中的貨物儲藏和買賣機制以及銀行信貸和金融管理機制,並設計買和賣智能體,提出兩類智能體間的直接交互和代理交互演演算法,並採用異質智能體技術將模擬系統設計為開放式結構。
(09)操作系統
利用擬人化的具有自學習能力的人機智能體(IPA I)技術設計VAX VM S操作系統,利用智能體所具有的特性可實現操作系統的自適應功能。智能體IPA I可通過接受用戶的反饋使操作系統適應用戶的興趣和習慣,通過識別正確與錯誤的命令及與其它智能體進行網路通訊實現系統的學習,從而使操作系統在複雜環境下實現與用戶的交互。
(10)網路自動化與智能化
1)網路管理
利用多智能體一致性的組織、表示、通信等特點,通過定義不同類別的智能體,可構成網路的不同智能成員(包括網路單元智能體、管理對象智能體和操作系統智能體),實現網路管理。
2)網路協同化
智能體技術具有在Internet上的協調功能,通過採用U nix命令實現用戶在Internet上廣泛的協調。將智能體技術與Internet技術相結合,建立基於客戶伺服器的智能體結構,可實現用WWW開發計算機支持的協同工作(CSCW),建立一個以WWW為基礎、以一組協同工作的智能體為核心的應用環境(CAW),達到在網路環境下更好地支持用戶之間的協同工作。
3)網路信息處理
軟體智能體是指活動於軟體環境中的智能體,它通過下達命令和分析環境反饋同環境進行交互。利用軟體智能體技術,可對Internet這一規模龐大、極度異質、高度動態的軟體環境實現信息的收集、檢索、分析、綜合,從而實現高度智能行為的信息處理手段。
(11)分散式計算
用多智能體技術建立分散式計算環境的基本目標是建立各種客戶伺服器應用,其核心是基於智能體的服務請求代理機制,它分為兩部分:1)客戶環境:由客戶應用和服務請求智能體組成;2)服務環境:由一組服務智能體組成。
(12)產品設計
目前,利用智能體技術來構造設計系統已成為一個研究熱點。設計問題涉及到多目標的約束求解和設計過程的協調。以超大規模集成電路(VLSI)的設計為例,它需要有關電路、邏輯門、寄存器、指令集、結構以及裝配技術等方面的知識。為了降低VL S I設計的耗費,提高設計的速度,利用多智能體系統的并行處理技術將不同的任務分解,分別分佈在不同的智能體上。
(13)商業管理
目前,物資流通管理中存在以下幾方面問題:缺少公共的通訊結構;缺少集中管理機制;協調成本過高。利用移動智能體(MA)可實現網路化的物資購買與出售之間的管理。
(14)網路化的辦公自動化
人可作為一類智能體存在於多智能體系統中。採用多智能體技術可實現辦公自動化系統的人機一體化,系統中各個智能體分別實現信息的採集、存儲、交換、加工和決策。
(15)網路化計算機輔助教學及醫療
採用人機智能體技術可建立一個放射治療培訓系統(RA TA PLAN),開發用於人機交互的窗口,實現了人機對話。每個用戶都有各自的人機智能體,各智能體通過網路實現通訊。
可把智能體技術應用於智能教學系統開發,如:遠程教學和健康信息系統。
可以預見,在網上智能學校和網上智能醫院的設計和開發中,多智能體技術將發揮潛在的不可估量的作用。
(16)控制
利用MAS技術可建立一個多智能體控制系統框架,包括三層:最底層為控制層,具有實時控制能力;中間層為管理層;最上層為多智能體協調與通訊層。該框架可解決航行器機翼的伺服控制問題,框架內每個智能體負責各自的控制任務。例如:採用多智能體技術;建立混雜控制系統、板材自適應控制模型等。