本開示の実施形態に関連した技術的解決策を示すために、実施形態の説明において参照される図面の簡単な導入を以下に提供する。明らかに、以下に説明する図面は、本開示の幾つかの例又は実施形態にすぎない。当業者であれば、更なる創造的な努力を行うことなく、これらの図面に従って本開示を他の同様のシナリオに適用することができる。別段の記載がない限り又は文脈から明らかでない限り、図面における同じ参照符号は、同じ構造体及び動作を指している。
個数が特定されていないものが本開示及び添付の特許請求の範囲において用いられているとき、それらは、内容が明らかに別のことを規定していない限り、単数のもの及び複数のものを含む。「備える」及び/又は「含む」という用語は、本開示において用いられるとき、明示されたステップ及び要素の存在を明記しているが、1つ以上の他のステップ及び要素の存在又は追加を排除するものではないことが更に理解されるであろう。
システムの幾つかのモジュールは、本開示の幾つかの実施形態に従って、様々な方法で参照される場合があるが、クライアント端末及び/又はサーバーでは、任意の数量の異なるモジュールが用いられ、動作されてもよい。これらのモジュールは、例示であることが意図され、本開示の範囲を限定することを意図するものではない。システム及び方法の異なる態様では、異なるモジュールが用いられてもよい。
本開示の幾つかの実施形態によれば、フローチャートは、システムによって実行される動作を示すのに用いられる。上記又は下記の動作は順番に実施されてもよいし、されなくてもよいことが明らかに理解されることであろう。逆に、動作は、逆順に実行されてもよいし、同時に実行されてもよい。その上、1つ以上の他の動作がフローチャートに追加されてもよいし、1つ以上の動作がフローチャートから省略されてもよい。
本開示の実施形態は、異なる輸送システムに適用されてもよい。これらの異なる輸送システムには、陸上輸送、海上輸送、空輸、宇宙輸送等、又はそれらの任意の組み合わせが含まれるが、これらに限定されるものではない。輸送システムの車両は、人力車、移動ツール(travel tool)、タクシー、運転手付き乗用車サービス、ヒッチ(hitch)、バス、鉄道輸送(例えば、列車、弾丸列車、高速鉄道、及び地下鉄)、船舶、飛行機、宇宙船、熱気球、無人車両等、又はそれらの任意の組み合わせを含んでもよい。また、輸送システムは、管理及び/又は配送を利用する任意の輸送システム、例えば、速達を送り及び/又は受け取るシステムも含んでもよい。本開示の異なる実施形態の応用シナリオは、1つ以上のウェブページ、ブラウザープラグイン及び/又は拡張、クライアント端末、カスタムシステム、社内解析システム、人工知能ロボット等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。本明細書に開示されたシステム及び方法の応用シナリオは、幾つかの例又は実施形態にすぎないことが理解されるであろう。当業者であれば、更なる創造的な努力を行うことなく、これらの図面を他の応用シナリオに適用することができる。例えば、他の同様のユーザーオーダー受信システムである。
本開示における「ユーザー」、「乗客」、「要求者」、「サービス要求者」、及び「客」という用語は、サービスを要求又はオーダーすることができる個人、団体又はツールを指すために区別なく用いられる。当事主体は、個人であってもよいし、デバイスであってもよい。また、本開示における「ドライバー」、「提供者」、「サービス提供者」、及び「サプライヤー」という用語は、サービスを提供することができ又はサービスの提供を容易にすることができる個人、団体、又はデバイスを指すために区別なく用いられる。加えて、本開示における「ユーザー」という用語は、サービスを要求することができ、サービスをオーダーすることができ、サービスを提供することができ、又はサービスの提供を容易にすることができる個人、団体、又はデバイスを指してもよい。
図1−Aは、本開示の幾つかの実施形態に係るオン・デマンドサービスシステムを含むネットワーク環境の概略図である。ネットワーク環境100は、オン・デマンドサービスシステム105と、1つ以上の乗客端末デバイス120と、1つ以上のデータベース130と、1つ以上のドライバー端末デバイス140と、1つ以上のネットワーク150と、1つ以上の情報源160とを備えることができる。オン・デマンドサービスシステム105は、POI(関心地点;Point of Interest)エンジン110を備えることができる。幾つかの実施形態では、POIエンジン110は、収集された情報を解析して解析結果を生成するように構成されたシステムとすることができる。POIエンジン110は、サーバーであってもよいし、有線ネットワーク又は無線ネットワークを介して接続されたサーバーグループであってもよい。サーバーグループは、集中型(例えば、データセンター)であってもよいし、分散型(例えば、分散システム)であってもよい。POIエンジン110は、集中型であってもよいし、分散型であってもよい。
本開示において、「乗客」、「乗客端末」、及び「乗客端末デバイス」は、区別なく用いられる場合がある。本開示において、「ドライバー」、「ドライバー端末」、及び「ドライバー端末デバイス」は、区別なく用いられる場合がある。乗客端末120及びドライバー端末140のそれぞれは、ユーザーと呼ばれる場合がある。乗客端末120及びドライバー端末のそれぞれは、それぞれサービス要求者及びサービス提供者等のサービスオーダーに直接関係する個人、デバイス、又は他の団体であってもよい。乗客は、サービス要求者である場合がある。乗客は、乗客端末デバイス120のユーザーも含むことができる。幾つかの実施形態では、乗客端末デバイスのユーザーは乗客自身ではない。例えば、乗客端末デバイス120のユーザーAは、乗客端末デバイス120を用いて乗客Bのために、オン・デマンドサービスを要求し、オン・デマンドサービスを受理し、又はオン・デマンドサービスシステム105によって送信された他の情報若しくは命令を受信する場合がある。乗客端末デバイス120のユーザーは、本開示において、乗客と呼ばれる場合もある。ドライバーは、サービス提供者である場合がある。ドライバーは、ドライバー端末デバイス140のユーザーを含むことができる。幾つかの実施形態では、ドライバー端末デバイスのユーザーは、実際のドライバーでない場合がある。例えば、ドライバー端末デバイス140のユーザーCは、ドライバー端末デバイス140を用いてドライバーDのために、オン・デマンドサービスを受理し、又はオン・デマンドサービスシステム105によって送信された他の情報若しくは命令を受信する場合がある。ドライバー端末デバイス140のユーザーは、本開示において、ドライバーと呼ばれる場合もある。幾つかの実施形態では、乗客端末120は、デスクトップコンピューター120−1、ラップトップコンピューター120−2、車両の組み込みデバイス120−3、モバイルデバイス120−4等、又はそれらの任意の組み合わせを含むことができる。本明細書において、ビルトインデバイス120−3は、カーピューター(carputer)等であってもよい。モバイルデバイス120−4は、スマートフォン、パーソナルデジタルアシスタント(PDA)、タブレットコンピューター、ハンドヘルドゲーミングデバイス、スマートグラス、スマートウォッチ、ウェアラブルデバイス、仮想現実デバイス、拡張現実デバイス(例えば、Google(登録商標)グラス、Oculus Rift(登録商標)、HoloLens(商標)、Gear(商標)VR等)等、又はそれらの任意の組み合わせであってもよい。ドライバー端末デバイス140も、上記で説明した1つ以上の同様のデバイスを含んでもよい。
POIエンジン110は、データベース130に記憶された情報に直接アクセスすることができ、及び/又はデータベース130から情報を読み出すこともできるし、データベース130に情報を書き込むこともできる。POIエンジン110は、ネットワーク150を介してユーザー端末デバイス120又は140によって提供される情報にもアクセスすることができる。幾つかの実施形態では、データベース130は、データを記憶することが可能な任意のデバイスを含むことができる。データベース130は、乗客120及び/又はドライバー140から収集されるデータと、POIエンジン110によって使用、生成又は出力されるデータとを記憶するのに用いられてもよい。データベース130は、ローカルであってもよいし、リモートであってもよい。データベース130と、オン・デマンドサービスシステム105及び/又はシステム105の1つ以上の構成部分(例えば、POIエンジン110)とは、1つ以上の有線コミュニケーションリンク及び/又は無線コミュニケーションリンクを介して接続されてもよい。
ネットワーク150は、単一のネットワーク又はネットワークの組み合わせであってもよい。例えば、ネットワーク150は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、パブリックネットワーク、プライベートネットワーク、独自開発ネットワーク、公衆交換電話網(PSTN)、インターネット、無線ネットワーク、ヴァーチャルネットワーク、又はそれらの任意の組み合わせを含んでもよい。ネットワーク150は、ベースステーション(基地局)150−1、ベースステーション(基地局)150−2、ネットワークスイッチポイント等を含む有線アクセスポイント又は無線アクセスポイント等の複数のネットワークアクセスポイントを備えることができる。これらのアクセスポイントを通じて、任意のデータ源をネットワーク150に接続して、ネットワーク150を介して情報を送信することができる。単なる例示として、輸送サービスにおけるドライバー端末デバイス140が一例として取り上げられているが、これは、本開示の範囲を限定することを意図するものではない。ドライバー端末デバイス140は、モバイルフォン、タブレットコンピューター等であってもよい。ドライバー端末デバイス140のネットワーク環境100は、無線ネットワーク(例えば、Bluetooth(登録商標)ネットワーク、無線ローカルエリアネットワーク(WLAN)、Wi−Fi、WiMax等)、モバイルネットワーク(例えば、2G、3G、4G等)、又は他のコミュニケーション方法(例えば、仮想プライベートネットワーク(VPN)、共有ネットワーク、近接場通信(NFC)、ZigBee(登録商標)等)であってもよい。
情報源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の一部分(例えば、POIエンジン110)、及び/又はユーザー端末デバイス120若しくは140は、ネットワーク150を介してデータベース130に直接アクセスすることができる。
図1−A及び/又は図1−Bにおいて、データベース130と、オン・デマンドサービスシステム105、システム105の一部分(例えば、POIエンジン110)、及び/又はユーザー端末デバイス120若しくは140とは、異なる方法で接続されてもよい。データベース130への各デバイスのアクセス許可は制限されてもよい。例えば、オン・デマンドサービスシステム105、又はシステム105の一部分(例えば、POIエンジン110)は、最高レベルのアクセス許可を有することができ、例えば、データベース130内の公衆情報又は個人情報を読み出す許可又は変更する許可を有することができる。幾つかの特定の条件が満たされているときに、乗客端末デバイス120又はドライバー端末デバイス140が公衆情報又はユーザーに関連した個人情報のうちの幾つかを読み出すことを許可することができる。例えば、オン・デマンドサービスシステム105は、当該オン・デマンドサービスシステム105を用いているユーザー(乗客又はドライバー)の1つ以上の経験に基づいて、データベース130内の公衆情報又はユーザー関連情報を更新又は変更することができる。別の例として、ドライバー140は、乗客120からサービスオーダーを受け取ると、データベース130内の乗客120の情報のうちの幾つかを閲覧することができる。一方、ドライバー140は、データベース130内の乗客120の情報を勝手に変更することはできず、オン・デマンドサービスシステム105に変更の報告のみを行うことができ、システム105が、それに応じて、データベース130内の乗客120の情報を変更するか否かを決定することができるようにする。別の例として、乗客120は、ドライバー140からサービス提供の要求を受け取ると、データベース130内のドライバー140の情報のうちの幾つか(例えば、ユーザー格付け情報、運転経験等)を閲覧することができる一方、乗客120は、データベース130内のドライバー140の情報を勝手に変更することはできず、オン・デマンドサービスシステム105に変更の報告のみを行うことができ、システム105が、それに応じて、データベース130内のドライバー140の情報を変更するか否かを決定することができるようにする。
当然ながら、位置に基づくサービスシステムの上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続されてもよい。本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、データベース130は、データ記憶機能を有するクラウドコンピューティングプラットフォームであってもよく、パブリッククラウド、プライベートクラウド、コミュニティクラウド、ハイブリッドクラウド等が含まれるが、これらに限定されるものではない。そのような全ての変更は、本開示の保護範囲内にある。
図2は、本開示の幾つかの実施形態に係るオン・デマンドサービスシステム105の概略的なシステム図である。簡潔にするために、オン・デマンドサービスシステム105は、この図には示されておらず、POIエンジン110が一例として示されている。POIエンジン110は、1つ以上の処理モジュール210と、1つ以上の記憶モジュール220と、1つ以上の乗客インターフェース230と、1つ以上のドライバーインターフェース240とを備えることができる。POIエンジン110は、集中型であってもよいし、分散型であってもよい。POIエンジン110の1つ以上のモジュールは、ローカルであってもよいし、リモートであってもよい。幾つかの実施形態では、POIエンジン110は、ウェブサーバー、ファイルサーバー、データベースサーバー、FTPサーバー、アプリケーションサーバー、プロキシサーバー、メールサーバー等、又はそれらの任意の組み合わせであってもよい。
幾つかの実施形態では、POIエンジン110は、乗客インターフェース230を通じて乗客端末デバイス120から情報を受信し、及び/又は乗客端末デバイス120に処理された情報を送信することができる。幾つかの実施形態では、POIエンジン110は、ドライバーインターフェース240を通じてドライバー端末デバイス140から情報を受信することができ、及び/又はドライバー端末デバイス140に処理された情報を送信することができる。情報を送信又は受信する方法は直接的であってもよい。例えば、情報は、1つ以上の乗客端末デバイス120及び/又は1つ以上のドライバー端末デバイス140からネットワーク150を介して乗客インターフェース230及び/又はドライバーインターフェース240を通じて直接取得することができる。別の例として、情報は、情報源160から直接受信されてもよい。情報を送信又は受信する方法は間接的であってもよい。例えば、処理モジュール210は、1つ以上の情報源160に要求を送信することによって、情報を取得することができる。情報源160内の情報は、気象状況、道路状況、交通状況、ニュースイベント、ソーシャルアクティビティ等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。POIエンジン110は、データベース130と通信するように構成することができる。幾つかの実施形態では、オーダープッシュエンジンは、地図データ、履歴オーダーの情報、時間調整の量の情報等の情報を抽出するように構成することができる。履歴オーダーの情報は、履歴オーダーの出発位置、履歴オーダーの目的地、履歴オーダーのピックアップ時刻、履歴オーダーのそれぞれの価格等、又はそれらの任意の組み合わせを含むことができる。上記で説明した時間調整の量の情報は、種々の時間帯における種々の地理的エリアの時間調整の値を含んでもよい。POIエンジン110は、乗客インターフェース230及び/又はドライバーインターフェース240から受信された情報をデータベース130に送信するように構成することができる。POIエンジン110の処理モジュール210によって取得された情報の処理結果も、データベース130に送信されてもよい。
幾つかの実施形態では、処理モジュール210は、関連情報を処理するように構成されてもよい。処理モジュール210は、処理された情報を乗客インターフェース230及び/又はドライバーインターフェース240に送信してもよい。情報処理の方法は、記憶すること、分類すること、フィルタリングすること、変換すること、計算すること、検索すること、予測すること、トレーニングすること等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。幾つかの実施形態では、処理モジュール210は、中央処理装置(CPU)、特定用途向け集積回路(ASIC)、特定用途向け命令セットプロセッサ(ASIP)、物理処理装置(PPU)、デジタル処理プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックデバイス(PLD)、プロセッサ、マイクロプロセッサ、コントローラー、マイクロコントローラー等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
幾つかの実施形態では、乗客インターフェース230及びドライバーインターフェース240は、それぞれ乗客端末デバイス120及びドライバー端末デバイス140によって送信された情報を受信するのに用いることができる。この受信された情報は、サービスの要求についての情報、乗客若しくはドライバーの現在位置についての情報、乗客端末デバイス120若しくはドライバー端末デバイス140によって送信されたテキストについての情報、又は乗客端末デバイス120若しくはドライバー端末デバイス140によって送信された他の任意の情報(例えば、画像、ビデオコンテンツ、オーディオコンテンツ等のアップロードされた情報)であってもよい。受信された情報は、記憶モジュール220に記憶されてもよいし、処理モジュール210によって計算及び処理されてもよいし、データベース130に送信されてもよい。
幾つかの実施形態では、乗客インターフェース230及びドライバーインターフェース240によって受信された情報は、処理モジュール210に送信することができる。処理モジュール210は、その後、この情報を処理して、処理された情報を生成することができる。処理モジュール210によって生成された情報は、乗客及び/又はドライバーの現在位置の最適化された情報、オーダーのピックアップ位置及び/又は目的地に関連した最適化された情報であってもよい。幾つかの実施形態では、処理モジュール210によって生成される情報は、乗客又はドライバーの位置が異常であるか否か等の乗客及び/又はドライバーの位置の確認情報であってもよい。幾つかの実施形態では、処理モジュール210によって生成される情報は、移動方法、各移動方法若しくは複数の移動方法の組み合わせに関するオーダー完了率等、又はそれらの任意の組み合わせを含んでもよい。移動方法は、運転手付き乗用車サービス、ヒッチハイク、タクシー、バス、列車、弾丸列車、高速鉄道、地下鉄、船舶、飛行機等、又はそれらの任意の組み合わせを含んでもよい。幾つかの実施形態では、処理モジュール210によって生成される処理された情報は、経路関連情報であってもよい。この経路関連情報は、経路の数、各経路の出発位置及び目的地、種々の移動方法に対応する各経路の所要時間及び料金を含むことができる。
幾つかの実施形態では、処理モジュール210によって生成された情報は、乗客インターフェース230及び/又はドライバーインターフェース240を介して乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、処理モジュール210によって生成された情報は、データベース130、記憶モジュール220、又はデータを記憶することができるオン・デマンドサービスシステム105の他の任意のモジュール若しくはユニットに記憶されてもよい。
幾つかの実施形態では、データベース130は、(図1−Aに示すように)オン・デマンドサービスシステム105のバックグラウンドにおいて構成することができる。幾つかの実施形態では、データベース130は、(図1−Bに示すように)スタンドアローンデバイスであってもよく、ネットワーク150と直接接続してもよい。幾つかの実施形態では、データベース130は、オン・デマンドサービスシステム105の一部分であってもよい。幾つかの実施形態では、データベース130は、POIエンジン110の一部分であってもよい。データベース130は、データを記憶することができる任意のデバイスを指してもよい。データベース130は、ユーザー端末デバイス120、ユーザー端末デバイス140、又は情報源160から収集されたデータを記憶するのに用いることができる。データベース130は、POIエンジン110によって生成された様々なデータも記憶することができる。データベース130又はシステム内の他の記憶デバイスは、読み出し/書き込み機能を有する任意の媒体を指してもよい。データベース130又はシステム内の他の記憶デバイスは、システム105の内部デバイスであってもよいし、システム105に接続された外部デバイスであってもよい。データベース130とシステム内の他の記憶デバイスとの間の接続は、有線であってもよいし、無線であってもよい。データベース130又はシステム内の他の記憶デバイスは、階層データベース、ネットワークデータベース、リレーショナルデータベース等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
データベース130又はシステムの他の記憶デバイスは、情報をデジタル化し、その後、デジタル化された情報を電気記憶デバイス、磁気記憶デバイス又は光記憶デバイスに記憶してもよい。データベース130又はシステムの他の記憶デバイスは、プログラム、データ等の様々な情報を記憶するように構成されてもよい。データベース130又はシステムの他の記憶デバイスは、電気エネルギーの形態で情報を記憶するように構成されたデバイスであってもよく、例えば、複数のメモリ、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)等であってもよい。ランダム・アクセス・メモリは、デカトロン、セレクトロン、遅延線メモリ、ウィリアムス管、ダイナミックランダム・アクセス・メモリ(DRAM)、スタティックランダム・アクセス・メモリ(SRAM)、サイリスターランダム・アクセス・メモリ(T−RAM)、ゼロキャパシタランダム・メモリ(Z−RAM)等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。リード・オンリー・メモリは、磁気バブルメモリ、磁気ボタンラインメモリ、薄膜メモリ、磁気プレーテッドワイヤメモリ、磁気コアメモリ、磁気ドラムメモリ、CD−ROM、ハードディスク、テープ、初期不揮発性メモリ(NVRAM)、相変化メモリ、磁気抵抗ランダム・アクセス・メモリ、強誘電性ランダム・アクセス・メモリ、不揮発性SRAM、フラッシュメモリ、電子的消去可能プログラマブルリード・オンリー・メモリ、消去可能プログラマブルリード・オンリー・メモリ、プログラマブルリード・オンリー・メモリ、マスクROM、フローティングゲート接続ランダム・アクセス・メモリ、ナノRAM、レーストラックメモリ、可変抵抗メモリ、プログラマブルメタライゼーションメモリ等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。データベース130又はシステムの他の記憶デバイスは、磁気エネルギーを利用して情報を記憶するように構成されたデバイスであってもよく、ハードディスク、ソフトディスク、テープ、磁気コア記憶装置、磁気バブルメモリ、USBフラッシュディスク、フラッシュディスク等であってもよい。データベース130又はシステムの他の記憶デバイスは、コンパクトディスク(CD)、デジタルビデオディスク(DVD)等の光学的方法によって情報を記憶するように構成されたデバイスであってもよい。データベース130又はシステムの他の記憶デバイスは、光磁気的な方法によって情報を記憶するように構成されたデバイスであってもよく、例えば、磁気ディスク等であってもよい。データベース130又はシステム105の他の記憶デバイスにアクセスする方法は、ランダムアクセス、シリアルアクセス、リード・オンリーアクセス等、又はそれらの任意の組み合わせを含んでもよい。データベース130又はシステムの他の記憶デバイスは、揮発性メモリであってもよいし、不揮発性メモリであってもよい。当然ながら、記憶デバイスの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。データベース130又はシステム105の他の記憶デバイスは、ローカルであってもよいし、リモートであってもよい。
当然ながら、処理モジュール210及び/又はデータベース130は、ユーザー端末デバイス120又は140に存在してもよいし、クラウドコンピューティングプラットフォームを介して対応する機能を実施してもよい。本明細書において、クラウドコンピューティングプラットフォームは、主としてデータ記憶に用いられる記憶ベースのクラウドプラットフォーム、主としてデータ処理に用いられる計算ベースのクラウドプラットフォーム、データ記憶及びデータ処理の双方に用いられるハイブリッドクラウドプラットフォーム等を含んでもよいが、これらに限定されるものではない。ユーザー端末120又は140によって用いられるクラウドプラットフォームは、パブリッククラウド、プライベートクラウド、コミュニティクラウド、ハイブリッドクラウド等であってもよい。例えば、ユーザー端末デバイス120又は140によって受信された幾つかのオーダー情報及び/又は非オーダー情報は、実際の要件に従ってユーザークラウドプラットフォームによって計算及び/又は記憶されてもよい。他のオーダー情報及び/又は非オーダー情報は、ローカル処理モジュール及び/又はシステムデータベースによって計算及び/又は記憶されてもよい。
図2に示すPOIエンジン110は様々な方法によって実施されてもよいことが理解されるであろう。例えば、POIエンジン110は、ハードウェア、ソフトウェア又はそれらの組み合わせによって実施されてもよい。本明細書において、ハードウェアは、専用ロジックによって実施されてもよい。ソフトウェアは、メモリに記憶されてもよく、適切な命令実行システム(例えば、マイクロプロセッサ、専用設計ハードウェア等)によって実施されてもよい。上記方法及び上記システムは、コンピューター実行可能命令及び/又はプロセッサの組み込み制御コードによって実施されてもよいことが当業者によって理解されよう。例えば、制御コードは、ディスク、CD若しくはDVD−ROM、リード・オンリー・メモリ(例えば、ファームウェア)等のプログラマブルメモリデバイス、又は光信号搬送波若しくは電気信号搬送波等のデータ搬送波等の媒体によって提供されてもよい。POIエンジン110及びそのモジュールは、大規模集積回路若しくは大規模ゲートアレイ、半導体デバイス(例えば、ロジックチップ、トランジスタ、フィールドプログラマブルゲートアレイ、プログラマブルロジックデバイス等のプログラマブルハードウェアデバイスのハードウェア回路等)によって実施されてもよいだけでなく、様々なタイプのプロセッサにおいて実行されるソフトウェア、又は上記ハードウェア回路及びソフトウェア(例えば、ファームウェア)の組み合わせによって実施されてもよい。
当然ながら、POIエンジン110の上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続してもよい。本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、処理モジュール210、記憶モジュール220、乗客インターフェース230、ドライバーインターフェース240、及びデータベース130は、1つのシステム内の異なるモジュールであってもよいし、上記モジュールのうちの2つ以上の対応する機能を実行する単一のモジュールとして組み合わされてもよい。例えば、乗客インターフェース230及びドライバーインターフェース240は、乗客端末デバイス120及びドライバー端末デバイス140と同時にインタラクトすることができる単一のインターフェースとして組み合わされてもよい。例えば、データベース130は、POIエンジン110に含まれてもよく、データベース130及び記憶モジュール220の全ての機能は、単一の記憶デバイスによって実施されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図3は、本開示の幾つかの実施形態に係るPOIエンジン110の処理モジュール210の概略図である。処理モジュール210は、住所解析ユニット310、画像処理ユニット320、音声処理ユニット330、グループ化ユニット340、計算ユニット350、経路計画ユニット360、ランク付けユニット370、決定ユニット380、テキスト処理ユニット390及び/又はモデルトレーニングユニット395を備えることができる。決定ユニット380は、計算サブユニット385を更に備えることができる。当然ながら、POIエンジン110の処理モジュール210の構造の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。幾つかの実施形態では、処理モジュール210は、他のユニットも備えてもよい。幾つかの実施形態では、上記ユニットのうちの幾つかは除去されてもよい。幾つかの実施形態では、上記ユニットのうちの幾つかは、対応する機能を実行する1つのユニットに組み合わされてもよい。幾つかの実施形態では、上記ユニットは独立していてもよい。幾つかの実施形態では、上記ユニットは相互接続されていてもよい。
住所解析ユニット310は、受信された住所情報を処理するように構成することができる。住所情報は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、又は処理モジュール210の他のユニット若しくはサブユニットから取得することができる。住所情報を処理する方法は、住所情報の解析及び/又は逆解析を含んでもよい。住所情報の逆解析は、1つ以上の座標を、当該座標に対応する位置のテキスト記述情報に変換することを含んでもよい。住所情報の解析は、位置のテキスト記述情報(例えば、位置のテキスト記述)を住所座標情報に変換することを指す場合がある。住所座標情報は、座標系における1つ以上の座標、例えば、経度緯度座標を含んでもよい。テキスト記述情報は、位置の一般名、番地、ランドマークの名称等の位置の象徴的名称及び代表的名称のうちの1つ以上のものであってもよい。住所解析ユニット310は、処理された住所情報を他のユニットに送信することができる。これらの他のユニットは、画像処理ユニット320、音声処理ユニット330、経路計画ユニット360、ランク付けユニット370、決定ユニット370、乗客インターフェース230、ドライバーインターフェース240等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
画像処理ユニット320は、受信された画像(例えば、静止画像、ビデオ等)を処理して、処理された情報を取得するように構成することができる。処理の方法は、画像強調、画像識別、画像セグメンテーション、画像測定(例えば、画角、距離、又は背景的関係の計算)等の1つ以上の画像処理方法を含んでもよい。画像処理ユニット320は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、又は処理モジュール210の他のユニット若しくはサブユニットの1つ以上の組み合わせから画像情報を受信することができる。画像処理ユニット320によって特定された画像情報は、対応する住所情報を検索するために住所解析ユニット310に入力することができる。幾つかの実施形態では、画像処理ユニット320によって生成された処理結果は、経路計画ユニット360に送信することができる。
音声処理ユニット330は、乗客端末デバイス120及び/又はドライバー端末デバイス140から受信された音声情報を処理するように構成することができる。処理の方法は、ノイズリダクション、音声認識及び/又は会話認識、意味認識、人物認識等を含んでもよい。音声処理ユニット330は、認識されたオーディオ情報を処理のために他のユニットに出力することができる。例えば、音声処理ユニット330は、認識された住所情報を住所解析ユニット310、経路計画ユニット360等に送信することができる。
グループ化ユニット340は、受信された情報をグループ化するように構成することができる。グループの数は、1つ、2つ、3つ、4つ、5つ等であってもよい。幾つかの実施形態では、情報は、位置座標及び位置名を含む、乗客及び/又はドライバーの住所情報であってもよい。例えば、グループ化ユニット340は、ドライバーインターフェース240から受信された車両の現在のGPS座標をグループ化し、グループ化の結果に基づいて車両のステータスを求めることができる。グループ化の方法は、K−MEANSアルゴリズム、K−MEDOIDSアルゴリズム、CLARANSアルゴリズム等の1つ以上のクラスタリングアルゴリズムを含んでもよい。幾つかの実施形態では、グループ化ユニット340は、受信された情報をグループ化し、グループ化された情報を出力することができる。例えば、グループ化ユニット340は、履歴オーダーの出発位置と乗客の現在位置との間の距離と、特定の時間帯の間のオーダーにおける位置の使用の頻度(例えば、特定の出発位置及び現在位置に関係した履歴オーダーの数)とに基づいて履歴オーダーをグループ化することができる。グループ化ユニット340によって生成された結果は、処理モジュール210の他のユニット又はサブユニット(例えば、経路計画ユニット360)に更に送信することができる。処理モジュール210は、この結果を処理することができる。結果は、乗客インターフェース230及び/又はドライバーインターフェース240にも送信することができる。その後、結果は、乗客インターフェース230及び/又はドライバーインターフェース240によって出力することができる。
本開示の幾つかの実施形態によれば、クラスタリングアルゴリズムは、セグメンテーションクラスタリングアルゴリズム、階層的クラスタリングアルゴリズム、制約付きクラスタリングアルゴリズム、機械学習のクラスタリングアルゴリズム、高次元データにおいて用いられるクラスタリングアルゴリズム等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
セグメンテーションクラスタリングアルゴリズムは、密度ベースの方法、グリッドベースの方法、グラフ理論ベースの方法、及び二乗誤差ベースの反復的再分散(iterative redistribution)クラスタリングアルゴリズムを含むことができるが、これらに限定されるものではない。密度ベースの方法は、ノイズを有する用途の密度ベースの空間クラスタリング(DBSCAN:Density-Based spatial Clustering of Applications with Noise)、クラスタリング構造を特定するオーダリングポイント(OPTICS:Ordering Points to Identify the Clustering Structure)、密度ベースのクラスタリング(DENCLUE:Density-based Clustering)、基準密度を用いたクラスタリング(CURD:Clustering Using References Density)等を含むことができるが、これらに限定されるものではない。グリッドベースの方法は、統計情報グリッド(STING:STatistical INformation Grid)、クラスタリングインクエスト(CLIQUE:CLustering In QUEst)、ウェーブクラスター(WAVE-CLUSTER)等を含むことができるが、これらに限定されるものではない。二乗誤差ベースの反復的再分散クラスタリングアルゴリズムは、確率ベースのクラスタリング、最近傍クラスタリング、K−Medoidsアルゴリズム、K−Meansアルゴリズム、CLARANSアルゴリズム等を含むことができるが、これらに限定されるものではない。階層的クラスタリングアルゴリズムは、凝集型クラスタリングアルゴリズム及び分割型クラスタリングアルゴリズムを含むことができるが、これらに限定されるものではない。CURE(代表点を用いたクラスタリング(Clustering Using REpresentatives))アルゴリズム、ROCK(リンクを用いたロバストクラスタリング(RObust Clustering using linKs))アルゴリズム及びCHAMELEONアルゴリズムが、凝集型クラスタリングアルゴリズムの最も代表的な方法であり得る。凝集型クラスタリングアルゴリズムは、最短距離法(Single-Link:シングルリンク)、最長距離法(Complete-Link:コンプリートリンク)、及び平均距離法(Average-Link:アベレージリンク)も含むことができるが、これらに限定されるものではない。機械学習のクラスタリングアルゴリズムは、人工ニューラルネットワーク方法及び進化論に基づく方法を含むことができるが、これらに限定されるものではない。進化論に基づく方法は、焼きなまし法(SA)及び遺伝的アルゴリズム(GA)を含むことができる。高次元データにおいて用いられるクラスタリングアルゴリズムは、部分空間クラスタリング及び共同クラスタリングを含むことができるが、これらに限定されるものではない。
計算ユニット350は、受信された情報を計算するように構成することができる。この情報は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、又は住所解析ユニット310等の処理モジュール210の他のユニット若しくはサブユニットから取得することができる。計算内容は、距離、時間、オーダー完了率、所要料金等、又はそれらの任意の組み合わせを含んでもよい。幾つかの実施形態では、計算ユニット350は、履歴移動経路の確率(例えば、履歴移動経路が選択される確率)を計算することができる。幾つかの実施形態では、計算ユニット350は、履歴オーダーの出発位置及び/又は目的地の出現確率(例えば、履歴オーダーの出発位置及び/又は目的地が履歴オーダーにおいて選択される確率)を計算することができる。幾つかの実施形態では、計算ユニット350は、乗客の現在位置と履歴オーダーの出発位置との間の距離を計算することができる。幾つかの実施形態では、計算ユニット350は、或る特定の移動方法が選択されたときに、或る特定の位置におけるオーダー完了率及び所要料金を計算することができる。幾つかの実施形態では、計算ユニット350は、或る特定の移動方法が選択されたときに、或る特定の時点におけるオーダー完了率及び所要料金を計算することができる。幾つかの実施形態では、計算ユニット350は、オーダーの出発位置から目的地までの距離、所要時間、所要料金、所要歩行距離等、又はそれらの任意の組み合わせを計算することができる。計算ユニット350は、計算結果を、経路計画ユニット360、ランク付けユニット370等の1つ以上の他のユニットに送信することができる。
経路計画ユニット360は、乗客端末デバイス120及び/又はドライバー端末デバイス140から取得された測位情報に基づいて、乗客の移動経路及びドライバーから乗客までの運転経路を計算及び計画することができる。経路計画ユニット360は、他のユニットによって提供された情報に基づいて経路を計画することができる。これらの他のユニットは、住所解析ユニット310、画像処理ユニット320、音声処理ユニット330、グループ化ユニット340、計算ユニット350、ランク付けユニット370等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、経路計画ユニット360は、データベース130及び/又は情報源160からの情報に基づいて経路を計画することができる。幾つかの実施形態では、経路計画ユニット360は、データベース130から受信された履歴オーダー、地図データ、時間調整の量の情報と、情報源160から受信されたサービスに関連した情報とを包括的に解析及び処理することができる。経路計画ユニット360は、これらの情報を解析及び処理した後、乗客及び/又はドライバーが選択するための様々な経路を生成することができる。履歴オーダーは、履歴オーダーのピックアップ位置、履歴オーダーの目的地、履歴オーダーの取引時刻(例えば、オーダーがドライバー及び乗客の双方によって受理された時刻)、オーダー完了率、コスト等、又はそれらの任意の組み合わせを含むことができる。地図データは、人工物(例えば、街路、橋梁、建物等)の地理的座標、自然景観(例えば、様々な水域、山岳、森林、湿地等)の地理的座標、及び上記で説明した物の記述名又は識別情報(例えば、番地、邸宅(mansion:マンション)の名称、河川の名称、ストアの名称等)、画像情報、3次元モデル等を含むことができる。サービスに関連した情報は、気象情報、交通情報、法規制の情報、ニュースイベント、生活情報、生活ガイド情報等、又はそれらの任意の組み合わせを含むことができる。経路計画ユニット360によって生成された結果(例えば、経路)は、乗客インターフェース230及び/又はドライバーインターフェース240を介してそれぞれ乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、経路計画ユニット360によって生成された結果は、特定のシーケンス又は優先度を有する結果を生成するように処理するために、ランク付けユニット370に送信することができる。
ランク付けユニット370は、受信された情報を特定のルールに基づいてランク付けするように構成することができる。この特定のルールは、確率、距離、時間シーケンス、所要時間量、所要料金、用いられる移動方法の数等、又はそれらの任意の組み合わせに基づくことができる。ランク付けユニット370によって処理される情報は、計算ユニット350から取得することができる。幾つかの実施形態では、ランク付けユニット370は、履歴オーダーの出発位置及び/又は目的地の出現数又は出現確率に基づいて代替の出発位置又は目的地をランク付けし、オーダーを出現数の多い方から少ない方に基づいて選択するために乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、ランク付けユニット370は、所要料金に基づいて移動方法及び/又は経路をランク付けすることができる。幾つかの実施形態では、ランク付けユニット370は、所要時間に基づいて移動方法及び/又は経路をランク付けしてもよい。結果は、降順にランク付けすることもできるし、昇順にランク付けすることもできる。幾つかの実施形態では、ランク付けユニット370は、ランク付けプロセスに関する情報を出力することができる。幾つかの実施形態では、ランク付けユニット370は、事前設定条件を満たすランク付けプロセスに関する情報を出力してもよい。この事前設定条件は、或る特定の住所の最高使用頻度、最低所要料金、最小所要時間、最短歩行距離、移動方法の最小数、又はそれらの任意の組み合わせを含むことができる。
決定ユニット380は、乗客及び/又はドライバーのステータスを求めることができる。幾つかの実施形態では、決定ユニット380は、乗客端末デバイス120及び/又はドライバー端末デバイス140によって送信された位置情報の確度及び/又は精度を求めることができる。幾つかの実施形態では、決定ユニット380は、車両のステータス、例えば、車両が静止しているか否か、車両が移動しているか否か、車両の移動方向、車両の速度、車両の加速度等、又はそれらの任意の組み合わせを求めることができる。車両のステータスを求めることは、計算ユニット350によってオーダーの所要料金を計算するのに用いることができる。所要料金の計算は、決定ユニット380の計算サブユニット385によって実行されてもよい。幾つかの実施形態では、決定ユニット350は、第1の測位技術によって取得された測位結果と、第2の測位技術又は複数の測位技術によって取得された測位結果との間の差を求めることができる。これらの測位結果は、ドライバー端末デバイス140から受信することができる。この差は、計算サブユニット385によって計算されてもよい。第1の測位技術を用いることによって取得された測位情報が異常であるか否かは、この差に基づいて判断することができる。判断結果に基づいて、POIエンジン110は、オーダー情報をドライバー端末デバイス140に送信するか否かを判断するように構成することができる。
テキスト処理ユニット390は、処理モジュール210によって受信されたテキスト情報を処理するように構成することができる。幾つかの実施形態では、テキスト情報は、単語分割、テキスト情報からの特徴的テキストの抽出、特徴的テキストの分類、テキスト情報の意味認識等、又はそれらの任意の組み合わせによって処理することができる。幾つかの実施形態では、テキスト処理ユニット340は、特定の条件を満たすテキスト情報の内容を処理する(例えば、削除操作等を実行する)ように構成されてもよい。テキスト情報は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、記憶モジュール220又は処理モジュール210内の他のユニット若しくはサブユニットから取得することができる。テキスト処理ユニット390によって生成された結果は、更に処理するために他のユニットに送信されてもよい。
モデルトレーニングユニット395は、位置分類器又はPOI分類モデルをトレーニングするように構成することができる。モデルトレーニングユニット395は、データベース130、情報源160、又はオン・デマンドサービスシステム105の他のモデル若しくはユニットから情報を受信し、この受信された情報を用いて、位置分類器及び/又はPOI分類モデルをトレーニングすることができる。幾つかの実施形態では、モデルトレーニングユニット395は、住所情報又はテキスト住所データに含まれる位置の住所分類タイプを特定することができる。幾つかの実施形態では、モデルトレーニングユニット395は、ユーザー(例えば、乗客)の履歴オーダー情報に基づいて履歴移動目的又は履歴移動経路を求めることができる。その後、乗客のサービス要求に応答することができ、履歴移動目的又は履歴移動経路に基づいて適切な目的地及び/又は出発位置を乗客に推奨することができる。
当然ながら、POIエンジン110の処理モジュール210の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールを様々な方法で組み合わせることもできるし、サブシステムとして他のモジュールと接続することもできる。本開示の教示の下で上記機能が実現されることを条件として様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、幾つかの実施形態では、計算ユニット350及び計算サブユニット385は、計算機能を実行する1つのユニット又はモジュールに統合されてもよい。別の例として、幾つかの実施形態では、処理モジュール210は、オーダーをクローズするための所要料金を計算するように構成された独立したアカウンティングユニットを備えてもよい。幾つかの実施形態では、テキスト処理ユニット390等の幾つかのユニットは省略されてもよい。幾つかの実施形態では、処理モジュールは、他のユニット又はサブユニットを備えてもよい。当業者によって認識される他の全ての改良及び変更は、本開示の保護の範囲内にある。
図4−Aは、本開示の幾つかの実施形態に係るPOIエンジン110における乗客インターフェース230の概略ブロック図である。乗客インターフェース230は、乗客情報受信ユニット410、乗客情報解析ユニット420、及び/又は乗客情報送信ユニット430を備えることができる。乗客情報受信ユニット410は、乗客端末デバイス120から情報を受信するように構成することができ、次いで、この情報を認識、整理及び分類することができる。乗客端末デバイス120によって送信された情報の内容は、測位技術を用いて求められた乗客端末デバイス120の現在位置、乗客端末デバイス120を用いている乗客によって入力された現在位置若しくはピックアップ位置、乗客の現在位置に関連した他の情報、現在のシステム時刻、乗客の予想ピックアップ時刻/到着時刻/移動時間、サービスについての乗客の選択/要件/説明情報、乗客が受信すると予想される情報の内容/フォーマット/時刻/量、乗客が乗客端末デバイス120上でサービスアプリケーションをオン/オフする時刻等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、乗客端末デバイス120によって送信される情報は、乗客端末デバイス120において乗客によって入力された自然言語によるテキスト情報の場合もあるし、乗客端末デバイス120によって送信されたバイナリー情報の場合もある。送信される情報は、(図5に示すような)乗客端末デバイス120の入力/出力(I/O)モジュール510に記録された音声情報(乗客の音声入力を含む)、乗客端末デバイス120のI/Oモジュール510によって取得された画像情報(静止画像又はビデオを含む)等、又はそれらの任意の組み合わせの場合もある。乗客端末デバイス120は、ネットワーク150を介して乗客インターフェース230の乗客情報受信ユニット410に上記情報を提供することができる。
乗客情報解析ユニット420は、乗客情報受信ユニット410によって受信された乗客情報を解析するように構成することができる。この解析は、乗客情報を整理又は分類することを含んでもよい。解析は、乗客情報のフォーマットを変換するか又は乗客情報の内容を抽出、解析若しくは変換して、処理モジュール210によって計算、処理することができるか又は記憶モジュール220によって記憶することができるフォーマットを取得することも含むことができる。乗客端末デバイス120の命令又は好みに基づいて、乗客情報解析ユニット420は、処理モジュール210によって処理された情報又は記憶モジュール220に記憶された情報を、乗客端末デバイス120によってアクセス又は選択することができるフォーマットに変換するように構成することもできる。その後、この情報は、乗客情報送信ユニット430に提供することができる。乗客情報送信ユニット430は、この情報を、ネットワーク150を介して乗客端末デバイス120に送信するように構成することができ、この場合、この情報は、POIエンジン110が送信する必要がある情報である。乗客情報受信ユニット410は、ネットワーク150を介して乗客端末デバイス120との接続を確立する有線受信デバイス又は無線受信デバイスから構成することができる。同様に、乗客情報送信ユニット430は、ネットワーク150を介して乗客端末デバイス120との接続を確立する有線送信デバイス又は無線送信デバイスから構成することができる。
図4−Bは、本開示の幾つかの実施形態に係るPOIエンジン110におけるドライバーインターフェース240の概略ブロック図である。図4−Bに示すように、ドライバーインターフェース240は、ドライバー情報受信ユニット415と、ドライバー情報解析ユニット425と、ドライバー情報送信ユニット435とを備えることができる。ドライバー情報受信ユニット410は、ドライバー端末デバイス140から情報を受信するように構成することができ、次いで、この情報を認識、整理及び分類することができる。ドライバーによって送信された情報の内容は、測位技術を用いて求められたドライバーの現在位置、ドライバーの運転速度、ドライバーによって返される現在のサービスステータス(例えば、乗車中、乗客の乗車待ち中、アイドル運転中(例えば、乗客のいない運転中))、サービス要求に対するドライバーの選択/確認/拒否情報、ドライバーがドライバー端末デバイス120上でサービスアプリケーションをオン/オフした情報等、又はそれらの任意の組み合わせを含むことができる。ドライバー端末デバイス140によって送信される情報のタイプは、ドライバー端末デバイス140においてドライバーによって入力された自然言語によるテキスト情報、ドライバー端末デバイス140によって送信されたバイナリー情報、ドライバー端末デバイス140によって記録されたオーディオ情報(ドライバーの音声入力を含む)、ドライバー端末デバイス140によって取得された画像情報(例えば、静止画像又はビデオ)、他のタイプのマルチメディア情報等、又はそれらの任意の組み合わせの場合もある。ドライバー端末デバイス140は、ネットワーク150を介してドライバーインターフェース240のドライバー情報受信ユニット415に上記情報を送信することができる。
ドライバー情報解析ユニット425は、ドライバー情報受信ユニット410によって受信されたドライバー情報を解析するように構成することができる。本明細書における解析動作は、ドライバー情報を整理又は分類すること、その内容を或るフォーマットに変換することを含むことができる。解析動作は、情報の内容を抽出、解析又は変換して、フォーマットを取得することも含むことができる。上記で説明した情報のフォーマットは、処理モジュール210によって計算、処理されてもよいし、記憶モジュール220によって記憶されてもよい。ドライバー端末デバイス140の命令又は好みに基づいて、ドライバー情報解析ユニット425は、処理モジュール210によって処理された情報又は記憶モジュール220に記憶された情報を、ドライバー端末デバイス140によってアクセス又は選択することができる情報フォーマットに変換するように構成することもできる。ドライバー情報解析ユニット425は、フォーマット変換された情報をドライバー情報送信ユニット435に提供することができる。ドライバー情報送信ユニット435は、この情報を、ネットワーク150を介してドライバー端末デバイス140に送信するように構成することができ、この場合、この情報は、POIエンジン110がドライバー端末デバイス140に送信する必要がある情報である。ドライバー情報受信ユニット415は、ネットワーク150を介してドライバー端末デバイス140との接続を確立する有線受信デバイス又は無線受信デバイスから構成することができる。同様に、ドライバー情報送信ユニット430は、ネットワーク150を介してドライバー端末デバイス140との接続を確立する有線送信デバイス又は無線送信デバイスから構成することができる。
図5は、本開示の幾つかの実施形態に係る乗客端末デバイス120及びドライバー端末デバイス140の概略ブロック図である。乗客端末デバイス120は、入力/出力(I/O)モジュール510と、ディスプレイモジュール520と、測位モジュール530と、コミュニケーションモジュール540と、処理モジュール550と、記憶モジュール560とを備えることができる。また、乗客端末デバイス120は、より多くのモジュール又は構成要素を備えてもよい。
入力/出力モジュール510は、乗客が、画像インターフェース、地図インターフェース、又は入力/出力インターフェース等のオン・デマンドサービスアプリケーションのインターフェースに提供する1つ以上のタイプの入力を受信することができる。入力/出力モジュール510は、情報を1つ以上のタイプで乗客に出力することができる。入力/出力モジュール510は、信号変換等の方法によって乗客又は外部(例えば、周辺環境)の光学的情報、音響的情報、電磁気的情報、機械的情報等の1つ以上のタイプの情報を静止画像、ビデオ、音声、機械的振動等の形態で収集して記録することができる。入力及び/又は出力は、音響信号、光信号、機械的振動信号等、又はそれらの任意の組み合わせの形態であってもよい。ディスプレイモジュール520は、オン・デマンドサービスアプリケーションの画像インターフェース、地図インターフェース、入力/出力オペレーティングインターフェース、オペレーティングシステムインターフェース等を表示することができる。測位モジュール530は、1つ以上の測位/距離測定技術に基づいて乗客の位置又は動作ステータスを求めることができる。より詳細には、例えば、乗客の位置及び/又は動作ステータスを確定することは、乗客の位置、速度、加速度、角速度、経路等、又はそれらの任意の組み合わせ等の1つ以上の動作パラメーターを計算することを含んでもよい。コミュニケーションモジュール540は、乗客端末デバイス120の情報を有線コミュニケーション又は無線コミュニケーションによって送信又は受信することができる。例えば、コミュニケーションモジュール540は、乗客端末デバイス120が乗客インターフェース230を介してPOIエンジン110に対して情報を送受信することができるように、POIエンジン110の乗客インターフェース230と通信することができる。幾つかの実施形態では、乗客端末デバイス120は、コミュニケーションモジュール540を介してドライバー端末デバイス140と通信することができる。例えば、乗客端末デバイス120及びドライバー端末デバイス140は、Bluetooth(登録商標)コミュニケーション及び/又は赤外線コミュニケーションを通じて互いに通信することができる。ドライバー端末デバイス140と乗客端末デバイス120との間の距離は、双方のデバイスのBluetooth(登録商標)がオンになっているとき、直接測定することができる。処理モジュール550は、乗客端末デバイス120が得た情報を計算、確定又は処理することができる。記憶モジュール560は、入力/出力モジュール510、測位モジュール530、コミュニケーションモジュール540又は処理モジュール550が取得、生成、計算、確定又は処理した情報を記憶することができる。
測位技術は、全地球測位システム(GPS)技術、全地球航法衛星システム(GLONASS)技術、北斗衛星導航系統技術、ガリレオ測位システム(Galileo)技術、準天頂衛星システム(QASS)技術、ベースステーション(基地局)測位技術、及びWi−Fi測位技術を含むことができるが、これらに限定されるものではない。距離測定技術は、電磁波、音波等、又はそれらの任意の組み合わせに基づく距離測定技術を含むことができるが、これらに限定されるものではない。例えば、電磁波に基づく距離測定技術は、電波、赤外線、可視光等、又はそれらの任意の組み合わせを利用することができる。電波に基づく距離測定技術は、Bluetooth(登録商標)帯域、又は他のマイクロ波帯域を利用することができる。赤外線に基づく距離測定技術は、近赤外線、中赤外線、遠赤外線等、又はそれらの任意の組み合わせを利用することができる。音波に基づく距離測定技術は、超音波、超低周音波、他の周波数における音波等、又はそれらの任意の組み合わせを利用することができる。電磁波又は音波に基づく距離測定技術は、1つ以上の原理に従って距離を測定することができる。例えば、電磁波又は音波に基づく距離測定技術は、波伝播の時間、ドップラー効果、信号の強度、信号減衰特性等、又はそれらの任意の組み合わせに依拠することができる。
乗客端末デバイス120の上記説明は、ドライバー端末デバイス140にも適用可能であり得る。
当然ながら、ユーザー端末デバイス120又は140に基づくサービスシステムの上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続してもよい。本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、入力/出力モジュール510及びディスプレイモジュール520は、システム内の異なるモジュールであってもよいし、双方のモジュールの機能を達成することが可能な単一のモジュールであってもよい。別の例として、測位モジュール530及びコミュニケーションモジュール540は、異なるモジュールであってもよいし、ハードウェアに統合された単一のモジュールであってもよい。そのような全ての変更は、本開示の保護範囲内にある。
図6は、本開示の幾つかの実施形態に係るデータベース130の概略ブロック図である。データベース130は、複数の内容の情報を記憶することができる。データベース130は、履歴オーダーデータベース610、地図データベース620、ユーザーデータベース630、分類モデルデータベース640等の1つ以上のサブデータベースを備えることができる。1種類以上の情報がPOIエンジン110又は他のモジュール/ユニットによって必要とされる幾つかの実施形態では、それらの情報は、データベース130から抽出することができる。
履歴オーダーデータベース610は、履歴オーダーを含むことができ、その内容は、乗客及びドライバーの出発位置、目的地、出発位置のタイプ、目的地のタイプ、出発位置時刻/到着時刻、ピックアップ位置、オーダーサービスの移動マイレージ、移動経路、運賃、オーダーサービスのチップ、オーダーサービスのマイレージレート、オーダーサービスの時間単位の運賃、運転時間等に関するものであってもよい。また、履歴オーダーの内容は、サービス中の種々の時点における乗客/ドライバーの位置及び運転速度、平均運転速度、履歴オーダーに対する乗客及び/又はドライバーの格付け等に関するものであってもよい。
地図データベース620は、街路、橋梁、建物等の人工物の地理的座標を含むことができる。地図データベース620は、水域、山岳、森林、湿地等の自然景観の地理的座標を含むことができる。地図データベース620は、記述名、識別情報等(例えば、番地、建物名、河川名、ショップ名等)を含むことができる。地図データベース620は、上記で説明した人工物及び自然景観の画像情報を含むことができる。
ユーザーデータベース630に記憶された情報は、ドライバー140のアカウント名、表示名(例えば、ニックネーム)、証拠書類番号(例えば、運転免許証、IDカード等)、登録日、ユーザーレベル/優先度、交通違反記録、飲酒運転記録(例えば、酔った状態での運転)及び車両情報等のユーザー120/140のサービス関連情報を含むことができる。ユーザーデータベース630は、クレジット記録、犯罪歴、表彰歴又は報償歴等のユーザー120/140の他の社会情報も記憶することができる。ユーザーデータベース630は、年齢、性別、国籍、住所、職場、民族、信教、学歴、職歴、結婚歴、情緒状態、言語能力、特技、政治的偏向、趣味、お気に入りの音楽/TV番組/映画/書物等のユーザー120/140のプロファイル情報も記憶することができる。
分類モデルデータベース640は、位置に関連した位置タイプの情報、位置タイプと当該位置タイプの記述名との間のマッピング関係の情報、及び異なる位置タイプ間の相関情報等を記憶するように構成することができる。例えば、相関情報は、特定の位置タイプと当該位置タイプの記述名との間の相関係数、2つの位置タイプ間の相関係数、2つの位置タイプ間の設定関係等を含むことができる。位置タイプは、この位置タイプに属する少なくとも1つの位置を含む位置の集合とみなすことができる。或る特定の位置タイプは、そのサブタイプとして他の位置タイプも含んでもよい。2つの位置タイプ間に交差部分及び重複部分が存在してもよい(例えば、或る特定の位置が1つ以上の位置タイプに同時に属してもよい)。位置タイプは、カントール集合又はファジー集合とすることができる。各位置タイプは、明確な定義又は「境界」を有してもよい。代替的に、位置タイプは、明確な「境界」を有しなくてもよい。ファジー集合である位置タイプの場合、この集合内の各要素は、当該要素がこの位置タイプに属する確率を表すメンバーシップ度を有することができる。メンバーシップ度は、1以下とすることができる。上記で説明した情報は、データベース130の異なるモジュール又は構成要素に記憶されてもよい。上記で説明した情報は、複数のデータベース130に別々に記憶されてもよい。これらの複数のデータベース130は、有線コミュニケーション又は無線コミュニケーションを介して、互いに情報を交換することができる。
図7は、本開示の幾つかの実施形態に係る、システム105によって目的地関連情報を求める一例示的なプロセスのフローチャートである。当然ながら、幾つかの実施形態では、目的地関連情報は、目的地の位置、目的地のタイプ、乗客が目的地に到着する時刻、出発位置から目的地への経路、出発位置から目的地までの平均速度、出発位置から目的地までに用いられる移動方法、出発位置から目的地までの所要料金等、又はそれらの任意の組み合わせを含むことができる。目的地関連情報は、1つの目的地に関するものであってもよいし、複数の目的地に関するものであってもよい。
図7に示すように、ステップ710において、システム105のPOIエンジン110の乗客インターフェース230は、乗客端末デバイス120からネットワーク150を介して位置関連情報を受信することができる。この位置関連情報は、乗客の現在位置、将来の時点における乗客の位置、将来の時間帯の間の乗客の位置、乗客によって指定された出発位置、現在時刻、乗客によって指定された出発時刻等を含むことができるが、これらに限定されるものではない。
乗客の現在位置は、乗客端末デバイス120の測位モジュール530によって収集することもできるし、I/Oモジュール510から取得することもできる。乗客の現在位置に関連した情報は、1つ以上の測位技術によって求められた乗客の位置の1つ以上の座標とすることができる。乗客の現在位置に関連した情報は、乗客によって入力された現在位置の記述名も含むことができる。幾つかの実施形態では、現在位置に関連した情報は、商業地域、住宅地域、景色、病院、学校、大型建築物、バスステーション、鉄道駅、空港、橋梁、交差点等、又はそれらの任意の組み合わせ等の乗客の現在位置及び/又はドライバーの現在位置の周辺の地域に関連した他の情報も含むことができる。幾つかの実施形態では、乗客端末デバイス120及び/又はドライバー端末デバイス140によって送信された、上記で説明した位置関連情報は、映像、ビデオ、オーディオ等の形態の乗客の現在位置の周辺エリアについての他の情報も含んでもよい。上記で説明した映像、ビデオ、及びオーディオは、(図5に示すような)I/Oモジュール510によって取得することができる。例えば、乗客は、自身のモバイルフォンカメラを用いて、自身の周辺のランドマークの写真を撮影し、これらの写真をPOIエンジン110にアップロードすることができる。別の例として、乗客端末デバイス120が、乗客の周辺エリアの音声又はビデオを取得し、この音声又はビデオをPOIエンジン110に送信してもよい。
乗客によって指定された出発位置は、乗客端末デバイス120上で乗客(又は乗客端末デバイス120の他のユーザー)によって指定された出発位置を指してもよい。幾つかの実施形態では、乗客(又は乗客端末デバイス120の他のユーザー)は、デバイス120のI/Oモジュール510によって提供される入力ボックス、リスト、アイコンアレイ等において出発位置を入力又は選択することができる。幾つかの実施形態では、乗客は、ディスプレイモジュール520によって乗客端末デバイス120上に表示された地図インターフェース上で、ポインター、プッシュピン等を操作することによって出発位置を指定することもできる。幾つかの実施形態では、乗客は、乗客端末デバイス120の出発位置の情報を音声入力によって提供することもできる。
現在時刻は、乗客端末デバイス120の処理モジュール550によって取得された乗客端末デバイス120のオペレーティングシステムのシステム時刻であってもよい。乗客によって指定される出発時刻は、乗客端末デバイス120のI/Oモジュール510を介して入力することができる。指定される出発時刻は、特定の時点であってもよいし、時間範囲であってもよい。この時間範囲の長さ並びに開始点及び終了点は、アプリケーションシナリオ、乗客の現在の要件及び/又は交通状況とともに変化し得る。
ステップ720において、POIエンジン110は、データベース130から履歴情報を取得することができる。データベース130の構造及び機能は、図6に示され、図6の対応する記載において説明されている。履歴情報は、履歴オーダーデータベース610に記憶された履歴オーダーに関する情報を含んでもよい。履歴情報は、地図データベース620に記憶された地図情報も含んでもよい。履歴情報は、ユーザーのサービス関連情報、他の社会情報、プロファイル情報等のユーザーデータベース630に記憶された情報も含んでもよい。上記で説明した情報の説明は、図6に見出すことができ、ここでは繰り返さない。
ステップ720の番号はステップ710の後になっているが、当然ながら、これらの番号は、時間的な順序を意味するものでも表すものでもなく、簡潔にするために、単に例示として機能するものにすぎない。上記で説明したステップ720は、ステップ710と並行して実行することもできるし、ステップ710の前に実行することもできる。
ステップ730において、POIエンジン110の処理モジュール210は、受信された位置関連情報及び取得された履歴情報に基づいて目的地関連情報を求めることができる。
POIエンジン110の処理モジュール210は、履歴情報及び位置関連情報に基づいて、乗客の到着予定の目的地の位置/記述名/位置タイプを予測することができる。処理モジュール210は、出発位置及び目的地に基づいて、出発位置から目的地への少なくとも1つの経路を計画することもできる。処理モジュール210は、経路計画アルゴリズムに基づいて経路関連情報を推定することもできる。経路関連情報は、移動距離、移動時間、目的地への到着時点、交通渋滞によって引き起こされる時間遅延、燃費、運転速度、交通信号機の数、移動コスト、通行料等を含むことができるが、これらに限定されるものではない。
幾つかの実施形態では、処理モジュール210の経路計画ユニット360は、1つ以上の経路最適化アルゴリズムに基づいて出発位置から目的地への経路を計算して求めることができる。
経路を求める基準は、最適な総コストに関するものであってもよい。この総コストは、例えば、経路距離、移動時間、交通渋滞によって引き起こされる推定時間遅延、推定燃費、推定運転速度、交通信号機の数、推定コスト、通行料等、又はそれらの任意の組み合わせを含む種々の形態で表すことができる。総コストの形態は、上記で説明した1つ以上の形態に基づくものであってもよい。
上記で説明した経路最適化アルゴリズムは、従来の経路計画アルゴリズム、グラフィックスアルゴリズム、インテリジェントバイオニックアルゴリズム、及び他のアルゴリズムを含むことができるが、これらに限定されるものではない。従来の経路配列アルゴリズムは、焼きなまし法(SA)、人工電位法、ファジー論理算術、タブーサーチ(TS)等を含むことができるが、これらに限定されるものではない。グラフィックアルゴリズムは、C空間(可視空間としても知られている)、自由空間、グリッド等を含むことができるが、これらに限定されるものではない。インテリジェントバイオニックアルゴリズムは、蟻コロニーアルゴリズム、ニューラルネットワークアルゴリズム、遺伝的アルゴリズム(GA)、粒子群最適化(PSO)アルゴリズム等を含むことができるが、これらに限定されるものではない。他のアルゴリズムは、ダイクストラアルゴリズム、高速最短経路アルゴリズム(SPFA:Shortest Path Faster Algorithm)、ベルマン−フォードアルゴリズム、ジョンソンアルゴリズム、フォールバックアルゴリズム、フロイド−ワーシャルアルゴリズム等を含むことができるが、これらに限定されるものではない。
上記で説明したアルゴリズムによって求められた経路に基づいて、計算モジュール350は、経路を計算及び処理して、経路関連情報を取得することができる。経路関連情報の詳細の説明は、上記説明に見出すことができ、ここでは繰り返さない。
計算モジュール350は、データベース130及び/又は情報源160から取得された情報に基づいて、上記で説明した経路関連情報を計算することができる。取得される情報は、履歴オーダーデータベース610からの履歴オーダーの情報、地図データベース620からの地図データ、気象状況、カレンダー、休日、社会活動、法規制等についての他の情報源160からの情報、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。上記で説明した情報の説明は、図1−A及び図6に見出すことができ、ここでは繰り返さない。
ステップ740において、POIエンジン110は、ネットワークインターフェース150を介して目的地関連情報を求めた後、目的地関連情報を、乗客インターフェース230を通じて乗客端末デバイス120に送信することができる。次に、目的地関連情報は、表示することができ、その後、乗客端末デバイス120によって処理することができる。送信される目的地関連情報は、目的地そのもの、乗客端末デバイス120の現在位置又は乗客によって指定された出発位置から目的地への経路、又は上記で説明した経路関連情報であってもよい。
幾つかの実施形態では、送信される目的地関連情報は、1つの目的地に関するものであってもよいし、複数の目的地に関するものであってもよい。幾つかの実施形態では、複数の目的地に関する目的地関連情報は、リストの形態で表すことができる。より詳細には、幾つかの実施形態では、処理モジュール210のランク付けユニット370は、これらの複数の目的地をランク付けすることができる。ランク付けの基準は、推定経路距離、推定移動時間、推定燃費、推定料金等、又はそれらの任意の組み合わせ等の上記で説明した経路関連情報に基づくことができる。ランク付けユニット370は、上述の経路関連情報に基づいて昇順又は降順で複数の目的地をランク付けすることができる。
ステップ750において、POIエンジン110は、乗客端末デバイス120の乗客による目的地関連情報に関連した処理されたデータを、ネットワークモジュール150を介し乗客インターフェース230を通じて受信することができる。乗客による目的地関連情報に関連した処理されたデータは、目的地関連情報を確認すること、拒否すること、選択すること、加えること、変更すること等、又はそれらの任意の組み合わせを含むことができる。
代替的に、POIエンジン110の処理モジュール210は、乗客による処理を受信した後、この処理を解析及び計算して、処理結果を取得してもよい。この処理結果は、乗客によって指定された目的地、又は目的地及び/又は目的地関連情報に対応する経路に対応することができる。
ステップ760において、POIエンジン110のドライバーインターフェース240は、処理結果を、ネットワーク150を介して少なくとも1つのドライバー端末デバイス140に送信することができる。ステップ770において、POIエンジン110のドライバーインターフェース240は、処理結果に関してドライバー端末デバイス140のドライバーから応答を受信することができる。この応答の内容は、乗客の輸送サービスを提供するドライバーの意欲の有無、乗客の輸送サービスを提供する追加の条件、現在位置の情報等、又はそれらの任意の組み合わせを含むことができる。ステップ780において、POIエンジン110は、上記で説明したドライバーの応答を処理して、応答を確認することができる。幾つかの実施形態では、POIエンジン110の乗客インターフェース230は、ドライバーが乗客の輸送サービスを提供することを確認した後、ドライバーが輸送サービスを提供する意欲があることを示す情報、追加の条件、及び現在位置の情報を乗客端末デバイス120に送信することができる。乗客インターフェース230は、ドライバーの他の情報も乗客端末デバイス120に送信してもよい。そのような情報の例は、ドライバーのサービス関連情報、他の社会情報、プロファイル情報等、又はそれらの任意の組み合わせを含むことができる。
当然ながら、POIエンジン110によって目的地関連情報を求めることの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、ステップを様々な方法で組み合わせることができ、本開示の教示の下で様々な変形及び変更を行って、上記で説明した機能を実現することができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。ステップ710〜780のうちの1つ以上は省略又は除去されてもよく、新たなステップが上記で説明したステップに挿入されてもよい。例えば、POIエンジン110は、ステップ780の後に、乗客端末デバイス120及び/又はドライバー端末デバイス140から乗客インターフェース230及び/又はドライバーインターフェース240を通じて取引報告を受信してもよい。別の例として、幾つかの実施形態では、POIエンジンは、乗客の目的地関連情報を求めた後、この情報をドライバー端末デバイス140に直接送信してもよい。すなわち、ステップ740及び750は省略され、ドライバーは、乗客の予測された出発位置及び目的地を前もって知らされる。そのような全ての変更は、本願の保護範囲内にある。
図8は、本開示の幾つかの実施形態に係る、乗客端末デバイス120によって目的地関連情報デバイスを受信する一例示的なプロセスのフローチャートである。
ステップ810において、乗客端末デバイス120は、測位モジュール530及び/又はI/Oモジュール510によって位置関連情報を取得することができる。
ステップ820において、乗客端末デバイス120は、取得された位置関連情報を、コミュニケーションモジュール540を通じてネットワーク150を介してオン・デマンドサービスシステム105、他の乗客端末デバイス120、及び/又は1つ以上のドライバー端末デバイス140に送信することができる。
幾つかの実施形態では、乗客端末デバイス120は、位置関連情報をオン・デマンドサービスシステム105に送信することができる。POIエンジン110は、位置関連情報を処理することができる。POIエンジン110は、位置関連情報に基づいて目的地関連情報を生成することができる。
ステップ820の後、乗客端末デバイス120は、ステップ830において、システム105から取得された目的地関連情報をコミュニケーションモジュール540によって受信することができる。この目的地関連情報は、図7及び対応する説明に見出すことができ、これ以上説明しない。
幾つかの実施形態では、乗客端末デバイス120によって受信された目的地関連情報は、複数の目的地に関するものであってもよい。複数の目的地に関する情報は、リストの形態で更に表現又は提示することができる。
ステップ830の後、乗客端末デバイス120は、受信された情報をディスプレイモジュール520によって表示することができる。この情報は、テキスト形態又はハイパーテキスト形態で表示されてもよい。幾つかの実施形態では、目的地関連情報は、ハイパーテキストマーキング言語(HTML)で更に表示又は表現されてもよい。幾つかの実施形態では、目的地関連情報は、地図インターフェースに表示されてもよい。
ステップ840において、乗客端末デバイス120のI/Oモジュール510は、乗客による目的地関連情報に関連した処理されたデータを受信することができる。
乗客による目的地関連情報に関連した処理されたデータが受信された後、乗客端末デバイス120のコミュニケーションモジュール540は、ステップ850において、処理結果を送信することができる。この処理結果は、オン・デマンドサービスシステム105、他の乗客端末デバイス120、又は1つ以上のドライバー端末デバイス140に送信することができる。
ステップ850の後、乗客端末デバイス120は、他のいずれかのデバイスから情報を受信してもよい。この情報は、システム105、他の乗客端末デバイス120、又は1つ以上のドライバー端末デバイス140から取得されることがある。システム105から取得された情報は、乗客による処理を受信したことの受領通知、乗客による処理に基づく目的地の処理結果、システム105によって情報を1つ以上のドライバー端末デバイス140に送信したことの通知、1つ以上のドライバー端末デバイス140からの目的地関連結果に対する応答等を含むことができるが、これらに限定されるものではない。
乗客端末デバイス120によって目的地関連情報を取得するプロセス又はステップの説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、ステップを様々な方法で組み合わせることができる。本開示の教示の下で様々な変形及び変更が行われてもよい。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、幾つかの実施形態では、乗客端末デバイス120が目的地関連情報を受信した後、ステップ840及びステップ850は省略されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図9−Aは、本開示の幾つかの実施形態に係る、現在の目的地関連情報を予測するプロセスの一例のフローチャートである。
ステップ910において、POIエンジン110は、乗客端末デバイス120から乗客インターフェース230を通じて、現在の出発位置の情報及び出発時刻の情報を取得することができる。
ステップ920において、POIエンジン110は、データベース130から乗客端末デバイス120に関する履歴オーダーの情報を取得することができる。
POIエンジン110は、乗客端末デバイス120に関する履歴オーダーの情報及び/又は或る期間の間の1つ以上の履歴オーダーの情報を取得することができる。この期間は、乗客端末デバイス120に関係するユーザーのアカウント情報、ユーザーの履歴オーダーの使用頻度、オーダーが関係しているエリア、現在の交通状況等の因子に基づいて変化し得る。この期間は、事前に設定することができ、期間の長さは、任意とすることができる。例えば、期間は、1カ月、3カ月、6カ月、1年又は他の任意の値を含むことができるが、これらに限定されるものではない。
POIエンジン110は、乗客端末デバイス120に関する履歴オーダーの情報、又は乗客端末デバイス120に関する現在位置の周辺エリアにおける1つ以上の履歴オーダーの情報を取得することができる。現在位置の周辺エリアは、現在位置とこのエリア内の任意の位置との間の距離が閾値未満であるエリアとすることができる。この閾値は、1キロメートル、2キロメートル、5キロメートル、10キロメートル、又は他の任意の値とすることができる。現在位置の周辺エリアは、特定のエリアを含んでもよい。閾値は、乗客端末デバイス120に関するユーザーのアカウント情報、乗客端末デバイス120の位置、輸送サービスの現在のステータス等の因子に基づいて変化し得る。特定のエリアは、任意のサイズの行政区画、商業地域、公共エリア、又は住宅地域であってもよい。特定のエリアは、人々によって範囲が定められた他の任意のエリアであってもよい。特定のエリアは、明確な境界を有しない物理的な地理的エリア(例えば、地形、気候、植物又は動物の分布等に基づいて範囲が定められた地理的エリア)の場合もある。特定のエリアは、河川及び/又は山岳等に基づいて範囲が定められる場合がある。
履歴オーダーの情報は、出発位置の情報、出発時刻、目的地の情報、到着時刻、運転時間、平均速度等、又はそれらの任意の組み合わせを含むことができる。
ステップ930において、POIエンジン110は、乗客端末デバイス120に関する現在の出発位置の情報、出発時刻の情報、及び履歴オーダーの情報に基づいて、1つ以上の候補目的地の情報を生成することができる。処理モジュール210の計算ユニット350は、履歴出発位置の情報に基づいて目的地情報を予測することができる。この予測は、現在の出発位置と履歴オーダーの出発位置との間の相関度に基づいて評価することができる。
本開示の幾つかの実施形態によれば、履歴オーダーの出発位置が乗客の現在の出発位置に近いとき、現在のオーダーと履歴オーダーとの間の相関度は、より高いものとすることができる。幾つかの実施形態によれば、履歴オーダーの出発時刻が乗客の現在の出発時刻に近いとき、現在のオーダーと履歴オーダーとの間の相関度は、より高いものとすることができる。履歴オーダーの出発時刻と乗客の現在の出発時刻との間が近接しているということは、履歴オーダーの出発時刻及び現在の出発時刻が、同じ又は同様の年内、月内、日内、午前/午後のステータス内、時間内及び/又は分内であることを指してもよい。
本開示の幾つかの実施形態によれば、履歴オーダーの出発時刻及び乗客の現在の出発時刻が或る特定の周期的なルールを有するとき、現在のオーダーと履歴オーダーとの間の相関度は、より高いものとすることができる。この周期的なルールは、現在のオーダー及び履歴オーダーが或る特定の反復性又は類似性を有するとともに、中間に或る時間間隔があることを指してもよい。期間は、年、月、日等の単位時間長の整数倍であってもよい。
処理モジュール210の計算ユニット350は、スコア指数を計算することによって現在のオーダーと履歴オーダーとの間の相関度を推定することができる。本開示の幾つかの実施形態によれば、履歴出発位置に対応する各履歴目的地のスコアは、ビッグデータ計算によって取得することができる。幾つかの実施形態では、各履歴出発位置に対応する履歴目的地のスコアは、以下のように計算することができる。
ここで、パラメーターtimeは、現在の出発時刻を示すことができ、パラメーターsourceは、現在の出発位置であり、パラメーターPOIiは、履歴データアイテム(例えば、履歴出発位置、履歴目的地、履歴出発時刻等)を示すことができ、dは、現在の出発時刻と履歴データPOIiとの間の日(「中間日」とも呼ばれる)数を示すことができる。幾つかの実施形態では、少ない中間日数を有する履歴データほど、より高い参照の値を有することができる。パラメーターsは、現在の出発時刻と履歴データPOIiとの間の中間秒数を示すことができる。幾つかの実施形態では、1日以内の短期の目的地の場合、少ない中間秒数ほど、より高いスコアを示すことができる。パラメーターhは、現在の出発時刻と履歴データPOIiとの間の中間時間数を示すことができ、少ない中間時間数を有する履歴データほど、より高い参照の値を有することができる。パラメーターPOIi.sourceは、履歴データPOIi内の履歴出発位置を示すことができる。f(x,y)は、現在の出発位置と履歴出発位置との間の相関度を示すことができる。幾つかの実施形態では、現在の出発位置と履歴データPOIi内の履歴出発位置との間の距離が閾値未満である場合、又は現在の出発位置が履歴出発位置と同一である場合、f(x,y)=1である。幾つかの実施形態では、距離が閾値よりも大きい場合、又は現在の出発位置が履歴出発位置と異なる場合、f(x,y)は、0と1との間の小数とすることができる。例えば、f(x,y)は、0.1、0.2、0.3等の小数とすることができる。距離の閾値は、50メートル、100メートル、200メートル、500メートル等の事前設定値とすることができる。処理モジュール210のランク付けユニット370は、式1に基づく履歴目的地のスコアを取得した後、これらの履歴目的地をランク付けし、最高スコアを有する履歴目的地を特定することができる。
幾つかの実施形態によれば、最高スコアを有する履歴目的地のスコアが、特定の第1の閾値よりも大きい場合、この最高スコアを有する履歴目的地を更に処理して、この履歴目的地をデフォルト目的地として指定することができるか否かを判断することができる。この処理は、計算ユニット350によって実行することができる。例えば、最高スコアを有する履歴目的地のスコアを、他の履歴目的地のスコアと更に比較することができる。より詳細には、例えば、複数の履歴目的地の総スコアに対する、最高スコアを有する履歴目的地のスコアの比を計算することができる。この比が第2の閾値よりも大きい場合、最高スコアを有する履歴目的地をデフォルト目的地として指定することができる。
本開示の幾つかの実施形態によれば、或る特定の乗客が3つの履歴移動の情報を有し、目的地Aへの第1の移動のスコアが2であり、Aへの第2の移動のスコアが1.5であり、Bへの第3の移動のスコアが1である場合、履歴目的地Aのスコアは3.5であり、履歴目的地Bのスコアは1である。第1の閾値は2として設定することができ、第2の閾値は0.75として設定することができる。処理モジュール210の決定ユニット380は、履歴目的地Aのスコアを第1の閾値と比較することができ、履歴目的地Aのスコアが第1の閾値よりも大きい場合、決定ユニット380は、履歴目的地Aのスコアと履歴目的地Bのスコアとの総スコア(4.5)に対する履歴目的地Aのスコア(3.5)の比が第2の閾値よりも大きいか否かを判断する。この比(3.5/4.5)が第2の閾値よりも大きい場合、履歴目的地Aを予測目的地(又はデフォルト目的地と呼ばれる)として指定することができる。第1の閾値及び第2の閾値は、必要に応じて設定することができる。
当然ながら、デフォルト目的地を求めることの上述の説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。処理モジュール210は、最高スコアを有する履歴目的地のみを1つのデフォルト目的地として指定するのではなく、履歴目的地のスコアに基づいて複数のデフォルト目的地を求めてもよいことが理解される。処理モジュール210は、複数のデフォルト目的地を求めた後、それらのデフォルト目的地をランク付けしてもよい。履歴目的地のスコアに基づいて、履歴目的地をスコアの昇順又は降順にランク付けすることができる。当然ながら、予測目的地を求めるプロセスにおいて第1の閾値及び第2の閾値を設定する目的は、乗客の予測目的地の確度を確保するためである。予測目的地は、目的地の確度が十分高い場合に限り、乗客に送信されてもよい。
処理モジュール210の住所解析ユニット310は、1つ以上の候補目的地(すなわち、上記で説明した予測/デフォルト目的地)を取得した後、候補目的地の情報の解析及び/又は逆解析(すなわち、地理的座標によって表された候補目的地を記述名に変換すること、又は記述名によって表された候補目的地を地理的座標に変換すること)を更に含むことができる。候補目的地の送信される情報は、記述名、地理的座標、及び/又はそれらの双方によって表すことができる。
POIエンジン110は、候補目的地の情報を生成した後、ステップ940において、乗客インターフェース230を通じてネットワーク150を介して乗客端末デバイス120に候補目的地の情報を送信することができる。幾つかの実施形態では、POIエンジン110は、ドライバーインターフェース240を通じて1つ以上のドライバー端末デバイス140に候補目的地の情報を送信してもよい。
ステップ950において、POIエンジン110は、乗客端末デバイス120による候補目的地の情報に関連した処理されたデータを、乗客インターフェース230を通じて受信することができる。
ステップ950の後、POIエンジン110は、上記で説明した処理されたデータを解析及び計算して、処理結果を生成してもよい。処理結果が生成された後、POIエンジン110は、幾つかの後続の動作を実行してもよい。処理結果の生成及び後続の動作の詳細の説明は、図7に見出すことができ、ここでは繰り返さない。
当然ながら、履歴オーダー、乗客の現在の出発位置及び出発時刻の情報に基づいて目的地の情報を予測することについてのプロセス又はステップの説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールを様々な方法で組み合わせることもできるし、サブシステム等の他のモジュールと接続することもでき、本開示の教示の下で様々な変形及び変更を行うことができる。例えば、幾つかの実施形態では、POIエンジン110が目的地関連情報を送信した後、ステップ940及び950は省略されてもよい。別の例として、POIエンジン110は、乗客端末デバイス120又は情報源160から取得された他の関係する情報を用いて、候補目的地の情報を一括して求めてもよい。この関係する情報は、履歴時間帯内の乗客端末デバイス120の位置情報、乗客端末デバイス120によって取得された他の情報(例えば、心拍、脈拍、血圧等の生理学的情報及びソーシャルネットワーキングにおける活動、友人とのデート等の社会情報)、気象情報、現在の社会活動、休日の情報、法規制情報等を含むことができるが、これらに限定されるものではない。そのような全ての変更は、本開示の保護範囲内にある。
図9−Bは、本開示の幾つかの実施形態に係る、乗客端末デバイス120によって目的地関連情報を受信して処理するプロセスの一例のフローチャートである。
ステップ915において、乗客端末デバイス120は、現在の出発位置及び現在の出発時刻の現在の情報を取得することができる。
本開示の幾つかの実施形態によれば、現在の出発位置は、現在位置に関するものであってもよいし、乗客によって設定又は指定された出発位置に関するものであってもよい。
現在の出発位置が現在位置であるとき、現在の出発位置は、1つ以上の測位技術に基づいて乗客端末デバイス120のコミュニケーションモジュール540によって求めることもできるし、乗客から入力オーダーを受信した乗客端末デバイス120のI/Oモジュール510によって求めることもできる。
本開示の幾つかの実施形態によれば、コミュニケーションモジュール540は、2つ以上の測位技術に基づいて正確な現在位置を求めることができる。例えば、コミュニケーションモジュール540は、ベースステーション(基地局)及びGPS衛星と通信することによってGPS測位情報及びベースステーション(基地局)の測位情報を取得することができる。処理モジュール550は、GPS測位情報及びベースステーション(基地局)の測位情報を更に処理して、正確な現在位置を取得することができる。処理モジュール550は、この現在位置を現在の出発位置として採用することができる。
現在の出発位置が、乗客端末デバイス120上で乗客によって設定又は指定された位置であるとき、この現在の出発位置は、乗客によって入力又は選択された位置とすることができる。
本開示の幾つかの実施形態によれば、乗客端末デバイス120は、目的地入力ボックスに命令があるか否かを監視することができる。入力ボックスに命令があるとき、乗客端末デバイス120のI/Oモジュール510は、現在の出発位置の情報を取得することができる。処理モジュール550は、乗客が命令を入力した時刻を同時に取得することができる。
本開示の幾つかの実施形態によれば、乗客端末デバイス120は、乗客によって事前に設定された複数の一般的な目的地を記憶及び記録することができる。乗客が輸送サービスを必要とすると、乗客は、乗客端末デバイス120に記憶された一般的な目的地を呼び出すことができる。一般的な目的地は、ディスプレイモジュール520上に表示することができ、I/Oモジュール510を介して選択することができる。
ステップ925において、乗客端末デバイス120は、現在の出発位置及び現在の出発時刻の情報を、コミュニケーションモジュール540を通じてシステム105に送信することができる。現在の出発位置及び現在の出発時刻の情報以外に、乗客端末デバイス120は、他の内容の情報を送信してもよい。他の内容の情報は、乗客の生理学的情報、乗客の輸送サービスについての任意の要件/好み/期待、乗客の他の情報等を含むことができるが、これらに限定されるものではない。
ステップ935において、乗客端末デバイス120のコミュニケーションモジュール540は、オン・デマンドサービスシステム105によって送信された候補目的地の情報を受信することができる。
ステップ935の後、乗客端末デバイス120は、受信された情報をディスプレイモジュール520によって表示してもよい。この情報は、テキスト形態で表示されてもよいし、ハイパーテキスト形態で表示されてもよい。さらに、幾つかの実施形態では、目的地関連情報をハイパーテキストマーキング言語(HTML)の形態で表現又は表示してもよい。幾つかの実施形態では、目的地関連情報を地図インターフェース上に表示してもよい。
ステップ945において、乗客端末デバイス120は、乗客による候補目的地の情報に関連した処理されたデータをI/Oモジュール510を通じて受信することができる。この処理は、1つ以上の候補目的地を削除/選択/指定することと、新たな目的地情報を追加することとを含むが、これらに限定されるものではない。
乗客端末デバイス120は、乗客による処理されたデータを受信した後、一方で、ステップ955において、システム105、1つ以上の他の乗客端末デバイス120、又は1つ以上のドライバー端末デバイス140に処理結果を送信することができる。
当然ながら、乗客端末デバイス120によって現在の情報を提供するプロセス又はステップ及び候補目的地の情報を処理するプロセス又はステップの説明は、例示のために提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、ステップを様々な方法で組み合わせることができる。本開示の教示の下で様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、幾つかの実施形態では、乗客端末デバイス120が候補目的地の情報を受信した後、ステップ945及びステップ955は省略されてもよい。別の例として、乗客端末デバイス120は、ステップ915において、他の関係する情報を取得してもよい。この関係する情報は、乗客端末デバイス120の履歴時間帯における少なくとも1つの位置情報、乗客の他の情報(生理学的情報、例えば、心拍、脈拍、血圧)等を含むことができるが、これらに限定されるものではない。乗客の他の情報は、乗客端末デバイス120のI/Oモジュール510のセンサー構成要素、又はウェアラブルデバイス、健康デバイス等の他のデバイスによって取得されてもよい。乗客端末デバイスは、ステップ925においてこれらの情報を送信してもよい。そのような全ての変更は、本開示の保護範囲内にある。
図10−Aは、本開示の幾つかの実施形態に係る、POIエンジン110によって、特定のPOI分類モデルに基づいて目的地関連情報を生成するプロセスの一例のフローチャートである。ステップ1010において、POIエンジン110は、乗客の地理的情報を受信することができる。地理的情報の受信は、乗客インターフェース230によって行うことができる。地理的情報は、位置情報及び時間情報を含むことができる。位置情報は、乗客の現在位置及びオーダーの出発位置を含むことができる。時間情報は、現在時刻、乗客がサービス要求を送信した時刻、乗客によって設定された時刻等を含むことができる。乗客の現在位置は、オーダーの出発位置と同じ場合もあるし、異なる場合もある。乗客の現在位置及び/又はオーダーの出発位置は、特定の測位技術を用いることによって取得することもできるし、乗客が特定の住所名を手入力することによって取得することもできる。測位技術の関連した説明は、図5に見出すことができ、ここでは繰り返さない。
ステップ1020において、POIエンジン110は、特定のPOI分類モデルに基づいて候補目的地を生成することができる。ステップ1020は、処理モジュール210によって実行することができる。幾つかの実施形態では、特定のPOI分類モデルは、乗客に関するものとすることができる。各乗客は、対応するPOI分類モデルを有することができる。POI分類モデルは、ユーザーデータベース630、記憶モジュール220、又はオン・デマンドサービスシステム105のデータを記憶することができる他のモジュール若しくはユニットに記憶することができる。特定のPOI分類モデルを求めるプロセスは、図10−Bにおいて説明される。POIエンジン110は、上記で説明したPOI分類モデルに基づいて、乗客の現在位置又はオーダーの出発位置のPOI分類タイプを求めることができる。より具体的には、幾つかの実施形態では、POIエンジン110は、乗客の現在位置又はオーダーの出発位置のPOI分類タイプに基づいて、オーダーの目的地のPOI分類タイプを求めることができる。幾つかの実施形態では、POIエンジン110は、乗客の現在位置又はオーダーの出発位置のPOI分類タイプに加えて、現在時刻、乗客がサービス要求を送信した時刻及び乗客によって設定された時刻に基づいて、オーダーの目的地のPOI分類タイプを求めることができる。POIエンジン110は、オーダーの目的地のPOI分類タイプに基づいて、少なくとも1つの候補目的地の情報を生成することができる。
候補目的地の数は、任意とすることができる。例えば、候補目的地の数は、1つ、2つ、3つ、4つ、又は5つとすることができる。候補目的地は、同じPOI分類タイプに属する場合もあるし、異なるPOI分類タイプに属する場合もある。例えば、候補目的地は、2つ又は3つの異なるPOI分類タイプに属する場合がある。候補目的地の数及び/又は目的地が属するPOI分類タイプの数は、固定することもできるし、調整可能にすることもできる。例えば、POIエンジン110は、乗客端末デバイス120から受信される目的地の数をN1と指定し、目的地が属するPOI分類タイプの数をN2と指定することができる。各POI分類タイプに属する目的地の数は、固定することもできるし、調整可能にすることもできる。
幾つかの実施形態では、POIエンジン110は、ステップ1030において、特定のランク付けルールに基づいて、生成された候補目的地をランク付けすることもできる。幾つかの実施形態では、このランク付けは、処理モジュール210のランク付けユニット370によって実行することができる。特定のランク付けルールは、確率、距離、時間シーケンス、所要時間量、所要料金、用いられる移動方法の数等、又はそれらの任意の組み合わせ等の1つ以上のルールの組み合わせとすることができる。幾つかの実施形態では、POIエンジン110は、オーダーの出発位置からオーダーの候補目的地までの所要時間量、距離、所要料金、所望の移動方法、種々の移動方法に対応するオーダー完了率等を計算ユニット350によって計算することができる。ランク付けユニット370は、計算ユニット350の計算結果に基づいて、候補目的地をランク付けすることができる。幾つかの実施形態では、ランク付けユニット370は、候補目的地の使用数又は使用頻度に基づいて候補目的地をランク付けしてもよい。ステップ1040において、POIエンジン110は、ランク付けされた候補目的地を、乗客インターフェース230を通じて乗客端末デバイス120に送信することができる。乗客端末デバイス120に送信される候補目的地の数は、ステップ1030においてランク付けされた候補目的地のうちの1つ以上とすることができる。
幾つかの実施形態では、ステップ1020において生成された目的地情報は、推奨された単一又はハイブリッドの移動方法と、推奨された単一又はハイブリッドの移動方法の所要料金とを含んでもよい。ステップ1030において、POIエンジン110は、移動方法の数又は所要料金の額に基づいて候補目的地の情報をランク付けしてもよい。
ステップ1040において、POIエンジン110は、候補目的地を乗客端末デバイス120及び/又はドライバー端末デバイス140に送信してもよい。ランク付けされた候補目的地が送信されてもよいし、ランク付けされていない候補目的地が送信されてもよい。
幾つかの実施形態では、POIエンジン110は、ステップ1020において生成された候補目的地を乗客端末デバイス120に送信してもよい。幾つかの実施形態では、POIエンジン110は、ステップ1020における候補目的地のうち、特定のルールに基づいてランク付けされた上位N個の目的地を乗客端末デバイス120に送信してもよい。Nは、2、3、4、5、6、7、8、9、10、又は10よりも大きいものであってもよい。幾つかの実施形態では、POIエンジン110は、上位N個の目的地をランク付けして、乗客端末デバイス120に送信してもよい。上位N個の目的地は、降順の使用数、降順の使用頻度、昇順の移動方法の数、昇順の所要時間、昇順の所要料金、種々の移動方法に対応するオーダー完了率等の1つ以上のルールに基づいてランク付けすることができる。幾つかの実施形態では、上位N個の目的地をランク付けするルール(複数の場合もある)は、POIエンジン110によって自動的に構成されてもよい。幾つかの実施形態では、上位N個の目的地をランク付けするルールは、乗客によって事前に設定されてもよい。幾つかの実施形態では、ランク付けルールは、オーダー(例えば、現在のオーダー又は特定の条件を満たすオーダー)に基づいて乗客によって指定されてもよい。例えば、POIエンジン110は、乗客が選択するための1つ以上のランク付け方法を提供することができる。その場合、乗客は、1つ以上のランク付け方法及び/又は適用条件を指定することができる。別の例として、POIエンジン110は、乗客が1つ以上のランク付け方法及び/又は適用条件を定めることを可能にしてもよい。例えば、ランク付けは、複数の因子に基づいてもよい。POIエンジン110は、乗客が、ランク付けを計算するときに各因子の重みを定めることを可能にしてもよい。幾つかの実施形態では、POIエンジン110は、ランダムな順序でランク付けされた上位N個の目的地を送信してもよい。
幾つかの実施形態では、POIエンジン110は、乗客端末デバイス120による候補目的地の処理を更に受信してもよい。幾つかの実施形態では、この処理は、POIエンジン110に送信する候補目的地のうちの1つを直接選択することを含んでもよい。幾つかの実施形態では、この処理は、POIエンジン110に送信する複数の候補目的地を選択することを含んでもよい。幾つかの実施形態では、この処理は、1つ以上の候補目的地を削除することを含んでもよい。当然ながら、POIエンジン110によって送信された少なくとも1つの候補目的地を処理することの上述の説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。幾つかの実施形態では、候補目的地を処理する他の方法も含まれてもよい。POIエンジン110は、乗客端末デバイス120から処理結果を受信した後、この処理結果をドライバー端末デバイス140に送信してもよい。例えば、POIエンジン110は、上記で説明した候補目的地から乗客端末デバイス120によって選択された目的地を受信し、この選択された目的地をオーダーの目的地として設定してもよい。POIエンジン110は、出発位置及び選択された目的地を含むオーダーをドライバー端末デバイス140に送信してもよい。
当然ながら、目的地を生成することの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。幾つかの実施形態では、ステップ1030等の、上記で説明したフローチャートにおける幾つかのステップは省略されてもよい。POIエンジン110は、候補目的地を生成し、これらの候補目的地をランク付けすることなく直接送信してもよい。幾つかの実施形態では、上記で説明したフローチャートは、記憶するステップ等の他のステップを含んでもよい。上記で説明したステップの幾つかの中間処理結果及び/又は最終処理結果は、記憶モジュール220、データベース130、又はオン・デマンドサービスシステム105のデータを記憶することができる他のモジュール若しくはユニットに記憶されてもよい。
幾つかの実施形態では、ステップ1010も省略されてもよい。POIエンジン110は、乗客からサービス要求信号を受信すると、乗客の現在位置及び/又はオーダーの出発位置を収集することなく、現在時刻に基づいて乗客の可能な移動場所を求めることができる。サービス要求信号は、サービスを提供するサービスアプリケーションがオンにされているとき、POIエンジン110によって検出することができる。幾つかの実施形態では、この移動場所は、オーダーの出発位置及び目的地を指すことがある。候補目的地を生成することの説明は、移動場所を生成することにも同様に適用可能であり、ここでは繰り返さない。そのような全ての変更は、本願の保護範囲内にある。
図10−Bは、本開示の幾つかの実施形態に係る、POI分類モデルを構築するプロセスの一例のフローチャートである。幾つかの実施形態では、POI分類モデルは、乗客に関するもの、例えば、乗客のアカウント名とすることができる。各乗客は、特定のPOI分類モデルを有することができる。簡潔にするために、以下の説明では、乗客が一例として例示されている。POIエンジン110は、ステップ1015において、乗客(又は乗客デバイス120の他のユーザー)に関連した履歴オーダーの情報を取得することができる。この履歴オーダーの情報は、乗客に関する履歴オーダーの情報、又は乗客に関する事前設定期間の間の1つ以上の履歴オーダーの情報を含むことができる。この事前設定期間は、1日以上、1週以上、1カ月以上、1四半期以上、1年以上等を含むことができる。幾つかの実施形態では、事前設定期間は、2カ月であってもよい。幾つかの実施形態では、事前設定期間は、ランダムであってもよいし、固定されていてもよい。幾つかの実施形態では、事前設定期間は、履歴経験又は実験データに基づいて求められてもよい。履歴オーダーの情報は、履歴オーダーの出発位置及び目的地、乗客の履歴サービス要求時刻、乗客によって設定された履歴出発時刻等、又はそれらの任意の組み合わせを含むことができる。履歴オーダーの情報は、データベース130の履歴オーダーデータベース610、記憶モジュール220、及び/又は記憶機能を有するオン・デマンドサービスシステム105の他のモジュール若しくはユニットから取得することができる。
ステップ1025において、POIエンジン110は、オン・デマンドサービスシステム105によって事前に構築された位置分類器に基づいて、乗客の履歴オーダーの情報を処理することができる。位置分類器を構築する方法は、本開示の以下の説明を参照することができる。履歴オーダーの情報は、位置情報、時間情報、所要料金の情報等、又はそれらの任意の組み合わせを含むことができる。位置情報は、履歴オーダーの出発位置及び/又は目的地を含むことができる。時間情報は、乗客がサービス要求を送信した時刻又は乗客によって設定された出発時刻を含むことができる。処理は、履歴オーダーの出発位置及び/又は目的地の住所を分類して、履歴オーダーの出発位置及び/又は目的地に対応する住所分類タイプを生成することを含むことができる。住所分類タイプは、輸送機関、住宅地域、オフィスエリア、食料品及び飲料、ホテル、娯楽、住所名、ショッピング等を含むことができる。
幾つかの実施形態では、POIエンジン110は、ステップ1035において、履歴オーダーの出発位置及び/又は目的地の住所分類の結果に基づいて、乗客のPOIタイプ(すなわち、POI分類タイプ)を求めることができる。乗客のPOIタイプは、1つ以上のタイプに属することができる。POIエンジン110は、乗客の全ての履歴オーダー又は以前の期間における乗客の履歴オーダーの出発位置及び/又は目的地の住所分類タイプに基づいて、乗客の履歴目的地及び/又は場所を予測することができる。過去における期間は、1週以上、1カ月以上、1四半期以上、1年以上等とすることができる。例えば、乗客のPOIタイプが、POIエンジン110によって求められた過去又は以前の期間において「食料品及び飲料」及び「住宅地域」である場合、乗客は、過去又は以前の期間において自宅とレストランとの間のエリア辺りを頻繁に移動している可能性がある。乗客は、過去又は以前の期間において食料品の消費を好んでいたと結論付けることができる。
幾つかの実施形態では、POIエンジン110は、ステップ1035において、履歴オーダーの時間情報及び住所情報に基づいて、乗客のPOIタイプを求めてもよい。乗客のPOIタイプは、1つ以上のタイプに属することができる。履歴オーダーの時間情報は、1日の時点又は時間帯を含むことができる。POIエンジン110は、乗客の全ての履歴オーダー又は以前の時間帯における乗客の履歴オーダーの出発位置及び/又は目的地の住所分類タイプと、乗客がサービス要求を送信した時刻又は乗客によって設定された出発時刻とに基づいて、過去又は以前の時間帯における乗客の履歴目的地及び/又は場所の情報を予測することができる。例えば、午前8時〜午前10時において、過去又は以前の時間帯における乗客の履歴オーダーの出発位置の住所分類タイプが「住宅地域」であり、過去又は以前の時間帯における乗客の履歴オーダーの目的地の住所分類タイプが「オフィスエリア」である場合、乗客のPOIタイプは、「住宅地域」及び「オフィスエリア」とすることができる。その場合、このことは、乗客が、過去又は以前の時間帯において自宅とオフィスとの間のエリア辺りを頻繁に移動していることを示すことができる。乗客は、過去又は以前の時間帯において働くことを好んでいたと結論付けることができる。
POI分類モデルは、上記で説明したステップによって求められた乗客のPOIタイプに基づいて取得することができる。乗客の行動及び習慣は、POI分類モデルに基づいて予測することができる。現在位置情報及び/又は時間情報が取得された後、乗客の目的地の住所分類タイプを予測することができ、次いで、乗客の目的地をそれに応じて予測することができる。
以下は、ステップ1025における位置分類器を構築する方法の詳細な説明である。当然ながら、この説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。位置分類器を構築するプロセスは、次のステップを含むことができる。すなわち、(a)処理モジュール210は、住所分類タイプが既知である複数のテキスト住所データを取得することができる;(b)テキスト処理ユニット390は、所定の単語分割方法を用いて、住所分類タイプが既知である複数のテキスト住所データを分割し、複数の特徴テキストを生成することができる;(c)モデルトレーニングユニット395は、複数の特徴テキストをトレーニングデータとして採用して位置分類器をトレーニングすることによって位置分類器を生成することができる。位置分類器をトレーニングする方法は、単純ベイズ(naive Bayesian)アルゴリズム、重みベイズ(weight Bayesian)アルゴリズム、決定木、ロッキオ(Rocchio)、ニューラルネットワーク、線形最小二乗フィッティング、K最近傍、遺伝的アルゴリズム、最大エントロピー、線形回帰モデル等、又はそれらの任意の組み合わせを含むことができる。線形回帰モデルは、ロジスティック回帰モデル及びサポートベクターマシンモデルを含むことができる。本明細書において説明される位置分類器をトレーニングする方法は、他のアルゴリズム又はモデルも含んでもよい。幾つかの実施形態では、位置分類器は、データトレーニングを伴わずに経験値から直接導出することもできる。
幾つかの実施形態では、処理モジュール210は、サンプル等化ユニット(図3に図示せず)も備えることができる。サンプル等化ユニットは、住所分類タイプが既知である複数のテキスト住所データを取得した後、複数のテキスト住所データに対してサンプル等化を実行することができる。このサンプル等化は、計算ユニット350によって、テキスト住所データの数及び住所分類タイプの数に基づいて、各住所分類タイプのテキスト住所データの平均数を計算することを含むことができる。幾つかの実施形態では、サンプル等化の方法は、「復元サンプリング」であってもよい。或る特定の住所分類タイプのテキスト住所データの数が平均数未満である場合、この住所分類タイプのテキスト住所データの数を平均数に増加させることができる。逆に、或る特定の住所分類タイプのテキスト住所データの数が平均数よりも大きい場合、この住所分類タイプのテキスト住所データの数を平均数に減少させることができる。
ステップ(b)において、テキスト処理ユニット390は、各既知の住所分類タイプのテキスト住所データを分割して、複数の特徴テキストを生成することができる。これらの特徴テキストは、ベクトル、例えば、X=(x1,x2,x3,...xm)とみなすことができる。ここで、Xの各要素は、特徴テキストを示すことができ、mは、分割された各テキスト住所データの特徴テキストの数を示すことができる。例えば、「Beijing Shangdi Subway Station」という言葉は、3つの特徴テキスト、例えば、「Beijing」、「Shangdi」、「Subway Station」に分割することができる。幾つかの実施形態では、処理モジュール210は、冗長除去ユニットを備えてもよい。幾つかの実施形態では、この冗長除去ユニットは、テキスト処理ユニット390に含まれてもよく、テキスト削除ユニットとして機能することができる。このテキスト削除ユニットは、或る特定の閾値よりも短い長さを有する特徴テキストを削除することができる。幾つかの実施形態では、この閾値は、2、3、4等とすることができる。例えば、「I'm in Beijing Xierqi Subway Station」を分割した結果は、「I'm」、「in」、「Beijing」、「Xierqi」、「Subway」、「Station」とすることができる。2よりも短い長さを有する特徴テキスト「I'm」及び「in」が削除された後の残りの特徴テキストは、「Beijing」、「Xierqi」、「Subway」、「Station」とすることができる。
ステップ(c)において、モデルトレーニングユニット395は、複数の特徴テキストをトレーニングデータとして採用して位置分類器をトレーニングすることによって、位置分類器を生成することができる。幾つかの実施形態では、モデルトレーニングユニット395は、単純ベイズアルゴリズムを用いて位置分類器をトレーニングしてもよい。簡潔にするために、住所分類タイプの集合は、Y=(y1,y2,y3,...yq)とすることができる。ここで、Y内の要素は、種々の住所分類タイプを表すことができる。計算ユニット350は、ベイズ関数P(Y│X)=P(X│Y)*P(Y)/P(X)に基づいてX及びYの各組み合わせの事後確率P(Y│X)を計算することができる。ここで、P(Y│X)は、テキスト住所データXが或る特定の分類タイプに属する確率を示すことができる。
処理モジュール210の計算ユニット350は、テキスト住所データが各住所分類タイプに属する確率を計算することができる。幾つかの実施形態では、テキスト住所データが各住所分類タイプに属する確率は、以下のように取得することができる。
ここで、P(Y=yj)は、住所分類タイプの集合における住所分類タイプyjの割合を示すことができ、P(xi│Y=yj)は、住所分類タイプyjにおける特徴テキストxiの割合を示すことができ、P(X)は、オーダーの出発位置又は目的地の出現確率を示すことができる。計算ユニット350は、データ統計に基づいてP(Y=yj)及びP(xi│Y=yj)を取得することができる。
処理モジュール210の計算ユニット350は、テキスト住所データが各住所分類タイプに属する確率を計算することができる。簡潔にするために、住所分類タイプの確率は、降順のP1,P2,P3,......Pqによって示される。ここで、qは、住所分類タイプの総数である。上記で説明した種々の住所分類タイプの確率に基づいて、処理モジュール210は、テキスト住所データが属する住所分類タイプを求めることができる。幾つかの実施形態では、POIエンジン110の処理ユニット210は、上記で説明したq個の確率の中で最大確率を有する住所分類タイプをテキスト住所データの住所分類タイプとして指定することができる。幾つかの実施形態では、POIエンジン110は、上記で説明したq個の確率の中で2つの最大確率(すなわち、P1及びP2)を選択してもよく、P1及びP2は比較することができる。P1>Z*P2であり、Zが1よりも大きい場合、P1に対応する住所分類タイプは、テキスト住所データの住所分類タイプとして指定することができる。Zの値の範囲は、1〜2、2〜3、3〜4、4〜5、5〜6、又は6よりも大きいものとすることができる。幾つかの実施形態では、Zは、3〜5の値の範囲を有することができる。例えば、「Shangdi Subway Station」が住所分類タイプ「輸送機関」及び「住所名」に属する確率が、それぞれ0.6及び0.1である場合、0.6>3*0.1であるので、Zの値は3であり、処理ユニット210は、「Shangdi Subway Station」の住所分類タイプが「輸送機関」であると判断することができる。
上記で説明したものは、位置分類器を生成するプロセスである。この位置分類器に基づいて、オーダーの出発位置及び/又は目的地を分類して、オーダーの出発位置及び/又は目的地の住所分類タイプを求めることを実現可能にすることができる。当然ながら、上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、住所分類器を生成する教示の下で様々な変形及び変更を行うことができる。そのような全ての改良及び変更は、本開示の保護の範囲内にある。
図11は、本開示の幾つかの実施形態に係る、POIエンジン110によって移動経路をユーザーに提供するプロセスの一例のフローチャートである。図11に示すように、ステップ1110において、POIエンジン110は、ユーザーの少なくとも1つの移動経路を取得することができる。ユーザーは、乗客の場合もあるし、ドライバーの場合もある。ステップ1110は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。幾つかの実施形態では、移動経路は、乗客端末デバイス120及び/又はドライバー端末デバイス140、データベース130又は情報源160から取得することができる。当然ながら、ユーザーの移動経路を取得する様々な方法がある。例えば、複数の一般的な移動経路を、ユーザーが事前に設定することができる。代替的に、移動経路は、ユーザーの日々の移動データ及び消費行動のビッグデータ計算に基づいて取得されてもよい。本開示の幾つかの実施形態によれば、移動経路は、出発位置及び目的地を含むことができる。
ステップ1120において、POIエンジン110は、移動経路の確率を計算することができる(例えば、移動経路の確率は、移動の際にその移動経路を採用する確率を表すことができる)。移動経路の確率の計算は、POIエンジン110の処理モジュール210によって実行することができる。例えば、幾つかの実施形態では、POIエンジン110は、POIエンジン110の処理モジュール210の計算ユニット350によって、移動経路の履歴確率及び/又は移動経路関連情報に基づいて移動経路の確率を計算することができる。各移動経路の履歴確率は、ユーザーの履歴移動データの計算によって取得することができる。各移動経路の履歴確率は、計算ユニット350によって計算することができる。本開示の幾つかの実施形態によれば、移動経路関連情報は、現在位置、現在の気象状況、現在の日付及び/又は現在時刻等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。例えば、ステップ1110においてPOIエンジン110によって取得されたユーザーの移動経路は、それぞれR1,R2,...,Rnとすることができる。各移動経路に対応する移動の時間は、それぞれC1,C2,...,Cnとすることができる。ユーザーが少なくとも1つの移動を行った場合、すなわち、
である場合、各移動経路の履歴確率は、それぞれ
とすることができる。ユーザーによって事前に設定された取得移動経路Riについて、ユーザーがこの移動経路Riに沿って移動したことがない場合、すなわち、Ci=0である場合、移動経路Riの履歴確率は0とすることができることを導き出すことができる。より詳細には、例えば、移動経路関連情報は、ユーザーの移動経路の選択に影響を与える因子を指すことができる。これらの因子は、ユーザーの現在位置、現在の気象状況、現在の日付、現在時刻等、又はそれらの任意の組み合わせを含むことができる。ユーザーの消費行動は、ユーザーが必要性又は動機によって動かされて消費の意思決定を行い、消費を完了する行動を指すことができる。消費行動は、思考プロセス又は精神プロセスであってもよいし、行動を起こすプロセス、計画を策定するプロセス、又は問題を解決するプロセスであってもよい。移動経路のユーザーの選択は、消費行動のプロセスであってもよい。ユーザーは、内部状況又は外部状況に基づいて自身の移動の要件を決定することができる。例えば、乗客の現在位置が、平日の勤務時間中において自宅である場合、乗客は、タクシーで会社に行くことを選択する可能性が最も高いものとすることができる。乗客の現在位置が、平日の勤務時間後において会社である場合、乗客は、タクシーで自宅に行くことを選択する可能性が最も高いものとすることができる。週末である場合、乗客は、タクシーで酒場、映画館、他の娯楽場等に行くことを選択する可能性が最も高いものとすることができる。別の例として、乗客の移動の願望は、雨又は雪の日には強くないものとすることができる。そして、乗客が雨又は雪の日に移動することを選択すると、最も可能性のある目的地は、レストラン、銀行、病院、スーパーマーケット等の乗客から遠く離れていない日常生活に関連した場所とすることができる。
幾つかの実施形態では、各移動経路の確率の計算は、履歴確率の計算に基づくことができる。例えば、乗客/ドライバーの取得された移動経路は、それぞれR1,R2,...,Rnとすることができ、移動経路に対応する計算された履歴確率は、それぞれH1,H2,...,Hnとすることができる。その場合、移動経路の現在の確率は、それぞれH1,H2,...,Hnと仮定することができる。幾つかの実施形態では、各移動経路の確率の計算は、履歴確率の計算及び移動経路関連情報に基づいて取得されてもよい。例えば、乗客/ドライバーの取得された移動経路は、それぞれR1,R2,...,Rnとすることができ、移動経路に対応する計算された履歴確率は、それぞれH1,H2,...,Hnとすることができる。簡潔にするために、現在位置に関する移動経路関連情報のみを考慮することができる。乗客/ドライバーの移動経路は、出発位置が現在位置である経路集合G1と、出発位置が現在位置でないもう1つの経路集合G2との2つのグループに分割することができる。G1には、R1,R2,...,Rkによってそれぞれ表されるk個の経路が存在することができ、それに対応して計算されたk個の経路の確率は、H1,H2,...,Hkとすることができる。G2には、それぞれRk+1,Rk+2,...,Rnによって表されるn−k個の経路が存在することができ、それに対応して計算されたn−k個の経路の確率は、それぞれHk+1,Hk+2,...,Hnとすることができる。集合G2内の各経路について、出発位置の全てが現在位置でないので、G2内の各経路の現在の確率は0とすることができる。集合G1内の各経路について、出発位置の全てが現在位置であるので、G1内の各経路に対する「現在位置」の各影響係数は、同じであるとすることができる。そのため、集合G1内の各経路の確率は、それぞれ
とすることができ、集合G2内の各経路の確率は0とすることができる。したがって、乗客/ドライバーの各移動経路(すなわち、R1,R2,...,Rn)の現在の確率は、それぞれ
とすることができる。幾つかの実施形態では、各移動経路の確率の計算は、移動経路関連情報に基づいて取得されてもよい。例えば、乗客/ドライバーの取得された移動経路が表1に示されている。
幾つかの実施形態によれば、乗客/ドライバーの移動経路の選択に影響を与える因子(すなわち、移動経路関連情報)は、時間及び気象とすることができる。各因子には、表2及び表3に示すように、乗客/ドライバーの移動経路の最終選択に対するその因子の影響の程度を表す影響係数をそれぞれ割り当てることができる。
現在の日が休日でありかつ晴れの日である場合、2つの経路R1、R2の選択係数はそれぞれ、R1については150×1=150とすることができ、R2については50×1=50とすることができる。このため、2つの経路の確率はそれぞれ、R1については150/(150+50)=75%とすることができ、R2については50/(150+50)=25%とすることができる。現在の日が、高齢者に有利な取り扱いを与える日でありかつ晴れの日である場合、2つの経路の選択係数はそれぞれ、R1については20×1=20とすることができ、R2については200×1=200とすることができる。このため、2つの経路の確率は、R1については20/(20+200)=9.1%とすることができ、R2については200/(20+200)=90.9%とすることができる。
当然ながら、上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。様々な種類の移動経路関連情報が存在し得るし、各移動経路に対する移動経路関連情報の影響は同じ場合もあれば、異なる場合もあるので、種々の移動経路関連情報について、各経路の最終確率を計算する、より複雑な数学モデルを構築することができる。
ステップ1130において、POIエンジン110は、上記で計算された確率に従って乗客/ドライバーの移動経路をランク付けすることができる。移動経路は、POIエンジン110の処理モジュール210のランク付けユニット370によって確率に基づいて降順でランク付けすることができる。
ステップ1140において、POIエンジン110は、ランク付けされた移動経路のリストを乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。ステップ1140は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。幾つかの実施形態では、移動経路のリストは、乗客端末デバイス120及び/又はドライバー端末デバイス140のディスプレイユニット520上に表示することができ、乗客及び/又はドライバーが選択するために提供することができる。幾つかの実施形態では、移動経路のリスト内で最高確率を有する移動経路をデフォルト移動経路として指定し、対応するサービス要求情報に直接加えることができる。
当然ながら、POIエンジン110は、ステップ1120及び/又はステップ1130を実行することなく、乗客又はドライバーの移動経路を直接送信してもよい。例えば、乗客/ドライバーの移動経路が1つしか取得されないときは、移動経路の確率は計算されなくてもよく、移動経路は乗客/ドライバーに直接送信されてもよい。別の例として、乗客/ドライバーの移動経路が1つしか取得されないときは、移動経路の確率は、100%として計算されてもよく、ステップ1130を実行することなく、移動経路は、乗客/ドライバーに直接送信されてもよい。
本開示の上記説明におけるモジュール、ユニット又はステップは、一般的な計算モジュールによって実現されてもよいことが当業者には明らかであろう。例えば、モジュール、ユニット又はステップは、1つの計算モジュールに統合されてもよいし、複数の計算モジュールからなるネットワーク上に分散されてもよい。代替的に、モジュール、ユニット又はステップは、記憶モジュールに記憶することができるとともに計算モジュールによって実行することができるような実行可能プログラムコードによって実現されてもよい。モジュール、ユニット又はステップは、それらのそれぞれを個々の集積回路モジュール上に分散させることによって実現されてもよいし、モジュール又はステップのうちの幾つかを単一の集積回路モジュール上に分散させることによって実現されてもよい。このように、本開示は、どの特定のハードウェア又はソフトウェアの組み合わせにも限定されるものではない。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図12−Aは、本開示の幾つかの実施形態に係る、POIエンジン110によって移動方法計画を乗客/ドライバーに提供するプロセスの一例のフローチャートである。ステップ1210において、POIエンジン110は、輸送サービス要求に関連した情報を受信することができる。ステップ1210は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。幾つかの実施形態では、乗客インターフェース230及び/又はドライバーインターフェース240は、輸送サービス要求を乗客端末デバイス120から受信し、この輸送サービス要求の特徴関連情報及びプロファイル情報を取得することができる。プロファイル情報は、出発時刻、出発位置及び目的地の情報等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。特徴関連情報は、出発位置及び目的地のPOI情報、リアルタイム気象情報、リアルタイム交通情報、各移動方法のドライバーの好み情報、事前に設定されたエリアにおいて各移動方法に対応する利用可能なドライバーの数、実際の距離等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。
ステップ1220において、POIエンジン110は、特徴関連情報及びプロファイル情報に基づいて、各単一移動方法に対応する輸送サービス要求の移動情報を求めることができる。ステップ1220は、POIエンジン100の処理モジュール210の決定ユニット380によって実行することができる。決定ユニット380は、特徴関連情報及びプロファイル情報に基づいて、各単一移動方法に対応する輸送サービス要求の移動情報を求めることができる。移動情報は、オーダー完了率、所要時間、所要料金、歩行距離等を含むことができる。例えば、単一移動方法に対応するタクシー配車要求(すなわち、輸送サービス要求)の移動情報は、タクシー配車要求に基づく各移動方法のオーダー完了率、所要時間、所要料金、歩行距離等を含むことができる。幾つかの実施形態では、決定ユニット380は、出発位置の情報及び目的地の情報に基づいてそれぞれ出発位置のPOI情報及び目的地のPOI情報を求めることができる。各移動方法について、決定ユニット380は、出発位置のPOI情報、目的地のPOI情報、出発時刻、リアルタイム交通情報、或る特定の移動方法のドライバーの好み情報、及び利用可能なドライバーの数に基づいて、そのオーダー完了率を推定することができる。決定ユニット380は、移動経路を計画し、移動経路の実際の距離、移動時間及び交通渋滞のレベルを取得して、出発位置、目的地及び移動方法に基づいて移動経路の総料金、歩行距離及び所要時間を推定することができる。
幾つかの実施形態では、チップ等の追加料金の額を複数、事前に設定しておくことができる。決定ユニット380は、追加料金の各事前設定額に対応するオーダー完了率と、追加料金の各事前設定額の乗客の受理率(acceptance rate)とを求めることができる。決定ユニット380は、追加料金の各事前設定額のオーダー完了率及び乗客の受理率に基づく追加料金の最適な額を取得し、この追加料金の最適な額に対応するオーダー完了率を最終オーダー完了率として指定することもできる。より詳細には、サービス提供者は、タクシー配車要求を受け取り、この要求の出発位置及び目的地のPOI(関心地点)情報、例えば、出発位置/目的地が病院であるのか、コミュニティであるのか、又は商業地区であるのかを解析することができる。加えて、各移動方法について、オーダー完了率は、リアルタイム交通状況、時刻、出発位置及び目的地、並びにドライバーの周囲の情報に基づいて推定することができる。チップを有する移動方法の場合、推定オーダー完了率と、オーダー完了率を高める推奨チップ額とが出力されてもよい。加えて、各移動方法について、その所要料金、所要時間及び歩行距離が、移動経路計画の結果に従って取得された移動経路の実際の距離、移動時間、及び交通渋滞のレベルに基づいて推定されてもよい。総料金は、所要料金及び推奨チップの合計とすることができる。このため、複数の単一移動方法の移動情報を取得することができる。
幾つかの実施形態では、ステップ1220は、サブステップ1221、1222、及び1223を含むことができる。図12−Bは、POIエンジン110によって移動情報を処理するプロセスの一例のフローチャートである。ステップ1221において、出発位置の情報及び目的地情報に基づいてそれぞれ出発位置のPOI情報及び目的地のPOI情報を求めることができる。ステップ1222において、各移動方法について、その移動方法の出発位置のPOI情報、目的地のPOI情報、出発時刻、リアルタイム交通情報、ドライバーの好み情報、及び利用可能なドライバーの数に基づいて、オーダー完了率を推定することができる。より詳細には、例えば、ステップ1222は、事前に構築された予測モデルに基づいて、各移動方法を用いたタクシー配車要求のオーダー完了率を推定することによって実行することができる。予測モデルは、各移動方法の事前設定期間の間の履歴オーダーの特徴関連情報に基づいて構築されたモデルとすることができる。タクシー配車要求の特徴関連情報は、予測モデルの予測変数とみなすことができる。各移動方法を用いたタクシー配車要求のオーダー完了率は、予測モデルの目標変数として利用することができる。
各移動方法のオーダー完了率が、ステップ1222において推定された後、移動情報を処理する方法は、ステップA01及びステップA02を更に含んでもよい。ステップA01において、追加料金の複数の事前設定額に基づいて、追加料金の事前設定額のそれぞれに対応するオーダー完了率と、追加料金の事前設定額の乗客の受理率とを求めることができる。追加料金は、チップとすることができる。最適なチップは、複数の事前に設定されたチップに対応するオーダー完了率及び乗客の受理率を推定することによって選択することができる。当然ながら、ステップA01において、オーダー完了率及び乗客の受理率は、ステップ1222と同じ方法、すなわち、予測モデルを事前に構築することによって取得されてもよい。追加料金は、予測モデルの特性データであってもよい。ステップA02において、追加料金の事前設定額のそれぞれに対応するオーダー完了率及び乗客の受理率に基づいて、追加料金の最適な額を取得することができる。追加料金の最適な額に対応するオーダー完了率は、最終オーダー完了率として指定することができる。
ステップ1223において、出発位置、目的地及び移動方法に基づいて、移動経路を計画することができ、その実際の距離、移動時間及び交通渋滞のレベルを取得して、総料金、歩行距離及び所要時間を推定することができる。チップ、オーダー完了率、総料金、歩行距離、所要時間等の複数の単一移動方法の移動情報は、上記で説明したステップによって取得することができる。
図12−Aを再び参照すると、ステップ1230において、POIエンジン110は、各単一移動方法の移動情報に基づいて、大域的最適化アルゴリズムを用いてハイブリッド移動方法を求めることができる。その場合、POIエンジン110は、輸送サービス要求に対応するハイブリッド移動方法の移動情報を取得することができる。ステップ1230は、POIエンジン110の処理モジュール210の決定ユニット380の計算サブユニット385によって実行することができる。計算サブユニット385は、各単一移動方法の移動情報に基づいて、大域的最適化アルゴリズムを用いてハイブリッド移動方法を求めることができる。次いで、決定ユニット380は、計算サブユニット385によって求められたハイブリッド移動方法の移動情報を取得することができる。幾つかの実施形態では、大域的最適化アルゴリズムは、欲張りアルゴリズム等とすることができる。幾つかの実施形態では、各単一移動方法のオーダー完了率、所要時間、所要料金、及び歩行距離に基づいて、決定ユニット380及びその計算サブユニット385は、欲張りアルゴリズムを用いて、複数のハイブリッド移動方法を求めてもよい。求められた複数のハイブリッド移動方法は、所要時間に基づいて昇順でランク付けすることができる。タクシー配車要求に対応する複数のハイブリッド移動方法の移動情報を取得することができる。代替的に、各単一移動方法のオーダー完了率、所要時間、所要料金、及び歩行距離に基づいて、決定ユニット380及びその計算サブユニット385は、欲張りアルゴリズムを用いて、複数のハイブリッド移動方法を求めてもよい。求められた複数のハイブリッド移動方法は、所要料金に基づいて昇順でランク付けすることができる。タクシー配車要求に対応する複数のハイブリッド移動方法の移動情報を取得することができる。例えば、複数のハイブリッド移動方法が、複数の単一移動方法を組み合わせることによって取得された後、最も適したハイブリッド移動方法が、欲張りアルゴリズムを用いることによって取得されてもよい。タクシー配車要求に対応するハイブリッド移動方法の移動情報は、タクシー配車要求に基づく各ハイブリッド移動方法のオーダー完了率、所要時間、所要料金、歩行距離等を含んでもよい。幾つかの実施形態では、ステップ1230は、特に、ステップ1231及びステップ1232を含んでもよい。
ステップ1231において、各単一移動方法のオーダー完了率、所要時間、所要料金、及び歩行距離に基づいて、欲張りアルゴリズムを用いることによって、複数のハイブリッド移動方法を求めることができる。求められた複数のハイブリッド移動方法は、所要時間に基づいて昇順でランク付けすることができる。タクシー配車要求に対応する複数のハイブリッド移動方法の移動情報を取得することができる。タクシー配車要求に対応する複数のハイブリッド移動方法の移動情報を取得することができる。ステップ1232において、各単一移動方法のオーダー完了率、所要時間、所要料金、及び歩行距離に基づいて、欲張りアルゴリズムを用いることによって、複数のハイブリッド移動方法を求めることができる。求められた複数のハイブリッド移動方法は、所要料金に基づいて昇順でランク付けすることができる。タクシー配車要求に対応する複数のハイブリッド移動方法の移動情報を取得することができる。このため、時間又は金銭を節約するという目標に基づいて、大域的最適化アルゴリズムは、乗客が所望の移動方法を選択するための2つの異なる結果を生成することができる。ステップ1231及びステップ1232は、双方が実行されてもよいし、それらの一方のみが実行されてもよい。
ステップ1240において、各単一移動方法の移動情報と、各ハイブリッド移動方法の移動情報とに基づいて、全ての単一移動方法及びハイブリッド移動方法は、事前に設定された移動条件に従ってランク付けされた後、ユーザーデバイスに送信することができる。ステップ1240は、POIエンジン110の処理モジュール210のランク付けユニット370と、乗客インターフェース230及び/又はドライバーインターフェース240とによって実行することができる。各単一移動方法の移動情報と、各ハイブリッド移動方法の移動情報とに基づいて、全ての単一移動方法及びハイブリッド移動方法は、事前に設定された移動条件に従ってランク付けユニット370によってランク付けすることができる。次に、ランク付けされた移動方法のリストは、乗客インターフェース230及び/又はドライバーインターフェース240を通じて送信することができる。幾つかの実施形態では、ランク付けユニット370は、各単一移動方法及び各ハイブリッド移動方法のオーダー完了率、所要時間、所要料金、及び歩行距離に基づいて、事前に設定された移動条件に従って全ての単一移動方法及びハイブリッド移動方法をランク付けするように構成することができる。事前に設定された移動条件は、歩行距離の事前設定範囲、事前に設定された所要料金、事前に設定された所要時間等、又はそれらの任意の組み合わせを含むことができる。より詳細には、例えば、ステップ1240は、乗客入力若しくはシステムデフォルト移動条件又はランク付け方法に基づいて、単一移動方法及びハイブリッド移動方法を包括的にランク付けするのに用いることができる。ステップ1240における方法は、乗客が選択するために、乗客端末デバイス120及び/又はドライバー端末デバイス140によって単一移動方法及びハイブリッド移動方法を受信して、順に表示することを更に含んでもよい。乗客端末デバイス120及び/又はドライバー端末デバイス140は、乗客が選択するためにランク付けされた単一移動方法及びハイブリッド移動方法を表示するように構成されたディスプレイユニット520を備えることができる。
幾つかの実施形態では、ステップ1240は、各単一移動方法及び各ハイブリッド移動方法のオーダー完了率、所要時間、所要料金、及び歩行距離に基づいて、事前に設定された移動条件に従って全ての単一移動方法及びハイブリッド移動方法をランク付けすることを含むことができる。事前に設定された移動条件は、歩行距離の事前設定範囲、事前に設定された所要料金、事前に設定された所要時間等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、複数の移動条件を事前に設定することができる。例えば、複数の移動条件は、最安価の所要料金及び1km未満の歩行距離を含むことができる。
幾つかの実施形態では、オン・デマンドサービスシステム105及び地理的情報システムに記憶された全てのデータに基づいて、乗客に最も適した移動方法を発見することができる。例えば、システム105及び地理的情報システムのバックグラウンドデバイスは、乗客の現在位置に近いタクシーのオーダー完了率が非常に低く、乗客のオーダーの質があまり高くないこと、すなわち、乗客のオーダーの失敗確率が非常に高いことを発見する場合がある。一方、このバックグラウンドデバイスは、運転手付き乗用車サービスのオーダー完了率が比較的高いことを発見する場合がある。その場合、バックグラウンドデバイスは、運転手付き乗用車サービスを最優先選択肢として乗客に推奨してもよい。別の例として、バックグラウンドデバイスが、乗客がバスステーションの近くにいて、乗客の目的地に近い位置に乗客を運ぶバスが5分以内にあることを発見した場合、バックグラウンドは、バスに乗車するように乗客に推奨するとともに乗客にバスの到着時刻を告げてもよい。代替的に、バックグラウンドデバイスは、バス及びタクシーのハイブリッド移動方法を乗客に推奨してもよい。バス及びタクシーのハイブリッド移動方法は、タクシーオーダーの高いオーダー完了率を有する位置までバスによって乗客を運ぶことを含んでもよい。高いオーダー完了率を有する位置は、オーダーが比較的少なく、ドライバーが現在のオーダーのタイプを好んでいる位置とすることができる。バックグラウンドデバイスは、乗客が選択するための複数の推奨移動方法を推定料金及び推定時間とともに提供してもよい。
幾つかの実施形態では、移動方法を計画する方法が提供される。タクシー配車ソフトウェアプラットフォームが、様々な情報に基づいて複数の推奨移動方法を取得することができる。これらの推奨移動方法は、1つ以上の単一移動方法及びハイブリッド移動方法を含むことができる。タクシー配車ソフトウェアプラットフォームは、所要料金、所要時間、又は歩行距離等の事前に設定されたランク付け方法に基づいて複数の推奨移動方法を昇順でランク付けすることができる。これらの複数の推奨移動方法は、オーダー完了率を効果的に高め、時間又は金銭を節約し、乗客のユーザーエクスペリエンスを改善するために、乗客の選択用に提供することができる。
簡潔にするとともに、本開示の移動方法を計画する方法をより良く理解するために、以下の説明では、乗客が一例として例示されるが、本開示の範囲を限定することを意図するものではない。
例えば、乗客Aが、北京市の回竜観から北へ協和病院に直ちに出発したいものとする。乗客Aがオーダーを送信した後、タクシー配車ソフトウェアのサービス端末は、乗客Aのオーダーがリアルタイム要求オーダーであることを検出し、その目的地が前門大街付近の商業地区内の病院であると解析することができる。この情報は、各プロダクトライン(product line)(すなわち、複数の移動方法)に送信することができる。各プロダクトラインは、交通情報、プロダクトラインについてのドライバーの好み、利用可能なドライバーの数等に基づいてオーダー完了率を推定することができる。最適なチップ及び各プロダクトラインのオーダー完了率は、各チップに対応するオーダー完了率及び乗客の受理率に基づいて取得することができる。例えば、結果として、以下のようなものがあり得る。
タクシーを利用することによると、チップはRMB(人民元)5元であり、オーダー完了率は0.8であり、総料金はRMB90元であり、歩行距離は700メートルであり、所要時間は1.15時間である。
運転手付き乗用車サービスを利用することによると、チップはRMB0元であり、オーダー完了率は0.9であり、総料金はRMB120元であり、歩行距離は200メートルであり、所要時間は1.05時間である。
ヒッチハイクを利用することによると、チップはRMB5元であり、オーダー完了率は0.8であり、総料金はRMB60元であり、歩行距離は800メートルであり、所要時間は1.2時間である。
バスを利用することによると、チップはRMB0元であり、オーダー完了率は1であり、総料金はRMB10元であり、歩行距離は3kmであり、所要時間は2時間である。
加えて、データ要求(すなわち、上記で説明した結果)が、経路合成プログラムに入力された後、経路合成プログラムは、システムデフォルト最適化方法又は乗客によって指定された最適化方法に基づいて、欲張り最適化アルゴリズムを用いることによって最適化を実行することができる。例えば、現在の最適化目標が、最低所要料金及び1km未満の歩行距離である場合、バス、すなわち最安価の移動方法を、移動を開始する最初の移動方法として選択することができる。各バスステーションと乗客の目的地との間の距離に対応するヒッチハイク、タクシー、又は運転手付き乗用車サービスを利用した総料金がそれぞれ計算されてもよい。3つのステーションにわたってバスを利用した後にヒッチハイクを利用すると、総コストRMB20元及び1.4時間であり、必要な歩行が900メートルである良好なハイブリッド移動方法の結果を得ることができる。最終的には、このハイブリッド移動方法は、乗客によって選択されてもよい。上記例には、欲張りアルゴリズムを大域的最適化方法として用い、最適な最適化目標によってプロダクトを最初に最適化することができることが示されている。最初の最適解が、幾つかの制約(例えば、現在の最適化目的)を満たしていない場合、2番目の代替案(例えば、ヒッチハイク)を選択することができる。
当然ながら、本開示のシステムのモジュールは、それらの機能に従って論理的に分割されている。これらのモジュールは、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。これらのモジュールは、異なる要件に従って再分割されてもよいし、組み合わされてもよい。例えば、幾つかのモジュールは、単一のモジュールに組み合わされてもよいし、より多くのサブモジュールに更に分割されてもよい。
本開示の様々なモジュールは、ハードウェア、1つ以上のプロセッサにおいて動作するソフトウェア、又はそれらの組み合わせによって実施することができる。当業者であれば、本開示のモジュールの機能の幾つか又は全てをマイクロプロセッサ又はデジタル信号プロセッサ(DSP)によって実施することができる。本開示は、本明細書において説明される方法の一部分又は全てを実行するデバイス又はデバイスにおいて動作するプログラム(例えば、コンピュータープログラム及びコンピュータープログラムを有する製品)としても実施することができる。そのような種類のプログラムは、コンピューター可読媒体に記憶することもできるし、1つ以上の信号の形態にすることもできる。そのような信号は、インターネットウェブサイトからダウンロードされる場合もあるし、搬送波信号で提供される場合もあるし、他の任意の形態で提供される場合もある。
上記で説明した実施形態は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、本開示の教示の下で、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。本特許の開示の範囲は、特許請求の範囲と一致すべきである。
図13は、本開示の幾つかの実施形態に係る、POIエンジン110によって車両ステータスを検出するプロセスの一例のフローチャートである。ステップ1310において、POIエンジン110は、地理的データフローを車両から受信し、図13に示すように、所与の時間帯における車両の複数の地理的座標を取得することができる。ステップ1310は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。本開示の幾つかの実施形態によれば、地理的データフローは、測位技術を用いて取得することができ、測位技術は、全地球測位システム(GPS)技術、全地球航法衛星システム(GLONASS)技術、北斗衛星導航系統技術、ガリレオ測位システム技術、準天頂衛星システム(QZSS)技術、ワイヤレスフィデリティー(Wi−Fi)測位技術等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。本開示の幾つかの実施形態によれば、GPS測位技術によって取得されるGPSデータフローは、所与の時間周波数で車両によってアップロードされる複数のリアルタイムGPS座標を含むことができ、各GPS座標は、各サンプリング時刻における車両の位置に対応する。幾つかの実施形態では、所与の時間周波数で車両によってアップロードされる複数のリアルタイムGPS座標について、各GPS座標は、各サンプリング時刻における車両の位置に対応することができる。例えば、車両の現在のGPS座標は、スマートデバイスのGPSモジュールによってリアルタイムで取得することができ、或る特定の時間周波数でサンプリングされるGPS座標は、タクシー配車アプリケーションの永続接続サービスによってリアルタイムでアップロードすることができる。幾つかの実施形態では、POIエンジン110の処理モジュール210の住所解析ユニット310は、所与の時点に関連した所与の期間においてGPSデータフローから複数のGPS座標を抽出することができる。例えば、リアルタイムGPSデータフローGi={sxi,syi,ti}を、GPS測位技術を用いて取得することができる。ここで、i=1,2,3,...,nであり、sxは、GPSデータフローの経度を示すことができ、syは、GPSデータフローの緯度を示すことができ、tは、GPSデータフローのサンプリング時刻を示すことができる。所与の時点tに従って、時間間隔t−tj<ε内の複数のGPS座標Gjを取得することができる。ここで、Gj={sxj,syj}であり、j=1,2,3,...,kである。
ステップ1320において、POIエンジン110は、複数の地理的座標の中心点座標と、各地理的座標と中心点座標との間の距離及び配向分布とを計算することができる。ステップ1320は、POIエンジン110の処理モジュール210の計算サブユニット385によって実行することができる。幾つかの実施形態では、計算サブユニット385は、複数のGPS座標の中心点座標と、各GPS座標と中心点座標との間のユークリッド距離及びラジアンと、各ユークリッド距離及び各ラジアンに基づく各GPS座標と中心点座標との間の正規化距離及び配向分布とを計算するように構成することができる。ここで、ユークリッド距離は、クラスタリング解析において距離を計算する一般的な方法のうちの1つである。幾つかの実施形態では、距離を計算する方法は、ユークリッド距離、マンハッタン距離、マハラノビス距離及び/又はハミング距離等を含むことができるが、これらに限定されるものではない。例えば、所与の期間における車両の複数のGPS座標、すなわち、Gj={sxj、syj}は、住所解析ユニット310によって取得することができる。ここで、j=1,2,3,...,kである。まず、複数のGPS座標の中心座標g0を以下のように計算することができる。
次に、各GPS座標と中心点座標との間のユークリッド距離ω(Gj,g0)及びラジアンψ(Gj,g0)を計算することができる。各ユークリッド距離ω(Gj,g0)及び各ラジアンψ(Gj,g0)に基づいて、各GPS座標と中心点座標との間の正規化距離S(Gj,g0)及び配向分布θ(Gj,g0)を式4及び式5に従って計算することができる。ここで、Wは、実験データ及び実際的経験に基づいて選択される第1の閾値である。
ステップ1330において、車両ステータスを、距離及び配向分布に基づいて求めることができる。ステップ1330は、POIエンジン110の処理モジュール210の決定ユニット380によって実行することができる。幾つかの実施形態では、決定ユニット380及び計算サブユニット385は、各GPS座標と中心点座標との間の正規化距離及び配向分布に基づいて平均正規化距離及び総配向分布を計算し、平均正規化距離、第1の閾値、総配向分布及び第2の閾値に基づいて車両ステータスを求めてもよい。例えば、各GPS座標と中心点座標との間の正規化距離S(Gj,g0)及び配向分布θ(Gj,g0)は、計算サブユニット385によって取得することができる。まず、平均正規化距離Savg及び総配向分布θsumを以下のように計算することができる。
及び
次に、式8に従って車両ステータスRを求めることができる。ここで、1は、車両が静止していることを示すことができ、0は、車両が静止していないことを示すことができ、パラメーター
は、第1の閾値を示すことができ、パラメーターηは、第2の閾値を示すことができ、これらの2つの閾値は、実験データ及び実際的経験に基づいて選択される。幾つかの実施形態では、車両の静止ステータスは、低速運転ステータスであってもよい。
当然ながら、例示的なフローチャートは、フロー図、フローチャートテーブル、データフロー図、構造図又はブロック図として記述されてもよい。ステップのシーケンスは、並べ替えることができる。プロセスにおけるステップが完了すると、プロセスは、終了に進む場合もあるし、フローチャートに含まれていない追加のステップに進む場合もある。本開示の幾つかの実施形態によれば、POIエンジン110によって車両ステータスを求めることは、車両ステータス及び中心点座標を記憶することと、車両ステータスの検索要求に応答して車両ステータス及び中心点座標を送信することとを更に含んでもよい。幾つかの実施形態では、POIエンジン110の記憶モジュール220は、車両ステータス及び中心点座標を記憶するように構成されてもよい。幾つかの実施形態では、POIエンジン110の乗客インターフェース230及び/又はドライバーインターフェース240は、車両ステータスの検索要求に応答して車両ステータス及び中心点座標を送信するように構成されてもよい。例えば、タクシー配車プラットフォームでは、車両ステータスR及び中心点座標g0を記憶デバイスに記憶することができる。オン・デマンドサービスシステム105が、車両ステータスの検索要求を送信すると、検索時点に対応する車両ステータスR及び中心点座標g0を記憶デバイスから読み出して、オン・デマンドサービスシステム105に送信することができる。幾つかの実施形態では、車両が、乗客端末デバイス120及び/又は乗客端末デバイス140によって、GPSデータをオン・デマンドサービスシステム105に或る特定の頻度でアップロードしてもよい。POIエンジン110の乗客インターフェース230及び/又はドライバーインターフェース240は、乗客端末デバイス120及び/又はドライバー端末デバイス140からのGPSデータフローを受信することができる。住所解析ユニット310は、所与の期間における車両の複数のGPS座標を取得することができる。計算サブユニット385は、複数のGPS座標の中心点座標と、各GPS座標と中心点座標との間の距離及び配向分布とを計算することができる。決定ユニット380は、距離及び配向分布に基づいて車両ステータスを求めることができる。決定ユニット380は、車両ステータス及び中心点座標をPOIエンジン110の記憶モジュール220及び/又はデータベース130に記憶し、オン・デマンドサービスシステム105によって送信された車両ステータスの検索要求に応答して、検索時点に対応する車両ステータス及び中心点座標を記憶モジュール220及び/又はデータベース130から読み出し、車両ステータスのデータをオン・デマンドサービスシステム105に送信することができる。幾つかの実施形態では、計算ユニット350は、所与の期間における車両の車両ステータス及び/又は複数のGPS座標に基づいてサービス料金を計算することができる。幾つかの実施形態では、計算ユニット350及び決定ユニット380の計算サブユニット385は、車両ステータスに基づいてサービス料金を計算することができる。
幾つかの実施形態では、計算ユニット350又は計算サブユニット385は、車両ステータスと、異なる車両ステータスの持続時間とに基づいてサービス料金を計算することができる。幾つかの実施形態では、車両が静止ステータス又は低速運転ステータスにある(例えば、平均速度が或る特定の閾値未満である)とき、サービス料金を計算する方法は時間に基づくことができる。すなわち、サービス料金は分単位で計算される。代替的に、1つ以上の単位時間レートが設定されてもよい。
当然ながら、低速運転ステータスを判断するのに用いられる閾値は、事前に設定された速度であってもよいし、車両の位置、時間等の因子に基づいて求められた動的な速度であってもよい。1つ以上の低速運転ステータスが存在してもよい。低速運転ステータスの複数のステージが、複数の異なる速度範囲に対応してもよい。低速運転ステータスが複数のステージを有するとき、異なるステージに対しては、それぞれ異なる単位時間レートが設定されてもよい。2つ以上のステータスに対して、同じ単位時間レートが設定されてもよい。
幾つかの実施形態では、車両が動作ステータス又は高速運転ステータスにある(例えば、平均運転速度が或る特定の閾値を越えている)とき、サービス料金を計算する方法は距離に基づくことができる。すなわち、サービス料金は単位距離ごとに計算される。代替的に、1つ以上の単位距離が設定されてもよい。
当然ながら、高速運転ステータスを判断するのに用いられる閾値は、事前に設定された速度であってもよいし、車両の位置、時間等の因子に基づいて求められた動的な速度であってもよい。1つ以上の高速運転ステータスが存在してもよい。高速運転ステータスの複数のステージが、複数の異なる速度範囲に対応してもよい。高速運転ステータスが複数のステージを有するとき、異なるステージに対しては、それぞれ異なる単位距離レートが設定されてもよい。2つ以上のステータスに対して、同じ単位距離レートが設定されてもよい。
幾つかの実施形態では、オーダーを完了するプロセスは、車両ステータスの複数の変形形態(transformations)を含んでもよい。計算サブユニット385は、車両の静止ステータス又は低速運転ステータスの持続時間の統計解析を実行してもよい。その場合、計算ユニット350は、静止ステータス又は低速運転ステータスにある車両のサービス料金を単位距離レートに基づいて計算することができる。加えて、計算ユニット385は、車両の高速運転ステータスの持続時間及び距離の統計解析を実行してもよい。その場合、計算ユニット350は、高速運転ステータスにある車両のサービス料金を単位距離レートに基づいて計算することができる。静止ステータス、低速運転ステータス及び高速運転ステータスのサービス料金に基づいて、計算ユニット350は、最後に、移動経路全体の総サービス料金を計算してもよい。幾つかの実施形態では、サービス料金は、輸送サービスが実施されているときに計算されてもよい。すなわち、サービス料金はリアルタイムで計算される。幾つかの実施形態では、サービス料金は、輸送サービスが完了した後に一律に計算されてもよい。
サービス料金の価格を定める上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、輸送サービスの価格を定めることについての本開示の教示の下で様々な変形及び変更を行うことができる。例えば、計算ユニット350は、単位距離レートに基づいて車両の低速運転ステータスの価格を定めてもよい。別の例として、計算ユニット350は、単位時間レートに基づいて車両の高速運転ステータスの価格を定めてもよい。そのような全ての変更は、本開示の保護範囲内にある。
本開示の上記説明におけるモジュール、ユニット又はステップは、一般的な計算モジュールによって実現されてもよいことが当業者には明らかであろう。例えば、モジュール、ユニット又はステップは、1つの計算モジュールに統合されてもよいし、複数の計算モジュールからなるネットワーク上に分散されてもよい。代替的に、モジュール、ユニット又はステップは、記憶モジュールに記憶することができるとともに計算モジュールによって実行することができるような実行可能プログラムコードによって実現されてもよい。モジュール、ユニット又はステップは、それらのそれぞれを個々の集積回路モジュール上に分散させることによって実現されてもよいし、モジュール又はステップのうちの幾つかを単一の集積回路モジュール上に分散させることによって実現されてもよい。このように、本開示は、どの特定のハードウェア又はソフトウェアの組み合わせにも限定されるものではない。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図14は、本開示の幾つかの実施形態に係る、測位情報が異常であるか否かをPOIエンジン110によって判断するプロセスの一例のフローチャートである。ステップ1410において、POIエンジン110は、所与の期間における乗客/ドライバーの複数の地理的座標を取得することができる。ステップ1410は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。所与の期間における乗客/ドライバーの複数の地理的座標の位置情報は、POIエンジン110によって取得することができる。本開示の幾つかの実施形態によれば、所与の期間は、これまでの経験及び/又は実験データによって求められる10分、30分、1時間等の期間とすることができる。乗客/ドライバーは、所与の期間において幾つかの特定の間隔で複数の地理的座標をアップロードすることができる。時間間隔は、10秒等とすることができる。各地理的座標は、当該地理的座標がアップロードされた時刻における乗客/ドライバーの位置を示すことができる。
ステップ1420において、POIエンジン110は、複数の地理的座標を複数のグループに分割することができる。ステップ1420は、POIエンジン110の処理モジュール210のグループ化ユニット340によって実行することができる。本開示の幾つかの実施形態によれば、複数の地理的座標は、少なくとも1つのクラスタリングアルゴリズムを用いて幾つかのグループに分割することができる。クラスタリングアルゴリズムは、K−MEANSアルゴリズム、K−MEDOIDSアルゴリズム、CLARANSアルゴリズム等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。N個のグループ又はレコードを有するデータセットを、クラスタリングアルゴリズムを用いてK個のグループに分割することができる。各グループは、1つのクラスターと呼ばれる場合がある。ここで、K<Nである。そして、これらのK個のグループは、以下の基準を満たすことができる。
(1)各グループは、少なくとも1つのデータレコードを含むことができる。
(2)各データレコードは、1つのグループに属することができ、かつ、1つのグループにしか属することができない(当然ながら、この基準は、ファジークラスタリングアルゴリズムを用いるとき、厳密には実行されなくてもよい)。
所与の数Kのグループについて、アルゴリズムは、初期グループ化方法を生成することができ、繰り返し反復を行ってこのグループ化方法を改良することによって、このグループ化方法を変更することができる。ここで、グループ化方法が改良されたものと結論付ける際の基準は、同じグループ内のレコードが可能な限り接近又は関係し、異なるグループ内のレコードが可能な限り遠く離れているか又は異なることに関するものとすることができる。本開示の幾つかの実施形態によれば、位置座標は、座標間の距離に基づいてグループ化することができる。グループ化された後、同じグループ内の位置座標は、可能な限り互いに接近しているものとすることができ(すなわち、同じグループ内の2つの座標間の距離は、可能な限り小さく保たれているものとすることができる)、異なるグループ内の位置座標は、可能な限り互いに遠く離れているものとすることができる(すなわち、異なるグループ内の2つの座標間の距離は、可能な限り大きく保たれているものとすることができる)。本開示の幾つかの実施形態によれば、複数の測位情報(例えば、N個の座標)をクラスタリングアルゴリズムに基づいて複数のグループ(すなわち、複数のクラスター)に分割することができる。グループの数(すなわち、クラスターの数)は、これまでの経験又は実験データによって求めることができ、例えば、K(N≧K>0)個である。
ステップ1430において、POIエンジン110は、各グループの中心点の位置情報をそれぞれ取得するとともに、各位置と各グループにおける中心点の位置との間の距離を取得することができる。このステップは、POIエンジン110の処理モジュール210の住所解析ユニット310及び計算ユニット350によって実行することができる。本開示の幾つかの実施形態によれば、各グループの中心点の位置情報をそれぞれ取得することは、各グループ内の全ての位置情報の平均を計算することと、この平均を各グループの中心点の位置情報として利用することとを含むことができる。例えば、グループ化ユニット340は、N個の座標をK個のグループに分割することができ、計算ユニット350は、各グループ内の全ての座標の平均を計算して、K個の平均座標を取得することができる。これらのK個の平均座標は、それぞれ対応するグループの中心点座標とすることができる。本開示の幾つかの実施形態によれば、各取得された位置と各グループにおける中心点の位置との間の距離は、それぞれ計算された各グループの中心点の位置情報に基づいて計算することができる。例えば、測位技術を用いて取得されたN個の座標について、各位置と各グループにおける中心点の位置との間の距離をそれぞれ計算することができ、それらのN個の距離を完全に取得することができる。
ステップ1440において、POIエンジン110は、各地理的座標と各グループにおける中心点の位置との間の距離の最大値を取得することができる。ステップ1440は、POIエンジン110の処理モジュール210の決定ユニット380及び計算サブユニット385によって実行することができる。例えば、上記で説明したN個の距離に基づいて、N個の距離の最大値を計算して求めることができる。この最大値は、Rmaxとして示される場合がある。
ステップ1450において、POIエンジン110は、乗客/ドライバーの測位情報が異常であるか否かを最大距離(すなわち、上記で説明したN個の距離の最大値)に基づいて判断することができる。ステップ1450は、POIエンジン110の処理モジュール210の決定ユニット380によって実行することができる。本開示の幾つかの実施形態によれば、乗客/ドライバーの測位情報が異常であるか否かを判断することは、最大距離を事前設定閾値と比較することと、乗客/ドライバーの測位情報が異常であるか否かをこの比較結果に基づいて判断することとを含むことができる。事前設定閾値は、これまでの経験又は実験データによって求めることができる。例えば、或るシナリオでは、乗客/ドライバーは動作ステータスにあり、例えば、ドライバーは運転中であり、乗客は移動中であり、閾値は50メートルと設定することができる。その場合、或る期間(例えば、30分)において、ドライバー/乗客の位置は、変化しているものとすることができる。この期間においてドライバー/乗客によってアップロードされた測位情報が過度に1箇所に集中している(例えば、Rmax<50メートル)場合、乗客/ドライバーの測位情報は異常である可能性がある。この時、測位情報が異常である理由、例えば、測位デバイスの測位機能がオフにされているか否かを見つけ出すために、ドライバー/乗客は通知を受けることができる。別の例として、別のシーンでは、ドライバー/乗客は、動作ステータスにも低速運転ステータスにもなく、例えば、静止しているか若しくはゆっくりと歩行している歩行者、又は交通渋滞で身動きできないドライバーである。このシーンでは、閾値は1000メートルとして設定されてもよい。その場合、或る期間(例えば、5分)において、ドライバー/乗客の位置は、基本的に変化しないか又はゆっくりと変化しているものとすることができる。そのため、ドライバー/乗客によってアップロードされたこの期間における測位情報が過度に分散している(例えば、Rmax>1000メートル)場合、ドライバー/乗客の測位情報は、この期間において異常である可能性がある。閾値の選択と、ドライバー/乗客の測位情報が異常であるか否かを最大値と閾値との間の関係(例えば、閾値よりも大きい、閾値未満である、閾値に等しい、閾値以上である、閾値以下である等)に基づいて判断することとは、特定の実施形態における具体的なシナリオ及びドライバー/乗客の位置に依存してもよい。当然ながら、実施形態の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当然ながら、ユーザーの測位情報が異常であるか否かを最大値と閾値との比較に基づいて判断するいずれの方法も、本開示の趣旨及び範囲内にある。幾つかの実施形態では、計算ユニット350は、測位情報及び/又は複数の地理的座標に基づいてサービス料金を計算してもよい。幾つかの実施形態では、決定ユニット380及び計算サブユニット385は、測位情報が正常であるとの判断に基づいてサービス料金を更に計算してもよい。
測位情報が異常であるか否かの判断は、異なるシナリオに適用することができる。例えば、測位情報が異常であるか否かの判断は、オーダーをドライバーにプッシュするか否かを判断するのに用いることができる。例えば、ドライバーは、ドライバー端末デバイス140によって自身の位置を提供し、POIエンジン110に向けて乗客のサービスを提供するように要求することができる。POIエンジン110が、ドライバーの測位情報が異常であると判断した場合、そのドライバーに乗客のオーダーを割り当てることを拒否することができる。別の例として、測位情報が異常であるか否かの判断は、サービス料金を計算するのに用いることができる。ドライバーの測位情報が異常である場合、それに対応して、サービス料金の計算を調整することができる。異常でない場合、POIエンジン110は、関係するリマインダーを乗客又はドライバーに送信することができる。
当然ながら、フローチャートは、フロー図、フローチャートテーブル、データフロー図、概略チャート又はブロック図として記述されてもよい。フローチャートは、ステップを遂次的なプロセスとして記述している場合があるが、実際には、プロセスは、複数の動作を並行して又は同時に実施することができる。その上、ステップのシーケンスは、並べ替えることができる。プロセスにおけるステップが完了すると、プロセスは、終了に進む場合もあるし、フローチャートに含まれていない追加のステップに進む場合もある。プロセスは、方法、関数、プログラム、サブルーチン、サブプログラム等に対応することができる。プロセスが関数に対応するとき、プロセスの終了は、読み出し側関数又はメイン関数へのこの関数の復帰に対応することができる。その上、本開示の上記説明におけるモジュール、ユニット又はステップは、一般的な計算モジュールによって実現されてもよいことが当業者には明らかであろう。例えば、モジュール、ユニット又はステップは、1つの計算モジュールに統合されてもよいし、複数の計算モジュールからなるネットワーク上に分散されてもよい。代替的に、モジュール、ユニット又はステップは、記憶モジュールに記憶することができるとともに計算モジュールによって実行することができるような実行可能プログラムコードによって実現されてもよい。モジュール、ユニット又はステップは、それらのそれぞれを個々の集積回路モジュール上に分散させることによって実現されてもよいし、モジュール又はステップのうちの幾つかを単一の集積回路モジュール上に分散させることによって実現されてもよい。このように、本開示は、どの特定のハードウェア又はソフトウェアの組み合わせにも限定されるものではない。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図15−Aは、本開示の幾つかの実施形態に係る、ユーザーの測位情報が異常であるか否かをPOIエンジン110によって判断する一例示的なプロセスのフローチャートである。ユーザーは、サービス要求者(例えば、乗客)、サービス提供者(例えば、ドライバー)等とすることができる。ステップ1510において、POIエンジン110は、事前設定時間帯内においてユーザーの第1の測位情報を取得することができる。ステップ1510は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。本開示の幾つかの実施形態によれば、事前設定時間帯内におけるユーザーの複数の地理的座標の情報は、測位技術を用いて取得することができる。測位技術のタイプ又は詳細は、上記説明に見出すことができ、ここではこれ以上説明しない。幾つかの実施形態では、GPS測位技術を用いて取得されたGPS座標情報は、経度、緯度、及びタイムスタンプの情報を含むことができるが、これらに限定されるものではない。幾つかの実施形態では、乗客インターフェース230及び/又はドライバーインターフェース240は、事前設定時間帯内において乗客端末デバイス120及び/又はドライバー端末デバイス140の第1の測位情報を取得するように構成することができる。そして、第1の測位情報は、GPS測位技術を用いて取得されたGPS座標情報とすることができる。
ステップ1520において、POIエンジン110は、事前設定時間帯内において乗客/ドライバーの第2の測位情報を取得することができる。ステップ1520は、乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。幾つかの実施形態では、事前設定時間帯内における乗客/ドライバーの複数の地理的座標の情報は、測位技術を用いて取得することができる。幾つかの実施形態では、第2の測位情報は、経度、緯度、及びタイムスタンプの情報を含むことができるが、これらに限定されるものではない。当然ながら、ステップ1510及びステップ1520における事前設定時間帯は同じであってもよいが、第1の測位情報及び第2の測位情報は、異なる測位技術を用いて取得されてもよい。幾つかの実施形態では、乗客/ドライバーの第2の測位情報は、ベースステーション(基地局)測位技術又はWi−Fi測位技術を用いて、乗客インターフェース230及び/又はドライバーインターフェース240を介して取得することができる。
ステップ1530において、POIエンジン110は、第1の測位情報を第2の測位情報と比較することができる。ステップ1530は、POIエンジン110の処理モジュール210の決定ユニット380によって完了することができる。本開示の幾つかの実施形態によれば、決定ユニット380の計算サブユニット385は、第1の測位情報と第2の測位情報との間のずれを計算することができる。決定ユニット380は、このずれを第1の事前設定閾値と比較することができる。より詳細には、例えば、第1の測位情報と第2の測位情報との間の誤差を、第1の測位座標と第2の測位座標との間の距離として指定することができる。この距離を第1の事前設定閾値と比較することができる。幾つかの実施形態では、第1の測位情報は、GPS測位技術を用いて取得されたGPS座標情報とすることができる。第2の測位情報は、ベースステーション(基地局)測位技術及び/又はWi−Fi測位技術を用いて取得された第2の座標情報とすることができる。幾つかの実施形態では、第1の事前設定閾値は、ベースステーション(基地局)測位又はWi−Fi測位の誤差に基づいて設定することができる。一般に、ベースステーション(基地局)測位又はWi−Fi測位の誤差が約数百メートルである場合、第1の事前設定閾値は、数百メートルとして設定することができる。幾つかの実施形態では、第1の測位情報と第2の測位情報との比較結果に基づいて、ステップ1540を実行することなく、ステップ1550に直接移行して、測位情報が異常であるか否かを判断することが可能であり得る。
ステップ1550において、POIエンジン110は、測位情報が異常であるか否かを判断することができる。ステップ1550は、POIエンジン110の処理モジュール210の決定ユニット380によって実行することができる。決定ユニット380が、ずれが第1の事前設定閾値以上であると判断した場合、決定ユニット380は、第1の測位情報が異常であると判断することができる。幾つかの実施形態では、第1の測位情報は、GPS座標情報とすることができる。第1の測位情報が異常であると判断されると、GPS座標情報は、誤った座標情報であると判断することができる。決定ユニット380が、ずれが第1の事前設定閾値未満であると判断した場合、測位情報が異常であるか否かを判断する方法は、ステップ1540を更に含むことができる。
幾つかの実施形態では、測位情報が異常であるか否かがステップ1530の結果に基づいてまだ判断されていない場合、ステップ1540を実行することができる。ステップ1540において、POIエンジン110は、ベースステーション(基地局)と乗客/ドライバーの現在の住所との間の距離が事前設定距離未満であるベースステーション(基地局)の番号と、事前設定時間帯内におけるこのベースステーション(基地局)の信号強度とを取得することができる。GPS座標情報、ベースステーション(基地局)の番号及び信号強度に基づいて、GPS座標情報が誤った座標情報であるか否かを判断することができる。ステップ1540は、POIエンジン110の乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。幾つかの実施形態では、POIエンジン110は、ステップ1540の前に、乗客インターフェース230及び/又はドライバーインターフェース240を通じて乗客/ドライバーの現在の住所の情報を取得することができる。乗客/ドライバーの現在の住所に基づいて、処理モジュール210の住所解析ユニット310は、ベースステーション(基地局)と乗客/ドライバーの現在の住所との間の距離が事前設定距離未満であるベースステーション(基地局)を確定することができる。乗客/ドライバーの現在の住所は、ベースステーション(基地局)測位技術又はWi−Fi測位技術によって取得された座標情報であってもよい。より詳細には、例えば、ステップ1540は、ステップ1551〜1553を含むことができる。
図15−Bは、測位情報が異常であるか否かをPOIエンジン110によって判断する一例示的なプロセスのフローチャートである。ステップ1551において、POIエンジン110は、ベースステーション(基地局)と乗客/ドライバーの現在の住所との間の距離が事前設定距離未満であるベースステーション(基地局)の番号と、事前設定時間帯内におけるこのベースステーション(基地局)の信号強度とを取得することができる。ベースステーション(基地局)の番号は、ベースステーション(基地局)を特定する一意のシリアル番号であってもよい。ベースステーション(基地局)は、ベースステーション(基地局)番号に対応することができる。ステップ1551は、POIエンジン110の乗客インターフェース230及び/又はドライバーインターフェース240によって実行することができる。
ステップ1552において、POIエンジン110は、事前設定期間内におけるGPS座標の変化を第2の事前設定閾値と比較し、事前設定期間内におけるベースステーション(基地局)の信号強度の変化を第3の事前設定閾値と比較することができる。ステップ1552は、POIエンジン110の処理モジュール210の決定ユニット380及び計算サブユニット385によって実行することができる。より詳細には、例えば、事前設定期間内におけるGPS座標の変化は、事前設定期間の開始点におけるGPS座標と、事前設定期間の終了点におけるGPS座標との間の差とすることができる。事前設定期間内におけるベースステーション(基地局)の信号強度の変化は、事前設定期間の開始点におけるベースステーション(基地局)の信号強度と、事前設定期間の終了点における同じベースステーション(基地局)の信号強度との間の差とすることができる。例えば、事前設定期間が1:10〜1:30である場合、この事前設定期間におけるGPS座標の変化は、1:10におけるGPS座標と1:30におけるGPS座標との間の差とすることができる。事前設定期間におけるベースステーション(基地局)の信号強度の変化は、1:10におけるベースステーション(基地局)の信号強度と、1:30における同じベースステーション(基地局)の信号強度との間の差とすることができる。当然ながら、事前設定期間は、実際の状況及び/又は実際の要件に基づいて調整することができる。例えば、事前設定期間は、5分、20分、30分、1時間等とすることができる。
ステップ1553において、POIエンジン110は、第1の測位情報が異常であるか否かを判断することができる。ステップ1553は、POIエンジン110の処理モジュール210の決定ユニット380によって実行することができる。GPS座標の変化が第2の事前設定閾値よりも大きく、ベースステーション(基地局)の番号が変化しておらず、かつ、ベースステーション(基地局)の信号強度が第3の事前設定閾値よりも小さいと決定ユニット380が判断した場合、第1の測位情報は、異常であると判断することができる。すなわち、事前設定期間におけるGPS座標情報は、誤った座標情報である。より詳細には、例えば、乗客/ドライバーのGPS座標が、事前設定期間において大幅に変化しているが、乗客/ドライバーの近くのベースステーション(基地局)番号が変化しておらず、かつ、ベースステーション(基地局)の信号強度が大幅に変化していない場合、事前設定期間におけるGPS座標は、誤った座標情報であると判断することができる。GPS座標の変化が第2の事前設定閾値以下であり、ベースステーション(基地局)の番号が変化し、かつ、ベースステーション(基地局)の信号強度の変化が第3の事前設定閾値以上であると決定ユニット380が判断した場合、第1の測位情報は、異常であると判断することができる。すなわち、事前設定期間におけるGPS座標情報は、誤った座標情報である。より詳細には、例えば、乗客/ドライバーのGPS座標が、事前設定期間において大幅に変化していないが、乗客/ドライバーの近くのベースステーション(基地局)の番号が変化し、かつ、ベースステーション(基地局)の信号強度が大幅に変化している場合、事前設定期間におけるGPS座標は、誤った座標情報であると判断することができる。幾つかの実施形態では、計算ユニット350は、測位情報及び/又は複数の地理的座標に基づいてサービス料金を計算してもよい。幾つかの実施形態では、決定ユニット380及びその計算サブユニット385は、正常であると判断された測位情報に基づいてサービス料金を更に計算してもよい。
当然ながら、測位情報が異常であるか否かを判断する多くの方法が存在し、上記説明に限定されるものではない。幾つかの実施形態では、測位情報が異常であるか否かの判断は、乗客の測位情報を処理するのに用いることができる。例えば、測位情報が異常であるか否かの判断は、POIエンジン110が乗客からのオーダー要求に応答するべきか否かを判断するのに用いることができる。例えば、乗客は、乗客端末デバイス120によって自身の測位情報を提供することができ、ドライバーサービスを求める要求をPOIエンジン110に送信することができる。POIエンジン110が、乗客の測位情報が異常であると判断した場合、POIエンジン110は、更に付加した情報を乗客に更に要求することもできるし、測位情報が異常であることを乗客に気付かせることもできるし、再測位の要求を送信することもできるし、乗客のオーダー要求を拒否することもできる。幾つかの実施形態では、乗客は、短時間に異なる位置においてオン・デマンドサービスを要求する場合がある(例えば、異なる位置は、或る時間間隔で互いに遠く離れている)。POIエンジン110は、異なるサービス要求についての更に付加した情報を得るために乗客に更に問い合わせることができる。例えば、この更に付加した情報は、それらの異なるサービス要求が同じ乗客からのものであるか否か、連絡情報、及びそれらの異なるサービス要求が異なる乗客からのものであるときに別の乗客のオーダーを確認する方法を含むことができる。乗客端末デバイス120上で乗客によって入力された出発位置が、乗客端末デバイス120の現在位置から遠く(例えば、10km)、かつ、乗客によって指定された出発時刻が、乗客端末デバイス120の現在のシステム時刻に近い(例えば、10分又は20分)場合、POIエンジン110は、確認情報を乗客端末デバイス120に更に送信して、出発位置及び/又は出発時刻を確認するように乗客に要求することができる。POIエンジン110は、他の情報(例えば、周囲の公共施設又は商業施設、重要なランドマーク建造物、街路名等)を乗客に要求して、乗客端末デバイス120の測位が異常であるか否かを判断することもできる。
当然ながら、本開示のシステムのモジュールは、それらの機能に従って論理的に分割されている。これらのモジュールは、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。これらのモジュールは、異なる要件に従って再分割されてもよいし、組み合わされてもよい。例えば、幾つかのモジュールは、単一のモジュールに組み合わされてもよいし、より多くのサブモジュールに更に分割されてもよい。
本開示の様々なモジュールは、ハードウェア、1つ以上のプロセッサにおいて動作するソフトウェア、又はそれらの組み合わせによって実施することができる。当業者であれば、本開示のモジュールの機能の幾つか又は全てをマイクロプロセッサ又はデジタル信号プロセッサ(DSP)によって実施することができる。本開示は、本明細書において説明される方法の一部分又は全てを実行するデバイス又はデバイスにおいて動作するプログラム(例えば、コンピュータープログラム及びコンピュータープログラムを有する製品)としても実施することができる。そのような種類のプログラムは、コンピューター可読媒体に記憶することもできるし、1つ以上の信号の形態にすることもできる。そのような信号は、インターネットウェブサイトからダウンロードされる場合もあるし、搬送波信号で提供される場合もあるし、他の任意の形態で提供される場合もある。
上記で説明した実施形態は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、本開示の教示の下で、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。本特許の開示の範囲は、特許請求の範囲と一致すべきである。
図16は、本開示に開示された特定のシステムを実施するように構成されたモバイルデバイスの構造である。幾つかの実施形態では、位置に関連した情報を表示及び通信するように構成されたユーザー端末デバイスが、モバイルデバイス1600であってもよい。このモバイルデバイスは、スマートフォン、タブレットコンピューター、ミュージックプレーヤー、ポータブルゲームコンソール、GPS受信機、ウェアラブル計算デバイス(例えば、メガネ、腕時計等)等を含んでもよいが、これらに限定されるものではない。モバイルデバイス1600は、1つ以上の中央処理装置(CPU)1640と、1つ以上のグラフィカル処理ユニット(GPU)1630と、ディスプレイ1620と、メモリ1660と、アンテナ1610(例えば、無線コミュニケーションユニット)と、記憶ユニット1690と、1つ以上の入力/出力(I/O)デバイス1650とを備えることができる。その上、モバイルデバイス1600は、他の任意の適した構成要素であってもよく、この構成要素には、システムバス又はコントローラー(図16に図示せず)が含まれるが、これらに限定されるものではない。図16に示すように、モバイルオペレーティングシステム1670(例えば、IOS、Android(登録商標)(アンドロイド)、Windows(登録商標) Phone(ウィンドウズフォン)等)及び1つ以上のアプリケーション1680を記憶ユニット1690からメモリ1660にロードし、CPU1640によって実施することができる。アプリケーション1680は、モバイルデバイス1600において位置に関連した情報を受信及び処理するように構成されたブラウザー又は他のモバイルアプリケーションを含んでもよい。乗客/ドライバーは、位置に関連したコミュニケーション情報をシステムI/Oデバイス1650を通じて取得し、POIエンジン110及び/又はシステム100の他のモジュール若しくはユニット、例えばネットワーク150にこの情報を提供することができる。
上記で説明した様々なモジュール、ユニット及びそれらの機能を実施するために、コンピューターハードウェアプラットフォームが、1つ以上のエレメント(例えば、図1〜図15において説明したPOIエンジン110及び/又はシステム100の他のセクション)のハードウェアプラットフォームとして用いられてもよい。これらのハードウェアエレメント、オペレーティングシステム及びプログラム言語は一般に知られているので、当業者であれば、これらの技法に精通している可能性があり、本開示において説明した技法に従ってオン・デマンドサービスにおいて必要とされる情報を提供することが可能であり得ると仮定することができる。ユーザーインターフェースを有するコンピューターは、パーソナルコンピューター(PC)、又は他のタイプのワークステーション若しくは端末デバイスとして用いられてもよい。ユーザーインターフェースを有するコンピューターは、適切にプログラミングされた後、サーバーとして用いられてもよい。当業者であれば、このタイプのコンピューターデバイスのそのような構造、プログラム、又は一般的な動作にも精通している可能性があると考えることができる。このため、図について余分な説明は記載されていない。
図17は、本開示に開示された特定のシステムを実施するように構成されたコンピューティングデバイスの構造である。特定のシステムは、機能ブロック図を用いて、1つ以上のユーザーインターフェースを含むハードウェアプラットフォームを説明することができる。コンピューターは、一般的な機能を有するコンピューターであってもよいし、特定の機能を有するコンピューターであってもよい。いずれのタイプのコンピューターも、本開示の幾つかの実施形態に従って任意の特定のシステムを実施するように構成することができる。コンピューター1700は、本明細書において開示されたオン・デマンドサービスによって必要とされる情報を提供する任意の構成要素を実施するように構成することができる。例えば、POIエンジン110は、コンピューター1700のようなコンピューターのハードウェアデバイス、ソフトウェアプログラム、ファームウェア、又はそれらの任意の組み合わせによって実施することができる。簡潔にするために、図17は、1つのコンピューターのみを示している。幾つかの実施形態では、オン・デマンドサービスが必要とすることがある情報を提供するこのコンピューターの機能は、システムの処理負荷を分散させるために、同様のプラットフォームからなるグループによって分散モードで実施されてもよい。
コンピューター1700は、データコミュニケーションを実施することができるネットワークと接続することができるコミュニケーション端末1750を備えることができる。コンピューター1700は、命令を実行するように構成されたCPUも備えることができ、1つ以上のプロセッサを備える。この概略的なコンピュータープラットフォームは、内部コミュニケーションバス1710と、異なるタイプのプログラム記憶ユニット及びデータ記憶ユニット(例えば、ハードディスク1770、リード・オンリー・メモリ(ROM)1730、ランダム・アクセス・メモリ(RAM)1740)と、コンピューター処理及び/又はコミュニケーションに適用可能な様々なデータファイルと、CPUによって実行される可能性がある幾つかのプログラム命令とを備えることができる。コンピューター1700は、当該コンピューターと他の構成要素(例えば、ユーザーインターフェース1780)との間のデータフローの入力及び出力をサポートすることができるI/Oデバイス1760も備えることができる。その上、コンピューター1700は、コミュニケーションネットワークを介してプログラム及びデータを受信することができる。
オン・デマンドサービスによって必要とされる情報を提供する方法及び/又はプログラムによって他のステップを実施する方法の様々な態様を上記で説明している。本技法のプログラムは、実行可能なコード及び/又は関係データの形態で提供される「製品」又は「人工物」とみなすことができる。本技法のプログラムは、コンピューター可読媒体によって結合又は実施することができる。有形の不揮発性記憶媒体は、コンピューター、プロセッサ、同様のデバイス、又は関連モジュールにおいて適用される任意のタイプのメモリ又は記憶装置を含んでもよい。例えば、有形の不揮発性記憶媒体は、様々なタイプの半導体記憶装置、テープドライブ、ディスクドライブ、又は記憶機能を任意の時点にソフトウェアに提供することが可能な同様のデバイスであってもよい。
ソフトウェアの幾つか又は全ては、時に、ネットワーク、例えば、インターネット又は他のコミュニケーションネットワークを介して通信することがある。この種のコミュニケーションは、或るコンピューターデバイス又はプロセッサから別のコンピューターデバイス又はプロセッサにソフトウェアをロードすることができる。例えば、ソフトウェアは、オン・デマンドサービスシステムの管理サーバー又はメインコンピューターから、コンピューター環境内のハードウェアプラットフォーム、このシステムを実施することが可能な他のコンピューター環境、又はオン・デマンドサービスによって必要とされる情報を提供する同様の機能を有するシステムにロードすることができる。これに対応して、ソフトウェアエレメントを送信するのに用いられる別の媒体を、機器のうちの幾つかの間の物理接続として用いることができる。例えば、光波、電流波、電磁波等をケーブル、光ケーブル又は無線によって伝送することができる。波を搬送するのに用いられる物理媒体、例えば、ケーブル、無線接続、光ケーブル等は、ソフトウェアをホストする媒体とみなすこともできる。本明細書では、有形の「記憶」媒体が特に指定されていない限り、コンピューター又は機械の「可読媒体」を表す他の術語も、任意の命令を実行するときにプロセッサによって結合される媒体を表すことができる。
コンピューター可読媒体は、様々な形態を含んでもよい。これらの形態には、有形の記憶媒体、波搬送媒体又は物理伝送媒体が含まれるが、これらに限定されるものではない。安定した記憶媒体は、コンパクトディスク、磁気ディスク、又は他のコンピューター又は同様のデバイスにおいて適用される記憶システムを含んでもよく、図面において説明したシステムの全てのセクションを実現してもよい。不安定な記憶媒体は、ダイナミックメモリ、例えば、コンピュータープラットフォームのメインメモリを含んでもよい。有形の伝送媒体は、コンピューターシステムの内部におけるバスを形成する回路を含めて、同軸ケーブル、銅ケーブル及び光ファイバーを含んでもよい。波搬送媒体は、電気信号、電磁気信号、音響信号又は光波信号を伝送することができる。そして、これらの信号は、無線周波数コミュニケーション又は赤外線データコミュニケーションによって生成されてもよい。一般のコンピューター可読媒体は、ハードディスク、フロッピーディスク、磁気テープ、又は他の任意の磁気媒体;CD−ROM、DVD、DVD−ROM、又は他の任意の光媒体;パンチカード、又は開口モードを含む他の任意の物理記憶媒体;RAM、PROM、EPROM、フラッシュEPROM、又は他の任意のメモリチップ若しくは磁気テープ;データ又は命令を伝送するのに用いられる搬送波、搬送波を伝送するのに用いられるケーブル若しくは接続デバイス、又はコンピューターにアクセス可能な他の任意のプログラムコード及び/又はデータを含んでもよい。コンピューター可読媒体のほとんどは、プロセッサによる命令の実行又は1つ以上の結果の送信において適用することができる。
当業者には、本開示の幾つかの実施形態に従って様々な代替形態及び改良形態を実現することができることを理解することができる。例えば、上記で説明したシステムの様々な構成要素は全て、ハードウェア機器によって実現される。実際は、上記で説明したシステムの様々な構成要素は、例えば、このシステムを現在のサーバー上にインストールすることによって単にソフトウェアによって実現されてもよい。これに加えて又はこれに代えて、本明細書において開示された位置情報は、ファームウェア、ファームウェア及びソフトウェアの組み合わせ、ファームウェア及びハードウェアの組み合わせ、又はファームウェア、ハードウェア及びソフトウェアの組み合わせによって提供されてもよい。
本開示及び/又は幾つかの他の例を上記において説明してきた。上記説明によれば、様々な代替形態を実現することができる。本開示の主題は、様々な形態及び実施形態において実現することができ、本開示は、様々なアプリケーションプログラムにおいて更に用いることができる。特許請求の範囲において保護される必要がある全ての用途、変更及び変形は、本開示の保護範囲内にあるとすることができる。