999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

群體機器人程序更新系統的設計

2013-09-17 10:31:18陳曉松
微型電腦應用 2013年2期
關鍵詞:指令程序

陳曉松

0 引言

群體智能作為一個新興領域,自20世紀80年代出現以來,受到了學術界和各行各業的廣泛關注。如今,群體智能逐步從理論研究向工程應用過渡。相比較抽象的行為算法,群體實驗越來越突顯其重要性。

在功能調試過程中或需求發生改變時,使用者需要對機器人節點進行再編程。對于數量相當可觀的群體來說,依靠人力頻繁地對群體中所有節點逐個進行程序更新,將耗費巨大的時間成本。一種解決辦法是采用無線通信的方式(群體機器人一般具有無線通信功能),將新程序文件發送給需要再編程的機器人節點,讓節點進行自我更新。無線廣播的程序更新方式具有避免人工插拔、方便并行燒錄和在線更新程序等優點。

在無線傳感網絡領域,通過無線廣播實現網絡中批量節點程序更新的研究總結如下。

2003 年UC Berkeley公布了一種多跳無線傳感器網絡的數據分發技術[1],其中提出的Deluge協議,很好地解決了可靠數據分發的問題。2010 年浙江大學的Wei Dong 提出以每個函數作為單元對程序進行更新的思路[2]。這種方法減少了通信量,但依賴于特定的編程語言和編譯器,對于不同的軟硬件平臺一般不具有可移植性。

與無線傳感網絡相比,群體機器人[3]程序更新具有其特殊性,如群體布局范圍有限,多數節點在相互的通信范圍之內;群體實驗中節點程序更新更加頻繁,要求更新過程能迅速收斂等。

1 系統框架

系統分為兩個部分,基站和待更新節點。基站根據待更新的目標程序和當前節點中運行的程序副本,生成補丁文件(即差異文件),并將文件廣播出去;節點接收到完整的補丁文件后,對其解碼,并進行自身程序的更新。更新完成后,節點向基站發送確認信號。實際通信中,使用可靠數據分發無線通信協議,確保所有節點都能快速地接收到完整正確的補丁文件。單個節點的更新過程,如圖1所示:

圖1 批量更新系統的工作流程

2 可靠數據分發協議

保證程序順利更新,首先要確保所有節點得到完整正確的目標程序數據。這就要求在不可靠的MAC層之上,設計一個可靠的運輸層數據分發協議。同時要提高通信效率和收斂速度。系統借鑒了 Deluge數據分發協議[4]并做了若干改進。

Deluge協議的設計初衷是用于進行較大規模的數據分發,比如大塊數據傳輸和遠程系統升級等。協議引入了復雜的控制信息,實現起來難度較高;同時,許多數據分發的應用場景提供Deluge 協議中的一些高級功能并不能明顯提升網絡性能,比如網絡節點較少則不需要流水線數據分發,數據塊較少則不需要分頁等。基于以上原因,論文在提出若干常見應用場景假設的基礎上,對Deluge 協議做了簡化和補充。

改進1:取消分頁,以一幀為單位進行空間多路傳輸。目標文件一般為補丁文件,即新舊程序的差值,文件較小(一般不超過5K),不需要分頁。

改進2:分為兩階段通信。第一階段為“聽取”階段,由基站廣播目標文件,所有節點只負責接收;第二階段為“交流”階段,運行原Deluge協議,所有節點相互學習直至數據完整。整個數據分發過程類似于講課過程,第一階段類似于上課聽講,第二階段類似于課下討論。在群體實驗中,大部分節點都在基站的通信范圍之內(這與Deluge協議假設的場景不同),因此,“聽取”階段可以一次完成大部分數據的接收,顯著提高了分發效率,整個過程,如圖2所示:

圖2 數據分發兩階段通信示意圖

改進3:在“交流”階段增加了應答信息。應答信息只在已完成接收節點和基站之間使用,用于幫助基站統計已完成接收的節點,控制通信過程的收斂,其內容即為待確認節點的編號。應答信息寄存在Deluge協議MAINTAIN狀態下節點的廣播廣告中,和廣播一同發送和被接收。如圖3所示:

圖3 應答過程示意圖

當某個已完成接收的節點接收到應答信息時,它將會把此信息合并到自己的廣播中;當基站接收到應答信息時,它將把對應節點的狀態設為“更新完成”。一旦所有節點都標記為“更新完成”或超時,基站將發送“重啟”命令,宣告本次更新結束。

3 補丁文件

增量式程序更新方法[5]發送新舊程序之間的差異,即“補丁”,它包含程序更新所需要的全部信息。補丁文件一般比新目標程序小得多,因此傳輸效率更高。補丁文件要盡量小,以減輕通信壓力;同時由于單個節點的資源有限,使用補丁進行更新的時間和空間開銷要足夠小。

3.1 使用補丁進行程序更新

首先定義了集成補丁文件的5種指令。節點根據這些指令進行程序更新,更新的基本單位是字節。指令定長,為2個字節,前3比特為指令標志,具體定義,如表1所示:

表1 指令定義

這里,通過一個示例說明更新指令是如何工作的,如表2所示:

表2 更新程序過程示例

我們用“命令_長度/數據”的格式代表指令,以便更清晰地進行描述。假設某個群體機器人收到了補丁文件中指令集合為第一列所示,原程序為“ABCDEF GHIJKLMOPQ RSTUVWXYZ”。

可以看出,實際上使用Delete和Insert兩條指令就能夠完成程序的更新,引入Replace和Copy指令是為了減小補丁的尺寸。

3.2 補丁生成方法

設i和j,m和n分別代表原程序A和目標程序B中的當前偏移地址和長度。使用各個更新指令的必要條件和代價,注意 Copy和 Delete指令表示的最長連續字節數為213-1=8191,如表3所示:

表3 指令的必要條件和代價

在明確了指令產生的必要條件以及每條指令的代價后,可以得出求解最小差異文件長度的遞歸式。用Cost[i,j]表示從原程序的1到i字節更新為新程序的1到j字節所需的最小代價。

為了避免遞歸求解帶了的重復運算,可以使用動態規劃的方法求解這個遞歸式,并記錄指令序列。具體參考動態規劃方法求解最小編輯距離問題[6]。

4 測試結果

在確認使用補丁進行程序更新無誤的情況下,以分發數據長度和節點數目為變量對更新效率進行了測試。測試結果,如圖4所示:

圖4 通信實驗結果

其中左右子圖中的曲線分別顯示節點個數和數據長度與更新所需時間的關系。完成更新所需時間隨節點數目和數據長度增長而增長,但小于正比例增長關系。實際上,數據通信是影響更新速度的最大因素,其中第一階段通信時間與數據長度相關,第二階段通信受節點數目影響較大。更新的絕對時間還與具體的硬件相關。

5 總結

本文針對群體智能實驗中群體機器人的再編程問題,提出了基于無線廣播的高效可靠的批量節點程序更新方法。在無線傳感網絡領域相關研究的基礎上,考慮了群體機器人的特點,提出并論述了兩階段數據分發協議和面向字節的最小程序補丁生成方法。系統在實際應用中體現出了高可靠性和高效率。驅動程序設計方案,較原來設計方案更加穩定。

[1]Adam Chlipala, Jonathan Hui, Gilman Tolle. [M]"Deluge: Data Dissemination for Network Reprogramming at Scale" ,2003.

[2]Wei Dong, Yunhao Liu, XiaofanWu Lin Gu and Chun Chen Elon: EnablingEfficient and Long-Term Reprogramming [M]forWireless Sensor Networks 2010.

[3]Gerardo Beni, “From Swarm Intelligence to Swarm Robotics”. [C]Lecture Notes in Computer Science, 2005, Volume 3342/2005, 1-9, DOI: 10.1007/978-3-540-30552-1_1

[4]Hui J. and Culler, D. "The dynamic behavior of a data dissemination protocol fornetwork programming at scale," in Proceedings of the 2nd international conference onEmbedded networked sensor systems. [J]ACM Press,2004, pp. 81-94

[5]Michiel Konstapel "Incremental software updates for wireless sensor networks"Master's Thesis [J]in Computer Science, May 24, 2006

[6]Levenshtein VI (1966)."Binary codes capable of correcting deletions, insertions, and reversals".[J]Soviet Physics Doklady 10: 707–10.

猜你喜歡
指令程序
聽我指令:大催眠術
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
一種基于滑窗的余度指令判別算法
主站蜘蛛池模板: 欧美亚洲第一页| 中文字幕av无码不卡免费| 亚洲欧美自拍视频| 亚洲欧美日韩动漫| 妇女自拍偷自拍亚洲精品| 亚洲人成网站18禁动漫无码| 97国产成人无码精品久久久| 国产不卡国语在线| 国产精品入口麻豆| 色婷婷成人| 国产一级裸网站| A级毛片无码久久精品免费| 国产美女精品一区二区| 99手机在线视频| www.99精品视频在线播放| 91在线一9|永久视频在线| 色悠久久久久久久综合网伊人| 日本不卡在线播放| 欧美激情视频一区| 亚洲美女高潮久久久久久久| 免费观看欧美性一级| 欧美亚洲一二三区| 亚洲欧美成aⅴ人在线观看| 国产精品第一区在线观看| 亚洲国产成人精品无码区性色| 九九九国产| 欧美亚洲一二三区| 亚洲天堂色色人体| 高清大学生毛片一级| 五月激情综合网| 黄色a一级视频| 国产人前露出系列视频| 亚洲三级视频在线观看| 亚洲第一成网站| 日韩无码视频专区| 亚洲日本中文字幕乱码中文 | 潮喷在线无码白浆| 亚洲国产系列| 亚洲天堂网在线视频| 搞黄网站免费观看| 色噜噜中文网| 亚洲天堂网在线观看视频| 日本亚洲最大的色成网站www| 99国产精品免费观看视频| 综合久久五月天| 国产精品区视频中文字幕| 福利视频一区| 无码国产偷倩在线播放老年人| 欧美成人综合视频| 91人妻日韩人妻无码专区精品| 亚洲第一精品福利| 久久中文字幕av不卡一区二区| 国产亚洲精久久久久久久91| 免费jjzz在在线播放国产| 国产视频入口| 久草性视频| 国产综合精品一区二区| 国产欧美自拍视频| 青青久久91| 欧美日韩国产综合视频在线观看| 最新国产午夜精品视频成人| 欧美成人午夜视频免看| 蜜芽一区二区国产精品| 在线一级毛片| 亚洲欧美日韩中文字幕一区二区三区| 黄色在线不卡| 日日拍夜夜操| V一区无码内射国产| 亚洲人成在线精品| 国产婬乱a一级毛片多女| 亚洲中字无码AV电影在线观看| 91国内外精品自在线播放| 国产日韩欧美视频| 国产无人区一区二区三区| 久久久久无码精品国产免费| 国产精品yjizz视频网一二区| 夜精品a一区二区三区| 国产一级视频久久| 国产精品久久久久久久久| 国产精品男人的天堂| av免费在线观看美女叉开腿| 五月天香蕉视频国产亚|