面向Agent的軟件設(shè)計開發(fā)方法

出版時間:2009-1  出版社:電子工業(yè)出版社  作者:薛霄  頁數(shù):279  
Tag標(biāo)簽:無  

前言

Agent和多Agent系統(tǒng)(MAS)現(xiàn)在已成為一種應(yīng)對各種復(fù)雜IT情景的強大技術(shù),如生產(chǎn)過程、Web服務(wù)、基于Intemet計算的市場和分布式網(wǎng)絡(luò)管理等。然而,新近出現(xiàn)的理解認為,MAS不僅是一種有效的技術(shù),還代表了二種新型的軟件開發(fā)通用范型,即基于自主軟件實體(Agent)的設(shè)計和開發(fā)應(yīng)用。這種實體位于某個環(huán)境中,可以通過高層協(xié)議和語言的交互來靈活實現(xiàn)其目標(biāo)。這些特點非常適合于解決現(xiàn)時f青景下的復(fù)雜軟件開發(fā)。事實上,①自治的應(yīng)用組件,反映了現(xiàn)代分布式系統(tǒng)內(nèi)在的分散性,并且可視為系統(tǒng)被不同的利益相關(guān)者所擁有,在模塊化和封裝概念上進行了自然延伸;②Agent運行和交互(包括相互之間及Agent與環(huán)境之間)所采取的靈活方式,適應(yīng)于現(xiàn)今軟件在動態(tài)和不可預(yù)知的情況下運行;③Agent的概念為人工智能的成果提供了一個統(tǒng)一的觀點,通過使用Agent和MAS作為存放智能行為的、可靠的和易管理的知識庫,從而利用人工智能的成果解決現(xiàn)實世界中的問題。在過去幾年中,基于Agent的計算被日益接受為一種新型的軟件工程范型,已經(jīng)有大量的研究是關(guān)于定義合適的模型、工具和技術(shù),以支持開發(fā)復(fù)雜的MAS軟件系統(tǒng)。這些研究,即面向Agent的軟件工程(AOSE),不斷地提出各種新的建模方法和技巧、新的設(shè)計方法和工具,尤其是新型的面向Agent的范型。關(guān)于AOSE的科學(xué)論文在文獻中出現(xiàn)得越來越多,遍布在不同的會議、期刊和新聞上。因此,無論是新人還是專家,在這個領(lǐng)域中進行研究時,在操作所有這些材料時總會有困難。本書試圖將各種研究結(jié)果和建議有組織地綜合在一起,雖然非常多樣化,但都以促進。MAS的開發(fā)為相同的總體目標(biāo)。我們的希望就是,這本書能夠為研究者和學(xué)生了解AOSE的發(fā)展現(xiàn)狀提供線索,而不用在現(xiàn)有的數(shù)字圖書館中搜索數(shù)以千計的文件,也不會在無盡的搜索中迷失方向。當(dāng)然,我們需要清楚地認識到,AOSE的研究仍處于初級階段。在AOSE被廣泛接受,并且在MAS復(fù)雜軟件系統(tǒng)研究中成為實際可用的范型之前,就必須面對所出現(xiàn)的挑戰(zhàn)。出于這些原因,本書避免支持特定的技術(shù)或方法,而只是給讀者介紹不同的設(shè)計方法和實現(xiàn)技術(shù),給予他們更多的選擇余地。本書的內(nèi)容共分為五個部分。

內(nèi)容概要

在過去幾年中,Agent和多Agent系統(tǒng)(MAS)已經(jīng)成為一種應(yīng)對各種復(fù)雜IT情景的強大技術(shù),有大量的研究是關(guān)于定義合適的模型、工具和技術(shù)以支持開發(fā)復(fù)雜的MAS軟件系統(tǒng)。目前關(guān)于面向Agent(AO)方法的科學(xué)文獻出現(xiàn)得越來越多,遍布在不同的會議、期刊和時事新聞上。因此,無論是新人還是專家,在這個領(lǐng)域進行研究時,都難以操縱所有這些材料。本書試圖將各種研究結(jié)果和思想有組織地綜合在一起,雖然非常多樣化,但都以促進復(fù)雜MAS軟件系統(tǒng)的開發(fā)作為總體目標(biāo),希望能夠為研究者和學(xué)生了解AO方法的發(fā)展現(xiàn)狀提供線索,而不用在現(xiàn)有的數(shù)字圖書館中查閱數(shù)以千計的文件,也不會在無盡的搜索中迷失自己。讀者同時可以了解到軟件工程新的發(fā)展趨勢,以及如何將Agent思想應(yīng)用于目前軟件界所出現(xiàn)的種種新技術(shù)(比如SOA、網(wǎng)格服務(wù)等)中。    本書可以作為計算機軟件專業(yè)碩士生和博士生的教材和參考用書,對于從事Agent理論和技術(shù)研究的人員,尤其是從事面向Agent軟件工程研究的人員以及基于Agent技術(shù)的工程實踐人員均具有較高的參考價值。

書籍目錄

第1章  面向Agent的軟件開發(fā)抽象  1.1  引言  1.2  Agent的開發(fā)抽象  1.3  Agent的體系架構(gòu)  1.4  Agent的組織類型  1.5  Agent與組件的對比  1.6  語義重用的Agent和組件  1.7  小結(jié)第2章  面向Agen七的軟件工程  2.1  引言  2.2  關(guān)鍵主題    2.2.1  需求工程    2.2.2  語言    2.2.3  建模語言    2.2.4  平臺    2.2.5  方法學(xué)  2.3  方法過程    2.3.1  分析    2.3.2  設(shè)計    2.3.3  實現(xiàn)    2.3.4  測試  2.4  更多的信息  2.5  小結(jié)第3章  面向Agent的經(jīng)典開發(fā)方法  3.1  引言  3.2  Gaia方法    3.2.1  Gaia初始版本    3.2.2  Gaia的第2個版本    3.2.3  RoadMap方法    3.2.4  采用AUML對Gaia的擴展    3.2.5  結(jié)論  3.3  Tropos方法    3.3.1  概況    3.3.2  形式化Tropos方法    3.3.3  基于社會性的MAS架構(gòu)    3.3.4  目標(biāo)模型    3.3.5  結(jié)論  3.4  MaSE方法    3.4.1  概況    3.4.2  分析階段    3.4.3  設(shè)計階段    3.4.4  AgentTool    3.4.5  結(jié)論  3.5  小結(jié)第4章  面向Agent的特殊開發(fā)方法  4.1  引言  4.2  ADELFE方法    4.2.1  背景介紹    4.2.2  初始需求    4.2.3  最終需求    4.2.4  分析階段    4.2.5  設(shè)計階段    4.2.6  ADELFE 工具    4.2.7  結(jié)論  4.3  MESSAGE方法    4.3.1  背景介紹    4.3.2  療法綜述    4.3.3  旅行Agent案例分析/設(shè)計    4.3.4  對于底層設(shè)計的考慮    4.3.5  MESSAGE的評價    4.3.6  結(jié)論  4.4  Prometheus方法    4.4.1  方法綜述    4.4.2  系統(tǒng)規(guī)范    4.4.3  框架設(shè)計    4.4.4  詳細設(shè)計    4.4.5  工具支持    4.4.6結(jié)論    4.5小結(jié)第5章  面向Agent方法的比較和評估  5.1  引言  5.2  評估框架    5.2.1  概念和屬性    5.2.2  符號和建模技巧    5.2.3  開發(fā)過程    5.2.4  語用    5.2.5  衡量標(biāo)準(zhǔn)  5.3  對Gaia的評估    5.3.1  概念和屬性    5.3.2  符號和建模技巧    5.3.3  開發(fā)過程    5.3.4  語用  5.4  對Tropos的評估    5.4.1  概念和屬性    5.4.2  符號和建模技巧    5.4.3  開發(fā)過程    5.4.4  語用  5.5  評估MaSE    5.5.1  概念和屬性    5.5.2  符號和建模技巧    5.5.3  開發(fā)過程    5.5.4  語用  5.6  評估總結(jié)    5.6.1  支持階段    5.6.2  Agent架構(gòu)    5.6.3  開放系統(tǒng)中的交互    5.6.4  迭代開發(fā)    5.6.5  輔助要素  5.7  小結(jié)第6章  按需定制的開發(fā)框架HDA  6.1  引言  6.2  HDA的定義    6.2.1  方法工程學(xué)    6.2.2  HAD的定義    6.2.3  HDA的使用規(guī)則    6.2.4  元模型    6.2.5  潛在的問題    6.2.6  應(yīng)用的關(guān)鍵  6.3  基于HDA的設(shè)計模式劃分    6.3.1  Agent組織層次模式    6.3.2  Agent交互層次模式    6.3.3  Agent協(xié)調(diào)層次模式    6.3.4  Agent架構(gòu)層次模式    6.3.5  移動Agent層次模式  6.4  設(shè)計模式在AgentBuilder中的應(yīng)用  6.5  小結(jié)第7章  HDA在C41系統(tǒng)項目中的應(yīng)用  7.1  引言  7.2  方法選取階段    7.2.1  RoadMap建模方法    7.2.2  人工魚建模方法  7.3  需求分析階段    7.3.1  選取元模型    7.3.2  C4I系統(tǒng)中的應(yīng)用  7.4  MAS框架設(shè)計階段    7.4.1  選取元模型    7.4.2  C4I系統(tǒng)應(yīng)用  7.5  Agent建模階段    7.5.1  選取元模型    7.5.2  C4I系統(tǒng)應(yīng)用  7.6  軟件實現(xiàn)階段    7.6.1  元模型抽取    7.6.2  C4I系統(tǒng)的應(yīng)用  7.7  小結(jié)第8章  AUML方法  8.1  引言  8.2  AUML的目的  8.3  目前AUML的相關(guān)工作    8.3.1  時序圖    8.3.2  Agent類圖  8.4  AUML的發(fā)展方向    8.4.1  模型    8.4.2  工具    8.4.3  算法    8.4.4  語義學(xué)    8.4.5  應(yīng)用  8.5  小結(jié)第9章  多Agent系統(tǒng)的基礎(chǔ)設(shè)施  9.1  引言  9.2  MAS的基礎(chǔ)設(shè)施    9.2.1  MAS基礎(chǔ)設(shè)施的概念    9.2.2  MAS基礎(chǔ)設(shè)施的作用    9.2.3  基礎(chǔ)設(shè)施的授權(quán)VS控制    9.2.4  與FIPA兼容的基礎(chǔ)設(shè)施  9.3  授權(quán)型基礎(chǔ)設(shè)施JADE    9.3.1  運行時系統(tǒng)    9.3.2  Agent模型    9.3.3  測試和管理工具    9.3.4  應(yīng)用  9.4  MAS中的協(xié)調(diào)基礎(chǔ)設(shè)施    9.4.1  AS中的協(xié)調(diào)模式    9.4.2  協(xié)調(diào)對MAS工程化的影響    9.4.3  MAS協(xié)調(diào)的行為理論框架    9.4.4  制品(Artifact)與協(xié)調(diào)基礎(chǔ)設(shè)施    9.4.5  MAS工程中的協(xié)調(diào)平衡  9.5  小結(jié)第10章  面向Agent軟件工程的路線圖  10.1  引言  10.2  Agent作為新的建模范型  10.3  構(gòu)建多Agent系統(tǒng)的方法    10.3.1  FIPA對于未來MAS設(shè)計的建議    10.3.2  MAS的驗證和測試  10.4  實現(xiàn)、部署和運行的工具    10.4.1  Agent的設(shè)計工具    10.4.2  Agent的實現(xiàn)工具    10.4.3  Agent的部署工具  10.5  應(yīng)用機遇    10.5.1  信息服務(wù)中的Agent    10.5.2  普適計算中的Agent  10.6  面向Agent的軟件工程路線圖  10.7  小結(jié)參考文獻附錄A  中英文縮略詞對照表

章節(jié)摘錄

1.自治性(Autonomy)自治性也就是指一方具有獨立性,能夠根據(jù)自己的意愿來行動。從廣義上講,商務(wù)交易中參與者的自主決策就反映了自治性。沒有人能夠強迫你買賣任何東西;也沒有人能夠強迫你聽命于另一方,或者與之妥協(xié);更沒有人能夠強迫你使用某種特定的推理策略。特別地,一個自治個體甚至不需要任何外部意義下的“理智”,因為這樣的要求會限制它的自治性。如果某種方法能夠使交互各方的自治性呈現(xiàn)出良好的效果,那么這種方法應(yīng)該很容易適用于幾乎所有的場合。值得注意的是,有些場合所呈現(xiàn)出的自治現(xiàn)象,真實情況或許并不是由于自治性,而是由其他一些原因引起的。例如,參與者沒有對消息做出反應(yīng),可能并不是它做出的自治性反應(yīng),而是因為基礎(chǔ)機制失效。當(dāng)然,在相同的框架下,實現(xiàn)自治的參與者也可以自如地處理基礎(chǔ)機制的變化。因此,判斷某個行為是自治性的體現(xiàn),還是由于基礎(chǔ)機制的失效而引起的,這點可能很重要。一般來說,不受約束的計算自治性就如同現(xiàn)實世界中不受約束的自治性一樣,將會產(chǎn)生不可預(yù)期的結(jié)果。并且,為了給出完整的計算模型,或者做出可靠的預(yù)測,我們都必須假設(shè)參與者的自治I生在某種程度上受到約束。典型地,根據(jù)協(xié)議進行交互就可以實現(xiàn)對自治性的限制。2.異構(gòu)性(Heterogeneity)異構(gòu)性源于設(shè)計者構(gòu)建組件的方式相互獨立,導(dǎo)致組件的信息模型或過程模型各不相同。一般來說,在功能系統(tǒng)中,異構(gòu)性的產(chǎn)生是由于歷史原因造成的。沒有人開始就想設(shè)計一個異構(gòu)系統(tǒng),但是構(gòu)建大型系統(tǒng)的最終結(jié)果往往是異構(gòu)的。在設(shè)定一個開放系統(tǒng)的參數(shù)時,不假定內(nèi)部結(jié)構(gòu)的同質(zhì)性是非常重要的。最終,為了能夠讓這些組件一起運作,就要對它們之間的異構(gòu)性施加一定的限制。也就是說,一定要有對共同性的說明。就信息模型而言,通過一個共享本體來捕捉共同性(Gruber,1991);這是同Agent相關(guān)的,但是并不特指Agent,因為它的產(chǎn)生也是源于將異構(gòu)信息源組合起來。就過程模型而言,可以通過確定典型外部事件的方法來捕捉共同性(Singh,2003)。這個思路是,Agent的行為標(biāo)記是指對外界的響應(yīng)結(jié)果,而不需要暴露內(nèi)部的構(gòu)造細節(jié)。這些標(biāo)記具有被標(biāo)準(zhǔn)化的潛力,事實上是分布式數(shù)據(jù)庫事務(wù)處理中兩階段提交協(xié)議所采用的方法(Gray和Renter,1993)。任何按照特定標(biāo)準(zhǔn)實現(xiàn)的Agent,都被要求公布合適的特定事件,但并不需要暴露內(nèi)部的實現(xiàn)細節(jié)。3.動態(tài)性(Dynamism)動態(tài)性是指管理者能夠獨立對系統(tǒng)進行靈活配置,并且可以根據(jù)需要改變其配置,而不需要明確通知相關(guān)各方(系統(tǒng)中的其他成員)。開放系統(tǒng)具有最大程度的動態(tài)性,因為原則上它們根本不需要管理者。事實上,它們出于特定目的可能會需要一些管理功能,如監(jiān)測和安全、根據(jù)應(yīng)用限制潛在的成員參與等。原則上,這些功能可以分布于成員之間,不需要管理者,但是出于社會政治原因,系統(tǒng)中經(jīng)常需要有一方來負責(zé)。Agent方法所倡導(dǎo)的動態(tài)配置技術(shù)有一些變種,已經(jīng)被廣泛使用,例如在UDDI中。然而,更深層次的挑戰(zhàn)并不在于服務(wù)發(fā)現(xiàn),.也就是UDDI所強調(diào)的,而是在于如何從幾個可能發(fā)現(xiàn)的服務(wù)中選擇一個最合適的服務(wù)實現(xiàn)。一些與之最相關(guān)的Agent方法。

編輯推薦

《面向Agent的軟件設(shè)計開發(fā)方法》可以作為計算機軟件專業(yè)碩士生和博士生的教材和參考用書,對于從事Agent理論和技術(shù)研究的人員,尤其是從事面向Agent軟件工程研究的人員以及基于Agent技術(shù)的工程實踐人員均具有較高的參考價值。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    面向Agent的軟件設(shè)計開發(fā)方法 PDF格式下載


用戶評論 (總計1條)

 
 

  •   總體還不錯,有點抽象。。。。。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7