基于黑板的多Agent智能決策支持系統(tǒng)的Agent實(shí)現(xiàn)
Agent是人工智能和對(duì)象實(shí)體相結(jié)合的產(chǎn)物,是能夠獨(dú)立、自動(dòng)代替用戶(hù)執(zhí)行某一特定任務(wù)的程序。Agent所具有的自治、協(xié)作、學(xué)習(xí)、歸納、推理等特性能夠支持各階段的決策制定和問(wèn)題求解,增強(qiáng)傳統(tǒng)決策支持系統(tǒng)的功能?;?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/Agent">Agent的結(jié)構(gòu)提供可柔性、可變性、魯棒性,適用于解決一些動(dòng)態(tài)的,不確定的和分布式的問(wèn)題。Agent之間通過(guò)相互調(diào)度、合作協(xié)同完成大規(guī)模的復(fù)雜問(wèn)題求解。由于絕大多數(shù)工作都是在特定的群體環(huán)境中由組成群體的各主體分工協(xié)作、共同完成的。大多數(shù)工作同時(shí)伴隨著決策過(guò)程,而決策過(guò)程的優(yōu)劣直接影響工作任務(wù)的順利完成,因此,Agent技術(shù)使建立一個(gè)網(wǎng)絡(luò)化、智能化、集成化的人機(jī)協(xié)調(diào)的智能決策支持系統(tǒng)成為現(xiàn)實(shí)。
在傳統(tǒng)的智能決策支持系統(tǒng)的基礎(chǔ)上,提出了一種基于黑板的多Agent智能決策支持系統(tǒng)。在該系統(tǒng)中,黑板能為分布式結(jié)構(gòu)系統(tǒng)提供公共工作區(qū),每個(gè)Agent可利用黑板充分交換信息、數(shù)據(jù)和知識(shí),任意時(shí)候訪(fǎng)問(wèn)黑板,查詢(xún)發(fā)布內(nèi)容,然后各自提取所需的工作信息,以便完成各自擔(dān)當(dāng)?shù)娜蝿?wù),并且通過(guò)黑板協(xié)調(diào)各個(gè)Agent,使多個(gè)Agent共同協(xié)作來(lái)求解給定的問(wèn)題,同時(shí)強(qiáng)調(diào)將決策者的智慧和系統(tǒng)相結(jié)合。
2 基于黑板的多Agent智能決策支持系統(tǒng)
在基于黑板的多Agent智能決策支持系統(tǒng)中,每種決策任務(wù)或功能是由獨(dú)立的Agent完成,各種Agent通過(guò)相應(yīng)標(biāo)準(zhǔn)從各自角度分析問(wèn)題,每個(gè)Agent能力、意志和信念的不同,使它們具有問(wèn)題求解領(lǐng)域的知識(shí)以及問(wèn)題求解的技能也不同。不同的Agent從自身角度審視決策問(wèn)題獨(dú)立完成子任務(wù),然后通過(guò)黑板協(xié)同合作實(shí)現(xiàn)共同目標(biāo)。由于A(yíng)gent的自治性和實(shí)體化,可以隨時(shí)加入或離開(kāi)一個(gè)問(wèn)題求解系統(tǒng),使得決策者方便地參與到?jīng)Q策過(guò)程中,從而保證系統(tǒng)的靈活性。這里所構(gòu)建的系統(tǒng)結(jié)構(gòu)為交互層、智能決策層和資源層的3層體系結(jié)構(gòu),如圖1所示。其中智能界面Agent和決策用戶(hù)組成交互層;黑板、功能Agent和決策Agent組成智能決策層;模型庫(kù)及模型庫(kù)管理系統(tǒng)、知識(shí)庫(kù)及知識(shí)庫(kù)管理系統(tǒng)、方法庫(kù)及方法庫(kù)管理系統(tǒng)及數(shù)據(jù)倉(cāng)庫(kù)和多庫(kù)協(xié)同器組成資源層。
2.1 智能界面Agent
智能界面Agent是基于A(yíng)gent的智能決策支持系統(tǒng)體系結(jié)構(gòu)中與決策者聯(lián)系的部件,能夠獨(dú)立持續(xù)運(yùn)行。系統(tǒng)通過(guò)它和決策者通信,或利用學(xué)習(xí)用戶(hù)的目標(biāo)、愛(ài)好、習(xí)慣、經(jīng)驗(yàn)、行為等,使用戶(hù)高效地完成任務(wù)。智能界面A―gent代替?zhèn)鹘y(tǒng)的人機(jī)交互界面,強(qiáng)調(diào)Agent的自主性和學(xué)習(xí)性,可以主動(dòng)探測(cè)環(huán)境變化,在與用戶(hù)交互共同作用的決策中,通過(guò)不斷學(xué)習(xí),獲得用戶(hù)某些特征知識(shí),從而在決策過(guò)程中根據(jù)感知到的用戶(hù)行為方式提供合適的用戶(hù)界面,自主地做出與用戶(hù)意志相符合的策略。智能界面Agent的全局知識(shí)中主要包括:?jiǎn)栴}領(lǐng)域知識(shí)、用戶(hù)模型或用戶(hù)知識(shí)、自身知識(shí)、其他Agent能力知識(shí)。它采用發(fā)現(xiàn)和模擬用戶(hù)學(xué)習(xí)知識(shí),獲得用戶(hù)的正向和反向反饋學(xué)習(xí)知識(shí).用戶(hù)的指導(dǎo)獲得知識(shí),通過(guò)與其他Agent的通訊獲取知識(shí)等。
2.2 功能Agent
功能Agent監(jiān)督黑板數(shù)據(jù)平面變化,匹配各決策A―gent的激活條件和黑板各平面信息,將黑板上的信息發(fā)給相應(yīng)的決策Agent。功能Agent利用系統(tǒng)的消息、隊(duì)列機(jī)制發(fā)送黑板上的信息,并且負(fù)責(zé)報(bào)告系統(tǒng)運(yùn)行情況,向用戶(hù)報(bào)告任務(wù)完成情況,并提供解釋和查詢(xún)。其內(nèi)部有一個(gè)各決策Agent讀黑板的激活條件表,當(dāng)黑板各層信息變化時(shí),則檢查與該層信息變化有關(guān)的激活條件表,如果匹配,則進(jìn)一步分析,決定是直接激活相應(yīng)的決策Agent讀取黑板信息完成相應(yīng)的任務(wù)或者是做其他操作,例如提供報(bào)告和解釋等。同時(shí)還隨時(shí)提供系統(tǒng)執(zhí)行情況的查詢(xún)。它實(shí)際上就是一個(gè)可以對(duì)黑板上信息、變化進(jìn)行感知的反應(yīng)型Agent,每當(dāng)黑板上信息改變時(shí)觸發(fā)它的檢查黑板各數(shù)據(jù)平面動(dòng)作。
2.3 決策Agent
決策Agent在某個(gè)特定領(lǐng)域有解決問(wèn)題的知識(shí)和技能。把每一種決策方法設(shè)計(jì)為一個(gè)決策Agent,多個(gè)決策Agent在功能Agent的控制和監(jiān)督下,通過(guò)相互間的協(xié)調(diào)和合作,能夠解決復(fù)雜決策問(wèn)題。這類(lèi)Agent是可擴(kuò)展的,隨著決策理論的發(fā)展和智能化決策方法的進(jìn)步,可以開(kāi)發(fā)更多的決策Agent。決策Agent沒(méi)有關(guān)于外部環(huán)境的模型,沒(méi)有關(guān)于其他Agent的知識(shí),但仍然有與其他Agent交互的能力。
3 Agent的實(shí)現(xiàn)技術(shù)
3.1 Agent的抽象結(jié)構(gòu)
Agent行為包含:感知、認(rèn)知、行為3個(gè)階段。首先感知外部環(huán)境信息,然后由認(rèn)知處理部分根據(jù)自身狀態(tài),通過(guò)制定相應(yīng)的決策方案,根據(jù)決策方案從多種決策方法中選擇并執(zhí)行合適的方法,從而表現(xiàn)出主動(dòng)的智能行為。在認(rèn)知處理中,還需要進(jìn)行規(guī)劃及學(xué)習(xí)等過(guò)程,從而不斷學(xué)習(xí)新的知識(shí),使Agent智能不斷提高。行為輸出部分通過(guò)Agent行為對(duì)外界環(huán)境施加影響。以下對(duì)Agent進(jìn)行形式的抽象描述:
首先假設(shè)環(huán)境是任何離散的瞬時(shí)狀態(tài)的有限集合E:E={e,e’…},Agent有一個(gè)可執(zhí)行動(dòng)作的清單,可改變環(huán)境狀態(tài)Ac={a,a’…}為(有限的)動(dòng)作集合。
環(huán)境從某個(gè)狀態(tài)開(kāi)始,Agent選擇一個(gè)動(dòng)作作用于該狀態(tài)。動(dòng)作結(jié)果是環(huán)境可能到達(dá)的某些狀態(tài)。然而,只有一個(gè)狀態(tài)可以真正實(shí)現(xiàn),當(dāng)然,Agent事先并不知道哪個(gè)狀態(tài)會(huì)實(shí)現(xiàn)。在第二個(gè)狀態(tài)的基礎(chǔ)上,Agent繼續(xù)選擇一個(gè)動(dòng)作執(zhí)行,環(huán)境到達(dá)可能狀態(tài)集中的一個(gè)狀態(tài)。然后,Agent再選擇另一個(gè)動(dòng)作,如此繼續(xù)下去。
Agent在環(huán)境中一次執(zhí)行r是環(huán)境狀態(tài)e與動(dòng)作a交替的一個(gè)序列。假設(shè):R是所有可能的(和上的)有限序列集合:RAC是以動(dòng)作結(jié)束的序列所組成的R子集;RE是以狀態(tài)結(jié)束的序列所組成的R子集;用r,r’…代表R的成員。
為了表示Agent的動(dòng)作作用于環(huán)境的效果,引入狀態(tài)轉(zhuǎn)移函數(shù)τ:RAC→RE。狀態(tài)轉(zhuǎn)移函數(shù)建立一個(gè)執(zhí)行(假設(shè)以Agent的動(dòng)作作為結(jié)束)與可能的環(huán)境狀態(tài)集合之間的映射,這些環(huán)境狀態(tài)是動(dòng)作執(zhí)行的結(jié)果。
評(píng)論