日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

船舶频繁模式模型

發(fā)布時間:2023/12/20 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 船舶频繁模式模型 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本模型結(jié)合頻繁模式常用算法FP-tree 算法進(jìn)行頻繁線路預(yù)測,同時對頻繁線路進(jìn)行相關(guān)屬性聚類,采用DBSCAN,進(jìn)行線段聚類(相關(guān)的FP-tree和DBSCAN會后續(xù)總結(jié))

一、需求分析

主要針對①每艘船舶經(jīng)常走的起止港口及經(jīng)停港口;②每類船舶(分不同噸位等級、分不同長度等級、分不同寬度等級、分不同吃水等級)經(jīng)常走的真實(shí)航跡線。數(shù)據(jù)統(tǒng)計(jì)周期為每個季度和每年。

統(tǒng)計(jì)數(shù)據(jù)內(nèi)容如下:

1、每艘船舶

(1)?? 常走起止港口、經(jīng)停港口

(2)?? 常走航跡線

(3)?? 港口平均停留時間

(4)?? 經(jīng)停港口間的平均行駛時間

(5)?? 從某個泊位出來經(jīng)常到某個港口(主要用于船舶在運(yùn)送不同類型的貨物的時候,可能目的港口不同,這個作為后續(xù)優(yōu)化方向

2、港口間真實(shí)航跡線

(1)?? 港口與港口間的真實(shí)航跡線

(2)?? 航跡線的屬性:①可以航行哪些類型的船舶;②分類型的船舶的最大噸位;③可以航行船舶的最大長度;④可以航行船舶的最大寬度;⑤可以航行船舶的最大吃水深度。

二、輸入輸出輸出

2.1 輸入數(shù)據(jù)

1)船舶的OD數(shù)據(jù);

2)船舶的AIS數(shù)據(jù);

3)船舶的類型數(shù)據(jù);

三、模型

3.1 模型主要思路

1. 通過OD數(shù)據(jù)統(tǒng)計(jì)船只在一個季度/年內(nèi)的所有抵達(dá)港口,并統(tǒng)計(jì)其在該港口的平均時間、到港的次數(shù)、以及該船只在所有港口停留的平均時間。按照到港的次數(shù)進(jìn)行排序,得到到港次數(shù)大于等于2次(若數(shù)量少于3個,則取前三個;次數(shù)出現(xiàn)一次的港口排序按照在港時間,時間長的排在前邊)的港口為標(biāo)記港口;

2. 統(tǒng)計(jì)船只的航線的起始港口,并記錄途中經(jīng)停港口。

3. 通過統(tǒng)計(jì)的起始航線,運(yùn)用FP-tree頻繁統(tǒng)計(jì)方式來計(jì)算船只的頻繁線路。

4. 通過船只OD數(shù)據(jù)和AIS數(shù)據(jù)來確定港口間的真實(shí)航跡線;

5. 通過相同港口間的航跡線聚類,生成該港口間的航道信息,根據(jù)航道內(nèi)的航跡線數(shù)據(jù)來進(jìn)行屬性統(tǒng)計(jì),并關(guān)聯(lián)相應(yīng)的航跡線屬性表上。

?

3.2 模型流程框圖

?

3.3 模型的流程詳細(xì)說明

流程說明:

(一)輸入OD數(shù)據(jù)

(二)OD數(shù)據(jù)輸入后先進(jìn)行OD數(shù)據(jù)統(tǒng)計(jì),基于OD數(shù)據(jù)統(tǒng)計(jì)結(jié)果,再分別對OD數(shù)據(jù)進(jìn)行完整航線統(tǒng)計(jì)(三)和真實(shí)航跡線生成處理(四)。

(三)完整航線統(tǒng)計(jì)——1)根據(jù)OD數(shù)據(jù)和OD節(jié)點(diǎn)數(shù)據(jù)信息判斷船只航行過程中起始、經(jīng)停、終止港口,起始港口到終止港口為完整一條航線,統(tǒng)計(jì)該條船所有的航線;2)根據(jù)FP-tree方法對該條船的航線進(jìn)行頻繁統(tǒng)計(jì)(具體統(tǒng)計(jì)過程見下文);3)根據(jù)2)中統(tǒng)計(jì)結(jié)果,確定該船只的頻繁線路,輸出該船的頻繁線路數(shù)據(jù)。

(四)真實(shí)航跡線生成——1)輸入處理港口間的所有船只OD數(shù)據(jù)和對應(yīng)的船只AIS數(shù)據(jù);2)以船只的original_out_utc 時間對應(yīng)的時間點(diǎn)開始,到destination_in_utc時間點(diǎn)結(jié)束,對該船只AIS數(shù)據(jù)進(jìn)行稀疏化——每隔兩海里保留一個AIS點(diǎn)。該段內(nèi)的稀疏點(diǎn)跡作為該船在這兩個港口間航行的真實(shí)航跡線,保存該航跡線。

(五)航道屬性統(tǒng)計(jì):1)基于(四)的真實(shí)航跡線數(shù)據(jù),統(tǒng)計(jì)該條航跡線數(shù)據(jù)的特征點(diǎn),根據(jù)特征點(diǎn)對OD數(shù)據(jù)進(jìn)行分段處理,且特征點(diǎn)的連線作為該段的特征直線;2)對所有OD的特征直線根據(jù)DBSCAN方法進(jìn)行聚類;3)統(tǒng)計(jì)每類航道的屬性(船只最大噸位、船只最大寬度、船只最大長度、船只最大吃水深度),保存相應(yīng)航道信息;4)相同類別內(nèi)航跡線段共享該類內(nèi)的屬性,填充航跡線對應(yīng)的屬性信息。

(六)對(一)~(五)進(jìn)行循環(huán)處理,直到所有船只頻繁模式和所有港口真實(shí)航跡線處理完畢。

流程中具體操作解釋說明:

1. OD數(shù)據(jù)統(tǒng)計(jì):

1)統(tǒng)計(jì)該船只一年的OD數(shù)據(jù),記錄所有的抵達(dá)港口、抵達(dá)港口的次數(shù)、抵達(dá)港口的平均停留時間 ,以及其在所有港口的平均停留時間 ;

2)對統(tǒng)計(jì)的結(jié)果,按照港口抵達(dá)次數(shù)進(jìn)行排序,將到港次數(shù)大于等于2次(若數(shù)量少于3個,則取前三個)的港口作為標(biāo)記港口。

?

2. 船只完整航線統(tǒng)計(jì):1)根據(jù)OD數(shù)據(jù)和OD節(jié)點(diǎn)數(shù)據(jù)來判斷船只航行起始港口、經(jīng)停港口、終止港口;2)起始到終止港口為一個完整的航線。

起始港口判斷:

①OD數(shù)據(jù)的起始點(diǎn)港口(original_port);

②之前的OD已經(jīng)標(biāo)記為終止,則線路重新開始時的original_port為起始港口;

經(jīng)停港口判斷:

①OD中的destination_port港口對應(yīng)的node_type為泊位,且在港停留時間T滿足 ;

終止港口判斷:

①OD中的destination_port港口對應(yīng)的node_type為泊位,且在港停留時間T滿足 ;

②若起始港或之前的經(jīng)停港出現(xiàn)過該港口,則對該條線路拆分為兩條;第一條為起始港到該港之前的經(jīng)停港,第二條為該港之前的經(jīng)停港轉(zhuǎn)為起始港,該港作為終止港保存。

根據(jù)上述的起始港口、經(jīng)停港口、終止港口來判斷船只的起止港口,。

?

3. FP-tree統(tǒng)計(jì)港口(泊位)到港口的頻繁線路:

1)統(tǒng)計(jì)港口到港口:

2中統(tǒng)計(jì)的船只航線,按照1中的標(biāo)記港口對起止港口進(jìn)行排序,出現(xiàn)次數(shù)多的排在前邊;統(tǒng)計(jì)相同線路數(shù)據(jù)。

2)泊位出發(fā)統(tǒng)計(jì):

根據(jù)1)獲取的港口到港口頻繁數(shù)據(jù),增加泊位數(shù)據(jù)進(jìn)行劃分,統(tǒng)計(jì)相同泊位出發(fā)到達(dá)的港口的次數(shù),出現(xiàn)次數(shù)大于等于2次則記錄。

4. 根據(jù)OD數(shù)據(jù)和AIS數(shù)據(jù)生成港口間的真實(shí)航跡線:

根據(jù)港口間OD數(shù)據(jù)和AIS數(shù)據(jù)進(jìn)行稀疏化表示,以original_out_utc對應(yīng)點(diǎn)為起始點(diǎn),每隔2海里記錄一個新的點(diǎn),直到destination_out_utc。

5. 基于DBSCAN線段聚類方法,對所有在此港口間航行的航跡線進(jìn)行聚類,獲取兩個港口間真實(shí)航道信息,統(tǒng)計(jì)航道屬性,并關(guān)聯(lián)相應(yīng)的航跡線。

?

注:

DBSCAN線段聚類算法:

1)軌跡特征點(diǎn)提取:

兩點(diǎn)P1(x1,y1),P2(x2,y2)的正向直線方程F12的表達(dá)式為

F12(x,y) = (y2 - y1)(x –x1)+(x2 – x1)(y – y1);

P1(x1,y1),P2(x2,y2), P3(x3,y3),P4(x4,y4)是連續(xù)的四個點(diǎn)。連接P1,P2的直線方程F12(x,y),計(jì)算F12(x3,y3);連接P2,P3的直線方程F23(x,y),計(jì)算F23(x4,y4)。若F23(x,y)* F23(x4,y4)< 0 ,則P3(x3,y3)為特征點(diǎn)。

軌跡線的起止點(diǎn)為特征點(diǎn),起止點(diǎn)之間的點(diǎn)則通過上述方法生成。

2)計(jì)算兩段特征直線間的距離

軌跡線中兩特征點(diǎn)P1,P2;另一條軌跡線中兩特征點(diǎn)A,B。θ為兩特征線段的夾角,A點(diǎn)到P1P2的距離為L1,B點(diǎn)到P1P2的距離為L2.

條件處理:

①AB與P1P2相交則,兩線段間距離為0;

②若A,B兩點(diǎn)的x坐標(biāo)在P1P2內(nèi),則分別計(jì)算L1和L2,AB到P1P2的距離為 ;

③若A,B兩點(diǎn)的x坐標(biāo)與P1P2所在x范圍有交集,則需要計(jì)算L1和L2,以及P1,P2到AB的距離L3和L4,此時AB到P1P2的距離為L1、L2、L3、L4中最小的一個;

④若A,B兩點(diǎn)x坐標(biāo)與P1P2所在的x范圍沒有交集,則分別計(jì)算P1,A;P1,B;P2,A;P2,B的距離,取最小的距離作為兩線段的最小距離。

3)軌跡間聚類

①以某條軌跡為標(biāo)準(zhǔn)計(jì)算該軌跡所在的航道數(shù)據(jù)。

②起始線段為起始,開始計(jì)算:該線段與其它軌跡線線段的距離,若軌跡線段間的距離小于5海里,則將其歸為一類。統(tǒng)計(jì)所有與該軌跡線段距離小于5海里的線段,并將其歸為一類。

③依次循環(huán)所有未分類的軌跡線,統(tǒng)計(jì)其軌跡線內(nèi)的分類。

如果該軌跡內(nèi)部分線段屬于A類,部分線段屬于B類,則該軌跡需要記錄兩類的分界點(diǎn)和屬性值。

④統(tǒng)計(jì)各個分類內(nèi),船只的類型、船舶的最大噸位、船舶的最大長度船舶的最大寬度、船舶的最大吃水深度。

⑤對于該類內(nèi)的線段就行屬性與軌跡線進(jìn)行關(guān)聯(lián)。


總結(jié)

以上是生活随笔為你收集整理的船舶频繁模式模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。