(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-14
(45)【発行日】2024-03-25
(54)【発明の名称】GPSデータを計画された進行ルートにペアリングするコンピュータ実装方法、コンピュータシステムおよびプログラム製品
(51)【国際特許分類】
G01C 21/34 20060101AFI20240315BHJP
G08G 1/13 20060101ALI20240315BHJP
【FI】
G01C21/34
G08G1/13
(21)【出願番号】P 2021546180
(86)(22)【出願日】2019-08-12
(86)【国際出願番号】 US2019046167
(87)【国際公開番号】W WO2020081146
(87)【国際公開日】2020-04-23
【審査請求日】2022-08-04
(32)【優先日】2018-10-18
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-12-07
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521160638
【氏名又は名称】トランスファインダー コーポレーション
(74)【代理人】
【識別番号】100119725
【氏名又は名称】辻本 希世士
(74)【代理人】
【氏名又は名称】辻本 一義
(74)【代理人】
【識別番号】100168790
【氏名又は名称】丸山 英之
(72)【発明者】
【氏名】シビテッラ,アントニオ
(72)【発明者】
【氏名】メシア,ジョセフ
【審査官】白石 剛史
(56)【参考文献】
【文献】特開2002-318127(JP,A)
【文献】特開2000-298028(JP,A)
【文献】特開2003-344079(JP,A)
【文献】特開2011-145170(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 21/34
G08G 1/13
(57)【特許請求の範囲】
【請求項1】
GPSデータを計画された進行ルートにペアリングするコンピュータ実装方法であって、
通信可能にメモリに接続された1つ以上のプロセッサによって、前記メモリから1つ以上の進行ルートを表す進行ルート情報を取得するステップであって、前記1つ以上の進行ルートのそれぞれの進行ルートに関する前記進行ルート情報が、それぞれの進行ルート上の所与数のあらかじめ決められた地理的ロケーションおよび進行方向を備える、ステップと、
前記1つ以上のプロセッサによって、GPS座標を備えるGPSデータを連続的に取得するステップであって、前記GPS座標は、移動物体の位置を表し、それぞれの位置は所与の時点でのものであり、前記移動物体は移動中である、ステップと、
前記1つ以上のプロセッサによって、前記GPSデータを前記進行ルート情報と比較するステップであって、
GPS座標が前記1つ以上の進行ルートのうちの進行ルートからのバッファ距離内に入るかどうかを決定することを含むステップと、
前記GPS座標が前記1つ以上の進行ルートのうちの前記進行ルートからの前記バッファ距離内に入ると決定することに基づいて、前記1つ以上のプロセッサによって、前記1つ以上の進行ルートのうちの少なくとも1つの進行ルートの前記バッファ距離内のGPS座標のレベルを決定するステップであって、
前記レベルは、バッファ距離内と判定されたGPS座標の数をあらかじめ取得されたGPS座標の総数で割ったもの、で示される割合に相当する、ステップと、
前記GPS座標を、前記1つ以上の進行ルートのそれぞれのルートに関する所与数のあらかじめ決められたロケーションと個別に比較することに基づいて、前記移動物体の進行方向を決定するステップと、
前記バッファ距離内にある、指定された時間区間内で測定されたGPS座標の前記レベルがあらかじめ決められたしきい値を上回り、前記移動物体の進行方向が前記進行情報の進行方向と同じである場合、前記1つ以上のプロセッサによって、前記移動物体を前記1つ以上の進行ルートのうちの所与の進行ルートに割り当てられるとして指定するステップと、
前記指定するステップに基づいて、前記1つ以上のプロセッサによって、リアルタイムで、前記移動物体の現在位置に関するユーザインターフェース情報上に表示するステップであって、前記情報が前記割り当てられた所与の進行ルートを備える、ステップと
を含む、方法。
【請求項2】
前記進行ルート情報が、時間および日付のうちの1つ以上をさらに備え、前記比較するステップが、前記1つ以上のプロセッサによって、前記GPSデータを、前記進行ルート情報中で指定された時間、および前記進行ルート情報中で指定された日付と比較することをさらに含む、請求項1に記載の方法。
【請求項3】
所与の進行ルートが割り当てられたときに、前記所与の進行ルートに対する前記物体の現在位置を表示するステップを含む、請求項2に記載の方法。
【請求項4】
前記バッファ距離内のGPS座標のレベルが全ての前記取得されたGPS座標未満である、請求項2に記載の方法。
【請求項5】
前記レベルが前記あらかじめ決められたしきい値を下回るときに、前記移動物体の前記進行方向が前記進行ルート情報の前記進行方向とは異なるときに、または前記移動物体が前記バッファ距離の外側のある距離にあるときに、前記移動物体を前記進行ルートに割り当てられないとして指定するステップをさらに含む、請求項3に記載の方法。
【請求項6】
前記進行ルートに対する前記物体の前記現在位置が割り当てられないことを表示するステップをさらに含む、請求項5に記載の方法。
【請求項7】
前記移動物体が前記所与の進行ルートに再割り当てされるときに、前記移動物体の前記現在位置を再表示するステップをさらに含む、請求項6に記載の方法。
【請求項8】
前記GPSデータがリアルタイムデータである、請求項5に記載の方法。
【請求項9】
前記GPSデータが履歴データである、請求項5に記載の方法。
【請求項10】
GPSデータを計画された進行ルートにペアリングするためのコンピュータシステムであって、前記コンピュータシステムは、
メモリと、
前記メモリと通信している1つ以上のプロセッサと
を備え、
前記コンピュータシステムは、
前記1つ以上のプロセッサによって、前記メモリから1つ以上の進行ルートを表す進行ルート情報を取得するステップであって、前記1つ以上の進行ルートのそれぞれの進行ルートに関する前記進行ルート情報が、それぞれの進行ルート上の所与数のあらかじめ決められた地理的ロケーションおよび進行方向を備える、ステップと、
前記1つ以上のプロセッサによって、GPS座標を備えるGPSデータを連続的に取得するステップであって、前記GPS座標は、移動物体の位置を表し、それぞれの位置は所与の時点でのものであり、前記移動物体は移動中である、ステップと、
前記1つ以上のプロセッサによって、前記GPSデータを前記進行ルート情報と比較するステップであって、
GPS座標が前記1つ以上の進行ルートのうちの進行ルートからのバッファ距離内に入るかどうかを決定することを含むステップと、
前記GPS座標が前記1つ以上の進行ルートのうちの前記進行ルートからの前記バッファ距離内と決定することに基づいて、前記1つ以上のプロセッサによって、前記1つ以上の進行ルートのうちの少なくとも1つの進行ルートの前記バッファ距離内のGPS座標のレベルを決定するステップであって、
前記レベルは、バッファ距離内と判定されたGPS座標の数をあらかじめ取得されたGPS座標の総数で割ったもの、で示される割合に相当する、ステップと、
前記GPS座標を、前記1つ以上の進行ルートのそれぞれのルートに関する所与数のあらかじめ決められたロケーションと個別に比較することに基づいて、前記移動物体の進行方向を決定するステップと、
前記バッファ距離内にある、指定された時間区間内で測定されたGPS座標の前記レベルがあらかじめ決められたしきい値を上回り、前記移動物体の進行方向が前記進行情報の進行方向と同じである場合、前記1つ以上のプロセッサによって、前記移動物体を前記1つ以上の進行ルートのうちの所与の進行ルートに割り当てられるとして指定するステップと、
前記指定するステップに基づいて、前記1つ以上のプロセッサによって、リアルタイムで、前記移動物体の現在位置に関するユーザインターフェース情報上に表示するステップであって、前記情報が前記割り当てられた所与の進行ルートを備える、ステップと
を含む方法を実行するように構成された、コンピュータシステム。
【請求項11】
前記進行ルート情報が、時間の方向および日付のうちの1つ以上を備え、前記比較するステップが、前記1つ以上のプロセッサによって、前記GPSデータを、前記進行ルート情報中で指定された時間、および前記進行ルート情報中で指定された日付と比較することをさらに含む、請求項10に記載のコンピュータシステム。
【請求項12】
前記バッファ距離内のGPS座標のレベルが全ての前記取得されたGPS座標未満である、請求項11に記載のコンピュータシステム。
【請求項13】
前記所与の進行ルートが割り当てられたときに、前記所与の進行ルートに対する前記物体の前記現在位置を表示するステップをさらに含む、請求項12に記載のコンピュータシステム。
【請求項14】
前記レベルが前記あらかじめ決められたしきい値を下回るときに、前記移動物体の前記進行方向が前記進行ルート情報の前記進行方向とは異なるときに、または前記移動物体が前記バッファ距離の外側のある距離にあるときに、前記移動物体を前記進行ルートに割り当てられないとして指定するステップをさらに含む、請求項13に記載のコンピュータシステム。
【請求項15】
前記移動物体が前記進行ルートに再割り当てされるようになった後に、前記移動物体の前記位置を再表示するステップをさらに含む、請求項14に記載のコンピュータシステム。
【請求項16】
GPSデータを計画された進行ルートにペアリングするためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は、
1つ以上のプロセッサを備える処理回路によって可読な少なくとも1つのコンピュータ可読記憶媒体と、
1つ以上のプロセッサによって、前記メモリから1つ以上の進行ルートを表す進行ルート情報を取得するステップであって、前記1つ以上の進行ルートのそれぞれの進行ルートに関する前記進行ルート情報が、それぞれの進行ルート上の所与数のあらかじめ決められた地理的ロケーションおよび進行方向を備える、ステップと、
前記1つ以上のプロセッサによって、GPS座標を備えるGPSデータを連続的に取得するステップであって、前記GPS座標は、移動物体の位置を表し、それぞれの位置は所与の時点でのものであり、前記移動物体は移動中である、ステップと、
前記1つ以上のプロセッサによって、前記GPSデータを前記進行ルート情報と比較するステップであって、
GPS座標が前記1つ以上の進行ルートのうちの進行ルートからのバッファ距離内に入るかどうかを決定することを含むステップと、
前記GPS座標が前記1つ以上の進行ルートのうちの前記進行ルートからの前記バッファ距離内に入ると決定することに基づいて、前記1つ以上のプロセッサによって、前記1つ以上の進行ルートのうちの少なくとも1つの進行ルートの前記バッファ距離内のGPS座標のレベルを決定するステップであって、
前記レベルは、バッファ距離内と判定されたGPS座標の数をあらかじめ取得されたGPS座標の総数で割ったもの、で示される割合に相当する、ステップと、
前記GPS座標を、前記1つ以上の進行ルートのそれぞれのルートに関する所与数のあらかじめ決められたロケーションと個別に比較することに基づいて、前記移動物体の進行方向を決定するステップと、
前記バッファ距離内にある、指定された時間区間内で測定されたGPS座標の前記レベルがあらかじめ決められたしきい値を上回り、前記移動物体の進行方向が前記進行情報の進行方向と同じである場合、前記1つ以上のプロセッサによって、前記移動物体を前記1つ以上の進行ルートのうちの所与の進行ルートに割り当てられるとして指定することと、
前記指定するステップに基づいて、前記1つ以上のプロセッサによって、リアルタイムで、前記移動物体の現在位置に関するユーザインターフェース情報上に表示するステップであって、前記情報が前記割り当てられた所与の進行ルートを備える、ステップと
を含む方法
を実行するための記憶命令と
を備える、コンピュータプログラム製品。
【請求項17】
前記進行ルート情報が、時間および日付のうちの1つ以上をさらに備え、前記比較するステップが、前記1つ以上のプロセッサによって、前記GPSデータを、前記進行ルート情報中で指定された時間、および前記進行ルート情報中で指定された日付と比較することをさらに含む、請求項16に記載のコンピュータプログラム製品。
【請求項18】
所与の進行ルートが割り当てられたときに、前記所与の進行ルートに対する前記物体の現在位置を表示することを前記方法が含む、請求項16に記載のコンピュータプログラム製品。
【請求項19】
前記GPSデータがリアルタイムデータである、請求項18に記載のコンピュータプログラム製品。
【請求項20】
前記レベルが前記あらかじめ決められたしきい値を下回るときに、前記移動物体の前記進行方向が前記進行ルート情報の前記進行方向とは異なるときに、または前記移動物体が前記バッファ距離の外側のある距離にあるときに、前記移動物体を前記進行ルートに割り当てられないとして指定するステップを前記方法が含む、請求項19に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2018年10月18日に出願された「Automatically Pairing GPS Data to Planned Travel Routes of Mobile Objects」という名称の米国仮特許出願第62/747,195号の優先権を主張する、2018年11月7日に出願された「Automatically Pairing GPS Data to Planned Travel Routes of Mobile Objects」という名称の米国非仮特許出願第16/212,806号の優先権を主張し、前記出願の各々の開示全体がそれらの全体に参照により本明細書に組み込まれる。
【0002】
本発明は、一般に、車両または移動デバイスなど移動物体に関し、特に、GPSデータを移動物体の計画された進行ルートに自動的にペアリングすることに関する。
【背景技術】
【0003】
移動物体は、車両(たとえば、車、トラック、バスおよびトロリ)、またはセルラーデバイスおよびワイヤレス通信デバイスを含む移動デバイスなど、移動が可能である物体を含む。バスまたはトラックなどの移動物体は、人、製品または他の積荷を送ることなど、サービスを与えるために使用され得る。また、車両のフリート(fleet)は、しばしば、特定の進行ルートを進行するために使用される。これらのフリートは、所望のスケジュールに従って、計画された進行ルートを頻繁に進行し得る。リアルタイムでのあるいは履歴的な車両のフリートの追跡は困難なタスクであり得る。
【先行技術文献】
【特許文献】
【0004】
【文献】米国特許出願公開第2018/0259347号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
車両のフリートを動作させる際の1つの課題は、車両が進行ルートもしくは経路の上にあるか外にあるかを決定するための各車両の自動追跡である。また、リアルタイム移動物体を自動的に追跡し、履歴進行情報、およびフリート内のバスなど、複数の個々の車両によって引き受けられるルートを維持することが課題である。
【課題を解決するための手段】
【0006】
GPSデータを計画された進行ルートにペアリングするための方法、システムおよび/またはコンピュータプログラム製品の提供によって、従来技術の欠点が克服され、追加の利点が与えられる。本方法は、進行ルートを表す進行ルート情報を取得することと、移動デバイスまたは車両に関するGPS座標を備えるGPSデータを取得することと、GPS座標が進行ルートからのバッファ距離内に入るかどうかを決定するためにGPSデータを進行ルート情報と比較することと、あらかじめ選択された時間区間中にバッファ距離しきい値内に入るGPS座標のレベルかどうかを決定することと、レベルが特定の量を上回る場合、移動デバイスまたは車両の位置を進行ルートに割り当てられるとして指定することとを含む。本方法は、コンピュータシステムを介して自動的に実行するように実装される。
【0007】
バッファ距離しきい値内に入るGPS座標のレベルは数またはパーセンテージであり得る。進行ルート情報は、進行方向、時間および日付を含み得る。本方法は、GPSデータを、進行ルート情報中で指定された進行方向、進行ルート情報中で指定された時間、および進行ルート情報中で指定された日付のうちの1つ以上と比較することを含む。本方法は、GPSデータからの進行方向が、進行ルート情報内で指定された進行方向と同じであるかどうかを決定することを含む。GPSデータはリアルタイムデータおよび/または履歴データであり得る。GPSデータは、GPS座標と、時間速度と、進行方向とを含み得る。本方法は、位置が割り当てられたときに、進行ルートに対する物体の位置を表示することを含み得る。本方法はまた、レベルが特定の量を下回るときに、移動物体の進行方向が計画された進行ルートの方向とは異なるときに、または、移動物体がバッファ距離の外側のある距離にあるときに、位置を進行ルートに割り当てられないとして指定することを含み得る。本方法は、進行ルートに対する移動物体の位置が割り当てられないことを表示することを含み得る。また、本方法は、移動デバイスまたは車両が進行ルートに再割り当てされるようになった後に、物体の位置を再表示し得る。移動物体は、上記で説明したように、移動デバイスを割り当てるための同じ条件が達成されたときに再割り当てされる。本方法の各上述のステップは、コンピュータシステムを介して自動的に実行し、行われるように実装される。
【0008】
コンピュータプログラム製品は、処理回路によって可読であり、たとえば、上記および本明細書で説明したように本方法を実行するための命令を記憶する、コンピュータ可読記憶媒体を含む。また、本方法の1つ以上の態様に関するコンピュータ実装システムも、本明細書で説明され、クレームされる。さらに、1つ以上の態様に関するサービスも説明され、本明細書でクレームされ得る。
【0009】
追加の特徴および利点は、本明細書で説明される技法によって実現される。他の実施形態および態様は、本明細書で詳細に説明され、クレームされる態様の一部と考えられる。
【0010】
1つ以上の態様は、本明細書の結論における特許請求の範囲において例として特に指摘され、明確にクレームされる。1つ以上の態様の上記目的、特徴、および利点は、添付の図面とともに行われる以下の詳細な説明から明らかである。
【図面の簡単な説明】
【0011】
【
図1】本発明の一態様によるシステムの概略表現の一例を示す図である。
【
図2】
図1に示されたシステムの構成要素を示す図である。
【
図3】本発明の一態様に従って実行されるプロセスの一例を示す図である。
【
図4】本発明の一態様による、移動物体によって進行されるまたは使用される進行ルート情報および進行経路の概略表現の一例を示す図である。
【
図5】本発明
の1以上の態様を組み込み、実行するために使用され得る計算環境の一例を示す図である。
【発明を実施するための形態】
【0012】
1つ以上の態様では、GPSデータを移動物体の計画された進行ルートに自動的にペアリングするための機能が提供される。ペアリングは、移動デバイスまたは車両などの移動物体を進行ルートに割り当てられるとして指定するようにコンピュータシステムを介して自動的に実行される。移動物体は、ワイヤレス通信デバイス(たとえば、スマートフォン)などの移動デバイス、ならびに/またはトラック、バス、飛行機、およびトロリなどの車両を含み得る。移動物体は、いくつかの条件が満たされた後に、進行ルートに割り当てられ(または一致させられ)得る。移動物体は、条件がもはや満たされないときに、進行ルートに割り当てられない(または一致させられない)ことがある。進行ルートから割当て解除された移動デバイスは、同じ条件が後で満たされた場合、進行ルートに再割り当てされ得る。
【0013】
進行ルートは、移動物体によって進行されるように指定された計画されたルートである。そのような計画された進行ルートは、自動車ルート、バスルート、トラックルート、飛行機ルートおよび/またはトロリルートを含む。計画された進行ルートの一般的な例は、都市バス公共交通ルートおよび学校バスルートを含む。
【0014】
GPSデータを移動物体の計画された進行ルートにペアリングすることに関するさらなる詳細について、
図1を参照しながら説明する。このシステムまたはプロセスの態様は、移動物体中に1つ以上のプロセッサを含むコンピュータシステムによって、移動物体に対してリモートの1つ以上のプロセッサによって、または移動物体中のプロセッサと移動物体に対してリモートのプロセッサとの組合せによって実行され得る。多くの可能性がある。
【0015】
図1および
図2を参照すると、GPSデータを移動物体の計画された進行ルートにペアリングするための例示的な実施形態によるシステムの態様が示されている。GPSデータは、GPS座標、時間、進行方向、および速度を含む。システム100は1つ以上のプロセッサまたはサーバを含み、そこでデータが送信され、特定のアルゴリズムを含むプロセスが実行される。一例では、本システムはクラウドコンピューティング110を介して実装され得る。本システムは、計画された進行ルート情報112を受信または取得する。進行ルート情報は、コンピュータまたは移動デバイスからそのような情報を受信すること、または計画された進行ルートを表すために記憶されているGPSデータからそのような情報を生成することを含む、何らかの存立可能な方法によって取得され得る。進行ルート情報を作成、生成、および/または取得するために、進行ルート情報を取得するための他の技法も使用され得る。
【0016】
ワイヤレス通信デバイスを備えた車両を含む、ワイヤレス通信デバイスなどの移動物体114は、1つ以上のプロセッサまたはサーバを含むシステム100にGPSデータを送ることを可能にされる。ユーザ116は、移動物体の計画された進行ルートへのGPSデータのペアリングの結果を閲覧することを可能にされる。ユーザ116は、移動物体114が、いつ、それのGPSデータに基づいて、計画された進行ルートに割り当てられたかまたは一致させられたかを閲覧することを可能にされる。システム100およびそれと関連付けられたメモリ内で、計画された進行ルート情報118は任意の望ましいフォーマットで記憶され得る。プロセッサ122によって実行されるプロセスまたはアルゴリズムは、計画された進行ルート情報118およびGPSデータ120を使用する。プロセスおよびアルゴリズムは、計画された進行ルート情報118をGPSデータ120と比較するための計算を伴う。計算により、移動物体が一意の計画された進行経路に沿って進行しているときに結果124が生成される。システム100は、移動物体を計画された進行経路に割り当てられるまたは一致させられるとして指定する。システム100は、移動物体の実際のGPSロケーションとともに、計画された進行ルートをユーザ116に示す。本システムは、連続的に、または移動物体が計画された進行ルートに割り当てられたときのみ、ルートを示し得る。本システムは、ルートおよび/もしくは移動物体を表示すること、またはルートおよび/もしくは移動物体の表示を変更することによって、ルートがいつ割り当てられたか、または一致させられたかをユーザに示すことができる。また、本システムは、データアナリティクスを用いて後で使用するために割当てを記憶し得る。
【0017】
次に
図3を参照しながら、GPSデータを移動物体の計画された進行ルートにペアリングするためのプロセスの例についてより詳細に説明する。本システム内で、計画された進行ルートはステップ202において1つ以上のプロセッサによって取得される。さらに、プロセッサは、追加のステップ204に示されているように、GPS座標データを含むGPS情報を取得する。プロセッサは、次いで、ステップ206に示されているように、GPSデータを計画された進行ルートと比較する。この比較では、移動物体の進行中に移動物体のロケーションを表すGPSデータ座標は、計画された進行ルートと比較される。たとえば、移動物体のGPS座標に基づく移動物体のロケーションは、計画された進行ルートのロケーションと比較される。これらのロケーションは、GPS座標のロケーションが、計画された進行ルートからの指定されたバッファ距離内にあるかどうかを決定するために比較される。GPS座標ポイントのあらかじめ選択されたレベル、たとえば、数またはパーセンテージが、あらかじめ選択された時間区間にわたってバッファ距離内に入るかどうかを決定するために、データがプロセッサによって分析される。本システムは、システムオペレータの選好に応じて、異なる時間区間と、異なるバッファ距離しきい値とを使用するように構成され得る。プロセッサは、ステップ208において、指定された時間区間内で測定された、GPSデータの所定のレベルが距離しきい値内にあり、移動物体が計画された進行ルートと同じ方向に進行しているかどうかを決定する。そのような計算は時間とともに連続的におよび/または周期的に実行される。
【0018】
言い換えれば、本システムは、移動物体によって進行されたGPSデータ座標の特定の数またはパーセンテージが、指定された時間区間にわたってあらかじめ選択されたしきい値距離内にあるかどうか、および、移動物体の進行方向が、計画された進行ルートと同じ方向内にあるかどうかを、プロセッサが決定するように動作する。
【0019】
上述の条件が満たされる場合、本システムは、ステップ210において、移動デバイスによって進行されている進行ルートが一意の進行ルートであるかどうかを決定する。移動物体のロケーションが、共有されない計画された進行ルート位置にあるか、または異なる計画された進行ルート上にあるとき、一意の進行ルートが指定される。本システムが、進行ルートが一意であることを決定した場合、本システムは、ステップ212において、移動物体を計画された進行ルートに「割り当てられる」または「一致させられる」として指定する。次いで、追加のステップ214において、移動物体のロケーションは、本システムの1以上のユーザに対してグラフィカルユーザインターフェースなどのユーザインターフェース上に表示され得る。しかしながら、計画された進行経路に沿った移動デバイスの進行を表示するための他の手段も実行され得る。
【0020】
本システムが、GPSデータ座標の指定された数またはパーセンテージがバッファ距離内にあることを決定しない場合、またはバッファ距離内のGPS座標が、指定された時間区間内に決定されなかった場合、または移動物体が同じ進行方向内にない場合、本システムは、ステップ206およびステップ208において指定されるように、(GPSデータと計画された進行ルートとの比較を連続的に実行するための座標を含む)GPSデータ情報を連続的に取得するように動作する。同様に、本システムがルートを一意のルートとして指定しないか、または移動物体を割り当てられるとして指定しない場合、本システムは、206、208、210、および212に示されたステップを実行するためにGPSデータを取得し続ける。
【0021】
さらに、本システムは、移動物体が依然として計画された進行経路上に位置するかどうかを計算するために、移動物体が割り当てられるかまたは一致させられた後に、GPSデータを連続的に取得する。したがって、本システムは、GPSデータポイントの指定されたレベルが指定されたバッファ距離内にあり、指定された時間区間に同じ進行方向にあるかどうかを決定し続ける。本システムは、進行ルートが一意であるかどうか、および割当てまたは一致が指定されるかどうかを決定し続ける。プロセスの実行中の任意の時間に、移動物体の進行経路に一致させられた移動物体が、割り当てられないまたは一致させられないようになった場合、本システムは、ユーザのために、割り当てられない移動物体の進行経路を表示し続けるように構成され得る。代替的に、本システムは、移動物体が割り当てられないまたは一致させられないようになった後に、移動物体の進行経路に対する移動物体のロケーションを表示しないように構成され得る。本システムは、プロセスのステップが1つ以上のプロセッサによって実行されるように自動的に動作する。バッファ距離、バッファ距離内に入るGPSデータポイントの指定された時間区間およびレベル、たとえば、パーセンテージまたは数の選択は、本システムのオペレータによって選択され得る。
【0022】
ステップ202において、計画されたルートがプロセッサによって取得され、本システムのメモリに記憶された複数の計画された進行ルートがあり得る。したがって、移動物体が移動物体の進行の過程中に特定の進行ルートに一致させられ、次いで一致させられないようになり、次いで、その後、異なる進行ルートに一致させられるようになり得ることが可能である。本システムは、移動物体のためのGPSデータが、本システムのメモリに記憶された1つ以上の進行ルートからの指定されたしきい値距離内にあるかどうかを決定するように動作する。
【0023】
図4を参照しながら、移動物体に関する本システムの動作について説明する。この例では、本システムのメモリに記憶された少なくとも2つの計画された進行ルートがある。第1の記憶された計画された進行ルートは青色経路400として指定され、第2の計画された進行ルートは赤色経路404として指定される。青色経路進行ルートと赤色経路進行ルートの両方は、それらと関連付けられたバッファ距離を有する。青色バッファ距離および赤色バッファ距離はまた、
図4に示されているように、青色割当てバッファ402および赤色割当てバッファ406と呼ばれることもある。各バッファ距離は、それぞれ、青色経路および赤色経路の各進行ルート上の特定のポイントからの特定の距離であるように、本システムによって指定される。たとえば、青色バッファ距離402は、青色の計画された進行ルートもしくは青色経路から30フィートであるか、または青色の計画された進行ルートもしくは青色経路に平行であるとして指定され得る。同様に、赤色割当てバッファ距離406は、赤色の計画された進行ルートもしくは赤色経路から30フィートであるか、または赤色の計画された進行ルートもしくは赤色経路に平行であるとして、本システムによって指定され得る。これらのバッファ距離の各々が
図4に示されている。
【0024】
図4にも示されているように、移動物体によって進行されるロケーションは、
ポイントA~Zからの移動物体の進行のロケーションを表す、文字A、B、C、D、E、X、YおよびZで指定される。GPS座標は、移動物体の進行経路全体にわたって、連続的におよび/または周期的に移動物体から生成され、本システムによって受信または取得される。したがって、移動物体は、移動物体の進行の持続時間中に、
位置A~ZにあるGPS座標を含む、GPS座標を送信する。この点について、位置Aへの進行を表す座標はシステムプロセッサに送信され、プロセッサは、ロケーションAまでの指定された時間区間(たとえば60秒)内に進行された座標が、一意の青色の計画された進行ルートまたは一意の赤色の計画された進行ルートのいずれかからのバッファ距離内にあるかどうか、および移動物体が、計画された進行ルートのうちの1つ、同じ進行方向にあるかどうかを決定する。本システムは、移動物体がロケーションBにあることを表す、移動物体のGPSデータを移動物体が送信するときまでを含むプロセスを繰り返す。ロケーションAとロケーションBのいずれも青色経路または赤色経路のいずれかのバッファ距離内にないので、本システムは、移動物体を赤色もしくは青色の計画された進行ルートまたは赤色もしくは青色経路のいずれにも一致させないまたは割り当てない。
【0025】
移動物体がロケーションCに進むにつれて、移動物体のGPSデータは本システムとプロセッサとによって受信され、それにより、ロケーションCが青色進行ルートバッファおよび/または赤色進行ルートバッファ内にあるかどうかが決定される。この例では、ロケーションCが、赤色進行経路バッファと青色進行経路バッファの両方内にあるので、本システムは、ロケーションが一意の進行ルート内に入らないので、このロケーションを割当てまたは一致に向かうとしてカウントしない。移動物体がロケーションCにあるとき、本システムは、移動物体が青色ルートおよび赤色ルート上にあることを認識する。しかしながら、ロケーションCが、まだ一意でない進行ルートであるので、本システムは、(ロケーションCにあるときの)移動物体を青色または赤色進行ルートに「一致させられる」または「割り当てられる」として指定しない。
【0026】
この例では、本システムは、GPS座標の指定されたパーセンテージが、指定された時間区間中にバッファ距離内にあるかどうかを決定するように構成される。この例では、時間区間は60秒である。また、この例では、本システムは、GPSデータ座標の少なくとも50%が、特定の計画された進行経路バッファ距離内にあることを決定するようにプログラムされる。さらに、この例では、本システムは、移動物体の進行方向を決定し、計算するように事前プログラムされる。また、最後に、本システムは、移動物体のロケーションが進行経路に対して一意であるロケーションにあるかどうかを決定するように構成される。この例では、移動物体は60秒(指定された時間区間)以内にポイントCからポイントDに進行する。
【0027】
移動物体がロケーションDに移動すると、本システムは、物体がこのロケーションにあることを決定し、最後の60秒以内に決定されたGPSポイントの50%が、青色進行ルートまたは赤色進行ルートのいずれかの、一意の計画された進行ルート内にあるかどうかを計算する。ロケーションDは赤色進行ルートバッファ距離の外側にあるが、青色進行ルートバッファ距離内にあるので、本システムはロケーションDを認識する。本システムは、最後の60秒に決定されたGPSポイントの少なくとも50%が、ロケーションCとロケーションDとの間にあり、すべて一意の青色進行ルートおよびバッファ距離内にあり、青色進行ルートと同じ進行方向にあったことを認識したので、本システムは、移動物体を青色進行ルートに「一致させられる」または「割り当てられる」として指定する。
【0028】
一例では、移動物体が青色進行ルートなどの進行ルートに一致させられると、本システムは、本システムのユーザが、進行ルートの表現上で移動物体のロケーションを閲覧することを可能にする。この表現は、たとえば、マップまたは同様の地理的表現を含むグラフィカルユーザインターフェース上にあり得る。移動物体が経路に一致させられるまたは割り当てられるという、ユーザによる他の指示も本システムによって実装され得る。たとえば、ユーザは、移動物体がルートを割り当てられたことを示す電子メールまたはテキストメッセージを含む、一致の通知を受信し得る。
【0029】
移動物体がポイントEおよびポイントFに進行するにつれて、本システムは、GPSデータが、指定された時間区間、たとえば、60秒の間に、指定されたバッファ距離内にあるかどうかを計算し続ける。上述の基準が満たされ、移動物体の進行方向が、割り当てられた進行ルートまたは経路と同じ進行方向にある限り、本システムは、移動物体を青色の計画された進行ルートに割り当てられるとして指定し続け、ユーザがユーザインターフェース上で移動物体を閲覧することを可能にする。代替的に、進行ルートが一意であることを除いて、上述の基準が満たされる限り、本システムは、移動物体を進行ルートに一致させられるとして指定し続け得る。言い換えれば、本システムはそのように動作し得、ルートが一意である基準が、初期割当てまたは一致のためにのみ必要とされる。このようにして、一意の計画された進行ルートから普通の計画された進行ルート上にあるロケーションに進行した移動物体は、依然として、一致させられた計画された進行ルートに割り当てられる。
【0030】
移動物体がロケーションFからロケーションXおよびロケーションYに進行する場合、本システムは上述の計算を実行し続ける。ロケーションXにおいて、GPSデータ座標は、指定された時間区間中に青色バッファ距離内にあり、進行方向は青色進行ルートまたは経路の方向にあり続けるので、本システムは移動物体を青色進行経路に一致させ続け得る。しかしながら、本システムは、ロケーションYにおけるGPS座標が、指定された時間区間中に青色バッファ距離(または任意のバッファ距離)内にないことを計算し、次いで、移動物体の、青色進行ルートまたは経路への割当てまたは一致を解除する。また、別の実施形態では、本システムは、移動物体が、異なる条件が満たされるまで、進行経路に一致させられ続けることを可能にするように構成され得る。たとえば、本システムは、移動物体が、計画された進行経路からの指定された偏差距離であることが計算されたときに、移動物体を割当て解除するように構成され得る。移動物体が、(移動物体が割り当てられた後に)バッファ距離を外れて進行するが、移動物体がさらなるあらかじめ選択された距離に到達するまで、割り当てられなくならないように、偏差距離は、バッファ距離とは異なり、たとえば、バッファ距離よりも大きいことがある。
【0031】
移動物体がポイントFからポイントZに進行する場合、本システムによって実行される計算は、実行され続ける。したがって、ポイントZは青色バッファ距離内にあるが、本システムは、移動物体によって進行されるポイントFとポイントZとの間のGPSロケーションが青色進行ルートまたは経路について同じ進行方向になかったことを60秒以内に計算するので、本システムは移動物体を青色進行ルートから割当て解除または一致解除する。
【0032】
また、たとえば、移動物体が位置特定され、ポイントC~Fから進行するとき、本システムは、移動物体が青色進行経路バッファエリアと赤色進行経路バッファエリアの両方内にあることを計算することが可能である。さらに、進行経路上のこれらのロケーションはもはや単一の進行経路に対して一意でないが、移動物体は、すでに、青色経路またはルートに対して一意であるエリア中の青色経路上にあるので、本システムは移動物体を青色進行経路に一致させ続ける。
【0033】
移動物体が進行経路に一致させられていないと、計算は継続し、本システムは、プロセッサによって実行された計算が、特定の時間区間にわたって特定の進行経路についてバッファエリア内のロケーションの指定されたパーセンテージで移動物体のロケーションを明らかにする場合、移動物体が青色進行経路または赤色進行経路のいずれかに一致させられるかどうかを最終的に決定する。
【0034】
バッファエリアの距離、およびバッファエリア内のGPSデータポイントのレベル、たとえば、数またはパーセンテージはユーザまたは本システムの他のオペレータによってシステム中にプログラムされ得る。GPS座標のレベルがパーセンテージとしてではなく、数としてプログラムされる場合、本システムは、GPS座標の選択された数が、指定された時間区間内に、同じ進行方向において、一意の進行ルート上で、計画された進行ルートバッファ距離内にあることが決定されたかどうかを決定するように動作する。さらに、移動物体が進行経路から一致を解除されたかまたは割当てを解除された後に、本システムが移動物体を進行経路に一致させるために、本システムは、移動物体が、時間区間の間に経路バッファ距離内にあり、進行ルートまたは経路の同じ進行方向内にあるGPSロケーションの指定されたレベル内にあるGPSロケーションを達成したことを決定しなければならない。これらの条件が満たされている場合、移動物体は、本システムのメモリ中に維持される任意の進行経路に再一致させられ得る。移動物体の進行中に、本システムは、指定された時間区間、たとえば60秒以内に、移動物体によって進行されたGPS座標が、一意の計画された進行ルートバッファ距離内にあり、同じ進行方向にあるかどうかを連続的におよび/または周期的に計算する。
【0035】
前に説明したように、本システムが、リアルタイムで移動物体からのGPSデータをペアリングするために使用されることに加えて、本システムは、移動物体についての履歴GPSデータをペアリングするために使用され得る。
【0036】
リアルタイムデータを使用して動作しているとき、本システムは、移動物体が計画された進行ルートに一致させられるかどうかを決定するために、バス、またはトロリ、または配送トラックなどの車両のフリートを含む、移動物体のロケーションを監視することを担当するユーザによって使用され得る。この情報は、同じ進行ルートおよび/または異なる進行ルートのいずれか上にある移動物体の数を監視するために使用され得る。また、本システムは、公共輸送ルートにおいてなど、バスまたはトロリのユーザによって使用され得る。たとえば、バスまたはトロリなどの移動物体が計画された進行ルートに割り当てられるとき、ユーザは移動デバイスなどのデバイス上でバスまたはトロリのルートおよびロケーションを閲覧し得る。移動デバイスは、1つ以上の車両、ならびにルートに(上記で説明したように)割り当てられた車両のための計画された進行ルートを表示し得る。
【0037】
さらに、本システムが履歴GPSデータを使用して動作するとき、本システムのユーザは、特定の移動物体が履歴時間中の任意の時点において特定の進行経路に割り当てられたかまたは一致させられたかどうかを決定するために、本システムを使用し得る。本システムは移動物体の進行中にGPSデータを履歴データとして記憶し得る。この点について、履歴GPSデータは、時間とともに累積され、本システムにまたはリモートで記憶される。履歴GPSデータは、移動物体および計画された進行ルートのデータアナリティクスを実行するために使用され得る。
【0038】
本発明の1つ以上の態様によって使用され得るプロセッサを含むコンピュータシステムの一例について、
図5を参照しながら説明する。この例では、コンピュータシステムは、本発明の態様によって使用されることもあり使用されないこともある追加の構成要素を含む計算環境の一部である。
【0039】
図5に示されているように、本発明のプロセスを実行するために使用可能な計算環境600が開示されている。計算環境は、例として、たとえば汎用計算デバイスの形態で示されているコンピュータシステム602を含む。コンピュータシステム602は、限定はしないが、1つ以上のバスおよび/または他の接続610を介して互いに結合された、1つ以上のプロセッサまたは処理ユニット604(たとえば、中央処理ユニット(CPU))、メモリ606(例として、別名、システムメモリ、メインメモリ、メインストレージ、中央ストレージまたはストレージ)、ならびに1つ以上の入出力(I/O)インターフェース608を含み得る。
【0040】
バス610は、様々なバスアーキテクチャのいずれかを使用する、メモリバスまたはメモリコントローラ、周辺バス、アクセラレーテッドグラフィックスポート、およびプロセッサまたはローカルバスを含む、いくつかのタイプのバス構造のいずれかのうちの1つ以上を表す。限定ではなく、例として、そのようなアーキテクチャは、業界標準アーキテクチャ(ISA)、マイクロチャネルアーキテクチャ(MCA)、拡張ISA(EISA)、ビデオエレクトロニクススタンダーズアソシエーション(VESA)ローカルバス、およびペリフェラルコンポーネントインターコネクト(PCI)を含む。
【0041】
メモリ606は、たとえば、プロセッサ604のローカルキャッシュ622に結合され得る、共有キャッシュなど、キャッシュ620を含み得る。さらに、メモリ606は、1つ以上のプログラムまたはアプリケーション630、オペレーティングシステム632、および1つ以上のコンピュータ可読プログラム命令634を含み得る。コンピュータ可読プログラム命令634は、本発明の態様の実施形態の機能を実行するように構成され得る。
【0042】
コンピュータシステム602はまた、たとえば、I/Oインターフェース608を介して、1つ以上の外部デバイス640、1つ以上のネットワークインターフェース642、および/または1つ以上のデータ記憶デバイス644と通信し得る。例示的な外部デバイスは、ユーザ端末、テープドライブ、ポインティングデバイス、ディスプレイなどを含む。ネットワークインターフェース642は、コンピュータシステム602が、他のコンピュータデバイスまたはシステムとの通信を行う、ローカルエリアネットワーク(LAN)、一般的なワイドエリアネットワーク(WAN)、および/または公共ネットワーク(たとえば、インターネット)など、1つ以上のネットワークと通信することを可能にする。たとえば、本システムは、グラフィカルユーザインターフェースを介して移動物体の割り当てられたまたは割り当てられていないステータスをユーザに通信するために、パーソナルコンピュータ、タブレットデバイスまたはスマートフォンに接続され得る。
【0043】
データ記憶デバイス644は、1つ以上のプログラム646、1つ以上のコンピュータ可読プログラム命令648、および/またはデータなどを記憶し得る。コンピュータ可読プログラム命令は、本発明の態様の実施形態の機能を実行するように構成され得る。
【0044】
コンピュータシステム602は取外し可能な/取外し不可能な、揮発性/不揮発性コンピュータシステム記憶媒体を含み、および/またはそれに結合され得る。たとえば、コンピュータシステム602は、(一般に、「ハードドライブ」と呼ばれる)取外し不可能な不揮発性磁気媒体、取外し可能な不揮発性磁気ディスク(たとえば、「フロッピーディスク」)からの読取りおよびそれへの書込みのための磁気ディスクドライブ、および/またはCD-ROM、DVD-ROMまたは他の光媒体など、取外し可能な不揮発性光ディスクからの読取りまたはそれへの書込みのための光ディスクドライブを含み、および/またはそれらに結合され得る。他のハードウェアおよび/またはソフトウェア構成要素はコンピュータシステム602とともに使用され得ることを理解されたい。例は、限定はしないが、マイクロコード、デバイスドライバ、冗長処理ユニット、外部ディスクドライブアレイ、RAIDシステム、テープドライブ、およびデータアーカイバルストレージシステムなどを含む。
【0045】
コンピュータシステム602は、多数の他の汎用または専用計算システム環境もしくは構成を用いて動作可能であり得る。コンピュータシステム602とともに使用するのに好適であり得る、よく知られている計算システム、環境、および/または構成の例は、限定はしないが、パーソナルコンピュータ(PC)システム、サーバコンピュータシステム、シンクライアント(thin client)、シッククライアント(thick client)、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラマブルコンシューマーエレクトロニクス、ネットワークPC、ミニコンピュータシステム、メインフレームコンピュータシステム、および上記のシステムまたはデバイスなどのいずれかを含む分散型クラウドコンピューティング環境を含む。
【0046】
コンピュータシステムもしくは計算環境のプロセッサおよび/または他の態様のうちの1つ以上は移動物体からリモートであり得る。さらに、1つの特定の例では、プロセッサ604など、プロセッサは、トレーニングと学習とに基づいて移動物体のための最適進行ルートまたは経路を与えるために、1つ以上の機械学習エンジンおよび/または他のエンジンを本発明の1つ以上の態様に従って実行し得る。これらのエンジンは、メインメモリおよび/もしくは1つ以上のキャッシュ、ならびに/または外部ストレージを含むメモリに記憶され得、1つ以上のプロセッサ上で実行され得る。マンバリエーション(man variation)がある。
【0047】
本発明の1つ以上の態様は、コンピュータ技術、および/または技術分野の改善に密接に結び付いている。
【0048】
1つ以上の態様はクラウドコンピューティングに関し得る。本開示は、クラウドコンピューティングに関する詳細な説明を含むが、本明細書で具陳された教示の実装はクラウドコンピューティング環境に限定されないことがあらかじめ理解される。むしろ、本発明の実施形態は、現在知られているまたは後で開発される他のタイプの計算環境とともに実装されることが可能である。
【0049】
クラウドコンピューティングは、最小の管理エフォートまたはサービスのプロバイダとの対話を用いて迅速にプロビジョニングされ、リリースされ得る、構成可能な計算リソース(たとえばネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共有されるプールへの便利なオンデマンドネットワークアクセスを可能にするためのサービス配信のモデルである。このクラウドモデルは、少なくとも5つの特性と、少なくとも3つのサービスモデルと、少なくとも4つの展開モデルとを含み得る。
【0050】
特性は以下のとおりである。
【0051】
オンデマンドセルフサービス。クラウド消費者は、サービスのプロバイダとの人間対話を必要とすることなしに自動的に必要に応じて、サーバ時間およびネットワークストレージなど、計算能力を一方向にプロビジョニングすることができる。
【0052】
ブロードネットワークアクセス。機能は、ネットワークを介して利用可能であり、異種のシンまたはシッククライアントプラットフォーム(たとえば、モバイルフォン、ラップトップ、およびPDA)による使用を促進する標準機構を通してアクセスされる。
【0053】
リソースプーリング。プロバイダの計算リソースは、需要に応じて動的に割り当てられ、再割り当てされる、異なる物理リソースおよび仮想リソースをもつ、マルチテナントモデルを使用して複数の消費者をサービスするためにプールされる。消費者は、一般に、与えられたリソースの厳密なロケーションについて制御または知識を有さないが、より高い抽象レベルでロケーション(たとえば、国、州、またはデータセンター)を指定することが可能であり得るという点で、ロケーション独立の意味がある。
【0054】
迅速な弾性。機能は、急速にスケールアウトするために、場合によっては自動的に、迅速かつ弾性的にプロビジョニングされ、急速にスケールインするために迅速にリリースされ得る。消費者にとって、プロビジョニングのために利用可能な機能は、しばしば、無限であるように思われ、いつでも任意の量で購入され得る。
【0055】
測定されるサービス。クラウドシステムは、サービスのタイプ(たとえば、ストレージ、処理、帯域幅、およびアクティブユーザアカウント)に適切なある抽象レベルで測定機能を活用することによって、リソース使用を自動的に制御し、最適化する。リソース使用状況は監視され、制御され、報告されて、利用されるサービスのプロバイダと消費者の両方のために透明性を与え得る。
【0056】
サービスモデルは以下のとおりである。
【0057】
Software as a Service(SaaS)。消費者に提供される機能は、クラウドインフラストラクチャ上で動作しているプロバイダのアプリケーションを使用することである。アプリケーションは、ウェブブラウザ(たとえば、ウェブベース電子メール)など、シンクライアントインターフェースを介して様々なクライアントデバイスからアクセス可能である。消費者は、限られたユーザ固有のアプリケーション構成設定の可能な例外とともに、ネットワーク、サーバ、オペレーティングシステム、ストレージ、またはさらには個々のアプリケーション機能を含む、下にあるクラウドインフラストラクチャを管理または制御しない。
【0058】
Platform as a Service(PaaS)。消費者に提供される機能は、プロバイダによってサポートされるプログラミング言語およびツールを使用し、消費者により作成されたかまたは収集されたアプリケーションを、クラウドインフラストラクチャ上に展開することである。消費者は、ネットワーク、サーバ、オペレーティングシステム、またはストレージを含む、下にあるクラウドインフラストラクチャを管理または制御しないが、展開されるアプリケーションおよび場合によっては環境構成をホストするアプリケーションについて制御を有する。
【0059】
Infrastructure as a Service(IaaS)。消費者に提供される機能は、処理、ストレージ、ネットワーク、および他の基本計算リソースをプロビジョニングすることであり、消費者は、オペレーティングシステムとアプリケーションとを含むことができる任意のソフトウェアを展開し、実行することが可能である。消費者は、下にあるクラウドインフラストラクチャを管理または制御しないが、オペレーティングシステム、ストレージ、展開されるアプリケーションについての制御、および場合によっては、選択ネットワーキング構成要素(たとえば、ホストファイアウォール)の限られた制御を有する。
【0060】
展開モデルは以下のとおりである。
【0061】
プライベートクラウド。クラウドインフラストラクチャは団体のためにのみ動作させられる。クラウドインフラストラクチャは、団体または第三者によって管理され得、構内または構外に存在し得る。
【0062】
コミュニティクラウド。クラウドインフラストラクチャは、いくつかの団体によって共有され、懸案事項(たとえば、ミッション、セキュリティ要件、ポリシー、およびコンプライアンス考慮事項)を共有している特定のコミュニティをサポートする。クラウドインフラストラクチャは、団体または第三者によって管理され得、構内または構外に存在し得る。
【0063】
パブリッククラウド。クラウドインフラストラクチャは、一般社会または大きい産業グループにとって利用可能にされ、クラウドサービスを販売する団体によって所有される。
【0064】
ハイブリッドクラウド。クラウドインフラストラクチャは、一意のエンティティのままであるが、データおよびアプリケーションポータビリティ(たとえば、クラウドの間の負荷バランシングのためのクラウドバースティング)を可能にする、標準化されたまたはプロプライエタリ(proprietary)技術によって結び付けられた、2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)の合成である。
【0065】
クラウドコンピューティング環境は、ステートレスネス(statelessness)、低結合、モジュラリティ、およびセマンティック相互運用性に焦点を合わせてサービス志向される。クラウドコンピューティングの心臓部には、相互接続されたノードのネットワークを備えるインフラストラクチャがある。
【0066】
本発明の態様は、統合の可能な技術詳細レベルにおけるシステム、方法、および/またはコンピュータプログラム製品であり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるために、その上にコンピュータ可読プログラム命令を有する1つの(または複数の)コンピュータ可読記憶媒体を含み得る。
【0067】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のための命令を保持し、記憶することができる有形デバイスであり得る。コンピュータ可読記憶媒体は、たとえば、限定はしないが、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または上記の任意の好適な組合せであり得る。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、消去可能プログラマブル読取り専用メモリ(EPROMまたはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、その上に記録された命令を有するパンチカードまたは溝中の隆起構造などの機械的に符号化されたデバイス、および上記の任意の好適な組合せを含む。コンピュータ可読記憶媒体は、本明細書で使用する際、電波もしくは他の自由に伝搬する電磁波、導波路もしくは他の伝送媒体を通って伝搬する電磁波(たとえば、光ファイバーケーブルを通る光パルス)、または有線を通して送信される電気信号など、それ自体が一時的信号であるとして解釈されるべきでない。
【0068】
本明細書で説明するコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれの計算/処理デバイスにダウンロードされ得るか、またはネットワーク、たとえば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワークおよび/もしくはワイヤレスネットワークを介して外部コンピュータもしくは外部記憶デバイスにダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ファイバー、ワイヤレス送信、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータおよび/またはエッジサーバを備え得る。各計算/処理デバイス中のネットワークアダプタカードまたはネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれの計算/処理デバイス内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。
【0069】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、またはアンギュラ、HTML、CSS、ネットフレームワーク、C#およびマイクロソフトSQLサーバなどSmalltalk、C++などのオブジェクト指向プログラミング言語、ならびに「C」プログラミング言語もしくは同様のプログラミング言語などの手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組合せで書き込まれたソースコードもしくはオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、スタンドアロンソフトウェアパッケージとして、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上でおよび部分的にリモートコンピュータ上でまたは完全にリモートコンピュータもしくはリモートサーバ上で実行し得る。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通してユーザのコンピュータに接続され得るか、または(たとえば、インターネットサービスプロバイダを使用してインターネットを通して)外部コンピュータへの接続が行われ得る。いくつかの実施形態では、たとえば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む電子回路は、本発明の態様を実行するために、電子回路を個人化するためにコンピュータ可読プログラム命令の状態情報を利用することによってコンピュータ可読プログラム命令を実行し得る。
【0070】
本発明の態様について、本発明の実施形態による方法、装置(システム)、ならびにコンピュータプログラム製品のフローチャート図および/またはブロック図を参照しながら本明細書で説明する。フローチャート図および/またはブロック図の各ブロック、ならびにフローチャート図および/またはブロック図中のブロックの組合せはコンピュータ可読プログラム命令によって実装され得ることが理解されよう。
【0071】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行する命令が、フローチャートおよび/またはブロック図の1つまたは複数のブロックで指定された機能/行為を実装するための手段を作成するように、機械を製造するために汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに与えられ得る。コンピュータ、プログラマブルデータ処理装置、および/または他のデバイスを特定の様式で機能するように指令することができるこれらのコンピュータ可読プログラム命令はまた、その中に記憶された命令を有するコンピュータ可読記憶媒体が、フローチャートおよび/またはブロック図の1つまたは複数のブロック中で指定された機能/行為の態様を実装する命令を含む製造品を備えるように、コンピュータ可読記憶媒体に記憶され得る。
【0072】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行する命令が、フローチャートおよび/またはブロック図の1つまたは複数のブロック中で指定された機能/行為を実装するように、コンピュータ実装プロセスを生成するために、一連の動作ステップをコンピュータ、他のプログラマブル装置、または他のデバイス上で実行させるためにコンピュータ、他のプログラマブルデータ処理装置もしくは他のデバイスにロードされ得る。
【0073】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の可能な実装形態のアーキテクチャ、機能、ならびに動作を示す。この点について、フローチャートまたはブロック図中の各ブロックは、指定された論理機能を実装するための1つ以上の実行可能命令を備える、モジュール、セグメント、または命令の部分を表し得る。いくつかの代替実装形態では、ブロック中で言及された機能は、図に示された順序を外れて行われ得る。たとえば、連続して示された2つのブロックは、事実上、実質的に同時に実行され得るか、またはブロックは、時々、関係する機能に応じて逆の順序で実行され得る。また、ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図中のブロックの組合せは、指定された機能もしくは行為を実行するかまたは専用ハードウェアとコンピュータ命令との組合せを実行する専用ハードウェアベースシステムによって実装され得ることに留意されたい。
【0074】
上記のことに加えて、1つ以上の態様が、顧客環境の管理を提供するサービスプロバイダによって与えられ、提供、展開、管理、サービスなどされ得る。たとえば、サービスプロバイダは、1つ以上の顧客のための1つ以上の態様を実行するコンピュータコードおよび/またはコンピュータインフラストラクチャを作成、維持、サポートなどすることができる。引き換えに、サービスプロバイダは、例として、サブスクリプションおよび/または料金契約の下で顧客から支払いを受け得る。追加または代替として、サービスプロバイダは、1つ以上のサードパーティへの広告コンテンツの売上高からの支払いを受け得る。
【0075】
一態様では、1つ以上の実施形態を実行するためのアプリケーションが展開され得る。一例として、アプリケーションの展開は、1つ以上の実施形態を実行するように動作可能なコンピュータインフラストラクチャを与えることを含む。
【0076】
さらなる態様として、コンピュータ可読コードを計算システム中に統合することを含む、コードが計算システムとの組合せで1つ以上の実施形態を実行することが可能である、計算インフラストラクチャが展開され得る。
【0077】
またさらなる態様として、コンピュータ可読コードをコンピュータシステム中に統合することを含む、計算インフラストラクチャを統合するためのプロセスが提供され得る。コンピュータシステムはコンピュータ可読媒体を備え、コンピュータ媒体は1つ以上の実施形態を備える。コードはコンピュータシステムとの組合せで1つ以上の実施形態を実行することが可能である。
【0078】
様々な実施形態について上記で説明したが、これらは例にすぎない。たとえば、異なるタイプの無人空中車両が使用され得、ならびに他のタイプのニューラルネットワークおよび/または発展的アルゴリズムが使用され得る。多くの変形体が可能である。
【0079】
さらに、他のタイプの計算環境が利益をもたらし、使用され得る。例として、システムバスによってメモリ要素に直接または間接的に結合された少なくとも2つのプロセッサを含む、プログラムコードを記憶および/または実行するために好適なデータ処理システムが使用可能である。メモリ要素は、たとえば、実行中にバルクストレージからコードが取り出されなければならない回数を低減するために、少なくとも何らかのプログラムコードの一時的記憶を行う、プログラムコードの実際の実行中に採用されるローカルメモリと、バルクストレージと、キャッシュメモリとを含む。
【0080】
(限定はしないが、キーボード、ディスプレイ、ポインティングデバイス、DASD、テープ、CD、DVD、サムドライブ(thumb drive)および他のメモリ媒体などを含む)入出力またはI/Oデバイスが、直接または介在するI/Oコントローラを通してシステムに結合され得る。また、データ処理システムが、介在するプライベートまたは公共ネットワークを通して他のデータ処理システムまたはリモートプリンタもしくはストレージデバイスに結合されるようになることを可能にするために、ネットワークアダプタがシステムに結合され得る。モデム、ケーブルモデム、およびイーサネットカードは利用可能なタイプのネットワークアダプタのほんの一部にすぎない。
【0081】
本明細書で使用した用語は、特定の実施形態のみについて説明する目的のものであり、限定的なものではない。本明細書で使用する際、単数形「a」、「an」および「the」は、コンテキストが別段に明示しない限り、複数形をも含むものである。さらに、「備える(comprise)」および/または「備える(comprising)」という用語は、本明細書で使用されるとき、述べられる特徴、整数、ステップ、動作、要素、および/または構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素および/またはそれのグループの存在または追加を除外しないことが理解されよう。
【0082】
もしあれば、以下の特許請求の範囲におけるすべての手段またはステッププラスファンクション要素の対応する構造、材料、行為、および等価物は、明確にクレームされるように、他のクレームされる要素との組合せで機能を実行するための任意の構造、材料、または行為を含むものである。1つ以上の実施形態についての説明は、例示および説明の目的で提示されたが、網羅的なものでも、開示された形に限定されるものでもない。多くの改変および変形が当業者に明らかになろう。実施形態は、様々な態様および実際的適用例を最も良く説明するために、また、他の当業者が、企図された特定の使用に好適であるような様々な改変をもつ様々な実施形態を理解することを可能にするために、選定され、説明された。