面向Agent的軟件工程的現狀與挑戰探索論文_第1頁
面向Agent的軟件工程的現狀與挑戰探索論文_第2頁
面向Agent的軟件工程的現狀與挑戰探索論文_第3頁
面向Agent的軟件工程的現狀與挑戰探索論文_第4頁
面向Agent的軟件工程的現狀與挑戰探索論文_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第頁共頁面向Agent的軟件工程的現狀與挑戰探究論文面向Agent的軟件工程的現狀與挑戰探究論文【摘要】:^p:面向Agent軟件工程是當下軟件工程最前沿的研究方向之一,這種系統結合了Agent理論和技術,同時將軟件工程的思想、原理和原那么相結合,為基于Agent系統的開發提供工程化手段。最近幾年,隨著Web應用在Inter上的開展,同時加上軟件開發社會化的需求,基于Agent的軟件工程在學術界和工業界引起了廣泛的關注,本文主要闡述了面向Agent軟件工程的產生和開展背景,面向Agent軟件工程的研究內容,面向Agent軟件工程的研究現狀,最后討論了存在的問題和面臨的挑戰。【關鍵詞】:^p:面向Agent軟件工程;基于Agent系統;Agent理論;技術1概念面向Agent軟件工程,其工作原理是將Agent看作為模型的構成條件,同時圍繞對應的根本條件有條不紊的開展與系統相關的系列活動,被認為是目前技術性較強的軟件開發模型。不管是軟件系統還是應用系統,它的內部構成都包括多個Agent,Agent表現出來的特點主要有自發性、反響性、社會性和自主性,屬于行為自控的行為實體。Agent與Agent之間表現出來的構造關系較為復雜,其作用是由高層互相交換來實現的,在這樣的前提下到達系統設計的預期目的。面向Agent軟件工程針對系統研發來講,不僅為其構建了系統平臺,同時還完成了理論的提供和技術環境的提供。它主要通過系統的模塊分解,數據建模和抽象理論完成系統數據的闡述和管理,到達了系統設計的根本要求和目的,這樣更可以促進系統難度的提升和靈敏性的增加,在此根底上還增加了維護性特點和重用性特點。面向Agent軟件工程包括的根本思想與定義在理論論與軟件工程整體規劃處于同一個軌道線。以往的數十年間,軟件工程始終在探究一套可以促進其研發才能的系統,而這個系統根本特點要表達出來自然抽象和功能強大,在科學管理的前提下幫助系統建模工程的完成和技術改良。面向Agent軟件工程側重反映出來軟件的抽象特點和研發技術程度。2研究現狀分析^p〔1〕技術方面。面向Agent的需求工程不僅交融了Agent同時還交融了Agent系統定義自身攜帶的特性,這些特性為系統的建模及研究創造了研發條件。相關領域的分析^p涉及到的學科不僅有認知學,同時還兼具有社會與組織兩個學科。常見的研究內容涉及到的框架是i3框架、ALBERT、Tropos、NFR、RoMAS等。最近一段時期以來,研究者找到了大量面向Agent的建模語言其目的是為Agent系統描繪提供支持,為系統描繪等工作提供幫助,常見工作內容包括AgentUML,AML,MAS2ML,OrgS,CAMLE等。因為軟件Agent具備的特性和內部構造模塊的其他特點,面向Agent軟件引起研究者關注的側重點是其應用局部。通過使用面向Agent的軟件的工作形式,面向Agent軟件開發出現了形式多樣的與其相對應的系統模型,所以前提是技術手段必須具備只有這樣才可以到達系統規定的精益求精的要求。〔2〕管理方面。當前通過使用面向Agent軟件工程進展工程研發的成果較少,人們對來Agent軟件工程內在需求知之尚少,同時也不理解該軟件在實用過程中詳細要求是什么,所以未深化開展相關的探究。〔3〕工具方面。處于工具狀態下的面向Agent軟件表現出來的狀態較為靈敏。一直到如今應用領域和研究領域推向市場的Agent的CASE工具有數十種之多,在此根底上可以為面向Agent軟件工程各個研究環節創造更多的研發條件。2.1面向Agent的開發方法基于Agent以及其他相關概念、借助于面向Agent的軟件開發思想對系統進展工程化開發的方法學是面向Agent的開發方法,包括面向MicrosoftAgent的分析^p方法、面向Agent的設計方法。它提供了相應的建模語言以及構造化和良定義的過程對基于Agent系統(包含應用系統以及軟件系統)進展全方位的分析^p、描繪與建模,支持軟件壽命使用中軟件設計和需求分析^p〔從群眾化需求的分析^p〕兩個過程的軟件開發工作。到如今人們已經提出了近百種面向Agent的開發方法,并且陸陸續續有新的方法出現。大局部方法是通用的,不限定實現技術平臺和應用領域;小局部方法是專用的,專門針對某個平臺、特定的應用和某個實現技術。按照現有方法所需求的差異性和主要技術背景,可以將所有的面向Agent設計方法和軟件分析^p分為以下三個方面。實際上基于Agent系統進展分析^p和設計的方法是以各種技術手段集成在一起來進展的。〔1〕基于對象技術。該類別的方法依靠于面向某種軟件開發方法,通過將Ag-ent視為一種特殊的對象建模語言(尤其是UML)的擴大以及用現有面向對象軟件開發方法來支持對基于Agent系統進展分析^p、建模和設計。〔2〕基于知識工程。對基于Agent系統進展建模、分析^p和設計的進展依靠于知識工程(如人工智能、認知科學等)領域的邏輯概念、思想和技術。一種常用的方法是將Agent視為由各種認知部件所組成的意向系統,比方信念、目的、意圖等。代表性工作包括Tropos,DESIRE,MAS2monKADS,Styx,AAII等。〔3〕基于組織思想。這種方法的思想根底就是社會學和組織學,并且用這兩門學科中不詳細的定義來表達描繪基于,在此前提下再對其進展分析^p和建模,這些抽象的定義包括社會角色、社會組織以及組織成員共同遵守的規那么、需要承當的責任等等。該方法的典型性工作有Gaia,AALAADIN,Ro2MAS等。①幾乎所有的建模方式對軟件開發都有著很大的影響,主要是對開發的過程和程度協助,但是因為不同的建模方式運用的定義和語言都是不同的,所以這種幫助的程度也不會一樣。對于基于Agent系統來說,每種建模方式都具有獨特的理解認識。②假如用戶面對的是Agent的開發方法,那么就很難全面詳細的掌握所有方法的優劣、之間存在的不同以及合適使用的場所等等。從而導致根據特點確定適宜的開發形式的難度大大增加。③雖然每一種形式都有優勢,但是幾乎沒有一種形式能集中所有的優勢,有優勢的同時,也必然存在著一定的優勢。④軟件開發者之間和軟件開發者和用戶之間要想隨時實現即時有效的溝通很難,因為雖然大局部面向Agent的開發方法都差不多,可是其本質還具有很大的差異。根據以上闡述可知,形成一個保準統一、具有很大優勢,還能被所有相關人員認可的方式,將是整個學術范圍和工業范圍內的努力方向。當然,這也是一個宏大的挑戰,因為這必需要把各個面向Agent的開發方法進展比照研究,集中所有的有點,去掉所有的缺點。2.2面向Agent的程序設計面向Agent的程序設計本質上是一種新型的程序設計模型,它的根底是Agent軟件系統的開發,根本編程是Agent,而設計的目的就是Agent的運行單元。程序語言對于面向Agent的程序設計來說,是最重要的也是必不可少的一項工作。程序語言是程序員對編程改寫目的系統軟件的根底。目前來看,相關人員已經研究出了幾十種能幫助面向Agent的程序設計的程序語言。通過分析^p這些語言技術層面上的不同,的一個必要的、同時也是最根本的工具就是該程序設計的語言。程序設計員可以通過它對目的軟件系統進展編程和改寫。到如今,人們總共提出了數十種。根據這些語言技術層面的差異性,可以大致對其進展如下分類:面向Agent的程序設計語言籠統的分為以下幾類別。〔1〕以LISP技術為根底。這種程序語言以運用了LISP的語法形式而得名,它就是采用和LISP語法形式差不多的句子對Agent的組成局部進展表達,也包括對Agent系統的行為或者系統之間互相交流溝通。運用這種理論系統比擬嚴謹的語法系統來進展編程和改寫,對于進步Agent系統的功能性有很大的幫助。運用LISP的語法形式的工作分類有Shoham開發的AGENT20、還有Thomas開發的PLACA、以及Davies和Edwards提出的AG-ENT2K1。〔2〕基于邏輯技術。邏輯系統包括一階謂詞邏輯以及時序邏輯等等,邏輯系統也可以作為Agent的程序設計語言來使用,在程序編寫的時候,就用邏輯系統來對Agent系統的各種方式以及內部組成里進展表述和定義,例如相關知識、意圖和信念、原子動作和規那么等都可以用邏輯技術來表述定義。邏輯技術的理論系統和語義定義都相當嚴謹。因此運用了邏輯技術的Agent系統可以作為定理證明器來使用,Agent系統的工作過程也可以看做是一個證明定理的過程。它的典型代表有由Fisher提出的并發METATEM、由Giao和Lesperance等人提出的CON-GOLOG、由Hindriks等人提出的3APL等等。〔3〕基于對象技術。此項面向Agent程序設計的語言是在對拓展原來程序語言的根底上,運用了面向對象的軟件開發技術和軟部件技術而形成的一種Agent系統程序語言。它屬于在語言級上對Ag-ent系統程序語言提供支。通常情況下,這項技術都是把Agent系統當成一個特有的對象,用Agent內部功能的預定義軟部件來編程和實現Agent系統,它的前提是使用的軟部件必須是一組已經封裝的特殊類。運用這種技術,可以利用預編譯生成由面向對象程序設計語言(如Java)所描繪的程序代碼了,也可以把用戶編程直接表述成能運行的代碼,并且實現其在目的平臺上運行的目的。最終生成可以運行的目的代碼,還要用面向對象程序設計語言編譯器對其進展編譯。到2000年為止,面向Agent系統程序語言方面的研究經歷了一個由活潑到寂靜的過程,影響研究現狀的主要因素就是技術問題。到最近幾年,這方面的研究又再次掀起熱潮,因為人們已經清楚程序語言的設計是軟件開發順利進展的重要保證,而且是不可或缺的一環。Agent系統系統本身功能性和實用性的進步,也必需要建立在程序語言的不斷更新換代上。到目前為止,相關人員研究制定出的Agent系統程序語言,通常都有下面幾個特征:①原型化。程序語言本身就是已經固化的知識系統,實用性小。②研究性。程序語言并不能為人類工業化詳細效勞,只是用來檢驗一些理論是否正確可行。③非商業性。程序語言語言目前的開發系統環境都有待改善,其可行程度和簡便程度方面的指標還不高。2.3面向Agent的CASE工具和環境我們把幫助軟件開發者更加快速有家高效的完成Agent系統的一組軟件,稱作面向Agent的CASE工具和環境。它可以有效支持Agent系統在原有的定義和技術的根底上,對Agent系統進展開發,比方它可以為開發提供需求分析^p、軟件設計、系統實現和驗證等等。最近幾年年,有關這項技術的研究逐漸升溫,到如今為止,學術范圍和工業范圍已經公布了數十種面向Agent的CASE工具和環境,而且其種類還正呈現不斷增多的趨勢。雖然其種類繁多,特點也各有不同,可是總體來看AgentCASE工具和環境可以分成下面這幾類:〔1〕開發包和可重用庫。開發包與可重用庫的使用在很大程度上節約了軟件開發本錢。對于Agent軟件開發也是一樣。對于當下主流的軟件開發技術,如針對于軟件語言開發類的.Java、C++等。其可以通過軟件開發包和可重用庫如JATLite,MicrosoftAgent實現二次開發。實現創立Agent的軟件系統〔包括Agent類、Agent接口〕的軟件重塑,從而集成可用的軟部件系統。〔2〕體系構造框架。面向Agent的體系構造框架隨著計算機軟件的開展是非常普遍的,而針對于CASE工具環境的構造數目也是非常多的〔如OpenAgentArchitecture,JAFMAS等〕這類工具框架的主要作用就是構建軟件運行機制,實現內部體系的運作,構建快速通道Agent。〔3〕開發工具集。開發工具集工作環境通常只有獨立一個,這樣是為了后期處理系統的完好性和統一性。主要代表有AgentBuilder,Zeus等,其主要價值是用以支持軟件開發人員對目的軟件系統進展分析^p、設計、實現、部署和測試等。〔4〕根底設施和平臺。根底設施和平臺主要是為面向Agent的CASE工具和環境提供效勞,主要包括通信效勞、平安效勞、目錄效勞、挪動效勞等在類的根底效勞,目前在我國主要流行的面向Agent的CASE工具和環境主要有Voyager,ADE,Grasshopper等。綜上所述,在對面向Agent的CASE工具和環境的理論研究方面我們獲得了長遠的立足,但是就使用價值和使用情況來說,還是一個未知數。因此我們就要防止當下基于Agent系統開發過程中存在的諸多問題和缺乏。例如①人機交互的困難;②對象混亂,沒有實現一對一的使用形式;③缺乏明確的方法論支持;④市場通用價值。3問題和挑戰面向Agent軟件工程遠未成熟,離工業化、大規模的應用尚有很大的差距,還不能為廣闊軟件開發人員所承受,尤其是要成為一種主流的軟件工程化開發技術還面臨著一系列挑戰性的問題。3.1根底理論人們很早以前就認識Agent理論的重要性并于1963年開場萌發了Agent理論研究的研究思想,但是知道20世紀90年代年后人們才真正意義上上的重視起來并著手開場研究。自從人們認識到Agent理論的重要性以后,大量的科研人員不斷對其進展研究,無論是Agent的理論還是詳細的實際應用人們絲毫不放過任何可以進展研究利用的方面。鑒于整個軟件系統的質量的好壞受Agent的性能的影響,在我們實際通信中就要按不同的要求設計出高性能和高品質的軟件系統。對于用戶的不同要求的用戶安裝不同大小和功能的系統。因此,對于Agent理論的根底理論研究必須掌握得非常牢靠才行。早期人們研究的這個Agent理論模型對原理進展了合理詳細的解釋,它主要的根本理論根底就是他把微帶輻射單元看成了一個在程度方向上不會產生變化的線狀的BDI邏輯和模型,而在長度的方向上,電場進展的時余弦變化。我們這樣就可以把他看做是擁有兩個開路端的原型化語言AGENT20及其解釋器。對于這個等效的解釋器,我們可以把貼片表示為,且他們做的是一樣方向的鼓勵并且都是向地面上方的半空進展輻射的縫隙。不僅如此,科學家還給出了進展這個簡單計算的計算公式,這個公式不需要進展大量的數據采集和計算,只適用于工程上的計算,但是只可以運用意圖理論和自主計算理論這兩種類型。根底理論的研究對于面向Agent軟件工程而言是極為重要,他們將為面向Agent的工程理論技術以及工具的研究與開展提供理論指導并奠定扎實的理論根底。3.2關鍵技術〔1〕軟件開發方式。通常情況,軟件開發方式主要是語言建模與過程開發的有機交融的過程。針對建模語言來說,假如技術標準進一步統一,那么我們可以完善對應的針對Agent的建模語言。這要在語言表達才能與語言簡潔性之間做出考量,包含形式化以及半形式化的語言表義根底,展露多視角、多非詳細方面的思維,給予適當的語言設備以表示在Agent系統根底上的特性,比方自然抽象和封裝這兩方面,可以在維持繁瑣Agent系統根底上進展效果性顯著的建模。針對建模過程來說,必須給予明確的釋義過程以維持針對Agent系統的軟件開發工程。特別是因為在軟件開發中常常會出現非同一抽象層次、非同一視角的該系統形式,但是眾多系統形式從內在邏輯上講是不可分割的,所以必須給予科學的技術援助以維持形式的轉化,必須針對形式間是否一致做出抽查測試。〔2〕軟件體系構造和設計形式。當前,我們對在Agent系統根底上的軟件形式層次討論還不夠深化。一些針對Agent系統的軟件開發方式與Agent類系統的技術方式的詳細施行是通過根底模板來實現的。假如用對象類和對象來比喻Agent類和Agent的話,那么對象類是Agent類,對象是Agent。可以這樣說,在Agent系統軟件模板和Agent根底之上的兩者關系不但是實際比例關系,還可以包括動態綁定之間的關聯性,來實在顯露Agent的相關特性、展現Agent技術優點和適應非靜態、非封閉系統研發的需求。除此之外,我們更要通過其他科學方法以討論、設計規劃與闡釋在Agent系統根底上的軟件整體層次,還要凝練和總結出各式各樣的設計規劃模板。我們在討論設計規劃模板和軟件重新的時候,必需要立足于Agent軟件開發建立產業,這樣的廣泛運是非常重要的。〔3〕程序設計思想和語言。目前,針對Agent系統設計開發的語言難以滿足用戶的需求,為數不多的受眾是理論界的學者和研究員。同時,使用針對Agent程序設計開發的語言系統在消費市場上并不多見,遠遠跟不上C++與Java的使用程度,它還是不成熟的技術,因此吸引不了許多軟件工作者的青睞,也無法打入軟件工程的廣闊開展空間。我們對Agent系統設計開發的討論還不夠深化,如今無論是理論界和消費中還沒有出現針對Agent程序設計開發理念的系統,以控制Agent設計語言開發和編寫結果軟件系統進的程序。一些系統設計語言的開發是根據人工智能專家的理念產生的。雖然該語言在詳細使用功能上可以略微適應針對Agent程序設計的需求,然而針對系統自身的簡易實用性沒有注入很多精力進展研究。針對這方面的理論和理論探究需要盡可能吸收自主研發的Agent執行機制和該系統的整體層次的相關經歷。4結論和進一步研究針對Agent的軟件設計開開展現了和如今不同的主要采用的技術思想方法。將此用在維持繁瑣系統的工程設計研發上,既是軟件開發技術的全新嘗試和典型形式,同時也為網格、普適計算與語義Web等相關研究給予了良好的范例。所以,這幾年理論界與其他科學界非常青睞針對Agent軟件工程的研究工作。有的人斷言,這是一次全新的工業技術____。針對Agent軟件工程設計研發的理論研究,Agent軟件工程不是一個獨立的研究分支,其主要貫穿了其他學科的很多知識。在技術手段上交融了當下研究最為熱門的學科。例如社會經濟學、組織行為學、認知科學等。使得Agent軟件工程復雜的運算系統得到了簡易處理。隨著學科之間的聯絡更加廣泛,Agent軟件工程也顯示出了自己的學科價值優勢。比方,在虛擬計算機研究領域,就利用到了Agent的概念和思想。其起到的作用將更加將計算機的分布資實現按需整合。這極大的將面向Agent軟件工程的應用價值推向市場化。一方面,計算機等計算與Agent軟件工程的有機交融將會拓寬Agent軟件工程的應用領域;除此之外,計算之間的搭接顯露了Agent軟件工程的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論