潘瀟 王斌君



摘要:如何快速、有效地發(fā)現(xiàn)犯罪團伙是公安機關(guān)偵查辦案中的關(guān)鍵問題之一。針對通信網(wǎng)絡(luò)特點,改進社區(qū)發(fā)現(xiàn)的Louvain算法,并根據(jù)電信詐騙犯罪團伙利用通信網(wǎng)絡(luò)實施詐騙的特點,提出基于相似度的犯罪團伙發(fā)現(xiàn)算法,以及基于屬性的犯罪團伙發(fā)現(xiàn)算法。初步實驗結(jié)果表明,改進后的Louvain算法可以提高通信網(wǎng)絡(luò)社區(qū)劃分效率。然后在社區(qū)中利用結(jié)構(gòu)特征進行相似度判斷,并結(jié)合屬性特征進行聚類分析,從而為公安機關(guān)發(fā)現(xiàn)可疑犯罪團伙提供有效的理論與技術(shù)支撐。
關(guān)鍵詞:社交網(wǎng)絡(luò);Louvain算法;犯罪團伙識別;通信網(wǎng)絡(luò)社區(qū);社區(qū)發(fā)現(xiàn)
Research on Criminal Gang Discovery Algorithm Based on Social Networks
PAN Xiao,WANG Bin?jun
(College of Information Technology and Cyberspace Security,
People′s Public Security University of China, Beijing 100038, China)
Abstract:How to quickly and effectively discover criminal gangs is one of the key issues in the investigation for the public security organs. According to the characteristics of communication network, the community detection Louvain algorithm is improved. According to the characteristics of telecommunication fraud gangs using communication network to implement fraud, a similarity?based criminal gang discovery algorithm and attribute?based criminal gang discovery algorithm are proposed. Preliminary experiments show that the improved Louvain algorithm can improve the efficiency of the communication network community, then it uses the structural features to judge the similarity in the community and combines the attribute characteristics for cluster analysis to provide effective theoretical and technical support for public security organs to discover suspicious criminal gangs.
Key Words:social network; Louvain algorithm; criminal gang identification; communication network community;?community detection
0?引言
社會成員通過在工作、學習、生活、娛樂等活動中的相互作用而逐漸形成了某種穩(wěn)定關(guān)系,進而形成社交網(wǎng)絡(luò)。社交網(wǎng)絡(luò)分析主要通過對網(wǎng)絡(luò)拓撲結(jié)構(gòu)關(guān)系的分析,揭示網(wǎng)絡(luò)中的社區(qū)結(jié)構(gòu)。社區(qū)發(fā)現(xiàn)在生物學、物理學、計算機圖形學與社會學中都有著廣泛應(yīng)用[1?2]。此外,社交網(wǎng)絡(luò)的社區(qū)發(fā)現(xiàn)還有著重要的現(xiàn)實意義,比如在商業(yè)或服務(wù)業(yè)領(lǐng)域,劃分出對其產(chǎn)品或服務(wù)感興趣的一類特定消費群體,進而可以有針對地進行產(chǎn)品推薦活動,或提供個性化服務(wù),還可挖掘出更多潛在客戶,進一步提高企業(yè)經(jīng)濟效益[3]。
在我國社會經(jīng)濟快速發(fā)展與轉(zhuǎn)型的大背景下,犯罪行為的團伙化、組織化特征愈加明顯。在社交網(wǎng)絡(luò)中,犯罪團伙也表現(xiàn)為某種特定結(jié)構(gòu)的社區(qū)。隨著信息化的推進,積累了越來越多人員關(guān)系網(wǎng)絡(luò)、通話記錄等數(shù)據(jù),即使簡單的通信數(shù)據(jù)中也包含著豐富信息。充分利用相關(guān)信息,可以挖掘海量數(shù)據(jù)背后隱藏的犯罪團伙社區(qū)。
本文對社交網(wǎng)絡(luò)中的犯罪團伙發(fā)現(xiàn)方法進行研究,在介紹目前常用的兩類犯罪團伙分析方法后,提出改進的Louvain算法,并結(jié)合社交網(wǎng)絡(luò)的拓撲結(jié)構(gòu)與節(jié)點屬性,可以有效發(fā)現(xiàn)社交網(wǎng)絡(luò)中潛在的犯罪團伙,為公安機關(guān)偵查辦案、打擊犯罪提供支持。
1?相關(guān)研究與分析
在大數(shù)據(jù)分析中,有兩種針對犯罪團伙的發(fā)現(xiàn)思路,一種是根據(jù)掌握的犯罪人員基本信息,采用社會網(wǎng)絡(luò)分析方法,利用犯罪人員之間的聯(lián)系發(fā)現(xiàn)可疑犯罪團伙;另一種是根據(jù)已掌握案件信息中的犯罪人員屬性及其作案特征等,使用聚類方法發(fā)現(xiàn)具有共同屬性特征的可疑犯罪團伙。
1.1?社會網(wǎng)絡(luò)分析方法
各國安全部門高度重視收集與分析恐怖組織的有關(guān)數(shù)據(jù),希望通過掌握相關(guān)恐怖分子的社會網(wǎng)絡(luò)信息,了解其組織結(jié)構(gòu),以加強對恐怖分子的防范力度[4]。為了實現(xiàn)該目標,人們提出多種技術(shù)方法[5?8]應(yīng)用于犯罪團伙發(fā)現(xiàn)與犯罪打擊相關(guān)工作。一些研究人員也利用概念郵件系統(tǒng)與屬性篩選支持向量機等方法對犯罪數(shù)據(jù)的社會網(wǎng)絡(luò)進行分析,并提出多種分析方法[9?10]。
犯罪團伙早期分析研究大多采用基于社會網(wǎng)絡(luò)的社區(qū)發(fā)現(xiàn)算法,通常分為兩種:①圖形分割。主要采用Kernighan?Lin算法[11]與譜平分算法(Spectral Bisection Method)[12];②數(shù)據(jù)挖掘中的層次聚類。主要采用GN(Girvan?Newman)算法[13],之后許多學者又提出一系列基于GN算法的改進算法[14?17]。如上海交通大學李亮[18]基于Radicchi等提出的改進型GN算法,設(shè)計了嫌疑人的社會網(wǎng)絡(luò)分解與識別模塊。
1.2?屬性聚類方法
聚類分析根據(jù)不同屬性識別對象,將相似事物聚類在一起,能夠使聚類分析很好地解決不確定事物屬性的分類問題。在公共安全應(yīng)用領(lǐng)域,聚類分析可以從大量數(shù)據(jù)中發(fā)現(xiàn)一些特定集合,以幫助公安部門專注于重點對象,從而極大減輕了公安部門工作量,并有可能發(fā)現(xiàn)潛在犯罪嫌疑人與犯罪團伙。
基于聚類技術(shù)的犯罪行為分析通常采用基于密度的聚類算法分析案件信息屬性特征,由于同一類別犯罪行為更具有相似性,因此將具有高相似性的嫌疑人員聚為一類,可以幫助調(diào)查人員找出疑似犯罪團伙。例如:具有相同入室盜竊模式或逃離模式,以及犯罪地點相同的人員可能成為同一團伙。西南交通大學鄧靈評[19]利用聚類方法對入室盜竊犯罪數(shù)據(jù)進行分析,將相似度較高的對象歸為一類,進行串并案分析研判。在同一時間段內(nèi)找出具有相似作案方式、相同受害者,或盜竊相似財物的案件,可推斷同一類犯罪案件的實施者可能屬于同一團伙。
2?犯罪團伙發(fā)現(xiàn)算法模型
犯罪團伙不僅是成員之間有通信聯(lián)系,而且其在選擇對象,以及選擇時間、作案方式和作案工具等方面也呈現(xiàn)出高度的相似性。目前,尚未有在大量數(shù)據(jù)集上進行犯罪團伙發(fā)現(xiàn)的研究,本文采用社區(qū)發(fā)現(xiàn)與屬性判定相結(jié)合的方法,改進社區(qū)發(fā)現(xiàn)中的Louvain算法[20],使其能夠更好地應(yīng)用于日常生活的通信網(wǎng)絡(luò)中。將對應(yīng)通話號碼的每個節(jié)點劃分為不同社區(qū),然后在社區(qū)中利用結(jié)構(gòu)特征進行相似度判斷,并結(jié)合屬性特征進行聚類分析,從而發(fā)現(xiàn)具有相似特征的團伙。
2.1?Louvain算法改進
Louvain算法采用Mark Newman等研究發(fā)現(xiàn)的模塊度作為衡量網(wǎng)絡(luò)社區(qū)劃分優(yōu)劣的重要指標,通過比較現(xiàn)有網(wǎng)絡(luò)與基準網(wǎng)絡(luò)在相同社區(qū)劃分情況下的連接密度差,以衡量網(wǎng)絡(luò)社區(qū)劃分的優(yōu)劣。其中,基準網(wǎng)絡(luò)是與原網(wǎng)絡(luò)具有相同度序列的隨機網(wǎng)絡(luò)。假設(shè)A是復(fù)雜網(wǎng)絡(luò)的鄰接矩陣,k?v=∑wA?vw表示節(jié)點v的度。一條邊(v,w)在基準網(wǎng)絡(luò)中存在的概率為k?vk?w2m,其中m表示網(wǎng)絡(luò)圖A中的連邊數(shù)目。模塊度的完整數(shù)學表達如公式(1)所示。
其中,c?v表示節(jié)點v所屬社區(qū)。如果u=v,δ(u,v)=1,反之,δ(u,v)?=0。該公式的數(shù)學意義為,網(wǎng)絡(luò)中同一社區(qū)內(nèi)部邊的比例與在同樣社區(qū)結(jié)構(gòu)下基準網(wǎng)絡(luò)內(nèi)部邊比例的期望值之差。
Louvain算法首先為網(wǎng)絡(luò)每個節(jié)點分配一個不同社區(qū),因此在初始劃分中的節(jié)點數(shù)量等于社區(qū)數(shù)量。對于每個節(jié)點?i都考慮其鄰居節(jié)點j,計算將i從原社區(qū)刪除并移動到j(luò)所在社區(qū)的模塊度增益,將節(jié)點i移動到正增益最大的j所在社區(qū)。對所有節(jié)點重復(fù)應(yīng)用該過程,在過程中一個節(jié)點可能被多次考慮,當模塊度為局部最大值時,即沒有單獨節(jié)點可以移動并改善模塊度時,則第一階段停止。
算法第二階段建立一個新網(wǎng)絡(luò),其節(jié)點是第一階段發(fā)現(xiàn)的社區(qū),新節(jié)點之間的連接權(quán)重為相應(yīng)兩社區(qū)中節(jié)點之間連接權(quán)重之和,同一社區(qū)節(jié)點之間的連接導(dǎo)致新網(wǎng)絡(luò)中該社區(qū)的自我循環(huán)。一旦完成了第二階段,即可將第一階段算法重新應(yīng)用到所得到的加權(quán)網(wǎng)絡(luò)中進行迭代。
移動通信網(wǎng)絡(luò)在日常生活中應(yīng)用十分普遍,且數(shù)據(jù)量巨大,多數(shù)社區(qū)發(fā)現(xiàn)算法對其進行社區(qū)劃分時,無法滿足時間效率方面的要求。通信網(wǎng)絡(luò)分析大多采用一段時間的通信數(shù)據(jù),其存在大量兩兩節(jié)點之間的正常通信,而電信詐騙團伙的通話網(wǎng)絡(luò)往往是許多節(jié)點的集聚與交叉。對于正常通信的兩兩節(jié)點,由于節(jié)點間的內(nèi)部連接性與外部孤立性,必然會被劃分到一個社區(qū),如果直接使用傳統(tǒng)Louvain算法對通信網(wǎng)絡(luò)進行處理,則需要考量這些節(jié)點移動到相鄰節(jié)點的模塊度增益,從而浪費大量計算資源。
改進Louvain算法增加了預(yù)處理階段,先計算每個節(jié)點的度,將僅有兩兩相連的節(jié)點對直接刪除,而在兩兩相連節(jié)點對中如果存在一個度大于1的,則將兩節(jié)點合并。通過預(yù)處理減少網(wǎng)絡(luò)中的節(jié)點數(shù)量,可縮短Louvain算法第一階段的模塊度增益計算過程,提高算法效率。
算法1:改進的Louvain社區(qū)發(fā)現(xiàn)算法
輸入:網(wǎng)絡(luò)圖?G(V,E),包括節(jié)點V和連邊E的信息;
輸出:對G(V,E)進行社區(qū)劃分的社區(qū)集合;
1?將G?中每個節(jié)點初始化為一個社團;
2?for (對所有節(jié)點?x)?//對所有節(jié)點執(zhí)行預(yù)處理
3計算節(jié)點x的度d(x);
4if (?d(x)==0) 刪除節(jié)點x;
5if (?d(x)==1)
6?for (對?x所有鄰接節(jié)點x′)
7計算節(jié)點x′的度d(x′);
8if (?d(x′)==1) 將節(jié)點x和x′?刪除;
9else 將節(jié)點?x和x′?合并;
10?end for
11?end for?//結(jié)束預(yù)處理
12?計算此時模塊度并存入?Q?1,Q?3=Q?1
13?Q?2=Q?3;
14?for i =?1 to n?//n為網(wǎng)絡(luò)中節(jié)點個數(shù)
15將節(jié)點v?i從原來社區(qū)中取出;
16將v?i?加入到使模塊度增益Δ?Q最大的社區(qū)中;
17?end for
18?計算此時模塊度并存入?Q?1?;
19?將各個社區(qū)合并成一個點集合;
20?將不同集合中包含的點存入相應(yīng)集合數(shù)組communities;
21?if?Q?1>Q?2?, 轉(zhuǎn)到步驟12;
22?結(jié)束
2.2?基于相似度的電信詐騙團伙發(fā)現(xiàn)算法
多數(shù)電信詐騙團伙為了達到詐騙目的,在短時間內(nèi)會對一批電話號碼進行集中呼叫,并扮演不同身份進行團伙詐騙,在網(wǎng)絡(luò)中相當于幾個節(jié)點共享許多相鄰的鄰居節(jié)點。在使用改進Louvain算法對通信網(wǎng)絡(luò)進行社區(qū)劃分后,可能會發(fā)現(xiàn)其中的犯罪團伙。
如果網(wǎng)絡(luò)中兩個節(jié)點共享很多相同鄰居節(jié)點,則兩個節(jié)點是結(jié)構(gòu)等價的,如圖2中的節(jié)點4、5。因此,利用通信進行犯罪的團伙在網(wǎng)絡(luò)中反映為結(jié)構(gòu)等價的,對于類似團伙可采用余弦相似性進行判別。
在幾何學中,兩個向量?x和y?的相似性可用余弦值公式(2)表示。
將社交網(wǎng)絡(luò)鄰接矩陣的第i、j行(或列)分別看成兩個向量,然后將兩個向量之間的夾角余弦值用于相似性度量。在無向網(wǎng)絡(luò)中,對應(yīng)鄰接矩陣中兩行點積為∑kA?ikA?kj,相似性測度如公式(3)所示。
因此,得到通信網(wǎng)絡(luò)中詐騙團伙發(fā)現(xiàn)算法2。
算法2:通信網(wǎng)絡(luò)中詐騙團伙發(fā)現(xiàn)算法
輸入:?網(wǎng)絡(luò)圖G(V,E),包括節(jié)點V和連邊E的信息;
輸出:可能的電信詐騙犯罪團伙;
1?調(diào)用算法1;
2?for (對communities的每個社區(qū)?A)
3計算A中每個節(jié)點i的度d(i);
4提取A中前x?%的節(jié)點;?//?x是一個經(jīng)驗值
5利用公式(3)計算這些節(jié)點兩兩之間的余弦相似性;
6按照余弦相似性將A?劃分為不同的等價類,形成潛在的電信詐騙犯罪團伙;
7?end for
8?結(jié)束
2.3?基于屬性的電信詐騙團伙發(fā)現(xiàn)算法
使用改進Louvain算法進行社區(qū)劃分后,利用每個節(jié)點(號碼)對應(yīng)實體人屬性信息,可在社區(qū)內(nèi)采用基于密度的聚類方法進行犯罪團伙發(fā)現(xiàn)。節(jié)點(號碼)除歸屬地等屬性特征外,如果其對應(yīng)實體人(號主)是公安機關(guān)已掌握的犯罪嫌疑人,可根據(jù)其作案手段、作案工具、選擇對象、選擇時間、選擇處所等特征進行聚類分析,識別關(guān)于參數(shù)ε和Minpts的所有核心節(jié)點,核心節(jié)點及其鄰域形成的簇則可能成為犯罪團伙,由此得到結(jié)合屬性的犯罪團伙發(fā)現(xiàn)算法3。
算法3:結(jié)合屬性的電信詐騙犯罪團伙發(fā)現(xiàn)算法
輸入:?網(wǎng)絡(luò)圖G(V,E),包括節(jié)點V和連邊E的信息;
輸出:基于密度簇的集合;
1?調(diào)用算法1;
2?依次對每個社區(qū)中結(jié)合屬性的節(jié)點進行如下操作
3?標記一個社區(qū)內(nèi)所有包含屬性的節(jié)點為unvisited;
4?do
5隨機選擇一個unvisited對象?p;
6標記p?為visited;
7if?p的ε?鄰域最少有Minpts個對象;
8?創(chuàng)建一個新簇?C,并將p添加到C;
9?令N為p的ε鄰域中的對象集合;
10?for?N中每個點p′?;
11?if?p?′是unvisited
12?標記?p?′為visited;
13?if?p′的ε?鄰域至少有Minpts個點,將這些點添加到?N?;
14?if?p′還不是任何簇的成員,將p′添加到C;
15?end if
16輸出C;
17?end for
18?else 標記p為噪聲;
19?until沒有標記為unvisited的對象
3?實驗結(jié)果與分析
3.1?改進Louvain算法實驗分析
實驗平臺處理器為Intel(R)Core(TM)i5-6300HQ CPU@2.30GHz,內(nèi)存為8GB。為避免標準數(shù)據(jù)集的單一性,根據(jù)不同時間段與不同數(shù)據(jù)量特點,從通信話單網(wǎng)絡(luò)中抽取8組實驗數(shù)據(jù)集。每組數(shù)據(jù)集中的節(jié)點數(shù)量依次增長,并且包含不同數(shù)量的正常通信節(jié)點,根據(jù)通信的主、被叫方建立節(jié)點間的網(wǎng)絡(luò)關(guān)系連接。表1是兩種算法在不同數(shù)據(jù)集上的時間效率與模塊度值對比。
實驗結(jié)果表明,對實際通信網(wǎng)絡(luò)進行社區(qū)劃分時,本文提出的改進Louvain算法在數(shù)據(jù)處理時間方面優(yōu)于原始算法。在表1中,當數(shù)據(jù)量選取較少,即節(jié)點數(shù)分別為522與3 043時,改進算法與原始算法處理時間相差較小,且運行速度較快;當節(jié)點與邊的數(shù)量增加后,改進Louvain算法在處理時間方面明顯優(yōu)于原始Louvain算法。同時計算改進算法與Louvain算法社區(qū)劃分后的模塊度值,發(fā)現(xiàn)兩種算法模塊度值完全相同。因此,改進算法與原始Louvain算法相比,不會降低社區(qū)劃分結(jié)果的準確度。
3.2?基于相似性的電信詐騙犯罪團伙發(fā)現(xiàn)算法分析
在算法2實驗中,選取不同日期、不同時間段的通信話單數(shù)據(jù)進行社區(qū)劃分,發(fā)現(xiàn)某周五傍晚時的一個社區(qū)結(jié)構(gòu)如圖3所示,在圖中存在出度較高的8個節(jié)點(號碼),其對應(yīng)電話號碼經(jīng)查詢均來自同一地域。利用上文提出的相似性判別式進行計算可知,8個節(jié)點中兩兩節(jié)點的相似度值遠高于社區(qū)內(nèi)其它節(jié)點的兩兩匹配相似度,推斷其有較大概率為犯罪團伙,正集中對部分通信用戶進行詐騙。
4?結(jié)語
本文根據(jù)通信網(wǎng)絡(luò)結(jié)構(gòu)特點,改進了現(xiàn)有Louvain算法,提高了通信網(wǎng)絡(luò)社區(qū)劃分效率。在此基礎(chǔ)上,提出基于改進Louvain算法的犯罪團伙發(fā)現(xiàn)算法與結(jié)合屬性的犯罪團伙發(fā)現(xiàn)算法。初步實驗結(jié)果表明,將本文提出的改進Louvain算法應(yīng)用于通信網(wǎng)絡(luò)社區(qū)劃分能有效提高社區(qū)劃分效率,在劃分后的社區(qū)使用兩種犯罪團伙發(fā)現(xiàn)算法,可以幫助公安部門利用通信網(wǎng)絡(luò)發(fā)現(xiàn)可疑犯罪團伙及其組織結(jié)構(gòu)。然而,由于目前所掌握的社區(qū)中節(jié)點屬性信息不足,無法充分結(jié)合屬性對犯罪團伙發(fā)現(xiàn)算法進行實驗驗證,因此需要進一步結(jié)合公安業(yè)務(wù),在完善與改進社區(qū)劃分的基礎(chǔ)上,針對屬性聚類實驗結(jié)果進行分析,從而更好地為公安機關(guān)利用社交網(wǎng)絡(luò)發(fā)現(xiàn)犯罪團伙提供技術(shù)支持。
參考文獻:
[1]?PABLO M GLEISER, LEON DANON. Community structure in Jazz[J]. Advances in Complex Systems, 2011,6(4):565?573.
[2]?HOLME P, HUSS M, JEONG H. Subnetwork hierarchies of biochemical pathways[J]. Bioinformatics, 2003,19(4):532.
[3]?吳成鋼,楊光,張翔,等.推薦系統(tǒng)的應(yīng)用及其安全性研究[J].信息網(wǎng)絡(luò)安全,2011(8):69?71.
[4]?MCANDREW D. The structural analysis of criminal networks[J]. International Journal of Middle East Studies, 1999,8(2):272?281.
[5]?謝秦川.非法交易犯罪團伙的社會網(wǎng)絡(luò)分析研究[J].信息網(wǎng)絡(luò)安全,2014(6):88?91.
[6]?CHEN H, CHUNG W, XU J J, et al. Crime data mining: a general framework and some examples[J]. Computer, 2004, 37(4):50?56.
[7]?XU J J, CHEN H. CrimeNet explorer: a framework for criminal network knowledge discovery[J]. ACM Transactions on Information Systems, 2005,23(2):201?226.
[8]?VEL O D, ANDERSON A, CORNEY M, et al. Mining e?mail content for author identification forensics[J]. ACM Sigmod Record, 2001,30(4):55?64.
[9]?溫粉蓮.基于犯罪數(shù)據(jù)挖掘系統(tǒng)的關(guān)鍵技術(shù)研究[D].成都:四川大學,2007.
[10]?劉威,唐常杰,喬少杰.基于概念郵件系統(tǒng)的犯罪數(shù)據(jù)挖掘新方法[J]. 計算機科學, 2007, 34(2):213?215.
[11]?KERNIGHAN B W, LIN S. An efficient heuristic procedure for partitioning graphs[J]. Bell System Technical Journal, 2014, 49(2):291?307.
[12]?POTHEN A, SIMON H D, LIOU K P. Partitioning sparse matrices with eigenvectors of graphs[J]. SIAM Suornal on Matrix Analysis and Aoolications,1990, 11(3):430?452.
[13]?GIRVAN M, NEWMAN M E. Community structure in social and biological networks[J]. Proc Natl Acad Sci USA, 2002, 99(12):7821?7826.
[14]?TYLER J R, WILKINSON D M, HUBERMAN B A. Email as spectroscopy: automated discovery of community structure within organizations [M].Netherlands Communities and Technologies.?2003:143?153.
[15]?許為,林柏鋼,林思娟,等. 一種基于用戶交互行為和相似度的社交網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法研究[J]. 信息網(wǎng)絡(luò)安全, 2015(7):77?83.
[16]?ZHOU H. Distance, dissimilarity index, and network community structure[J]. Physical Review E Statistical Nonlinear & Soft Matter Physics, 2003, 67(1):061901.
[17]?FORTUNATO S, LATORA V, MARCHIORI M. Method to find community structures based on information centrality[J]. Physical Review E Statistical Nonlinear & Soft Matter Physics, 2004, 70:056104.
[18]?李亮.基于社會網(wǎng)絡(luò)分析的犯罪團伙識別系統(tǒng)[D].上海:上海交通大學, 2008.
[19]?鄧靈評. 基于數(shù)據(jù)挖掘的犯罪行為分析及系統(tǒng)實現(xiàn)[D].成都:西南交通大學, 2014.
[20]?BLONDEL V D, GUILLAUME J L, LAMBIOTTE R, et al. Fast unfolding of communities in large networks[J]. Journal of Statistical Mechanics, 2008(10):155?168.