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

基于O riginPro的交通流NaSch模型的仿真開發

2010-03-23 10:16:58
華東交通大學學報 2010年2期

胡 輝

(1.華東交通大學經濟管理學院,江西南昌330013;2.北京交通大學交通運輸學院,北京100044)

作為數據、圖形處理的一種有力工具,OriginPro在教學科研、工程技術中的應用日益受到青睞[1-4]。除了利用軟件的菜單進行數據分析和圖形繪制外,其內嵌的Origin C語言使得應用者能靈活地根據自己的需求開發出相應的程序以解決自己的問題,如軟件中自帶的元胞自動機模型和圖形的邊緣檢測處理等程序。

在交通流系統仿真領域,1992年提出的NaSch模型一直被認為是基于元胞自動機的交通流建模的經典模型,后續的各種改進模型大多以此為基礎來分析解釋實際中的各種交通現象。該模型的實現方法有很多(如用Visual C++把模擬數據存儲在文件中),但模型仿真的兩個主要輸出結果圖:流量密度圖和時空相位圖在不少研究[5-7]中是通過OriginPro導入數據文件來完成實現的。因此為充分利用OriginPro(以下介紹的OriginPro均為7.5版本)內在的強大功能,一次性地完成建模仿真的任務,我們在分析OriginPro軟件體系的基礎上,充分挖掘了軟件潛在的強大功能,以NaSch模型為例首次應用軟件中內嵌的Origin C語言和相關開發工具進行二次開發實現了模型的仿真輸出。

1 Origin C及Origin Pro輔助開發工具

OriginPro的二次開發有兩種方法:一是使用腳本語言Lab Talk,二是應用Origin C。在實際應用中,由于腳本語言本質上是一種解釋性語言,程序執行速度慢,所以一般從性能角度會選擇編譯性的Origin C。除了支持幾乎完全的ANSIC語言語法及C++和C#的特征子集外,在OriginPro中Origin C包含兩方面的內容:

(1)全局函數。涉及到數據分析Analysis、基本輸入/輸出Basic I/O、字符/字符串處理、COM對象、繪圖Plot等26個方面,用戶在程序中可直接調用這些函數。

(2)類。包含應用程序通信類Application Communication(目前僅支持Matlab)、復合數據類(如Curve,Matrix,Dataset,Vector等)、內部Origin類(如Project,Worksheet,Datasheet,Column等)、系統類(如file,Registry等)、用戶接口控制類(如DeviceContext,progressBox,waitCursor,Window等)。

圖1是內部Origin類的關系表示,絕大多數類的基類是OriginObject。

除利用Origin C提供的函數和類外,OriginPro還提供了一些工具幫助用戶進行二次開發,主要有以下5類輔助開發工具。

圖1 O rigin內部類結構圖

(1)COM組件客戶端編程。與其他的應用程序如Excel,Word進行交互,從數據庫Access,SQL Server等讀入數據等。

(2)自動化服務器編程。在支持COM編程的應用程序如Excel中作為服務器進行交互。

(3)對話框構造器Dialog Builder。在標準控件(如Edit,Button)的基礎上支持各種復雜的人機界面,適應用戶的特定需求。

(4)ActiveX控件。在對話框構造器中可插入ActiveX控件,使得應用程序的適應性更強。

(5)應用程序加密保護。為了保證開發者的知識產權,可對應用程序的源代碼加密。使用者可運行程序,但無法看到源程序。

2 基于OriginPro的NaSch模型的設計

2.1 NaSch元胞自動機模型

作為對184號元胞自動機模型的推廣,1992年Nagel和Schreckenberg提出了著名的NaSch模型。在這一模型中,時間、空間、速度都被整數離散化。道路被劃分為離散的元胞,每個元胞或者是空的,或者是被一輛車占據,每輛車可取0,1,2,…,vmax,vmax為最大速度。相對于184號規則,NaSch模型的主要改進之處是引入了慢化概率和最大車速不再是1。在t→t+1的過程中,模型按如下規則并行演化:

(1)加速:vn→min(vn+1,vmax),對應于現實中司機期望以最大速度行駛的特性。

(2)減速:vn→min(vn,dn),駕駛員為了避免和前車發生碰撞而采取減速的措施。

(3)隨機慢化:以概率p,vn→max(vn-1,0),由各種不確定因素造成的車輛減速。

(4)運動:xn→xn+v,車輛按調整后的速度向前行駛。

xn,v分別表示n車的位置和速度;dn=xn+1-xn-l表示n車和前車n+1之間空的元胞數;l表示車輛長度。

2.2 NaSch模型的分析設計

為了實現模型的仿真,從以下3個方面對模型進行分析設計。

(1)核心類Lane。從面向對象的角度看,Lane類包括的屬性有車道長度、車長、最大速度、慢化概率、車流密度、車流量、平均速度、車道狀態等,包括的方法有更新、車流量與平均速度及車道速度的獲得等。其中,基于上述規則的更新方法是類的關鍵,以下代碼說明了如何實現周期條件下的更新規則。

(2)界面輸入。為便于控制相關的參數,如車道長度、車長、慢化概率、車流密度等參數,需要設計相應的話框獲得用戶的輸入。此外,考慮到程序運行的時間較長,加入OriginPro中的Progresss Box和Wait Cursor控件提示用戶程序的運行情況。

(3)結果輸出。為一次性得到仿真的輸出,設計兩個函數獲得輸出結果。其一是流量密度關系圖,主要是利用OriginPro的內嵌類Worksheet、Graphlayer、Curve等獲得仿真的模擬數據,并把這些數據通過調用相關類的方法實現圖形的輸出。其二是時空相位圖,主要是利用Matrix等內嵌類獲得不同時間空間的車道數據,然后以圖形方式展現。

3 NaSch模型的仿真實現

通過以上的分析設計,借助Origin C及OriginPro的輔助可開發工具,從分析設計的3個方面實現了模型的仿真。

3.1 核心類Lane的實現

進入OriginPro的Code Builder窗口,建立一個新的c或cpp文件,用關鍵詞class定義Lane,并實現其中的方法,具體過程與一般的C++類似。

3.2 界面輸入的實現

雖然OriginPro提供了簡單對話框,但對于復雜的人機界面設計,需要利用前面介紹的Dialog Builder。應用Dialog Builder的前提是Visual C++應用程序向導中有“Origin Dialog AppWizard”,一般只要安裝完OriginPro,Visual C++的應用程序向導中會有此項,否則需要手工導入軟件中自帶的ODialog.awx文件。圖2是計算流量密度關系圖的界面輸入結果,通過輸入相關參數,對模型的主要參數進行設置。

3.3 輸出結果及其意義

NaSch模型的仿真結果主要有兩個即流量密度圖和時空相位圖。為此,定義兩個函數NaSch-DensityFlux()和NaSh-TimeSpace()實現模型仿真結果的輸出,圖3是程序執行NaSch-DensityFlux運行過程中的情況。圖4是分別執行這兩個程序后的輸出結果,左邊是流量密度圖,右邊是時空相位圖,模型參數與設置界面中一樣,時空相位圖的時間步為50000到50500。其中,流量-密度圖表明路段密度與路段流量的關系并非簡單的線性關系:開始沒有車輛時,路段密度為0,流量也為0;而隨著路段密度的增大,路段流量也逐漸增大,但當路段密度大約為0.22輛/單位長度時,路段流量達到最大約為0.45輛/單位時間,此后隨之遞減,當路段密度為1(也即路段上全充滿車輛時),流量為0,意味著路段完全擁堵,車輛無法前行,這在一定程度上反映了實際中的流量-密度關系。而時空相位圖中顏色較深的則反映了隨著時間的遞進,路段上出現了擁擠現象,而且擁擠在往后傳播,這也與實際中通過航拍發現路段的擁擠現象類似[5],說明采用的模型能模擬出現實交通中擁堵的形成。

圖2 NaSch模型參數設置界面

圖3 NaSch模型運行過程

圖4 NaSch模型運行仿真結果

4 結束語

深度挖掘OriginPro功能自動化實現交通流中的元胞自動機建模是一次新的嘗試,相信他的應用對于類似系統的仿真研究(如其他的元胞自動機模型)有一定參考價值。從實際應用結果來看,雖然達到了要求,但程序運行的時間相對于用Visual C++編寫的程序時間長了不少。因此,可以改進的方向應是如何在Visual C++類似的環境中調用OriginPro的對象方法來實現結果輸出,或封裝成獨立的模塊供其他應用程序(如一些專業的交通規劃與管理軟件)調用。

[1] 常彬彬,劉山洪,韓健.Origin軟件在隧道監控量測數據處理中的應用[J].重慶交通大學學報:自然科學版,2008,27(2):221-224.

[2] 覃貴菊.用OriginC編程自動化處理制動試驗數據[J].鐵道機車車輛,2005,25(5):28-30.

[3] 金淑華,秦艷芬,賀梅英.Origin軟件在大學物理實驗數據處理中的應用[J].寧波工程學院學報,2008,20(2):4-7.

[4] 劉洋,郭瑩.基于Origin軟件的土工試驗數據處理[J].山西建筑,2006,32(5):336-337.

[5] 賈斌,高自友,李克平,李新剛.基于元胞自動機的交通系統建模與模擬[M].北京:科學出版社,2007.

主站蜘蛛池模板: 久久99这里精品8国产| 欧美国产综合视频| 亚洲一区二区精品无码久久久| 久久香蕉国产线看观看精品蕉| 亚洲青涩在线| 少妇被粗大的猛烈进出免费视频| 性喷潮久久久久久久久| 99草精品视频| 国产午夜在线观看视频| 亚洲人人视频| 欧美特级AAAAAA视频免费观看| 亚洲无码高清免费视频亚洲| 国产成人久视频免费| 久久中文无码精品| 精品人妻一区无码视频| 国产十八禁在线观看免费| 91福利片| 中文字幕色站| 欧美日韩国产一级| 欧美日韩成人在线观看| 2021精品国产自在现线看| 在线色综合| 国产一国产一有一级毛片视频| 亚洲国产亚洲综合在线尤物| 久久综合九色综合97网| 精品久久久久成人码免费动漫| 亚洲国产精品无码AV| 国产玖玖视频| 日韩无码精品人妻| 99久久无色码中文字幕| 国产农村精品一级毛片视频| 久视频免费精品6| 亚洲AV免费一区二区三区| 久久久久国产精品嫩草影院| a毛片免费在线观看| 最新日本中文字幕| 毛片视频网| 免费一级毛片完整版在线看| 久久精品亚洲中文字幕乱码| 亚洲欧美日韩中文字幕在线一区| 国产亚洲第一页| 无码AV高清毛片中国一级毛片| 夜夜爽免费视频| 九月婷婷亚洲综合在线| 在线国产毛片| 日韩欧美国产另类| 992Tv视频国产精品| 日本色综合网| 国产精品女同一区三区五区| 综合成人国产| 亚洲综合片| 日本精品中文字幕在线不卡| 欧美日韩国产成人高清视频| 国产精品欧美亚洲韩国日本不卡| 中文字幕调教一区二区视频| 九九线精品视频在线观看| 少妇被粗大的猛烈进出免费视频| 老司机午夜精品网站在线观看| 久久中文电影| 狼友视频一区二区三区| 被公侵犯人妻少妇一区二区三区| 国产主播一区二区三区| 国产无码网站在线观看| 亚洲精品你懂的| 亚洲色精品国产一区二区三区| 波多野结衣在线一区二区| 亚洲AⅤ波多系列中文字幕| 国产精品观看视频免费完整版| 国产精品lululu在线观看| 国产精品福利导航| 国产美女无遮挡免费视频| 亚洲第一成年免费网站| 国内精品九九久久久精品| 在线免费不卡视频| 永久天堂网Av| 日韩东京热无码人妻| 欧美性猛交一区二区三区| 夜色爽爽影院18禁妓女影院| 色综合狠狠操| 91久久偷偷做嫩草影院| 亚洲综合精品香蕉久久网| 亚洲欧美精品日韩欧美|