• 沒有找到結果。

區間車方案產出

在文檔中 中 華 大 學 (頁 63-67)

第四章 模式構建與設計

4.2 區間車方案產出

4.2.1 群集分析技術

群集分析又稱為資料切割,是一種多變量統計分析的技術,主要是將具有 較為相似性質的物件加以群集在同一個群體(Cluster)內的程序。根據物件本 身的性質,於其他物件本身性質加以比較,若兩者之間相似度(Similarity)較 高,則將兩者歸屬於同一群體內;反之,則將兩者分別歸屬於不同群體,最後 讓在同一群體內之物件間具有高度相同性質,而在不同群體之物件間具有高度 異質性。由於事先無法明確得知物件類別,必須以物件本身特質條件,方能判 定該物件應歸屬於何群體,並且需要事後再加以解釋其群集結果的意義,因此 群集分析又稱為非監督式分類(Unsupervised Classification)之物件分類技術。

群集分析可將大量的物件加以有意義地分割為多各物件群體,有助於瞭解物件 的分布情況,與有效地進行物件之資料處理。為使群集分析之過程能有效的進 行,建置群集分析之步驟程序,包括下列幾個階段(邱創政,2003):

資料探勘功能

一、模式表現(Pattern representation):

在進行群集分析前,首先要先決定模式的表現結果,通常包括群體數 目之選定、可使用的群集模式,群集演算法中可使用的物件數量與其資料 屬性之型態及其範圍大小、物件之特徵選擇與篩選。

二、模式相似度(Pattern Proximity):

定義兩物件之間的距離量測方式,用以尋找與目標物件向量的距離最 短物件,以下則為不同的距離量測方式之表示法:

z Euclidean Distance

d ( , I

i

I

j

)

=

( x

i1

x

j1

)

2 +

( x

i2

x

j2

)

2 +

...

+

( x

in

x

jn

)

2 z Mabhattan Distance

d ( I

i,

I

j )= xi1xj1 + xi2xj2 +...+ xinxjn z Munkowski Distance

d ( , I

i

I

j i j q in jn q q

q

i

x

j

x x x x

x

1 2

1 2

1 ... )

(

)= − + − + + − z Weighted Euclidean Distance

d( I

i,

I

j

)

=

w

1

( x

i1

x

j1

)

2 +

w

2

( x

i2

x

j2

)

2 +

...

+

w

n

( x

in

x

jn

)

2

其中,

I 與

i

I 分別代表兩個物件,而且兩者皆有 n 個資料屬性,

j

w 為第 k

k 各資料屬性之權重值;

x 為

ik

I 物件第 k 個資料屬性之屬性值,1

i ≦ ≦ ; k n

x 為

jk

I 物件第 k 個資料屬性之屬性值,1

j ≦ ≦ 。 k n 一、群集分類(Cluster taxonomy):

群集分類可選用不同的群集演算法,依其所選用的演算法不同,其輸 出之群體可為明確的物件族群,或為部分重疊的物件族群。對於群集演算 法的種類,主要可區分為兩大類,一為階層式群集演算法(Hierarchical Clustering Algorithms),其會依照物件的資料屬性之相似程度,將物件進行 逐次合併為一系列的階層式樹狀架構。另一為分割式群集演算法(Partitional Clustering Algorithms),此會將大量的物件區分為所有可能的相似群體。

二、群集結果之評估(Assessmemt of output):

對於不同領域的物件,以各種不同群集演算法進行群集分析,所獲得 的群集結果各不相同。因此評估各種群集結果之優劣,將直接影響決策的 品質與成本。

4.2.2 K-meams 演算法

K-means 群集分析是由 J. B. Mac Queen【38】於 1967 年所提出的一種分割 式群集演算法,也是群集分析中最常被運用的演算法之一。其主要的目的是將 大量的物件區隔為多個物件群體,使得每一群體內之物件與其所歸屬之群體質 心間的距離小於其他群體質心間的距離。

使用K-means 演算法時,必須設定一參數 K,代表所需要分群之群體個數,

且K≧2,並且每個群體皆有一代表該群體之質心(centroid),也就是能代表該 群體之中心,在K-means 演算法中,主要以歐幾里得距離(Euclidean Distance)

的觀點來計算兩物件之間的相似度,將物件之間的相似度比擬在N 維空間中兩 點之間的距離,例如某物件點Ii 的座標點為(Xi1,Xi2,…Xin),而物件點Ij 的座標 點為(Xj1,Xj2,…Xjn),則計算兩點間距離的公式為:

2 2

2 2 2 1

1

) ( ) ... ( )

( )

( I

i,

I

j

x

i

x

j

x

i

x

j

x

in

x

jn

d

= − + − + + −

K-means 演算法的演算過程包括:

一、步驟一:

首先從所有物件中隨意選取 K 個物件,分別代表 K 個群體之質心。

二、步驟二:

接著將所有的物件根據其與 K 個質心之間的距離,分配給距離最短的 質心,群 集成為具有相似特性的物件群體。

三、步驟三:

再分別從每一群體內所包括的物件,計算每一群體新的質心。

四、步驟四:

接著再將所有物件依據其與 K 個新質心之間的距離,分配給距離最短 之新的質心,群集成為最具有相似特性的物件群體,如圖4.2 所示。

五、步驟五:

如此重複 1 至 4 之步驟,直到所有物件不會再由某一群體移動到另一 群體,其分群的結果即趨於穩定,也就是說 K 個群體的質心都已經趨於穩 定。

圖4.2 K-means 概念圖

4.2.3 區間車探勘內容及流程

本研究欲應用群集化分析之 K-means 演算法概念,嘗試把乘客依照其搭乘 特性做一分群,期能從中探勘出 802 路線是否適合行駛區間車,及區間車的行 駛範圍。探勘步驟如圖4.3,具體說明如下:

一、簡化OD 矩陣

首先,把原始 116×116 之乘客 OD 矩陣予以簡化,將相鄰 n 站合併為 一單位(n=2、4、6、8、10)。如:方案一是以 2 站為一單位,簡化後成為 58×58 之乘客 OD 矩陣,以此類推,因此共有 5 方案組合,同時把乘客原始 之起迄需求轉換成合併後之OD 矩陣。

二、轉換乘客旅次長度

增設一新變數L,用來計算合併後乘客 OD 之旅次長度(以搭乘站數表 示),之後將作為分群指標之一。新增設 L 之原因為,每位乘客皆為獨立樣 本點,因此也許每位乘客之起迄點不相同,不過其旅次長度卻相同,之後 在分群時,若其起點相鄰且旅次長度一樣,也可歸為同一分群。

三、設定分群數並進行群集分析

在進行分群之前須先設定分群數,本研究將分群數設定為2 群、3 群、

4 群,並運用新的 OD 起點站位及其旅次長度作為分群指標。

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

Dispatch each object to the neastest centroid

Find the new centroid of each cluster Find the centroid of each cluster

四、整理輸出結果

根據分群輸出結果轉換為區間車方案,可依據同一群組內之站別代 碼,整理出其行駛範圍及停靠站位。

五、計算各方案在不同分群數之改善績效

整理出不同分群數之各方案結果後,根據方案評比計算式計算各方案 之節省成本,最後進行比較,挑出各分群數之最佳解。

圖4.3 區間車探勘邏輯概念圖

在文檔中 中 華 大 學 (頁 63-67)