專利名稱:用于擇路和調(diào)度的系統(tǒng)和方法
用于擇路和調(diào)度的系統(tǒng)和方法
背景技術(shù):
當(dāng)在大量遞送位置之間對遞送車輛進(jìn)行擇路時(shí),當(dāng)前的擇路和調(diào)度 系統(tǒng)通常利用存儲的時(shí)間和距離數(shù)據(jù),結(jié)合擇路和調(diào)度算法,來生成路 線。計(jì)算遞送區(qū)內(nèi)各位置之間的最短路徑的處理通?;ㄙM(fèi)高并且耗費(fèi)時(shí) 間,該任務(wù)隨著遞送面積的擴(kuò)大而變得極度困難。實(shí)際上,在大量遞送 位置之間或者廣大的陸地面積上進(jìn)行最短路徑計(jì)算通常超過某些計(jì)算機(jī) 的處理和存儲能力。對于不具備進(jìn)行這種計(jì)算的能力的那些計(jì)算機(jī),該 處理仍是耗費(fèi)時(shí)間的處理。因此,需要按更經(jīng)濟(jì)且有效的格式計(jì)算并存 儲時(shí)間和距離數(shù)據(jù)的改進(jìn)物流系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施方式提供了一種用于以經(jīng)濟(jì)且有效的方式計(jì)算并存儲 時(shí)間和距離信息的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。
本發(fā)明的一個(gè)方面提供了 一種計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品 用于控制至少具有存儲器、處理器和顯示裝置的計(jì)算裝置。該計(jì)算機(jī)程 序產(chǎn)品用于計(jì)算并存儲兩個(gè)或更多個(gè)遞送位置之間的最短路徑信息,并 包括存儲有計(jì)算機(jī)可讀程序代碼部分的計(jì)算機(jī)可讀存儲介質(zhì)。所述計(jì)算 機(jī)可讀程序代碼部分包括網(wǎng)格分割模塊,該網(wǎng)格分割模塊將總遞送區(qū)劃 分成限定數(shù)量的網(wǎng)格的倍數(shù)。例如,所述網(wǎng)格分割模塊可以是將遞送區(qū) 劃分成為四的倍數(shù)個(gè)網(wǎng)格的四網(wǎng)格分割模塊。所述限定數(shù)量的網(wǎng)格中的 至少一個(gè)內(nèi)存在兩個(gè)或更多個(gè)遞送位置。另一程序代碼部分是初始朋友 選擇模塊,該初始朋友選擇模塊選擇所述限定數(shù)量的網(wǎng)格中的一個(gè),并 且針對選擇的網(wǎng)格內(nèi)的各特定遞送位置生成朋友列表,所述朋友列表由 最有可能出現(xiàn)在與該特定遞送位置相同的路線上的一組遞送位置組成。 該計(jì)算機(jī)程序產(chǎn)品還包括超級矩陣生成模塊,該超級矩陣生成模塊針對
選擇的網(wǎng)格生成由節(jié)點(diǎn)和弧組成的可橫穿網(wǎng)絡(luò),計(jì)算從選擇的網(wǎng)格內(nèi)的 各遞送位置到所述可橫穿網(wǎng)絡(luò)內(nèi)的每一個(gè)節(jié)點(diǎn)的時(shí)間/距離數(shù)據(jù),并布局 包含從選擇的網(wǎng)格內(nèi)的各特定遞送位置到該位置的朋友列表中的各遞送 位置以及任何范圍內(nèi)倉庫的時(shí)間/距離數(shù)據(jù)的超級矩陣。
本發(fā)明的另一方面提供了一種用于將物品遞送到兩個(gè)或更多個(gè)遞送 位置的系統(tǒng)。該系統(tǒng)包括遞送車輛,所述遞送車輛能夠運(yùn)輸在所述兩個(gè) 或更多個(gè)遞送位置中的每一個(gè)處的用于遞送的一個(gè)或更多個(gè)物品。所述 遞送物品在一倉庫處獲得。該系統(tǒng)還包括上述計(jì)算機(jī)程序產(chǎn)品。所述遞 送車輛利用所述計(jì)算機(jī)程序產(chǎn)品確定的所述最短路徑信息來確定用于獲 得所述兩個(gè)或更多個(gè)遞送位置中的每一個(gè)處的所述用于遞送的一個(gè)或更 多個(gè)物品以及將所述兩個(gè)或更多個(gè)遞送位置中的每一個(gè)處的所述用于遞 送的一個(gè)或更多個(gè)物品運(yùn)輸?shù)礁鬟f送位置的路線。
本發(fā)明的還一方面提供了一種用于計(jì)算并存儲兩個(gè)或更多個(gè)潛在遞 送位置之間的最短路徑信息的計(jì)算機(jī)系統(tǒng)。該計(jì)算機(jī)系統(tǒng)至少包括被構(gòu) 造成將遞送區(qū)分割成一個(gè)或更多個(gè)分離的地理區(qū)域的倍數(shù)的處理器,并 且所述地理區(qū)域中的每一個(gè)包括第一組一個(gè)或更多個(gè)潛在遞送位置。所 述處理器被構(gòu)造成選擇第一地理區(qū)域并針對地理上位于該第一地理區(qū)域 內(nèi)的各潛在遞送位置生成唯一的第二組潛在遞送位置。所述處理器還被 構(gòu)造成生成可橫穿網(wǎng)絡(luò)。所述可橫穿網(wǎng)絡(luò)包括一組節(jié)點(diǎn)和弧,并且還包 括一組兩個(gè)或更多個(gè)節(jié)點(diǎn),所述一組兩個(gè)或更多個(gè)節(jié)點(diǎn)至少包括地理上 位于所述第一地理區(qū)域內(nèi)的潛在遞送位置、以及上述生成的所述唯一的 第二組潛在遞送位置中的任一個(gè)內(nèi)包括的所有潛在遞送位置。所述處理 器被構(gòu)造成計(jì)算從地理上位于所述第一地理區(qū)域內(nèi)的潛在遞送位置中的 每一個(gè)到所述可橫穿網(wǎng)絡(luò)內(nèi)包含的每一個(gè)節(jié)點(diǎn)的最短路徑信息,并且選 擇特定最短路徑信息并存儲該最短路徑信息以供擇路和調(diào)度系統(tǒng)將來査 找。
本發(fā)明的另一方面提供了一種用于計(jì)算并存儲兩個(gè)或更多個(gè)潛在遞 送位置之間的最短路徑信息的計(jì)算機(jī)系統(tǒng)。該計(jì)算機(jī)系統(tǒng)至少包括被構(gòu) 造成針對地理上位于一地理區(qū)域內(nèi)的各潛在遞送位置生成唯一一組潛在
遞送位置的處理器。所述處理器還被構(gòu)造成生成與所述地理區(qū)域唯一關(guān) 聯(lián)的可橫穿網(wǎng)絡(luò)。所述可橫穿網(wǎng)絡(luò)包括一組節(jié)點(diǎn)和弧,并且還包括一組 兩個(gè)或更多個(gè)節(jié)點(diǎn),該一組兩個(gè)或更多個(gè)節(jié)點(diǎn)至少包括地理上位于所述 地理區(qū)域內(nèi)的潛在遞送位置以及上述生成的所述唯一一組潛在遞送位置 內(nèi)包括的所有潛在遞送位置。所述處理器被構(gòu)造成計(jì)算從地理上位于所 述地理區(qū)域內(nèi)的潛在遞送位置中的每一個(gè)到所述可橫穿網(wǎng)絡(luò)內(nèi)包含的每 一個(gè)節(jié)點(diǎn)的最短路徑信息,并且選擇特定最短路徑信息并存儲選擇的特 定最短路徑信息以供擇路和調(diào)度系統(tǒng)將來查找。
本發(fā)明的另一方面提供了一種用于計(jì)算并存儲兩個(gè)或更多個(gè)潛在遞 送位置之間的最短路徑信息的方法。該方法包括將遞送區(qū)分割成一個(gè)或 更多個(gè)分離的地理區(qū)域的倍數(shù)的步驟。所述地理區(qū)域中的每一個(gè)包括第 一組一個(gè)或更多個(gè)潛在遞送位置。另一步驟是選擇第一地理區(qū)域并針對 地理上位于選擇的地理區(qū)域內(nèi)的各潛在遞送位置生成相應(yīng)的唯一的第二 組潛在遞送位置。生成可橫穿網(wǎng)絡(luò),所述可橫穿網(wǎng)絡(luò)包括一組節(jié)點(diǎn)和弧, 并且還包括一組兩個(gè)或更多個(gè)節(jié)點(diǎn),該一組兩個(gè)或更多個(gè)節(jié)點(diǎn)至少包括 地理上位于選擇的地理區(qū)域內(nèi)的潛在遞送位置、以及與地理上位于選擇 的地理區(qū)域內(nèi)的潛在遞送位置相對應(yīng)的所述唯一的第二組潛在遞送位置 內(nèi)包括的所有潛在遞送位置。計(jì)算并存儲從地理上位于選擇的地理區(qū)域 內(nèi)的遞送位置到所述可橫穿網(wǎng)絡(luò)內(nèi)包含的每一個(gè)節(jié)點(diǎn)的最短路徑信息。 根據(jù)需要針對地理上位于選擇的地理區(qū)域內(nèi)的各潛在遞送位置并針對上 述生成的每一個(gè)地理區(qū)域重復(fù)以上步驟。
本文將更充分地描述本發(fā)明的這些和其他方面。
已經(jīng)在總體上這樣描述了本發(fā)明,下面將參照附圖,這些附圖不必 按比例繪制,在附圖中
圖1例示了根據(jù)本發(fā)明一個(gè)實(shí)施方式的超級矩陣計(jì)算機(jī)系統(tǒng)的示意
圖2是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的超級矩陣計(jì)算機(jī)系統(tǒng)執(zhí)行的
各步驟的流程圖3是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的四網(wǎng)格分割模塊執(zhí)行的各步
驟的流程圖4是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的初始朋友選擇模塊執(zhí)行的各 步驟的流程圖5是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的地理平衡模塊執(zhí)行的各步驟 的流程圖6是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的超級矩陣生成模塊執(zhí)行的各 步驟的流程圖7是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的用于計(jì)算從各個(gè)范圍內(nèi)倉庫 到所有網(wǎng)格內(nèi)、范圍內(nèi)位置的時(shí)間/距離的超級矩陣生成模塊執(zhí)行的附加 步驟的流程圖8 (A)是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的其中使用XY/畢達(dá)哥拉 斯定理計(jì)算來生成時(shí)間和距離的下降處理模塊執(zhí)行的各步驟的流程圖8 (B)是例示根據(jù)本發(fā)明一個(gè)實(shí)施方式的其中通過生成"小型可 橫穿網(wǎng)絡(luò)(mini-travnet)"來編輯時(shí)間和距離的下降處理模塊執(zhí)行的各步 驟的流程圖9是根據(jù)本發(fā)明一個(gè)實(shí)施方式的位于示例性遞送區(qū)內(nèi)并且利用超 級矩陣計(jì)算機(jī)系統(tǒng)的可視顯示屏來顯示的各唯一遞送位置的圖示; 圖10例示了已繪制50個(gè)位置之后的圖9的示例性遞送區(qū); 圖11例示了已處理501個(gè)位置之后的圖9的示例性遞送區(qū); 圖12例示了已繪制1000個(gè)位置之后的圖9的示例性遞送區(qū); 圖13例示了圖12中示出的示例性遞送區(qū)的局部放大圖; 圖14例示了圖9的各遞送位置的完整的四網(wǎng)格分解; 圖15例示了在已處理所有各種位置之后的最高密度位置網(wǎng)格的四 網(wǎng)格分解;
圖16例示了一種確定處理遞送位置的順序的方法;
圖17以圖形方式例示了特定起始位置的朋友列表內(nèi)包括的位置;
圖18是在假設(shè)最大朋友參數(shù)被設(shè)置為2500的情況下地理平衡模塊
執(zhí)行的步驟的圖示;
圖19是起始位置朋友列表的圖示,包括通過地理平衡添加的位置; 圖20以圖形方式例示了根據(jù)本發(fā)明一個(gè)實(shí)施方式的可橫穿網(wǎng)絡(luò); 圖21例示了根據(jù)包含十個(gè)位置的假設(shè)遞送區(qū)生成的示例性超級矩
陣;
圖22以圖形方式例示了其中從包含位置A、 B和C的網(wǎng)格中排除一 個(gè)位置(位置Z)的可橫穿網(wǎng)絡(luò);以及
圖23以圖形方式例示了在圖22的位置C與Z之間生成的"小型可 橫穿網(wǎng)絡(luò)"。
具體實(shí)施例方式
下面將參照附圖來描述本發(fā)明,附圖中示出了本發(fā)明的一些而不是 所有實(shí)施方式。實(shí)際上,本發(fā)明可以以許多不同的形式實(shí)現(xiàn),而不應(yīng)被 解釋為限于這里闡述的實(shí)施方式。然而,提供這些實(shí)施方式以使得本公 幵滿足適用的法律要求。相似的標(biāo)號通篇表示相似的元件。
本領(lǐng)域技術(shù)人員應(yīng)理解,本發(fā)明可以實(shí)現(xiàn)為方法、數(shù)據(jù)處理系統(tǒng)或 計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可以采取以下形式完全硬件實(shí)施方式、 完全軟件實(shí)施方式、或者組合硬件方面和軟件方面的實(shí)施方式。此外, 本發(fā)明可以采取計(jì)算機(jī)可讀存儲介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品的形式,該計(jì) 算機(jī)可讀存儲介質(zhì)具有包含在存儲介質(zhì)中的計(jì)算機(jī)可讀程序指令(例如, 計(jì)算機(jī)軟件)。更具體地說,本發(fā)明可以采取網(wǎng)絡(luò)實(shí)現(xiàn)的計(jì)算機(jī)軟件的形 式??梢岳萌魏芜m當(dāng)?shù)挠?jì)算機(jī)可讀存儲介質(zhì),包括硬盤、CD-ROM、 光存儲裝置或磁存儲裝置。
下面將參照根據(jù)本發(fā)明實(shí)施方式的方法、裝置(即,系統(tǒng))和計(jì)算 機(jī)程序產(chǎn)品的框圖和流程圖來描述本發(fā)明。應(yīng)理解的是,框圖和流程圖 的各框以及框圖和流程圖中的框的組合分別可以由計(jì)算機(jī)程序指令來實(shí) 現(xiàn)。這些計(jì)算機(jī)程序指令可以加載到通用計(jì)算機(jī)、專用計(jì)算機(jī)或其他可 編程數(shù)據(jù)處理裝置上以產(chǎn)生機(jī)器,使得在計(jì)算機(jī)或其他可編程數(shù)據(jù)處理 裝置上執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)流程圖框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可以存儲在計(jì)算機(jī)可讀存儲器中,該計(jì)算機(jī)
可讀存儲器可以指示計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置按特定方式工 作,使得存儲在該計(jì)算機(jī)可讀存儲器中的指令產(chǎn)生包括用于實(shí)現(xiàn)流程圖 框中指定的功能的計(jì)算機(jī)可讀指令的制品。該計(jì)算機(jī)程序指令還可以加 載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置上,使得在計(jì)算機(jī)或其他可編程 裝置上進(jìn)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,以使得在計(jì)算 機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)流程圖框中指定的功能 的步驟。
因此,框圖和流程圖的框支持用于執(zhí)行指定功能的裝置的組合、用 于執(zhí)行指定功能的步驟的組合、以及用于執(zhí)行指定功能的程序指令。還 應(yīng)理解的是,框圖和流程圖的各框以及框圖和流程圖中的框的組合可以 利用執(zhí)行指定功能或步驟的基于專用硬件的計(jì)算機(jī)系統(tǒng)或者專用硬件和 計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
系統(tǒng)結(jié)構(gòu)
圖1例示了根據(jù)本發(fā)明一個(gè)實(shí)施方式的超級矩陣計(jì)算機(jī)系統(tǒng)10的示
意圖。從該圖可以理解,在該實(shí)施方式中,超級矩陣計(jì)算機(jī)系統(tǒng)io包括
通過系統(tǒng)接口或總線90與超級矩陣計(jì)算機(jī)系統(tǒng)10內(nèi)的其他元件進(jìn)行通
信的處理器65。超級矩陣計(jì)算機(jī)系統(tǒng)10中還包括用于接收并顯示數(shù)據(jù)的 顯示裝置/輸入裝置70。該顯示裝置/輸入裝置70例如可以是觸摸屏監(jiān)視 器、鍵盤或本領(lǐng)域技術(shù)人員所知的任何其他裝置。超級矩陣計(jì)算機(jī)系統(tǒng) lO還包括存儲器ll,存儲器ll優(yōu)選地包括只讀存儲器(ROM) 14和隨 機(jī)存取存儲器(RAM) 12。服務(wù)器的ROM14用于存儲基本輸入/輸出系 統(tǒng)85 (BIOS),基本輸入/輸出系統(tǒng)85包含有助于在超級矩陣計(jì)算機(jī)系統(tǒng) 10內(nèi)的元件之間傳送信息的基本例程。
另外,超級矩陣計(jì)算機(jī)系統(tǒng)10至少包括一個(gè)存儲裝置13 (例如, 硬盤驅(qū)動器、軟盤驅(qū)動器、CDRom驅(qū)動器或光盤驅(qū)動器),用于在諸如 硬盤、可移動磁盤或CD-ROM盤的各種計(jì)算機(jī)可讀介質(zhì)上存儲信息。本 領(lǐng)域普通技術(shù)人員應(yīng)理解,這些存儲裝置中的每一個(gè)都通過適當(dāng)?shù)慕涌?連接到系統(tǒng)總線90。存儲裝置及其關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)為諸如個(gè)人計(jì)
算機(jī)的計(jì)算機(jī)提供非易失性存儲器。重要的是,應(yīng)注意到,上述計(jì)算機(jī) 可讀介質(zhì)可以由本領(lǐng)域中所知的任何其他類型的計(jì)算機(jī)可讀介質(zhì)來替 代。這種介質(zhì)例如包括盒式磁帶、閃存卡、數(shù)字視頻盤和伯努里式磁盤。 大量程序模塊可以通過各種存儲裝置來存儲,并且存儲在RAM 12
內(nèi)。這種程序模塊包括操作系統(tǒng)60、擇路和調(diào)度模塊800、四網(wǎng)格分割 模塊100、初始朋友選擇模塊200、地理平衡模塊300、超級矩陣生成模 塊500以及下降處理模塊700。擇路和調(diào)度模塊800、四網(wǎng)格分割模塊100、 初始朋友選擇模塊200、地理平衡模塊300、超級矩陣生成模塊500以及 下降處理模塊700在處理器65和操作系統(tǒng)60的協(xié)助下,分別控制超級 矩陣計(jì)算機(jī)系統(tǒng)10的操作的特定方面,如下面更詳細(xì)地描述的。
超級矩陣計(jì)算機(jī)系統(tǒng)10內(nèi)還設(shè)置有網(wǎng)絡(luò)接口 75,用于與計(jì)算機(jī)網(wǎng) 絡(luò)80的其他元件進(jìn)行接口和通信。此外,可以對一個(gè)或更多個(gè)部件進(jìn)行 組合,并且超級矩陣計(jì)算機(jī)系統(tǒng)10中可以包括執(zhí)行這里描述的功能的附 加部件。
超級矩陣計(jì)算機(jī)系統(tǒng)的示例性流程
圖2描繪了根據(jù)本發(fā)明一個(gè)實(shí)施方式的超級矩陣計(jì)算機(jī)系統(tǒng)10的示 例性流程。從該圖可以理解,系統(tǒng)在步驟15通過執(zhí)行四網(wǎng)格分割模塊100 而開始。如下面更詳細(xì)地描述的,根據(jù)本發(fā)明一個(gè)實(shí)施方式的四網(wǎng)格分 割模塊100的總體功能是將整個(gè)遞送區(qū)劃分成較小且更易于管理的網(wǎng)格。 接下來,系統(tǒng)進(jìn)行到步驟20,并選擇要處理的第一網(wǎng)格(由四網(wǎng)格分割 模塊100生成)。在選擇一網(wǎng)格之后,超級矩陣計(jì)算機(jī)系統(tǒng)10在步驟25 執(zhí)行初始朋友選擇模塊200,然后在步驟30執(zhí)行地理平衡模塊300。在 本發(fā)明的各種實(shí)施方式中,執(zhí)行初始朋友選擇模塊200和地理平衡模塊 300導(dǎo)致生成針對所選網(wǎng)格內(nèi)的各位置的單獨(dú)的朋友列表。如本申請中所 使用的,術(shù)語"朋友列表"用于限定最有可能出現(xiàn)在與特定位置相同的 路線上的位置的組。
接下來,系統(tǒng)進(jìn)行到步驟50,在步驟50,其執(zhí)行超級矩陣生成模塊 500??傮w上說,在本發(fā)明的某些實(shí)施方式中,超級矩陣生成模塊500針 對所選網(wǎng)格生成可橫穿網(wǎng)絡(luò),計(jì)算從各網(wǎng)格內(nèi)位置到可橫穿網(wǎng)絡(luò)內(nèi)的每
一個(gè)節(jié)點(diǎn)的時(shí)間/距離數(shù)據(jù),并布局包含從各網(wǎng)格內(nèi)位置到該位置的朋友 以及范圍內(nèi)倉庫的時(shí)間/距離數(shù)據(jù)的超級矩陣,所述范圍內(nèi)倉庫是要被遞 送到遞送位置的物品的存放處。
接下來,系統(tǒng)前進(jìn)到步驟60,在步驟60,確定是否剩有任何未經(jīng)處
理的網(wǎng)格。如果是這樣,則系統(tǒng)前進(jìn)到步驟70,在步驟70,選擇要處理 的下一網(wǎng)格。如果不是這樣,則系統(tǒng)前進(jìn)到結(jié)束處理的步驟S55。
對各種系統(tǒng)模塊的詳細(xì)討論
下面將更詳細(xì)地描述圖2中所示的各種模塊。
四網(wǎng)格分割模塊
圖3描繪了根據(jù)本發(fā)明一個(gè)實(shí)施方式的四網(wǎng)格分割模塊100。如可 以從該圖理解的,該系統(tǒng)在用戶(例如,擇路和調(diào)度技術(shù)員)限定指定 遞送區(qū)內(nèi)的一組唯一的遞送位置的步驟105開始。例如,對于特定曰, 用戶可以負(fù)責(zé)一個(gè)或更多個(gè)遞送車輛到100個(gè)唯一的遞送位置(例如, 家庭、公寓或商店)的擇路和調(diào)度。在該情況下,用戶在步驟105限定 包括這100個(gè)唯一位置的唯一遞送位置組。
在完成步驟105之后,系統(tǒng)進(jìn)行到生成第一網(wǎng)格的步驟110,所述第 一網(wǎng)格包含全部指定的唯一遞送位置。系統(tǒng)生成初始網(wǎng)格,使得該初始 網(wǎng)格的地理邊界包圍遞送區(qū)內(nèi)的所有遞送位置的范圍。在另一實(shí)施方式 中,系統(tǒng)通過向用戶(例如,通過計(jì)算機(jī)顯示屏)呈現(xiàn)地圖而使得用戶 可以限定第一網(wǎng)格的邊界,并且使得用戶可以選擇或限定網(wǎng)格所包圍的 地理區(qū)域。例如,如果全部的唯一遞送位置都位于加利福尼亞州中,則 用戶可以潛在地將第一網(wǎng)格設(shè)置成包括加利福尼亞和周圍的州的部分。
接下來,在步驟120,系統(tǒng)選擇要處理的第一位置。在步驟130,然 后系統(tǒng)將所選位置添加到在地理上包含所選位置的網(wǎng)格。在本發(fā)明的一 個(gè)實(shí)施方式中,將該位置添加("繪制")到網(wǎng)格需要與該位置的緯度和 經(jīng)度坐標(biāo)有關(guān)的位置專有數(shù)據(jù)。例如,對于位于35°緯度和119°經(jīng)度的 第一位置,系統(tǒng)輸入35/119。在一個(gè)實(shí)施方式中,在輸入緯度/經(jīng)度數(shù)據(jù) 之后,系統(tǒng)顯示(例如,通過計(jì)算機(jī)顯示屏)所選位置的圖示。例如, 可以由橙色的點(diǎn)或諸如"+."的某些其他符號來表示所選位置。在系統(tǒng)在步驟130繪制第一位置之后,系統(tǒng)(在步驟150)確定向
其添加了位置的網(wǎng)格是否超過預(yù)定"每網(wǎng)格最大位置數(shù)量"參數(shù)。該"每 網(wǎng)格最大位置數(shù)量"參數(shù)是系統(tǒng)內(nèi)預(yù)先限定的。在一個(gè)實(shí)施方式中,"每 網(wǎng)格最大位置數(shù)量"參數(shù)是可配置的并且由用戶來限定。在其他實(shí)施方 式中,系統(tǒng)包括每網(wǎng)格最大位置數(shù)量參數(shù)的默認(rèn)值。例如,本發(fā)明的一
個(gè)實(shí)施方式中的默認(rèn)的每網(wǎng)格最大位置數(shù)量參數(shù)是500。
在步驟150,如果系統(tǒng)確定在任何特定網(wǎng)格內(nèi)超過了 "每網(wǎng)格最大 位置數(shù)量"參數(shù),則系統(tǒng)進(jìn)行到步驟170,在步驟170,將被識別為具有 過多位置的網(wǎng)格分割成四個(gè)尺寸相等的網(wǎng)格。例如,在本發(fā)明的網(wǎng)格大 致上為正方形的實(shí)施方式中,將該網(wǎng)格分割成四個(gè)尺寸相等的同樣大致 上為正方形的網(wǎng)格。應(yīng)理解的是,將具有過多位置的網(wǎng)格分割成四個(gè)尺 寸相等的網(wǎng)格是根據(jù)本發(fā)明的一個(gè)實(shí)施方式,而在其他實(shí)施方式中,可 以將網(wǎng)格分割成其他數(shù)量(例如,兩個(gè))的尺寸相等的網(wǎng)格。例如,在 本發(fā)明的網(wǎng)格大致上為正方形的實(shí)施方式中,將該網(wǎng)格分割成四個(gè)尺寸 相等的同樣大致上為正方形的網(wǎng)格。
在步驟170中分割了具有過多位置的網(wǎng)格之后,系統(tǒng)進(jìn)行到步驟 160,并確定唯一遞送位置的組中是否剩有任何未繪制的遞送位置。
再回到參照歩驟150,如果系統(tǒng)確定網(wǎng)格都沒有包括過多數(shù)量的位 置,則系統(tǒng)直接進(jìn)行到步驟160。在步驟160,如果系統(tǒng)確定沒有剩余未 繪制的遞送位置,則系統(tǒng)進(jìn)行到步驟180,在歩驟180,完成四網(wǎng)格分割 模塊100。然而,如果剩有附加的未繪制遞送位置,則系統(tǒng)進(jìn)行到步驟 140,在步驟140,前進(jìn)到處理下一遞送位置。
如圖3所示,在該實(shí)施方式中,系統(tǒng)執(zhí)行連續(xù)循環(huán),在該連續(xù)循環(huán) 中,系統(tǒng)在繪制每一個(gè)遞送位置之后確定是否存在任何需要分割的任何 特定網(wǎng)格。系統(tǒng)重復(fù)步驟130、 150、 160和/或170,直到在步驟105限 定的組中的每一個(gè)遞送位置都經(jīng)處理為止。
為了例示的目的,圖9至圖15以圖形方式例示了本發(fā)明各種實(shí)施方 式中四網(wǎng)格分割模塊100執(zhí)行的步驟。更具體地說,圖9至圖15例示了 以下假想示例,在該假想示例中,系統(tǒng)要對遞送車輛到21937個(gè)唯一遞送位置的預(yù)定組內(nèi)的各種位置進(jìn)行擇路和調(diào)度。圖9示出了 21937個(gè)唯
一遞送位置的圖示。在該實(shí)施方式中,大多數(shù)遞送位置位于加利福尼亞 州中。然而,也有零星位于華盛頓州、愛達(dá)荷州、弗吉尼亞州和德克薩
斯州中的位置。在該示例中,"每網(wǎng)格最大位置數(shù)量"參數(shù)被設(shè)置為500。
圖10例示了己繪制50個(gè)位置之后的遞送區(qū)。(因?yàn)閳D9示出了整個(gè) 遞送區(qū),所以難以分辨21937個(gè)單獨(dú)的遞送位置中的每一個(gè)。)如該圖所 示,在單個(gè)網(wǎng)格77中包括整個(gè)遞送區(qū)。圖11例示了已繪制501個(gè)位置 之后的遞送區(qū)。因?yàn)槊烤W(wǎng)格最大位置數(shù)量被設(shè)置為500,所以在初始網(wǎng)格 內(nèi)繪制第501個(gè)位置之后,該網(wǎng)格被分割成四個(gè)尺寸相等的網(wǎng)格。
圖12和圖13例示了在己繪制1000個(gè)位置之后的遞送區(qū)。在該示例 中,在洛杉磯區(qū)域中發(fā)現(xiàn)密度最高的位置網(wǎng)格(參見圖13)。圖14示出 了對于21937個(gè)遞送位置的完整四網(wǎng)格分解。最后,圖15例示了在已處 理了全部21937個(gè)位置之后各種密度最高的位置網(wǎng)格的四網(wǎng)格分解。
圖16例示了一種確定處理遞送位置的順序的方法。在該實(shí)施方式 中,根據(jù)位置的緯度坐標(biāo)和經(jīng)度坐標(biāo)對這些位置進(jìn)行處理(例如,在步 驟120和140選擇并在步驟130繪制)。在該示例中,首先處理緯度值最 小的位置的組。通過對位置的緯度坐標(biāo)取絕對值來確定緯度值。在該實(shí) 施方式中,任何緯度值相同的位置組按它們各自的經(jīng)度值從最小到最大 的順序進(jìn)行處理。因此,要處理的第一位置是具有最小緯度坐標(biāo)和最小 經(jīng)度坐標(biāo)的組合的位置。圖16示出了包括5個(gè)遞送位置的具體示例。因 為位置1和2的繹度值最小,所以首先處理它們。在位置1與2之間, 因?yàn)槲恢?的經(jīng)度值最小,所以首先處理位置1。根據(jù)上述規(guī)則按一次一 個(gè)的方式處理所有五個(gè)位置,直到該組內(nèi)的所有位置均被繪制為止。
初始朋友選擇模塊
在四網(wǎng)格分割模塊100已將整個(gè)遞送區(qū)劃分成較小且更易于管理的 網(wǎng)格之后,超級矩陣計(jì)算機(jī)系統(tǒng)10的下一目標(biāo)是編輯各唯一遞送位置的 單獨(dú)的朋友列表。簡要回顧圖2,系統(tǒng)在逐網(wǎng)格的基礎(chǔ)上,通過在步驟 20選擇第一網(wǎng)格然后選擇接連的網(wǎng)格(步驟70)來進(jìn)行該處理,直到每 一個(gè)網(wǎng)格都經(jīng)處理為止。
圖4描繪了根據(jù)本發(fā)明一個(gè)實(shí)施方式的初始朋友選擇模塊200。初 始朋友選擇模塊200在步驟205開始,在步驟205,選擇要為其生成初始 朋友列表的第一網(wǎng)格內(nèi)起始位置。 一旦在步驟205選擇了起始位置,系 統(tǒng)就進(jìn)行到步驟215,在步驟215,系統(tǒng)生成在所選起始位置的預(yù)定"最 大朋友半徑"內(nèi)的所有遞送位置的列表。在一個(gè)實(shí)施方式中,最大朋友 半徑是可配置的參數(shù)。在步驟218,向最大朋友半徑內(nèi)的各位置分配象限 標(biāo)識符,該象限標(biāo)識符例如可以指示鄰近位置地理上相對于起始位置的 大體方向。在一個(gè)實(shí)施方式中,將包圍所選起始位置的區(qū)域劃分成四個(gè) 分離的且相等的象限。如圖13所示,下面將更詳細(xì)地描述,由水平和垂 直穿過所選起始位置的兩條交叉的線形成四個(gè)象限。返回圖4,在步驟 220,系統(tǒng)按從最鄰近所選起始位置的位置到最遠(yuǎn)離所選起始位置的位置 的方式對在步驟215編輯的列表進(jìn)行排序。
在步驟220對列表進(jìn)行了排序之后,系統(tǒng)進(jìn)行到步驟225,在步驟 225,選擇最近位置以作為添加到朋友列表的候選。 一旦選擇了候選鄰近 位置,系統(tǒng)就進(jìn)行到步驟255,在步驟255,確定將候選鄰近位置添加到 起始位置的朋友列表是否會超過"最大朋友數(shù)量"參數(shù)。如同上述最大 朋友半徑參數(shù)一樣,本發(fā)明的一個(gè)實(shí)施方式包括可配置的"最大朋友數(shù) 量"參數(shù)。在步驟255,如果在添加候選鄰近位置的情況下不超過最大朋 友數(shù)量,則系統(tǒng)進(jìn)行到步驟270,在步驟270,其將鄰近位置添加到起始 位置的朋友列表。
在添加鄰近位置之后,系統(tǒng)進(jìn)行到步驟227,在步驟227,使用鄰近 位置的象限標(biāo)識符來使與鄰近位置的象限相對應(yīng)的計(jì)數(shù)器遞增。在包圍 起始位置的區(qū)域被劃分成四個(gè)象限的實(shí)施方式中,使用四個(gè)不同的計(jì)數(shù) 器來跟蹤朋友數(shù)量。(在步驟255,可以對單獨(dú)的計(jì)數(shù)器的計(jì)數(shù)進(jìn)行合計(jì), 以確定是否超過最大朋友數(shù)量。例如,在一個(gè)實(shí)施方式中,在處理在步 驟225選擇的第一候選時(shí),計(jì)數(shù)器合計(jì)零個(gè)鄰居。假設(shè)最大朋友數(shù)量參 數(shù)被設(shè)置為大于零的數(shù),第一候選絕對不會超過最大數(shù)量。)接下來,在 步驟227,使與所添加位置的象限相關(guān)聯(lián)的計(jì)數(shù)器遞增。
接下來,系統(tǒng)前進(jìn)到步驟230,在步驟230,確定在步驟220編輯的
排序列表中是否剩有任何位置。如果是這樣,則系統(tǒng)進(jìn)行到步驟245,在
步驟245,在經(jīng)排序的列表上選擇下一最近的位置作為添加到起始位置的 朋友列表的候選。然后系統(tǒng)重復(fù)步驟255、 270和277,直到(i)己超過 最大朋友數(shù)量參數(shù)或者(2)已處理了來自在步驟215編輯的列表的所有 位置為止。
在步驟255,如果系統(tǒng)確定在添加候選鄰近位置的情況下將超過最 大朋友數(shù)量參數(shù),則系統(tǒng)前進(jìn)到步驟260,在步驟260,將該鄰近位置從 朋友列表排除。然后系統(tǒng)進(jìn)行到步驟265,并且將所選網(wǎng)格內(nèi)起始位置的 最大倉庫半徑內(nèi)的所有倉庫添加到朋友列表。接下來,在步驟235,系統(tǒng) 完成初始朋友列表。當(dāng)在步驟235完成了初始朋友列表時(shí),系統(tǒng)進(jìn)行到步 驟280,在步驟280,確定所選網(wǎng)格內(nèi)是否剩有任何網(wǎng)格內(nèi)位置。如果是 這樣,則系統(tǒng)進(jìn)行到步驟285,選擇要處理的新的網(wǎng)格內(nèi)位置。然后系統(tǒng) 前進(jìn)到步驟215,繼續(xù)如上所述的步驟,直到已處理所有網(wǎng)格內(nèi)位置為止。
圖17以圖形方式例示了特定起始位置的朋友列表內(nèi)包括的位置。在 該假想示例中,"+" 1700表示將針對其計(jì)算朋友列表的起始位置。限制 在圈1702內(nèi)的區(qū)域表示在執(zhí)行初始朋友選擇模塊200之后包括在起始位 置的朋友列表內(nèi)的位置,并且包括在執(zhí)行地理平衡模塊(下面更詳細(xì)地 討論)之后添加到起始位置的朋友列表的位置。圈1702外部的點(diǎn)表示不 包括在起始位置的朋友列表內(nèi)的遞送位置。
地理平衡模塊
在通過初始朋友選擇模塊200生成針對個(gè)網(wǎng)格內(nèi)位置的初始朋友列 表之后,系統(tǒng)的下一目標(biāo)是避免使過載了朋友的朋友列表位于人口稠密 區(qū)中。例如,如果所選起始位置位于城市的邊緣或郊區(qū),則初始朋友列 表上的大多數(shù)位置可能位于起始位置的同一總體方向上(例如,朝向城 市)。換言之,在鄉(xiāng)村或稀疏人口區(qū)中的位置可以被包括在所選起始位置 的朋友列表內(nèi)之前,可能超過了最大朋友數(shù)量參數(shù)。
再次參照圖2,通過執(zhí)行地理平衡模塊300,系統(tǒng)試圖將來自包圍起 始位置的所有區(qū)域的位置包括在朋友列表內(nèi)。如圖5所示,地理平衡模 塊300在步驟305開始,選擇第一網(wǎng)格內(nèi)位置。接下來,在步驟310,系
統(tǒng)從在初始朋友選擇模塊200的步驟215編輯的列表中選擇第一鄰近位
置。在一個(gè)實(shí)施方式中,步驟310的選擇基于在初始朋友選擇模塊200 的步驟220對鄰近位置進(jìn)行排序的順序(例如,最近到最遠(yuǎn))。 一旦選擇 了一鄰近位置,系統(tǒng)就進(jìn)行到步驟315,在步驟315,確定所選的鄰近位 置地理上所處的象限。在一個(gè)實(shí)施方式中,系統(tǒng)使用在初始朋友選擇模 塊200的步驟218分配的象限標(biāo)識符來確定所選鄰近位置的象限位置。
接下來,在步驟320,系統(tǒng)確定包含所選鄰近位置的象限是否包含 了多于或等于最大朋友數(shù)量參數(shù)的四分之一。例如,如果最大朋友數(shù)量 參數(shù)被設(shè)置為400個(gè)朋友,則系統(tǒng)確定所選象限是否包含100 (400/4) 個(gè)或更多個(gè)朋友。在一個(gè)實(shí)施方式中,使用在初始朋友選擇模塊200中 用于對最大朋友數(shù)量參數(shù)保持跟蹤的計(jì)數(shù)器來確定各象限包含的朋友是 否多于或等于(最大朋友數(shù)量參數(shù))/4,或者恰恰是"最大/4"。如果所 選象限包含的朋友多于或等于最大/4,則系統(tǒng)進(jìn)行到步驟340,在步驟 340,從朋友列表排除該鄰近位置。
接下來,在步驟345,系統(tǒng)確定在初始朋友選擇模塊200的步驟215 和220編輯并排序的列表是否包含任何附加位置。如果是這樣,則系統(tǒng) 進(jìn)行到步驟350,在步驟350,選擇要處理的下一最近的鄰近位置,并重 復(fù)上述步驟。
在步驟320,如果系統(tǒng)確定包含所選鄰近位置的象限具有少于最大/4 個(gè)朋友,則系統(tǒng)進(jìn)行到步驟325,在步驟325,將該鄰近位置添加到起始 位置的朋友列表。在將鄰近位置添加到朋友列表之后,系統(tǒng)前進(jìn)到步驟 330,在步驟330,使與所添加鄰近位置地理上所處的象限相對應(yīng)的計(jì)數(shù) 器遞增。在包圍起始位置的區(qū)域被劃分成四個(gè)分離的象限的實(shí)施方式中, 系統(tǒng)將利用四個(gè)不同的計(jì)數(shù)器對各象限內(nèi)的朋友數(shù)量進(jìn)行跟蹤(或計(jì) 數(shù))。例如,在一個(gè)實(shí)施方式中,當(dāng)在步驟325將地理上位于象限二的鄰 近位置添加到朋友列表時(shí),與象限二相對應(yīng)的計(jì)數(shù)器遞增1。
在步驟330之后,系統(tǒng)進(jìn)行到步驟333,在步驟333,確定在初始朋 友選擇模塊200的步驟215和220編輯并排序的列表是否包含附加位置。 并且在步驟333,系統(tǒng)確定是否有任何象限仍需要地理平衡。在步驟333,
如果系統(tǒng)確定了 (1)沒有象限需要地理平衡或者(2)所選初始位置的
最大半徑內(nèi)的位置的列表已經(jīng)窮盡,則系統(tǒng)進(jìn)行到步驟355,在步驟355, 完成所選網(wǎng)格內(nèi)位置的朋友列表。否則,系統(tǒng)進(jìn)行到步驟335,在步驟 335,選擇要處理的、最大半徑內(nèi)的下一最近的鄰近位置。 一旦系統(tǒng)完成 了在步驟335選擇的網(wǎng)格內(nèi)位置的朋友列表,系統(tǒng)就前進(jìn)到步驟360,在 步驟360,確定是否剩有任何未經(jīng)處理的網(wǎng)格內(nèi)位置。如果是這樣,則系 統(tǒng)進(jìn)行到步驟370,在步驟370,選擇要處理的新的網(wǎng)格內(nèi)位置。 一旦己 處理所有網(wǎng)格內(nèi)位置,系統(tǒng)就前進(jìn)到完成處理的步驟375。
如上所述,圖18是在假設(shè)最大朋友參數(shù)被設(shè)置為2500的情況下地 理平衡模塊300執(zhí)行的步驟的圖示。垂直線與水平線交叉處的點(diǎn)1800表 示在步驟301或步驟370選擇的網(wǎng)格內(nèi)位置。在該示例中,兩條交叉線 生成四個(gè)尺寸相等的象限。數(shù)字1500、 700、 200和IOO表示地理上位于 各象限內(nèi)并且位于內(nèi)圈1802所包圍的區(qū)域內(nèi)的(朋友列表中的)位置的 數(shù)量。這樣,東北象限包含100個(gè)位置,東南象限包含700個(gè)位置,西 南象限包含1500個(gè)位置,西北象限包含200個(gè)位置。
如圖18所示,包含1500個(gè)朋友和700個(gè)朋友的象限主導(dǎo)朋友列表。 事實(shí)上,總共2500個(gè)朋友中的2200個(gè)位于僅僅這兩個(gè)象限中。在一個(gè) 實(shí)施方式中,地理平衡模塊300試圖通過擴(kuò)大圖18的西北象限和東北象 限內(nèi)的弧1804、 1806、并添加鄰近的位置直到各象限至少包括最大朋友 參數(shù)的四分之一為止或者直到最大半徑內(nèi)的鄰近位置的列表被用盡為止 (任何一個(gè)首先成立即可),來平衡這兩個(gè)象限。在該示例中,將添加位 于西北象限和東北象限內(nèi)的鄰近位置,直到各象限至少包括625個(gè)朋友 為止。假設(shè)在西北象限和東北象限中的每一個(gè)中發(fā)現(xiàn)625個(gè)位置之前沒 有超過最大區(qū)域限制(即,最大半徑),最終,地理平衡將把朋友列表從 2500個(gè)位置擴(kuò)大到3450個(gè)位置,西南象限中有1500個(gè)朋友,東南象限 中有700個(gè)位置,西北象限中有625個(gè)位置,東北象限中有625個(gè)位置。 圖19是起始位置的朋友列表的圖示,包括通過地理平衡添加的位 置。在該假想示例中,"+" 1900表示要針對其計(jì)算朋友列表的起始位置。 第一有界區(qū)域1902內(nèi)示出的位置表示利用最大朋友數(shù)量參數(shù)或最大半徑
確定的朋友的組。應(yīng)理解的是,最大朋友參數(shù)和最大半徑都是可配置的 參數(shù),并且在圖19的假想示例中,最大朋友參數(shù)被設(shè)置為2500,最大半
徑為250英里。第二有界區(qū)域1904內(nèi)示出的位置表示使用地理平衡模塊 獲得的朋友的組。在圖19中,第二有界區(qū)域1904表示添加到以"加號" (起始位置)為中心形成的坐標(biāo)系統(tǒng)的左上象限和右上象限的位置。沒 有在左下象限和右下象限添加位置,這是因?yàn)樵谂笥蚜斜?初始朋友選 擇)中表示出這些象限已經(jīng)滿了。如果沒有地理平衡,則起始位置1900 的超級矩陣有可能僅包括到與起始位置1900鄰近的高度密集區(qū)域的時(shí)間 和距離,而不包括第二有界區(qū)域1904內(nèi)的較稀疏的邊遠(yuǎn)位置。 超級矩陣生成模塊
再次參照圖2,在執(zhí)行地理平衡模塊300之后,超級矩陣計(jì)算機(jī)系 統(tǒng)10執(zhí)行超級矩陣生成模塊500。如圖6所示,超級矩陣生成模塊500 在步驟505開始,生成根據(jù)(1)所有的網(wǎng)格內(nèi)位置、(2)任何網(wǎng)格內(nèi)位 置的所有朋友、和(3)任何范圍內(nèi)倉庫而導(dǎo)出的可橫穿網(wǎng)絡(luò)。在各種實(shí) 施方式中,"可橫穿網(wǎng)絡(luò)"是一組弧和節(jié)點(diǎn)。更具體地說,在該實(shí)施方式 中,節(jié)點(diǎn)的組包括一組"可橫穿網(wǎng)絡(luò)位置",該"可橫穿網(wǎng)絡(luò)位置"包含 所有的網(wǎng)格內(nèi)位置、網(wǎng)格內(nèi)位置的所有朋友、和任何網(wǎng)格內(nèi)位置的最大 半徑內(nèi)的所有倉庫??蓹M穿網(wǎng)絡(luò)的弧包括連接以上列出的可橫穿網(wǎng)絡(luò)位置 的所有"必需"的街道段。另外,節(jié)點(diǎn)的組還包括連接可橫穿網(wǎng)絡(luò)位置的 交叉的街道段。弧的組包括地方公路、二級公路和州際/一級公路的組合。
在一個(gè)實(shí)施方式中,通過用于連接可橫穿網(wǎng)絡(luò)位置的地方公路的量 的減少來減少街道段(可以由一個(gè)或更多個(gè)弧來表示)的總數(shù)。通過主 要使用二級公路或州際/一級公路連接可橫穿位置來實(shí)現(xiàn)地方公路的減 少。在該實(shí)施方式中,地方公路僅用于將可橫穿網(wǎng)絡(luò)位置連接到二級公 路或州際公路的程度。通過減少可橫穿網(wǎng)絡(luò)包括的地方公路(和總街道 段)的數(shù)量,減少了弧和節(jié)點(diǎn)的總數(shù)。因?yàn)檫M(jìn)行最短路徑計(jì)算所需的處 理時(shí)間主要基于弧和節(jié)點(diǎn)的數(shù)量,所以減少街道段的數(shù)量最終減少計(jì)算 可橫穿網(wǎng)絡(luò)位置之間的最短路徑所需的時(shí)間??梢愿鶕?jù)可以從多種第三 方資源得到的現(xiàn)有地圖數(shù)據(jù)導(dǎo)出可橫穿網(wǎng)絡(luò)。
圖20以圖形方式例示了根據(jù)本發(fā)明一個(gè)實(shí)施方式的其中一網(wǎng)格包
含三個(gè)網(wǎng)格內(nèi)位置(位置A2002、位置B 2004和位置C 2006)的可橫穿 網(wǎng)絡(luò)。各網(wǎng)格內(nèi)位置是其他兩個(gè)網(wǎng)格內(nèi)位置以及位置D2008的朋友。在 該假想示例中,最大朋友數(shù)量被設(shè)置成三。因此,位置A2002的朋友列 表包括B 2004、 C 2006和D 2008;位置B的2004朋友列表包括A2002、 C 2006和D 2008;位置C的2006朋友列表包括位置A2002、 B 2004和 D2008。最后,倉庫1 2010在A2002、 B 2004和C2006的最大倉庫半徑 內(nèi)。在該示例的情況下,可橫穿網(wǎng)絡(luò)位置包括A2002、 B2004、和C 2006 (網(wǎng)格內(nèi)位置),以及D2008 (網(wǎng)格內(nèi)位置的朋友)和倉庫1 2010 (網(wǎng)格 內(nèi)位置的最大半徑內(nèi)的倉庫)。
使用這些可橫穿網(wǎng)絡(luò)位置,導(dǎo)出可橫穿網(wǎng)絡(luò)(使用本領(lǐng)域中所知的 地圖數(shù)據(jù)),該可橫穿網(wǎng)絡(luò)包括圍繞各可橫穿網(wǎng)絡(luò)位置的地方公路的連 接的弧/節(jié)點(diǎn),圍繞二級公路的弧/節(jié)點(diǎn),以及最后,與州際公路和一級公 路相對應(yīng)的弧/節(jié)點(diǎn)。
返回圖6, 一旦已生成所選網(wǎng)格的可橫穿網(wǎng)絡(luò),系統(tǒng)就前進(jìn)到步驟 510,在步驟510,選擇要處理的第一網(wǎng)格內(nèi)位置。接下來,在步驟515, 系統(tǒng)計(jì)算從所選網(wǎng)格內(nèi)位置到可橫穿網(wǎng)絡(luò)內(nèi)的每一個(gè)節(jié)點(diǎn)的最短時(shí)間和 距離。如上所述,在各種實(shí)施方式中,可橫穿網(wǎng)絡(luò)節(jié)點(diǎn)不僅包括網(wǎng)格內(nèi) 位置、朋友和倉庫,而且包括連接網(wǎng)格內(nèi)位置、朋友和倉庫的街道十字 路口 。用于計(jì)算最短時(shí)間和距離的算法在本領(lǐng)域內(nèi)是公知的。
一旦己計(jì)算出從所選網(wǎng)格內(nèi)位置到每一節(jié)點(diǎn)的時(shí)間和距離,系統(tǒng)就 進(jìn)行到步驟520,在步驟520,選擇性地挑選某些時(shí)間和距離。挑選出的 時(shí)間和距離包括從所選網(wǎng)格內(nèi)位置到該位置的朋友的時(shí)間/距離。接下來, 在歩驟525,將在步驟520挑選的時(shí)間和距離布局為超級矩陣的一行。圖 21中示出了超級矩陣的一個(gè)實(shí)施方式,下面將更詳細(xì)地描述。
一旦將從所選網(wǎng)格內(nèi)位置到該位置的朋友的時(shí)間和距離布局到超級 矩陣的一行中,系統(tǒng)就前進(jìn)到步驟530,在步驟530,確定是否剩有任何 網(wǎng)格內(nèi)位置未經(jīng)處理。如果是這樣,則系統(tǒng)選擇要處理的下一網(wǎng)格內(nèi)位 置(在步驟545)。如圖21所示,各網(wǎng)格內(nèi)位置對應(yīng)于超級矩陣的特定行。
連續(xù)地添加表示各網(wǎng)格內(nèi)位置的行,直到己處理所有網(wǎng)格內(nèi)位置為止。
一旦已處理所有網(wǎng)格內(nèi)位置,系統(tǒng)就前進(jìn)到步驟570,在步驟570,結(jié)束
該處理。
圖7例示了超級矩陣生成模塊500進(jìn)行的附加步驟。除了計(jì)算網(wǎng)格 內(nèi)位置與包括在朋友列表內(nèi)的位置之間的時(shí)間和距離數(shù)據(jù)之外,在各種 實(shí)施方式中,超級矩陣生成模塊500還被設(shè)計(jì)成處理從位于網(wǎng)格的可橫 穿網(wǎng)絡(luò)內(nèi)的每一個(gè)倉庫到所有其他網(wǎng)格內(nèi)、范圍內(nèi)位置和范圍內(nèi)倉庫的 最短路徑時(shí)間和距離。與圖6中描述的處理非常相似的是,系統(tǒng)在選擇 第一范圍內(nèi)倉庫的步驟550開始。接下來,在步驟555,系統(tǒng)計(jì)算從所選 倉庫到可橫穿網(wǎng)絡(luò)內(nèi)的每一個(gè)節(jié)點(diǎn)的最短路徑計(jì)算(使用公知的最短路 徑算法)。在步驟555之后,系統(tǒng)進(jìn)行到步驟560,在步驟560選擇的與 從所選倉庫到所有網(wǎng)格內(nèi)、范圍內(nèi)位置和范圍內(nèi)倉庫的時(shí)間和距離相對 應(yīng)的數(shù)據(jù)在步驟565布局在超級矩陣中。如圖21所示,各所選倉庫由超 級矩陣內(nèi)的一行表示。在步驟575,系統(tǒng)確定是否剩有任何未經(jīng)處理的倉 庫(在可橫穿網(wǎng)絡(luò)內(nèi))。如果是這樣,則系統(tǒng)選擇下一倉庫(在步驟580) 并重復(fù)步驟555、 560和565。 一旦已處理網(wǎng)格的可橫穿網(wǎng)絡(luò)內(nèi)的所有倉 庫,系統(tǒng)就前進(jìn)到完成該處理的步驟585。
如上所述,圖21例示了樣本超級矩陣。如圖21所示的超級矩陣是 根據(jù)九個(gè)位置和一個(gè)位置/倉庫的組而導(dǎo)出的。在該假設(shè)中,最大朋友數(shù) 量參數(shù)被設(shè)置為四。然而,作為地理平衡的結(jié)果,許多位置具有多于四 個(gè)朋友(例如,位置3、 5、 6、 7、 8和9)。如圖21所例示的,行#1包 含從位置井1到四個(gè)不同的位置的時(shí)間和距離。如圖21所示,各列表示 不同的位置。在該實(shí)施方式中,使用緯度(以百萬分之一度)和經(jīng)度(以 百萬分之一度)坐標(biāo)來標(biāo)識位置。跟在緯度和經(jīng)度坐標(biāo)之后的是時(shí)間和 距離數(shù)據(jù)。在該實(shí)施方式中,以秒示出時(shí)間并以100英里示出距離。因 此,現(xiàn)參照圖21的行1,從位置1到地理上位于30180600、 -81551600 的位置的時(shí)間/距離是303秒(時(shí)間)和300英里(距離)。如行4中所例 示的,位置4也是倉庫,因此具有對于各范圍內(nèi)位置的時(shí)間/距離數(shù)據(jù)。 在該假設(shè)中,因?yàn)槿烤艂€(gè)位置都在該倉庫的范圍內(nèi),所以行4具有到
全部九個(gè)位置的時(shí)間/距離數(shù)據(jù)。
如圖21中所例示的,在各種實(shí)施方式中,超級矩陣不包含從各位置 到每一個(gè)其他位置的時(shí)間和距離。作為替代的是,在這種實(shí)施方式中, 超級矩陣僅包含從各網(wǎng)格內(nèi)位置到該位置的朋友(包括所有的范圍內(nèi)倉 庫)的時(shí)間和距離數(shù)據(jù)。
下降處理模塊
在一些實(shí)例中,在擇路和調(diào)度算法800內(nèi)進(jìn)行的算法可能需要不包 括在彼此的朋友列表內(nèi)的兩個(gè)位置之間的時(shí)間和距離數(shù)據(jù)。結(jié)果,超級 矩陣將不包含時(shí)間和距離數(shù)據(jù)。當(dāng)發(fā)生這種情況時(shí),系統(tǒng)可以通過執(zhí)行
下降處理模塊700來計(jì)算時(shí)間和距離數(shù)據(jù)。
圖8 (A)和圖8 (B)描繪了根據(jù)本發(fā)明不同實(shí)施方式的兩個(gè)不同 的下降處理模塊700?,F(xiàn)參照圖8 (A),下降處理模塊700在步驟705開 始,在步驟705,系統(tǒng)從擇路/調(diào)度模塊800接收請求位置A與B之間的 時(shí)間和/或距離數(shù)據(jù)的調(diào)用。在步驟710,系統(tǒng)確定超級矩陣是否包含從A 到B的時(shí)間/距離數(shù)據(jù)。如果是這樣,則系統(tǒng)前進(jìn)到步驟715,在步驟715, 向擇路/調(diào)度模塊800提供包含在超級矩陣中的數(shù)據(jù)。然而,如果超級矩 陣不包含從A到B的時(shí)間/距離數(shù)據(jù),則系統(tǒng)進(jìn)行到步驟720,在步驟720, 使用XY距離計(jì)算(例如,使用畢達(dá)哥拉斯定理)來計(jì)算從A到B的時(shí) 間和距離。 一旦在步驟720確定了時(shí)間/距離數(shù)據(jù),系統(tǒng)就將該數(shù)據(jù)發(fā)送 給擇路/調(diào)度模塊800,并且進(jìn)行到結(jié)束該處理的步驟735。
在圖8 (B)中所描繪的實(shí)施方式中,下降處理模塊700通過進(jìn)行圖 8 (A)中所示的相同的基本步驟而開始。例如,在步驟705,系統(tǒng)從擇 路/調(diào)度模塊800接收請求位置A與B之間的時(shí)間和/或距離數(shù)據(jù)的調(diào)用。 在步驟710,系統(tǒng)確定超級矩陣是否包含從A到B的時(shí)間/距離數(shù)據(jù)。如 果是這樣,則系統(tǒng)前進(jìn)到步驟715,在步驟715,向擇路/調(diào)度模塊800 提供包含在超級矩陣中的數(shù)據(jù)。然而,如果超級矩陣不包含從A到B的 時(shí)間/距離數(shù)據(jù),則系統(tǒng)進(jìn)行到步驟725,在步驟725,生成連接位置A 和B的"小型可橫穿網(wǎng)絡(luò)"。在生成小型可橫穿網(wǎng)絡(luò)之后,系統(tǒng)進(jìn)行A 與B之間的最短路徑時(shí)間和距離計(jì)算。在步驟740,存儲時(shí)間和距離數(shù)
據(jù)(例如將其高速緩存)以供將來査找。
圖22和圖23例示了使用圖8 (B)的下降處理模塊700來計(jì)算從一 個(gè)位置到另一位置的時(shí)間和距離的場景。該場景假設(shè)在四網(wǎng)格分割模塊 100中,位置A、 B和C位于圖22中例示的一個(gè)網(wǎng)格中。另外,最大朋 友數(shù)量參數(shù)被設(shè)置為二。在執(zhí)行初始朋友選擇模塊200和地理平衡模塊 300之后,位置A、 B和C僅包括彼此作為朋友。例如,位置A的朋友 是B和C,位置B的朋友是A和C,位置C的朋友是A和B。該假設(shè)不 包括倉庫。在生成針對該特定網(wǎng)格的可橫穿網(wǎng)絡(luò)時(shí),該可橫穿網(wǎng)絡(luò)僅包 括連接位置A、 B和C的街道網(wǎng)絡(luò)。因此,超級矩陣將不包括從A、 B 或C到位置Z的時(shí)間和距離數(shù)據(jù)。
假設(shè)稍后在己生成超級矩陣之后,用戶生成由位置A、 B和C組成 的路線。對于該路線,無論順序如何,超級矩陣都可以提供街道網(wǎng)絡(luò)時(shí) 間和距離,這是因?yàn)槌壘仃嚢我鈨蓚€(gè)位置之間的時(shí)間/距離。現(xiàn)假 設(shè)路線順序是A-B-C,并且用戶然后確定其想要把車站Z至于車站C之 后,使路線成為A-B-C-Z。然而,現(xiàn)在的情況是超級矩陣不提供C與Z 之間的時(shí)間和距離。當(dāng)發(fā)生這種情況時(shí),下降處理模塊700通過首先生 成圖23中所例示的連接C和Z的"小型可橫穿網(wǎng)絡(luò)"來提供實(shí)時(shí)時(shí)間/ 距離計(jì)算。根據(jù)該"小型可橫穿網(wǎng)絡(luò)",系統(tǒng)計(jì)算C與Z之間的最短路徑 時(shí)間和距離。(然后對該時(shí)間和距離進(jìn)行高速緩存,使得在系統(tǒng)在同一擇 路會話過程中再次需要C與Z之間的時(shí)間/距離時(shí)不必重新生成"小型可 橫穿網(wǎng)絡(luò)"和重新計(jì)算時(shí)間/距離)。
結(jié)論
本發(fā)明所屬領(lǐng)域的技術(shù)人員受益于以上描述和相關(guān)聯(lián)的附圖中所提 出的教導(dǎo),將容易想到這里闡述的本發(fā)明的許多變型例和其他實(shí)施方式 是本領(lǐng)域技術(shù)人員。因此,應(yīng)理解,本發(fā)明不限于所公開的特定實(shí)施方 式,而旨在將變型例和其他實(shí)施方式包括在所附權(quán)利要求書的范圍內(nèi)。 盡管這里使用了特定術(shù)語,但是它們僅用于一般性和描述性的含義,而 并不用于限制的目的。
權(quán)利要求
1、一種用于控制至少具有存儲器、處理器和顯示裝置的計(jì)算裝置的計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品用于計(jì)算并存儲兩個(gè)或更多個(gè)遞送位置之間的最短路徑信息,并包括其中存儲有計(jì)算機(jī)可讀程序代碼部分的計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)可讀程序代碼部分包括第一可執(zhí)行部分,該第一可執(zhí)行部分包括可以在所述處理器上執(zhí)行的網(wǎng)格分割模塊,其中,所述網(wǎng)格分割模塊將總遞送區(qū)劃分成限定數(shù)量的網(wǎng)格的倍數(shù),并且所述兩個(gè)或更多個(gè)遞送位置位于所述限定數(shù)量的網(wǎng)格中的至少一個(gè)內(nèi);第二可執(zhí)行部分,該第二可執(zhí)行部分包括可以在所述處理器上執(zhí)行的初始朋友選擇模塊,其中,選擇所述限定數(shù)量的網(wǎng)格中的一個(gè),并且針對所述選擇的網(wǎng)格內(nèi)的各特定遞送位置生成朋友列表,所述朋友列表由最有可能出現(xiàn)在與所述特定遞送位置相同的路線上的一組遞送位置組成;以及第三可執(zhí)行部分,該第三可執(zhí)行部分包括可以在所述處理器上執(zhí)行的超級矩陣生成模塊,其中,所述超級矩陣生成模塊針對選擇的網(wǎng)格生成由節(jié)點(diǎn)和弧組成的可橫穿網(wǎng)絡(luò),計(jì)算從所述選擇的網(wǎng)格內(nèi)的各遞送位置到所述可橫穿網(wǎng)絡(luò)內(nèi)的每一個(gè)節(jié)點(diǎn)的時(shí)間/距離數(shù)據(jù),并布局如下的超級矩陣該超級矩陣包含從選擇的網(wǎng)格內(nèi)的各特定遞送位置到該位置的朋友列表中的各遞送位置以及任何范圍內(nèi)倉庫的時(shí)間/距離數(shù)據(jù)。
2、 根據(jù)權(quán)利要求l所述的計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品還包括第四可執(zhí)行部分,該第四可執(zhí)行部分包括可以在所述處理器上執(zhí)行 的地理平衡模塊,其中,所述地理平衡模塊如下地平衡各遞送位置的所 述朋友列表選擇各遞送位置,將所選擇遞送位置周圍的遞送區(qū)按照使 得所選擇遞送位置形成四個(gè)象限的原點(diǎn)的方式劃分成四個(gè)象限,并擴(kuò)大 所述四個(gè)象限中的每一個(gè)中的與原點(diǎn)等距的弧以在所述原點(diǎn)周圍形成大 致圓形的有界區(qū)域直到所述選擇的遞送位置的朋友列表中的限定數(shù)量的遞送位置位于所述大致圓形的有界區(qū)域內(nèi)為止,確定位于各象限中的所 述選擇的遞送位置的朋友列表中的遞送位置的數(shù)量,如果在任一象限中 所述選擇的遞送位置的朋友列表中的遞送位置的所述數(shù)量少于((所述選 擇的遞送位置的朋友列表中的遞送位置的限定數(shù)量)/4),則將該象限標(biāo) 記為不足的象限,并擴(kuò)大任一不足的象限中的弧,直到所選擇遞送位置 的朋友列表中的至少((所述選擇的遞送位置的朋友列表中的遞送位置的限定數(shù)量)/4)個(gè)遞送位置包含在以所述弧和形成該象限的軸為界的區(qū)域內(nèi)為止、或者直到達(dá)到與原點(diǎn)的最大距離為止。
3、 根據(jù)權(quán)利要求2所述的計(jì)算機(jī)程序產(chǎn)品,其中,所述((所述選 擇的遞送位置的朋友列表中的遞送位置的限定數(shù)量)/4)為625,所述與 原點(diǎn)的最大距離為250英里。
4、 一種用于將物品遞送到兩個(gè)或更多個(gè)遞送位置的系統(tǒng),該系統(tǒng)包括遞送車輛,該遞送車輛能夠運(yùn)輸所述兩個(gè)或更多個(gè)遞送位置中的每 一個(gè)處的用于遞送的一個(gè)或更多個(gè)物品,其中,在倉庫處獲得所述用于 遞送的一個(gè)或更多個(gè)物品;計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品用于控制至少具有存儲器、處 理器和顯示裝置的計(jì)算裝置,該計(jì)算機(jī)程序產(chǎn)品用于計(jì)算并存儲所述兩 個(gè)或更多個(gè)遞送位置之間的最短路徑信息,并包括其中存儲有計(jì)算機(jī)可 讀程序代碼部分的計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)可讀程序代碼部分包括第一可執(zhí)行部分,該第一可執(zhí)行部分包括可以在所述處理器上 執(zhí)行的網(wǎng)格分割模塊,其中,所述網(wǎng)格分割模塊將總遞送區(qū)劃分成限定 數(shù)量的網(wǎng)格的倍數(shù),并且所述兩個(gè)或更多個(gè)遞送位置位于所述限定數(shù)量 的網(wǎng)格中的至少一個(gè)內(nèi);第二可執(zhí)行部分,該第二可執(zhí)行部分包括可以在所述處理器上 執(zhí)行的初始朋友選擇模塊,其中,選擇所述限定數(shù)量的網(wǎng)格中的一個(gè), 并且針對所述選擇的網(wǎng)格內(nèi)的各特定遞送位置生成朋友列表,所述朋友 列表由最有可能出現(xiàn)在與所述特定遞送位置相同的路線上的一組遞送位 置組成;以及第三可執(zhí)行部分,該第三可執(zhí)行部分包括可以在所述處理器上 執(zhí)行的超級矩陣生成模塊,其中,所述超級矩陣生成模塊針對選擇的網(wǎng) 格生成由節(jié)點(diǎn)和弧組成的可橫穿網(wǎng)絡(luò),計(jì)算從所述選擇的網(wǎng)格內(nèi)的各遞 送位置到所述可橫穿網(wǎng)絡(luò)內(nèi)的每一個(gè)節(jié)點(diǎn)的時(shí)間/距離數(shù)據(jù),并布局如下 的超級矩陣該超級矩陣包含從選擇的網(wǎng)格內(nèi)的各特定遞送位置到該位 置的朋友列表中的各遞送位置以及任何范圍內(nèi)倉庫的時(shí)間/距離數(shù)據(jù),其中,所述遞送車輛利用所述最短路徑信息來確定用于獲得所述兩 個(gè)或更多個(gè)遞送位置中的每一個(gè)處的所述用于遞送的一個(gè)或更多個(gè)物品 并且將所述兩個(gè)或更多個(gè)遞送位置中的每一個(gè)處的所述用于遞送的一個(gè) 或更多個(gè)物品運(yùn)輸?shù)礁鬟f送位置的路線。
5、 根據(jù)權(quán)利要求4所述的系統(tǒng),其中,所述計(jì)算機(jī)程序產(chǎn)品還包括 第四可執(zhí)行部分,該第四可執(zhí)行部分包括可以在所述處理器上執(zhí)行的地理平衡模塊,其中,所述地理平衡模塊如下地平衡各遞送位置的所 述朋友列表選擇各遞送位置,將所選擇遞送位置周圍的遞送區(qū)按照使 得所述選擇遞送位置形成四個(gè)象限的原點(diǎn)的方式劃分成四個(gè)象限,并擴(kuò) 大所述四個(gè)象限中的每一個(gè)中的與原點(diǎn)等距的弧以在所述原點(diǎn)周圍形成 大致圓形的有界區(qū)域直到所述選擇的遞送位置的朋友列表中的限定數(shù)量 的遞送位置位于所述大致圓形的有界區(qū)域內(nèi)為止,確定位于各象限中的 所述選擇的遞送位置的朋友列表中的遞送位置的數(shù)量,如果在任一象限 中所述選擇的遞送位置的朋友列表中的遞送位置的所述數(shù)量少于((所述 選擇的遞送位置的朋友列表中的遞送位置的限定數(shù)量)/4),則將該象限 標(biāo)記為不足的象限,并擴(kuò)大任一不足的象限中的弧,直到所選擇遞送位 置的朋友列表中的至少((所述選擇的遞送位置的朋友列表中的遞送位置 的限定數(shù)量)/4)個(gè)遞送位置包含在以所述弧和形成該象限的軸為界的區(qū) 域內(nèi)為止、或者直到達(dá)到與原點(diǎn)的最大距離為止。
6、 根據(jù)權(quán)利要求5所述的系統(tǒng),其中,所述((所述選擇的遞送位 置的朋友列表中的遞送位置的限定數(shù)量)/4)為625,所述與原點(diǎn)的最大 距離為250英里。
7、 一種用于計(jì)算并存儲兩個(gè)或更多個(gè)潛在遞送位置之間的最短路徑信息的計(jì)算機(jī)系統(tǒng),其中,所述計(jì)算機(jī)系統(tǒng)包括 處理器,該處理器被構(gòu)造成執(zhí)行以下步驟(1) 將遞送區(qū)分割成一個(gè)或更多個(gè)分離的地理區(qū)域的倍數(shù),其中, 所述地理區(qū)域中的每一個(gè)包括第一組一個(gè)或更多個(gè)潛在遞送位置;(2) 選擇第一地理區(qū)域;(3) 針對所述第一組一個(gè)或更多個(gè)潛在遞送位置中的每一個(gè)生成唯 一的第二組潛在遞送位置;(4) 生成可橫穿網(wǎng)絡(luò),其中,所述可橫穿網(wǎng)絡(luò)包括一組節(jié)點(diǎn)和弧, 并且還包括一組兩個(gè)或更多個(gè)節(jié)點(diǎn),所述一組兩個(gè)或更多個(gè)節(jié)點(diǎn)至少包 括地理上位于所述第一地理區(qū)域內(nèi)的潛在遞送位置以及在步驟(3)生成 的所述唯一的第二組潛在遞送位置中的任一個(gè)內(nèi)包括的所有潛在遞送位 置.,(5) 計(jì)算從地理上位于所述第一地理區(qū)域內(nèi)的潛在遞送位置中的每 一個(gè)到所述可橫穿網(wǎng)絡(luò)內(nèi)包含的每一個(gè)節(jié)點(diǎn)的最短路徑信息;(6) 選擇特定最短路徑信息并存儲該特定最短路徑信息以供擇路和 調(diào)度系統(tǒng)將來查找。
8、 根據(jù)權(quán)利要求7所述的系統(tǒng),其中,所述可橫穿網(wǎng)絡(luò)包括至少一 個(gè)與倉庫相對應(yīng)的節(jié)點(diǎn)。
9、 根據(jù)權(quán)利要求7所述的系統(tǒng),其中,針對地理上位于所述第一地 理區(qū)域內(nèi)的各潛在遞送位置生成唯一的第二組潛在遞送位置的步驟還包 括以下步驟如下地平衡所述第一組一個(gè)或更多個(gè)遞送位置中的各潛在遞送位置 的唯一的第二組潛在遞送位置選擇所述第一組一個(gè)或更多個(gè)遞送位置 中的各潛在遞送位置,將所選擇遞送位置周圍的遞送區(qū)按使得所選擇遞 送位置形成四個(gè)象限的原點(diǎn)的方式劃分成四個(gè)象限,并擴(kuò)大所述四個(gè)象 限中的每一個(gè)中的與所述原點(diǎn)等距的弧以在所述原點(diǎn)周圍形成大致圓形 的有界區(qū)域直到所述選擇的遞送位置的限定數(shù)量的第二組潛在遞送位置 位于所述大致圓形的有界區(qū)域內(nèi)為止,確定位于各象限中的所述選擇的 遞送位置的第二組潛在遞送位置中的遞送位置的數(shù)量,如果在任一象限 中所述選擇的遞送位置的第二組潛在遞送位置中的遞送位置的所述數(shù)量 少于((所述選擇的遞送位置的第二組潛在遞送位置中的遞送位置的限定 數(shù)量)/4),則將該象限標(biāo)記為不足的象限,并擴(kuò)大任一不足的象限中的 弧,直到所選擇遞送位置的第二組潛在遞送位置中的至少((所述選擇的遞送位置的第二組潛在遞送位置中的遞送位置的限定數(shù)量)/4)個(gè)遞送位置包含在以所述弧和形成該象限的軸為界的區(qū)域內(nèi)為止、或者直到達(dá)到 與原點(diǎn)的最大距離為止。
10、 根據(jù)權(quán)利要求9所述的系統(tǒng),其中,((所述選擇的遞送位置的 朋友列表中的遞送位置的限定數(shù)量)/4)為625,所述與原點(diǎn)的最大距離 為250英里。
11、 一種用于計(jì)算并存儲兩個(gè)或更多個(gè)潛在遞送位置之間的最短路 徑信息的計(jì)算機(jī)系統(tǒng),其中,所述計(jì)算機(jī)系統(tǒng)包括處理器,該處理器被構(gòu)造成執(zhí)行以下步驟(1) 針對地理上位于一地理區(qū)域內(nèi)的各潛在遞送位置生成唯一的一組潛在遞送位置;(2) 生成唯一地與所述地理區(qū)域相關(guān)聯(lián)的可橫穿網(wǎng)絡(luò),其中,所述可橫穿網(wǎng)絡(luò)包括一組節(jié)點(diǎn)和弧,并且還包括一組兩個(gè)或更多個(gè)節(jié)點(diǎn),所 述一組兩個(gè)或更多個(gè)節(jié)點(diǎn)至少包括地理上位于所述地理區(qū)域內(nèi)的潛在遞 送位置、以及在步驟(1)生成的所述唯一一組潛在遞送位置內(nèi)包括的所有潛在遞送位置;(3) 計(jì)算從地理上位于所述地理區(qū)域內(nèi)的潛在遞送位置中的每一個(gè) 到所述可橫穿網(wǎng)絡(luò)內(nèi)包含的每一個(gè)節(jié)點(diǎn)的最短路徑信息;(4) 選擇特定最短路徑信息并存儲所選擇的特定最短路徑信息以供 擇路和調(diào)度系統(tǒng)將來查找。
12、 根據(jù)權(quán)利要求ll所述的系統(tǒng),其中,所述可橫穿網(wǎng)絡(luò)包括至少 一個(gè)與倉庫相對應(yīng)的節(jié)點(diǎn)。
13、 一種用于計(jì)算并存儲兩個(gè)或更多個(gè)潛在遞送位置之間的最短路 徑信息的方法,該方法包括以下步驟 (A) 將遞送區(qū)分割成一個(gè)或更多個(gè)分離的地理區(qū)域的倍數(shù),其中, 所述地理區(qū)域中的每一個(gè)包括第一組一個(gè)或更多個(gè)潛在遞送位置;(B) 選擇第一地理區(qū)域;(C) 針對地理上位于所選擇的地理區(qū)域內(nèi)的各潛在遞送位置生成對 應(yīng)的唯一的第二組潛在遞送位置;(D) 生成可橫穿網(wǎng)絡(luò),其中,所述可橫穿網(wǎng)絡(luò)包括一組節(jié)點(diǎn)和弧, 并且還包括一組兩個(gè)或更多個(gè)節(jié)點(diǎn),所述一組兩個(gè)或更多個(gè)節(jié)點(diǎn)至少包 括地理上位于所選擇的地理區(qū)域內(nèi)的潛在遞送位置、以及與地理上位于 所選擇的地理區(qū)域內(nèi)的潛在遞送位置相對應(yīng)的唯一的第二組潛在遞送位 置內(nèi)包括的所有潛在遞送位置;(E) 計(jì)算從地理上位于所選擇的地理區(qū)域內(nèi)的遞送位置到所述可橫 穿網(wǎng)絡(luò)內(nèi)包含的每一個(gè)節(jié)點(diǎn)的最短路徑信息;(F) 選擇特定最短路徑信息并存儲所選擇的特定最短路徑信息以供 擇路和調(diào)度系統(tǒng)將來査找;(G) 針對地理上位于所選擇的地理區(qū)域內(nèi)的各潛在遞送位置重復(fù)步 驟(D)至步驟(F);以及(H) 針對在步驟(A)生成的每一個(gè)地理區(qū)域重復(fù)步驟(B)至步 驟(G)。
14、 根據(jù)權(quán)利要求13所述的方法,其中,生成可橫穿網(wǎng)絡(luò)的步驟包 括以下步驟生成包括至少一個(gè)與倉庫相對應(yīng)的節(jié)點(diǎn)的可橫穿網(wǎng)絡(luò)。
15、 根據(jù)權(quán)利要求13所述的方法,其中,針對地理上位于所述第一 地理區(qū)域內(nèi)的各潛在遞送位置生成對應(yīng)的唯一的第二組潛在遞送位置的步驟還包括以下步驟如下地平衡地理上位于所述第一地理區(qū)域內(nèi)的各潛在遞送位置的唯一的第二組潛在遞送位置選擇所述第一組一個(gè)或更多個(gè)遞送位置中的各潛在遞送位置,將所選擇的遞送位置周圍的遞送區(qū)按使得所選擇的遞 送位置形成四個(gè)象限的原點(diǎn)的方式劃分成四個(gè)象限,并擴(kuò)大所述四個(gè)象 限中的每一個(gè)中的與所述原點(diǎn)等距的弧以在所述原點(diǎn)周圍形成大致圓形 的有界區(qū)域直到所述選擇的遞送位置的限定數(shù)量的第二組潛在遞送位置 位于所述大致圓形的有界區(qū)域內(nèi)為止,確定位于各象限中的所述選擇的 遞送位置的第二組潛在遞送位置中的遞送位置的數(shù)量,如果在任一象限 中所述選擇的遞送位置的第二組潛在遞送位置中的遞送位置的所述數(shù)量 少于((所述選擇的遞送位置的第二組潛在遞送位置中的遞送位置的限定 數(shù)量)/4),則將該象限標(biāo)記為不足的象限,并擴(kuò)大任一不足的象限中的 弧,直到選擇的遞送位置的第二組潛在遞送位置中的至少((所述選擇的 遞送位置的第二組潛在遞送位置中的遞送位置的限定數(shù)量)/4)個(gè)遞送位 置包含在以所述弧和形成該象限的軸為界的區(qū)域內(nèi)為止、或者直到達(dá)到 與原點(diǎn)的最大距離為止。
16、根據(jù)權(quán)利要求15所述的方法,其中,所述((所述選擇的遞送 位置的朋友列表中的遞送位置的限定數(shù)量)/4)為625,所述與原點(diǎn)的最 大距離為250英里。
全文摘要
本發(fā)明涉及用于擇路和調(diào)度的系統(tǒng)和方法。本發(fā)明提供了一種用于以經(jīng)濟(jì)且有效的方式對時(shí)間和距離信息進(jìn)行計(jì)算和存儲的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。在開發(fā)用于按及時(shí)且有效的方式從多個(gè)位置遞送和查找物品的可橫穿網(wǎng)絡(luò)時(shí)可以使用該時(shí)間和距離信息。
文檔編號G06Q10/00GK101184974SQ200680015869
公開日2008年5月21日 申請日期2006年5月9日 優(yōu)先權(quán)日2005年5月9日
發(fā)明者克利夫頓·B·克萊斯?fàn)? 卡爾·赫斯特, 斯蒂芬·P·西蒙 申請人:美國聯(lián)合包裝服務(wù)有限公司