9第九章 基于Agent的建模方法及Swarm仿真
《9第九章 基于Agent的建模方法及Swarm仿真》由會(huì)員分享,可在線閱讀,更多相關(guān)《9第九章 基于Agent的建模方法及Swarm仿真(14頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、第九章 基于Agent的建模方法及Swarm仿真 9.1 Agent的基本概念 9.1.1 Agent的定義 在英文中,“Agent”這個(gè)詞主要有三種含義: 一是指對(duì)其行為負(fù)責(zé)的人; 二是指能夠產(chǎn)生某種效果的,在物理、化學(xué)或生物意義上活躍的東西; 三是指代理,即接受某人的委托并代表他執(zhí)行某種功能。 通常認(rèn)為一個(gè)Agent應(yīng)具有以下全部或部分特征: 1) Agent是一個(gè)具有明確邊界和界面的問(wèn)題求解實(shí)體。 2) Agent處于特定環(huán)境之中,它通過(guò)感知器來(lái)觀測(cè)環(huán)境,通過(guò)效應(yīng)器來(lái)作用于環(huán)境。 3) 自治性 這是一個(gè)Agent最本質(zhì)的特征。Agent的自治性體現(xiàn)在:Agent的
2、行為應(yīng)該是主動(dòng)的、自發(fā)的(至少有一種行為是這樣的);Agent應(yīng)該有它自己的目標(biāo)或意圖;根據(jù)目標(biāo)、環(huán)境等的要求,Agent應(yīng)該對(duì)自己的短期行為做出計(jì)劃。 4) 社會(huì)性 無(wú)論是現(xiàn)實(shí)世界,還是虛擬世界,通常都是由多個(gè)Agent組成的系統(tǒng)。在該系統(tǒng)內(nèi),單個(gè)Agent的行為必須遵循和符合Agent社會(huì)的社會(huì)規(guī)則,并能通過(guò)某種Agent交互語(yǔ)言,以它們認(rèn)為合適的方式與其它Agent進(jìn)行靈活多樣的交互,并與其它Agent進(jìn)有效地行合作。 5) 反應(yīng)性 Agent能夠感知其所處的環(huán)境(可能是物理世界,或操縱人機(jī)界面的用戶,或與它進(jìn)行交互和通訊的其它Agent等等),并能及時(shí)迅速地對(duì)之作出反應(yīng),以適應(yīng)
3、環(huán)境的變化。 概括起來(lái),可以說(shuō)Agent是實(shí)際系統(tǒng)的某種抽象(一般是系統(tǒng)物理實(shí)體抽象,但根據(jù)需要也可能是系統(tǒng)功能的抽象),它能夠在一定的環(huán)境中為了滿足其設(shè)計(jì)目標(biāo),而采取一定的自主行為;Agent總是能夠感知其所處的環(huán)境(在真實(shí)世界中的Agent通過(guò)物理傳感器進(jìn)行,軟件Agent則通過(guò)軟件傳感器進(jìn)行),并且有可以影響環(huán)境的多個(gè)行為能力,能夠適應(yīng)環(huán)境的變化。 9.1.2 Agent與對(duì)象 對(duì)象與Agent之間有許多共同點(diǎn),如數(shù)據(jù)和方法的封裝,又如Agent可以擁有對(duì)象的繼承與多態(tài)等性質(zhì)。 Agent與對(duì)象之間又有一些明顯的區(qū)別: 首先就是Agent和對(duì)象的自治程度。 其次,對(duì)象和Age
4、nt的另一個(gè)重要區(qū)別是有關(guān)自治行為的靈活性(自治性、反應(yīng)性、社會(huì)性)。 標(biāo)準(zhǔn)對(duì)象模型和由Agent組成的系統(tǒng)的第三個(gè)重要區(qū)別是:對(duì)每一個(gè)Agent來(lái)說(shuō),它都有自己獨(dú)立的控制線程;而在標(biāo)準(zhǔn)的對(duì)象模型中,整個(gè)系統(tǒng)才有一個(gè)控制線程。主動(dòng)對(duì)象擁有自己的控制線程,可以在沒(méi)有其它對(duì)象控制的情況下自主地實(shí)施自己的某種行為或某些行為。主動(dòng)對(duì)象是Agent,也可以稱Agent就是主動(dòng)對(duì)象。 事實(shí)上,現(xiàn)在許多Agent開發(fā)工具和應(yīng)用實(shí)例都是用面向?qū)ο蠹夹g(shù)來(lái)實(shí)現(xiàn)的。 9.1.3 多Agent系統(tǒng) 面對(duì)復(fù)雜系統(tǒng),用單個(gè)Agent來(lái)描述顯然是不合適的,必須用多個(gè)Agent來(lái)刻畫、抽象這樣的系統(tǒng)。通常,我們就將這
5、種由多個(gè)Agent組成的系統(tǒng)稱為多Agent系統(tǒng)(MultiAgent System, MAS)。 多Agent系統(tǒng)具有以下特點(diǎn): 1) 高層次的交互 MAS除了可以描述傳統(tǒng)的客戶/服務(wù)器類型的交互方式外,還可以描述復(fù)雜的社會(huì)交互模式:合作(為了共同目標(biāo)一起工作)、協(xié)調(diào)(協(xié)調(diào)問(wèn)題求解行為以避免有害的交互或利用有益的交互)、協(xié)商(所有的參與交互的各方達(dá)成都可以接受的協(xié)議)。 2) Agent之間的豐富的組織關(guān)系 多Agent系統(tǒng)通常反映了這種組織環(huán)境,Agent之間的關(guān)系可以是來(lái)自于組織者中的各種關(guān)系,例如同等關(guān)系、上下級(jí)關(guān)系等, 3) 數(shù)據(jù)、控制、資源的分布 MAS特別適合于需要
6、多個(gè)不同的問(wèn)題求解實(shí)體相互作用共同求解某個(gè)共同的問(wèn)題或它們各自問(wèn)題的領(lǐng)域,而多數(shù)情況下,這些實(shí)體、數(shù)據(jù)和資源在物理或邏輯上是分布式的。 9.1.4 Agent的作用 1、應(yīng)用方面 1) 模塊化 2) 分散化 3) 可變性 4) 不良結(jié)構(gòu) 5) 復(fù)雜性 2、研究方面 復(fù)雜性科學(xué)是指以還原論、經(jīng)驗(yàn)論及“純科學(xué)”為基礎(chǔ)的經(jīng)典科學(xué)正在吸收系統(tǒng)論、理性論和人文精神而發(fā)展成的一門新學(xué)科?,F(xiàn)在興起了一種嶄新而前景廣闊的研究方法:基于Agent的建模與仿真技術(shù)。 9.2 基于Agent的建模方法 9.2.1 基于Agent的建模思想 基于Agent建模的思想
7、:人們將Agent作為系統(tǒng)的基本抽象單位,必要的時(shí)候可賦予Agent一定的智能(Intelligent),然后在多個(gè)Agent之間設(shè)置具體的交互(Interact)方式,從而得到相應(yīng)系統(tǒng)的模型。這樣,Agent、智能和交互便是基于Agent建模思想中最基本也是最重要的內(nèi)容. 1) Agent Agent是一個(gè)自治的計(jì)算實(shí)體,它可以通過(guò)感應(yīng)器(物理的或軟件的)來(lái)感知環(huán)境,并通過(guò)效應(yīng)器作用于環(huán)境。 2) 智能 說(shuō)Agent具有智能,并不是指它是全知全能的,也不是說(shuō)它永遠(yuǎn)不會(huì)失??;而是說(shuō)Agent在變化的環(huán)境中靈活(即具有柔性)而有理性地運(yùn)作,具有感知和效應(yīng)的能力。 3) 交互 交互是指Age
8、nt可以被其它的為追求自己的子目標(biāo)而執(zhí)行相應(yīng)任務(wù)的Agents(或人)所影響。交互可以通過(guò)他們之間共享的環(huán)境或共享的語(yǔ)言來(lái)實(shí)現(xiàn)。在合作的情況下,多個(gè)Agent通過(guò)交互,以團(tuán)隊(duì)的方式一起工作來(lái)共同完成系統(tǒng)的目標(biāo);在沖突的情況下,Agent之間要通過(guò)交流來(lái)化解沖突,最終實(shí)現(xiàn)系統(tǒng)的目標(biāo)。 基于Agent的建模是一種由底向上(Bottom-Up)的建模方法,它把Agent作為系統(tǒng)的基本抽象單位,采用相關(guān)的Agent技術(shù),先建立組成系統(tǒng)的每個(gè)個(gè)體(individual)的Agent模型(大多數(shù)時(shí)候它是比較簡(jiǎn)單的),然后采用合適的MAS體系結(jié)構(gòu)來(lái)組裝這些個(gè)體Agent,最終建立整個(gè)系統(tǒng)的系統(tǒng)模型。 9
9、.2.2 面向Agent的系統(tǒng)分析 1) 基于Agent 的MAS的系統(tǒng)層次模型 1、發(fā)現(xiàn)個(gè)體Agent 對(duì)于給定的系統(tǒng)(有確定的系統(tǒng)問(wèn)題域和系統(tǒng)邊界),發(fā)現(xiàn)個(gè)體Agent的任務(wù)就是解決這樣的問(wèn)題:將系統(tǒng)中的什么映射為Agent?也就是對(duì)系統(tǒng)進(jìn)行Agent抽象。對(duì)系統(tǒng)進(jìn)行Agent抽象的基本原則是:從系統(tǒng)的物理結(jié)構(gòu)出發(fā),圍繞著系統(tǒng)的目標(biāo)來(lái)對(duì)系統(tǒng)進(jìn)行抽象。 以系統(tǒng)的物理結(jié)構(gòu)作為抽象的基點(diǎn),就意味著可根據(jù)物理世界的實(shí)際構(gòu)成來(lái)劃分Agent。一般的處理原則是,將組成系統(tǒng)的每個(gè)實(shí)體都抽象為一個(gè)Agent(可其稱為實(shí)體Agent),這對(duì)自然的分布式系統(tǒng)尤為實(shí)用。這時(shí),有兩個(gè)問(wèn)題需要注意:
10、 1) 異質(zhì)Agent與同質(zhì)Agent的處理 2) 抽象的粒度 設(shè)計(jì)一些其它的輔助Agent,通常這類Agent被稱為集中服務(wù)Agent。 2、個(gè)體Agent的建模 1) 基于邏輯的Agent模型 在該模型中,Agent決策的制定過(guò)程是通過(guò)邏輯演繹的方式來(lái)實(shí)現(xiàn)的,類似于專家系統(tǒng)。 2) 反應(yīng)式Agent模型 在該模型中,Agent決策的制定過(guò)程是通過(guò)環(huán)境與行為的直接映射來(lái)實(shí)現(xiàn)的,如一般的控制器。 3) 信念-愿望-意圖Agent模型 在該模型中,Agent決策的制定過(guò)程是依賴于表達(dá)Agent的信念、愿望和意圖的數(shù)據(jù)結(jié)構(gòu)之間的操作來(lái)實(shí)現(xiàn)的,它更接近人類的思維方式
11、。 Agent的基本組成: 1) 每個(gè)Agent都有自己的狀態(tài)。 2) 每個(gè)Agent都擁有一個(gè)感知器來(lái)感知環(huán)境,即根據(jù)環(huán)境的狀態(tài)來(lái)改變自己狀態(tài)的方法。 3) 每個(gè)Agent都擁有一個(gè)效應(yīng)器作用于環(huán)境,即用來(lái)改變環(huán)境狀態(tài)的方法。 3、多Agent的體系結(jié)構(gòu) 1) 系統(tǒng)應(yīng)有多少Agent? 2) Agent之間采用什么樣的通信渠道? 3) Agent之間采用什么樣的通信協(xié)議? 4) 怎樣建立Agent與其相關(guān)的其它Agent之間的結(jié)構(gòu)? 5) Agent之間如何協(xié)調(diào)它們的行動(dòng)? 要解決好上述5個(gè)問(wèn)題的前提條件是:對(duì)物理系統(tǒng)的透徹了解和對(duì)系統(tǒng)目標(biāo)的準(zhǔn)確把握。在這個(gè)階段,對(duì)相
12、關(guān)技術(shù)的了解(如面向?qū)ο蟮南鬟f、常用的合同網(wǎng)協(xié)議、耗散機(jī)制等)也會(huì)促進(jìn)問(wèn)題的解決,同時(shí),可能會(huì)根據(jù)需要返回到前兩個(gè)階段進(jìn)行再分析。問(wèn)題解決后,我們就建立了一個(gè)完整的多 Agent系統(tǒng)模型。 9.3 Swarm簡(jiǎn)介 Swarm提供了用于像多agent系統(tǒng)這樣的設(shè)計(jì)、實(shí)現(xiàn)、運(yùn)行和分析的工具。 9.3.1 Swarm的思想 人工生命這樣的復(fù)雜適應(yīng)系統(tǒng)的基本特征是:分散的相對(duì)自治的實(shí)體之間以及與動(dòng)態(tài)環(huán)境之間相互交互,沒(méi)有一個(gè)集中的權(quán)威來(lái)指揮這些個(gè)體的行為:每個(gè)個(gè)體根據(jù)對(duì)環(huán)境的評(píng)估來(lái)決定它們自己的行為、內(nèi)部狀態(tài)以及與其它個(gè)體和環(huán)境的通信。 Swarm就是基于這樣的思想,描述一系列獨(dú)立的個(gè)體
13、,通過(guò)獨(dú)立事件進(jìn)行的交互作用。 建模者可用“Swarm”來(lái)作任何松散結(jié)構(gòu)的相互交互的Agent集合的容器。 Swarm這一概念之所以非常重要和具有吸引力,是因?yàn)閭€(gè)體行為與群體行為的耦合。 Swarm作為一個(gè)整體的行為是來(lái)自個(gè)體的非線性的交互,包括個(gè)體行為與群體行為之間的反饋。 9.3.2 Swarm的發(fā)展歷程 由于Swarm是一個(gè)開放式的開發(fā)平臺(tái),所以目前它不僅被研究者應(yīng)用于生物學(xué)領(lǐng)域,而且在許多領(lǐng)域中都得到了應(yīng)用:人類學(xué)、計(jì)算機(jī)科學(xué)、國(guó)防、經(jīng)濟(jì)學(xué)、生態(tài)學(xué)、地理學(xué)、工業(yè)、政治學(xué)等等. 9.3.3 Swarm的建模思想和方法 SWARM的建模思想是把一個(gè)個(gè)體、包括它的
14、部件和時(shí)間表封裝起來(lái)。一個(gè)“swarm”代表一個(gè)個(gè)體的集合和它們的行為為時(shí)間表。SWARM中的模塊化和組件思想允許建立一個(gè)靈活的模型系統(tǒng)。SWARM可以嵌套,可以直接表示多層模擬,而且它們可以被個(gè)體用作自身環(huán)境的模型。 多層次的建模方法可以提供非常有強(qiáng)的表達(dá)能力。SWARM允許用戶完整地建立和測(cè)試多層模型。SWARM可以明確地表達(dá)一個(gè)自然的結(jié)構(gòu),即一組個(gè)體緊密聯(lián)系得一個(gè)個(gè)體一樣。由于swarm,可以在模擬運(yùn)行的過(guò)程中建立和釋放,SWARM可用來(lái)建立描述多層次的動(dòng)態(tài)出現(xiàn)的模型。圖9.6表示了一個(gè)復(fù)雜的嵌套式的Swarm層次結(jié)構(gòu)。 Swarm支持個(gè)體建立自身所在環(huán)境的模型。 Swarm平臺(tái)就
15、是基于Agent的建模工具,其建模方法是從底向上(Down-Up),先構(gòu)筑每個(gè)實(shí)體Agent,再將這些Agent組裝起來(lái)形成整個(gè)系統(tǒng)的模型。 在Swarm平臺(tái)上,swarm是基本構(gòu)件,一個(gè)swarm就是一個(gè)對(duì)象,它實(shí)現(xiàn)內(nèi)存的分配和事件的規(guī)劃。 在建模和編程時(shí),可以認(rèn)為一個(gè)Swarm就是一個(gè)Agent, Agent通過(guò)規(guī)劃技術(shù)來(lái)安排自己的行為; 也可認(rèn)為一個(gè)swarm是某個(gè)組織,有多個(gè)Agent居于其中, Swarm可用規(guī)劃技術(shù)來(lái)對(duì)這些Agent的行為進(jìn)行規(guī)劃。 9.3.4 Swarm的體系結(jié)構(gòu)和仿真結(jié)構(gòu) Swarm仿真的基本單位是個(gè)體。每一個(gè)個(gè)體就像系統(tǒng)中的一個(gè)演員。它們能夠產(chǎn)生
16、動(dòng)作并影響自身和其他個(gè)體。 個(gè)體定義了Swarm系統(tǒng)中的基本對(duì)象。一個(gè)時(shí)間表規(guī)定了這些對(duì)象獨(dú)立事件發(fā)生的流程。在Swarm中,特定的行為發(fā)生在特定的時(shí)間,行為的發(fā)展按照時(shí)間表的規(guī)定進(jìn)行。 除了作為個(gè)體的容器外,Swarm自身也可以是個(gè)體。一個(gè)典型的個(gè)體是一個(gè)包括一系列規(guī)則、反映和刺激的模型。但是,一個(gè)個(gè)體自身也可以作為一個(gè)Swarm:一個(gè)對(duì)象的集合和動(dòng)作的時(shí)間表。 9.3.5 Swarm的基本特征和Java接口 9.4 Swarm應(yīng)用實(shí)例 9.4.1 熱蟲(Heatbug) 整個(gè)系統(tǒng)的基本構(gòu)成單位是Agent,每個(gè)Agent代表一個(gè)熱蟲(一種生物)。很顯然,熱蟲有其活動(dòng)的時(shí)空范圍(即環(huán)境),在Swarm中將其稱為world。在該模型中,world有空間屬性(熱蟲所處的位置)和熱量(它在系統(tǒng)運(yùn)作的時(shí)間內(nèi)不斷地產(chǎn)生并散失)。Swarm提供了2維的顯示平面來(lái)顯示world和在其中運(yùn)行的所有Agent(點(diǎn)或方框),如圖9.11。 ?。? 14
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案