本開示の実施形態に関連した技術的解決策を示すために、実施形態の説明において参照される図面の簡単な導入を以下に提供する。明らかに、以下に説明する図面は、本開示の幾つかの例又は実施形態にすぎない。当業者であれば、更なる創造的な努力を行うことなく、これらの図面に従って本開示を他の同様のシナリオに適用することができる。別段の記載がない限り又は文脈から明らかでない限り、図面における同じ参照符号は、同じ構造体及び動作を指している。
個数が特定されていないものが本開示及び添付の特許請求の範囲において用いられているとき、それらは、内容が明らかに別のことを規定していない限り、単数のもの及び複数のものを含む。「備える」及び/又は「含む」という用語は、本開示において用いられるとき、明示されたステップ及び要素の存在を明記しているが、1つ以上の他のステップ及び要素の存在又は追加を排除するものではないことが更に理解されるであろう。
システムの幾つかのモジュールは、本開示の幾つかの実施形態に従って、様々な方法で参照される場合があるが、クライアント端末及び/又はサーバーでは、任意の数の異なるモジュールが用いられ、動作されてもよい。これらのモジュールは、例示であることが意図され、本開示の範囲を限定することを意図するものではない。システム及び方法の異なる態様では、異なるモジュールが用いられてもよい。
本開示の幾つかの実施形態によれば、フローチャートは、システムによって実行される動作を示すのに用いられる。上記又は下記の動作は順番に実施されてもよいし、されなくてもよいことが明らかに理解されることであろう。逆に、動作は、逆順に実行されてもよいし、同時に実行されてもよい。その上、1つ以上の他の動作がフローチャートに追加されてもよいし、1つ以上の動作がフローチャートから省略されてもよい。
本開示の実施形態は、異なる輸送システムに適用されてもよい。これらの異なる輸送システムには、陸上輸送、海上輸送、空輸、宇宙輸送等、又はそれらの任意の組み合わせが含まれるが、これらに限定されるものではない。輸送システムの車両は、人力車、移動ツール(travel tool)、タクシー、運転手付き乗用車、ヒッチ(hitch)、バス、鉄道輸送(例えば、列車、弾丸列車、高速鉄道、及び地下鉄)、船舶、飛行機、宇宙船、熱気球、無人車両等、又はそれらの任意の組み合わせを含んでもよい。また、輸送システムは、管理及び/又は配送を利用する任意の輸送システム、例えば、速達を送り及び/又は受け取るシステムも含んでもよい。本開示の異なる実施形態の応用シナリオは、1つ以上のウェブページ、ブラウザープラグイン及び/又は拡張、クライアント端末、カスタムシステム、社内解析システム、人工知能ロボット等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。本明細書に開示されたシステム及び方法の応用シナリオは、幾つかの例又は実施形態にすぎないことが理解されるであろう。当業者であれば、更なる創造的な努力を行うことなく、これらの図面を他の応用シナリオに適用することができる。例えば、他の同様のユーザーオーダー受信システムである。
本開示における「ユーザー」、「乗客」、「要求者」、「サービス要求者」、及び「客」という用語は、サービスを要求又はオーダーすることができる個人、団体又はツールを指すために区別なく用いられる。当事主体は、個人であってもよいし、デバイスであってもよい。また、本開示における「ドライバー」、「提供者」、「サービス提供者」、及び「サプライヤー」という用語は、サービスを提供することができ又はサービスの提供を容易にすることができる個人、団体、又はデバイスを指すために区別なく用いられる。加えて、本開示における「ユーザー」という用語は、サービスを要求することができ、サービスをオーダーすることができ、サービスを提供することができ、又はサービスの提供を容易にすることができる個人、団体、又はデバイスを指してもよい。
図1−Aは、本開示の幾つかの実施形態に係るネットワーク環境100の概略図である。ネットワーク環境100は、オン・デマンドサービスシステム105と、1つ以上の乗客端末デバイス120と、1つ以上のデータベース130と、1つ以上のドライバー端末デバイス140と、1つ以上のネットワーク150と、1つ以上の情報源160とを備えることができる。オン・デマンドサービスシステム105は、測位エンジン110を備えることができる。幾つかの実施形態では、測位エンジン110は、収集された情報を解析及び処理して解析結果を生成するように構成されたシステムとすることができる。測位エンジン110は、サーバーであってもよいし、有線ネットワーク又は無線ネットワークを介して接続されたサーバーグループであってもよい。サーバーグループは、集中型(例えば、データセンター)であってもよいし、分散型(例えば、分散システム)であってもよい。測位エンジン110は、集中型であってもよいし、分散型であってもよい。
乗客端末120及びドライバー端末140は、ユーザーと呼ばれる場合があり、このユーザーは、それぞれサービスオーダー要求者及びサービス提供者等のサービスオーダーに直接関係する個人、ツール又は他の団体であってもよい。乗客はサービス要求者であってもよい。本開示において、「乗客」、「乗客端末」、及び「乗客端末デバイス」は区別なく用いられる場合がある。ドライバーはサービス提供者であってもよい。本開示において、「ドライバー」、「ドライバー端末」、及び「ドライバー端末デバイス」は、区別なく用いられる場合がある。ユーザーがデバイスである幾つかの実施形態では、乗客端末120は、デスクトップコンピューター120−1、ラップトップコンピューター120−2、車両のビルトインデバイス120−3、モバイルデバイス120−4等、又はそれらの任意の組み合わせを含んでもよい。本明細書において、ビルトインデバイス120−3は、カーピューター(carputer)等であってもよく、モバイルデバイス120−4は、スマートフォン、パーソナルデジタルアシスタント(PDA)、タブレットコンピューター、ハンドヘルドゲームプレイヤー、スマートグラス、スマートウォッチ、ウェアラブルデバイス、仮想現実デバイス、拡張現実デバイス(例えば、Google(登録商標)グラス、Oculus Rift(登録商標)、HoloLens、Gear(商標)VR等)等、又はそれらの任意の組み合わせであってもよい。ドライバー端末140も、上記で説明した1つ以上の同様のデバイスを含んでもよい。
測位エンジン110は、データベース130に記憶された情報に直接アクセスすることができ、及び/又はデータベース130から情報を読み出こともできるし、データベース130に情報を書き込むこともできる。測位エンジン110は、ネットワーク150を介してユーザー端末120又は140によって提供される情報にもアクセスすることができる。幾つかの実施形態では、データベース130は、データを記憶することが可能な任意のデバイスを含むことができる。データベース130は、乗客端末120及び/又はドライバー端末140によって収集されるデータと、測位エンジン110によって使用、生成又は出力されるデータとを記憶するのに用いられてもよい。データベース130と、オン・デマンドサービスシステム105及び/又はシステム105の1つ以上の構成部分(例えば、測位エンジン110)とは、1つ以上の有線コミュニケーションリンク及び/又は無線コミュニケーションリンクを介して接続されてもよい。
ネットワーク150は、単一のネットワーク又はネットワークの組み合わせであってもよい。例えば、ネットワーク150は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、パブリックネットワーク、プライベートネットワーク、独自開発ネットワーク、公衆交換電話網(PSTN)、インターネット、無線ネットワーク、ヴァーチャルネットワーク、又はそれらの任意の組み合わせを含んでもよい。ネットワーク150は、ベースステーション(基地局)150−1、ベースステーション(基地局)150−2、ネットワークスイッチポイント等を含む有線アクセスポイント又は無線アクセスポイント等の複数のネットワークアクセスポイントを備えることができる。これらのネットワークアクセスポイントを通じて、任意のデータ源をネットワーク150に接続して、ネットワーク150を介して情報を送信することができる。単なる例示として、輸送サービスにおけるドライバー端末140が一例として取り上げられているが、これは、本開示の範囲を限定することを意図するものではない。例えば、ドライバー端末140は、モバイルフォン、タブレットコンピューター等であってもよい。ドライバー端末140のネットワーク環境100は、無線ネットワーク(例えば、Bluetooth(登録商標)ネットワーク、無線ローカルエリアネットワーク(WLAN)、Wi−Fi等)、モバイルネットワーク(例えば、2G信号、3G信号、4G信号等)、又は他のコミュニケーション方法(例えば、仮想プライベートネットワーク(VPN)、共有ネットワーク、近接場通信(NFC)、ZigBee(登録商標)等)であってもよい。
情報源160は、システム105用の他の情報を提供するように構成された情報源であってもよい。情報源160は、気象状況、交通情報、法規制の情報、ニュースイベント、生活情報、生活ガイド情報等のサービス情報をシステム105に提供してもよい。情報源160は、単一の中央サーバー、ネットワークを介して接続された複数のサーバー、複数の個人デバイス等の形態で存在してもよい。情報源160が複数の個人デバイスを用いて実施されているとき、これらの個人デバイスは、例えば、テキスト、音声、画像及びビデオをクラウドサーバーにアップロードすることによってコンテンツ(例えば、「ユーザー生成コンテンツ」と呼ばれる)を生成することができる。情報源は、複数の個人デバイス及びクラウドサーバーによって生成されてもよい。
一例として輸送サービスを取り上げると、情報源160は、地図情報及び都市サービス情報を含む市営サービスシステム、リアルタイム交通放送システム、気象放送システム、ニュースネットワーク等を含んでいてもよい。情報源160は、車両速度計、レーダー速度計、温湿度センサー等を含む一般的な速度計測デバイス、センサー、又はIOT(モノのインターネット)デバイス等の物理デバイスであってもよい。情報源160は、ニュース、メッセージ、リアルタイム道路情報等を取得するように構成された情報源であってもよい。例えば、情報源160は、Usenetに基づくインターネットニュースグループ、インターネット上のサーバー、気象情報サーバー、道路状況情報サーバー等、又はそれらの任意の組み合わせを含むネットワーク情報源であってもよい。一例としてフードデリバリーサービスを取り上げると、情報源160は、特定の地域における複数のフード提供者の情報を記憶するシステム、地図情報及び都市サービス情報を含む市営サービスシステム、リアルタイム交通放送システム、気象放送システム、ニュースネットワーク等であってもよい。本明細書において説明する例は、情報源の範囲も、情報源によって提供されるサービスのタイプも限定することを意図するものではない。サービスの情報を提供することができる任意のデバイス又はネットワークを、本願における情報源として指定することができる。
幾つかの実施形態では、オン・デマンドサービスシステム105及びネットワーク環境100内の異なるセクション(section:部分)は、オーダーに基づいて通信されてもよい。オーダーの対象は商品(product:生産品)であってもよい。幾つかの実施形態では、この商品は、有形商品であってもよいし、無形商品であってもよい。有形商品は、食料品、医薬品、商品、化学製品、電気器具、衣料品、車両、家屋物件、高級品等、又はそれらの任意の組み合わせを含む、形状又はサイズを有する任意の物であってもよい。無形商品は、サービス財、金融商品、知的産物、インターネット商品等、又はそれらの任意の組み合わせを含んでもよい。インターネット商品は、情報、娯楽、コミュニケーション、又はビジネスに関するユーザーの要件を満たす任意の商品を含んでいてもよい。インターネット商品を分類する多くの方法がある。一例としてホストプラットフォームに基づく分類方法を取り上げると、インターネット商品は、パーソナルホスト商品、ウェブ商品、モバイルインターネット商品、商用ホストプラットフォーム商品、組み込み商品等、又はそれらの任意の組み合わせを含んでもよい。モバイルインターネット商品は、モバイル端末において用いられるソフトウェア、プログラム又はシステムであってもよい。モバイル端末は、ラップトップコンピューター、タブレットコンピューター、モバイルフォン、パーソナルデジタルアシスタント(PDA)、電子時計、POSマシン、カーピューター、テレビ等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。例えば、モバイルインターネット商品は、コンピューター又はモバイルフォンにおいて用いられるソーシャルコミュニケーション、ショッピング、旅行、娯楽、学習、又は投資のソフトウェア又はアプリケーションを含んでもよい。旅行のソフトウェア又はアプリケーションは、旅行ソフトウェア又は旅行アプリケーション、車両予約ソフトウェア又は車両予約アプリケーション、地図ソフトウェア又は地図アプリケーション等であってもよい。車両予約ソフトウェア又は車両予約アプリケーションは、馬、運搬車、人力車(例えば、二輪自転車、三輪自転車等)、車両(例えば、タクシー、バス等)、列車、地下鉄、船舶、航空機(例えば、飛行機、ヘリコプター、スペースシャトル、ロケット、熱気球等)等、又はそれらの任意の組み合わせを予約するのに用いられてもよい。
図1−Bは、ネットワーク環境100を示す概略図である。図1−Bは、図1−Aと類似している。図1−Bでは、データベース130は、独立しており、ネットワーク150に直接接続されてもよい。オン・デマンドサービスシステム105若しくはシステム105の一部分(例えば、測位エンジン110)、及び/又はユーザー端末120若しくは140は、ネットワーク150を介してデータベース130に直接アクセスすることができる。
図1−A及び/又は図1−Bにおいて、データベース130と、オン・デマンドサービスシステム105、システム105の一部分(例えば、測位エンジン110)、及び/又はユーザー端末デバイス120若しくは140とは、異なる方法で接続されてもよい。データベース130への各デバイスのアクセス許可は制限されてもよい。例えば、オン・デマンドサービスシステム105、又はシステム105の一部分(例えば、測位エンジン110)は、データベース130への最高レベルのアクセス許可を有することができ、例えば、データベース130内の公衆情報又は個人情報を読み出す許可又は変更する許可が認められ、幾つかの特定の条件が満たされているときに、乗客端末デバイス120又はドライバー端末デバイス140が公衆情報又はユーザーに関連した個人情報のうちの幾つかを読み出すことを許可することができる。例えば、オン・デマンドサービスシステム105は、当該オン・デマンドサービスシステム105を用いているユーザー(乗客又はドライバー)の経験のうちの1つに基づいて、データベース130内の公衆情報又はユーザー関連情報を更新又は変更することができる。別の例として、ドライバー140は、乗客120からサービスオーダーを受け取ると、データベース130内の乗客120の情報のうちの幾つかを閲覧することができる。一方、ドライバー140は、データベース130内の乗客の情報を勝手に変更することはできず、オン・デマンドサービスシステム105に変更の報告のみを行うことができ、オン・デマンドサービスシステム105が、それに応じて、データベース130内の乗客120の情報を変更するか否かを決定することができるようにする。別の例として、乗客120は、ドライバー140からサービス要求を受け取ると、データベース130内のドライバー140の情報のうちの幾つか(例えば、ユーザー格付け情報、運転経験等)を閲覧することができる一方、乗客120は、データベース130内のドライバー140の情報を勝手に変更することはできず、オン・デマンドサービスシステム105に変更の報告のみを行うことができ、システム105が、それに応じて、データベース130内のドライバー140の情報を変更するか否かを決定することができるようにする。
当然ながら、位置に基づくサービスシステムの上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続されてもよく、本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、データベース130は、データ記憶機能を有するクラウドコンピューティングプラットフォームであってもよく、パブリッククラウド、プライベートクラウド、コミュニティクラウド、ハイブリッドクラウド等が含まれるが、これらに限定されるものではない。そのような全ての変更は、本開示の保護範囲内にある。
図2は、本開示の幾つかの実施形態に係る一例示的なシステムの概略ブロック図である。簡潔にするために、オン・デマンドサービスシステム105は、この図には示されておらず、測位エンジン110が一例として示されている。測位エンジン110は、1つ以上の処理モジュール210と、1つ以上の記憶モジュール220と、1つ以上の乗客インターフェース230と、1つ以上のドライバーインターフェース240とを備えることができる。測位110のこれらのモジュールは、集中型であってもよいし、分散型であってもよい。測位110の1つ以上のモジュールは、ローカルであってもよいし、リモートであってもよい。幾つかの実施形態では、測位エンジン100は、ウェブサイトサーバー、ファイルサーバー、データベースサーバー、FTPサーバー、アプリケーションサーバー、プロキシサーバー、メールサーバー等、又はそれらの任意の組み合わせであってもよい。
幾つかの実施形態では、測位エンジン110は、乗客インターフェース230を通じて乗客120から情報を受信し、及び/又は乗客120に処理された情報を送信することができる。情報は、1つ以上の乗客端末デバイス120及び/又は1つ以上のドライバー端末デバイス140からネットワーク150を介して乗客インターフェース230及び/又はドライバーインターフェース240を通じて直接取得することができる。これに代えて又はこれに加えて、情報は、情報源160から直接受信されてもよい。情報を送信又は受信する方法は間接的であってもよい。処理モジュール210は、1つ以上の情報源160に要求を送信することによって、必要とされる情報を取得することができる。情報源160内の情報は、気象状況、道路状況、交通状況等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
幾つかの実施形態では、処理モジュール210は、関連情報を処理するように構成されてもよい。処理モジュール210は、処理された情報を乗客インターフェース230及び/又はドライバーインターフェース240に送信してもよい。情報処理の方法は、記憶すること、分類すること、フィルタリングすること、変換すること、計算すること、検索すること、予測すること、トレーニングすること等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。幾つかの実施形態では、処理モジュール210は、中央処理装置(CPU)、特定用途向け集積回路(ASIC)、特定用途向け命令セットプロセッサ(ASIP)、物理処理装置(PPU)、デジタル処理プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックデバイス(PLD)、プロセッサ、マイクロプロセッサ、コントローラー、マイクロコントローラー等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
幾つかの実施形態では、乗客インターフェース230及びドライバーインターフェース240は、それぞれ乗客120及びドライバー140から情報を取得するのに用いることができる。本明細書において、この取得された情報は、サービスの要求についての情報、乗客若しくはドライバーの現在位置についての情報、乗客120/ドライバー140によって送信されたテキストについての情報、又は乗客120/ドライバー140によって送信された任意の情報(例えば、画像、ビデオコンテンツ、オーディオコンテンツ等のアップロードされた情報)であってもよい。取得された情報は、記憶モジュール220に記憶されてもよいし、処理モジュール210によって計算及び処理されてもよい。
幾つかの実施形態では、乗客インターフェース230及びドライバーインターフェース240は、処理モジュール210によって解析及び処理された情報を出力することができる。幾つかの実施形態では、この情報は、最適化された測位情報、オーダーの直接の情報、又はオーダーの処理された情報であってもよい。出力された情報は、乗客120及び/又はドライバー140に送信することができる。送信されない出力された情報は、データベース130又は記憶モジュール220に記憶されてもよい。
幾つかの実施形態では、データベース130は、(図1−Aに示すように)オン・デマンドサービスシステム105のバックグラウンドにおいて構成することができる。幾つかの実施形態では、データベース130は、(例えば、図1−Bに示すように)スタンドアローンデバイスであってもよく、ネットワーク150と直接接続してもよい。幾つかの実施形態では、データベース130は、オン・デマンドサービスシステム105又は測位エンジン110の一部分であってもよい。データベース130は、データを記憶することができる任意のデバイスを指すことができる。データベース130は、ユーザー120/140及び/又は情報源160から収集されたデータを記憶するのに用いることができる。データベース130は、測位エンジン110によって生成された様々なデータも記憶することができる。データベース130又はシステムの他の記憶デバイスは、読み出し/書き込み機能を有する媒体と呼ばれる場合がある。データベース130又はシステムの他の記憶デバイスは、内部デバイスであってもよいし、外部デバイスであってもよい。データベース130とシステム内の他の記憶デバイスとの間の接続は、有線であってもよいし、無線であってもよい。データベース130又はシステムの他の記憶デバイスは、階層データベース、ネットワークデータベース、リレーショナルデータベース等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
データベース130又はシステムの他の記憶デバイスは、情報をデジタル化し、その後、デジタル化された情報を電気記憶デバイス、磁気記憶デバイス又は光記憶デバイスに記憶してもよい。データベース130又はシステムの他の記憶デバイスは、プログラム、データ等の様々な情報を記憶するのに用いられてもよい。データベース130又はシステムの他の記憶デバイスは、電気エネルギーの形態で情報を記憶するように構成されてもよく、例えば、複数のメモリ、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)等であってもよい。RAMは、デカトロン、セレクトロン、遅延線メモリ、ウィリアムス管、ダイナミックランダム・アクセス・メモリ(DRAM)、スタティックランダム・アクセス・メモリ(SRAM)、サイリスターランダム・アクセス・メモリ(T−RAM)、ゼロキャパシタランダム・アクセス・メモリ(Z−RAM)等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。ROMは、バブルメモリ、ツイスターメモリ、薄膜メモリ、磁気プレーテッドワイヤメモリ、磁気コアメモリ、磁気ドラムメモリ、CD−ROM、ハードディスク、テープ、初期不揮発性ランダム・アクセス・メモリ(NVRAM)、相変化メモリ、磁気抵抗ランダム・アクセス・メモリ、強誘電性ランダム・アクセス・メモリ、不揮発性SRAM、フラッシュメモリ、電気的消去可能プログラマブルリード・オンリー・メモリ、消去可能プログラマブルリード・オンリー・メモリ、プログラマブルリード・オンリー・メモリ、マスクROM、フローティング接続ゲートランダム・アクセス・メモリ、ナノランダム・アクセス・メモリ、レーストラックメモリ、可変抵抗ランダム・アクセス・メモリ、プログラマブルメタライゼーションユニット等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。データベース130又はシステムの他の記憶デバイスは、磁気エネルギーを利用して情報を記憶するのに用いられてもよく、ハードディスク、ソフトウェア、テープ、磁気コアメモリ、バブルメモリ、USBフラッシュディスク、フラッシュメモリ等であってもよい。データベース130又はシステムの他の記憶デバイスは、コンパクトディスク(CD)、デジタルビデオディスク(DVD)等の光学機器の形態で情報を記憶するのに用いられてもよい。データベース130又はシステムの他の記憶デバイスは、光磁気の形態で情報を記憶するのに用いられてもよく、例えば、磁気ディスク等であってもよい。データベース130又はシステム105の他の記憶デバイスにアクセスする方法は、ランダムアクセス、シリアルアクセス記憶、リード・オンリーアクセス等、又はそれらの任意の組み合わせを含んでもよい。データベース130又はシステム105の他の記憶デバイスは、揮発性メモリであってもよいし、不揮発性メモリであってもよい。当然ながら、記憶デバイスの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。データベース130又はシステム105の他の記憶デバイスは、ローカルであってもよいし、リモートであってもよい。
当然ながら、上記で説明した処理モジュール210及び/又はデータベース130は、ユーザー端末に存在してもよいし、クラウドコンピューティングプラットフォームを介して対応する機能を実施してもよい。クラウドコンピューティングプラットフォームは、主としてデータ記憶に用いられる記憶ベースのクラウドプラットフォーム、主としてデータ処理に用いられる計算ベースのクラウドプラットフォーム、データ記憶及びデータ処理の双方に用いられるハイブリッドクラウドプラットフォーム等を含んでもよいが、これらに限定されるものではない。ユーザー端末によって用いられるクラウドプラットフォームは、パブリッククラウド、プライベートクラウド、コミュニティクラウド、ハイブリッドクラウド等であってもよい。例えば、ユーザー端末によって取得された幾つかのオーダー情報及び/又は非オーダー情報は、実際の要件に従ってユーザークラウドプラットフォームによって計算及び/又は記憶されてもよい。幾つかの他のオーダー情報及び/又は非オーダー情報は、ローカル処理モジュール及び/又はシステムデータベースによって計算及び/又は記憶されてもよい。
図2における測位エンジン110は様々な方法によって実施されてもよいことが理解されるであろう。例えば、測位エンジン110は、ハードウェア、ソフトウェア又はそれらの組み合わせによって実施されてもよい。ハードウェアは、専用ロジックによって実施されてもよい。ソフトウェアは、メモリに記憶されてもよく、適切な命令実行システム(例えば、マイクロプロセッサ、専用設計ハードウェア等)によって実施されてもよい。上記方法及び上記システムは、コンピューター実行可能命令及び/又はプロセッサの組み込み制御コードによって実施されてもよいことが当業者によって理解されよう。例えば、制御コードは、ディスク、CD若しくはDVD−ROM、リード・オンリー・メモリ(例えば、ファームウェア)等のプログラマブルメモリデバイス、又は光信号搬送波若しくは電気信号搬送波等のデータ搬送波等の媒体によって提供されてもよい。測位エンジン110及びそのモジュールは、超大規模集積回路若しくは超大規模ゲートアレイ、ロジックチップ、トランジスタ等の半導体デバイス、又はフィールドプログラマブルゲートアレイ、プログラマブルロジックデバイス等のプログラマブルハードウェアデバイスのハードウェア回路によって実施されてもよいだけでなく、様々なタイプのプロセッサにおいて実行されるソフトウェア、又は上記ハードウェア回路及びソフトウェア(例えば、ファームウェア)の組み合わせによって実施されてもよい。
当然ながら、測位エンジン110の上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続してもよく、本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、処理モジュール210、記憶モジュール220、乗客インターフェース230、ドライバーインターフェース240、及びデータベース130は、1つのシステム内の異なるモジュールであってもよいし、上記モジュールのうちの2つ以上の対応する機能を実行する単一のモジュールとして組み合わされてもよい。例えば、乗客インターフェース230及びドライバーインターフェース240は、乗客端末デバイス120及びドライバー端末デバイス140と同時にインタラクトすることができる単一のインターフェースとして組み合わされてもよい。例えば、データベース130は、測位エンジン110に含まれてもよく、データベース130及び記憶モジュール220の全ての機能は、単一の記憶デバイスによって実施されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図3は、本開示の幾つかの実施形態に係る測位エンジン110の処理モジュール210を示す概略ブロック図である。処理モジュール110は、住所解析ユニット310と、画像処理ユニット320と、待ち合わせ位置処理ユニット330と、経路処理ユニット340と、識別情報検索ユニット350と、識別情報追加ユニット360と、オーディオ処理ユニット370とを備えることができる。加えて、処理モジュール210は、他のユニットも備えてもよい。
住所解析ユニット310は、住所情報を処理するように構成することができる。住所情報を処理する方法は、住所情報の解析及び/又は逆解析を含んでもよい。逆解析は、住所座標を、当該住所座標に対応する位置のテキスト情報に変換することを含んでもよい。解析は、位置のテキスト情報を住所座標に変換することを含んでもよい。住所座標は、例えば、経緯度の座標であってもよい。テキスト情報は、位置の一般名、番地、ランドマークの名称等の位置の象徴的名称及び代表的名称のうちの1つ以上のものであってもよい。また、住所解析ユニット310は、処理された住所情報を、経路処理ユニット340、識別情報検索ユニット350、画像処理ユニット320、待ち合わせ位置処理ユニット330、オーディオ処理ユニット370等の他のユニットに送信することができる。
画像処理ユニット320は、画像データ(例えば、静止画像、ビデオ等)を処理して、処理された画像情報を取得するのに用いることができる。画像データは、画像強調、画像認識、画像セグメンテーション、画像測定(例えば、角度、距離、及び背景的関係の計算)等、又はそれらの任意の組み合わせ等の1つ以上の画像処理方法を用いて処理されてもよい。画像処理ユニット320によって特定された画像情報は、対応する住所情報を検索するために住所解析ユニット310に入力することができる。画像処理ユニット320は、他のユニット、例えば、識別情報検索ユニット350からも情報を取得してもよい。
待ち合わせ位置処理ユニット330は、乗客及びドライバーが乗客端末120及び/又はドライバー端末140によって提供された住所情報に従って出会うための1つ以上の位置を計算及び特定することと、待ち合わせ位置をフィルタリングするために待ち合わせ位置の選択、除外又は評価についての乗客端末120及び/又はドライバー端末140からのフィードバック情報を処理することとに用いることができる。待ち合わせ位置処理ユニット330は、住所解析ユニット310によって解析又は逆解析された住所情報に基づいて待ち合わせ位置を計算することができる。また、待ち合わせ位置処理ユニット330は、取得された待ち合わせ位置を経路処理ユニット340に送信することができる。
経路処理ユニット340は、乗客端末デバイス120及びドライバー端末デバイス140によって提供された測位情報に基づいて、乗客の移動経路及びドライバーの運転経路(例えば、ドライバーの位置から乗客の位置への経路)を計算及び計画することができる。経路処理ユニット340は、待ち合わせ位置処理ユニット330から取得された待ち合わせ位置情報に基づいてドライバーの経路を計画することができる。幾つかの実施形態では、経路処理ユニット340は、識別情報検索ユニット350によって発見された識別情報を用いて経路を計画することができる。識別情報検索ユニット350は、或る位置の近くの地理的識別情報を検索するのに用いることができる。識別情報追加ユニット360は、地理的位置情報の識別情報を追加するのに用いることができる。オーディオ処理ユニット370は、乗客端末デバイス120又はドライバー端末デバイス140から取得されたオーディオ情報を処理するのに用いることができる。オーディオ情報は、ノイズリダクション、音声認識、意味認識、文字認識等の1つ以上のオーディオ処理方法を用いて処理されてもよい。オーディオ処理ユニット370は、特定されたオーディオ情報を処理のために他のユニットに送信してもよく、例えば、特定された住所情報は、住所解析ユニット310に送信されてもよい。
処理モジュール210の各サブユニット310〜370によって実行される動作及び/又はプロセスは、論理演算(例えば、「AND」演算、「OR」演算、「NOT」演算)又は数値に基づく演算等の論理に基づく演算を含んでもよい。処理モジュール210の各サブユニット310〜370は、1つ以上のプロセッサを備えてもよい。プロセッサは、プログラミングされたプログラマブルロジックデバイス(PLD)、特定用途向け集積回路(ASIC)、マイクロプロセッサ、システムオンチップ(SoC)等の任意の一般的なプロセッサであってもよい。また、プロセッサは、デジタル信号プロセッサ(DSP)等であってもよい。サブユニット310〜370のうちの2つ以上は、単一のハードウェアデバイスに統合されてもよいし、互いに独立した2つ以上のハードウェアデバイスに統合されてもよい。処理モジュール210のサブユニット310〜370は複数の方法で実施することができることが理解されるであろう。例えば、幾つかの実施形態では、システムは、ハードウェア、ソフトウェア又はそれらの任意の組み合わせによって実施されてもよい。システムは、超大規模集積回路若しくは超大規模ゲートアレイ、ロジックチップ、トランジスタ等の半導体デバイス、又はフィールドプログラマブルゲートアレイ、プログラマブルロジックデバイス等のプログラマブルハードウェアデバイスのハードウェア回路によって実施されてもよい。また、システムは、様々なタイプのプロセッサにおいて実行されるソフトウェア、又は上記ハードウェア回路及びソフトウェア(例えば、ファームウェア)の組み合わせによって実施されてもよい。
図4は、本開示の幾つかの実施形態に係る測位エンジン110における乗客インターフェース230の概略ブロック図である。乗客インターフェース230は、乗客情報受信ユニット410と、乗客情報解析ユニット420と、乗客情報送信ユニット430とを備えることができる。乗客情報受信ユニット410は、乗客によって送信された情報を受信することができ、この情報を認識、整理及び分類することができる。乗客によって送信される情報の内容は、測位技術を用いて確定された乗客の現在位置、乗客によって入力された現在位置若しくはピックアップ位置、サービスに関する乗客の選択/要件/説明情報、乗客が受け取ることを期待する情報のコンテンツ/フォーマット/時間/量等、又はそれらの任意の組み合わせに関するものであってもよい。乗客によって送信される情報のタイプの内容は、デバイス上で乗客によって入力される自然言語のテキスト情報、デバイスを用いて乗客によって送信されるバイナリー情報、乗客端末デバイス120のI/Oモジュール620によって記録されるオーディオ情報(乗客の1つ以上の音声入力を含む)、乗客端末デバイス120のI/Oモジュール620によって撮影される画像情報(静止画像又はビデオを含む)等、又はそれらの任意の組み合わせに関するものであってもよい。乗客は、ネットワーク150を介して乗客インターフェース230の乗客情報受信ユニット410に上記情報を提供することができる。乗客情報解析ユニット420は、乗客情報受信ユニット410によって受信された乗客情報を解析するのに用いることができる。この解析は、処理モジュール210又は記憶モジュール220が計算、処理又は記憶することができるフォーマットに乗客情報のコンテンツを変換するために、乗客情報を整理又は分類することを含んでもよい。乗客情報解析ユニット420は、処理モジュール210によって処理された情報又は記憶モジュール220に記憶された情報のフォーマットを、乗客が当該乗客の指示又は好みに基づいてアクセス又は選択することができるフォーマットに変換するのに用いることもできる。乗客情報解析ユニット420は、フォーマット変換された情報を乗客情報送信ユニット430に提供してもよい。乗客情報送信ユニット430は、測位エンジン110によって乗客に対して必要とされる情報をネットワーク150を介して乗客に送信するのに用いられてもよい。乗客情報受信ユニット410は、有線受信デバイスを備えてもよいし、無線受信デバイスを備えてもよい。この受信デバイスは、ネットワーク150を介して乗客端末デバイス120に接続してもよい。同様に、乗客情報送信ユニット430は、有線送信デバイスを備えてもよいし、無線送信デバイスを備えてもよい。この送信デバイスは、ネットワーク150を介して乗客端末デバイス120に接続してもよい。
図5は、本開示の幾つかの実施形態に係る測位エンジン110におけるドライバーインターフェース240の概略ブロック図である。図5に示すように、ドライバーインターフェース240は、ドライバー情報受信ユニット510と、ドライバー情報解析ユニット520と、ドライバー情報送信ユニット530とを備えることができる。ドライバー情報受信ユニット510は、ドライバーのデバイスを通じてドライバーによって送信された情報を取得することができ、この情報を認識、整理及び分類することができる。ドライバーによって送信される情報の内容は、測位技術を用いて確定されたドライバーの現在位置に関するものであってもよい。また、情報のコンテンツは、運転速度、ドライバーによって返される現在のサービス状況(例えば、乗車中、乗客の乗車待ち中、アイドル運転中(例えば、乗客を運んでいない運転中))、サービス要求に対するドライバーの選択/受理/拒否情報等、又はそれらの任意の組み合わせに関するものであってもよい。ドライバーによって送信される情報のタイプの内容は、自然言語によるテキスト情報に関するものであってもよく、或るデバイスにおいてドライバーによって入力されてもよい。送信される情報は、デバイスを用いてドライバーによって送信されるバイナリー情報、ドライバー端末デバイス140によって記録されるオーディオ情報(ドライバーの1つ以上の音声入力を含む)、ドライバー端末デバイス140によって取得される画像情報(静止画像又はビデオを含む)等、又はそれらの任意の組み合わせであってもよい。ドライバーは、ネットワーク150を介してドライバーインターフェース240のドライバー情報受信ユニット510に上記情報を送信することができる。ドライバー情報解析ユニット520は、ドライバー情報受信ユニット510によって受信されたドライバー情報を解析するのに用いることができる。この解析は、処理モジュール210又は記憶モジュール220が計算、処理又は記憶することができるフォーマットにドライバー情報のコンテンツを変換するために、この情報を整理又は分類することを含んでもよい。ドライバー情報解析ユニット520は、処理モジュール210によって処理された情報又は記憶モジュール220に記憶された情報のフォーマットを、乗員がドライバーの指示又は好みに基づいてアクセス又は選択することができる情報フォーマットに変換するのに用いることもできる。ドライバー情報解析ユニット520は、フォーマット変換された情報をドライバー情報送信ユニット530に提供してもよい。ドライバー情報送信ユニット530は、測位エンジン110によってドライバーに対して必要とされる情報をネットワーク150を介して送信するのに用いられてもよい。ドライバー情報受信ユニット510は、有線受信デバイスを備えてもよいし、無線受信デバイスを備えてもよい。この受信デバイスは、ネットワーク150を介してドライバー端末デバイス140に接続してもよい。同様に、ドライバー情報送信ユニット530は、有線送信デバイスを備えてもよいし、無線送信デバイスを備えてもよい。この送信デバイスは、ネットワーク150を介してドライバー端末デバイス140に接続してもよい。
幾つかの実施形態では、図6は、乗客端末デバイス120及びドライバー端末デバイス140のブロック図である。一例として乗客端末デバイス120を取り上げると、乗客端末デバイス120は、図6に示すように、コンテンツ提示モジュール610と、I/Oモジュール620と、測位モジュール630と、コミュニケーションモジュール640と、処理モジュール650と、記憶モジュール660とを備えることができる。コンテンツ提示モジュール610は、オン・デマンドサービスアプリケーションのグラフィカルインターフェース、地図インターフェース及びI/Oオペレーティングインターフェースを表示するのに用いることができる。I/Oモジュール620は、乗客がオン・デマンドサービスアプリケーションのグラフィカルインターフェース、地図インターフェース及びI/Oオペレーティングインターフェースに入力する1つ以上のタイプの入力を取得するとともに、1つ以上のタイプでユーザーに提供されるのを待機している情報を出力するのに用いることができる。I/Oモジュール620は、信号変換等の方法によって静止画像、ビデオ、オーディオ等の形態でユーザー又は外部(例えば、周辺環境)の光及び音響等の1つ以上のタイプの情報を収集及び記録するのに用いることもできる。この入力及び/又は出力は、音響信号、光信号、機械振動信号等、又はそれらの任意の組み合わせの形態であってもよい。測位モジュール630は、1つ以上の測位技術/距離測定技術に基づいてユーザーの位置及び/又は動作ステータスを確定するのに用いることができる。より詳細には、ユーザーの位置及び/又は動作ステータスを確定することは、位置、速度、加速度、角速度、経路等のユーザーの1つ以上の動作パラメーターを計算することを含んでもよい。コミュニケーションモジュール640は、乗客端末デバイス120によって送信又は受信されるのを待機している情報を有線コミュニケーション又は無線コミュニケーションによって送信又は受信するのに用いることができる。例えば、コミュニケーションモジュール640は、乗客端末デバイス120が測位エンジン110に対して情報を送受信することができるように、測位エンジン110の乗客インターフェース230と通信することができる。幾つかの実施形態では、乗客端末デバイス120は、コミュニケーションモジュール640を介してドライバー端末デバイス140と通信することができる。例えば、乗客端末デバイス120及びドライバー端末デバイス140は、Bluetooth(登録商標)コミュニケーションを通じて互いに通信することができる。ドライバー端末デバイス140と乗客端末デバイス120との間の距離は、双方のデバイスのBluetooth(登録商標)がオンになっているとき、直接測定することができる。処理モジュール650は、乗客端末デバイス120が得た情報を計算及び処理するのに用いることができる。記憶モジュール660は、I/Oモジュール620、測位モジュール630又は処理モジュール650が取得、生成、計算又は処理した情報を記憶するのに用いることができる。
乗客端末デバイス120の上記説明は、ドライバー端末デバイス140に適用可能であり得る。
当然ながら、ユーザー端末デバイス120又は140の上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続してもよく、本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、コンテンツ提示モジュール610及びI/Oモジュール620は、システム内の異なるモジュールであってもよいし、双方のモジュールの機能を達成することが可能な単一のモジュールであってもよい。そのような全ての変更は、本開示の保護範囲内にある。
図7は、データベース130の概略図である。データベース130は、複数のコンテンツを有する様々な情報を記憶することができる。データベース130は、履歴オーダーデータベース710、地図データベース720、ユーザーデータベース730等を含むことができる。測位エンジン110又は他のモジュール若しくはユニットが、1つ以上のタイプの情報を必要としているとき、これらの情報は、データベース130から抽出されてもよい。履歴オーダーデータベース710は、履歴オーダーの開始位置、乗客及びドライバーの待ち合わせ位置、移動履歴、オーダーサービスの価格、オーダーサービスのチップ、オーダーの移動時間、平均移動速度、乗客及び/又はドライバーによって行われる履歴オーダーの評価等を含んでもよい。地図データベース720は、街路、橋梁、建物及び他の人造物等の人工物の地理的座標、河川、山岳、森林、湿地及び他の地勢の地理的座標、上記物の記述名又は識別情報(例えば、街路、邸宅(mansion:マンション)、河川、ストアの番号等)、上記物の画像情報等を含んでもよい。ユーザーデータベース730に記憶された情報は、アカウント名、表示名(例えば、ニックネーム)、証拠書類番号(例えば、運転免許証、IDカード等)、登録日、ユーザーレベル/優先度、クレジット記録、自宅住所、事業拠点、車両情報等のユーザー120又は140のサービスに関連した情報を含んでもよい。データベース130の異なるモジュール又は構成要素が、上記情報を記憶してもよい。複数のデータベース130が上記情報を記憶してもよく、これらの複数のデータベースは、有線コミュニケーション又は無線コミュニケーションによって互いに情報を交換することができる。
図8は、本開示の幾つかの実施形態に係る、乗客の正確な位置及び待ち合わせ位置を求める一例示的なプロセスのフローチャートである。当然ながら、正確な位置は、測位情報における誤差を修正及び削除することによって生成された結果を含んでもよい。測位情報は、測位デバイス又は測位モジュールが取得することができる。幾つかの実施形態では、正確な位置は、測位情報の他の表現方法を含んでもよい。例えば、乗客によって入力された位置が「No.3 Haidian Street」である場合、測位エンジン110は、ドライバーがより容易に理解することができる名称「Dinghao mansion」を生成してもよい。本開示の他の実施形態では、「最適化された位置情報」は、正確な位置を表現する別の方法とみなすことができる。
図8に示すように、ステップ810において、測位エンジン110は、現在位置に関する情報を取得することができる。ステップ810は、乗客インターフェース230及び/又はドライバーインターフェース240によって実施することができる。幾つかの実施形態では、現在位置に関する情報は、乗客端末デバイス120、ドライバー端末デバイス140、データベース130、及び/又は情報源160から取得することができる。現在位置に関する情報は、乗客の現在位置、ドライバーの現在位置、サービスの出発位置、及び/又はサービスの目的地を含んでもよいが、これらに限定されるものではない。乗客の現在位置及び/又はドライバーの現在位置は、乗客端末デバイス120、ドライバー端末デバイス140の測位モジュール630、又はI/Oモジュール620によって取得することができる。乗客の現在位置及び/又はドライバーの現在位置は、1つ以上の測位技術(例えば、全地球測位システム(GPS))を用いて取得される乗客及びドライバーの位置座標であってもよい。また、乗客の現在位置及び/又はドライバーの現在位置は、乗客又はドライバーによって入力されてもよい。幾つかの実施形態では、上記で説明した現在位置に関する情報は、乗客及び/又はドライバーの現在位置の周辺エリアについての他の情報を含んでもよい。この周辺エリアについての他の情報は、商業地域、住宅地域、景色、病院、学校、大型建築物、バスステーション、鉄道駅、地下鉄駅、空港、橋梁、交差点等、又はそれらの任意の組み合わせに関するものであってもよい。幾つかの実施形態では、現在位置に関する情報は、現在位置の周辺エリアに関する画像、ビデオ、オーディオ等を含んでもよい。この情報は、乗客端末デバイス120及び/又はドライバー端末デバイス140によってアップロードされてもよい。画像、ビデオ、及び/又はオーディオは、I/Oモジュール620によって取得されるものであってもよい。例えば、乗客は、携帯電話機を用いて自身の現在位置の周辺エリアにおけるランドマーク建物の写真を撮影し、この写真を測位エンジン110にアップロードしてもよい。別の例として、乗客は、自身の現在位置の周辺エリアの状況についての音声メッセージ又はビデオを作成し、この音声又はビデオを測位エンジン110に送信してもよい。
ステップ820において、測位エンジン110が現在位置に関する情報を得た後、測位エンジン110は、この現在位置に関する情報を処理することができる。ステップ820は、測位エンジン110の処理モジュール210が完了することができる。例えば、幾つかの実施形態では、測位エンジン110は、処理モジュール210の住所解析ユニット310及び画像処理ユニット320によって乗客の正確な位置を確定することができる。この確定することは、乗客の現在位置(例えば、GPSによって取得された位置)と、(ステップ830において)乗客によってアップロードされた周辺ランドマーク建物の写真とに基づいて行うことができる。乗客の現在位置は、住所解析ユニット310が解析することができる。画像処理ユニット320は、ランドマーク建物の1つ以上の名称を特定してもよい。画像処理ユニット320は、その後、ランドマーク建物の名称に基づいてデータベース130を用いて検索を行い、ランドマーク建物の測位情報を取得することができる。幾つかの実施形態では、測位エンジン110は、乗客の現在位置についてのビデオ又はオーディオを受信することができる。このビデオ又はオーディオに含まれる情報(例えば、乗客の現在位置に関する情報)は、ビデオ及びオーディオを解析することによって取得されるものであってもよい。ビデオ及びオーディオの解析は、処理ユニット210の画像処理ユニット320及び/又はオーディオ処理ユニット370によって実行されてもよい。加えて、幾つかの実施形態では、処理ユニット210による現在位置に関する情報の処理は、乗客の現在位置に基づいてデータベース130又は記憶モジュール220を直接検索することによって、現在位置に関する他の情報を取得することを含んでもよい。幾つかの実施形態では、処理モジュール210は、乗客の現在位置に基づいて現在位置に関する情報を直接取得してもよい。測位エンジン110は、例えば、乗客の現在位置の1つ以上の座標を得た後、データベース130を検索することによって乗客の現在位置の座標に関するランドマーク建物又はこの座標の近傍のランドマーク建物の名称を取得してもよい。
ステップ830において、正確な位置は、測位エンジン110によって、現在位置に関する情報の結果を処理することに基づいて確定することができる。例えば、幾つかの実施形態では、乗客の正確な位置は、測位エンジン110の処理モジュール210によって、乗客の現在位置と、ランドマーク建物の名称又は位置等の現在位置に関する解析された他の情報とに基づいて確定することができる。
当然ながら、上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、正確な位置の測位の様々な変形及び変更が本開示の教示の下で行うことができる。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。幾つかの実施形態では、幾つかのステップが追加又は省略されてもよい。例えば、測位エンジン110は、ステップ810及び/又はステップ820を実行することなく、乗客又はドライバーの正確な位置を直接取得してもよい。例えば、乗客は、ショッピングモール又はオフィスビル等の幾つかの建物においてクイックレスポンスコードを直接スキャンしてもよい。クイックレスポンスコードは、乗客の正確な位置を直接示してもよい。測位エンジン110は、乗客によって送信されたクイックレスポンスコードを直接受信してもよい。そのような全ての変形及び変更は、本開示の保護範囲内にある。
幾つかの実施形態では、乗客の現在位置は、乗客が乗車する位置である。したがって、乗客は、自身の現在位置をオーダーの開始位置として提供してもよい。当然ながら、乗客が乗車する位置は、乗用車の乗客及びドライバーの待ち合わせ位置であってもよい。幾つかの実施形態では、ドライバーは、オーダーを受け取って、その位置に直接運転して向かってもよい。換言すれば、乗客の現在位置は、ドライバー及び乗客の最終待ち合わせ位置である。幾つかの実施形態では、乗客の現在位置は、ドライバー及び乗客の待ち合わせ位置でなくてもよい。例えば、乗客の現在位置は、ショッピングモール内の或る場所であってもよく、ドライバー及び乗客の待ち合わせ位置は、ショッピングモールの出口又はショッピングモールの近くの他の場所であってもよい。したがって、ドライバー及び乗客の待ち合わせ位置を確定することが必要である。
ステップ840において、測位エンジン110は、1つ以上の候補待ち合わせ位置を生成することができる。幾つかの実施形態では、乗客がオーダーの開始位置を選択するとき、1つ以上の選択肢が、測位エンジン110によって乗客に提供されてもよい。これらの選択肢は、乗客の現在位置又は乗客の現在位置の近くの他の位置であってもよい。選択肢は、測位エンジン110に記憶されていてもよいし、データベース130又は情報源160から取得されてもよい。その上、選択肢は、乗客がオーダーの開始位置を入力した後に、オーダーに基づいて生成されてもよい。幾つかの実施形態では、測位エンジン110は、或る位置に関する1つ以上の待ち合わせ位置を記憶していてもよい。測位エンジン110は、その位置及び乗客に関する1つ以上の待ち合わせ位置を記憶していてもよい。オーダーの開始位置が確定された後、測位エンジン110は、その位置及び/又は乗客に関する1つ以上の待ち合わせ位置を直接抽出してもよい。その場合、測位エンジン110は、抽出された待ち合わせ位置を乗客端末デバイス120及び/又はドライバー端末デバイス140に送信してもよい。幾つかの実施形態では、測位エンジン110は、オーダーの開始位置を受信した後、道路状況、気象状況、時刻等、又はそれらの任意の組み合わせ等の幾つかの追加の情報を考慮して、乗客及びドライバーが互いに出会うのが容易である待ち合わせ位置の幾つかの推薦結果を生成してもよい。上記追加の情報は、オーダーがラッシュアワー内であるか否か、入力された開始位置の近くにおいて入力されたオーダーの時間帯内にイベント(例えば、大きな試合)があるか否か、道路がメンテナンス中若しくは閉鎖中であるか否か、公共交通が正常動作しているか否か等、又はそれらの任意の組み合わせを含んでもよい。幾つかの実施形態では、測位エンジン110は、オーダーの開始位置及び終了位置(例えば、オーダーの目的地)を組み合わせることによって1つ以上の候補待ち合わせ位置を生成してもよい。
ステップ850において、測位エンジン110は、生成された候補待ち合わせ位置を乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、システムに記憶された幾つかの事前に設定された待ち合わせ位置が、乗客及び/又はドライバーの選択用に提供されてもよい。乗客端末デバイス120及び/又はドライバー端末デバイス140は、これらの事前に設定された待ち合わせ位置を処理してもよい。事前に設定された待ち合わせ位置のこの処理は、事前に設定された待ち合わせ位置のうちの1つを最終待ち合わせ位置として直接受信又は選択すること、事前に設定された待ち合わせ位置のうちの1つ以上を除去すること、残りの事前に設定された待ち合わせ位置を測位エンジン110に返すこと等を含むことができるが、これらに限定されるものではない。
ステップ860において、測位エンジン110は、候補待ち合わせ位置の処理結果を乗客端末デバイス120及び/又はドライバー端末デバイス140から受信することができる。ステップ870において、この処理結果を測位エンジン110によって更に処理して、最終待ち合わせ位置(例えば、最適化された待ち合わせ位置)を生成することができる。幾つかの実施形態では、測位エンジン110は、候補待ち合わせ位置を評価し、この評価に基づいて最終待ち合わせ位置を確定してもよい。この評価は、候補待ち合わせ位置と乗客の現在位置との間の距離、候補待ち合わせ位置周辺の道路状況、候補待ち合わせ位置と乗客の目的地との間の相対的な向き等の単数及び/又は複数の基準に基づいて行われてもよい。ステップ880において、測位エンジン110は、待ち合わせ位置を表示するために、最適化された待ち合わせ位置情報を乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。
待ち合わせ位置、ドライバーの現在位置、及びサービスの目的地に基づいて、測位エンジン110の経路処理ユニット340は、ドライバーの現在位置から待ち合わせ位置への1つ以上の経路と、待ち合わせ位置からオーダーの終了位置(例えば、サービスの目的地)への1つ以上の経路とを生成してもよい。上記で説明した経路生成は、或る特定の経路計画アルゴリズム、例えば、最短経路計画アルゴリズムに基づくものであってもよい。この最短経路計画アルゴリズムは、ダイクストラ(Dijkstra)アルゴリズム、SPFAアルゴリズム、ベルマン・フォード(Bellman-Ford)アルゴリズム、ジョンソン(Johnson)アルゴリズム、フロイド・ワーシャル(Floyd-Warshall)アルゴリズム等、又はそれらの任意の組み合わせを含んでもよい。経路計画アルゴリズムは、道路状況、気象状況、時刻等、又はそれらの任意の組み合わせ等の要因に関するものであってもよい。例えば、これらの要因は、考慮することができるラッシュアワー、大きな試合若しくはイベントの位置、道路メンテナンス状況若しくは閉鎖状況、公共交通が正常動作しているか否か等、又はそれらの任意の組み合わせを含むことができる。測位エンジン110は、乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140にこれらの経路を送信してもよい。乗客端末デバイス120及び/又はドライバー端末デバイス140は、これらの経路を表示してもよい。
待ち合わせ位置及びドライバーの現在位置に従って、測位エンジン210の処理モジュール210は、ドライバーの現在位置と待ち合わせ位置との間の距離を計算してもよい。この計算は、処理モジュール210の計算ユニット(図3に図示せず)によって行われてもよい。ドライバーの現在位置と待ち合わせ位置との間の距離は、直線距離、道路距離、移動距離等を含むことができる。距離を測定する方法は、本開示における他の個所で説明される距離測定方法と同様のものであってもよく、ここではこれ以上説明しない。測位エンジン110は、ネットワーク150を介して乗客インターフェース230及び/又はドライバーインターフェース240を通じて乗客端末デバイス120及び/又はドライバー端末デバイス140に距離を送信してもよい。乗客端末デバイス120及び/又はドライバー端末デバイス140は、距離情報を表示してもよい。
当然ながら、正確な位置及び待ち合わせ位置を確定する上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、正確な位置及び待ち合わせ位置を確定することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図9は、本開示の幾つかの実施形態に係る、測位エンジン110によって、最適化された位置情報を生成する一例示的なプロセスのフローチャートである。ステップ910において、測位エンジン110は、乗客端末デバイス120から当初(original:オリジナル)位置情報を取得することができる。この当初位置情報は、乗客端末デバイス120の測位モジュール630によって取得された乗客端末デバイス120の位置に関連した地理的座標情報であってもよい。例えば、この地理的座標情報は、経緯度座標、高度等であってもよい。測位モジュール630は、1つ以上の測位技術を用いて乗客の情報を取得してもよい。この乗客の情報は、現在位置、動作状態、速度等を含むことができる。1つ以上の測位技術は、全地球測位システム(GPS)技術、全地球航法衛星システム(GLONASS)技術、北斗衛星導航系統技術、ガリレオ測位システム(Galileo)技術、準天頂衛星システム(QAZZ)技術、ベースステーション(基地局)測位技術、Wi−Fi測位技術、車両に設置された様々な測位技術及び速度測定技術等から選択されてもよい。測位モジュール630の内部の測定誤差及び測位技術の精度の限界のために、当初位置情報は、正確でない可能性があり、正確なサービスの要件を満たしていない可能性がある。
例えば、現在位置の基本的な測位情報は、Wi−Fi測位技術を用いて取得されてもよい。無線ルーターは、グローバルに一意の媒体アクセス制御(MAC)アドレスを有することができる。一般に、この無線ルーターは、或る期間において移動しない可能性がある。乗客端末デバイス120のWi−Fi機能がオンになると、乗客端末デバイス120は、ルーターによってブロードキャストされた近傍のルーターの信号をスキャン及び収集して、MACアドレスを取得することができる。乗客端末デバイス120は、データ(MACアドレスを含む)を測位エンジン110に送信することができる。このデータは、ルーターを表してもよい。測位エンジン110は、受信されたデータに基づいて、データベース130においてルーターの地理的位置を検索することができる。その後、測位エンジン110は、種々のルーターの取得された信号の強度に基づいて乗客端末デバイス120の位置を計算することができる。種々のルーターの信号の強度は、乗客端末デバイスによって提供されてもよい。
代替的に、現在位置の基本的な測位情報は、ベースステーション(基地局)測位技術を用いて取得されてもよい。乗客端末デバイス120のコミュニケーションモジュール640は、種々のベースステーション(基地局)のダウンリンクパイロット信号を測定し、種々のベースステーション(基地局)のダウンリンクパイロット信号の到達時刻(TOA)又は到達時間差(TDOA)を取得することができる。測定された信号は、乗客端末デバイス120によってネットワーク150を介して測位エンジン110に送信することができる。測定された結果及びベースステーション(基地局)の座標に従って、測位エンジン110の処理モジュール210は、乗客端末デバイス120の当初位置情報を計算することができる。幾つかの実施形態では、処理モジュール210は、三角法を用いて当初位置情報を計算してもよい。
測位エンジン110は、乗客端末デバイス120の当初位置情報を取得した際又は取得した後、ステップ920において、この当初位置に関する情報を、記憶モジュール220、データベース130、及び他の情報源160から取得することができる。測位エンジン110は、この当初位置に関する情報をネットワーク150を介して取得してもよい。本開示の幾つかの実施形態によれば、当初位置に関する情報は、乗客端末デバイス120から受信された画像情報であってもよい。この画像情報は、静止画像情報及び/又はビデオ情報を含むことができる。
本開示の幾つかの実施形態によれば、当初位置に関する情報は、特定の識別情報を有する建物又は案内標識の映像又はビデオを含んでいてもよい。例えば、当初位置に関する情報は、特定の識別情報を有する現在位置の近くの建物の1つ以上の映像又はビデオであってもよい。また、当初位置に関する情報は、現在位置の近くの複数の建物の複数の映像又はビデオであってもよい。
本開示の幾つかの実施形態によれば、当初位置に関する情報は、当初位置の近くの識別情報であって、処理モジュール210の識別情報検索ユニット350がデータベース130の地図データベース720内において検索することができる識別情報であってもよい。識別情報検索ユニット350は、当初位置の近くの識別情報を地図データベース720内において検索することができる。幾つかの実施形態によれば、識別情報検索ユニット350は、当初位置からの事前設定範囲内で識別情報を検索してもよい。
ステップ930において、測位エンジン110は、ステップ910において取得された当初位置情報と、ステップ920において取得された当初位置に関する情報とを処理することができる。幾つかの実施形態では、ステップ930は、建物の映像又はビデオから建物の特定の識別情報に基づいて建物名を特定することを含むことができる。例えば、測位エンジン110が建物の映像又はビデオを取得した後、処理モジュール210の画像処理ユニット320が、画像認識技術を用いて建物の基本的な特徴(又は識別情報)を特定してもよい。測位エンジン110は、データベース130の地図データベース720に記憶された情報を取り出し、建物の画像情報を検索することができる。その後、一致する特徴を有する建物を特定することができ、この建物に対応する地理的位置情報を取得することができる。本開示の幾つかの実施形態によれば、測位エンジン110が、画像認識技術を用いて、静止画像又はビデオ内の特徴と一致する複数の建物を見つけた場合、データベース130の地図データベース720において認識されたそれらの複数の建物の名称をマーキングするのにB1、B2、...Bn(n≧1)を用いてもよい。本開示の幾つかの実施形態によれば、測位エンジン110の処理モジュール210の画像処理ユニット320は、画像測定技術を用いて情報(画像がキャプチャされた位置と映像/ビデオ内の建物との間の距離、画像をキャプチャした角度及び画像をキャプチャした方向等を含む)を計算してもよい。
ステップ940において、処理モジュール210は、当初位置と当初位置に関する情報との処理された情報に基づいて、最適化された位置情報を生成することができる。本開示の幾つかの実施形態によれば、処理モジュール210は、画像がキャプチャされた位置の正確な位置情報を取得し、当初位置の情報と、画像認識及び/又は画像測定後の画像情報とに基づいて、最適化された位置情報を生成することができる。ステップ930において当初位置に関連した情報を処理することによって、処理モジュール210は、画像内の建物を特定することができる。また、処理モジュール210は、データベース130の地図データベース720を検索することによって建物の測位情報を取得することもできる。例えば、認識された建物名B1、B2、...Bn(n≧1)に基づいて住所情報データベースを検索することによって、建物の地理的座標(P1、P2、...Pn)(n≧1)を取得することができる。例えば、現在位置の当初測位情報がP0であり、建物の取得された測位情報がP1、P2、...Pn(n≧1)であると仮定すると、P0とP1、P2、...Pn(n≧1)との間の距離D01、D02、...D0nをそれぞれ計算することができる。D01、D02、...D0nを最小のものから最大のものに向けてランク付けすることによって、最小値D0xを見つけることができる。D0xは、現在位置に最も近接した建物の測位情報(Px)に対応することができる。Pxは、現在位置の正確な測位情報として指定することができる。
幾つかの実施形態では、ステップ930において取得された、画像がキャプチャされた位置と映像/ビデオ内の建物との間の距離、画像をキャプチャした角度及び画像をキャプチャした方向等に従って、処理モジュール210の画像処理ユニット320は、画像がキャプチャされた位置と建物との間の距離を計算してもよい。次に、処理モジュール210は、画像がキャプチャされた位置の正確な地理的座標を計算し、データベース130内の上記距離及び上記建物の正確な地理的座標を組み合わせることによって、最適化された位置情報を生成してもよい。幾つかの実施形態では、測位エンジン110は、検索された識別情報を処理モジュール210の識別情報追加ユニット360によって当初位置情報に加えることによって、最適化された位置情報を生成してもよい。
上記で説明した待ち合わせ位置と、乗客の現在位置と、オーダーの終了位置(例えば、サービスの目的地)とに基づいて、測位エンジン110の経路処理ユニット340は、ドライバーの現在位置から待ち合わせ位置への1つ以上の経路と、待ち合わせ位置からオーダーの終了位置への1つ以上の経路とを生成することができる。経路計画方法及びその設計因子は、本開示における他の個所において見出すことができ、ここではこれ以上説明しない。測位エンジン110は、乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に経路を送信してもよい。乗客端末デバイス120及び/又はドライバー端末デバイス140は、経路を表示してもよい。
当然ながら、最適化された位置情報を生成する上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、最適化された位置情報を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。幾つかの実施形態では、上記で説明した図9におけるステップ920等の幾つかのステップは省略されてもよい。測位エンジン110は、ステップ920を実行することなく、ステップ910において取得された当初位置情報に基づいて、最適化された位置情報を直接取得してもよい。
図10は、本開示の幾つかの実施形態に係る最適化された位置情報を生成する一例示的なプロセスのフローチャートである。乗客がタクシー配車オーダーを確認すると、オーダーの開始位置を選択することができる。この選択は、現在位置、乗車位置又は目的地を手動で入力又は選択することによって行うことができる。また、この選択は、GPS等の測位技術を用いてオーダーの開始位置及び終了位置を直接突き止めることによっても行うことができる。ステップ1010において、オーダーの住所情報を測位エンジン110によって取得することができる。オーダー情報を取得するプロセスは、乗客インターフェース230によって完了することができる。乗客が、現在位置、待ち合わせ位置、又は目的地を提供又は選択すると、オーダーの住所情報は、測位エンジン110によって解析することができる。この住所情報は、出発地住所及び/又は目的地住所等を含むことができる。例えば、出発地住所及び目的地住所は、オーダーの開始位置及び終了位置であってもよい。オーダーの住所情報を解析するプロセスは、処理モジュール210の住所解析ユニット310によって完了することができる。ステップ1020において、住所情報を解析することによって、住所情報に対応する経緯度情報を取得することができる。
ステップ1030において、測位エンジン110は、住所情報に対応する経度及び緯度を有する位置からの事前設定範囲において識別情報を検索することができる。識別情報の検索は、処理モジュール210の識別情報検索ユニット350によって実行することができる。事前設定範囲は、必要に応じて設定することができる。例えば、この範囲は、500メートルよりも大きく設定することもできるし、500メートルに等しく設定することもできるし、又は500メートル未満に設定することもできる。幾つかの実施形態では、事前設定範囲は、1メートル〜200メートル、200メートル〜300メートル、300メートル〜400メートル、又は400メートル〜500メートルであってもよい。幾つかの実施形態では、事前設定範囲は、1メートル〜50メートル、50メートル〜100メートル、100メートル〜150メートル、又は150メートル〜200メートルであってもよい。幾つかの実施形態では、事前設定範囲は、10メートル、20メートル、30メートル、40メートル、50メートル、60メートル、70メートル、80メートル、90メートル、100メートル等であってもよい。幾つかの実施形態では、事前設定範囲の設定は、経度及び緯度の情報に対応する位置に基づいて決定されてもよい。例えば、位置が異なれば、事前設定範囲も異なってもよい。
識別情報は、商業地域、住宅地域、景色、病院、学校、大型建築物、バスステーション、鉄道駅、地下鉄駅、空港、橋梁、交差点等、又はそれらの任意の組み合わせであってもよい。幾つかの実施形態では、識別情報の検索は、優先レベルのシーケンスに基づくものであってもよい。例えば、各識別情報は優先レベルに対応してもよい。幾つかの実施形態では、例えば、商業地域は、最も高い優先度に対応してもよい。橋梁又は交差点は、2番目に高い優先度に対応してもよい。道路は、3番目に高い優先度に対応してもよい。商業地域が検索中に見つかると、他の識別情報は、もはや検索されなくてもよいか、又は他の識別情報を含む検索結果は省略されてもよい。見つかった商業地域は、識別情報として指定することができる。商業地域が見つからない場合、住所情報の経度及び緯度からの事前設定範囲内の橋梁又は交差点を検索することができる。橋梁又は交差点が検索中に見つかった場合、この橋梁又は交差点を識別情報として指定することができる。橋梁又は交差点が見つからない場合、事前設定範囲内の道路を検索することができる。道路が検索中に見つかった場合、この道路を識別情報として指定することができる。当然ながら、識別情報の検索において用いられる優先レベルの上記説明は、単なる例示にすぎず、本開示の保護の範囲を限定することを意図するものではない。
検索シーケンス(例えば、特徴の検索が行われる順序)は、測位エンジン110、ユーザー、測位エンジン110若しくはユーザーによって用いられる地図、又はそれらの任意の組み合わせによって事前に設定されてもよい。例えば、ユーザーによって設定される検索シーケンスは、最も高い優先度を有してもよい。地図によって設定される検索シーケンスは、2番目に高い優先度を有してもよい。測位エンジン110によって設定される検索シーケンスは、最も低い優先度を有してもよい。測位エンジン110によって設定される検索シーケンスは、履歴データに基づいて自動的に更新されてもよい。例えば、測位エンジン110によって設定される検索シーケンスは、推奨された識別情報を受理又は拒否した数又は頻度等の因子に基づいて更新されてもよい。また、検索シーケンスは、1つ以上の他の因子に基づいて更新されてもよい。他の因子は、識別情報が受理されたのか又は拒否されたのかの状況と、識別情報が受理又は拒否されたときの時刻、気象等の因子との組み合わせであってもよい。識別情報の検索シーケンスは、時刻、気象等の因子に基づいて選択されてもよい。例えば、学校は、好ましくは、下校時刻前後に識別情報として指定されてもよい。別の例として、商業地域は、好ましくは、非勤務時間においては識別情報として指定されない場合がある。
経度及び緯度に関する識別情報は、オン・デマンドサービスシステム105又は測位エンジン110に前もって記憶しておくことができる。これらの識別情報は、乗客がオーダーの開始位置を入力した後に、オーダーに基づいて生成することもできる。幾つかの実施形態では、或る特定の場所に関する1つ以上の識別情報は、オン・デマンドサービスシステム105又は測位エンジン110に記憶しておくことができる。測位エンジン110は、乗客のオーダーの開始位置を確定した後、上記識別情報検索プロセス及び幾つかの特定のルールに基づいて1つ以上の識別情報を抽出することができる。幾つかの実施形態では、測位エンジン110は、オーダーの開始位置を取得した後、開始位置からの事前設定範囲内において地理的情報を収集し、その後、識別情報を取得してもよい。この地理的情報は、周辺建物、自然の設備、道路、橋梁等を含むことができるが、これらに限定されるものではない。識別情報及び識別情報の関連情報並びに経度及び緯度は、測位エンジン110によって取得されてもよい。識別情報の関連情報及び事前設定範囲並びに経度及び緯度は、データベース130、測位エンジン110の記憶モジュール220、又はシステムの記憶機能を有する他のユニット及びモジュールに記憶されていてもよい。
ステップ1040において、測位エンジン110は、検索された識別情報をオーダーの対応する住所情報に追加することができる。識別情報を追加するこのプロセスは、処理モジュール210の識別情報追加ユニット360によって実施することができる。住所情報は、追加された識別情報とともに、ドライバー端末デバイス140に送信することができ、ドライバーによって容易に認識することができる。ドライバーがオーダーを受理しているとき、タクシー配車オーダーが予想されたオーダーであるか否かを判断することは容易である。これによって、オーダーリソースの浪費を回避することができる。
当然ながら、最適化された位置情報を生成する上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、最適化された位置情報を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。幾つかの実施形態では、上記で説明したフローチャートにおける幾つかのステップは省略されてもよい。例えば、乗客端末デバイス120から測位エンジン110によって取得されたオーダーの住所情報が、緯度及び経度の情報の形態で表されている場合、ステップ1020をスキップすることができ、ステップ1030を直接実行することができる。測位エンジン110は、この経度及び緯度の情報を中心として採用し、この中心からの事前設定範囲内において識別情報を検索してもよい。幾つかの実施形態では、住所名の形態で表される住所情報は解析されなくてもよい。住所名の事前設定範囲における識別情報は、直接取得することができる。
図11は、本開示の幾つかの実施形態に係る、最適化された位置情報を生成する一例示的なプロセスのフローチャートである。幾つかの実施形態では、乗客端末デバイス120の測位デバイス又は測位モジュールが、近似測位位置を取得することができる。乗客によってカスタマイズ及び入力された位置も同様に、正確でない可能性がある。したがって、ドライバーに位置をより容易に特定させるために、より正確な位置情報又は住所情報のより詳細な記述が必要とされることがある。ステップ1110において、測位エンジン110は、乗客によって送信された住所情報を含むオーダーを取得することができる。このオーダーは、乗客インターフェース230によって取得することができる。上記住所情報は、乗客の現在位置、乗客の出発位置、乗客の目的地等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。幾つかの実施形態では、乗客の現在位置は、乗客の開始位置である。上記住所情報の形態は、テキスト、画像、オーディオ、ビデオ等、又はそれらの任意の組み合わせを含むことができる。
測位エンジン110が乗客のオーダーを受信した後、ステップ1120において、このオーダーをドライバー端末デバイス140に送信することができる。次に、ステップ1130において、測位エンジン110は、このオーダーに対する応答をドライバー端末デバイス140から取得することができる。ドライバーインターフェース240が、このオーダーをドライバー端末デバイス140に送信することができ、このオーダーに対する応答をドライバー端末デバイス140から取得することができる。当然ながら、測位エンジン110は、オーダーをドライバー端末デバイス140に送信する前に、他のプロセスを実行してもよい。例えば、幾つかの実施形態では、測位エンジン110によって取得された情報は更に処理されてもよい。幾つかの実施形態では、乗客インターフェース230の乗客解析ユニット420は、乗客によって送信されて、乗客情報受信ユニット410によって取得されたオーダーを解析してもよい。上記解析動作は、計算、処理、又は記憶することができるフォーマットに乗客情報を変換することができるように、乗客情報(例えば、乗客によって送信されたオーダー情報)を整理又は分類することを含んでもよい。幾つかの実施形態では、測位エンジン110によって取得されたオーダーは、オーディオの形態であってもよい。測位エンジン110の処理モジュール210のオーディオ処理ユニット370は、このオーダーのオーディオを解析して、テキストの形態のオーダー情報を生成してもよい。測位エンジン110は、ドライバーインターフェース240によってオーダー情報をドライバーに送信してもよい。幾つかの実施形態では、測位エンジンによって取得されたオーダーは、テキスト、ビデオ又は画像の形態であってもよい。測位エンジン110の処理モジュール210は、このオーダーを音声メッセージの形態のオーダー情報に変換し、このオーダー情報をドライバーに送信してもよい。
幾つかの実施形態では、ドライバーによって行われたオーダーに対する応答は、オーダーの正確な位置情報の要請等のオーダーの要請を含んでいてもよい。幾つかの実施形態では、測位エンジン110によってドライバーに送信されたオーダーは、不明瞭な情報を含んでいる場合がある。幾つかのスマート測位技術は、近似測位位置しか取得することができず、非常に正確な位置を取得することができない。例えば、或る特定の測位技術に基づいて、乗客端末デバイス120は、或る特定の市場における特定の位置ではなく、その市場に測位される場合がある。例えば、特定の出口、階、部屋は、確定するのが困難な場合がある。したがって、幾つかの場合には、ドライバーは、測位後に取得された単純な住所のみに基づいて乗客を見つけることが困難な場合がある。このため、より正確な位置が必要とされる。
ステップ1140において、測位エンジン110は、ドライバーインターフェース240によってオーダーに対するドライバーの応答を取得した後、少なくとも1つの詳細な位置を乗客に送信することができる。この詳細な位置は、中心としてのオーダーの開始位置又は乗客の現在位置からの事前設定範囲内における或る位置(複数の場合もある)であってもよい。事前設定範囲は、100メートル未満であってもよいし、100メートルに等しくてもよいし、100メートルよりも大きくてもよい。幾つかの実施形態では、事前設定範囲は、50メートル未満に設定されてもよいし、50メートルに等しく設定されてもよいし、50メートルよりも大きく設定されてもよい。幾つかの実施形態では、事前設定範囲は、40メートル未満に設定されてもよいし、40メートルに等しく設定されてもよいし、40メートルよりも大きく設定されてもよい。幾つかの実施形態では、事前設定範囲は、30メートル未満に設定されてもよいし、30メートルに等しく設定されてもよいし、30メートルよりも大きく設定されてもよい。幾つかの実施形態では、事前設定範囲は、20メートル未満に設定されてもよいし、20メートルに等しく設定されてもよいし、20メートルよりも大きく設定されてもよい。幾つかの実施形態では、事前設定範囲は、10メートル未満に設定されてもよいし、10メートルに等しく設定されてもよいし、10メートルよりも大きく設定されてもよい。詳細な位置は、乗客が選択するためのリストとして乗客に表示されてもよい。
測位エンジン110によって生成された詳細な位置は、ドライバーがより容易に理解及び認識することができる、オーダー内の住所位置のより詳細な記述である。幾つかの実施形態では、詳細な位置をシステムに記憶することができる。システムは、或る特定の位置に関する1つ以上の詳細な位置を記憶することができる。システムは、乗客のオーダーを確定した後、オーダーの開始位置に関する1つ以上の詳細な位置を、この1つ以上の詳細な位置と開始位置との間の関係に直接基づいて抽出することができる。詳細な位置は、データベース130、記憶モジュール220、又はオン・デマンドサービスシステム105の記憶機能を有する他のモジュール若しくはユニットに記憶することができる。幾つかの実施形態では、オン・デマンドサービスシステム105は、オーダーを取得した後、オーダーの開始位置からの事前設定範囲内において情報を収集して、詳細な位置を取得してもよい。
ステップ1150において、測位エンジン110は、乗客による詳細な位置に対する応答を取得することができる。幾つかの実施形態では、詳細な位置に対する応答は、詳細な位置のうちの1つを直接選択することと、この選択された位置を測位エンジン110に送信することとを含んでいてもよい。幾つかの実施形態では、詳細な位置に対する応答は、複数の詳細な位置を選択することと、これらの選択された位置を測位エンジン110に送信することとを含んでいてもよい。幾つかの実施形態では、詳細な位置に対する応答は、測位エンジン110によって提供された1つ以上の詳細な位置を除去することを含んでいてもよい。当然ながら、測位エンジン110によって送信される詳細な位置の処理の上記説明は、単なる例示にすぎず、本開示を限定することを意図するものではない。幾つかの実施形態では、他の処理方法も含まれていてもよい。
ステップ1160において、測位エンジン110は、乗客によって生成された詳細な位置の処理結果をドライバーインターフェース240を介してドライバー端末デバイス140に送信することができる。上記結果に基づいて、ドライバーは、乗客の特定の位置、すなわち、乗車する位置、例えば待ち合わせ位置を確定することができる。
当然ながら、最適化された位置情報を生成する上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、最適化された位置情報を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。幾つかの実施形態では、他のステップも、追加されてもよい。例えば、測位エンジン110は、乗客によって生成された詳細な位置の処理結果を取得した後、その結果を更に処理してもよい。幾つかの実施形態では、測位エンジン110によって取得された乗客の処理結果は、複数の詳細な位置を含んでいてもよい。測位エンジン110は、複数の詳細な位置を格付けし、最高の格付けを有する結果を最終結果として選択し、この最終結果をドライバーに送信してもよい。上記処理は、処理結果のフォーマットを変換することも含んでもよい。変換方法は、テキストから音声、映像から音声、ビデオから音声、音声からテキスト、音声からテキスト、音声から映像等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、オーダーに対するドライバーの応答は、他のステップを実行することなく、オーダーを直接取得することを含んでもよい。例えば、ステップ1140、ステップ1150、及びステップ1160は省略されてもよい。これらの変更及び変形は、引き続き上記説明の範囲内にある。
図12は、本開示の幾つかの実施形態に係る、乗客端末デバイス120による正確な測位の一例示的なプロセスのフローチャートである。乗客がサービスオーダー要求を送信した後、ドライバーは、乗客の近似位置を迅速に取得することができる。しかし、この位置は、十分に正確なものでない可能性がある。例えば、乗客は、自身の正確な位置を記述することが困難であり得るような複数の出口を有する大きな建物内又は熟知していない場所にいる場合がある。加えて、従来の測位技術は、通常、或る特定のずれを有する場合がある。このため、ドライバーがこの測位技術を用いて取得された単純な住所のみに基づいて乗客を見つけることは困難な場合がある。幾つかの実施形態では、ドライバー及び乗客は、非常に近くにいる場合であっても、互いに見つけることができない。ステップ1210において、乗客端末デバイス120によって現在位置に関する情報を収集することができる。この現在位置に関する情報は、地理的座標情報、開始位置の記述名、画像(静止画像又はビデオ)情報等の他の形態の情報、正確な位置に関する他の情報等であってもよい。地理的座標情報は、乗客端末デバイス120の測位モジュール630によって取得することもできるし、乗客が操作するコンテンツ提示モジュール610によって表示される地図インターフェースによって生成することもできる。開始位置の記述名は、乗客が入力又は選択することができる。他の形態の情報は、乗客が乗客端末デバイス120を通じて収集又は記録することができる。例えば、画像情報は、乗客端末デバイス120のI/Oモジュール620によって収集することができる。幾つかの実施形態では、正確な位置に関する他の情報は、バーコード又はクイックレスポンスコードの形態であってもよい。バーコード又はクイックレスポンスコードは、正確な位置に掲示され、開始位置の正確な地理的座標及び/又は記述名に関連付けられていてもよい。
ステップ1220において、乗客端末デバイス120は、現在位置に関する情報を収集した後、この情報を測位エンジン110に送信することができる。現在位置に関するこの情報は、輸送サービス要求のオーダー情報を構成することができる。本開示の幾つかの実施形態によれば、乗客端末デバイス120は、ネットワークアクセスデバイス(例えば、セルラーネットワークベースステーション(基地局)150−1、150−2又は無線ネットワークアクセスポイント)を介してネットワーク150にアクセスし、収集された現在位置に関する情報を測位エンジン110に送信することができる。
ステップ1230において、乗客端末デバイス120は、測位エンジン110によって送信された少なくとも1つの詳細な位置を取得することができる。測位エンジン110は、輸送サービス要求オーダーに関するドライバー端末デバイス140の応答に応答してもよい。詳細な位置は、乗客端末デバイス120によって送信された現在位置に関する情報に部分的に基づいていてもよい。詳細な位置は、測位エンジン110によって乗客に推奨された待ち合わせ位置(例えば、この待ち合わせ位置は、乗客が乗車する位置であってもよい)又は測位エンジン110を通じてドライバー端末デバイス140によって乗客に提供された待ち合わせ位置を含んでいてもよい。待ち合わせ位置は、データベース130に記憶されていてもよいし、情報源160によって提供されてもよい。幾つかの実施形態では、乗客端末デバイス120は、ステップ1230において、詳細な位置を取得することができる。この詳細な位置は、測位エンジン110によって乗客の正確な位置として指定することができる。代替的に、乗客端末デバイス120は、コンテンツ提示モジュール610を用いて、取得された詳細な位置を表示してもよい。取得された詳細な位置は、テキスト、地図、画像等の形態で表示することができる。
ステップ1240において、乗客は、測位エンジン110によって送信された詳細な位置を受信した後、乗客端末デバイス120によって詳細な位置(複数の場合もある)のうちの1つを選択することができる。測位エンジン110によって送信された詳細な位置は、乗客端末デバイス120のコンテンツ提示モジュール610によって表示されてもよい。乗客は、表示された詳細な位置のうちの1つの詳細な位置をI/Oモジュール620によって選択することができる。乗客はより詳細な位置を選択してもよいことを理解することができる。
ステップ1250において、乗客端末デバイス120は、I/Oモジュール620によって乗客の詳細な位置の選択を取得した後、この選択を測位エンジン110に送信することができる。
当然ながら、このフローチャートにおける幾つかのステップは、省略又はスキップされてもよい。例えば、ステップ1230において測位エンジン110によって送信された詳細な位置を取得した後、プロセスは終了してもよい。乗客端末デバイス120は、乗客の選択又は確認を待たなくてもよい。
図13は、本開示の幾つかの実施形態に係る、ドライバー端末デバイス140によって待ち合わせ位置を処理する一例示的なプロセスのフローチャートである。ステップ1310において、ドライバー端末デバイス140は、測位エンジン110によって送信された候補待ち合わせ位置の情報を取得することができる。ドライバー端末デバイス140は、輸送サービス要求を取得した際又は取得した後に候補待ち合わせ位置の情報を取得することができる。この候補待ち合わせ位置の情報は、候補待ち合わせ位置集合を構成することができる。この集合内の要素は、単一の待ち合わせ位置に関するものであってもよいし、待ち合わせ位置のリスト等の複数の待ち合わせ位置に関するものであってもよい。待ち合わせ位置情報は、地理的座標情報、待ち合わせ位置の記述及び/又は名称、又は待ち合わせ位置のタイプを含んでいてもよい。例えば、待ち合わせ位置のタイプは、「ショップ」、「レストラン」、「公共施設」、「住宅地域」等であってもよい。ドライバーデバイス140は、候補待ち合わせ位置情報を取得した後、コンテンツ提示モジュール610を用いてこの情報を表示することができる。この情報は、1つ以上のアイコンを表示することによって待ち合わせ位置情報の地理的座標情報を表すこと、又は上記待ち合わせ位置情報の記述及び/又は名称及び/又はタイプをテキスト(通常又はマルチメディア)の形態で表すこと等の1つ以上の表示方法を用いて表示することができる。
ステップ1320において、ドライバーデバイス140は、ドライバーによる表示された候補待ち合わせ位置情報に関連した処理されたデータ(例えば、処理された候補待ち合わせ位置)をI/Oモジュール620を介して取得することができる。候補待ち合わせ位置集合に関連した処理されたデータは、サービス要求者によって候補待ち合わせ位置集合を処理することによって生成することができる。この処理は、1つ以上の候補待ち合わせ位置を選択することと、除去することと、評価することとを含むことができる。上記評価は、テキストによる格付け又はスコア付けの形態で行うことができる。上記評価は、1つ以上の候補待ち合わせ位置についてのドライバーの好みを表してもよい。表示された候補待ち合わせ位置の処理は、候補待ち合わせ位置情報を更新することを含んでもよい。幾つかの実施形態によれば、上記更新することは、ドライバー端末デバイス140によって1つ以上の候補待ち合わせ位置を追加すること、ドライバー端末デバイス140によって1つ以上の候補待ち合わせ位置を変更すること等であってもよい。表示された候補待ち合わせ位置を処理する上記方法は、ドライバーが、I/Oモジュール620によって地図インターフェース上の候補待ち合わせ位置アイコンを削除、追加、又は移動する方法であってもよい。また、表示された候補待ち合わせ位置を処理する上記方法は、ドライバーが、候補待ち合わせ位置の記述及びタイプを削除、追加、又は変更する方法であってもよい。
ステップ1330において、ドライバー端末デバイス140は、処理された待ち合わせ位置情報を計算及び処理するためにコミュニケーションモジュール640を介して測位エンジン110に送信することができる。
ステップ1340において、ドライバー端末デバイス140は、最適化された待ち合わせ位置情報を測位エンジン110から取得することができる。この最適化された待ち合わせ位置情報は、ドライバーの候補待ち合わせ位置情報の処理、乗客の候補待ち合わせ位置情報の処理、若しくは情報源160からの情報、又は複数の処理方法及び/又は情報の任意の組み合わせに部分的に/完全に基づくことができる。
好ましくは、ドライバー端末デバイス140のコンテンツ提示モジュール610は、取得される最適化された待ち合わせ位置情報を表示することができる。幾つかの実施形態では、コンテンツ提示モジュール610は、地図インターフェース上に1つ以上のアイコンを表示することによって、最適化された待ち合わせ位置情報を表示することができる。幾つかの実施形態では、コンテンツ提示モジュール610は、最適化された待ち合わせ位置情報を表すアイコンの近くに待ち合わせ位置の記述を表示することができる。幾つかの実施形態では、コンテンツ提示モジュール610は、地図インターフェース上にドライバーの現在位置情報を同時に表示することができる。
当然ながら、上記で説明したフローチャートの1つ以上のステップは省略されてもよい。幾つかの実施形態によれば、ステップ1320、1330、及び1340はスキップされてもよい。例えば、ドライバー端末デバイス140は、候補待ち合わせ位置に対するプロセス及び後続のプロセスを実行することなく、測位エンジン110から候補待ち合わせ位置情報を取得してもよい。
図14は、本開示の幾つかの実施形態に係る、乗客によって待ち合わせ位置を確定する一例示的なプロセスのフローチャートである。幾つかの実施形態では、乗客の現在位置は、乗客の待ち合わせ位置(例えば、この待ち合わせ位置は、乗客が乗車する位置であってもよい)である。幾つかの実施形態では、乗客の現在位置は、乗客の待ち合わせ位置ではない。幾つかの他の実施形態では、待ち合わせ位置は、ピックアップポイント、オーダーの開始位置、出発位置等と呼ばれる場合がある。
ステップ1410において、乗客端末デバイス120によって位置に関する情報を取得することができる。この位置に関する情報は、乗客の現在位置、オーダーの開始位置、オーダーの終了位置等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、位置に関する情報を取得するプロセスは、乗客端末デバイス120の測位モジュール630によって実施することができる。測位モジュール630は、1つ以上の測位技術を用いて乗客の位置を確定することができる。これらの測位技術は、全地球測位システム(GPS)技術、全地球航法衛星システム(GLONASS)技術、北斗衛星導航系統技術、ガリレオ測位システム(Galileo)技術、準天頂衛星システム(QAZZ)技術、ベースステーション(基地局)測位技術、Wi−Fi測位技術等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、位置に関する情報を取得するプロセスは、乗客端末デバイス120のI/Oモジュール620によって実施することができる。オーダーの現在位置、開始位置、及び終了位置の名称は、乗客が入力することができる。位置に関する情報を形成する方法は、テキストフォーマット、画像フォーマット、ビデオフォーマット、オーディオフォーマット等で形成すること、又はそれらの任意の組み合わせで位置に関する情報を形成することを含むことができるが、これらに限定されるものではない。当然ながら、乗客端末デバイス120は、他の情報を取得してもよい。これらの他の情報は、乗客の氏名、連絡情報、計画されたピックアップ時刻等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。これらの他の情報を取得するプロセスは、I/Oモジュール620によって実施されてもよい。乗客端末デバイス120の処理モジュール650は、位置に関する情報を取得した後、この取得された位置に関する情報を処理してもよい。この取得された位置に関する情報の処理は、フォーマット変換等を含んでもよいが、これらに限定されるものではない。乗客端末デバイス120は、取得された位置に関する情報及び他の情報を記憶モジュール660、サーバー130、又はデータを記憶することができるシステムの他のモジュール及びユニットに記憶してもよい。
次に、ステップ1420において、乗客は、処理された又は未処理の位置に関する情報及び/又は他の情報をオン・デマンドサービスシステム105又は測位エンジン110に送信することができる。位置に関する情報及び/又は他の情報を送信するこのプロセスは、同時に行うこともできるし、特定のシーケンスで行うこともできる。幾つかの実施形態では、乗客端末デバイス120から取得される位置に関する情報は、乗客の現在位置及び目的地を含むことができる。乗客は、現在位置を待ち合わせ位置として指定することができる。幾つかの実施形態では、乗客は、現在位置、待ち合わせ位置、及び目的地を同時に送信することができる。幾つかの実施形態では、オン・デマンドサービスシステム105又は測位エンジン110は、乗客が選択するための1つ以上の候補待ち合わせ位置を、乗客端末デバイス120によって送信された位置に関する情報に基づいて生成してもよい。候補待ち合わせ位置の数は、任意であってもよく、例えば、1つ、2つ、3つ、4つ、5つ、6つ、又は他の任意の数であってもよい。
ステップ1430において、乗客端末デバイス120は、オン・デマンドサービスシステム105又は測位エンジン110によって送信された候補待ち合わせ位置を取得することができる。ステップ1430は、乗客端末デバイス120のコミュニケーションモジュール640によって実行することができる。候補待ち合わせ位置は、リストの形態で乗客に表示することができる。幾つかの実施形態では、各候補位置の優先度は異なってもよく、例えば、各候補位置はその対応する優先度を有する。最も高い優先度を有する候補位置は、オン・デマンドサービスシステム105又は測位エンジン110によって、最適化された待ち合わせ位置としてみなすことができる。乗客によって取得された候補待ち合わせ位置は、位置の優先度に基づいて、高から低に又は低から高にランク付けされてもよい。幾つかの実施形態では、候補待ち合わせ位置の優先度は同じであってもよい。そして、表示される候補待ち合わせ位置は、優先度に基づいてランク付けされない。
乗客端末デバイス120が、オン・デマンドサービスシステム105又は測位エンジン110によって送信された候補待ち合わせ位置を取得した後、候補待ち合わせ位置情報は、ステップ1440において処理することができる。そして、この処理された候補待ち合わせ位置情報は、ステップ1450において、オン・デマンドサービスシステム105又は測位エンジン110に送信することができる。候補待ち合わせ位置情報の処理は、乗客端末デバイス120の処理モジュール650によって実施することができる。処理された候補待ち合わせ位置情報をオン・デマンドサービスシステム105又は測位エンジン110に送信するプロセスは、コミュニケーションモジュール640によって実施することができる。候補待ち合わせ位置情報の処理は、乗客が候補待ち合わせ位置のうちの1つを最終待ち合わせ位置として直接選択すること、候補待ち合わせ位置のうちの1つ以上を選択又は除去することを含むことができるが、これらに限定されるものではない。幾つかの実施形態では、乗客は、オン・デマンドサービスシステム105又は測位エンジン110によって送信された候補待ち合わせ位置のうちの幾つかが、乗客の現在位置に基づくと、比較的不便であり得ると考える場合がある。このため、乗客は、乗客端末デバイス120を用いて、それらの不便な候補待ち合わせ位置を直接削除することができる。幾つかの実施形態では、乗客は、オン・デマンドサービスシステム105又は測位エンジン110によって送信された候補待ち合わせ位置のうちの1つ以上が許容可能であると考える場合がある。このため、乗客は、乗客端末デバイス120を用いて、それらの候補待ち合わせ位置を選択することができる。
乗客端末デバイス120が、処理された候補待ち合わせ位置情報をオン・デマンドサービスシステム105又は測位エンジン110に送信した後、オン・デマンドサービスシステム105又は測位エンジン110は、この処理された候補待ち合わせ位置情報を更に処理することができる。最適化された待ち合わせ位置情報を生成し、乗客端末デバイス120に送信することができる。ステップ1460において、乗客端末デバイス120は、最適化された待ち合わせ位置情報を取得することができる。ステップ1460は、乗客端末デバイス120のコミュニケーションモジュール640によって実行することができる。当然ながら、本明細書における「最適化された待ち合わせ位置」は、最適な待ち合わせ位置、最終待ち合わせ位置、オーダーの開始位置等として記述される場合がある。それらの全ての記述は、ドライバー及び乗客が最終的に出会うことができる場所を表す。
当然ながら、待ち合わせ位置を生成するプロセスの上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、待ち合わせ位置を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。幾つかの実施形態では、待ち合わせ位置を生成するプロセスの幾つかのステップは省略されてもよい。例えば、乗客端末デバイス120によってオン・デマンドサービスシステム105又は測位エンジン110に送信される位置に関する情報は、オン・デマンドサービスシステム105又は測位エンジン110によって受理されてもよい。乗客端末デバイス120によって取得された待ち合わせ位置又は乗客の現在位置は、最終待ち合わせ位置として指定することができる。この最終待ち合わせ位置は、ドライバー及び乗客が出会いたい位置である場合がある。このため、ステップ1430〜ステップ1460は省略されてもよい。別の例として、オン・デマンドサービスシステム105又は測位エンジン110は、1つの候補待ち合わせ位置を生成してもよく、この候補待ち合わせ位置が、最終待ち合わせ位置としてドライバー及び乗客に送信されてもよい。この場合、ドライバー及び乗客は、それ以上の操作を行う必要はない。乗客端末デバイス120の場合、ステップ1440、ステップ1450及びステップ1460は、ステップ1430を実行した後に実行される必要はない。それらの変更及び変形は、引き続き上記説明の範囲内にある。加えて、乗客端末デバイス120によって待ち合わせ位置を確定するプロセスの上記説明は単なる例示にすぎない。幾つかのステップ(記憶すること等)は、フローチャートに図示されていない。しかしながら、このことは、上記で説明したフローチャートの中間結果及び最終結果が記憶されないことを示すものではない。幾つかの実施形態では、上記で説明したフローチャートの中間結果及び最終結果の幾つか又は全てが記憶されてもよい。記憶する場所は、乗客端末デバイス120の記憶モジュール660、データベース130、測位エンジン110の記憶モジュール220、又はデータを記憶することができるオン・デマンドサービスシステム105の他のユニット及びモジュールを含むことができるが、これらに限定されるものではない。
図15は、本開示の幾つかの実施形態に係る、待ち合わせ位置を確定する一例示的なプロセスのフローチャートである。ステップ1510において、測位エンジン110は、オーダー送信者(例えば、乗客)によって送信された位置情報を取得することができる。ステップ1510は、乗客インターフェース230によって実行することができる。この位置情報は、乗客の現在位置、オーダーの開始位置、オーダーの終了位置等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。測位エンジン110は、乗客インターフェース230を介して他の情報も取得してもよい。他の情報についての説明は、本開示における他の個所の説明と同様である。
測位エンジン110が、乗客の位置情報を取得した後、測位エンジン110は、ステップ1520において、履歴オーダーを検索することができる。これらの履歴オーダーは、データベース130、測位エンジン110の記憶モジュール220、又はデータを記憶することができるオン・デマンドサービスシステム105の他のモジュール又はユニットに記憶されていてもよい。幾つかの実施形態では、履歴オーダーは、所与の期間内における1つ以上のオーダーを含んでもよい。幾つかの実施形態では、履歴オーダーは、事前設定閾値内の1つ以上のオーダーを含んでもよい。この事前設定閾値は、履歴オーダーの開始位置と乗客の現在位置との間の距離であってもよい。幾つかの実施形態では、履歴オーダーは、所与の期間における事前設定閾値内の1つ以上のオーダーを含んでもよい。所与の期間は、1日又は複数日、1週又は複数の週、1カ月又は複数の月等を含んでもよい。幾つかの実施形態では、所与の期間は2カ月であってもよい。幾つかの実施形態では、所与の期間は、ランダム値又は固定値であってもよい。幾つかの実施形態では、所与の期間は、経験データ又は実験データに基づいて決定されてもよい。幾つかの実施形態では、所与の期間は、オーダーを送信する乗客アカウントに関連付けられていてもよい。幾つかの実施形態では、所与の期間は、オーダーを取得するドライバーアカウントに関連付けられていてもよい。幾つかの実施形態では、所与の期間は、特定の位置情報に関連付けられていてもよく、例えば、所与の期間は、異なる位置に従って異なってもよい。上記事前設定閾値は、経験データ又は実験データに基づいて決定されてもよい。事前設定閾値は、500メートルよりも大きくてもよいし、500メートルに等しくてもよいし、500メートル未満であってもよい。幾つかの実施形態では、事前設定閾値は、1メートル〜200メートル、200メートル〜300メートル、300メートル〜400メートル、又は400メートル〜500メートルであってもよい。幾つかの実施形態では、事前設定閾値は、1メートル〜50メートル、50メートル〜100メートル、100メートル〜150メートル、又は150メートル〜200メートルであってもよい。幾つかの実施形態では、事前設定閾値は、10メートル、20メートル、30メートル、40メートル、50メートル、60メートル、70メートル、80メートル、90メートル、100メートル等であってもよい。例えば、事前設定閾値が100メートルであるとき、例えば、履歴オーダーの開始位置と乗客の現在位置との間の距離が100メートル未満であるとき、このことは、履歴オーダーの開始位置が乗客に近接して位置していることを示している。
測位エンジン110は、履歴オーダーを取得した後、ステップ1530において、上記で説明した履歴オーダーに基づいて待ち合わせ位置を確定することができる。幾つかの実施形態では、待ち合わせ位置は、履歴オーダーの開始位置の平均値又はクラスタリング値(clustered value)を最終待ち合わせ位置として確定することによって確定されてもよい。幾つかの実施形態では、履歴オーダーは取得されなくてもよい。ステップ1510において取得された位置情報が、待ち合わせ位置に関する情報を含む場合、この待ち合わせ位置は、最終待ち合わせ位置として直接指定されてもよい。ステップ1510において取得された位置情報が、待ち合わせ位置を含んでいないが、乗客の現在位置を含む場合、乗客の現在位置が、最終待ち合わせ位置として指定されてもよい。幾つかの実施形態では、測位エンジン110は、検索された履歴オーダーを、開始位置と乗客の現在位置との間の距離に基づいて最小のものから最大のものにランク付けし、最小距離を有する履歴オーダーの開始位置を最終待ち合わせ位置として指定してもよい。測位エンジン110は、その後、最終待ち合わせ位置を乗客及びドライバーに送信することができる。幾つかの実施形態では、測位エンジン110は、乗客によって送信されたオーダーを取得した後、ステップ1520において取得された履歴オーダーを、現在の交通状況、時刻、気象等の他の情報に基づいて更にフィルタリングし、このフィルタリングされた結果に基づいて最終待ち合わせ位置を確定してもよい。
加えて、幾つかの実施形態では、ステップ1510において測位エンジン110によって取得された位置情報は、待ち合わせ位置についての情報を含んでいてもよい。測位エンジン110及びドライバーの双方がこの位置を受理した場合、測位エンジン110は、ステップ1520を実行する必要はない。上記で説明した位置が、最終待ち合わせ位置として直接指定されてもよい。
測位エンジン110の経路処理ユニット340は、待ち合わせ位置と、ドライバーの現在位置と、オーダーの終了位置とに基づいて、ドライバーの現在位置から待ち合わせ位置への1つ以上の経路と、待ち合わせ位置からオーダーの終了位置への1つ以上の経路とを生成することができる。経路計画方法及びその設計因子は、本開示における他の個所において見出すことができ、ここではこれ以上説明しない。測位エンジン110は、上記で説明した1つ以上の経路を乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。
当然ながら、待ち合わせ位置を生成するプロセスの上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、待ち合わせ位置を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。そのような全ての変形及び変更は、本開示の保護範囲内にある。
図16は、本開示の幾つかの実施形態に係る、測位エンジン110によって待ち合わせ位置を確定する一例示的なプロセスのフローチャートである。ステップ1610において、乗客の位置情報を、ネットワーク150を介して測位エンジン110の乗客インターフェース230によって取得することができる。この位置情報は、近似測位位置又は正確な測位位置を含んでいてもよい。乗客の位置情報は、サービス要求に含まれていてもよい。このサービス要求は、最終待ち合わせ位置についての乗客の指示又は好み等の他の情報を含んでいてもよい。
ステップ1620において、測位エンジン110は、位置情報に基づいて1つ以上の候補待ち合わせ位置を確定することができる。本開示の幾つかの実施形態によれば、測位エンジン110が、乗客のサービス要求及び位置情報を取得すると、位置解析ユニット310は、乗客が位置している場所を、当該乗客の位置情報に従って特定することができる。測位エンジン110は、データベース130に記憶されたエリア内の履歴オーダー記録の待ち合わせ位置にアクセスすることによって、そのエリア内の複数のポピュラーな待ち合わせ位置を計算し、次いで、これらの複数のポピュラーな待ち合わせ位置を候補待ち合わせ位置として指定することができる。
本開示の幾つかの実施形態によれば、測位エンジン110は、或る特定の閾値距離に基づいて候補待ち合わせ位置を確定してもよい。乗客位置に基づいて、測位エンジン110は、乗客位置からの或る特定の閾値範囲内の待ち合わせ位置を検索してもよい。この待ち合わせ位置は、その後、候補待ち合わせ位置として指定されてもよい。
本開示の幾つかの実施形態によれば、乗客のサービス要求の待ち合わせ位置についての乗客の好み又は指示に基づいて、乗客が選択又は指示することを好み得る待ち合わせ位置が、候補待ち合わせ位置として指定されてもよい。
次に、ステップ1630において、事前設定ルールに基づいて、測位エンジン110の待ち合わせ位置処理ユニット330は、複数の候補待ち合わせ位置を評価することができる。異なる評価基準及び評価方法に基づいて、評価の事前設定ルールは異なってもよい。本開示の幾つかの実施形態によれば、評価基準は、乗客の位置と複数の候補待ち合わせ位置のそれぞれとの間の距離(この距離は、直線距離又は道路距離であってもよい)、乗客の位置から複数の候補待ち合わせ位置のそれぞれまでに要する時間、乗客の位置から複数の候補待ち合わせ位置のそれぞれまでの交通状況及び道路状況、乗客の位置から複数の候補待ち合わせ位置のそれぞれまでの経路安全状況等、又はそれらの任意の組み合わせであってもよい。本開示の幾つかの実施形態によれば、この評価の方法は、スコア付け及び/又はランク付けを含んでもよい。
以下の例は、評価方法及び評価基準を単に説明することを意図したものである。例えば、乗客の位置と複数の候補待ち合わせ位置のうちの1つとの間の距離が短いほど、より高いスコア/ランクが生成されてもよい。本開示の幾つかの実施形態によれば、乗客の位置から複数の候補待ち合わせ位置のうちの1つまでに要する時間が短いほど、より高いスコア/ランクが生成されてもよい。本開示の他の実施形態によれば、乗客の位置から複数の候補待ち合わせ位置のうちの1つへの経路の交通渋滞レベルが小さいほど、より高いスコア/ランクが生成されてもよい。本開示の他の実施形態によれば、乗客の位置から複数の候補待ち合わせ位置のうちの1つへの経路の安全性指数が高いほど、より高いスコア/ランクが生成されてもよい。
ステップ1640において、測位エンジン110は、ステップ1630における各候補待ち合わせ位置の評価に基づいて、事前に設定された数の待ち合わせ位置を選択することができる。次に、これらの待ち合わせ位置は、乗客インターフェース230及びドライバーインターフェース240を介してそれぞれ乗客端末デバイス120及びドライバー端末デバイス140に送信することができる。幾つかの実施形態によれば、上記事前に設定された数は任意選択であってもよい。例えば、事前に設定された数は、1〜5であってもよいし、他の数であってもよい。上記選択する方法は、スコア又はランクに基づいてより高いスコア又はランクを有する待ち合わせ位置を選択すること、スコア又はランクの幾つかの閾値又は範囲に基づいて候補待ち合わせ位置を除去すること等を含んでもよい。
幾つかの実施形態では、測位エンジン110は、事前に設定された数の待ち合わせ位置を乗客インターフェース230を介して乗客端末デバイス120に送信してもよいが、ドライバー端末デバイス140にはこの同じ情報を送信しなくてもよい。同様に、測位エンジン110は、事前に設定された数の待ち合わせ位置をドライバーインターフェース240を介してドライバー端末デバイス140に送信してもよいが、乗客端末デバイス120にはこの同じ情報を送信しなくてもよい。
ステップ1650において、測位エンジン110は、乗客端末デバイス120及びドライバー端末デバイス140による待ち合わせ位置に関連した処理されたデータを、それぞれ乗客インターフェース230及びドライバーインターフェース240を介して取得することができる。乗客及びドライバーによる待ち合わせ位置の処理は、1つ以上の候補待ち合わせ位置を選択すること、削除すること、評価すること又は更新することを含んでもよい。この評価は、テキストによる格付け又はスコア付けの形態で行われてもよい。この評価は、1つ以上の候補待ち合わせ位置についての乗客又はドライバーの好みを表してもよい。
幾つかの実施形態では、乗客端末デバイス120及びドライバー端末デバイス140は、5つの候補待ち合わせ位置(a、b、c、d、e)を測位エンジン110から受信する場合がある。乗客は、乗客端末デバイス120を用いて位置b、c、及びdを削除する場合がある。ドライバーは、ドライバー端末デバイス140を用いて位置c及びdを削除する場合がある。「削除」としてマーキングされた位置b、c、及びdが結果を返すことができる。幾つかの実施形態では、測位エンジン110は、事前に設定された数の選択された待ち合わせ位置を乗客端末デバイス120及びドライバー端末デバイス140からそれぞれ取得することができる。例えば、乗客端末デバイス120及びドライバー端末デバイス140がともに、5つの候補待ち合わせ位置(a、b、c、d、e)を取得した場合、乗客は、乗客端末デバイス120によって位置b、c、及びdを選択することができ、ドライバーは、ドライバー端末デバイス140によって位置c及びdを選択することができる。最終的に、測位エンジン110は、乗客端末デバイス120によって返された候補待ち合わせ位置(b、c、d)と、ドライバー端末デバイス140によって返された候補待ち合わせ位置(c、d)とを取得することができる。
幾つかの実施形態では、測位エンジン110は、乗客端末デバイス120によって待ち合わせ位置を処理したものを乗客インターフェース230を介して取得してもよいが、ドライバー端末デバイス140から同様の情報を取得しなくてもよい。同様に、測位エンジン110は、ドライバー端末デバイス140によって待ち合わせ位置を処理したものをドライバーインターフェース240を介して取得してもよいが、乗客端末デバイス120から同様の情報を取得しなくてもよい。
ステップ1660において、測位エンジン110の処理モジュール210によって、最高評価を有する処理された待ち合わせ位置を指定待ち合わせ位置として確定することができる。ここで、処理モジュール210は、乗客端末デバイス120及びドライバー端末デバイス140によって待ち合わせ位置を処理したものを最初に前処理して、少なくとも1つの待ち合わせ位置を含む集合を取得することができる。待ち合わせ位置のこの前処理は、乗客端末デバイス120及びドライバー端末デバイス140から受信された待ち合わせ位置に対する集合演算を実行することを含んでもよい。例えば、この集合演算は、交差演算、和演算、補集合演算等を含んでもよい。処理モジュール210は、前処理によって少なくとも1つの待ち合わせ位置を含む集合を取得することができる。
処理モジュール210は、上記集合を取得した後、ステップ1630において、事前設定ルールに基づいてこの集合の待ち合わせ位置を評価することができる。評価基準及び評価方法は、上記説明において見出すことでき、ここではこれ以上説明しない。スコア付けのスコア又はランク付けのランクに従って、最高評価(最高スコア又は最上位ランク)を有する待ち合わせ位置を、乗客及びドライバーの指定待ち合わせ位置として確定することができる。
ステップ1670において、測位エンジン110は、指定待ち合わせ位置を乗客端末デバイス120及びドライバー端末デバイス140に送信することができ、したがって、双方のサービス側に待ち合わせ位置を知らせることができる。
上記で説明した待ち合わせ位置と、ドライバーの現在位置と、オーダーの終了位置とに基づいて、測位エンジン110の経路処理ユニット340は、ドライバーの現在位置から待ち合わせ位置への1つ以上の経路と、待ち合わせ位置からオーダーの終了位置への1つ以上の経路とを生成することができる。経路計画方法及びその設計因子は、本開示における他の個所において見出すことができ、ここではこれ以上説明しない。測位エンジン110は、これらの経路を乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。
幾つかの実施形態では、測位エンジン110は、待ち合わせ位置及び経路を異なる形態で送信してもよい。これらの異なる形態は、音声、テキスト、画像等を含んでもよいが、これらに限定されるものではない。例えば、測位エンジン110は、音声ブロードキャスト方法を用いて、待ち合わせ位置及び経路を乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に送信してもよい。
図17は、本開示の幾つかの実施形態に係る、測位エンジン110によって待ち合わせ位置を確定する一例示的なプロセスのフローチャートである。ステップ1710において、測位エンジン110は、乗客の出発位置及び/又は現在位置を取得することができる。これらの乗客の出発位置及び/又は現在位置は、乗客によって入力されたテキストフォーマットの位置情報、乗客によって選択された地理的座標情報(例えば、地図インターフェースのスライド、プルダウンメニューの選択等)、出発位置及び/又は現在位置を含む乗客によって入力された音声の情報、又は乗客端末デバイス120を用いて乗客によって撮像された画像等のマルチメディア情報であってもよい。幾つかの実施形態では、乗客の出発位置は、乗客の現在位置と同じでなくてもよい。例えば、乗客は、輸送サービスを予約することがあるが、輸送サービスの位置は最終的な出発位置ではない。
測位エンジン110は、出発位置及び/又は現在位置を取得した後、ステップ1720において、これらの情報を解析又は逆解析することができる。地図データを記憶する形態が、取得された出発位置及び/又は現在位置の形態と一致していない場合、測位エンジン110は、取得された位置を解析又は逆解析することができる。例えば、測位エンジン110は、地理的座標の形態で地図データを記憶することができる。測位エンジン110によって取得された位置情報が、ストアの名称又は番地等の住所記述情報であるとき、測位エンジン110は、処理モジュール210の住所解析ユニット310によって、ストアの記述を検索して、経度及び緯度の情報等の対応する地理的座標を見つけることができる。別の例として、測位エンジン110は、地図データを番地の形態で記憶することができる。測位エンジン110が、或る特定の場所の地理的座標情報を取得すると、処理モジュール210の住所解析ユニット310は、この地理的座標情報を逆解析して、番地等の対応する住所記述情報を見つけることができる。上記で説明した住所記述情報は、データベース130における地図データであってもよい。
測位エンジン110は、住所を解析又は逆解析した後、ステップ1730において、乗客の出発位置及び/又は現在位置に基づく第1の待ち合わせ位置集合及び対応する住所記述情報を取得することができる。この第1の待ち合わせ位置集合は、種々の基準に基づいて取得することができる。例えば、この基準は、ドライバーの位置から乗客の出発位置又は現在位置までの距離であってもよい。この距離は、道路距離又は直線距離であってもよい。別の例として、この基準は、ドライバーの位置から乗客の出発位置までの平均到達時間であってもよい。この平均時間は、速度に基づいて取得されてもよい。処理モジュール210の住所解析ユニット310は、第1の待ち合わせ位置集合を取得した後、第1の待ち合わせ位置集合の住所を逆解析して、対応する住所記述情報を見つけることができる。
ステップ1740において、測位エンジン110の待ち合わせ位置処理ユニット330は、事前設定ルールに基づいて、第1の待ち合わせ位置集合の各第1の待ち合わせ位置を評価することができる。種々の評価基準及び評価方法に基づいて、評価の様々な事前設定ルールが存在し得る。評価基準及び評価方法の詳細は、図16におけるステップ1630において見出すことができ、ここではこれ以上説明しない。
測位エンジン110は、第1の待ち合わせ位置集合の評価を取得した後、ステップ1750において、第2の待ち合わせ位置集合及び対応する住所記述情報を生成することができる。
第2の待ち合わせ位置集合を生成するプロセスは、評価結果に基づいて、第1の待ち合わせ位置集合から幾つかの待ち合わせ位置を選択して、少なくとも1つの第2の待ち合わせ位置を含む第2の待ち合わせ位置集合を取得することとすることができる。幾つかの実施形態では、事前設定された数Nに基づいて、測位エンジン110は、最高スコアを有するN個の第1の待ち合わせ位置又はランク付け上位N個の第1の待ち合わせ位置を選択してもよい。幾つかの実施形態では、測位エンジン110は、事前設定閾値評価(例えば、この事前設定閾値評価は或る特定のパーセンテージであってもよい)を越え得る第1の待ち合わせ位置を第2の待ち合わせ位置としてマーキングしてもよい。幾つかの実施形態では、事前に設定された数Nは、必要に応じて調整されてもよい。第1の待ち合わせ位置集合の幾つか又は全てが、第2の待ち合わせ位置集合として選択されてもよい。第1の待ち合わせ位置のうちの幾つかを選択するとき、最初のN個の待ち合わせ位置は、評価結果の或る特定のランク付け順序に基づいて選択されてもよい。同様に、パーセンテージは、必要に応じて調整されてもよい。
上記で説明したプロセスは、第1の待ち合わせ位置集合の複製除去プロセスであってもよい。幾つかの実施形態によれば、測位エンジン110は、任意の2つの第1の待ち合わせ位置の間の距離が事前に設定された距離未満であるか否かを判断してもよい。測位エンジン110は、複製除去プロセスを実行し、任意の2つの第1の待ち合わせ位置の間の距離が事前に設定された距離未満であるとの判断に応じて、第1の待ち合わせ位置の一部分を除去し、1つ以上の第2の待ち合わせ位置を取得してもよい。2つの第1の待ち合わせ位置の間の距離は、直線距離、道路距離、又は移動距離であってもよい。
測位エンジン110は、第2の待ち合わせ位置集合を取得した後、住所の解析及び/又は住所の逆解析によって第2の待ち合わせ位置集合の対応する住所記述情報を取得することができる。このプロセスの説明は、ステップ1720において見出すことができ、ここではこれ以上説明しない。
ステップ1760において、測位エンジン110は、生成された第2の待ち合わせ位置集合及び対応する住所記述情報を乗客インターフェース230及び/又はドライバーインターフェース240を介してそれぞれ乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、生成された第2の待ち合わせ位置集合及び対応する住所記述情報は、異なる形態で乗客端末デバイス120及びドライバーデバイス140に送信されてもよい。本開示の幾つかの実施形態によれば、待ち合わせ位置は、テキストの形態で乗客端末デバイス120及び/又はドライバーデバイス140に送信されてもよい。住所記述情報は、テキスト又は音声の形態で乗客端末デバイス120及び/又はドライバーデバイス140に送信されてもよい。
測位エンジン110の経路処理ユニット340は、上記で説明した待ち合わせ位置と、ドライバーの現在位置と、オーダーの終了位置とに基づいて、ドライバーの現在位置から待ち合わせ位置への1つ以上の経路と、待ち合わせ位置からオーダーの終了位置への1つ以上の経路とを生成することができる。経路計画方法及びその設計要素は、本開示における他の個所において見出すことができ、ここではこれ以上説明しない。測位エンジン110は、これらの経路を乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。
当然ながら、待ち合わせ位置を生成する上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、待ち合わせ位置を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、測位エンジン110は、乗客の出発位置及び/又は現在位置を取得した後、ステップ1720をスキップし、ステップ1730を直接実行してもよい。
図18は、本開示の幾つかの実施形態に係る、測位エンジン110によって待ち合わせ位置を生成する一例示的なプロセスのフローチャートである。ステップ1810において、測位エンジン110は、オーダー送信者(例えば、乗客)の位置情報を取得することができる。本開示の他の部分では、「位置情報」は、「住所情報」又は「住所位置情報」によって表される場合がある。ステップ1810は、乗客インターフェース230によって実行することができる。この位置情報は、乗客の現在位置、オーダーの開始位置、オーダーの終了位置等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。測位エンジン110は、乗客インターフェース230を介して他の情報を取得してもよい。他の情報についての説明は、本開示における他の部分の説明と同様である。
幾つかの実施形態では、位置情報は、位置の座標によって表されてもよい。この位置の座標は、経度及び緯度の座標であってもよい。幾つかの実施形態では、位置情報は、位置の名称によって表されてもよい。位置情報が位置の座標によって表されているとき、ステップ1820において、測位エンジン1820は、位置情報を逆解析して、位置の名称によって表される位置情報を生成することができる。位置情報の解析は、住所解析ユニット310によって実施することができる。次に、ステップ1830において、測位エンジン110は、位置の名称によって表される位置情報に従って候補待ち合わせ位置を生成することができる。ステップ1810において測位エンジン110によって取得された位置情報が、位置の名称によって表されている場合、ステップ1820をスキップすることができ、ステップ1830を直接実行して候補待ち合わせ位置を生成することができる。
ステップ1830において、測位エンジン110によって生成される候補待ち合わせ位置の数は、1つ、2つ、3つ、4つ、5つ、6つ、又は他の任意の数であってもよい。候補待ち合わせ位置を生成するルールは、測位エンジン110に既に記憶されている履歴オーダー又は事前に設定された待ち合わせ位置に基づくものであってもよい。事前に設定された待ち合わせ位置は、測位エンジン110又はデータベース130に記憶された幾つかの住所位置を指すことができ、例えば、住所位置は、乗車場所若しくは降車場所又は一時停止の場所であってもよい。それらの住所位置が、候補待ち合わせ位置であってもよい。履歴オーダーに基づいて候補待ち合わせ位置を生成する方法は、本開示の他の部分において見出すことができる。
幾つかの実施形態では、測位エンジン110は、幾つかの住所位置を待ち合わせ位置として指定することができる。待ち合わせ位置として指定される住所位置は、或る特定の時間内において固定されていてもよいし、絶えず更新されてもよい。更新周期は、1週、1カ月、四半期、半年、1年等を含むことができるが、これらに限定されるものではない。更新の方法は、新たな位置を待ち合わせ位置として追加することと、幾つかの既存の待ち合わせ位置を除去することとを含んでもよい。
幾つかの実施形態では、測位エンジン110は、待ち合わせ位置の情報を記憶することができる。待ち合わせ位置は、出発位置についてのドライバーと乗客との間のコミュニケーションの複雑さを有効に低減することができる。このため、ピックアップの効率を改善することができる。待ち合わせ位置は、データベース130、記憶モジュール220並びにデータを記憶することができるシステムの他のユニット及びモジュールに記憶しておくことができる。測位エンジン110は、乗客によって送信された乗客の現在位置及び/又はオーダーの開始位置を取得すると、或る特定のルールに基づいて待ち合わせ位置を検索し、取得された待ち合わせ位置を候補待ち合わせ位置として指定することができる。このルールは、乗客の現在位置又はオーダーの開始位置からの或る特定の距離範囲内でピックアップポイントを検索することであってもよい。距離範囲は、1メートル〜200メートル、200メートル〜300メートル、300メートル〜400メートル、又は400メートル〜500メートルであってもよい。幾つかの実施形態では、距離範囲は、1メートル〜50メートル、50メートル〜100メートル、100メートル〜150メートル、又は150メートル〜200メートルであってもよい。幾つかの実施形態では、距離範囲は、10メートル、20メートル、30メートル、40メートル、50メートル、60メートル、70メートル、80メートル、90メートル、100メートル等であってもよい。
測位エンジン110は、候補待ち合わせ位置を生成した後、これらの候補待ち合わせ位置を乗客端末デバイス120に送信することができる。加えて、測位エンジン110は、他の情報を乗客端末デバイス120に送信してもよい。これらの他の情報は、候補待ち合わせ位置と乗客の現在位置との間の距離、乗客が自身の現在位置から候補待ち合わせ位置までに要する時間、候補待ち合わせ位置の道路状況等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。候補待ち合わせ位置及び他の情報は、乗客の参照用に乗客端末デバイス120によって表示されてもよい。
幾つかの実施形態では、乗客は、測位エンジン110によって送信された候補待ち合わせ位置を取得した後、これらの候補待ち合わせ位置のうちの1つを最終待ち合わせ位置として直接選択することができる。測位エンジン110は、この最終待ち合わせ位置をドライバー端末デバイス140及び/又は乗客端末デバイス120に送信することができる。幾つかの実施形態では、乗客は、測位エンジン110によって送信された候補待ち合わせ位置を取得した後、1つ以上の選択肢を選択又は削除し、残りの選択肢を測位エンジン110に返信してもよい。次に、測位エンジン110は、乗客端末デバイス120から候補待ち合わせ位置の処理結果を取得してもよい。測位エンジン110は、処理結果を更に処理し、次いで、最終待ち合わせ位置を生成してもよい。測位エンジン110によって処理結果を更に処理する方法は、残りの各待ち合わせ位置をスコア付けすることと、最高スコアを有する待ち合わせ位置を最終待ち合わせ位置として指定することとを含んでもよい。スコア付けのルールは、待ち合わせ位置が位置する道路の交通渋滞のレベル、待ち合わせ位置と乗客の現在位置との間の距離、乗客が自身の現在位置から待ち合わせ位置までに要する時間等、又は任意の組み合わせに基づくものであってもよい。
待ち合わせ位置と、ドライバーの現在位置と、オーダーの終了位置とに基づいて、測位エンジン110の経路処理ユニット340は、ドライバーの現在位置から待ち合わせ位置への1つ以上の経路と、待ち合わせ位置からオーダーの終了位置への1つ以上の経路とを生成することができる。経路計画方法及びその設計因子は、本開示における他の個所において見出すことができ、ここではこれ以上説明しない。測位エンジン110は、これらの経路を乗客インターフェース230及び/又はドライバーインターフェース240によって乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。
当然ながら、待ち合わせ位置を生成する上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、待ち合わせ位置を生成することの様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図19−Aは、本開示の幾つかの実施形態に係る、乗客端末デバイス120がドライバー端末デバイス140に近接しているときに、測位エンジン110によって複数の当事主体(例えば、乗客端末デバイス120及びドライバー端末デバイス140)の距離測定を調整する一例示的なプロセスのフローチャートである。乗客の輸送サービス要求が、ドライバーによって受理されると、ドライバーは、待ち合わせ位置に向かい、乗客をピックアップすることができる。
ステップ1910において、測位エンジン110は、乗客端末デバイス120及びドライバー端末デバイス140からそれぞれ乗客インターフェース230及びドライバーインターフェース240を介して予備の測位情報を取得することができる。この予備の測位情報は、リアルタイムで取得される場合もあるし、リアルタイムで取得されない場合もある。この予備の測位情報は、1つ以上の一般的な測位技術を用いて求められてもよい。これらの測位技術の詳細は、上記説明において見出すことができ、ここではこれ以上説明しない。乗客端末デバイス120及びドライバー端末デバイス140の予備の測位情報は、同じ測位技術を用いて生成されてもよいし、異なる測位技術を用いて生成されてもよい。測位エンジン110は、処理モジュール210によって、2つの当事主体間の距離を、それらの当事主体の予備の測位情報に基づいて計算することができる。この距離は、直線距離又は最短道路距離であってもよい。幾つかの実施形態では、この道路距離は、車両の最短移動距離であってもよい。
ステップ1920において、測位エンジン110は、乗客端末デバイス120とドライバーデバイス140との間の計算された距離を事前設定閾値と比較することができる。幾つかの実施形態では、この事前設定閾値は、測定デバイスの信号カバレッジ範囲及び/又は測定範囲に基づいて決定されてもよい。幾つかの実施形態では、事前設定閾値は、当事主体のうちの1つの履歴オーダーに基づいて個別に決定されてもよい。また、事前設定閾値は、当事主体の履歴オーダーに基づいて一括して決定されてもよい。上記で説明した履歴オーダー情報は、データベース130の履歴オーダーデータベース710を検索又は照会することによって取得することができる。幾つかの実施形態では、事前設定閾値は、乗客端末デバイス120及びドライバー端末デバイス140が位置する地理的エリア及び/又は特定の位置に基づいて決定されてもよい。これらの特定の地理的エリア及び/又は特定の位置の情報は、データベース130の地図データベース720を検索又は照会することによって取得することができる。幾つかの実施形態では、事前設定閾値は、乗客及びドライバーの個人の好みに基づいて決定されてもよい。個人の好みは、データベース130のユーザーデータベース730に記憶されたユーザー情報を検索又は照会することによって取得することができる。
乗客端末デバイス120とドライバーデバイス140との間の距離が事前設定閾値未満である場合、プロセスは、ステップ1930に進むことができる。一方、乗客端末デバイス120とドライバーデバイス140との間の距離が事前設定閾値以上であるとの判断に応じて、プロセスは、ステップ1910に進むことができ、測位エンジン110は、乗客端末デバイス120及びドライバーデバイス140の予備の測位情報の取得を継続することができる。
ステップ1930において、測位エンジン110は、当事主体のうちの1つ以上の距離測定デバイスをオンにすることができるように、乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に命令を送信することができる。距離測定デバイスは、距離測定技術を用いて物体間の距離を測定することが可能なデバイスを指すことができる。距離測定デバイスは、乗客端末デバイス120又はドライバー端末デバイス140内に統合されてもよい(例えば、距離測定デバイスは、コミュニケーションモジュール640内に統合されてもよい)。距離測定デバイスは、乗客端末デバイス120/ドライバー端末デバイス140と接続された外部デバイスであってもよい。距離測定技術は、電磁波、音波、若しくは他の波、又はそれらの任意の組み合わせに基づくものであってもよい。
例えば、距離測定技術は、電波、赤外線、可視光等、又はそれらの任意の組み合わせ等の電磁波に基づくものであってもよい。距離測定技術は、Bluetooth(登録商標)帯域又は他のマイクロ波帯域等の電波に基づくものであってもよい。距離測定技術は、近赤外線、中赤外線、遠赤外線等、又はそれらの任意の組み合わせ等の赤外線に基づくものであってもよい。
距離測定技術は、超音波、超低周音波、他の周波数帯域の音波等、又はそれらの任意の組み合わせ等の音波に基づくものであってもよい。
電磁波又は音波に基づく距離測定技術は、距離を測定する複数の原理のうちの1つ以上のものに基づくものであってもよい。
例えば、電磁波又は音波に基づく距離測定技術は、波伝播時間、ドップラー効果、信号強度、信号減衰特性等、又はそれらの任意の組み合わせに基づくものであってもよい。
幾つかの実施形態では、測位エンジン110の命令は、1つ以上の距離測定デバイスをオンにするように命令するものであってもよい。当事主体の距離測定デバイスは、同時にオンになるように命令されてもよいし、それらのうちの1つのみがオンになるように命令されてもよい。
幾つかの実施形態では、測位エンジン110は、乗客端末デバイス120及び/又はドライバー端末デバイス140の距離測定デバイスに命令を送信しなくてもよいが、乗客端末デバイス120にもドライバー端末デバイス140にも属さない公共の距離測定デバイスに命令を送信して、この公共の距離測定デバイスをオンにしてもよい。この公共の距離測定デバイスは、オン・デマンドサービスシステム105又はネットワーク環境100における情報源160であってもよい。公共の距離測定デバイスは、乗客端末デバイス120とドライバーデバイス140との間の距離を測定することによって、当事主体のうちの1つ以上のものの距離情報又は方向情報を取得することができる。
距離測定デバイスがオンにされているとき、測位エンジン110は、ステップ1940において距離測定デバイスによって送信された距離測定データと、当事主体間の現在の距離とを取得することができる。この距離測定データは、当初データ、中間データ、最終データ(例えば、距離測定データは、当事主体間の計算された距離であってもよい)等、又はそれらの任意の組み合わせであってもよい。当事主体間の距離は、測位エンジン110によって取得された距離測定データに直接含まれていてもよい。乗客とドライバーとの間の距離も、測位エンジン110の処理モジュール210による計算及び処理によって取得された距離測定データであってもよい。
ステップ1950において、測位エンジン110は、乗客端末デバイス120及びドライバー端末デバイス140が、それらのそれぞれのコンテンツ提示モジュール610によって距離を表示することができるように、ステップ1940において取得された現在の距離を、乗客インターフェース230及びドライバーインターフェース240を介しネットワーク150を経由してそれぞれ乗客端末デバイス120及びドライバー端末デバイス140に送信することができる。
当然ながら、当事主体の距離測定プロセスを調整する測位エンジン110の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、距離測定プロセスを調整する上記ステップの任意の組み合わせ、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、当事主体のうちの一方が、乗客とドライバーとの間の現在の距離を直接取得する場合、測位エンジン110は、他方の当事主体に現在の距離を送信してもよい。例えば、乗客端末デバイス120とドライバー端末デバイス140との間の距離測定は、測位エンジン110の調整なしに2つの当事主体間の直接のコミュニケーションに基づいて行われてもよい。より詳細には、2つの当事主体のうちの一方は、コミュニケーションモジュール640によって、他方の当事主体に、距離測定デバイスをオンにし、距離測定を実行すること等を要請する要求を送信してもよい。他方の当事主体の距離測定デバイスがオンにされた後、上記距離測定プロセスは完了することができ、距離測定データを取得することができる。
図19−Bは、本開示の幾つかの実施形態に係る、乗客端末デバイス120がドライバー端末デバイス140に近接しているときの距離測定の一例示的なプロセスのフローチャートである。
ステップ1915において、ドライバー端末デバイス140は、それ自体の測位情報を取得することができる。幾つかの実施形態では、ドライバー端末デバイス140は、測位モジュール630によって測位情報を取得することができる。幾つかの実施形態では、ドライバー端末デバイス140によって取得された測位情報は、I/Oモジュール620によって取得された乗客入力情報であってもよい。ユーザー入力情報は、テキスト情報、音声情報、又は画像情報であってもよい。より詳細には、画像情報は、静止画像情報又はビデオ情報であってもよい。
ステップ1925において、ドライバー端末デバイス140は、取得された測位情報をコミュニケーションモジュール640によって送信することができる。この測位情報は、システム105又は乗客端末デバイス120によって取得することができる。
ステップ1935において、ドライバー端末デバイス140は、当該ドライバー端末デバイス140に統合された距離測定デバイスをオンにする、測位エンジン110からの命令が受信されたか否かを判断することができる。プロセスは、この命令が受信されたとの判断に応答して、ステップ1945に進むことができる。一方、プロセスは、ドライバー端末デバイス140上の距離測定デバイスをオンにする、測位エンジン110からの命令が受信されていないとの判断に応答して、ステップ1915に戻り、測位情報の取得を継続することができる。
本開示の幾つかの実施形態によれば、ステップ1935において、判断されることを待機している内容は、測位エンジン110からの命令でなくてもよく、乗客端末デバイス120からの要求であってもよい。この要求の内容は、距離測定デバイスをオンにするようにドライバー端末デバイス140に要求することである。
幾つかの実施形態では、ドライバー端末デバイス140は、命令が受信されたか否かを判断することなく、ステップ1925の後にステップ1945を直接実行してもよい。
ステップ1945において、ドライバー端末デバイス140は、距離測定デバイスをオンにして、ドライバー端末デバイス140と乗客端末デバイス120との間の距離を測定することができる。距離測定デバイスによって用いられる距離測定方法及び距離測定原理は、従前の内容に見出すことができ、ここではこれ以上説明しない。
幾つかの実施形態では、ドライバーデバイス140は、距離測定デバイスをオンにすることによって距離測定データを取得することができる。この距離測定データは、当初データ、中間データ、最終データ(例えば、距離測定データは、当事主体間の計算された距離であってもよい)、距離測定プロセスの他方の当事主体の方向等、又はそれらの任意の組み合わせであってもよい。
ステップ1955において、ドライバー端末デバイス140は、距離測定データをコミュニケーションモジュール640によってネットワーク150を介して1つ以上のデバイスに送信することができる。幾つかの実施形態では、上記で説明したデバイスは、乗客端末デバイス120、システム105、又はサードパーティコンピューティングデバイス等の他のデバイスを含んでもよい。距離測定データをそれらのデバイスに送信することによって、ドライバー端末デバイス140は、それらのデバイスに、ドライバーと乗客との間の距離を取得させ、乗客及びドライバーの出会うのに有用な情報を提供させることができる。本開示の幾つかの実施形態によれば、距離測定データは、当初データ、中間データ、最終データ(例えば、距離測定データは、当事主体間の計算された距離であってもよい)等、又はそれらの任意の組み合わせであってもよい。これに対応して、距離測定データは、当事主体間の距離を取得するために、乗客端末デバイス120、システム105、又は他のコンピューティングデバイス等の他の物によって処理されてもよい。また、距離測定データは、当事主体間の距離を取得するためにローカルに処理されてもよく、例えば、距離測定データは、ドライバー端末デバイス140によって処理されてもよい。
特に、ドライバーデバイス140は、乗客端末デバイス120が距離測定データを表示するために、距離測定データを乗客端末デバイス120に送信してもよい。
ステップ1965において、ドライバー端末デバイス140は、ドライバーと乗客との間の距離を取得することができる。幾つかの実施形態では、この距離は、乗客端末デバイス120、システム105、又は他のコンピューティングデバイスから取得することができる。幾つかの実施形態では、ドライバー端末デバイス140は、コンテンツ提示モジュール610によってこの距離を表示してもよい。
本開示の幾つかの実施形態によれば、ドライバー端末デバイス140が、当事主体(例えば、乗客及びドライバー)間の距離を処理及び計算した後、ドライバー端末デバイス140は、ステップ1965を実行しなくてもよい。
当然ながら、ドライバー端末デバイス140による2つの当事主体(乗客及びドライバー)の距離測定の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。当業者であれば、上記ステップの任意の組み合わせ、上記プロセスを実行する様々な変形及び変更を本開示の教示の下で行うことができる。例えば、ステップ1935(判断動作)は必要でないか、又はステップ1965(距離取得)は必要でない。そのような全ての変更は、本開示の保護範囲内にある。
図20は、本開示の幾つかの実施形態に係る、Bluetooth(登録商標)ベースステーション(基地局)を通じた測位エンジン110による乗客端末デバイス120の距離測定の一例示的なプロセスのフローチャートである。
ステップ2010において、測位エンジン110は、それぞれ乗客インターフェース230及びドライバーインターフェース240を介して、乗客端末デバイス120及びドライバー端末デバイス140の予備の測位情報を取得することができる。幾つかの実施形態によれば、乗客端末デバイス120及びドライバー端末デバイス140の予備の測位情報は、異なる形態の情報であってもよい。例えば、予備の測位情報は、テキスト入力情報、画像インターフェース内のアイコン情報、又は1つ以上の測位技術を用いて求められた測位情報であってもよい。この情報は、リアルタイムで取得されてもよいし、リアルタイムで取得されなくてもよい。乗客端末デバイス120及びドライバー端末デバイス140の予備の測位情報は、同時に取得されてもよいし、同時に取得されなくてもよい。例えば、乗客端末デバイス120の予備の測位情報は、非リアルタイムで取得されてもよい。ドライバー端末デバイス140の予備の測位情報は、リアルタイムで取得されてもよいし、その逆であってもよい。測位エンジン110は、処理モジュール210によって、乗客端末デバイス120及びドライバー端末デバイス140の取得された予備の測位情報に基づいて乗客とドライバーとの間の距離を計算することができる。上記で説明したように、この距離は、直線距離、最短道路距離、又は最短移動距離であってもよい。
ステップ2020において、測位エンジン110は、乗客端末デバイス120とドライバー端末140との間の距離に関して、乗客とドライバーとの間の距離が或る特定の閾値未満であるか否かを判断する判定を行うことができる。プロセスは、乗客とドライバーとの間の距離が上記或る特定の閾値未満であるとの判断に応答してステップ2030に進むことができる。一方、プロセスは、乗客とドライバーとの間の距離が上記或る特定の閾値以上であるとの判断に応答してステップ2010に戻ることができる。
上記判定の詳細な説明は、図19−A及び図19−Bにおける上記開示に見出すことができ、ここではこれ以上説明しない。
当然ながら、上記閾値は、Bluetooth(登録商標)ベースステーション(基地局)の信号カバレッジエリア又は測定範囲等の因子に基づいて決定されてもよい。上記閾値の決定は、1つ以上の当事主体(乗客及び/又はドライバー)の履歴オーダーに基づいて行われてもよい。この履歴オーダー情報は、データベース130の履歴オーダーデータベース710の検索又は問い合わせによって取得することができる。上記閾値の決定は、乗客端末デバイス120及びドライバー端末デバイス140の地理的エリア又は特定の位置に基づいて取得されてもよい。特定の地理的エリア又は特定の位置の情報は、データベース130の地図データベース720の検索又は問い合わせによって取得することができる。上記閾値の決定は、乗客及びドライバーの個人の好みに基づいて取得されてもよい。この個人の好みは、データベース130のユーザーデータベース730に記憶されたユーザー情報の検索又は問い合わせによって取得することができる。
より詳細には、上記閾値は、Bluetooth(登録商標)ベースステーション(基地局)の信号カバレッジエリアの半径に基づいて決定されてもよい。例えば、Bluetooth(登録商標)ベースステーション(基地局)の信号カバレッジエリアの半径が50メートルである場合、事前設定閾値は50メートルとして設定されてもよい。もちろん、事前設定閾値は必要に応じて設定されてもよい。例えば、計算精度を考慮すると、事前設定閾値は、Bluetooth(登録商標)ベースステーション(基地局)の信号カバレッジエリアの半径の値未満であってもよい。例えば、Bluetooth(登録商標)ベースステーション(基地局)の信号カバレッジエリアの半径が50メートルである場合、事前設定閾値は、40メートル、30メートル、20メートル等として設定されてもよい。
ステップ2030において、測位エンジン110は、Bluetooth(登録商標)ベースステーション(基地局)に、このステーションをオンにし、ブロードキャスト信号を送信させる命令を送信することができる。幾つかの実施形態によれば、Bluetooth(登録商標)ベースステーション(基地局)は、Bluetooth(登録商標)測位技術を用いて他の物体の位置を求めることができ、それらの物体のそれぞれと当該Bluetooth(登録商標)ベースステーション(基地局)との間の距離を計算してもよい。Bluetooth(登録商標)ベースステーション(基地局)の数は1つ以上であってもよい。Bluetooth(登録商標)ベースステーション(基地局)は、公共のBluetooth(登録商標)ベースステーション(基地局)であってもよい。例えば、これは、公衆がアクセスすることができる施設に設置されてもよい。また、Bluetooth(登録商標)ベースステーション(基地局)は、プライベートのBluetooth(登録商標)ベースステーション(基地局)であってもよい。例えば、これは、乗客及び/又はドライバーの周辺に設置されてもよい。本開示の幾つかの実施形態によれば、Bluetooth(登録商標)ベースステーション(基地局)は、ドライバー端末デバイス140に近接して配置されてもよい(例えば、このステーションは、ドライバーの自動車にセットされていてもよい)。このため、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離は、乗客端末デバイス120とドライバー端末デバイス140との間の現在の距離として指定されてもよい。
幾つかの実施形態では、Bluetooth(登録商標)ベースステーション(基地局)は、iBeacon Bluetooth(登録商標)ベースステーション(基地局)であってもよい。Apple Inc社によってリリースされたiBeaconは、Bluetooth(登録商標)4.0に基づくBluetooth(登録商標)ベースステーション(基地局)プロトコルである。iBeaconをサポートする乗客端末デバイス120が、iBeacon Bluetooth(登録商標)ベースステーション(基地局)の信号カバレッジエリアに入ると、乗客端末デバイス120は、iBeacon Bluetooth(登録商標)ベースステーション(基地局)によって送信されたブロードキャスト信号を取得することができる。乗客端末デバイス120とiBeacon Bluetooth(登録商標)ベースステーション(基地局)との間の距離は、このブロードキャスト信号の信号強度に基づいて計算することができる。
当然ながら、Bluetooth(登録商標)ベースステーション(基地局)の上記説明は、単なる例示にすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、上記プロセスを実行する上記ステップの任意の組み合わせ、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、Bluetooth(登録商標)ベースステーション(基地局)は、同様の機能を有する他のBluetooth(登録商標)ベースステーション(基地局)であってもよい。
ステップ2040において、測位エンジン110は、乗客端末デバイス120によって送信された、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間のブロードキャスト信号強度を乗客インターフェース230を介して取得することができる。ステップ2040において、ブロードキャスト信号強度を取得すること以外に、測位エンジン110は他の情報を取得してもよい(例えば、測位エンジン110は、Bluetooth(登録商標)ベースステーション(基地局)の識別子及び同定情報、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間のコミュニケーションの他のパラメーター等を取得してもよい)。より詳細には、上記識別子又は同定情報は、MACアドレス、汎用一意識別子(UUID)等を含んでもよいが、これらに限定されるものではない。乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間のコミュニケーションの他のパラメーターは、Bluetooth(登録商標)コミュニケーションの周波数帯域、電力、信号対雑音比(SNR)、フレームに関するパラメーター、他のチャネルパラメーター等を含んでもよい。上記情報に基づいて、測位エンジン110は、ステップ2050において、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離を計算することができる。
ステップ2060において、測位エンジン110は、この距離を乗客インターフェース230及びドライバーインターフェース240を介して乗客端末デバイス120及びドライバー端末デバイス140に送信して、これらの当事主体のうちの少なくとも一方に距離情報を表示させることができる。
当然ながら、測位エンジン110によって乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離を計算するプロセスの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、上記プロセスを実行する上記ステップの任意の組み合わせ、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、乗客端末デバイス120及び/又はBluetooth(登録商標)ベースステーション(基地局)が、それらの間の距離を既に計算しているとき、ステップ2050はスキップされてもよく、例えば、測位エンジン110は、ステップ2040の後にステップ2050及びステップ2060を実行しなくてもよい。測位エンジン110は、ステップ2040の後にステップ2060も実行し、乗客端末デバイス120及びドライバー端末デバイス140のうちの一方の当事主体に上記距離を送信してもよい。別の例として、Bluetooth(登録商標)ベースステーション(基地局)は、乗客端末デバイス120及びドライバー端末デバイス140を測位し、それらの間の距離を同時に測定し、その後、それらの当事主体の情報に基づいてそれらの当事主体間の距離及び方向を計算し、ステップ2060においてこれらの距離及び方向を当事主体に送信してもよい。別の例として、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離測定は、測位エンジン110によって調整されなくてもよい。乗客端末デバイス120又はドライバー端末デバイス140のコミュニケーションモジュール640は、ブロードキャストを開始するようにBluetooth(登録商標)ベースステーション(基地局)に要求する要求をBluetooth(登録商標)ベースステーション(基地局)に送信してもよい。一方で、乗客端末デバイス120が、このブロードキャストを取得した後、乗客端末デバイスのコミュニケーションモジュール640は、ブロードキャスト信号の強度と、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間のコミュニケーションの他の情報とを取得してもよい。乗客端末デバイス120は、ブロードキャスト信号の強度と、他の情報とをコミュニケーションモジュール640を通じてドライバー端末デバイス140に報告し、ドライバー端末デバイス140の処理モジュール640に、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離を処理及び計算させてもよい。代替的に、乗客端末デバイス120は、乗客端末デバイス120とBluetooth(登録商標)ベースステーション(基地局)との間の距離を処理及び計算によって取得し、距離情報をコミュニケーションモジュール640を通じてドライバー端末デバイス140に送信してもよい。
同様に、Bluetooth(登録商標)ベースステーション(基地局)によるドライバー端末デバイス140の距離測定は、乗客端末デバイス120の距離測定の説明に見出すことができる。
図21は、本開示に開示された特定のシステムを実施するように構成されたモバイルデバイスの構造を示している。幾つかの実施形態では、位置に関連した情報を表示及び通信するように構成されたユーザー端末デバイスが、モバイルデバイス2100であってもよい。このモバイルデバイスは、スマートフォン、タブレットコンピューター、ミュージックプレーヤー、ポータブルゲームコンソール、GPS受信機、ウェアラブル計算デバイス(例えば、メガネ、腕時計等)等を含んでもよいが、これらに限定されるものではない。モバイルデバイス2100は、1つ以上の中央処理装置(CPU)2140と、1つ以上のグラフィカル処理ユニット(GPU)2130と、ディスプレイ2120と、メモリ2160と、アンテナ2110(例えば、無線コミュニケーションユニット)と、記憶ユニット2190と、1つ以上の入力/出力(I/O)デバイス2150とを備えることができる。その上、モバイルデバイス2100は、他の任意の適した構成要素であってもよく、この構成要素には、システムバス又はコントローラー(図21に図示せず)が含まれるが、これらに限定されるものではない。図21に示すように、モバイルオペレーティングシステム2170(例えば、IOS、Android(登録商標)(アンドロイド)、Windows(登録商標) Phone(ウィンドウズフォン)等)及び1つ以上のアプリケーション2180を記憶ユニット2190からメモリ2160にロードし、CPU2140によって実施することができる。アプリケーション2180は、モバイルデバイス2100において位置に関連した情報を受信及び処理するように構成されたブラウザー又は他のモバイルアプリケーションを含んでもよい。乗客/ドライバーは、位置に関連したコミュニケーション情報をシステムI/Oデバイス2150を通じて取得し、測位エンジン110及び/又はシステム100の他のモジュール若しくはユニット、例えばネットワーク150にこの情報を提供することができる。
上記で説明した様々なモジュール、ユニット及びそれらの機能を実施するために、コンピューターハードウェアプラットフォームが、1つ以上のエレメント(例えば、図1〜図20において説明した測位エンジン110及び/又はシステム100の他のセクション)のハードウェアプラットフォームとして用いられてもよい。これらのハードウェアエレメント、オペレーティングシステム及びプログラム言語は一般に知られているので、当業者であれば、これらの技法に精通している可能性があり、本開示において説明した技法に従ってオン・デマンドサービスにおいて必要とされる情報を提供することが可能であり得ると仮定することができる。ユーザーインターフェースを有するコンピューターは、パーソナルコンピューター(PC)、又は他のタイプのワークステーション若しくは端末デバイスとして用いられてもよい。ユーザーインターフェースを有するコンピューターは、適切にプログラミングされた後、サーバーとして用いられてもよい。当業者であれば、このタイプのコンピューターデバイスのそのような構造、プログラム、又は一般的な動作にも精通している可能性があると考えることができる。このため、図について余分な説明は記載されていない。
図22は、本開示に開示された特定のシステムを実施するように構成されたコンピューティングデバイスの構造を示している。特定のシステムは、機能ブロック図を用いて、1つ以上のユーザーインターフェースを含むハードウェアプラットフォームを説明することができる。コンピューターは、一般的な機能を有するコンピューターであってもよいし、特定の機能を有するコンピューターであってもよい。いずれのタイプのコンピューターも、本開示の幾つかの実施形態に従って任意の特定のシステムを実施するように構成することができる。コンピューター2200は、本明細書において開示されたオン・デマンドサービスによって必要とされる情報を提供する任意の構成要素を実施するように構成することができる。例えば、測位エンジン110は、コンピューター2200のようなコンピューターのハードウェアデバイス、ソフトウェアプログラム、ファームウェア、又はそれらの任意の組み合わせによって実施することができる。簡潔にするために、図22は、1つのコンピューターのみを示している。幾つかの実施形態では、オン・デマンドサービスが必要とすることがある情報を提供するこのコンピューターの機能は、システムの処理負荷を分散させるために、同様のプラットフォームからなるグループによって分散モードで実施されてもよい。
コンピューター2200は、データコミュニケーションを実施することができるネットワークと接続することができるコミュニケーション端末2250を備えることができる。コンピューター2200は、命令を実行するように構成されたCPUも備えることができ、1つ以上のプロセッサを備える。この概略的なコンピュータープラットフォームは、内部コミュニケーションバス2210と、異なるタイプのプログラム記憶ユニット及びデータ記憶ユニット(例えば、ハードディスク2270、リード・オンリー・メモリ(ROM)2230、ランダム・アクセス・メモリ(RAM)2240)と、コンピューター処理及び/又はコミュニケーションに適用可能な様々なデータファイルと、CPUによって実行される可能性がある幾つかのプログラム命令とを備えることができる。コンピューター2200は、当該コンピューターと他の構成要素(例えば、ユーザーインターフェース2280)との間のデータフローの入力及び出力をサポートすることができるI/Oデバイス2260も備えることができる。その上、コンピューター2200は、コミュニケーションネットワークを介してプログラム及びデータを受信することができる。
オン・デマンドサービスによって必要とされる情報を提供する方法及び/又はプログラムによって他のステップを実施する方法の様々な態様を上記で説明している。本技法のプログラムは、実行可能なコード及び/又は関係データの形態で提供される「製品」又は「人工物」とみなすことができる。本技法のプログラムは、コンピューター可読媒体によって結合又は実施することができる。有形の不揮発性記憶媒体は、コンピューター、プロセッサ、同様のデバイス、又は関連モジュールにおいて適用される任意のタイプのメモリ又は記憶装置を含んでもよい。例えば、有形の不揮発性記憶媒体は、様々なタイプの半導体記憶装置、テープドライブ、ディスクドライブ、又は記憶機能を任意の時点にソフトウェアに提供することが可能な同様のデバイスであってもよい。
ソフトウェアの幾つか又は全ては、時に、ネットワーク、例えば、インターネット又は他のコミュニケーションネットワークを介して通信することがある。この種のコミュニケーションは、或るコンピューターデバイス又はプロセッサから別のコンピューターデバイス又はプロセッサにソフトウェアをロードすることができる。例えば、ソフトウェアは、オン・デマンドサービスシステムの管理サーバー又はメインコンピューターから、コンピューター環境内のハードウェアプラットフォーム、このシステムを実施することが可能な他のコンピューター環境、又はオン・デマンドサービスによって必要とされる情報を提供する同様の機能を有するシステムにロードすることができる。これに対応して、ソフトウェアエレメントを送信するのに用いられる別の媒体を、機器のうちの幾つかの間の物理接続として用いることができる。例えば、光波、電流波、電磁波等をケーブル、光ケーブル又は無線によって伝送することができる。波を搬送するのに用いられる物理媒体、例えば、ケーブル、無線接続、光ケーブル等は、ソフトウェアをホストする媒体とみなすこともできる。本明細書では、有形の「記憶」媒体が特に指定されていない限り、コンピューター又は機械の「可読媒体」を表す他の術語も、任意の命令を実行するときにプロセッサによって結合される媒体を表すことができる。
コンピューター可読媒体は、様々な形態を含んでもよい。これらの形態には、有形の記憶媒体、波搬送媒体又は物理伝送媒体が含まれるが、これらに限定されるものではない。安定した記憶媒体は、コンパクトディスク、磁気ディスク、又は他のコンピューター又は同様のデバイスにおいて適用される記憶システムを含んでもよく、図面において説明したシステムの全てのセクションを実現してもよい。不安定な記憶媒体は、ダイナミックメモリ、例えば、コンピュータープラットフォームのメインメモリを含んでもよい。有形の伝送媒体は、コンピューターシステムの内部におけるバスを形成する回路を含めて、同軸ケーブル、銅ケーブル及び光ファイバーを含んでもよい。波搬送媒体は、電気信号、電磁気信号、音響信号又は光波信号を伝送することができる。そして、これらの信号は、無線周波数コミュニケーション又は赤外線データコミュニケーションによって生成されてもよい。一般のコンピューター可読媒体は、ハードディスク、フロッピーディスク、磁気テープ、又は他の任意の磁気媒体;CD−ROM、DVD、DVD−ROM、又は他の任意の光媒体;パンチカード、又は開口モードを含む他の任意の物理記憶媒体;RAM、PROM、EPROM、フラッシュEPROM、又は他の任意のメモリチップ若しくは磁気テープ;データ又は命令を伝送するのに用いられる搬送波、搬送波を伝送するのに用いられるケーブル若しくは接続デバイス、又はコンピューターにアクセス可能な他の任意のプログラムコード及び/又はデータを含んでもよい。コンピューター可読媒体のほとんどは、プロセッサによる命令の実行又は1つ以上の結果の送信において適用することができる。
当業者には、本開示の幾つかの実施形態に従って様々な代替形態及び改良形態を実現することができることを理解することができる。例えば、上記で説明したシステムの様々な構成要素は全て、ハードウェア機器によって実現される。実際は、上記で説明したシステムの様々な構成要素は、例えば、このシステムを現在のサーバー上にインストールすることによって単にソフトウェアによって実現されてもよい。これに加えて又はこれに代えて、本明細書において開示された位置情報は、ファームウェア、ファームウェア及びソフトウェアの組み合わせ、ファームウェア及びハードウェアの組み合わせ、又はファームウェア、ハードウェア及びソフトウェアの組み合わせによって提供されてもよい。
本開示及び/又は幾つかの他の例を上記において説明してきた。上記説明によれば、様々な代替形態を実現することができる。本開示の主題は、様々な形態及び実施形態において実現することができ、本開示は、様々なアプリケーションプログラムにおいて更に用いることができる。特許請求の範囲において保護される必要がある全ての用途、変更及び変形は、本開示の保護範囲内にあるとすることができる。