欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于海量空間軌跡挖掘的在線的位置預(yù)測方法

文檔序號:6631543閱讀:201來源:國知局
一種基于海量空間軌跡挖掘的在線的位置預(yù)測方法
【專利摘要】本發(fā)明涉及一種基于海量空間軌跡挖掘的在線的位置預(yù)測方法,屬于空間軌跡挖掘領(lǐng)域。本發(fā)明提出的方法首先從海量空間軌跡中挖掘頻繁序列模式,接著使用序列模式構(gòu)建基于前綴樹結(jié)構(gòu)的模型,然后構(gòu)建基于距離和流行度的模型用來解決零頻率問題,最后利用構(gòu)建的預(yù)測模型,根據(jù)運(yùn)動目標(biāo)當(dāng)前軌跡信息來預(yù)測運(yùn)動目標(biāo)的下一位置。該預(yù)測方法的準(zhǔn)確率相對于現(xiàn)有方法有較大提升,而且計(jì)算復(fù)雜度低,能對運(yùn)動目標(biāo)的位置進(jìn)行實(shí)時(shí)預(yù)測,并且僅依賴于運(yùn)動目標(biāo)的位置信息,因此可以廣泛應(yīng)用于智能交通、基于地理位置的服務(wù)等多個(gè)領(lǐng)域。
【專利說明】一種基于海量空間軌跡挖掘的在線的位置預(yù)測方法

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及運(yùn)動目標(biāo)的位置預(yù)測方法,特別涉及一種基于海量空間軌跡挖掘的在 線的位置預(yù)測方法。

【背景技術(shù)】
[0002] 近年來,隨著移動互聯(lián)網(wǎng)的發(fā)展和移動智能終端的普及,定位技術(shù)已經(jīng)被廣泛應(yīng) 用。例如作為智能交通系統(tǒng)的基礎(chǔ)設(shè)施,許多城市的出租車和公交車裝配了 GPS設(shè)備;在微 博、微信、大眾點(diǎn)評等移動互聯(lián)網(wǎng)應(yīng)用中,用戶當(dāng)前的位置也常常作為最基礎(chǔ)的信息,被記 錄和分享。這些由車輛和用戶等運(yùn)動目標(biāo)所產(chǎn)生的海量空間軌跡信息,使得對運(yùn)動目標(biāo)的 行為模式進(jìn)行分析成為可能。其中,對運(yùn)動目標(biāo)的位置進(jìn)行預(yù)測是一項(xiàng)重要的研究任務(wù),具 有重要的理論意義和實(shí)際應(yīng)用價(jià)值。例如對車輛的位置進(jìn)行預(yù)測可以有助于智能交通系統(tǒng) 進(jìn)行道路流量預(yù)測,執(zhí)行合理的流量疏導(dǎo)策略;對用戶的位置進(jìn)行預(yù)測可以向用戶推薦與 地點(diǎn)相關(guān)的商品和服務(wù)。
[0003] 現(xiàn)有的基于空間軌跡挖掘的位置預(yù)測方法可以分為兩大類:第一大類是使用多種 上下文信息的方法。此類方法的研究對象通常是基于地理位置的社交網(wǎng)絡(luò)服務(wù)中的數(shù)據(jù)。 此類方法通過對基于地理位置的社交網(wǎng)絡(luò)中的文本標(biāo)簽、用戶評論、照片等多種上下文信 息進(jìn)行挖掘,獲得關(guān)于地點(diǎn)和用戶的語義層次的理解,再結(jié)合位置信息,建立預(yù)測模型。此 類方法通過綜合多種上下文信息可以提高預(yù)測的準(zhǔn)確率,但是模型的計(jì)算復(fù)雜度較大,難 以滿足某些對實(shí)時(shí)性要求高的應(yīng)用。另外,此類方法使用了多種上下文信息,所以普適性不 強(qiáng)。第二大類方法是僅使用位置信息的方法,應(yīng)用范圍具有較強(qiáng)的普適性。本發(fā)明提出的 方法屬于此類方法,因此下面對此類方法進(jìn)行進(jìn)一步介紹。
[0004] 僅使用位置信息的預(yù)測方法大致可以分為兩類。一類是模型驅(qū)動的方法。即對用 戶的行為建立概率模型,將用戶興趣、地點(diǎn)距離、地點(diǎn)流行度等影響用戶運(yùn)動的因素作為變 量,加入到模型中。利用數(shù)據(jù)對模型進(jìn)行訓(xùn)練,訓(xùn)練完成的模型就可以用于位置預(yù)測。另一 類是數(shù)據(jù)驅(qū)動的方法。即利用海量的歷史軌跡數(shù)據(jù),通過挖掘出的運(yùn)動模式來進(jìn)行位置預(yù) 測,而不對用戶的運(yùn)動因素做任何假設(shè)。
[0005] 模型驅(qū)動的方法由于對用戶運(yùn)動的內(nèi)在因素進(jìn)行建模,所以此類方法的可解釋性 較強(qiáng),但是此類方法需要當(dāng)前用戶的較多歷史軌跡信息才能進(jìn)行建模,而且計(jì)算復(fù)雜度較 高,所以存在一定的局限性。數(shù)據(jù)驅(qū)動的方法不對用戶運(yùn)動的內(nèi)在因素進(jìn)行假設(shè),所以可解 釋性較弱,而且預(yù)測的準(zhǔn)確率受到訓(xùn)練數(shù)據(jù)規(guī)模的影響。但是數(shù)據(jù)驅(qū)動的方法在構(gòu)建完模 型之后,對用戶位置進(jìn)行預(yù)測的效率較高,可以滿足某些應(yīng)用場合的實(shí)時(shí)性的要求。


【發(fā)明內(nèi)容】

[0006] 發(fā)明目的:本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提供一種基于海 量空間軌跡挖掘的在線的位置預(yù)測方法。
[0007] 為了解決上述技術(shù)問題,本發(fā)明公開了一種基于海量空間軌跡挖掘的在線的位置 預(yù)測方法,包括以下四個(gè)步驟:
[0008] 頻繁序列挖掘;
[0009] 構(gòu)建基于前綴樹結(jié)構(gòu)的模型;
[0010] 構(gòu)建基于距離和流行度的模型;
[0011] 預(yù)測運(yùn)動目標(biāo)下一位置。
[0012] 本發(fā)明中,所述的頻繁序列挖掘包括以下步驟:
[0013] 步驟a,對一組運(yùn)動目標(biāo)的歷史空間軌跡集合S = (S1, S2, ...,sm}使用頻繁序列挖 掘算法,得到序列模式以及對應(yīng)的支持度,m表示軌跡的總數(shù);
[0014] 所述的構(gòu)建基于前綴樹結(jié)構(gòu)的模型包括以下步驟:
[0015] 步驟b,將步驟a中得到的序列模式構(gòu)建成一棵前綴樹A,序列模式中包含的地點(diǎn) 構(gòu)成前綴樹A的邊,序列模式對應(yīng)的支持度則記錄在序列模式路徑所對應(yīng)的節(jié)點(diǎn)中;
[0016] 步驟c,將步驟a中得到的序列模式倒序,并構(gòu)建成一棵前綴樹B,倒序的序列模式 中包含的地點(diǎn)構(gòu)成前綴樹B的邊,序列模式對應(yīng)的支持度則記錄在倒序的序列模式路徑所 對應(yīng)的節(jié)點(diǎn)中;
[0017] 所述的構(gòu)建基于距離和流行度模型包括步驟:
[0018] 步驟d,建立結(jié)合距離因素和地點(diǎn)流行度因素的預(yù)測模型,該預(yù)測模型將地點(diǎn)的流 行度定義為地點(diǎn)在歷史空間軌跡集合中被用戶訪問的次數(shù),并設(shè)定一個(gè)距離閾值D,然后將 運(yùn)動目標(biāo)當(dāng)前位置距離范圍D內(nèi)的最流行的地點(diǎn)作為下一位置的預(yù)測結(jié)果;
[0019] 所述的預(yù)測運(yùn)動目標(biāo)下一位置的步驟為:
[0020] 步驟e,獲得用戶當(dāng)前位置信息的輸入,如果是首次輸入或者上一輪預(yù)測結(jié)果是由 步驟i所產(chǎn)生,則轉(zhuǎn)到步驟f,否則轉(zhuǎn)到步驟g ;
[0021] 步驟f,將運(yùn)動目標(biāo)當(dāng)前的運(yùn)動軌跡s倒序,記作運(yùn)動軌跡在步驟c中由倒序的 序列模式所構(gòu)建的前綴樹B上,從根節(jié)點(diǎn)開始,依照運(yùn)動軌跡:f包含的地點(diǎn)向子節(jié)點(diǎn)搜索, 直到無法繼續(xù)搜索,此時(shí)到達(dá)子節(jié)點(diǎn)I i ;將根節(jié)點(diǎn)到子節(jié)點(diǎn)Ii的路徑倒序,記作路徑V ;在 步驟b中由序列模式構(gòu)建的前綴樹A上,從根節(jié)點(diǎn)開始,按照路徑s'搜索,直到路徑s'搜 索結(jié)束;將當(dāng)前在前綴樹上的位置保存到變量Γ,接著轉(zhuǎn)到步驟h ;
[0022] 步驟g,如果上一輪預(yù)測結(jié)果是由基于步驟h前綴樹結(jié)構(gòu)的模型產(chǎn)生,則檢查用戶 的當(dāng)前位置是否是上一輪預(yù)測時(shí)變量Γ中保存的前綴樹A的節(jié)點(diǎn)的子節(jié)點(diǎn),如果是,將用 戶當(dāng)前位置存入變量Γ,然后轉(zhuǎn)到步驟h,如果不是,則轉(zhuǎn)到步驟f ;
[0023] 步驟h,遍歷上一步驟變量Γ中保存的前綴樹A的節(jié)點(diǎn)的子節(jié)點(diǎn),將支持度最大的 子節(jié)點(diǎn)作為運(yùn)動目標(biāo)下一位置的預(yù)測結(jié)果;如果支持度最大的子節(jié)點(diǎn)不唯一,則按照步驟 d中流行度的定義,將流行度最大的地點(diǎn)作為預(yù)測結(jié)果,轉(zhuǎn)到步驟j,如果上一步驟變量Γ 保存的節(jié)點(diǎn)沒有子節(jié)點(diǎn),則轉(zhuǎn)到步驟i ;
[0024] 步驟i,用步驟d中的模型來預(yù)測運(yùn)動目標(biāo)的下一位置,接著轉(zhuǎn)到步驟j ;
[0025] 步驟j,輸出預(yù)測結(jié)果,完成此輪預(yù)測,轉(zhuǎn)到步驟e,進(jìn)行下一輪預(yù)測。
[0026] 本發(fā)明中,步驟a中設(shè)定支持度閾值為ξ,則挖掘得到的序列模式表示為: Ω =吣| % £e S,5^x4?, J 2 0,其中 ' 表示歷史空間軌跡集合s中的第q 條空間軌跡,9^{1,2,...,111},111為歷史空間軌跡集合3中包含的軌跡的數(shù)量,〇1)為挖 掘得到的序列模式集合Ω中第p個(gè)序列模式,包含η個(gè)地點(diǎn){、,'...,、,...,、!,其 中I1?表示序列模式的第r個(gè)地點(diǎn),r取值1?n,Support ( α ρ)為序列模式α ρ的支持 度簡化記為supportp,并與序列模式α ρ = Il1, 12, . . .,ln}合并在一起表示,記作α ρ = U1, 12, · · ·,ln: supportp} 〇
[0027] 本發(fā)明中,步驟b中,利用得到的序列模式集合構(gòu)建成一棵前綴樹Α,序列模式 Ct P包含的地點(diǎn)I1, 12,. . .,In構(gòu)成前綴樹A的邊,對應(yīng)的支持度Supportp則記錄在路徑 I1I2... In所對應(yīng)的節(jié)點(diǎn)中。
[0028] 本發(fā)明中,步驟c中,根據(jù)得到的所有序列模式Cip倒序,記為%,并構(gòu)建前綴樹 B, ?ρ包含的地點(diǎn)ln, Ilri,. . .,I1構(gòu)成前綴樹B的邊,而對應(yīng)的支持度Supportp則記錄在路 徑ln,Ilri,...,I1所對應(yīng)的節(jié)點(diǎn)中。
[0029] 本發(fā)明中,步驟d,預(yù)測下一位置的過程為:假設(shè)用戶當(dāng)前已經(jīng)訪問過j個(gè)地點(diǎn),軌 跡為Il 1,12, ...,lj},則用戶當(dāng)前地點(diǎn)為Ij ;將距離地點(diǎn)Ij范圍D內(nèi)所有的地點(diǎn)作為候選地 點(diǎn),記為集合ΙΛ,...,lk,...,lK},其中I k代表集合中的第K個(gè)地點(diǎn),K為候選地點(diǎn)集合中 地點(diǎn)個(gè)數(shù);依據(jù)候選地點(diǎn)Ik對應(yīng)的流行度# (Ik),選擇出最流行的地點(diǎn)1+1作為運(yùn)動目標(biāo)的 下一位置的預(yù)測結(jié)果,預(yù)測模型表示為:
[0030] ξ+1 = arg Iiuix4 ?#(/Α)丨且滿足條件(1」,lk)〈D,
[0031] 其中,L表示用戶當(dāng)前所在的地點(diǎn)為用戶軌跡序列中的第j個(gè)地點(diǎn),用戶下一個(gè)訪 問地點(diǎn)記為lj+1,對下一個(gè)地點(diǎn)的預(yù)測記為€+1,d(lj, Ik)為距離函數(shù),表示地點(diǎn)Ij與地點(diǎn)Ik 之間的距離,D為距離閾值,所有與當(dāng)前地點(diǎn)L距離小于閾值D的地點(diǎn)Ik都是候選地點(diǎn);利 用長度為1的序列模式ak = {lk:# (Ik)}計(jì)算候選地點(diǎn)Ik的流行度,序列模式中的支持度 #(lk)表示了地點(diǎn)I k在歷史空間軌跡集合中被用戶訪問的次數(shù),將支持度#(lk)作為地點(diǎn)流 行度的衡量指標(biāo);函數(shù)argma Xx{F(X)}返回使得F(X)取得最大值的X。
[0032] 本發(fā)明中,步驟f包括:將運(yùn)動目標(biāo)當(dāng)前的軌跡s = I1, 12, ...,Ij倒序,得到軌跡 I = ,在步驟c中由倒序的序列模式所構(gòu)建的前綴樹B上,從根節(jié)點(diǎn)開始,依照軌 跡y包含的地點(diǎn)向子節(jié)點(diǎn)搜索,直到無法繼續(xù)搜索,此時(shí)到達(dá)子節(jié)點(diǎn)Ii ;從根節(jié)點(diǎn)到子節(jié)點(diǎn) 的路徑為:lj,lj_i,...,Ii,將其倒序,得到軌跡S' = Ii, li+1,...,lj,在步驟b中由頻繁序列 構(gòu)建的前綴樹A上,從根節(jié)點(diǎn)開始,按照軌跡S'的路徑搜索,直到搜索結(jié)束,當(dāng)前在前綴樹 A上的位置所對應(yīng)的節(jié)點(diǎn)為Ij,將其存入變量Γ。
[0033] 本發(fā)明中,步驟h包括:遍歷上一步驟變量Γ保存的前綴樹A上節(jié)點(diǎn)的子節(jié)點(diǎn),將 支持度最大的子節(jié)點(diǎn)作為運(yùn)動目標(biāo)下一位置的預(yù)測結(jié)果,即:
[0034] ? +1 = argmiix, ; support(/ …·.廣 /,,)!,
[0035] 其中support (Ii, ···,Γ, Ik)是節(jié)點(diǎn)Ik中所記錄的地點(diǎn)序列Ii, ···,Γ, Ik的支持 度;
[0036] 如果支持度最大的子節(jié)點(diǎn)不唯一,則按照對地點(diǎn)的流行度的定義,輸出流行度最 大的地點(diǎn),即:
[0037] //+1 ^argmax, {#(/)),/e L ;
[0038] 其中,L為支持度最大的子節(jié)點(diǎn)的集合,即:
[0039] i = argmax、!support^,…,廠乂 H
[0040] 1為集合L中的子節(jié)點(diǎn),#(1)為地點(diǎn)1的流行度。
[0041] 本發(fā)明的有益效果在于四個(gè)方面:第一,該方法是在線(online)的。該方法在獲 得了運(yùn)動目標(biāo)最新的位置后,都會動態(tài)調(diào)整模型,從而預(yù)測運(yùn)動目標(biāo)的下一個(gè)位置,如此循 環(huán)往復(fù)。第二,該方法能充分利用運(yùn)動目標(biāo)當(dāng)前的歷史軌跡信息,提高預(yù)測的準(zhǔn)確率。序列 預(yù)測的最常用的方法是馬爾科夫模型,馬爾科夫模型的階數(shù)大的時(shí)候,模型的復(fù)雜度高,容 易產(chǎn)生訓(xùn)練數(shù)據(jù)不足而導(dǎo)致模型偏差;而模型的階數(shù)小的時(shí)候,模型過于簡單,沒有充分挖 掘數(shù)據(jù)內(nèi)在的結(jié)構(gòu)和依賴關(guān)系,導(dǎo)致預(yù)測準(zhǔn)確率低。而本方法在步驟f中,相當(dāng)于動態(tài)選擇 合適的階數(shù)。第三,通過建立基于距離和地點(diǎn)流行度的模型(步驟d),該方法可以應(yīng)對數(shù)據(jù) 稀疏導(dǎo)致的"零頻率"問題。第四,該方法簡單高效,適用范圍廣泛。該方法將海量空間軌 跡挖掘得到的序列模式構(gòu)建前綴樹,并在每一輪預(yù)測中都保留了前綴樹上對應(yīng)的位置用作 下一輪預(yù)測。此外還在基于流行度和距離的模型中建立了空間索引。因此該預(yù)測方法的最 好時(shí)間復(fù)雜度為0(1)。由于該方法僅使用了運(yùn)動目標(biāo)的位置信息,所以該方法適用范圍很 廣,例如可以直接應(yīng)用于現(xiàn)有的各類基于地理位置的服務(wù)(LBS)應(yīng)用。

【專利附圖】

【附圖說明】
[0042] 下面結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明做更進(jìn)一步的具體說明,本發(fā)明的上述和 /或其他方面的優(yōu)點(diǎn)將會變得更加清楚。
[0043] 圖1預(yù)測模型總體框圖。
[0044] 圖2在線的位置預(yù)測的流程圖。
[0045] 圖3實(shí)驗(yàn)數(shù)據(jù)分布圖。
[0046] 圖4利用頻繁序列模式及支持度建立前綴樹的示意圖。
[0047] 圖5利用倒序的頻繁序列模式及支持度建立前綴樹的示意圖。
[0048] 圖6利用地點(diǎn)距離和流行度建立模型的示意圖。

【具體實(shí)施方式】
[0049] 本發(fā)明的目的在于通過挖掘海量的空間軌跡,構(gòu)建預(yù)測模型,然后根據(jù)運(yùn)動目標(biāo) 的當(dāng)前的位置信息,預(yù)測運(yùn)動目標(biāo)的下一位置,并在每一輪預(yù)測時(shí)保留相關(guān)信息,從而提高 下一輪預(yù)測的效率。
[0050] 為達(dá)到上述目的,本發(fā)明提供一種基于海量空間軌跡挖掘的在線的位置預(yù)測方 法,該方法包括頻繁序列挖掘、構(gòu)建基于前綴樹結(jié)構(gòu)的模型、構(gòu)建基于距離和流行度的模型 以及預(yù)測運(yùn)動目標(biāo)下一位置四大步驟。
[0051] 所述的頻繁序列挖掘步驟為:
[0052] 步驟a,對運(yùn)動目標(biāo)的歷史空間軌跡集合S = (S1, S2, ...,sj使 用頻繁序列挖掘算法,挖掘出所有支持度大于閾值ξ的頻繁序列,記為: Ω=!% |αΛ ?e5,&//滬。集合Ω中的每個(gè)頻繁序列模式,可以表示為 a p = Il1, 12, · · ·,Ir, · · ·,ln:supportp}。其中 Ir 表示序列包含的第 r 個(gè)地點(diǎn),Supportp 表 示α p的支持度。
[0053] 所述的構(gòu)建基于前綴樹結(jié)構(gòu)的模型步驟為:
[0054] 步驟b,利用步驟a中得到的序列模式集合A中所有的Cip構(gòu)建成一棵前綴樹。 Ct P包含的地點(diǎn)I1, 12,. . .,In構(gòu)成前綴樹的邊,而對應(yīng)的支持度Supportp則記錄在路徑 "I 1I2. ·· In"所對應(yīng)的節(jié)點(diǎn)中。
[0055] 步驟c,將步驟a中得到的序列模式集合A中的所有α p倒序,記為力,并構(gòu)建前 綴樹。6^包含的地點(diǎn)ln, Ilri,...,I1構(gòu)成前綴樹的邊,而對應(yīng)的支持度Supportp則記錄在 路徑〃ln,Ilri,...,I1"所對應(yīng)的節(jié)點(diǎn)中。
[0056] 所述的構(gòu)建基于距離和流行度模型的步驟為:
[0057] 步驟d,結(jié)合距離因素和地點(diǎn)流行度因素,可以建立如下的模型:
[0058] f.+1 = argmax/( {#(4)} s.t.d{lj,l1s)<D
[0059] H(Ik)為步驟a得至繼序列模式集合Λ中,長度為1的Cik所對應(yīng)的支持度,艮P Cik ={ik:#(ik)},它代表了地點(diǎn)ik的流行度。該模型根據(jù)運(yùn)動目標(biāo)當(dāng)前地點(diǎn)距離范圍D 內(nèi)的最流行的地點(diǎn)/;+1作為運(yùn)動目標(biāo)的下一位置的預(yù)測結(jié)果。在模型中,對地點(diǎn)的空間坐標(biāo) 建立空間索弓丨,以提高搜索周圍地點(diǎn)的效率。
[0060] 建立該模型的意義在于:當(dāng)運(yùn)動目標(biāo)的運(yùn)動軌跡超出了從海量空間軌跡中挖掘出 來的序列模式的范圍時(shí),上一步驟構(gòu)建的基于前綴樹結(jié)構(gòu)的模型就無法對運(yùn)動目標(biāo)的位置 做出預(yù)測,這種由訓(xùn)練數(shù)據(jù)的稀疏性帶來的問題被稱為"零頻率"問題。此時(shí)基于距離和地 點(diǎn)流行度的模型就可以作為補(bǔ)充,對運(yùn)動目標(biāo)的位置做出預(yù)測。
[0061] 所述的預(yù)測運(yùn)動目標(biāo)下一位置的步驟為:
[0062] 步驟e,接收用戶當(dāng)前位置信息的輸入。如果是首輪預(yù)測或者上一輪預(yù)測結(jié)果不是 由基于前綴樹結(jié)構(gòu)的模型產(chǎn)生,則轉(zhuǎn)到步驟f,否則轉(zhuǎn)到步驟g。
[0063] 步驟f,將運(yùn)動目標(biāo)當(dāng)前的運(yùn)動軌跡記為s = I1J2,...,1』,將s倒序,得到 I = /,,/,+ ···.(。在步驟c中由倒序的序列模式所構(gòu)建的前綴樹上,從根節(jié)點(diǎn)開始,依照y包 含的地點(diǎn)向子節(jié)點(diǎn)搜索,直到無法繼續(xù)搜索,此時(shí)到達(dá)子節(jié)點(diǎn)Ii。從根節(jié)點(diǎn)到子節(jié)點(diǎn)的路徑 為:...,Ii,將其倒序,得到s' = Ii, li+1,.. .,Ip在步驟b中由頻繁序列構(gòu)建的前 綴樹上,從根節(jié)點(diǎn)開始,按照s'的路徑搜索,直到搜索結(jié)束,當(dāng)前在前綴樹上的位置所對應(yīng) 的節(jié)點(diǎn)應(yīng)該為Ip保留當(dāng)前在前綴樹上的位置,接著轉(zhuǎn)到步驟h。
[0064] 步驟g,如果上一輪預(yù)測結(jié)果是由基于前綴樹結(jié)構(gòu)的模型產(chǎn)生,則檢查用戶的當(dāng)前 位置是否是上一輪預(yù)測時(shí)在前綴樹上保留位置的子節(jié)點(diǎn)。如果是,將前綴樹上保留的位置 移動到該子節(jié)點(diǎn),然后轉(zhuǎn)到步驟h。如果不是,則轉(zhuǎn)到步驟f。
[0065] 步驟h,將上一步驟前綴樹上保留的位置對應(yīng)的節(jié)點(diǎn)記為Γ,將Γ的子節(jié)點(diǎn)中支持 度最大的子節(jié)點(diǎn)L作為運(yùn)動目標(biāo)下一位置的預(yù)測結(jié)果。即: ? 申
[0066] /, I = arginaX/ |support(/,",·,/ 乂
[0067] support (Ii, · · ·,Γ, Ik)是節(jié)點(diǎn)Ik中所記錄的地點(diǎn)序列Ii, · · ·,Γ, Ik的支持度。 [0068] 如果支持度最大的子節(jié)點(diǎn)不唯一,則按照步驟d中流行度的定義,輸出流行度最 大的地點(diǎn)。轉(zhuǎn)到步驟j。如果找不到子節(jié)點(diǎn),則轉(zhuǎn)到步驟i。
[0069] 步驟i,用步驟d中的模型來預(yù)測運(yùn)動目標(biāo)的下一位置。接著轉(zhuǎn)到步驟j。
[0070] 步驟j,輸出預(yù)測結(jié)果,完成此輪預(yù)測。轉(zhuǎn)到步驟e,進(jìn)行下一輪預(yù)測。
[0071] 本發(fā)明提出的方法首先從海量空間軌跡中挖掘頻繁序列模式,接著使用序列模式 構(gòu)建基于前綴樹結(jié)構(gòu)的模型,然后構(gòu)建基于距離和流行度的模型用來解決零頻率問題,最 后利用構(gòu)建的預(yù)測模型,根據(jù)運(yùn)動目標(biāo)當(dāng)前軌跡信息來預(yù)測運(yùn)動目標(biāo)的下一位置。該預(yù)測 方法的準(zhǔn)確率相對于現(xiàn)有方法有較大提升,而且計(jì)算復(fù)雜度低,能對運(yùn)動目標(biāo)的位置進(jìn)行 實(shí)時(shí)預(yù)測,并且僅依賴于運(yùn)動目標(biāo)的位置信息,因此可以廣泛應(yīng)用于智能交通、基于地理位 置的服務(wù)等多個(gè)領(lǐng)域。
[0072] 實(shí)施例1
[0073] 如圖1所示,本實(shí)施例提出的基于海量空間軌跡挖掘的在線的位置預(yù)測方法包括 頻繁序列挖掘、構(gòu)建基于前綴樹結(jié)構(gòu)的模型、構(gòu)建基于距離和流行度的模型以及預(yù)測運(yùn)動 目標(biāo)下一位置四大步驟。其中前三大步驟涉及了預(yù)測模型的構(gòu)建,第四大步驟涉及預(yù)測模 型的使用,即:根據(jù)運(yùn)動目標(biāo)當(dāng)前的位置在線地預(yù)測目標(biāo)的下一位置。由于涉及到比較復(fù)雜 的邏輯,所以第四大步驟的具體流程單獨(dú)繪制,如圖2所示。
[0074] 在對本實(shí)施例的運(yùn)算過程作詳細(xì)說明之前,對本實(shí)例進(jìn)行一定的描述。本實(shí)例所 涉及的數(shù)據(jù),來自海量地理位置數(shù)據(jù)挖掘領(lǐng)域常用的數(shù)據(jù)來源Panoramio. com。實(shí)現(xiàn)抓取這 些數(shù)據(jù)的爬蟲設(shè)計(jì)及數(shù)據(jù)的預(yù)處理方法,不在本實(shí)施例范圍之內(nèi)。
[0075] 本實(shí)施例的數(shù)據(jù)的獲取以及預(yù)處理方法如下:
[0076] 從帶有GPS位置信息的照片分享網(wǎng)站Panoramio. com上爬取了由1,267, 123位用 戶上傳的14, 679, 221張照片的GPS位置,接著對這些GPS位置做了如下處理:(1)使用均值 漂移聚類算法對GPS位置聚類,聚類算法帶寬設(shè)置為0. 01,對應(yīng)到地球表面的距離約為100 米。(2)對聚類結(jié)果進(jìn)行過濾。在每一類中,如果數(shù)據(jù)點(diǎn)的GPS位置到聚類中心的距離大于 1千米,則去除該數(shù)據(jù)點(diǎn)。用這種規(guī)則去除了聚類的數(shù)據(jù)點(diǎn)之后,如果一個(gè)聚類包含的數(shù)據(jù) 點(diǎn)少于20,或者聚類的數(shù)據(jù)點(diǎn)對應(yīng)的用戶少于5,則把這個(gè)聚類剔除。這一步去除了低質(zhì)量 的聚類,即保證剩下的聚類是有意義的地點(diǎn)。(3)生成用戶旅行的地點(diǎn)序列。將每個(gè)用戶 的GPS位置按照對應(yīng)的照片拍攝時(shí)間的先后順序進(jìn)行排列,得到用戶的GPS位置序列。然 后根據(jù)步驟2中GPS位置與聚類的對應(yīng)關(guān)系,將用戶的GPS位置序列轉(zhuǎn)換為地點(diǎn)序列。最 后,剔除包含地點(diǎn)數(shù)量小于2的地點(diǎn)序列。(4)經(jīng)過上述的處理步驟,共得到了 115, 303條 地點(diǎn)序列,這些地點(diǎn)序列包含了 36, 042個(gè)不同的地點(diǎn)。這些地點(diǎn)的分布如圖3所示。
[0077] 將用戶的地點(diǎn)序列集合記為S = {Sl,s2, ...,sm},集合中的每個(gè)元素 Si代表某個(gè) 用戶的一條地點(diǎn)序列=Si = ln,li2, ...,Iin。本實(shí)施例提出的方法的目的是通過挖掘S,構(gòu)建 預(yù)測模型,根據(jù)用戶當(dāng)前的地點(diǎn)序列ΙΛ,12,. . .,Ij預(yù)測用戶將要前往的下一個(gè)地點(diǎn)/^1。 當(dāng)用戶實(shí)際前往地點(diǎn)lj+1之后,將地點(diǎn)lj+1的位置信息輸入預(yù)測模型,獲取用下一個(gè)位置的 預(yù)測結(jié)果ξ. +2。如此往復(fù)進(jìn)行下去。
[0078] 下面對本實(shí)施例提出方法的運(yùn)算過程作詳細(xì)說明:
[0079] 所述的頻繁序列挖掘流程為:
[0080] 步驟101,使用頻繁序列挖掘算法PrefixSpan并設(shè)定支持度閾值為ξ,從集合S中 挖掘出所有滿足條件的頻繁序列,記為:〇 =!%!%^\,_^£乂%少_(%)^.!。集合 Ω中的每個(gè)頻繁序列模式,可以表示為a p = Il1, I2, · · · , Ir, · · · , ln:supportp}。其中Ir表 示序列包含的第r個(gè)地點(diǎn),Supportp表示α p的支持度。
[0081] 步驟102,將頻繁序列集合Ω中長度為1的序列模式與其它序列模式分開。長度 為1的序列模式代表單個(gè)地點(diǎn),模式的支持度代表了地點(diǎn)的流行度。其余長度大于1的序 列模式將在后續(xù)的步驟中用于構(gòu)建前綴樹模型。
[0082] 所述的構(gòu)建基于前綴樹結(jié)構(gòu)的模型步驟為:
[0083] 步驟201,將步驟102中得到的長度大于1的序列模式構(gòu)建成一棵前綴樹A。構(gòu)建 前綴樹A的方法是:每個(gè)序列模式a i中包含的地點(diǎn)I1, 12, ...,In構(gòu)成前綴樹A的邊,而序 列模式α p的支持度Supportp則記錄在路徑"I1I2. . . In〃所對應(yīng)的節(jié)點(diǎn)中。
[0084] 為了清晰地展示步驟201構(gòu)建前綴樹的方法,圖4給出了一個(gè)范例。假設(shè)在步 驟102中得到的長度大于1的序列模式以及支持度為:{A,B:4} {B,C:4} {A,D:5} {B,E:5} {D,E:4} {A,B,C:4} {A,B,E:4} {A,D,E:4},按照步驟201構(gòu)建出來的前綴樹A應(yīng)當(dāng)如圖4所 示。前綴樹上從根節(jié)點(diǎn)到某個(gè)子節(jié)點(diǎn)的路徑對應(yīng)一個(gè)序列模式,序列模式的支持度存儲在 子節(jié)點(diǎn)中。
[0085] 步驟202,將步驟102中得到的長度大于1的每個(gè)序列模式α p倒序,記為^,并 構(gòu)建前綴樹B。巧包含的地點(diǎn)ln,Ilri, ...,I1構(gòu)成前綴樹B的邊,而對應(yīng)的支持度Supportp 則記錄在路徑〃ln,Ilri,...,I1〃所對應(yīng)的節(jié)點(diǎn)中。
[0086] 為了清晰地展示步驟202構(gòu)建前綴樹B的方法,圖5給出了一個(gè)范例。假設(shè)在步 驟102中得到的長度大于1的序列模式以及支持度為:{A,B:4} {B,C:4} {A,D:5} {B,E:5} {D,E:4} {A,B,C:4} {A,B,E:4} {A,D,E:4},將其倒序得到{B,A:4} {C,B:4} {D,A:5} {E,B:5} {E,D:4} {C,B,A:4} {E,B,A:4} {E,D,A:4}。用這些倒序的序列模式和對應(yīng)的支持度構(gòu)建前綴 樹,應(yīng)當(dāng)?shù)玫饺鐖D5所示的前綴樹。前綴樹上從根節(jié)點(diǎn)到某個(gè)子節(jié)點(diǎn)的路徑對應(yīng)一個(gè)序列 模式的倒序,序列模式的支持度存儲在子節(jié)點(diǎn)中。
[0087] 所述的構(gòu)建基于距離和流行度模型的步驟為:
[0088] 步驟301,使用KD樹對地點(diǎn)的位置建立空間索引,這樣可以加速搜索當(dāng)前地點(diǎn)周 圍地點(diǎn)的過程。
[0089] 步驟302,將步驟102中得到的地點(diǎn)的流行度按照從大到小的方式排序,記錄每個(gè) 地點(diǎn)的序號。流行度最大的地點(diǎn)記為1,流行度次之的記為2,依次類推。地點(diǎn)和序號記錄 在字典結(jié)構(gòu)中,字典的每個(gè)鍵值對為<l t,〇t>,〇t為地點(diǎn)It的序號。
[0090] 圖2展示了根據(jù)用戶當(dāng)前的位置在線地預(yù)測下一位置的流程,下面結(jié)合圖2,對預(yù) 測方法進(jìn)行詳細(xì)描述:
[0091] 步驟401,接收用戶當(dāng)前位置信息的輸入。如果上一輪預(yù)測結(jié)果不是由基于前綴樹 結(jié)構(gòu)的模型產(chǎn)生(也包含開始預(yù)測時(shí),首次輸入運(yùn)動目標(biāo)的軌跡的情況),則轉(zhuǎn)到步驟402, 否則轉(zhuǎn)到步驟403。
[0092] 步驟402,將用戶當(dāng)前的軌跡s = I1, 12, ...,Ij逆序,得到歹= 。然后在 步驟202中由逆序的序列模式所構(gòu)建的前綴樹B上從根節(jié)點(diǎn)開始搜索,直到無法繼續(xù)搜 索,此時(shí)到達(dá)子節(jié)點(diǎn)Ii。根節(jié)點(diǎn)到子節(jié)點(diǎn)的路徑為:lp 1m,...,Ii,將其倒序,得到^ = Ii, li+1,...,lp接著將s'在步驟201中由序列模式所構(gòu)建的前綴樹A上從根節(jié)點(diǎn)開始搜 索,直到無法繼續(xù)搜索,將前綴樹A上的當(dāng)前位置保存在變量Γ中,接著轉(zhuǎn)到步驟404。
[0093] 步驟403,如果上一輪預(yù)測結(jié)果是由基于前綴樹結(jié)構(gòu)的模型產(chǎn)生,則檢查用戶的當(dāng) 前位置是否是上一輪預(yù)測時(shí)變量Γ所保存的前綴樹A上節(jié)點(diǎn)的子節(jié)點(diǎn)。如果是,將用戶當(dāng) 前位置存入變量Γ,然后轉(zhuǎn)到步驟404,否則轉(zhuǎn)到步驟402。
[0094] 步驟404,選擇變量Γ所保存的前綴樹A上節(jié)點(diǎn)的子節(jié)點(diǎn)中支持度最大的節(jié)點(diǎn),作 為用戶的下一位置的預(yù)測結(jié)果輸出。如果支持度最大的子節(jié)點(diǎn)不唯一,則輸出流行度最大 的子節(jié)點(diǎn)。轉(zhuǎn)到步驟406。如果找不到子節(jié)點(diǎn),則轉(zhuǎn)到步驟405。
[0095] 步驟405,搜索用戶當(dāng)前位置距離D內(nèi)的地點(diǎn),得到候選地點(diǎn)集合L。利用步驟302 中的鍵值對<l t,〇t>,遍歷L中的所有地點(diǎn),把最小的Ot所對應(yīng)的地點(diǎn)It作為預(yù)測結(jié)果輸出, 轉(zhuǎn)到步驟406。
[0096] 步驟406,輸出預(yù)測結(jié)果,完成此輪預(yù)測。轉(zhuǎn)到步驟401,進(jìn)行下一輪預(yù)測。
[0097] 為了清晰地展示步驟401-406描述的根據(jù)運(yùn)動目標(biāo)當(dāng)前的位置在線地預(yù)測目標(biāo) 的下一位置的方法,下面結(jié)合圖4、圖5和圖6給出一個(gè)范例。
[0098] 首輪預(yù)測:用戶向預(yù)測模型輸入當(dāng)前的軌跡s = EBC,從步驟401轉(zhuǎn)到步驟402。將 s倒序得到f = CM,在圖5由序列模式的逆序所構(gòu)成前綴樹上從根節(jié)點(diǎn)開始搜索,得到路 徑〃CB〃就無法繼續(xù)向下搜索,將其倒序得到s' =BC。然后將s'在圖4所示的前綴樹上 搜索,得到路徑"BC"所對應(yīng)的節(jié)點(diǎn),保留該節(jié)點(diǎn),轉(zhuǎn)到步驟404。發(fā)現(xiàn)當(dāng)前節(jié)點(diǎn)不含有子節(jié) 點(diǎn),轉(zhuǎn)到步驟405。如圖6所示,用戶當(dāng)前位置為'C',在范圍D內(nèi)有兩個(gè)地點(diǎn)'A'和'D',選 擇流行度大的地點(diǎn)'D'作為預(yù)測結(jié)果輸出。轉(zhuǎn)到步驟406,完成此輪預(yù)測。轉(zhuǎn)到步驟401, 進(jìn)行下一輪預(yù)測。
[0099] 第二輪預(yù)測:用戶當(dāng)前到達(dá)的位置為'A'。由于上一輪預(yù)測結(jié)果不是由基于前綴 樹的模型產(chǎn)生,所以轉(zhuǎn)到步驟402。此時(shí)s = EBCA,類似于首輪的方法,最終保留在圖4的 根節(jié)點(diǎn)下的'A'節(jié)點(diǎn)對應(yīng)的位置,跳轉(zhuǎn)到步驟404。發(fā)現(xiàn)有兩個(gè)子節(jié)點(diǎn)'B'和'D',將支持 度大的地點(diǎn)'D'作為預(yù)測結(jié)果輸出。轉(zhuǎn)到步驟406,完成此輪預(yù)測。轉(zhuǎn)到步驟401,進(jìn)行下 一輪預(yù)測。
[0100] 第三輪預(yù)測:用戶當(dāng)前到達(dá)的位置為'B'。上一輪預(yù)測是基于前綴樹模型產(chǎn)生的, 所以轉(zhuǎn)到步驟403。上一輪在圖4的前綴樹上保留的位置是根節(jié)點(diǎn)下的'A'節(jié)點(diǎn)對應(yīng)的位 置,而'B'是該位置的子節(jié)點(diǎn),所以將前綴樹上保留的位置移動到'B',然后轉(zhuǎn)到步驟404。 此時(shí)子節(jié)點(diǎn)為'C'和?',支持度均為4,所以考慮單個(gè)地點(diǎn)的流行度。由于E的流行度為 5, C的流行度為4,所以把E作為預(yù)測結(jié)果輸出。轉(zhuǎn)到步驟406,完成此輪預(yù)測。轉(zhuǎn)到步驟 401,進(jìn)行下一輪預(yù)測。
[0101] 如此循環(huán)地將用戶當(dāng)前位置信息輸入預(yù)測模型,獲得下一位置的預(yù)測結(jié)果。
[0102] 為了檢驗(yàn)本實(shí)施例提出的方法的有效性,本實(shí)施例從地理位置信息數(shù)據(jù)挖掘相關(guān) 的研究領(lǐng)域常用數(shù)據(jù)來源Panoramio. com上,通過編寫網(wǎng)絡(luò)爬蟲獲得了由1,267, 123位用 戶上傳的14, 679, 221個(gè)GPS標(biāo)簽,并進(jìn)行預(yù)處理得到用戶的旅游過程中產(chǎn)生的地點(diǎn)序列。 然后將地點(diǎn)序列隨機(jī)分成兩份,分別作為訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集。然后使用訓(xùn)練數(shù)據(jù) 集按照本發(fā)明提出的方法構(gòu)建預(yù)測模型,接著將測試數(shù)據(jù)集中的序列依次輸入預(yù)測模型, 產(chǎn)生預(yù)測結(jié)果,并將預(yù)測結(jié)果與實(shí)際結(jié)果進(jìn)行對比。對比結(jié)果采用平均準(zhǔn)確率均值(Mean Average Precision,MAP)作為評價(jià)指標(biāo),如表1所示。
[0103] 實(shí)驗(yàn)結(jié)果顯示本實(shí)施例提出的方法所獲得的預(yù)測準(zhǔn)確率高于傳統(tǒng)的序列預(yù)測算 法。需要強(qiáng)調(diào)的是,實(shí)驗(yàn)結(jié)果中本實(shí)施例提出的方法共測試了兩類頻繁序列。一類是一 般意義的頻繁序列,即步驟a挖掘的序列模式α p中包含的地點(diǎn)I1, 12, ...,In在原始序列 Sq,Sq e S中可以不連續(xù),另一類限定頻繁序列為原始序列的子串,即要求序列模式α p中包 含的地點(diǎn)I1, 12, ...,In在原始序列S,,s, e S中是連續(xù)的。這兩類頻繁序列都屬于步驟a 中描述的挖掘頻繁序列,當(dāng)然,挖掘得到的頻繁序列也可以是上述兩類頻繁序列的變形、修 改和等效。
[0104] 表1預(yù)測方法的準(zhǔn)確率比較
[0105]

【權(quán)利要求】
1. 一種基于海量空間軌跡挖掘的在線的位置預(yù)測方法,其特征在于,包括以下四個(gè)步 驟: 頻繁序列挖掘; 構(gòu)建基于?υ綴樹結(jié)構(gòu)的I吳型; 構(gòu)建基于距離和流行度的模型; 預(yù)測運(yùn)動目標(biāo)下一位置。
2. 根據(jù)權(quán)利要求1所述的一種基于海量空間軌跡挖掘的在線的位置預(yù)測方法,其特征 在于,所述的頻繁序列挖掘包括以下步驟: 步驟a,對一組運(yùn)動目標(biāo)的歷史空間軌跡集合S=(S1, S2,...,sm}使用頻繁序列挖掘算 法,得到序列模式以及對應(yīng)的支持度,m表示軌跡的總數(shù); 所述的構(gòu)建基于前綴樹結(jié)構(gòu)的模型包括以下步驟: 步驟b,將步驟a中得到的序列模式構(gòu)建成一棵前綴樹A,序列模式中包含的地點(diǎn)構(gòu)成 前綴樹A的邊,序列模式對應(yīng)的支持度則記錄在序列模式路徑所對應(yīng)的節(jié)點(diǎn)中; 步驟c,將步驟a中得到的序列模式倒序,并構(gòu)建成一棵前綴樹B,倒序的序列模式中包 含的地點(diǎn)構(gòu)成前綴樹B的邊,序列模式對應(yīng)的支持度則記錄在倒序的序列模式路徑所對應(yīng) 的節(jié)點(diǎn)中; 所述的構(gòu)建基于距離和流行度模型包括步驟: 步驟d,建立結(jié)合距離因素和地點(diǎn)流行度因素的預(yù)測模型,該預(yù)測模型將地點(diǎn)的流行度 定義為地點(diǎn)在歷史空間軌跡集合中被用戶訪問的次數(shù),并設(shè)定一個(gè)距離閾值D,然后將運(yùn)動 目標(biāo)當(dāng)前位置距離范圍D內(nèi)的最流行的地點(diǎn)作為下一位置的預(yù)測結(jié)果; 所述的預(yù)測運(yùn)動目標(biāo)下一位置的步驟為: 步驟e,獲得用戶當(dāng)前位置信息的輸入,如果是首次輸入或者上一輪預(yù)測結(jié)果是由步驟i所產(chǎn)生,則轉(zhuǎn)到步驟f,否則轉(zhuǎn)到步驟g; 步驟f,將運(yùn)動目標(biāo)當(dāng)前的運(yùn)動軌跡s倒序,記作運(yùn)動軌跡在步驟c中由倒序的序列 模式所構(gòu)建的前綴樹B上,從根節(jié)點(diǎn)開始,依照運(yùn)動軌跡P包含的地點(diǎn)向子節(jié)點(diǎn)搜索,直到 無法繼續(xù)搜索,此時(shí)到達(dá)子節(jié)點(diǎn)Ii ;將根節(jié)點(diǎn)到子節(jié)點(diǎn)Ii的路徑倒序,記作路徑V;在步 驟b中由序列模式構(gòu)建的前綴樹A上,從根節(jié)點(diǎn)開始,按照路徑s'搜索,直到路徑s'搜索 結(jié)束;將當(dāng)前在前綴樹上的位置保存到變量Γ,接著轉(zhuǎn)到步驟h; 步驟g,如果上一輪預(yù)測結(jié)果是由基于步驟h前綴樹結(jié)構(gòu)的模型產(chǎn)生,則檢查用戶的當(dāng) 前位置是否是上一輪預(yù)測時(shí)變量Γ中保存的前綴樹A的節(jié)點(diǎn)的子節(jié)點(diǎn),如果是,將用戶當(dāng) 前位置存入變量Γ,然后轉(zhuǎn)到步驟h,如果不是,則轉(zhuǎn)到步驟f; 步驟h,遍歷上一步驟變量Γ中保存的前綴樹A的節(jié)點(diǎn)的子節(jié)點(diǎn),將支持度最大的子節(jié) 點(diǎn)作為運(yùn)動目標(biāo)下一位置的預(yù)測結(jié)果;如果支持度最大的子節(jié)點(diǎn)不唯一,則按照步驟d中 流行度的定義,將流行度最大的地點(diǎn)作為預(yù)測結(jié)果,轉(zhuǎn)到步驟j,如果上一步驟變量Γ保存 的節(jié)點(diǎn)沒有子節(jié)點(diǎn),則轉(zhuǎn)到步驟i; 步驟i,用步驟d中的模型來預(yù)測運(yùn)動目標(biāo)的下一位置,接著轉(zhuǎn)到步驟j; 步驟j,輸出預(yù)測結(jié)果,完成此輪預(yù)測,轉(zhuǎn)到步驟e,進(jìn)行下一輪預(yù)測。
3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟a中設(shè)定支持度閾值為ξ,則挖掘 得到的序列模式表示為:Ω =bI%y</ eAd,其中Sq表示歷史 空間軌跡集合S中的第q條空間軌跡,qe{1,2,...,m},m為歷史空間軌跡集合S中包 含的軌跡的數(shù)量,αρ為挖掘得到的序列模式集合Ω中第p個(gè)序列模式,包含η個(gè)地點(diǎn) Il1, 12,· ··,Ir,· ··,IJ,其中Ir表示序列模式的第r個(gè)地點(diǎn),r取值1?n,Support(αρ)為 序列模式αρ的支持度簡化記為Supportp,并與序列模式αρ =ΙΛ,12, . . .,ln}合并在一起 表示,記作αρ =Il1, 12,· · ·,ln:supportp}。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,步驟b中,利用得到的序列模式集合構(gòu)建 成一棵前綴樹A,序列模式αp包含的地點(diǎn)I1, 12, ...,In構(gòu)成前綴樹A的邊,對應(yīng)的支持度 Supportp則記錄在路徑I1I2...In所對應(yīng)的節(jié)點(diǎn)中。
5. 根據(jù)權(quán)利要求4所述的方法,其特征在于,步驟c中,根據(jù)得到的所有序列模式Cip 倒序,記為%,并構(gòu)建前綴樹B, 包含的地點(diǎn)ln,Ilri,...,I1構(gòu)成前綴樹B的邊,而對應(yīng)的 支持度Supportp則記錄在路徑ln,Ilri,. . .,I1所對應(yīng)的節(jié)點(diǎn)中。
6. 根據(jù)權(quán)利要求5所述的方法,其特征在于,步驟d,預(yù)測下一位置的過程為:假設(shè)用戶 當(dāng)前已經(jīng)訪問過j個(gè)地點(diǎn),軌跡為Il1,12, ...,lj},則用戶當(dāng)前地點(diǎn)為Ij;將距離地點(diǎn)Ij范 圍D內(nèi)所有的地點(diǎn)作為候選地點(diǎn),記為集合ΙΛ,...,lk,...,IJ,其中Ik代表集合中的第K 個(gè)地點(diǎn),K為候選地點(diǎn)集合中地點(diǎn)個(gè)數(shù);依據(jù)候選地點(diǎn)Ik對應(yīng)的流行度#(lk),選擇出最流 行的地點(diǎn)&"乍為運(yùn)動目標(biāo)的下一位置的預(yù)測結(jié)果,預(yù)測模型表示為:ζ+1 =argmax^ {#(4)丨且滿足條件Qj,lk)〈D, 其中士表示用戶當(dāng)前所在的地點(diǎn)為用戶軌跡序列中的第j個(gè)地點(diǎn),用戶下一個(gè)訪問地 點(diǎn)記為lj+1,對下一個(gè)地點(diǎn)的預(yù)測記為€.+1,d(lj,Ik)為距離函數(shù),表示地點(diǎn)Ij與地點(diǎn)Ik之間 的距離,D為距離閾值,所有與當(dāng)前地點(diǎn)L距離小于閾值D的地點(diǎn)Ik都是候選地點(diǎn);利用長 度為1的序列模式ak = {lk:# (Ik)}計(jì)算候選地點(diǎn)Ik的流行度,序列模式中的支持度# (Ik) 表示了地點(diǎn)Ik在歷史空間軌跡集合中被用戶訪問的次數(shù),將支持度#(lk)作為地點(diǎn)流行度 的衡量指標(biāo);函數(shù)3找11^!£{?(1)}返回使得?(1)取得最大值的1。
7. 根據(jù)權(quán)利要求6所述的方法,其特征在于,步驟f包括:將運(yùn)動目標(biāo)當(dāng)前的軌跡S =I1, 12,...,Ij倒序,得到軌跡歹=ZyJy?乂,在步驟c中由倒序的序列模式所構(gòu)建的前 綴樹B上,從根節(jié)點(diǎn)開始,依照軌跡s包含的地點(diǎn)向子節(jié)點(diǎn)搜索,直到無法繼續(xù)搜索,此 時(shí)到達(dá)子節(jié)點(diǎn)Ii ;從根節(jié)點(diǎn)到子節(jié)點(diǎn)的路徑為:lp1m,...,Ii,將其倒序,得到軌跡V= Ii,li+1,...,Ip在步驟b中由頻繁序列構(gòu)建的前綴樹A上,從根節(jié)點(diǎn)開始,按照軌跡s'的路 徑搜索,直到搜索結(jié)束,當(dāng)前在前綴樹A上的位置所對應(yīng)的節(jié)點(diǎn)為L,將其存入變量Γ。
8. 根據(jù)權(quán)利要求7所述的方法,其特征在于,步驟h包括:遍歷上一步驟變量Γ保存的 前綴樹A上節(jié)點(diǎn)的子節(jié)點(diǎn),將支持度最大的子節(jié)點(diǎn)作為運(yùn)動目標(biāo)下一位置的預(yù)測結(jié)果,即: Ji,=Urgmax, [supporti/,...,/' Ji)) 其中support(Ii,Γ,Ik)是節(jié)點(diǎn)Ik中所記錄的地點(diǎn)序列Ii,Γ,Ik的支持度; 如果支持度最大的子節(jié)點(diǎn)不唯一,則按照對地點(diǎn)的流行度的定義,輸出流行度最大的 地點(diǎn),即: lj+x =QrgmaX/{#(/)),/ 其中,L為支持度最大的子節(jié)點(diǎn)的集合,即: L^argmiiX/ {supporl(/.,4)} 1為集合L中的子節(jié)點(diǎn),#(1)為地點(diǎn)1的流行度。
【文檔編號】G06F17/30GK104462190SQ201410577802
【公開日】2015年3月25日 申請日期:2014年10月24日 優(yōu)先權(quán)日:2014年10月24日
【發(fā)明者】蔣鍇, 傅軍, 孔俊俊, 何加浪, 程序, 李偉超 申請人:中國電子科技集團(tuán)公司第二十八研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
神农架林区| 根河市| 凤城市| 南溪县| 长治县| 社旗县| 绵阳市| 辰溪县| 孟村| 台湾省| 连云港市| 辉县市| 阜城县| 新源县| 德清县| 武隆县| 博乐市| 盐边县| 九江县| 夹江县| 思茅市| 剑川县| 中宁县| 威宁| 荆州市| 嘉禾县| 肥东县| 汾阳市| 日照市| 阜新市| 东台市| 晋宁县| 湘潭县| 古浪县| 嘉鱼县| 广饶县| 昔阳县| 西充县| 金昌市| 博罗县| 师宗县|