亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        城市軌道交通列車(chē)運(yùn)行圖編制模擬系統(tǒng)

        2013-12-06 06:49:50許王燕
        大眾科技 2013年9期
        關(guān)鍵詞:運(yùn)行圖時(shí)刻表列車(chē)運(yùn)行

        許王燕

        (同濟(jì)大學(xué)電信學(xué)院,上海 201800)

        近年來(lái)隨著城市規(guī)模的擴(kuò)大和地面交通的日益擁堵,發(fā)展軌道交通成為了解決城市交通問(wèn)題的重要途徑。而列車(chē)運(yùn)行圖是軌道交通中指揮列車(chē)運(yùn)行的依據(jù),它作為城市軌道交通系統(tǒng)運(yùn)輸組織的工作計(jì)劃與調(diào)整基礎(chǔ),意義重大[1][2]。因此,一個(gè)能夠清晰展示列車(chē)運(yùn)行計(jì)劃的運(yùn)行圖對(duì)于軌道交通的正常運(yùn)行具有重要的意義。

        城市軌道交通在運(yùn)行過(guò)程中受到眾多因素的影響,比如,軌道上的列車(chē)會(huì)經(jīng)常出現(xiàn)列車(chē)晚點(diǎn),甚至多趟列車(chē)連帶晚點(diǎn)等意外情況,所以在實(shí)際運(yùn)行過(guò)程中不可避免的會(huì)發(fā)生偏離原定計(jì)劃的現(xiàn)象。因此,調(diào)整修改運(yùn)行圖的功能是一個(gè)設(shè)計(jì)良好的運(yùn)行圖鋪畫(huà)編制系統(tǒng)的必備模塊。

        本文詳細(xì)闡述了一個(gè)基于MFC的文檔編碼結(jié)構(gòu),使用面向?qū)ο蟮木幊谭绞剑瑢?shí)現(xiàn)了城市軌道交通列車(chē)運(yùn)行圖的鋪畫(huà)和調(diào)整的程序。最后給出了本程序在上海軌道交通八號(hào)線(xiàn)上的仿真實(shí)現(xiàn)結(jié)果。

        1 列車(chē)運(yùn)行圖編制模擬系統(tǒng)體系結(jié)構(gòu)

        總體結(jié)構(gòu)采用模塊化設(shè)計(jì),便于系統(tǒng)的維護(hù),也有利于系統(tǒng)以后的功能擴(kuò)展。在系統(tǒng)中,車(chē)站計(jì)劃員和工作站操作員要實(shí)時(shí)了解列車(chē)的運(yùn)行情況,并在需要的時(shí)候?qū)\(yùn)行進(jìn)行調(diào)整操作,因此運(yùn)行圖部分關(guān)鍵技術(shù)包括列車(chē)運(yùn)行圖編制、列車(chē)運(yùn)行圖調(diào)整、列車(chē)運(yùn)行圖輸出及數(shù)據(jù)管理四部分[3]。整體結(jié)構(gòu)如圖1所示。

        軟件采用MVC三層架構(gòu),分為數(shù)據(jù)層、控制層和視圖層。其中數(shù)據(jù)層和數(shù)據(jù)庫(kù)、XML文件的交互,為控制層提供數(shù)據(jù)??刂茖迂?fù)責(zé)接受用戶(hù)的控制信息并對(duì)數(shù)據(jù)層提供的數(shù)據(jù)進(jìn)行整合。視圖層負(fù)責(zé)運(yùn)行圖的鋪畫(huà)和展示工作。

        其中視圖層是整個(gè)系統(tǒng)的核心,列車(chē)運(yùn)行圖涉及許多方面的編圖數(shù)據(jù)(列車(chē)信息、車(chē)站信息、線(xiàn)路信息、車(chē)庫(kù)信息、列車(chē)時(shí)刻表信息和圖形顯示信息等)的處理和結(jié)果輸出的處理(編調(diào)圖數(shù)據(jù)庫(kù)管理、運(yùn)行圖人工調(diào)整、運(yùn)行圖輸出、列車(chē)時(shí)刻表輸出以及指標(biāo)統(tǒng)計(jì)),這些都在控制層中完成[5][8]。

        2 系統(tǒng)框架和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)

        (1)系統(tǒng)框架設(shè)計(jì)。本系統(tǒng)采用了MFC的文檔/視圖結(jié)構(gòu)為框架進(jìn)行開(kāi)發(fā)。主要圖形數(shù)據(jù)放在CGraphDoc類(lèi)(從CDocument派生的文檔類(lèi))中;在CDisplayView視圖(運(yùn)行圖顯示與調(diào)圖視圖)中用圖形數(shù)據(jù)對(duì)象提供的接口對(duì)圖形數(shù)據(jù)進(jìn)行顯示輸出,即顯示/打印運(yùn)行圖,并在調(diào)圖操作時(shí)對(duì)數(shù)據(jù)對(duì)象進(jìn)行修改;在CGraphView視圖(站名與區(qū)間信息視圖)中,同樣調(diào)用圖形數(shù)據(jù)對(duì)象接口顯示車(chē)站和區(qū)間信息。由于車(chē)站信息也是運(yùn)行圖的一部分,兩視圖顯示的位置必須一致,二者就依賴(lài)于文檔類(lèi)中的圖形數(shù)據(jù)進(jìn)行統(tǒng)一。

        (2)運(yùn)行圖調(diào)整子系統(tǒng)的模塊設(shè)計(jì)。一般來(lái)說(shuō)調(diào)整系統(tǒng)包含這樣一些功能:運(yùn)行圖圖形顯示和操作,運(yùn)行線(xiàn)的調(diào)整,周轉(zhuǎn)關(guān)系的調(diào)整,調(diào)整約束檢測(cè),和其他一些輔助功能[4]。

        圖2描述了運(yùn)行圖調(diào)整子系統(tǒng)的模塊框架以及各個(gè)子模塊之間的相互關(guān)系,圖中細(xì)箭頭標(biāo)示控制流,粗箭頭表示數(shù)據(jù)流。該調(diào)圖子系統(tǒng)與主系統(tǒng)之間只有數(shù)據(jù)信息的關(guān)聯(lián),是松耦合結(jié)構(gòu),因此只要數(shù)據(jù)通訊接口統(tǒng)一,該調(diào)圖子系統(tǒng)完全可以整合到任何編圖系統(tǒng)框架之下。在調(diào)整系統(tǒng)內(nèi)部,分為顯示和調(diào)整兩大模塊,顯示模塊完成運(yùn)行圖圖形顯示和操作,調(diào)整模塊完成運(yùn)行線(xiàn)的調(diào)整,周轉(zhuǎn)關(guān)系的調(diào)整,這兩個(gè)個(gè)模塊均以運(yùn)行圖對(duì)象為數(shù)據(jù)基礎(chǔ),而數(shù)據(jù)對(duì)象則根據(jù)TimeTable生成。顯示與調(diào)整模塊兩者互不干涉的完成顯示和人工干預(yù)的功能,但兩者常常需要通信,因?yàn)檎{(diào)整?;谶\(yùn)行圖顯示。

        圖2 運(yùn)行圖調(diào)整子系統(tǒng)的模塊圖

        (3)運(yùn)行圖數(shù)據(jù)結(jié)構(gòu)。由運(yùn)行圖的組成元素可以將運(yùn)行圖作為一個(gè)大的對(duì)象(TrainGraph),其內(nèi)部包含了運(yùn)行圖網(wǎng)格(Grid)、運(yùn)行線(xiàn)(Train Line)、周轉(zhuǎn)線(xiàn)(Circulation)、到發(fā)時(shí)刻點(diǎn)等對(duì)象。運(yùn)行圖的所有相關(guān)操作都要通過(guò)運(yùn)行圖對(duì)象來(lái)完成。因此可設(shè)計(jì)各對(duì)象的關(guān)系如下圖3。

        圖3 運(yùn)行圖內(nèi)部對(duì)象關(guān)系

        這個(gè)結(jié)構(gòu)是符合一般運(yùn)行圖編制軟件的普遍要求的,運(yùn)行圖中的元素是可增加的,而且具有較好的可擴(kuò)展性,不論是用面向?qū)ο蠡蚍敲嫦驅(qū)ο蟮恼Z(yǔ)言都可以很容易實(shí)現(xiàn)。

        實(shí)際實(shí)現(xiàn)時(shí),運(yùn)行圖在接收參數(shù)TimeTable后,就由TimeTable產(chǎn)生了運(yùn)行線(xiàn)集合并保存在鏈表中。其內(nèi)部到發(fā)時(shí)刻保存在數(shù)組中,周轉(zhuǎn)線(xiàn)沒(méi)有獨(dú)立成為一個(gè)對(duì)象,而是作為運(yùn)行線(xiàn)的一個(gè)屬性。

        所以設(shè)計(jì)時(shí)所有顯示及調(diào)圖操作基本上都圍繞這兩個(gè)類(lèi):

        CtrainGraph類(lèi):負(fù)責(zé)整幅運(yùn)行圖的操作,包括建立運(yùn)行圖對(duì)象、格式設(shè)置、顯示比例設(shè)置、繪制整幅圖、車(chē)站及區(qū)間信息顯示等操作。

        CtrainLine類(lèi):其對(duì)象表示運(yùn)行圖中各段線(xiàn)路。該類(lèi)負(fù)責(zé)線(xiàn)路的繪制、擦除,提供調(diào)圖操作所需的必要接口。

        (4)運(yùn)行圖的輸出與調(diào)整。①運(yùn)行圖信息。本設(shè)計(jì)利用XML文件保存運(yùn)行圖顯示和運(yùn)行圖調(diào)整的內(nèi)容,在主系統(tǒng)與子系統(tǒng)交互的數(shù)據(jù)和信息是由參數(shù) TimeTable來(lái)關(guān)聯(lián)的,TimeTable是從XML讀取的一種保存了運(yùn)行圖顯示和運(yùn)行圖調(diào)整內(nèi)容的數(shù)據(jù)結(jié)構(gòu)。XML文件存儲(chǔ)的數(shù)據(jù)如下所示:

        <TimeTableLists>

        <Name>時(shí)刻表 1</Name> //時(shí)刻表名稱(chēng)

        <TimeTable>

        <ID>801</ID> //列車(chē) ID

        <Record>

        <Line>39</Line> //運(yùn)行線(xiàn)路

        <Platform>HTM-PS23</Platform> //停靠站臺(tái)名

        <Arrival>05∶14∶00</Arrival> //到站時(shí)間

        <Departure>05∶14∶00</Departure> //離站時(shí)間

        </Record>

        ……

        </TimeTable>

        <TimeTable>

        ……

        </TimeTable>

        </TimeTableLists>②運(yùn)行圖顯示。圖3描述了運(yùn)行圖數(shù)據(jù)結(jié)構(gòu)的從屬關(guān)系,運(yùn)行圖的顯示模塊是建立在運(yùn)行圖對(duì)象結(jié)構(gòu)的基礎(chǔ)之上的,首先對(duì)各對(duì)象實(shí)現(xiàn)各自的OnDraw()函數(shù),運(yùn)行圖顯示則通過(guò)運(yùn)行圖對(duì)象的OnDraw()函數(shù)調(diào)用其內(nèi)部各對(duì)象的OnDraw()來(lái)完成。

        實(shí)現(xiàn)時(shí),在運(yùn)行圖對(duì)象(CTrainGraph)中實(shí)現(xiàn)運(yùn)行圖顯示的方法。通過(guò)運(yùn)行圖坐標(biāo)原點(diǎn)在設(shè)備坐標(biāo)系中的坐標(biāo)(CTrainGraph的屬性m_OrgPoint)就可以完成設(shè)備坐標(biāo)系與運(yùn)行圖坐標(biāo)系的映射。Time2Point()與Point2Time()函數(shù)完成了時(shí)間到運(yùn)行圖橫坐標(biāo)的映射。

        ③運(yùn)行圖調(diào)整。運(yùn)行圖的調(diào)整模塊是運(yùn)行圖系統(tǒng)另一重要的模塊。目前,人機(jī)交互方式在圖形界面下仍然以鼠標(biāo)+鍵盤(pán)為主[11]。雖然很多新人機(jī)交互技術(shù)層出不窮,像手寫(xiě)筆或觸摸屏的發(fā)展,然而鼠標(biāo)+鍵盤(pán)+圖形界面元素(菜單、按鈕等)完全可以對(duì)運(yùn)行圖精確調(diào)整[9][10]。所以每個(gè)調(diào)整圖行的操作,包括運(yùn)行圖的縮放,添加、刪除和移動(dòng)運(yùn)行線(xiàn),增加和刪減停站,變更區(qū)間運(yùn)行時(shí)分等等,都可以分解為一系列連續(xù)或獨(dú)立鍵盤(pán)或鼠標(biāo)的操作。拿平移運(yùn)行線(xiàn)舉例來(lái)說(shuō),它可以是下面一系列鼠標(biāo)操作:按下左鍵選定運(yùn)行線(xiàn)->拖動(dòng)運(yùn)行線(xiàn)->放開(kāi)完成拖動(dòng),也可以是鍵盤(pán)操作:選擇運(yùn)行線(xiàn)->輸入平移位移量->確定完成修改。運(yùn)行圖調(diào)整模塊的設(shè)計(jì)如下圖4所示:

        圖4 運(yùn)行圖調(diào)整模塊設(shè)計(jì)

        其中GraphCommand類(lèi)提供了鼠標(biāo)按下、移動(dòng),鍵盤(pán)等操作的通用接口,子類(lèi)繼承、實(shí)現(xiàn)這些接口。

        另一個(gè)重要的類(lèi)是Memory,它記錄了操作之前的運(yùn)行圖狀態(tài),是為了完成撤銷(xiāo)及恢復(fù)的操作。

        實(shí)現(xiàn)時(shí),調(diào)整操作對(duì)象均從GraphCommand對(duì)象繼承,子操作具體實(shí)現(xiàn) GraphCommand的接口,調(diào)用時(shí)只需通過(guò)GraphCommand指針完成,例如鼠標(biāo)移動(dòng)消息響應(yīng)函數(shù)OnMouseMove():

        void CmyView ∶∶ OnMouseMove ( UINT nFlags, CPoint point){

        ……

        if(m_pGraphCommand != NULL){

        BOOL bRet = m_pGraphCommand ->OnMouseMove( nFlags, ScrollPos, point,… );

        }

        ……

        }

        調(diào)用前只需確定 m_pGraphCommand的具體操作,如m_pGraphCommand = &DeleteLine;則調(diào)用平移運(yùn)行線(xiàn)操作的OnMouseDelete()。

        3 實(shí)現(xiàn)結(jié)果

        為了證實(shí)上述程序的有效性,我們選擇上海軌道交通 8號(hào)線(xiàn)2008年列車(chē)運(yùn)行時(shí)刻表的計(jì)劃數(shù)據(jù),并將其保存為結(jié)構(gòu)如表1、表2、表3所示的TimeTable。使用前述程序?qū)ζ溥M(jìn)行處理,得到圖5所示的列車(chē)運(yùn)行圖。

        圖5所顯示的列車(chē)運(yùn)行圖中,橫坐標(biāo)代表時(shí)間,縱坐標(biāo)代表列車(chē)所經(jīng)過(guò)的具體車(chē)站,紅色代表上行計(jì)劃線(xiàn),藍(lán)色代表下行計(jì)劃線(xiàn),粉紅色表示實(shí)際上行線(xiàn),淺綠色表示實(shí)際下行線(xiàn)。在時(shí)間軸上的水平線(xiàn)是周轉(zhuǎn)線(xiàn)。從圖中可以看出,通過(guò)自動(dòng)調(diào)整模塊調(diào)整后實(shí)際運(yùn)行線(xiàn)與計(jì)劃運(yùn)行線(xiàn)之間還是有一定偏差,這時(shí)可以運(yùn)用調(diào)整模塊進(jìn)行適當(dāng)?shù)氖謩?dòng)調(diào)整包括跳停、扣車(chē)、調(diào)整運(yùn)行時(shí)分等方法。

        從圖中可以看出,此種方式能夠繪制出表達(dá)清晰的列車(chē)運(yùn)行圖。

        表1 時(shí)刻表信息

        表2 時(shí)刻表信息 (續(xù))

        上海地鐵8號(hào)線(xiàn)用于以上系統(tǒng)后所顯示的部分運(yùn)行圖如圖8所示。

        圖5 上海地鐵8號(hào)線(xiàn)模擬運(yùn)行圖

        [1] 吳洋.晚點(diǎn)情況下地鐵列車(chē)實(shí)時(shí)運(yùn)行調(diào)整及速度控制模式研究[D].西南交通大學(xué),2004.1-2.

        [2] 徐煒.計(jì)算機(jī)編制列車(chē)運(yùn)行圖的方法研究[D].大連交通大學(xué),2005.1-2.

        [3] 張其亮,陳永生,杜磊.基于編織算法的復(fù)線(xiàn)高速磁浮列車(chē)運(yùn)行圖鋪畫(huà)方法[J].計(jì)算機(jī)應(yīng)用,2011,12(31) 3434~3437.

        [4] 倪少權(quán),呂紅霞,劉繼勇.計(jì)算機(jī)編制列車(chē)運(yùn)行圖系統(tǒng)調(diào)整系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)[J].西南交通大學(xué)學(xué)報(bào),2001:36(3):240~244

        [5] 高強(qiáng)周.城市軌道交通列車(chē)運(yùn)行圖設(shè)計(jì)實(shí)現(xiàn)與評(píng)價(jià)[D].北京交通大學(xué),2008.11.

        [6] 江志彬,徐瑞華,吳強(qiáng),呂杰.計(jì)算機(jī)編制城市軌道交通共線(xiàn)交路列車(chē)運(yùn)行圖[J].同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,38(5) 692~696.

        [7] 徐瑞華,江志彬,朱效潔,吳強(qiáng).城市軌道交通列車(chē)運(yùn)行圖計(jì)算機(jī)編制的關(guān)鍵問(wèn)題研究[J].城市軌道交通研究,2005.(05).31-36.

        [8] Kroon Leo,Marofi Gabor,Helmrich Mathiin Retel,et a1.Stochastic improvement of cyclic railway timetables[J].Transportation Research Part B: Methodological, 2008,42(6):553.

        [9] 馬建軍,胡思繼,許紅,等.京滬高速鐵路列車(chē)運(yùn)行圖編制基本理論的研究[J].北京交通大學(xué)學(xué)報(bào),2002,26(2):47-50.

        [10] Dai Baoqian, Wang Tong, Qin Yueping. “Subway Station Evacuation Simulation System”, International Conference on Measuring Technology and Mechatronics Automation,vol 2, 2009, pp. 396-399.

        [11] 汪現(xiàn)雨,陳永生.可復(fù)用的列車(chē)運(yùn)行圖調(diào)整系統(tǒng)的設(shè)計(jì)[J].西南交通大學(xué)學(xué)報(bào),2001,36(3) 240~244.

        猜你喜歡
        運(yùn)行圖時(shí)刻表列車(chē)運(yùn)行
        (六年級(jí))怎么做能在學(xué)習(xí)運(yùn)行圖時(shí)更好地進(jìn)行數(shù)據(jù)分析
        城市軌道交通時(shí)刻表調(diào)整服務(wù)器故障分析及探討
        改善地鐵列車(chē)運(yùn)行舒適度方案探討
        令你誤車(chē)的列車(chē)時(shí)刻表
        知識(shí)窗(2019年5期)2019-06-03 02:16:14
        車(chē)輛段收發(fā)車(chē)運(yùn)行圖編輯器的設(shè)計(jì)與實(shí)現(xiàn)
        城市軌道交通ATS系統(tǒng)的時(shí)刻表同步機(jī)制研究
        現(xiàn)代有軌電車(chē)運(yùn)行圖編制策略探討
        列車(chē)運(yùn)行控制系統(tǒng)技術(shù)發(fā)展趨勢(shì)分析
        相同徑路的高速列車(chē)運(yùn)行圖編制方法
        基于運(yùn)行圖驅(qū)動(dòng)的列車(chē)運(yùn)行控制半實(shí)物仿真系統(tǒng)
        久久久亚洲欧洲日产国码αv| 亚洲视频高清| 国产精品午夜波多野结衣性色| 国产熟女乱综合一区二区三区 | 欧美中文字幕在线| 久久国产精品免费一区二区| 粉嫩av一区二区在线观看| 高潮av一区二区三区| 国产亚洲成性色av人片在线观| 337p西西人体大胆瓣开下部| 香蕉视频一级| 国产偷拍盗摄一区二区| 美女用丝袜脚玩我下面| 欧美成人片在线观看| 国产又黄又爽视频| 国产一品二品三品精品久久| 白白白在线视频免费播放| 18禁成人黄网站免费观看| 国产熟人av一二三区| 囯产精品无码一区二区三区| 人妻丝袜中文字幕久久| 国产精品亚洲精品一区二区| 东北少妇不戴套对白第一次| 久久精品人人做人人爽| 国产69口爆吞精在线视频喝尿| 精品黄色国产一区二区| 最新中文字幕人妻少妇| 欧美日韩视频在线第一区| 911香蕉视频| 亚洲一区二区三区毛片| av在线免费观看网站免费| 亚洲成在人网站av天堂| 国产午夜亚洲精品理论片不卡| 中文字幕成人精品久久不卡| 在线观看日本一区二区三区四区| 波多野42部无码喷潮| 狼友AV在线| 亚洲一区二区三区福利久久蜜桃| 亚洲av无码乱码在线观看性色| 久久成人麻豆午夜电影| 国产精品一区二区三区蜜臀|