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

基于Pandas的仿真應用研究*

2016-11-30 01:03:04董宇暉
通信技術 2016年7期
關鍵詞:區域語言

董宇暉

(中國電子科技集團公司第十研究所,四川 成都 610036)

基于Pandas的仿真應用研究*

董宇暉

(中國電子科技集團公司第十研究所,四川 成都 610036)

傳統仿真一般選用Matlab、R、SAS、Stata語言或工具,但或多或少在數據對齊、時間序列處理、矢量計算、丟失數據處理等方面存在不足。為解決上述問題,選用金融領域的大數據分析工具Pandas(Python Data Analysis Library)進行仿真建模,實現了機載平臺AIS信號碰撞的仿真算法。同時,通過與Matlab的仿真對比,展示了Pandas的優勢所在。目前,Pandas在仿真領域的應用尚無先例,首次提出將pandas應用于仿真領域具有較高創新性,而算法實現過程為其他數據密集型仿真提供了另外一種高效途徑,具有較高的借鑒價值。

Pandas;Python;仿真;船舶自動識別系統;大數據

0 引 言

Pandas(Python Data Analysis Library)是一款使用python語言開發的大數據分析工具。Pandas最初被用于金融數據分析,由AQR Capital Management(著名的沖基金公司)開發,并于2009年推出[1]。隨著python語言的流行,在行業應用和學術研究中采用python進行科學計算的勢頭越來越猛。在數據分析和交互、探索性計算以及數據可視化等方面,python越來越接近于現有其他領域特定語言/工具,如R、Matlab、SAS、Stata等。近年來,隨著python相關領域庫(主要是pandas)的不斷改良,Pandas成為數據處理任務的一大替代工具。

相比其他語言/工具,Pandas在性能方面具有較大優勢。Pandas納入了大量庫和標準模型,能高效操作大型數據集。Pandas支持數據自動對齊,具有強大的時間序列功能,同時也具備高性能科學計算和向量計算能力。

除此之外,Pandas在算法到應用的轉換方面也具有較大優勢。目前,大多數仿真應用模式為:首先使用某種特定領域的計算語言如R、Matlab等對新想法進行建模與驗證,然后再將這些算法移植到實際系統中如Java、C、C++開發。而python在通用編程方面的巨大優勢,完全可以只使用一種語言去構建以數據為中心的應用。

本文以機載平臺AIS信號碰撞的仿真為例,展示基于Pandas仿真的實現過程,并通過與其他語言的對比,突出Pandas的優勢所在。

1 AIS信號沖突機理

AIS協議用于實現船舶間的位置、航向、航速等信息的自動交換。一般情況下,AIS設備都安裝在海上平臺。機載平臺AIS接收機擁有更大的接收范圍,但面臨一個更大的挑戰:超過AIS協議設計的觀測范圍,會引起不同區域的消息沖突,導致消息丟失。不會發生時隙沖突的區域稱為有組織區域(半徑20 nm),艦船在機載AIS的觀測區域內的分布示意圖如圖1所示。其中,大圓表示機載AIS的觀測區域,中間的小圓表示一個組織區域,小點表示艦船。

圖1 有組織區域示意

AIS協議以1分鐘為一個超幀,包含2 250個時隙。AIS協議可以協調單個有組織區域內的時隙使用,不會造成沖突,但并不具備協調不同有組織區域時隙的功能。由于機載AIS接收機具有更大的覆蓋范圍,即包含了多個有組織區域,而這些區域之間并不存在協調關系,所有當機載接收機在同一時間接收到不同自組織區域發出的消息時,將產生時隙沖突,原理如圖2所示。

根據AIS接收機同信道抑制值(8 dB),即當發生時隙沖突時,兩個信號功率相差8 dB以上時,接收機就能區分較強的信號并接收。

圖2 機載AIS時隙沖突原理

2 建模關鍵因素分析

2.1 信號源模擬

由于信號源的分布在實際情況中未知且超出接收范圍的信號源不能在第一時間被感知,為真實模擬現實情況,可以通過分析真實試飛記錄數據獲得艦船(信號源)的分布(坐標位置),從而在建模時進行場景重建。

考慮到艦船航行速度與機載平臺移動速度相比非常緩慢且仿真時長以分鐘為單位,艦船位移相對載機位移可忽略不計。因此,可將信號源視為固定,抽取第一次動態報文的速度作為發送頻度。

2.2 時隙分配模擬

為模擬時隙沖突的特性,首先需要將不同信號源按其自身經緯度屬性投放到已經劃分好的有組織區域中。其次,需要對有組織區域中的所有信號源,根據其發射頻度計算其在整個仿真區間中占用的全部時隙。當所有有組織區域都完成了推演,則整個場景時隙情況便得以重建。

為方便組織區域劃分,將有組織區域定義為邊長為40 nm的正方形區域,如圖3所示。

圖3 有組織區域仿真

由于在絕大數情況下位置報告僅需要一個時隙,為簡化仿真,假設所有信號源發射均只占用一個時隙。

2.3 其他因素

信號能否接收取決于信號功率,而信號源功率與端機發射功率、載機飛行高度、端機的接收靈敏度都有關。為便于仿真,上述因素都按照經驗值設為常量:發射功率按照A類端機設為12.5 W,飛行高度設為8 000 m,接收靈敏度設為-110 dBm。

3 基于Pandas的AIS信號沖突仿真實現

3.1 場景數據提取

需要獲取的場景數據包括各信號源經緯度、發送頻度以及載機的運動軌跡(慣導數據)。場景數據需要通過實際飛行記錄數據獲得,記錄以二進制文件形式保存,格式如圖4所示。

圖4 二 進制記錄數據格式

二進制文件解析,通過調用python標準庫中的struct和binascii模塊實現。為方便后續仿真運算,海上船只信息保存為字典數據結構,形如:{shipID_1:[longitude,latitude,fre],shipID_2:[longitude,l atitude,fre]....}。而載機的運動軌跡保存為以時間序列為索引的DataFrame。DataFrame是pandas最重要的數據結構[3],類似于Matlab中的矩陣。保存的DataFrame結構示意如表1所示。

表1 DataFrame結構示意

3.2 場景重建與時隙分配

場景重建的主要工作是將獲取的船只信息按照坐標劃分到各個有組織區域,然后對每個區域中的成員進行時隙分配。

ship2zone方法實現了將船只劃分到不同有組織區域的功能。ship2zone的基本算法是獲得船只中的最大、最小經緯度,根據有組織區域的大小計算需要劃分的網格,最后以最小經緯度作為原點,通過判斷船只坐標值范圍,實現船只的區域劃分,如圖5所示。

圖5 船只有組織區域分配

Zonesolt實現了一個有組織區域的船只時隙分配。主要代碼實現如下:

按照劃分的有組織區域,對每個區域進行時隙分配即完成了場景重建。最終得到的是由各個船只以時間標簽為索引的DataFrame矩陣的字典,如圖6所示。

圖6 船只的DataFrame

3.3 仿真運算

得到慣導數據的DataFrame和場景船只的DataFrame后,根據時間標簽對同一時隙所有的船只的接收功率進行計算。如果功率大于-110 dBm且差值大于8 dBm,則認為該時隙消息能夠被接收;反之則不能。

上述過程存在3個難點:數據(時間標簽)對齊、向量計算和缺失數據處理。

3.3.1 時間對齊

由于慣導數據時間與載機記錄周期有關,所以與船只時隙無關,即2個DataFrame含有不匹配的時間標簽。此時,如果適用matlab或R語言進行處理,需要人工對齊,否則無法完成向量計算。Pandas則提供了很多時間對齊的手段,最基本的就是使用reindex方法。Reindex方法能使用一組新的索引,重新生成一個DataFrame:

NewINSDataFrame=OldINSDataFrame. reindex(shipdf.index,method='ffill')

上面的代碼表示使用shipdf,即某一船只的時間索引,重新生成OldINSDataFrame。而method用于規定數據的填充方式,ffill是向前填充。Reindex前后時間標簽及值的變化示意如表2所示。

3.3.2 向量計算

Pandas支持類似Matlab的矩陣向量計算。計算2個DataFrame的操作與計算標量數據一樣。向量計算主要代碼實現如下:

式中,powerfun是由自由空間傳播損耗推導的信號到達載機的功率,具體的表達式為:

式中,p為端機發射功率,按照12.5 w計算;f為161.975 MHz;δ為考慮天線增益、線纜損耗后的值;d為通過經緯度、高度(8 000 m)計算的兩點間的距離。向量計算將每行需要進行的標量計算轉換成了Series(pandas的一個重要數據結構)的標量運算,其原理如表3所示。

表2 Reindex前后變化情況

表3 向量計算

Series是pandas的一個重要數據結構[2]。表3虛框中的每列都是一個Series對象實例。Pandas的向量運算可以按index(時間標簽)將每行的標量計算轉換成Series對象的標量運算:Powerfun(Slongitude, Slatitude,INSlongitude,INSlatitude),從而使原來需要迭代的計算變得更加簡便。

3.3.3 缺失數據的處理

當進行向量計算時,缺失的數據項將得到NaN,NaN表示為空。Pandas對于NaN的處理也有很多手段,可以方便地按規則填充、清除。通過fillna方法,可將NaN值置為-110:

ResFrame=ResFrame.fillna(-110)

最終我們將獲得保存功率的ResFrame,如表4所示。

表4 缺失數據的處理

按照時間標簽計算,功率大于-110 dBm且最大2個功率的差大于8 dBm,則認為該時隙消息能夠接收。

3.4 模型有效性驗證

通過matplotlib繪圖工具將單位時間內能夠接收到的消息數進行統計,如圖7所示。其中,陰影為試飛數據結果,曲線為仿真結果。由圖7結果可見,雖然二者存在部分差異,但具有較好的相似度。考慮到仿真設定條件與實際情況存在差異,認為最終結果差異在可接收范圍內。綜上所述,認為建模正確,仿真有效。

圖7 結果對比

4 性能對比

Pandas與Matlab在AIS信號沖突仿真上的對比結果,如表5所示。

表5 Pandas與Matlab性能對比

從表5可知,使用Pandas進行仿真,相比Matlab在數據對齊、缺失數據處理以及對于時間序列操作等方面更為便捷,從而帶來了較高的開發效率與運行效率。同時,支持面向對象的Pandas在算法到實際系統的移植方面也具有絕對優勢。

5 結 語

鑒于傳統仿真在數據對齊、時間序列處理、矢量計算、丟失數據處理等方面存在不足[3],探討Pandas對上述問題的解決。Pandas是python語言開發為了解決數據分析任務而創建的數據分析包。它整合了傳統仿真工具/語言的各種功能,兼具Numpy高性能科學計算功能以及電子表格和SQL數據庫靈活的數據處理功能,通過納入大量庫和標準的數據模型,提供了一種高效操作大型數據集所需的工具。

本文以機載平臺AIS信號碰撞的仿真為例,展示了基于Pandas仿真的實現過程,并通過與Matlab語言的對比,突出了Pandas的優勢所在。此外,本文首次將Pandas應用于仿真領域,也為數據密集型仿真提供了另外一種高效途徑,具有較高的創新性和借鑒價值。

[1] MsKinney W.利用Python進行數據分析[M].唐學韜譯.北京:機械工業出版社,2013. MsKinney W.Data Analysis Using Python[M].Tang Xuetao, translation.Beijing:Mechanical Industry Press,2013.

[2] Michael H.Learning pandas[M].Birmingham:Packt Publishing,2015.

[3] 邢通,李非凡,李春等.星載AIS消息碰撞的MATLAB仿真[J].電訊技術,2014(07):1006-1010. XING Tong,LI Fei-fan,LI Chun,et al.MATLAB Simulation of Spaceborne AIS Message Collision[J]. Telecommunications Technology,2014(07):1006-1010.

Simulation Application based on Pandas

DONG Yu-hui
(NO.10 Research Institute,CETC, Chengdu Sichuan 610036,China)

Traditional simulation generally chooses Matlab, R, SAS, Stata language or tools, but is usually deficient in data alignment, time series processing, vector computing, missing data processing. In order to solve the above problems, the financial field data analysis tool Pandas (Data Analysis Library Python) is choosen for modeling and simulation, Thus to realize AIS signal collision simulation algorithm. Comparison with the Matlab indicates the advantages of Pandas.At present, Pandas is not precedently used in the field of simulation. For the first time, Pandas is innovatively applied to the field of simulation, and the algorithm implementation process provides an efficient way for other data intensive simulation.

Pandas; Python; simulation;AIS; big data

TP391.9

A

1002-0802(2016)-07-0885-05

10.3969/j.issn.1002-0802.2016.07.018

2016-03-20;

2016-06-09 Received date:2016-03-20;Revised date:2016-06-09

董宇暉(1983—),男,學士,工程師,主要研究方向為計算機、通信相關領域。

猜你喜歡
區域語言
永久基本農田集中區域“禁廢”
今日農業(2021年9期)2021-11-26 07:41:24
分割區域
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
讓語言描寫搖曳多姿
多向度交往對語言磨蝕的補正之道
累積動態分析下的同聲傳譯語言壓縮
關于四色猜想
分區域
我有我語言
基于嚴重區域的多PCC點暫降頻次估計
電測與儀表(2015年5期)2015-04-09 11:30:52
主站蜘蛛池模板: 国产成人资源| 亚洲综合亚洲国产尤物| 一区二区三区在线不卡免费| 精品久久久久无码| 免费啪啪网址| 四虎成人精品| 国产精品xxx| 视频在线观看一区二区| 亚洲天堂在线免费| 国产一级毛片高清完整视频版| 国产h视频在线观看视频| 国产91精品调教在线播放| 日韩精品无码不卡无码| 国产精品福利导航| 国产欧美日韩另类| 亚洲中文字幕在线观看| 女人18毛片久久| 青青青国产视频手机| 亚洲美女一级毛片| 亚洲第一精品福利| 亚洲伊人久久精品影院| 国产在线无码av完整版在线观看| 美女黄网十八禁免费看| 国产97视频在线观看| 美女裸体18禁网站| 在线国产欧美| 天堂成人在线视频| 国产精品高清国产三级囯产AV| 波多野结衣中文字幕一区二区| 五月天在线网站| 日韩毛片免费观看| 玖玖精品视频在线观看| Jizz国产色系免费| 国内老司机精品视频在线播出| 国产99久久亚洲综合精品西瓜tv| 亚洲一级无毛片无码在线免费视频| 中文字幕一区二区人妻电影| 国产高清不卡| h网址在线观看| 青草精品视频| 她的性爱视频| 久久久精品久久久久三级| 伊在人亞洲香蕉精品區| 99热最新在线| 亚洲中文无码h在线观看| 午夜视频在线观看区二区| 亚洲九九视频| 国产一区二区福利| 伊人天堂网| 国产手机在线ΑⅤ片无码观看| 国产亚洲第一页| 久久久久人妻精品一区三寸蜜桃| 日韩av手机在线| 精品人妻一区无码视频| AV片亚洲国产男人的天堂| 在线另类稀缺国产呦| 韩国v欧美v亚洲v日本v| 成人在线观看不卡| 激情無極限的亚洲一区免费| 亚洲综合精品香蕉久久网| 中文字幕 91| 在线国产欧美| 午夜电影在线观看国产1区| 99精品热视频这里只有精品7| 91人妻日韩人妻无码专区精品| 亚洲国产中文精品va在线播放 | 青青草国产精品久久久久| 国产综合精品一区二区| 国产精品免费福利久久播放| 一级毛片免费播放视频| 亚洲第一页在线观看| 性69交片免费看| 22sihu国产精品视频影视资讯| 国产成人精品免费av| 亚洲成人一区二区三区| 成人一区在线| 国产96在线 | 四虎精品免费久久| 在线观看国产网址你懂的| 国产精品v欧美| 99re在线免费视频| 亚洲美女AV免费一区|