多智能體分布式協(xié)同定位方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于信號(hào)處理技術(shù)領(lǐng)域,特別設(shè)及一種多智能體分布式協(xié)同定位方法。
【背景技術(shù)】
[0002] 智能體泛指具有智能的實(shí)體,通常具有計(jì)算能力、通信能力、響應(yīng)能力等功能,常 見的智能體有人造衛(wèi)星、無人機(jī)、無人車、智能家居、智能硬件、機(jī)電一體化傳感器等等。自 身位置待定的智能體稱為普通智能體,已知自身位置的實(shí)體或者具有絕對(duì)定位能力的實(shí)體 均稱為錯(cuò)點(diǎn)智能體,簡(jiǎn)稱錯(cuò)點(diǎn)。
[0003] 錯(cuò)點(diǎn)指已知自身位置的一類實(shí)體,可W是一類具有絕對(duì)定位能力的特殊智能體, 也可W是具有絕對(duì)定位能力的其他實(shí)體;普通智能體指自身位置待定的智能體;ri代表智 能體i的真實(shí)位置矢量,gw?代表智能體i對(duì)智能體j位置的估計(jì)量;M代表智能體i鄰近的 錯(cuò)點(diǎn)集合,八^代表智能體1鄰近的普通智能體集合,八4郝,^:均已排序,其集合大小分別用 /^和^表示,集合中的第k個(gè)錯(cuò)點(diǎn)或鄰近智能體分別表示為八1.W和八。
[0004] 隨著社會(huì)需求的快速增長(zhǎng)和科學(xué)技術(shù)的不斷進(jìn)步,可W利用多個(gè)相對(duì)簡(jiǎn)單的智能 體協(xié)同配合工作組合成多智能體系統(tǒng),完成原本復(fù)雜大型化的單一智能體才能勝任的任 務(wù)。多智能體系統(tǒng)得到了人們?nèi)找鎻V泛的重視與應(yīng)用,例如常見的多智能體系統(tǒng)有無線傳 感器網(wǎng)絡(luò)、合成孔徑相機(jī)等,通過多個(gè)簡(jiǎn)單智能體配合工作,可W實(shí)現(xiàn)復(fù)雜的環(huán)境監(jiān)測(cè)、目 標(biāo)跟蹤、高分辨率成像等功能。智能體定位是多智能體系統(tǒng)的關(guān)鍵技術(shù)之一,大量協(xié)同任務(wù) 都高度依賴于定位能力和定位精度。為所有智能體配備定位裝置(例如GPS模塊、北斗模塊 等)是昂貴且高功耗的,尤其不適合擁有成百上千數(shù)量智能體的大規(guī)模多智能體系統(tǒng)。
[0005] 多智能體系統(tǒng)的定位問題可W表述為,如何利用系統(tǒng)中較少的錯(cuò)點(diǎn)去定位系統(tǒng)中 眾多普通智能體。
[0006] 多智能體系統(tǒng)的定位方法可W分為集中式方法和分布式方法兩大類,分布式方法 又可細(xì)分為增量式和并行式兩小類。
[0007] 中國(guó)專利200910000855.3公布了一種傳感器網(wǎng)絡(luò)的無線定位方法,各無線傳感器 分別將自身獲得的信號(hào)通過樹形網(wǎng)絡(luò)傳達(dá)到總臺(tái)服務(wù)器,總臺(tái)服務(wù)器對(duì)全部信號(hào)進(jìn)行集中 處理,進(jìn)而計(jì)算出每個(gè)傳感器的位置,再通過樹形網(wǎng)絡(luò)分發(fā)回每個(gè)智能體,從而實(shí)現(xiàn)多智能 體的定位,該方法屬于集中式定位方法。該方法通過總臺(tái)服務(wù)器進(jìn)行集中的信息匯總、計(jì)算 和分發(fā),因此總臺(tái)服務(wù)器的計(jì)算代價(jià)、通信代價(jià)和成本代價(jià)巨大,受網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的限制嚴(yán) 重,而且一旦總臺(tái)服務(wù)器失效,則其定位功能完全失效,因此不適合大規(guī)模多智能體系統(tǒng)。 [000引中國(guó)專利201310072598.0公布了一種無線傳感器網(wǎng)絡(luò)中智能體的定位方法,待定 位智能體查詢與自身鄰近的錯(cuò)點(diǎn)信息表,當(dāng)其鄰近的錯(cuò)點(diǎn)數(shù)目大于或者等于3個(gè)時(shí),該待定 位智能體與錯(cuò)點(diǎn)進(jìn)行測(cè)距,獲得至少3個(gè)測(cè)距樣本,進(jìn)而采用最大似然估計(jì)算法獲得待定位 智能體的位置坐標(biāo),當(dāng)某個(gè)智能體完成定位后,運(yùn)個(gè)智能體又充當(dāng)起新的錯(cuò)點(diǎn),輔助其他智 能體進(jìn)行定位,因此該方法的定位是一層一層擴(kuò)增的,屬于增量式的分布式定位方法。增量 式方法相比集中式方法而言,具有一定的分布計(jì)算的特征,因此降低了對(duì)任意節(jié)點(diǎn)計(jì)算通 信能力的要求。然而運(yùn)種方法也具有較大的缺點(diǎn),主要有兩個(gè)方面,其一,增量式方法中每 個(gè)智能體只能利用智能體與錯(cuò)點(diǎn)之間的測(cè)距信息進(jìn)行定位,而不能利用智能體與智能體之 間測(cè)距信息,定位精度較低,其二,增量式方法的定位誤差會(huì)隨著定位傳播而累積擴(kuò)大,不 適合大規(guī)模多智能體系統(tǒng)。
[0009] 中國(guó)專利200910310553.6公布了一種分布式無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位方法,包括 =個(gè)定位階段,第一階段每個(gè)智能體隨機(jī)定位,互相比較定時(shí)的時(shí)間長(zhǎng)度,將比較結(jié)果作為 一種依據(jù),自主選擇起始定位的智能體,第二階段進(jìn)行增量式定位,第=階段將運(yùn)種增量式 定位擴(kuò)大到網(wǎng)絡(luò)全局,最終達(dá)到全網(wǎng)智能體的定位。該方法屬于分布式定位方法,兼具增量 式和并行式的部分特征。該方法的主要缺點(diǎn)與增量式方法相同。
[0010] 國(guó)際期刊文獻(xiàn)中,目前廣為使用的分布式定位方法為虛擬彈黃振子松弛法(很多 文獻(xiàn)叫做方法),該方法的定位原理基于虛擬的彈黃振子模型,將位置估計(jì)值作為虛擬 的質(zhì)量振子,將鄰近距離測(cè)量值作為虛擬的彈黃力,通過模擬該虛擬系統(tǒng)的運(yùn)動(dòng)直至達(dá)到 平衡穩(wěn)態(tài),求解達(dá)到平衡穩(wěn)態(tài)時(shí)虛擬質(zhì)量振子的位置,作為最終的位置估計(jì)值,作為每個(gè)智 能體的定位結(jié)果。該方法是完全的分布式方法,具有并發(fā)特征,適合大規(guī)模多智能體系統(tǒng)的 定位,它不僅利用了智能體與錯(cuò)點(diǎn)的相對(duì)測(cè)距信息,也利用了智能體與智能體之間的相對(duì) 測(cè)距信息,因此定位精度較高。然而該方法只考慮位置的估計(jì)值,并未考慮估計(jì)值的可信度 及誤差分布概率,沒有充分利用除位置W外的其他大量有益信息,定位精度受到限制。
【發(fā)明內(nèi)容】
[0011] 本發(fā)明的目的是為解決現(xiàn)有技術(shù)存在的問題,提供一種多智能體分布式協(xié)同定位 方法,本方法可W適用于連通的任意規(guī)模多智能體網(wǎng)絡(luò),具有規(guī)??蓴U(kuò)展性,可W充分利用 多智能體網(wǎng)絡(luò)中的點(diǎn)對(duì)點(diǎn)信息,實(shí)現(xiàn)高精度的智能體定位能力,本發(fā)明方法不需要所有智 能體具有絕對(duì)定位能力,不需要智能體具有全局通信能力,可W幫助降低智能體的成本和 功耗。
[0012] 本發(fā)明提出的一種多智能體分布式協(xié)同定位方法。流程如圖1所示,包括W下步 驟:
[0013] 1)每個(gè)智能體建立用于位置估計(jì)的狀態(tài)變量,狀態(tài)變量包含該智能體的本體位置 矢量W及與它鄰近的普通智能體的他體位置矢量,每個(gè)智能體初始化狀態(tài)變量的估計(jì)值及 其對(duì)應(yīng)的誤差協(xié)方差矩陣,每個(gè)智能體初始化預(yù)測(cè)過程中的系統(tǒng)噪聲矩陣和測(cè)量噪聲矩 陣,包括W下具體步驟:
[0014] 1-1)構(gòu)造狀態(tài)變量:設(shè)智能體1建立狀態(tài)變量乂1,為馬=>^,皆,化...,/「,^了,其 中,ri代表智能體i的本體位置矢量,上標(biāo)T代表轉(zhuǎn)置,啼樹代表第n個(gè)與智能體i鄰近的普通 智能體的他體位置矢量,/、,代表所有與智能體i鄰近的普通智能體的數(shù)量,i、n、Za/;均為正 整數(shù),"\。1]、八;[ 2]、...、八',[/、;]表示鄰近智能體編號(hào);
[001引1-2)初始化定位變S:設(shè)智能體i狀態(tài)變動(dòng)1的估計(jì)值化即是初始化智能體測(cè)其本體 位置矢量及與其鄰近的普通智能體的他體位置矢量的估計(jì)值);為義..… 其中,代表智能體i對(duì)本智能體i位置矢量的估計(jì)值,代表智能體i對(duì)與其鄰近的 第n個(gè)普通智能體的他體位置矢量的估計(jì)值;初始化狀態(tài)變量在加寸刻的估計(jì)值義Iu,其中符 號(hào)IO用于指示豎線左側(cè)變量在t = 0時(shí)刻的值;智能體i根據(jù)狀態(tài)變量估計(jì)值的初始誤差,初 始化其誤差協(xié)方差矩陣Pi,得到Pilo;智能體i根據(jù)狀態(tài)變量Xi的維度,初始化系統(tǒng)噪聲矩陣 Qi;
[0016] 2)在第t = k時(shí)刻,對(duì)每個(gè)智能體的狀態(tài)變量采用實(shí)時(shí)迭代方法進(jìn)行實(shí)時(shí)估計(jì),每 一次迭代過程依次包括:對(duì)該狀態(tài)變量進(jìn)行預(yù)測(cè)、對(duì)鄰近智能體進(jìn)行相對(duì)距離的測(cè)量、對(duì)狀 態(tài)變量預(yù)測(cè)值進(jìn)行本地優(yōu)化、對(duì)狀態(tài)變量中他體位置矢量估計(jì)值進(jìn)行鄰域索求與響應(yīng)、對(duì) 狀態(tài)變量估計(jì)值進(jìn)行鄰域優(yōu)化、對(duì)狀態(tài)變量中本體位置矢量估計(jì)值進(jìn)行鄰域交換、對(duì)狀態(tài) 變量估計(jì)值進(jìn)行重建,具體步驟為:
[0017] 2-1)對(duì)狀態(tài)變量進(jìn)行預(yù)測(cè):每個(gè)智能體根據(jù)上一時(shí)刻即k-1時(shí)刻狀態(tài)變量估計(jì)值, 對(duì)k時(shí)刻的狀態(tài)變量進(jìn)行預(yù)測(cè);設(shè)智能體i在k時(shí)刻狀態(tài)變量的預(yù)測(cè)值龍1^1,誤差協(xié)方差矩 陣預(yù)測(cè)值Pi 分別為:
[00W 義L=義,L (1)
[0019] Pi IkA-I = Pi I k-1+Qi (2)
[0020] 其中,,為k-1時(shí)刻的狀態(tài)變量估計(jì)值,Pilk-I為對(duì)應(yīng)的誤差協(xié)方差矩陣;
[0021] 2-2)對(duì)鄰近智能體進(jìn)行相對(duì)距離的測(cè)量: