杜心怡,徐 玲,蘇瑩怡,何羽亭,張 旭,丁 濤
(中國(guó)計(jì)量大學(xué),浙江 杭州 310018)
我國(guó)現(xiàn)有各級(jí)農(nóng)業(yè)園區(qū)和農(nóng)業(yè)生產(chǎn)基地在促進(jìn)產(chǎn)業(yè)集聚和推動(dòng)經(jīng)濟(jì)發(fā)展中貢獻(xiàn)重大。但與此同時(shí),園區(qū)生產(chǎn)過(guò)程中引發(fā)的環(huán)境問(wèn)題也日益突出,成為環(huán)境污染的集聚區(qū)域。政府部門通過(guò)加強(qiáng)對(duì)農(nóng)業(yè)園區(qū)污染源的日常環(huán)境監(jiān)察和巡查,有利于及時(shí)評(píng)估園區(qū)范圍內(nèi)的大氣污染狀況、監(jiān)控各污染源排放現(xiàn)狀并快速確定超標(biāo)排放污染源的準(zhǔn)確位置,對(duì)實(shí)現(xiàn)園區(qū)大氣污染的靶向治理和制定有效的應(yīng)急處置方案具有重要意義。目前污染源的日常環(huán)境監(jiān)察一般采用固定監(jiān)測(cè)站、無(wú)線傳感器網(wǎng)絡(luò)、監(jiān)測(cè)車或手持式監(jiān)測(cè)儀等方式。超標(biāo)污染源的定位一般通過(guò)將其監(jiān)測(cè)位置和污染物信息濃度相綜合,得到較粗略的濃度分布圖,進(jìn)而估計(jì)出污染源的位置[1]。但由于受地面條件、建筑物和城市道路限制,上述監(jiān)測(cè)手段往往效率不高。同時(shí)由于監(jiān)測(cè)點(diǎn)位往往分布不均勻,且事故污染源附近不一定恰好設(shè)有監(jiān)測(cè)站或被監(jiān)測(cè)點(diǎn)所包圍。雖然可以通過(guò)增加監(jiān)測(cè)站數(shù)量和觀測(cè)頻率來(lái)提高環(huán)境監(jiān)測(cè)質(zhì)量,但仍面臨著監(jiān)測(cè)范圍有限、成本高昂且機(jī)動(dòng)性差的問(wèn)題。目前研究結(jié)果表明,無(wú)人機(jī)環(huán)境監(jiān)測(cè)平臺(tái)具有機(jī)動(dòng)、靈活和監(jiān)測(cè)范圍廣等優(yōu)勢(shì),可以彌補(bǔ)現(xiàn)有固定監(jiān)測(cè)站和監(jiān)測(cè)車的不足,更有利于對(duì)大氣污染源進(jìn)行日常環(huán)境巡查[2-3]。單架無(wú)人機(jī)進(jìn)行園區(qū)內(nèi)大氣污染源監(jiān)測(cè)時(shí),由于受無(wú)人機(jī)自身續(xù)航時(shí)間限制,一次飛行只能完成部分污染源點(diǎn)位的監(jiān)測(cè)任務(wù),監(jiān)測(cè)任務(wù)的執(zhí)行效率不高[4-5],也不滿足多個(gè)污染源在監(jiān)測(cè)時(shí)間上盡量保持同步性的要求。因此,采用多架無(wú)人機(jī)來(lái)完成多個(gè)污染源的監(jiān)測(cè)十分必要[6-8]。如何根據(jù)農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)的特定問(wèn)題來(lái)研究構(gòu)建目標(biāo)函數(shù)和約束條件,并采用合適的技術(shù)手段尋找園區(qū)內(nèi)大氣污染源最優(yōu)的監(jiān)測(cè)路徑,是本文重點(diǎn)解決的問(wèn)題。
不同于傳統(tǒng)的多旅行商(mTSP)問(wèn)題,該方法根據(jù)農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)的特定問(wèn)題來(lái)構(gòu)建目標(biāo)函數(shù)和約束條件,目標(biāo)函數(shù)中考慮了各無(wú)人機(jī)監(jiān)測(cè)路徑總長(zhǎng)度最短、無(wú)人機(jī)飛行路徑轉(zhuǎn)彎角最?。ūWC飛行的平滑度以減少無(wú)人機(jī)飛行能耗)、無(wú)人機(jī)對(duì)障礙物的躲避半徑最大(該項(xiàng)可使得無(wú)人機(jī)距離障礙物的路徑適應(yīng)度值小,以保證最終得到的路徑和障礙物保持一定距離);特定的約束條件包括單架無(wú)人機(jī)續(xù)航時(shí)間限制、各污染源排放污染物類別和排放污染物數(shù)量限制、各污染源無(wú)人機(jī)停留時(shí)間限制、無(wú)人機(jī)起飛出發(fā)點(diǎn)和終點(diǎn)限制等。而后采用基于復(fù)雜變異樹的多染色體遺傳算法來(lái)對(duì)上述規(guī)劃模型進(jìn)行求解,得到最優(yōu)的農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)路徑。
該方法首先獲取目標(biāo)農(nóng)業(yè)園區(qū)的環(huán)境信息,所述環(huán)境信息包括無(wú)人機(jī)出發(fā)基地和n個(gè)污染源位置的坐標(biāo)信息、單架無(wú)人機(jī)續(xù)航時(shí)間、無(wú)人機(jī)平均飛行速度、無(wú)人機(jī)飛行單位能耗、無(wú)人機(jī)懸停單位能耗、各污染源排放污染物類別和排放污染物數(shù)量、各污染源無(wú)人機(jī)停留時(shí)間、無(wú)人機(jī)數(shù)目m等;而后根據(jù)農(nóng)業(yè)園區(qū)的環(huán)境信息構(gòu)建大氣污染源監(jiān)測(cè)的路徑優(yōu)化問(wèn)題模型,設(shè)定模型的特定目標(biāo)函數(shù)和約束條件;最后基于復(fù)雜變異樹的多染色體遺傳算法來(lái)對(duì)上述規(guī)劃模型進(jìn)行求解,得到多個(gè)無(wú)人機(jī)最優(yōu)的農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)路徑;目標(biāo)函數(shù)F為:
minF=w1·L/Lmax+w2·Dmax/D+w3·θ/θmax,
式中,w1,w2和w3為監(jiān)測(cè)路徑總長(zhǎng)度L、無(wú)人機(jī)對(duì)障礙物的躲避半徑D、無(wú)人機(jī)飛行路徑轉(zhuǎn)彎角θ的三個(gè)子目標(biāo)的權(quán)重,w1+w2+w3=1;Lmax、Dmax和 θmax為預(yù)先設(shè)定的極大值,目的為去量綱化。躲避半徑D取倒數(shù)的原因是我們期望無(wú)人機(jī)躲避半徑越大越好。
式中,Dm為第m架無(wú)人機(jī)的飛行路徑對(duì)障礙物的躲避半徑之和,g為障礙物的數(shù)量,dk為飛行路徑距離第k個(gè)障礙物的距離,rk為障礙物的最大外圍半徑。
式中,θm為第m架無(wú)人機(jī)的飛行路徑上轉(zhuǎn)彎角之和,w為轉(zhuǎn)彎角的數(shù)量,φk為飛行路徑上第k個(gè)轉(zhuǎn)彎角。
步驟S2的約束條件為:遍歷農(nóng)業(yè)園區(qū)內(nèi)所有污染源監(jiān)測(cè)點(diǎn)、無(wú)人機(jī)起飛基地和終點(diǎn)基地均為出發(fā)點(diǎn):
每個(gè)污染源僅停留一次:
單架無(wú)人機(jī)續(xù)航能力和其他約束:
式中,M為預(yù)先給定的無(wú)人機(jī)數(shù)量;m為優(yōu)化后的無(wú)人機(jī)數(shù)量。
面向農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)的多無(wú)人機(jī)路徑優(yōu)化方法的計(jì)算過(guò)程如圖1所示。具體過(guò)程如下:(1)設(shè)置基于復(fù)雜變異樹的多染色體遺傳算法的參數(shù),包括種群數(shù)量Pop、迭代次數(shù)S、無(wú)人機(jī)數(shù)量(即染色體數(shù)量)M;(2)初始化種群,根據(jù)當(dāng)前染色體數(shù)量M,采用多染色體編碼的方式對(duì)種群進(jìn)行編碼,一條染色體代表一架無(wú)人機(jī)的污染源監(jiān)測(cè)點(diǎn)序列;計(jì)算算法適應(yīng)度函數(shù);(3)隨機(jī)選擇復(fù)雜變異樹中不同復(fù)雜程度的算子,對(duì)各種群進(jìn)行優(yōu)化,復(fù)雜變異樹分為簡(jiǎn)單變異算子、一般變異算子和復(fù)雜變異算子。簡(jiǎn)單變異算子包括交換(Swap)算子、倒位(Reverse)算子、滑動(dòng)(Slide)算子、插入(Insert)算子和交叉(Crossover)算子;一般變異算子為隨機(jī)兩個(gè)簡(jiǎn)單算子結(jié)合而成,包括交換和交叉(Swap & Crossover)算子、逆轉(zhuǎn)和交叉(Reverse & Crossover)算子、滑動(dòng)和交叉(Slide & Crossover)算子、插入和滑動(dòng)(Insert & Slide)算子、插入和交叉(Insert & Crossover)算子;復(fù)雜變異算子為隨機(jī)三個(gè)簡(jiǎn)單算子結(jié)合而成,包括Swap & Reverse & Crossover算子、Slide & Insert & Crossover算子、Swap & Slide & Crossover算子、Slide & Reverse & Crossover算子;(4)判斷當(dāng)前迭代次數(shù)是否達(dá)到最大迭代次數(shù)S,若達(dá)到,則記錄當(dāng)前最優(yōu)解;否則,返回。(5)判斷當(dāng)前無(wú)人機(jī)數(shù)量(染色體數(shù)量)是否達(dá)到下限,若達(dá)到,則輸出當(dāng)前最優(yōu)解;否則,無(wú)人機(jī)數(shù)量-1,返回。
圖1 多無(wú)人機(jī)路徑優(yōu)化算法計(jì)算步驟
該實(shí)例中需要解決的技術(shù)問(wèn)題為:已知某農(nóng)業(yè)園區(qū)內(nèi)各個(gè)污染源的位置坐標(biāo)信息和各污染源排放污染物類別和污染物排放數(shù)量,以監(jiān)測(cè)區(qū)域的中心點(diǎn)為無(wú)人機(jī)出發(fā)基地,m架無(wú)人機(jī)航行到n個(gè)大氣監(jiān)測(cè)點(diǎn),最終回到出發(fā)基地;每架無(wú)人機(jī)可到多個(gè)監(jiān)測(cè)點(diǎn)進(jìn)行采樣監(jiān)測(cè),要求每個(gè)監(jiān)測(cè)點(diǎn)都被采樣監(jiān)測(cè)且每個(gè)監(jiān)測(cè)點(diǎn)只能被一架無(wú)人機(jī)采樣,根據(jù)各污染源排放污染物類別和排放污染物數(shù)量確定其采樣停留時(shí)間,m架無(wú)人機(jī)需要在完成監(jiān)測(cè)任務(wù)后再回到出發(fā)基地,要求為每架無(wú)人機(jī)規(guī)劃出最優(yōu)的監(jiān)測(cè)路徑,且無(wú)人機(jī)數(shù)量最終達(dá)到最優(yōu)化。已知目標(biāo)農(nóng)業(yè)園區(qū)占地面積為36km2,園區(qū)內(nèi)隨機(jī)分布有20個(gè)排放污染源,20個(gè)污染源的坐標(biāo)信息、污染物排放類型和無(wú)人機(jī)停留時(shí)間為已知條件;單架無(wú)人機(jī)續(xù)航時(shí)間為 40min,平均飛行速度為 5m/s;w1取 0.95,w2取 0,w3取0.05;種群數(shù)量Pop設(shè)定為80,迭代次數(shù)設(shè)定為500,初始無(wú)人機(jī)數(shù)量預(yù)設(shè)為8架。利用基于復(fù)雜變異樹的多染色體遺傳算法來(lái)對(duì)上述規(guī)劃模型進(jìn)行求解,最終得到多個(gè)無(wú)人機(jī)最優(yōu)的農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)路徑,見圖2。
圖2 農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)路徑MATLAB仿真結(jié)果
由圖2可知,優(yōu)化后的無(wú)人機(jī)數(shù)量為6架,第1架無(wú)人機(jī)的航行路徑為1→18→2→1,第2架無(wú)人機(jī)的航行路徑為1→15→20→1,第3架無(wú)人機(jī)的航行路徑為1→12→19→1,第4架無(wú)人機(jī)的航行路徑為1→16→17→11→10→1,第5架無(wú)人機(jī)的航行路徑為1→6→5→14→1,第6架無(wú)人機(jī)的航行路徑為1→4→9→13→3→8→1;6架無(wú)人機(jī)的飛行路徑總長(zhǎng)度為49.0073km,計(jì)算程序的迭代次數(shù)為435次。由計(jì)算結(jié)果可知,該方法可用于解決農(nóng)業(yè)園區(qū)污染源監(jiān)測(cè)的多無(wú)人機(jī)路徑優(yōu)化問(wèn)題。