摘要:為向多臺農(nóng)業(yè)機(jī)械協(xié)同作業(yè)應(yīng)用場景提供地圖和導(dǎo)航服務(wù)支持,,設(shè)計并開發(fā)了基于WebGIS的農(nóng)機(jī)多機(jī)協(xié)同導(dǎo)航服務(wù)平臺,該平臺由GIS服務(wù)和農(nóng)機(jī)調(diào)度2個功能模塊組成,。GIS模塊基于GeoServer和JavaWeb提供網(wǎng)頁端地圖服務(wù),,在顯示農(nóng)場地圖、實時標(biāo)注農(nóng)機(jī)位置的同時,,也提供多農(nóng)機(jī)導(dǎo)航結(jié)果的可視化顯示功能,;農(nóng)機(jī)調(diào)度模塊以路徑規(guī)劃算法和任務(wù)分配算法為核心,,負(fù)責(zé)提供導(dǎo)航服務(wù),在用戶輸入任務(wù)列表并調(diào)用服務(wù)的情況下,,以GeoJSON格式返回各農(nóng)機(jī)的任務(wù)分配以及路徑規(guī)劃結(jié)果,。此外,為了篩選出滿足平臺需求且性能最優(yōu)的算法,,針對路徑規(guī)劃算法設(shè)計了算法性能對比實驗,,在導(dǎo)航距離近、中,、遠(yuǎn)的3條路徑上分別測試了基于A*,、Bellman-Ford、Dijkstra,、Floyd和SPFA 5種算法的路徑規(guī)劃算法,,并對不同算法的執(zhí)行時間和最優(yōu)路徑長度進(jìn)行了對比;針對任務(wù)分配算法設(shè)計了不同任務(wù)數(shù)量場景下的仿真對比實驗,,在任務(wù)數(shù)量為8,、10、14,、18的場景下分別測試了基于蟻群算法和遺傳算法的任務(wù)分配算法,,并對兩者的執(zhí)行速度和最優(yōu)路徑長度進(jìn)行了對比。結(jié)果表明:基于Dijkstra算法的路徑規(guī)劃算法在結(jié)果最優(yōu)的前提下執(zhí)行速度最快,平均單次執(zhí)行時間為0.25ms,?;谶z傳算法的任務(wù)分配算法可以有效降低多機(jī)協(xié)同的路徑代價,相較于隨機(jī)生成的工作序列,,路徑代價減少50%~54%;相較于基于蟻群算法的任務(wù)分配算法,,農(nóng)機(jī)最佳路徑長度減少19%~36%,,執(zhí)行時間減少51%~66%,平均執(zhí)行時間在1s以內(nèi),。開發(fā)的多機(jī)協(xié)同導(dǎo)航服務(wù)平臺通過使用Dijkstra算法和遺傳算法分別進(jìn)行路徑規(guī)劃和任務(wù)分配,,能夠基本滿足多機(jī)協(xié)同作業(yè)的實時性需求。