梅創(chuàng)社
(陜西工業(yè)職業(yè)技術(shù)學(xué)院 陜西 咸陽 712000)
隨著計算機(jī)技術(shù)和人工智能的發(fā)展以及互聯(lián)網(wǎng)(Internet)和萬維網(wǎng)(World Wide Web)的出現(xiàn)與發(fā)展,集中式系統(tǒng)已不能完全適應(yīng)科學(xué)技術(shù)的發(fā)展需要。并行計算和分布式處理等技術(shù)(包括分布式人工智能技術(shù))應(yīng)運(yùn)而生,并在過去20多年中獲得快速發(fā)展。近10年來,Agent和多Agent系統(tǒng)的研究成為分布式人工智能研究的一個熱點(diǎn)。
規(guī)模,使系統(tǒng)具有比單個系統(tǒng)更大的開放性和靈活性。
5)容錯性 系統(tǒng)具有較多的冗余處理節(jié)點(diǎn)、通信路徑和知識,能夠使系統(tǒng)在出現(xiàn)故障時,僅僅通過降低速度或求解精度,就可以保持系統(tǒng)正常工作,提高工作可靠性。
6)獨(dú)立性 系統(tǒng)把求解任務(wù)歸約為幾個相對獨(dú)立的子任務(wù),從而降低了各個處理節(jié)點(diǎn)和子系統(tǒng)問題求解的復(fù)雜性,也降低了軟件設(shè)計開發(fā)的復(fù)雜性。
分布式人工智能(Distributed Artificial Intelligence,DAI)[1]的研究源于20世紀(jì)70年代末期。當(dāng)時主要研究分布式問題求解,其研究目標(biāo)是要建立一個由多個子系統(tǒng)構(gòu)成的協(xié)作系統(tǒng),各子系統(tǒng)之間協(xié)同工作對特定問題進(jìn)行求解。分布式人工智能系統(tǒng)具有如下的特點(diǎn):
1)分布性 整個系統(tǒng)的信息,包括數(shù)據(jù)、知識和控制等,無論是在邏輯上或者是物理上都是分布的,不存在全局控制和全局?jǐn)?shù)據(jù)存儲。系統(tǒng)中各路徑和節(jié)點(diǎn)能夠并行地求解問題,從而提高了子系統(tǒng)的求解效率。
2)連接性 在問題求解過程中,各個子系統(tǒng)和求解機(jī)構(gòu)通過計算機(jī)網(wǎng)絡(luò)相互連接,求解問題的通信代價和求解代價。
3)協(xié)作性 各子系統(tǒng)協(xié)調(diào)工作,能夠求解單個機(jī)構(gòu)難以解決或者無法解決的困難問題。
4)開放性 通過網(wǎng)絡(luò)互連和系統(tǒng)的分布,便于擴(kuò)充系統(tǒng)
在信息技術(shù),尤其是人工智能和計算機(jī)領(lǐng)域,可把Agent看作是能夠通過傳感器感知其環(huán)境并借助執(zhí)行器作用于該環(huán)境的實體。對于計算機(jī)系統(tǒng)而言,Agent是指當(dāng)使用者向機(jī)器說明完成某些任務(wù),而無需了解機(jī)器自身是如何工作,即將其處理為黑箱時,就稱其為Agent,其典型的結(jié)構(gòu)框圖[2]如圖1所示。
圖1 Agent的典型結(jié)構(gòu)Fig.1 The typical structure of Agent
Agent與分布式人工智能系統(tǒng)一樣具有協(xié)作性、適應(yīng)性等特性,此外,Agent還具有如下重要性質(zhì):
1)行為自主性 Agent能夠控制它的自身行為,其行為是主動的、自發(fā)的、有目標(biāo)和意圖的,并能根據(jù)目標(biāo)和環(huán)境要求對短期行為作出規(guī)劃。
2)作用交互性,也叫反應(yīng)性 Agent能夠與環(huán)境交互作用,能夠感知其所處環(huán)境,并借助目己的行為結(jié)果,對環(huán)境做出適當(dāng)反應(yīng)。
3)環(huán)境協(xié)調(diào)性 Agent存在于一定的環(huán)境中,感知環(huán)境的狀態(tài)、事件和特征,并通過其動作和行為影響環(huán)境,與環(huán)境保持協(xié)調(diào)。環(huán)境和Agent是對立統(tǒng)一體的兩個方面,互相依存,互相作用。
4)面向目標(biāo)性 Agent不是對環(huán)境中的事件做出簡單的反應(yīng),它能夠表現(xiàn)出某種目標(biāo)指導(dǎo)下的行為,為實現(xiàn)其內(nèi)在目標(biāo)而采取主動行為。
5)存在社會性 Agent存在于由多個Agent構(gòu)成的社會環(huán)境中,與其他Agent交換信息、交互作用和通信。
6)工作協(xié)作性 各Agent合作和協(xié)調(diào)工作,求解單個A-gent無法處理的問題,提高處理問題的能力。
7)系統(tǒng)適應(yīng)性 Agent的程序在啟動后,能夠在相當(dāng)長的一段時間內(nèi)維持運(yùn)行狀態(tài),不隨運(yùn)算的停止而立即結(jié)束運(yùn)行。
8)系統(tǒng)適應(yīng)性 Agent不僅能夠感知環(huán)境,對環(huán)境做出反應(yīng),而且能夠把新建立的Agent集成到系統(tǒng)中而無需對原有的多Agent系統(tǒng)進(jìn)行重新設(shè)計,因而具有很強(qiáng)的適應(yīng)性和可擴(kuò)展性。
9)結(jié)構(gòu)分布性 在物理上或邏輯上分布和異構(gòu)的實體(或真體),如主動數(shù)據(jù)庫、知識庫、控制器、決策體、感知器和執(zhí)行器等,在多Agent系統(tǒng)中具有分布式結(jié)構(gòu),便于技術(shù)集成、資源共享、性能優(yōu)化和系統(tǒng)整合。
10)功能智能性 Agent強(qiáng)調(diào)理性作用,可作為描述機(jī)器智能、動物智能和人類智能的統(tǒng)一模型。
1)多Agent系統(tǒng)的體系結(jié)構(gòu)[3]
從通信的角度出發(fā),多Agent系統(tǒng)的體系結(jié)構(gòu)一般可分為3種,如圖2所示。
圖2 多Agent系統(tǒng)的體系結(jié)構(gòu)Fig.2 Multi-agent system structure
從圖2中可以看出:(a)系統(tǒng)中的Agent直接通信,結(jié)構(gòu)簡單,易于實現(xiàn),適用于Agent個數(shù)較少的MAS系統(tǒng);(b)系統(tǒng)中的Agent未直接通信,而是通過協(xié)調(diào)者轉(zhuǎn)發(fā)消息,尋求適當(dāng)?shù)暮献骰锇椋欣谄胶庀到y(tǒng)的通信負(fù)載,而協(xié)調(diào)者的處理機(jī)制決定了整個系統(tǒng)的效率,適用于大多數(shù)MAS系統(tǒng);(c)系統(tǒng)中的Agent組成若干Agent聯(lián)盟,每個聯(lián)盟擁有自己的協(xié)調(diào)者,各個聯(lián)盟內(nèi)部的通信類似于圖2的(b),聯(lián)盟之間的通信由各協(xié)調(diào)者實現(xiàn),結(jié)構(gòu)比較復(fù)雜,適用于大型MAS系統(tǒng)。實踐中,可根據(jù)實際情況靈活采用上述的體系結(jié)構(gòu),或與各種結(jié)構(gòu)相結(jié)合,創(chuàng)造適合需求的系統(tǒng)模式。
2)多Agent系統(tǒng)的協(xié)作、協(xié)商和協(xié)調(diào)
在計算機(jī)科學(xué)領(lǐng)域,最具有挑戰(zhàn)性的目標(biāo)之一就是如何建立能夠在一起工作的計算機(jī)系統(tǒng)。
由于多Agent系統(tǒng)中信息和資源的分布性以及系統(tǒng)中各個自治或者半自治Agent所擁有能力的有限性,為了實現(xiàn)系統(tǒng)設(shè)計的任務(wù)和目標(biāo),系統(tǒng)中的各個Agent需要進(jìn)行有效的協(xié)同工作。另外,主體間的協(xié)作也是多主體系統(tǒng)與其他相關(guān)研究領(lǐng)域(如分布式計算,面向?qū)ο蟮南到y(tǒng),專家系統(tǒng)等)區(qū)別開來的關(guān)鍵性概念之一。
隨著計算機(jī)系統(tǒng)越來越復(fù)雜,如何將智能的自主系統(tǒng)(即主體)集成起來,則更具挑戰(zhàn)性。而主體間的協(xié)作是保證系統(tǒng)能在一起共同工作的關(guān)鍵。
Agent之間的協(xié)作和協(xié)商是多Agent研究的核心問題之一。多Agent協(xié)調(diào)是指多個Agent通過協(xié)調(diào)各自行為,合作完成共同目標(biāo)。具有不同目標(biāo)的多個Agent對其目標(biāo)、資源等進(jìn)行合理安排,以協(xié)調(diào)各自行為,最大程度的實現(xiàn)各自目標(biāo)。協(xié)調(diào)是對環(huán)境的適應(yīng),在這個環(huán)境中存在多個Agent并且都在執(zhí)行某個動作。協(xié)調(diào)一般是改變Agent的意圖,協(xié)調(diào)的原因是由于其他Agent意圖的存在。協(xié)作是非對抗的Agent之間保持行為協(xié)調(diào)的一個特例,它通過適當(dāng)?shù)膮f(xié)調(diào),合作完成共同目標(biāo)。同時,由于應(yīng)用領(lǐng)域,問題求解方法,技術(shù)實現(xiàn)途徑等的差異性和復(fù)雜性,Agent間進(jìn)行協(xié)同的方式多種多樣,既有涉及沖突問題消解的協(xié)商,對立性的競爭,又有非對立性,友好的合作。其中請求/服務(wù)是多Agent系統(tǒng)中一類典型的合作方式。
對策和學(xué)習(xí)是Agent協(xié)作的內(nèi)在機(jī)制[4]。Agent通過交互對策,在理性約束下選擇基于對手或聯(lián)合策略的最佳響應(yīng)行動。Agent的行動選擇又必須建立在對環(huán)境和其他Agent行動了解的基礎(chǔ)上,因而需要利用學(xué)習(xí)方法建立并不斷修正對其他Agent的信念。Agent的協(xié)作始終貫穿著對策和學(xué)習(xí)的思想。多Agent系統(tǒng)的協(xié)作,從本質(zhì)上說是每個Agent學(xué)習(xí)其他Agent的行動策略模型而采取相應(yīng)的最優(yōu)反應(yīng)。Agent學(xué)習(xí)方法包括貝葉斯學(xué)習(xí)和強(qiáng)化學(xué)習(xí)等,強(qiáng)化學(xué)習(xí)是多Agent系統(tǒng)的主要學(xué)習(xí)方法。近年來,以互連網(wǎng)為實驗平臺,設(shè)計和實現(xiàn)了具有某種學(xué)習(xí)能力的用戶接口Agent和搜索引擎Agent,它們已經(jīng)成為多Agent學(xué)習(xí)系統(tǒng),在人機(jī)協(xié)作系統(tǒng)中,人也是一個Agent。
使用對策論研究多Agent協(xié)調(diào)、協(xié)作是目前MAS研究的一個熱點(diǎn),這是因為對策論被公認(rèn)為研究人類交互的最佳數(shù)學(xué)工具,將這一工具應(yīng)用于多Agent的交互是很自然的。傳統(tǒng)對策論的協(xié)調(diào)與協(xié)作一般通過建立對方效用模型實現(xiàn)。多Agent的協(xié)調(diào)與協(xié)作有如下3個實現(xiàn)方法:
①無通訊的協(xié)調(diào)(協(xié)作),其方法與傳統(tǒng)對策論相似。
②有中心控制的通信協(xié)調(diào):類似于傳統(tǒng)操作系統(tǒng)的方法。
③協(xié)商:協(xié)商是多Agent系統(tǒng)實現(xiàn)協(xié)同、協(xié)作、沖突消解和矛盾處理的關(guān)鍵環(huán)節(jié),其關(guān)鍵技術(shù)有協(xié)商協(xié)議、協(xié)商策略和協(xié)商處理3種。
Internet和WWW己成為世界范圍內(nèi)的電子商務(wù)工具。Internet用戶的不斷增長將在網(wǎng)絡(luò)學(xué)習(xí)中帶來無限希望。同時,網(wǎng)絡(luò)低帶寬,高延遲越來越成為限制網(wǎng)絡(luò)應(yīng)用發(fā)展和推廣的一個瓶頸。人們希望通過軟件來解決這個矛盾,移動A gent就是在這種形式下提出的一種新的分布式計算模型。
移動Agent模式的關(guān)鍵特征[5]就是網(wǎng)絡(luò)中的任一主機(jī)都擁有處理資源、處理器和方法組合的高度靈活性,方法沒有鎖定在一臺主機(jī)上,而是在整個網(wǎng)絡(luò)內(nèi)共享。移動Agent模式為分布式系統(tǒng)的設(shè)計、實現(xiàn)和維護(hù)帶來了新的活力,該模式能減輕網(wǎng)絡(luò)負(fù)載、克服網(wǎng)絡(luò)隱患并封裝協(xié)議。移動Agent的應(yīng)變能力具有自然異構(gòu)性,移動Agent的異步自主運(yùn)行具有健壯性和容錯性,移動Agent不同于網(wǎng)絡(luò)執(zhí)行,它能夠不斷地從一個網(wǎng)絡(luò)位置移動到另一個位置,也能夠根據(jù)自己的選擇進(jìn)行移動。移動Agent不同于進(jìn)程遷移,一般來說系統(tǒng)不允許進(jìn)程選擇遷移的時間和地址,而移動Agent帶有狀態(tài),所以可以根據(jù)應(yīng)用的需要在任意時刻移動,并可移動到它想去的任何地方。移動Agent不需要統(tǒng)一的調(diào)度,由用戶創(chuàng)建的Agent可以在不同節(jié)點(diǎn)上異步地運(yùn)行,待任務(wù)完成后再將結(jié)果傳送給用戶。為了完成某項任務(wù),用戶可以創(chuàng)建多個Agent,同時在一個或若干個節(jié)點(diǎn)上運(yùn)行,形成并行求解能力。
因此,隨著網(wǎng)絡(luò)教育的發(fā)展,就需要移動Agent技術(shù)來解決網(wǎng)絡(luò)教學(xué)中對教學(xué)情況的控制和監(jiān)督以及與其他Agent之間的通訊交流。
移動Agent支持離線運(yùn)行,提供本地交互和多跳的解決方式,對網(wǎng)絡(luò)考試系統(tǒng)具有發(fā)放(push)和回?。╬ull)兩種工作形式。網(wǎng)絡(luò)考試對于每個考生的實時信息非常敏感,移動Agent降低了網(wǎng)絡(luò)負(fù)擔(dān),Agent可以被派遣到遠(yuǎn)地去搜索信息,并創(chuàng)建新的Agent處理具體的內(nèi)容,把有用的數(shù)據(jù)返回本地,免去了數(shù)據(jù)的大量傳遞,因此很適合用于網(wǎng)絡(luò)考試系統(tǒng)。
計算機(jī)支持的協(xié)同學(xué)習(xí)[6](以CSCL)是由計算機(jī)支持協(xié)同工作(CSCW)與合作學(xué)習(xí)的理論和教育方法相結(jié)合而成的一種新的學(xué)習(xí)方法研究。由于多媒體網(wǎng)絡(luò)的發(fā)展,這種通過人-機(jī)交互、機(jī)-機(jī)交互間接實現(xiàn)的人與人交互仍然可以擁有視聽覺形象系統(tǒng)通道和視、聽覺符號信息通道。因此CSCL的交互包含有面對面、文字和圖像以及視頻媒體、程序軟件等交互形式的不同特點(diǎn),進(jìn)而保證了學(xué)習(xí)者之間進(jìn)行有效協(xié)作所需的必要交互。
在支持協(xié)同工作與環(huán)境中,教師提出一個明確的任務(wù),學(xué)生以小組的形式組織,分工合作,有的用計算機(jī)查資料,有的進(jìn)行一部分計算與信息處理,形成文檔,小組共同完成該任務(wù);教師觀測學(xué)習(xí)的進(jìn)行過程,并組織小組的交流,相互幫助與競爭,保證教學(xué)目標(biāo)的實現(xiàn)。這種學(xué)習(xí)方法不僅讓學(xué)生像專業(yè)人從事工作一樣利用計算機(jī)環(huán)境解決問題、進(jìn)行學(xué)習(xí)有關(guān)知識和培養(yǎng)解決問題的能力;而且以小組形式組織,分工合作、既有合作與相互幫助的一面,又有競爭與達(dá)到目標(biāo)的一方面,它的發(fā)展正引起廣泛注意。
在CSCL環(huán)境中,要注意設(shè)計兩類合作和協(xié)商關(guān)系[7]:
1)學(xué)生與學(xué)生的合作 這是合作學(xué)習(xí)的關(guān)鍵,學(xué)生的合作互動取決于如下幾個因素的設(shè)計:問題(任務(wù))的提出、回報的獲得,小組的狀態(tài),交互的技巧等。
2)教師與學(xué)生的合作 教師作為學(xué)習(xí)過程中的主導(dǎo)人物,引導(dǎo)、幫助、促進(jìn)學(xué)生的學(xué)習(xí)。
一個CSCL系統(tǒng)按從低層到高層可依次劃分協(xié)作鏈路層、協(xié)作控制層、互學(xué)習(xí)層等3個層面。因此,交互性和協(xié)作性是實現(xiàn) CSCL系統(tǒng)最關(guān)鍵的兩個問題。CSCL的交互包含有面對面、文字和圖像以及視頻媒體、程序軟件等交互形式的不同特點(diǎn),進(jìn)而保證了學(xué)習(xí)者之間進(jìn)行有效協(xié)作所需的必要交互。CSCL的交互是為實現(xiàn)最終協(xié)作學(xué)習(xí)的必要條件,解決交互問題僅僅是CSCL實現(xiàn)的第一步驟,要使學(xué)習(xí)者產(chǎn)生協(xié)作學(xué)習(xí)行為,必須提供協(xié)作的機(jī)制[8]。
1)支持共享信息 提供共享信息的功能,不僅可以使成員個體獲得更多、更廣、更新的信息,而且也會使協(xié)作組成為信息接受的整體,加強(qiáng)內(nèi)部凝聚力。
2)支持共享活動 協(xié)作學(xué)習(xí)目標(biāo)的實現(xiàn)都是通過一系列共享活動如集體討論、輪流發(fā)言、流線操作等來實現(xiàn)的。
3)支持角色扮演 協(xié)同學(xué)習(xí)中學(xué)生,教師,管理員各司其職,共擔(dān)榮辱。
4)支持創(chuàng)造行為 學(xué)習(xí)過程中達(dá)到此目標(biāo)的過程是多維的,協(xié)同學(xué)習(xí)過程本身就會促進(jìn)個體自身學(xué)習(xí)觀念、方法等內(nèi)部知識、技能結(jié)構(gòu)的極大豐富,所以新的觀點(diǎn)、思路、策略常常會涌現(xiàn)出來。
5)支持控制管理 由于學(xué)生在學(xué)習(xí)過程中交互多樣化而且極為復(fù)雜,各個成員的學(xué)習(xí)行為也大不一樣,為使協(xié)作和諧一致,需要完善的控制管理策略。
從邏輯上講,一個分布式系統(tǒng)可以定義為由多個相互作用的Agent組成的系統(tǒng),各種分布式系統(tǒng)的差異主要表現(xiàn)為其中Agent的角色和交互方式上的差別。例如分布式客戶/服務(wù)器系統(tǒng)是這樣的分布式系統(tǒng),其中的Agent或為客戶或為服務(wù)器,交互關(guān)系僅限于客戶主動請求/服務(wù)器被動服務(wù)的交互方式。然而,這種基于Agent的分布式系統(tǒng)[9]觀使人們跳出了客戶/服務(wù)器系統(tǒng)的局限,適應(yīng)了應(yīng)用需求的發(fā)展。
[1]曹曉葉.基于Web的個性化、智能化計算機(jī)輔助教學(xué)系統(tǒng)改進(jìn)及實現(xiàn)[D]廣州:華南理工大學(xué),2002:52-54.
[2]王曉東.基于Ontology知識庫系統(tǒng)建模與應(yīng)用研究[D].上海:華東師范大學(xué),2003:64-69.
[3]劉韶峰,廖力清.基于粗糙集理論的饋線自動化技術(shù)[J].傳感器世界,2009(6):45-47.LIU Shao-feng,LIAO Li-qing.Rough set theory based feeder automation technologies[J].Sensors World, 2009 (6):45-47.
[4]翟軍昌,秦玉平,王春立.基于多Agent的垃圾郵件過濾系統(tǒng)的研究 [J].長春理工大學(xué)學(xué)報:自然科學(xué)版,2009(2):58-59.DI Jun-chang.QIN Yu-ping.WANG Chun-li.Multi Agent based spam filtering system[J].Changchun University of Technology:Natural Science,2009 (2):58-59.
[5]孫筱川,趙敏,顧偉,等.VxWorks下多Agent現(xiàn)場總線測控系統(tǒng)設(shè)計[J].計算機(jī)技術(shù)與發(fā)展,2009(6):32-35.SUN Xiao-chuan,ZHAO Min,GU Wei,et al.VxWorks multi Agent field bus control system design[J].Computer Technology and Development,2009 (6):32-35.
[6]周敏,占銘,郭媛.基于知識驅(qū)動的大型設(shè)備智能預(yù)測決策模型研究[J].機(jī)械科學(xué)與技術(shù),2009(4):47-48.ZHOU Min,ZHAN Ming,GUO Yuan.In the large-scale knowledge-driven decision-making model for intelligent predictive device[J].Mechanical Science and Technology,2009(4):47-48.
[7]尤杰,韓松臣.基于多Agent的機(jī)場場面最優(yōu)滑行路徑算法[J].交通運(yùn)輸工程學(xué)報,2009(1):63-65.YOU Jie,HANG Song-chen.Agent-based multi-path algorithm airport scenes optimal sliding[J].Traffic and Transportation Engineering,2009 (1):63-65.
[8]熊金泉,古和今,段隆振.基于XML的多Agent通信體系結(jié)構(gòu)[J].南昌大學(xué)學(xué)報:理科版,2008(3):78-80.XIONG Jin-quan.GU He-jin,DUAN Long-zhen.XML-based multi-agent communication architecture[J].Nanchang University:Natural Science,2008 (3):78-80.
[9]生桂勇.基于Agent的分布式計算[J].現(xiàn)代電子技術(shù),2009(12):52-54,58.SHENG Gui-yong.Distributed computing based on Agent[J].Modern Electronics Technique,2009(12):52-54,58.