本發(fā)明涉及網(wǎng)絡(luò)信息處理技術(shù)領(lǐng)域,具體涉及一種多智能體自主協(xié)同任務分配方法。
背景技術(shù):
隨著電子和信息技術(shù)的發(fā)展,智能體的應用越來越為廣泛,如智慧制造、智慧醫(yī)療、智慧家居服務等。多智能體可以通過網(wǎng)絡(luò)實現(xiàn)彼此之間的復雜性連接,促進彼此之間的信息交換和狀態(tài)識別,構(gòu)成實時動態(tài)的多智能體網(wǎng)絡(luò)以協(xié)同實現(xiàn)特定環(huán)境下的任務目標。
在特定應用環(huán)境中,每個智能體都有不同于其它智能體的特征表象。每個智能體都有其各自的任務目標、資源能力及任務偏好,而為了自我目標的達成,多智能體成員會向組織貢獻不同程度的能力或資源,以滿足特定任務的要求。因此,在多智能體環(huán)境下,機器人需要自主協(xié)調(diào)規(guī)劃不同智能體之間的任務,以期形成多智能體既有資源可滿足的,同時又可使其偏好最大化的共同目標。
由于信息技術(shù)的發(fā)展應用,多智能體環(huán)境下的每個機器人的任務目標、所具有的資源能力及偏好等信息的收集成為可能,其行為也可以通過綜合這些特點而完全得到。不同機器人之間所擁有的更多微觀層面上的動態(tài)交流溝通、信息及資源共享,刻畫了多智能體環(huán)境下的機器人任務自主協(xié)同規(guī)劃與傳統(tǒng)任務規(guī)劃的不同屬性特征。因此,需要不同的規(guī)劃技術(shù)以實現(xiàn)多智能體環(huán)境下任務規(guī)劃的高度智能,滿足不同應用環(huán)境下的智慧要求。
《智能環(huán)境下移動機器人任務規(guī)劃與執(zhí)行系統(tǒng)架構(gòu)設(shè)計》(房芳,馬旭東,錢堃,梁志偉,東南大學學報(自然科學版),2012年,第42卷,增刊(I),182-185):針對移動機器人傳統(tǒng)的確定型任務規(guī)劃和執(zhí)行問題,依據(jù)智能水平將智能體(agent)劃分為3個不同層次,最高層次的負責總體任務規(guī)劃和分配及對其它智能體(agent)的控制和協(xié)調(diào),分解后的子任務交由第二層次智能體(agent)分別執(zhí)行,第三層次的交互智能體(interaction agent)表示和機器人有行為交互的服務對象人智能體,并通過與最高層智能體(agent)的交互和協(xié)商解決避免人機/阻塞和不友好問題,在此基礎(chǔ)上構(gòu)建了機器人任務規(guī)劃與執(zhí)行的系統(tǒng)架構(gòu),包括任務計劃層、任務分配層、人機交互管理層、自主規(guī)劃層和構(gòu)建管理層等。
隨著信息技術(shù)的發(fā)展,機器人的智能性得到了很大提升,多個智能體完全可以脫離人而互相協(xié)作以完成不同任務目標,但現(xiàn)有技術(shù)仍是基于人機聯(lián)合的任務規(guī)劃技術(shù),且將固定任務目標交由一個中心管理機器人進行任務指派,本質(zhì)上仍是基于單任務目標的機器人任務規(guī)劃技術(shù),未能考慮多智能體環(huán)境中不同機器人所具有的任務目標、資源能力及其偏好對任務規(guī)劃的影響。
技術(shù)實現(xiàn)要素:
(一)解決的技術(shù)問題
針對現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種多智能體自主協(xié)同任務分配方法。
(二)技術(shù)方案
為實現(xiàn)以上目的,本發(fā)明通過以下技術(shù)方案予以實現(xiàn):
本發(fā)明提供了一種多智能體自主協(xié)同任務分配方法,所述任務分配方法包括如下步驟:
步驟一、根據(jù)每個智能體對每個任務的感知狀態(tài),構(gòu)造多智能體的任務感知矩陣,得到多智能體對每個任務的感知信息,進而得到多智能體對每個任務的感知狀態(tài)識別信息;
步驟二、根據(jù)每個智能體實現(xiàn)每個任務所具備的資源,構(gòu)造多智能體實現(xiàn)任務的資源矩陣,得到多智能體實現(xiàn)每個任務的總資源條件,進而得到多智能體實現(xiàn)每個任務的資源條件識別信息;
步驟三、根據(jù)所述感知狀態(tài)識別信息和資源條件識別信息,對每個任務的可行性進行識別,得到可行性任務集合;
步驟四、根據(jù)每個智能體對每個可行性任務的偏好程度,構(gòu)造多智能體的任務偏好矩陣;并結(jié)合每個智能體在多智能體中的重要程度,獲得每個可行性任務的可行性度;
步驟五、按照可行性度從大到小的順序,將可行性度所對應的可行性任務分配給多智能體執(zhí)行,從而實現(xiàn)任務自主協(xié)同分配。
進一步的,步驟一的具體實現(xiàn)過程包括:
步驟11、構(gòu)造多智能體的任務感知矩陣MAO:
其中,maoij為第i個智能體對第j個任務的感知狀態(tài);i=1,2,...,m;j=1,2,...,n;m和n分別為智能體和任務的個數(shù);
步驟13、按照如下公式,得到多智能體對第j個任務的感知信息;
步驟14、按照如下公式,獲得多智能體對第j個任務的感知狀態(tài)識別信息:
其中,ΔMAOj為多智能體對第j個任務的感知狀態(tài)識別信息;為多智能體對第j個任務的感知判斷標準。
進一步的,當?shù)趇個智能體感知到第j個任務,則maoij=1;否則,maoij=0;的取值為1。
進一步的,步驟二的具體實現(xiàn)過程包括:
步驟21、構(gòu)造多智能體實現(xiàn)任務的資源矩陣MAR:
其中,marij為第i個智能體實現(xiàn)第j個任務所具備的資源;i=1,2,...,m;j=1,2,...,n;m和n分別為智能體和任務的個數(shù);
步驟22、按照如下公式,獲得多智能體實現(xiàn)第j個任務的總資源條件:
步驟23、按照如下公式,獲得多智能體實現(xiàn)第j個任務的資源條件識別信息;
其中,ΔMARj為多智能體實現(xiàn)第j個任務的資源條件識別信息;為多智能體實現(xiàn)第j個任務所應具備的最低資源條件。
進一步的,步驟三的具體實現(xiàn)過程包括:
判斷感知狀態(tài)識別信息是否等于0,且資源條件識別信息是否大于等于0,如是,則該感知狀態(tài)識別信息或資源條件識別信息所對應的任務屬于可行性任務集合F,其狀態(tài)向量為S=[1,0,0,0];如否,則該感知狀態(tài)識別信息或資源條件識別信息所對應的任務不屬于可行性任務集合。
進一步的,步驟四的具體實現(xiàn)過程包括:
步驟41、構(gòu)造多智能體的任務偏好矩陣MAP:
其中,mapij'為第i個智能體對第j'個可行性任務的偏好程度;j=1,2,...,n;n′為可行性任務集合F中可行性任務的個數(shù);
步驟42、按照如下公式,獲得第i個智能體在多智能體中的重要程度;
其中,和分別為第i個智能體對于可行性任務的信息貢獻度和資源貢獻度;
步驟43、按照如下公式,獲得第j'個可行性任務的可行性度f(j');
(三)有益效果
本發(fā)明提供了一種多智能體自主協(xié)同任務分配方法。具備一下有益效果:
1、本發(fā)明不考慮人為因素對智能體的任務分配的影響,給出了多智能體環(huán)境下的任務自主協(xié)同分配的普適性方法;
2、本發(fā)明解決了傳統(tǒng)單任務規(guī)劃的局限性,從信息交互及資源共享等群體成員協(xié)同交互的角度,分析了多智能體環(huán)境下機器人的任務特點,并根據(jù)狀態(tài)向量,將任務劃分為可行性任務和不可行性任務,降低了運算量,提高了協(xié)同分配效率,從而給出了多任務分配的一般解決方法。
3、本發(fā)明以任務狀態(tài)識別的方式,實現(xiàn)機器人多任務目標的自主協(xié)同規(guī)劃,并將機器人任務偏好考慮在內(nèi),確保了滿足多智能體偏好的最佳任務選擇。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明的多智能體自主協(xié)同任務分配流程示意圖;
圖2為本發(fā)明的任務的四種狀態(tài)。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
根據(jù)智能體對任務的感知狀態(tài)及所擁有的資源,給出任務的四種狀態(tài),如圖2所示:
①可行性狀態(tài):智能體的任務清晰,同時具有足夠的資源實現(xiàn)該任務;
②資源非可行性狀態(tài):智能體雖然任務清晰,但不具備實現(xiàn)該任務的資源條件;
③感知非可行性狀態(tài):雖然智能體具備實現(xiàn)某個任務的資源條件,但由于信息的非對稱性,使智能體未能感知到該任務,使該任務處于感知非可行性狀態(tài);
④完全非可行性狀態(tài):智能體未能感知到某個任務,同時也不具備實現(xiàn)該任務的資源條件。
基于上述對智能體的任務狀態(tài)分析,進行多智能體的任務協(xié)同分配。本發(fā)明的構(gòu)思如下:
首先根據(jù)智能體對任務的感知狀態(tài)及任務資源的擁有情況,將從任務集合中識別出可行性任務,然后結(jié)合智能體對不同可行性任務的偏好程度,得到各個可行性任務的可行性度;并按照可行性度從大到小的順序,將可行性度所對應的可行性任務分配給多智能體執(zhí)行,從而實現(xiàn)任務自主協(xié)同分配。
基于上述構(gòu)思,本實施例給出了一種多智能體自主協(xié)同任務分配方法,如圖1所示,該任務分配方法包括如下步驟:
步驟一、根據(jù)每個智能體對每個任務的感知狀態(tài),構(gòu)造多智能體的任務感知矩陣,得到多智能體對每個任務的感知信息,進而得到多智能體對每個任務的感知狀態(tài)識別信息。
本步驟的具體實現(xiàn)過程包括:
步驟11、構(gòu)造多智能體的任務感知矩陣MAO:
其中,maoij為第i個智能體對第j個任務的感知狀態(tài);i=1,2,...,m;j=1,2,...,n;m和n分別為智能體和任務的個數(shù);
步驟13、按照如下公式獲得多智能體第j個任務的感知信息;
步驟14、按照如下公式,獲得多智能體對第j個任務的感知狀態(tài)識別信息:
其中,ΔMAOj為多智能體對第j個任務的感知狀態(tài)識別信息;為多智能體對第j個任務的感知判斷標準。
本實施例中,當?shù)趇個智能體感知到第j個任務,則maoij=1;否則maoij=1。的取值優(yōu)選為1。
步驟二、根據(jù)每個智能體實現(xiàn)每個任務所具備的資源,構(gòu)造多智能體實現(xiàn)任務的資源矩陣,得到多智能體實現(xiàn)每個任務的總資源條件,進而得到多智能體實現(xiàn)每個任務的資源條件識別信息。
本步驟的具體實現(xiàn)過程包括:
步驟21、構(gòu)造多智能體實現(xiàn)任務的資源矩陣MAR:
其中,marij為第i個智能體實現(xiàn)第j個任務所具備的資源;
步驟22、按照如下公式,獲得多智能體實現(xiàn)第j個任務的總資源條件:
步驟23、按照如下公式,獲得多智能體實現(xiàn)第j個任務的資源條件識別信息;
其中,ΔMARj為多智能體實現(xiàn)第j個任務的資源條件識別信息;為多智能體實現(xiàn)第j個任務所應具備的最低資源條件。
步驟三、根據(jù)感知狀態(tài)識別信息和資源條件識別信息,對每個任務的可行性進行識別,得到可行性任務集合。
具體實現(xiàn)過程包括:
判斷感知狀態(tài)識別信息是否等于0,且資源條件識別信息是否大于等于0,如是,則該感知狀態(tài)識別信息或資源條件識別信息所對應的任務屬于可行性任務集合F,其狀態(tài)向量為S=[1,0,0,0];如否,則該感知狀態(tài)識別信息或資源條件識別信息所對應的任務不屬于可行性任務集合。
表1任務狀態(tài)識別向量
步驟四、根據(jù)每個智能體對每個可行性任務的偏好程度,構(gòu)造多智能體的任務偏好矩陣;并結(jié)合每個智能體在多智能體中的重要程度,獲得每個可行性任務的可行性度。
本步驟的具體實現(xiàn)過程包括:
步驟41、構(gòu)造多智能體的任務偏好矩陣MAP:
其中,mapij'為第i個智能體對第j'個可行性任務的偏好程度;j′=1,2,...,n′;n′為可行性任務集合F中可行性任務的個數(shù),mapij'可預先設(shè)定,如將各個智能體對各個任務初始設(shè)定的執(zhí)行編號的倒數(shù)作為各個智能體的執(zhí)行偏好。
步驟42、按照如下公式,獲得第i個智能體在多智能體中的重要程度;
其中,和分別為第i個智能體對于可行性任務的信息貢獻度和資源貢獻度;
步驟43、按照如下公式,獲得第j'個可行性任務的可行性度f(j');
步驟五、按照可行性度從大到小的順序,將可行性度所對應的可行性任務分配給多智能體執(zhí)行,從而實現(xiàn)任務自主協(xié)同分配。
下面以具體的實施例來進行描述本發(fā)明的技術(shù)方案:
假設(shè)某智慧車間,存在M1、M2、M3、M4四個智能機器人,現(xiàn)需要完成3個訂單的加工任務,在不影響訂單交付日期的前提下,隨機將其指派給不同的機器人以作為其各自的任務目標。完成每個訂單所需要的工時作為完成不同任務的最低資源條件,表2給出了不同訂單的分配情況及每個智能機器人所具有的工時能力。
表2任務感知及任務資源
針對不同任務,表3給出了不同智能機器人的初始執(zhí)行順序,本實施例將其對應執(zhí)行編號的倒數(shù)作為不同智能機器人的執(zhí)行偏好。
表3任務執(zhí)行順序
運用公式(2)、(4),可計算得出3個任務所處的狀態(tài),如表4所示。運用公式(6)、(7)分別計算智能機器人對可行性任務的感知貢獻度和資源貢獻度,據(jù)此可以綜合得到多智能機器人的重要度向量w=[w1,w2,w3,w4]=[0.467,0.599,0.429,0.505]。運用公式(8)計算得出每個任務的最終可行性度,見表4。由表4可知,按照表4中的可行性度從大到小的順序,即訂單2、訂單1和訂單3的順序,作為多智能機器人當下的執(zhí)行任務的順序。
表4任務狀態(tài)向量及可執(zhí)行性
需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。