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
一種基于滑窗的余度指令判別算法
主站蜘蛛池模板: 日本午夜精品一本在线观看| 国产9191精品免费观看| 日韩精品久久无码中文字幕色欲| 久久国产毛片| 有专无码视频| 欧美激情首页| 中文国产成人精品久久| 国产精品性| 亚洲中字无码AV电影在线观看| 91尤物国产尤物福利在线| h视频在线播放| 久久无码免费束人妻| 国产丝袜第一页| 91久久偷偷做嫩草影院精品| 国产福利小视频高清在线观看| 欧美综合中文字幕久久| 国产区免费精品视频| 国产精品香蕉在线观看不卡| 欧美日韩亚洲综合在线观看| 欧类av怡春院| 91久久精品国产| 精品99在线观看| 色悠久久久| 久久综合久久鬼| 日韩中文精品亚洲第三区| 日韩欧美中文亚洲高清在线| 亚洲综合中文字幕国产精品欧美| 欧美午夜在线观看| 亚洲人妖在线| 97视频在线精品国自产拍| 国产香蕉一区二区在线网站| 免费亚洲成人| 日韩精品成人在线| 欧美一区二区三区国产精品| 97视频精品全国免费观看| 亚洲综合精品香蕉久久网| 成人午夜精品一级毛片| 亚洲永久色| 久青草免费在线视频| 日韩黄色在线| 亚洲欧洲自拍拍偷午夜色| 91日本在线观看亚洲精品| 国产乱码精品一区二区三区中文 | 久久综合国产乱子免费| 亚洲天堂视频在线免费观看| 黄片一区二区三区| 人妻中文久热无码丝袜| 999国产精品永久免费视频精品久久| 国产精品亚洲综合久久小说| 久久亚洲日本不卡一区二区| 国产第八页| 欧美国产成人在线| 国产一级一级毛片永久| 国产成人毛片| 亚洲性网站| 国产精品毛片一区视频播| 亚洲色精品国产一区二区三区| 欧美午夜在线播放| 成人无码一区二区三区视频在线观看 | 亚洲区第一页| 欧美亚洲一二三区 | 欧美日韩中文字幕在线| 亚洲成a人片7777| 一本久道久久综合多人| 午夜福利免费视频| 精品国产网| 全部免费特黄特色大片视频| 丁香婷婷激情综合激情| 日韩不卡免费视频| 日韩精品无码免费专网站| 夜夜操天天摸| 亚洲欧州色色免费AV| 欧洲亚洲一区| 欧美a网站| 日本一区高清| 秋霞午夜国产精品成人片| 911亚洲精品| 亚洲日本中文字幕乱码中文| 日韩成人免费网站| 亚洲无码37.| 亚洲AV免费一区二区三区| www.99精品视频在线播放|