專利名稱:用于生成路線的方法與系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本公開內(nèi)容總體上涉及生成路線,尤其涉及用于根據(jù)偏好生成路線的方法與系統(tǒng)。更特別地,本公開內(nèi)容涉及用于生成路線的方法與系統(tǒng),其中所述路線在起始位置開始和結(jié)束,而且其中每條路線的至少一部分不與該路線的任何其它部分重疊。
背景技術(shù):
如今,全球定位系統(tǒng)和地圖繪制軟件常常用于幫助旅行者遵循到目的地的路線。例如,移動設(shè)備的用戶可以把期望的目的地輸入到移動設(shè)備中,以便找出如何到達該目的地。然后,移動設(shè)備基于期望的目的地和用戶的當(dāng)前位置為用戶生成要遵循的路線。旅行者可能期望最終讓其返回到起始位置的路線。例如,旅行者可能決定參觀一個紀(jì)念碑或公園,然后在一定時間之后返回。旅行者可以決定沿著相同的路線或者不同的路線返回。例如,在不沿著用于到達旅行者當(dāng)前位置的路線上可能還有一個或多個別的該旅行者想去參觀的感興趣的地點或者景點。
發(fā)明內(nèi)容
不同的例示性實施例提供了用于生成路線的方法、數(shù)據(jù)處理系統(tǒng)和計算機程序產(chǎn)品。接收起始位置。接收用于生成路線集合的偏好集合?;谒銎眉仙陕肪€集合,其中該路線集合中的每條路線都在所述起始位置開始和結(jié)束,而且其中該路線集合中的一條指定路線的至少一部分不與該路線集合中該指定路線的任何其它部分重疊。
圖1例示了其中可以實現(xiàn)例示性實施例的路線生成環(huán)境;
圖2例示了 其中可以實現(xiàn)例示性實施例的發(fā)生器;圖3例示了根據(jù)一種例示性實施例的顯示;圖4例示了根據(jù)一種例示性實施例的用于生成路線的處理的流程;圖5例示了根據(jù)一種例示性實施例的用于生成路線的處理的流程;及圖6例示了根據(jù)一種例示性實施例的數(shù)據(jù)處理系統(tǒng)。
具體實施例所屬技術(shù)領(lǐng)域的技術(shù)人員知道,本發(fā)明可以實現(xiàn)為系統(tǒng)、方法或計算機程序產(chǎn)品。因此,本公開可以具體實現(xiàn)為以下形式,即:可以是完全的硬件、也可以是完全的軟件(包括固件、駐留軟件、微代碼等),還可以是硬件和軟件結(jié)合的形式,本文一般稱為“電路”、“模塊”或“系統(tǒng)”。此外,在一些實施例中,本發(fā)明還可以實現(xiàn)為在一個或多個計算機可讀介質(zhì)中的計算機程序產(chǎn)品的形式,該計算機可讀介質(zhì)中包含計算機可讀的程序代碼??梢圆捎靡粋€或多個計算機可讀的介質(zhì)的任意組合。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)。計算機可讀存儲介質(zhì)例如可以是一但不限于一電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計算機磁盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。計算機可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括——但不限于——電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)還可以是計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。計算機可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、電線、光纜、RF等等,或者上述的任意合適的組合。可以以一種或多種程序設(shè)計語言或其組合來編寫用于執(zhí)行本發(fā)明操作的計算機程序代碼,所述程序設(shè)計語言包括面向?qū)ο蟮某绦蛟O(shè)計語言一諸如Java、Smalltalk、C++,還包括常規(guī)的過程式程序設(shè)計語言一諸如”C”語言或類似的程序設(shè)計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機或服務(wù)器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。以下參考根據(jù)說明性實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖說明和/或框圖描述說明性實施例的各方面。應(yīng)當(dāng)理解,所述流程圖說明和/或框圖的每一塊及所述流程圖說明和/或框圖中塊的組合可以由計算機程序指令來實現(xiàn)。這些計算機程序指令可以提供給通用計算機、專用計算機或者其它可編程數(shù)據(jù)處理裝置的處理器,來產(chǎn)生一種機器,使得當(dāng)所述指令經(jīng)計算機或者其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生用于實現(xiàn)在所述流程圖和/或框圖塊中所指定的功能/動作的裝置。也可以把這些計算機程序指令存儲在能指示計算機、其它可編程數(shù)據(jù)處理裝置或其他設(shè)備以特定方式工作的計算機可讀介質(zhì)中,這樣,存儲在計算機可讀介質(zhì)中的指令就產(chǎn)生出一個包括實現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的指令的制造品。所述計算機程序指令還可以加載到計算機、其它可編程數(shù)據(jù)處理裝置或者其它設(shè)備上,使得一系列操作步驟在計算機、其它可編程裝置或者其它設(shè)備上執(zhí)行,產(chǎn)生一種計算機實現(xiàn)的過程,使得在所述計算機或者其它可編程裝置上執(zhí)行的指令提供用于實現(xiàn)在所述流程圖和/或框圖塊中所指定的功能/動作的過程。不同的例示性實施例都認識到并考慮到地圖繪制軟件和設(shè)備常常用于幫助旅行者遵循到目的地的路線。不同的例示性實施例都認識到并考慮到旅行者可能期望在到一個或多個地點旅行之后返回到起始位置。不同的例示性實施例都認識到并考慮到生成具有不同返回路徑的到目的地的路線可能是期望的。因此,不同的例示性實施例提供了用于生成路線的方法、數(shù)據(jù)處理系統(tǒng)和計算機程序產(chǎn)品。接收起始位置。接收用于生成路線集合的偏好集合?;谒銎眉仙陕肪€集合,其中該路線集合中的每條路線都在所述起始位置開始和結(jié)束,而且其中該路線集合中的一條指定路線的至少一部分不與該路線集合中該指定路線的任何其它部分重疊。如在此所使用的,“集合”指“一個或多個”。例如,路線集合是一條或多條路線,而偏好集合是一個或多個偏好。參考圖1,繪出了根據(jù)一種例示性實施例的路線生成環(huán)境100。如所繪出的,路線生成環(huán)境100是其中可以實現(xiàn)所述例示性實施例的部件的一個例子。在所繪出的例子中,計算機系統(tǒng)102包括發(fā)生器104。發(fā)生器104基于偏好集合108生成路線集合106。路線集合106中的每條路線都在起始位置110開始和結(jié)束。該路線集合106中一條指定路線的至少一部分不與該指定路線的任何其它部分重疊。如果一條路線的一個特定部分不經(jīng)過與該路線的任何其它部分相同的位置的話,那么這條路線的該特定部分就不與該路線的任何其它部分重疊。例如,在一個湖的岸邊開始并沿著該湖的岸前進直到返回起點的路線就沒有與任何其它部分重疊的部分。在第一座房子處開始、向北前進5個街區(qū)到達第二座房子、然后沿著與用于到達第一座房子的相同路徑向南返回5個街區(qū)的路線在該路線的每一個部分都重疊,因為相同的路徑用于該路線的兩個方向。但是,如果一條路線在第一座房子處開始、向北前進5個街區(qū)、向南返回4個街區(qū)、但是隨后向東前進一個街區(qū)、向南前進一個街區(qū)、最后向西前進一個街區(qū)到達第一座房子,那么該路線將具有至少一個不與任何其它部分重疊的部分。在這個例示性例子中,發(fā)生器104從用戶112接收偏好108和起始位置110。例如,路線生成軟件的用戶112可以向發(fā)生器104提供偏好108和起始位置110。偏好108和起始位置110可以經(jīng)觸摸板、鍵盤輸入、語音輸入及適于向發(fā)生器104提供偏好108和起始位置110的任何其它輸入提供給發(fā)生器104。在有些例示性例子中,偏好108和起始位置110可以從另一個計算機系統(tǒng)接收,或者可以已經(jīng)存儲在計算機系統(tǒng)102或另一個數(shù)據(jù)源中。發(fā)生器104可以是運行在計算機系統(tǒng)102上的軟件。在有些例示性例子中,發(fā)生器104可以是硬件。在所繪出的例子中,計算機系統(tǒng)102是可以包括一個或多個計算機、月艮務(wù)器計算機、客戶端計算機、個人設(shè)備或者能夠運行程序代碼的任何其它系統(tǒng)的硬件。在這種例示性例子中,計算機系統(tǒng)102經(jīng)通信介質(zhì)與數(shù)據(jù)庫114通信??梢允褂玫耐ㄐ沤橘|(zhì)的例子包括,例如,網(wǎng)絡(luò)、信息的有線和無線傳輸。數(shù)據(jù)庫114可以包括由發(fā)生器104用來生成路線集合106的信息。例如,數(shù)據(jù)庫114可以包括關(guān)于位置、街道、城市、地標(biāo)、景點、社會興趣、可用交通的信息及適于用來生成路線集合106的任何其它類型的信息。此外,數(shù)據(jù)庫114可以包括存在于一個或多個獨立計算機系統(tǒng)上的一個或多個獨立的數(shù)據(jù)庫。在這種例示性例子中,顯示器116把路線集合106顯示給用戶112。顯示器116可以是面板、屏幕、監(jiān)視器和適于把路線集合106顯示給用戶112的任何其它設(shè)備。例如,用戶112可以在移動通信設(shè)備的圖形顯示器上觀看路線集合106?,F(xiàn)在參考圖2,繪出了根據(jù)一種例示性實施例的發(fā)生器200的例示。發(fā)生器200是圖1的路線生成環(huán)境100中的發(fā)生器104的一個例子。在所繪出的例子中,發(fā)生器200包括起始位置202。發(fā)生器200還包括偏好集合204,這個偏好集合204進一步包括偏好206、偏好208和偏好210。發(fā)生器200還包括路線集合212,這個路線集合進一步包括路線214、排序216、路線218、排序220、路線222和排序224。發(fā)生器200還包括興趣226、新路線228和用戶位置230。在所繪出的例子中,用戶232提供偏好206、偏好208和偏好210。在所繪出的例子中,偏好206是距離、偏好208是沿一條路線要包括的位置,而偏好210是海拔的變化。偏好可以是距離、沿一條路線要包括的位置、海拔的變化、轉(zhuǎn)彎的次數(shù)、地面的類型、交通模式及適于在生成路線中使用的任何其它偏好。此外,交通模式可以是步行、慢跑、跑、自行車、滑冰、摩托車、公共交通及適于生成路線的任何其它交通模式。例如,偏好206可以是3英里,偏好208可以是沿該路線要包括的一個特定的公園,而偏好210可以是50英尺。發(fā)生器200基于偏好206、偏好208和偏好210生成路線214、路線218和路線222,其中路線在起始位置202開始和結(jié)束。在有些例示性例子中,起始位置202可以從用戶232接收。在有些例示性例子中,起始位置202可以從另一個計算機系統(tǒng)接收,或者可以已經(jīng)存儲在計算機系統(tǒng)102或者另一個數(shù)據(jù)源中。在有些例示性例子中,起始位置202可以例如,但不限于,根據(jù)全球定位系統(tǒng)、三角測量或者基于瀏覽器的位置服務(wù)來確定。在所繪出的例子中,路線集合212中的每條路線都基于偏好集合204來排序。因此,路線214、路線218和路線222可以基于偏好206、偏好208和偏好210來排序。在有些例示性例子中,與每個偏好都最匹配的路線具有最高排序。次最匹配的路線具有次最高排序,以此類推。在有些例示性例子中,對每個偏好都具有最接近匹配的路線具有最高排序。具有次最接近匹配的路線具有次最高排序,以此類推。在有些例示性例子中,為路線集合212中的每個排序分配一個值。該值可以是數(shù)字值或者是適于代表每個偏好與對應(yīng)路線的匹配程度的任何其它值。在有些例示性例子中,每個偏好都可以是必需的或者不是必需的。例如,偏好206可以必須是3英里,偏好208可以是沿該路線必須包括一個特定的公園,而偏好210可以是50英尺,但不是必需的。路線214可以是3.1英里,具有51英尺的海拔變化,路線218可以是3.5英里,具有47英尺的海拔變化,而路線222可以是2英里,具有25英尺的海拔變化。在這個例子中,路線214的排序216可以是“1”,路線218的排序220可以是“2”,而路線222的排序224可以是“3”。發(fā)生器200還可以基于興趣226生成路線。例如,用戶232可以輸入興趣“湖”。于是,發(fā)生器可以生成靠近一個或多個湖的路線。興趣226可以包括業(yè)余愛好、飲食偏好、社會興趣、位置、人、動物及適于成為用戶232的興趣的任何其它主題。在有些例示性例子中,用戶的位置230是用戶232的當(dāng)前位置。用戶的位置230可以由全球定位系統(tǒng)提供。例如,用戶232可以具有由全球定位系統(tǒng)定位的設(shè)備。在有些例示性例子中,用戶232可以提供用戶232的位置。在有些例示性例子中,在一條路線的穿行過程中,如果發(fā)生器200確定用戶的位置230和用戶當(dāng)前遵循的路線不滿足偏好集合204,就基于用戶的位置230和偏好集合204生成從用戶位置230到起始位置202的新路線228。在有些例示性例子中,當(dāng)發(fā)生器確定用戶232曾遵循一條路線,但已不再在該路線上時,發(fā)生器200基于用戶位置230和偏好集合204生成從用戶位置230到起始位置202的新路線228。對圖1中的路線生成環(huán)境100和圖2中的發(fā)生器200的例示不是要暗示對可以實現(xiàn)有利實施例的方式的物理或體系結(jié)構(gòu)限制??梢允褂贸静考獾钠渌考蛘叽嫠静考钠渌考S行┎考赡苁遣槐匾?。而且,給出方框是為了例示有些功能性部件。當(dāng)在有利實施例中實現(xiàn)時,這些方框中的一個或多個可以組合、劃分或者先組合再劃分成不同的方框。例如,數(shù)據(jù)庫114可以位于計算機系統(tǒng)102中。在有些例示性例子中,數(shù)據(jù)庫114用多個數(shù)據(jù)庫中的一個代替,其中每個數(shù)據(jù)庫都可以通過有線和無線連接訪問。此外,顯示器116可以位于與計算機系統(tǒng)102不同的計算機系統(tǒng)上。例如,計算機系統(tǒng)102可以通過到遠端計算機系統(tǒng)的有線和無線連接發(fā)送信息,其中遠端計算機系統(tǒng)包括顯示器116,以便顯示路線集合106。因此,顯示器116可以定位成遠離計算機系統(tǒng)102?,F(xiàn)在參考圖3,繪出了對根據(jù)一種例示性實施例的路線集合的顯示300的例示。圖3中所例示的顯示300可以在顯示器(例如,圖1中的顯示器116)上實現(xiàn)。在有些例示性例子中,起始位置302可以是用戶112的當(dāng)前位置。路線304和路線306是在顯示器116上為用戶112顯示的路線集合106中的路線的例子。在所繪出的例子中,用戶112輸入3英里的偏好,因此發(fā)生器104生成每個都是3英里的兩條路線。用戶112可以決定采用靠近公園的路線304還是采用靠近湖的路線306?,F(xiàn)在參考圖4,繪出了對根據(jù)一種例示性實施例的生成路線的流程的例示。圖4中所例示的處理可以在路線生成環(huán)境(例如,圖1中的路線生成環(huán)境100)中實現(xiàn)。處理以接收起始位置110開始(步驟402)。該處理接收用于生成路線集合106的偏好集合108 (步驟404)。處理基于這個偏好集合108生成路線集合106 (步驟406)。路線集合106中的每條路線都在起始位置110開始和結(jié)束。路線集合106中一條指定路線的至少一部分不與路線集合106中該指定路線的任何其它部分重疊。其后,處理結(jié)束。現(xiàn)在參考圖5,繪出了對根據(jù)一種例示性實施例的用于生成路線的處理的流程的例示。圖5中所例示的處理可以在路線生成環(huán)境(例如,圖1中的路線生成環(huán)境100)中實現(xiàn)。處理以用戶112穿行一條路線開始(步驟502)。該處理確定用戶112是否沿著該路線定位(步驟504)。響應(yīng)于確定用戶112不沿著該路線定位,該處理基于用戶112的位置和偏好集合108生成從用戶112的位置到起始位置110的新路線(步驟506)。其后,處理結(jié)束?,F(xiàn)在返回步驟504,響應(yīng)于確定用戶112沿著該路線定位,處理確定用戶112的位置和該路線是否滿足偏好集合108 (步驟508)。響應(yīng)于確定用戶112的位置和該路線不滿足偏好集合108,處理基于用戶112的位置和偏好集合108生成從用戶112的位置到起始位置110的新路線(步驟506)。其后,處理結(jié)束。現(xiàn)在返回步驟508,響應(yīng)于確定用戶112的位置和該路線滿足偏好集合108,處理結(jié)束?,F(xiàn)在轉(zhuǎn)向圖6,繪出了對根據(jù)一種例示性實施例的數(shù)據(jù)處理系統(tǒng)的例示。在這個例示性例子中,數(shù)據(jù)處理系統(tǒng)600包括通信結(jié)構(gòu)602,該通信結(jié)構(gòu)602提供處理器單元604、存儲器606、永久性儲存器608、通信單元610、輸入/輸出(I/O)單元612和顯示器614之間的通信。數(shù)據(jù)處理系統(tǒng)600是用于圖1中的計算機系統(tǒng)102的一種實現(xiàn)的例子。處理器單元604用來運行用于可以加載到存儲器606中的軟件的指令。依賴于特定的實現(xiàn),處理器單元604可以是多個處理器、多處理器內(nèi)核或者某種其它類型的處理器。如在此關(guān)于一個項目所使用的多個意味著一個或多個項目。另外,處理器單元604還可以利用多個異構(gòu)的處理器系統(tǒng)來實現(xiàn),其中主處理器與次處理器存在于單個芯片上。作為另一個例示性例子,處理器單元604可以是包含相同類型的多個處理器的對稱多處理器系統(tǒng)。存儲器606與永久性儲存器608是存儲設(shè)備616的例子。存儲設(shè)備是能夠存儲信息的任何硬件部件,其中的信息例如是但不限于,數(shù)據(jù)、函數(shù)形式(functional form)的程序代碼和/或暫時性和/或永久性的其它合適信息。在這些例子中,存儲設(shè)備616還可以稱為計算機可讀存儲設(shè)備。在這些例子中,存儲器606可以是例如隨機存取存儲器或者任何其它合適的易失性或非易失性存儲設(shè)備。依賴于特定的實現(xiàn),永久性儲存器608可以采取各種形式。例如,永久性儲存器608可以包含一個或多個部件或設(shè)備。例如,永久性儲存器608可以是硬驅(qū)、閃存、可重寫的光盤、可重寫的磁帶或者以上所述的某種組合。由永久性儲存器608使用的介質(zhì)還可以是可移動的。例如,移動硬驅(qū)可以用于永久性儲存器608。在這些例子中,通信單元610提供了與其它數(shù)據(jù)處理系統(tǒng)或設(shè)備的通信。在這些例子中,通信單元610是網(wǎng)絡(luò)接口卡。通信單元610可以通過使用物理和無線通信鏈路中的任一種或者兩者來提供通信。輸入/輸出單元612允許與可以連接到數(shù)據(jù)處理系統(tǒng)600的其它設(shè)備進行數(shù)據(jù)的輸入和輸出。例如,輸入/輸出單元612可以通過鍵盤、鼠標(biāo)和/或某種其它合適的輸入設(shè)備來提供用于用戶輸入的連接。另外,輸入/輸出單元612可以把輸出發(fā)送到打印機。顯示器614提供向用戶顯示信息的機制。用于操作系統(tǒng)、應(yīng)用和/或程序的指令可以位于存儲設(shè)備616中,其中存儲設(shè)備616通過通信結(jié)構(gòu)602與處理器單元604通信。在這些例示性例子中,指令是以函數(shù)形式位于永久性儲存器608上。這些指令可以加載到存儲器606中或者由處理器單元604運行。不同實施例的處理可以由處理器單元604利用計算機實現(xiàn)的指令來執(zhí)行,其中所述指令可以位于存儲器中,例如存儲器606中。這些指令被稱為可以由處理器單元604中的處理器讀取并運行的程序代碼、計算機可用程序代碼或者計算機可讀程序代碼。不同實施例中的程序代碼可以在不同的物理或計算機可讀存儲介質(zhì)(例如,存儲器606或者永久性儲存器608)上體現(xiàn)。程序代碼618以函數(shù)形式位于選擇性地可移動的計算機可讀介質(zhì)620中,而且可以加載到或傳輸?shù)綌?shù)據(jù)處理器系統(tǒng)600并且由處理器單元604運行。在這些例子中,程序代碼618和計算機可讀介質(zhì)620構(gòu)成了計算機程序產(chǎn)品622。在一個例子中,計算機可讀介質(zhì)620可以是計算機可讀存儲介質(zhì)624或者計算機可讀信號介質(zhì)626。計算機可讀存儲介質(zhì)624可以包括存儲設(shè)備,例如像插入或放到驅(qū)動器中的光盤或磁盤,或者作為永久性儲存器608的一部分的用于轉(zhuǎn)移到作為永久性儲存器608 —部分的存儲設(shè)備(例如硬驅(qū))上的其它設(shè)備。計算機可讀存儲介質(zhì)624還可以采用連接到數(shù)據(jù)處理系統(tǒng)600的永久性存儲設(shè)備的形式,例如硬驅(qū)、拇指驅(qū)動器或者閃存。在有些情況下,計算機可讀存儲介質(zhì)624可能不可以從數(shù)據(jù)處理系統(tǒng)600拆除。在這些例示性例子中,計算機可讀存儲介質(zhì)624是非臨時性的計算機可讀存儲介質(zhì)??蛇x地,程序代碼618可以利用計算機可讀信號介質(zhì)626傳輸?shù)綌?shù)據(jù)處理系統(tǒng)600。計算機可讀信號介質(zhì)626可以是例如包含程序代碼618的傳播數(shù)據(jù)信號。例如,計算機可讀信號介質(zhì)626可以是電磁信號、光信號和/或任何其它合適類型的信號。這些信號可以經(jīng)通信鏈路(例如,無線通信鏈路、光纖線纜、同軸線纜、電線和/或任何其它合適類型的通信鏈路)發(fā)送。換句話說,在所述例示性例子中,通信鏈路和/或連接可以是物理的或無線的。在有些例示性實施例中,程序代碼618可以經(jīng)網(wǎng)絡(luò)通過與數(shù)據(jù)處理系統(tǒng)600 —起使用的計算機可讀信號介質(zhì)626從另一個設(shè)備或數(shù)據(jù)處理系統(tǒng)下載到永久性儲存器608。例如,存儲在服務(wù)器數(shù)據(jù)處理系統(tǒng)中的計算機可讀存儲介質(zhì)中的程序代碼可以經(jīng)網(wǎng)絡(luò)從服務(wù)器下載到數(shù)據(jù)處理系統(tǒng)600。提供程序代碼618的數(shù)據(jù)處理系統(tǒng)可以是服務(wù)器計算機、客戶端計算機或者能夠存儲并發(fā)送程序代碼618的某種其它設(shè)備。程序代碼618可以經(jīng)網(wǎng)絡(luò)從遠端數(shù)據(jù)處理系統(tǒng)下載到數(shù)據(jù)處理系統(tǒng)600中的計算機可讀存儲介質(zhì)624。此外,數(shù)據(jù)處理系統(tǒng)600可以是服務(wù)器數(shù)據(jù)處理系統(tǒng),而且程序代碼618可以經(jīng)網(wǎng)絡(luò)下載到遠端數(shù)據(jù)處理系統(tǒng),用以在該遠端數(shù)據(jù)處理系統(tǒng)中的另一個計算機可讀存儲介質(zhì)中使用。為數(shù)據(jù)處理系統(tǒng)600例示的不同部件不是意味著要提供對可以實現(xiàn)不同實施例的方式的體系結(jié)構(gòu)限制。不同的例示性實施例可以在包括除了為數(shù)據(jù)處理系統(tǒng)600所例示的那些部件之外的部件或者代替那些部件的部件的數(shù)據(jù)處理系統(tǒng)中實現(xiàn)。圖6中所示出的其它部件可以與所示出的例示性例子有所變化。不同的實施例可以利用能夠運行程序代碼的任何硬件設(shè)備或系統(tǒng)來實現(xiàn)。作為一個例子,數(shù)據(jù)處理系統(tǒng)可以包括與無機部件集成的有機部件和/或可以完全由不包括人的有機部件組成。例如,存儲設(shè)備可以由有機半導(dǎo)體組成。作為另一個例子,數(shù)據(jù)處理系統(tǒng)600中的存儲設(shè)備是可以存儲數(shù)據(jù)的任何硬件裝置。存儲器606、永久性儲存器608和計算機可讀介質(zhì)620是有形形式的存儲設(shè)備的例子。在另一個例子中,總線系統(tǒng)可以用于實現(xiàn)通信結(jié)構(gòu)602而且可以由一條或多條總線構(gòu)成,例如系統(tǒng)總線或者輸入/輸出總線。當(dāng)然,總線系統(tǒng)可以利用在附連到該總線系統(tǒng)的不同部件或設(shè)備之間提供數(shù)據(jù)傳輸?shù)娜魏魏线m類型的體系結(jié)構(gòu)實現(xiàn)。此外,通信單元可以包括用于發(fā)送和接收數(shù)據(jù)的一個或多個設(shè)備,例如調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器。另外,存儲器可以是例如存儲器606或者高速緩沖存儲器,例如在通信結(jié)構(gòu)602中可能存在的接口和存儲控制集線器中可以找到的。附圖中的流程圖和框圖說明了根據(jù)本發(fā)明各種實施例的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。因此,本發(fā)明是用于生成路線的方法、數(shù)據(jù)處理系統(tǒng)和計算機程序產(chǎn)品。接收起始位置。接收用于生成路線集合的偏好集合?;谠撈眉仙陕肪€集合,其中這個路線集合中的每條路線都在起始位置開始和結(jié)束,而且其中該路線集合中一條指定路線的至少一部分不與該路線集合中該指定路線的任何其它部分重疊。例示性實施例中的一個或多個基于起始位置和偏好集合生成路線。所述例示性實施例可以提供用于生成允許用戶返回起始位置的路線的有效處理。這些結(jié)果可以節(jié)省時間,因為用戶將不必花時間探索一個地區(qū)來確定滿足用戶偏好的路線。在這里所使用的術(shù)語僅僅是為了描述特定的實施例而不是要作為本發(fā)明的限制。所在此所使用的,除非上下文明確地另外指出,否則單數(shù)形式“一個”和“這個”是要也包括復(fù)數(shù)形式。還應(yīng)當(dāng)理解,當(dāng)在本說明書使用時,術(shù)語“包括”和/或“包含”指定了所述特征、整體、步驟、操作、元素和/或部件的存在,但是并不排除一個或多個其它特征、整體、步驟、操作、元素、部件和/或其組的存在或添加。以下權(quán)利要求中所有方式或步驟加功能元素的對應(yīng)結(jié)構(gòu)、材料、動作及等同物都是要包括用于結(jié)合具體所述的其它所述元素執(zhí)行所述功能的任何結(jié)構(gòu)、材料或行為。已經(jīng)為了說明和描述給出了本發(fā)明的描述,但這不是詳盡的或者要把本發(fā)明限定到所公開的形式。在不背離本發(fā)明范圍與主旨的情況下,許多修改和變化對本領(lǐng)域普通技術(shù)人員都將是顯而易見的。實施例的選擇和描述是為了最好地解釋本發(fā)明的原理和實踐應(yīng)用,并使本領(lǐng)域普通技術(shù)人員能夠理解本發(fā)明具有適于預(yù)期特定使用的各種修改的各種實施例。
權(quán)利要求
1.一種用于生成路線的計算機實現(xiàn)的方法,該方法包括: 接收起始位置; 接收用于生成路線集合的偏好集合,其中所述偏好集合選自由如下構(gòu)成的組:距離、行進時間、沿路線要包括的位置、轉(zhuǎn)彎的個數(shù)、海拔的變化、地面的類型、交通類型及其組合;及 響應(yīng)于接收到所述偏好集合,基于該偏好集合生成路線集合,其中該路線集合中的每條路線都在所述起始位置開始和結(jié)束,而且其中該路線集合中的一條指定路線的至少一部分不與該路線集合中該指定路線的任何其它部分重疊。
2.如權(quán)利要求1所述的方法,還包括: 基于所述偏好集合,對所述路線集合中的每條路線排序。
3.如權(quán)利要求1所述的方法,其中基于所述偏好集合生成所述路線集合包括顯示所述路線集合。
4.如權(quán)利要求1所述的方法,其中接收與路線相關(guān)的偏好集合包括接收距離。
5.如權(quán)利要求1所述的方法,其中接收與路線相關(guān)的偏好集合包括接收沿該路線要包括的位置。
6.如權(quán)利要求1所述的方法,其中接收與路線相關(guān)的偏好集合包括接收轉(zhuǎn)彎的個數(shù)。
7.如權(quán)利要求1所述的方法,其中接收與路線相關(guān)的偏好集合包括接收海拔的變化。
8.如權(quán)利要求1所述的方法,其中接收與路線相關(guān)的偏好集合包括接收地面的類型。
9.如權(quán)利要求1所述的方法,其中接收與路線相關(guān)的偏好集合包括接收交通模式。
10.如權(quán)利要求9所述的方法,其中交通模式選自由如下構(gòu)成的組:步行、慢跑、跑、自行車、滑冰、摩托車、踏板車、汽車、船和公共交通。
11.如權(quán)利要求1所述的方法,還包括: 在用戶穿行路線集合中的一條路線期間,響應(yīng)于確定用戶位置和路線集合中的這條路線不滿足偏好集合,基于用戶位置和偏好集合生成從用戶位置到起始位置的新路線。
12.如權(quán)利要求1所述的方法,還包括: 在用戶開始穿行路線集合中的一條路線而且用戶位置不再沿著路線集合中的這條路線后,基于用戶位置和偏好集合生成從用戶位置到起始位置的新路線。
13.一種用于生成路線的數(shù)據(jù)處理計算機系統(tǒng),包括: 總線; 連接到所述總線的通信單元; 連接到所述總線的存儲設(shè)備,其中該存儲設(shè)備存儲程序代碼;及 連接到所述總線的處理器單元,其中該處理器單元配置成:運行程序代碼,接收起始位置;接收用于生成路線集合的偏好集合,其中該偏好集合選自由如下構(gòu)成的組:距離、行進時間、沿路線要包括的位置、轉(zhuǎn)彎的個數(shù)、海拔的變化、地面的類型、交通類型及其組合;并且響應(yīng)于接收到所述偏好集合,基于該偏好集合生成路線集合,其中該路線集合中的每條路線都在所述起始位置開始和結(jié)束,而且其中該路線集合中的一條指定路線的至少一部分不與該路線集合中該指定路線的任何其它部分重疊。
14.如權(quán)利要求13所述的數(shù)據(jù)處理計算機系統(tǒng),其中所述處理器單元還配置成運行程序代碼以基于偏好集合對路線集合中的每條路線排序。
15.如權(quán)利要求13所述的數(shù)據(jù)處理計算機系統(tǒng),其中,在配置成運行程序代碼以基于偏好集合生成路線集合時,所述處理器單元配置成運行程序代碼以顯示所述路線集合。
16.如權(quán)利要求13所述的數(shù)據(jù)處理計算機系統(tǒng),其中,在配置成接收用于生成路線集合的偏好集合時,所述處理器單元配置成運行程序代碼以接收距離。
17.如權(quán)利要求13所述的數(shù)據(jù)處理計算機系統(tǒng),其中,在配置成接收用于生成路線集合的偏好集合時,所述處理器單元配置成運行程序代碼以接收沿該路線要包括的位置。
18.如權(quán)利要求13所述的數(shù)據(jù)處理計算機系統(tǒng),其中,所述處理器單元還配置成運行程序代碼,以在用戶穿行路線集合中的一條路線期間,響應(yīng)于確定用戶位置和路線集合中的這條路線不滿足偏好集合,基于用戶位置和偏好集合生成從用戶位置到起始位置的新路線。
19.如權(quán)利要求13所述的數(shù)據(jù)處理計算機系統(tǒng),其中,所述處理器單元還配置成運行程序代碼,以在用戶開始穿行路線集合中的一條路線而且用戶位置不再沿著路線集合中的這條路線后,基于用戶位置和偏好集合生成從用戶位置到起始位置的新路線。
全文摘要
用于生成路線的方法、數(shù)據(jù)處理系統(tǒng)和計算機程序產(chǎn)品。接收起始位置。接收用于生成路線集合的偏好集合?;谠撈眉仙陕肪€集合,其中該路線集合中的每條路線都在所述起始位置開始和結(jié)束,而且其中該路線集合中的一條指定路線的至少一部分不與該路線集合中該指定路線的任何其它部分重疊。
文檔編號G06F17/30GK103218392SQ20131001838
公開日2013年7月24日 申請日期2013年1月18日 優(yōu)先權(quán)日2012年1月18日
發(fā)明者L·S·德魯卡, T·M·格瑞格斯貝, S·江, T·利文斯頓 申請人:國際商業(yè)機器公司