本開示の実施形態に関連した技術的解決策を示すために、実施形態の説明において参照される図面の簡単な導入を以下に提供する。明らかに、以下に説明する図面は、本開示の幾つかの例又は実施形態にすぎない。当業者であれば、更なる創造的な努力を行うことなく、これらの図面に従って本開示を他の同様のシナリオに適用することができる。別段の記載がない限り又は文脈から明らかでない限り、図面における同じ参照符号は、同じ構造体及び動作を指している。
個数が特定されていないものが本開示及び添付の特許請求の範囲において用いられているとき、それらは、内容が明らかに別のことを規定していない限り、単数のもの及び複数のものを含む。「備える」及び/又は「含む」という用語は、本開示において用いられるとき、明示されたステップ及び要素の存在を明記しているが、1つ以上の他のステップ及び要素の存在又は追加を排除するものではないことが更に理解されるであろう。
システムの幾つかのモジュールは、本開示の幾つかの実施形態に従って、様々な方法で参照される場合があるが、クライアント端末及び/又はサーバーでは、任意の数量の異なるモジュールが用いられ、動作されてもよい。これらのモジュールは、例示であることが意図され、本開示の範囲を限定することを意図するものではない。システム及び方法の異なる態様では、異なるモジュールが用いられてもよい。
本開示の幾つかの実施形態によれば、フローチャートは、システムによって実行される動作を示すのに用いられる。上記又は下記の動作は順番に実施されてもよいし、されなくてもよいことが明らかに理解されることであろう。逆に、動作は、逆順に実行されてもよいし、同時に実行されてもよい。その上、1つ以上の他の動作がフローチャートに追加されてもよいし、1つ以上の動作がフローチャートから省略されてもよい。
本開示の実施形態は、異なる輸送システムに適用されてもよい。これらの異なる輸送システムには、陸上輸送、海上輸送、空輸、宇宙輸送等、又はそれらの任意の組み合わせが含まれるが、これらに限定されるものではない。輸送システムの車両は、人力車、移動ツール(travel tool)、タクシー、運転手付き乗用車サービス、ヒッチ(hitch)、バス、鉄道輸送(例えば、列車、弾丸列車、高速鉄道、及び地下鉄)、船舶、飛行機、宇宙船、熱気球、無人車両等、又はそれらの任意の組み合わせを含んでもよい。また、輸送システムは、管理及び/又は配送を利用する任意の輸送システム、例えば、速達を送り及び/又は受け取るシステムも含んでもよい。本開示の異なる実施形態の応用シナリオは、1つ以上のウェブページ、ブラウザープラグイン及び/又は拡張、クライアント端末、カスタムシステム、社内解析システム、人工知能ロボット等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。本明細書に開示されたシステム及び方法の応用シナリオは、幾つかの例又は実施形態にすぎないことが理解されるであろう。当業者であれば、更なる創造的な努力を行うことなく、これらの図面を他の応用シナリオに適用することができる。例えば、他の同様のユーザーオーダー受信システムである。
本開示における「ユーザー」、「乗客」、「要求者」、「サービス要求者」、及び「客」という用語は、サービスを要求又はオーダーすることができる個人、団体又はツールを指すために区別なく用いられる。当事主体は、個人であってもよいし、デバイスであってもよい。また、本開示における「ドライバー」、「提供者」、「サービス提供者」、及び「サプライヤー」という用語は、サービスを提供することができ又はサービスの提供を容易にすることができる個人、団体、又はデバイスを指すために区別なく用いられる。加えて、本開示における「ユーザー」という用語は、サービスを要求することができ、サービスをオーダーすることができ、サービスを提供することができ、又はサービスの提供を容易にすることができる個人、団体、又はデバイスを指してもよい。
図1−Aは、本開示の幾つかの実施形態に係るオン・デマンドサービスシステムを含むネットワーク環境の概略図を示している。ネットワーク環境100は、オン・デマンドサービスシステム105と、1つ以上の乗客端末デバイス120と、1つ以上のデータベース130と、1つ以上のドライバー端末デバイス140と、1つ以上のネットワーク150と、1つ以上の情報源160とを備えることができる。オン・デマンドサービスシステム105は、オーダープッシュエンジン110を備えることができる。便宜上、オーダープッシュエンジンは、オーダープッシュシステムと呼ばれる場合がある。本開示におけるシステムは、オン・デマンドオーダーサービスシステム、オーダープッシュエンジン、又はオーダープッシュシステムと呼ばれる場合がある。幾つかの実施形態では、オーダープッシュエンジン110は、収集された情報を解析して解析結果を生成するように構成されたシステムとすることができる。オーダープッシュエンジン110は、サーバーであってもよいし、有線ネットワーク又は無線ネットワークを介して接続されたサーバーグループであってもよい。サーバーグループは、集中型(例えば、データセンター)であってもよいし、分散型(例えば、分散システム)であってもよい。オーダープッシュエンジン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つ以上の同様のデバイスを含んでもよい。
オーダープッシュエンジン110は、データベース130に記憶された情報に直接アクセスすることができ、及び/又はデータベース130から情報を読み出すこともできるし、データベース130に情報を書き込むこともできる。オーダープッシュエンジン110は、ネットワーク150を介してユーザー端末デバイス120又は140によって提供される情報にもアクセスすることができる。幾つかの実施形態では、データベース130は、データを記憶することが可能な任意のデバイスを含むことができる。データベース130は、乗客120及び/又はドライバー140から収集されるデータと、オーダープッシュエンジン110によって使用、生成又は出力されるデータとを記憶するのに用いられてもよい。データベース130は、ローカルであってもよいし、リモートであってもよい。データベース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、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は、本開示の別の実施形態に係る、オン・デマンドサービスシステムを含むネットワーク環境の概略図を示している。図1−Bは、図1−Aと類似している。図1−Bでは、データベース130は、独立しており、ネットワーク150に直接接続されてもよい。オン・デマンドサービスシステム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)、及び/又はユーザー端末デバイス120若しくは140は、ネットワーク150を介してデータベース130に直接アクセスすることができる。
図1−A及び/又は図1−Bにおいて、データベース130と、オン・デマンドサービスシステム105、及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)、及び/又はユーザー端末デバイス120若しくは140とは、異なる方法で接続されてもよい。データベース130への各デバイスのアクセス許可は制限されてもよい。例えば、オン・デマンドサービスシステム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン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は、この図には示されておらず、オーダープッシュエンジン110が一例として示されている。オーダープッシュエンジン110は、1つ以上の処理モジュール210と、1つ以上の記憶モジュール220と、1つ以上の乗客インターフェース230と、1つ以上のドライバーインターフェース240とを備えることができる。オーダープッシュエンジン110は、集中型であってもよいし、分散型であってもよい。オーダープッシュエンジン110の1つ以上のモジュールは、ローカルであってもよいし、リモートであってもよい。幾つかの実施形態では、オーダー処理エンジン110は、ウェブサーバー、ファイルサーバー、データベースサーバー、FTPサーバー、アプリケーションサーバー、プロキシサーバー、メールサーバー等、又はそれらの任意の組み合わせであってもよい。
幾つかの実施形態では、オーダープッシュエンジンは、乗客インターフェース230を通じて乗客端末デバイス120から情報を受信し、及び/又は乗客端末デバイス120に処理された情報を送信することができる。幾つかの実施形態では、オーダープッシュエンジン110は、ドライバーインターフェース240を通じてドライバー端末デバイス140から情報を受信することができ、及び/又はドライバー端末デバイス140に処理された情報を送信することができる。情報を送信又は受信する方法は直接的であってもよい。例えば、情報は、1つ以上の乗客端末デバイス120及び/又は1つ以上のドライバー端末デバイス140からネットワーク150を介して乗客インターフェース230及び/又はドライバーインターフェース240を通じて直接取得することができる。別の例として、情報は、情報源160から直接受信されてもよい。情報を送信又は受信する方法は間接的であってもよい。例えば、処理モジュール210は、1つ以上の情報源160に要求を送信することによって、情報を取得することができる。情報源160内の情報は、気象状況、道路状況、交通状況、ニュースイベント、ソーシャルアクティビティ等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。オーダープッシュエンジン110は、データベース130と通信するように構成することができる。幾つかの実施形態では、オーダープッシュエンジンは、地図データ、履歴オーダーの情報、時間調整の量の情報等の情報を抽出するように構成することができる。上述の履歴オーダーの情報は、履歴オーダーの出発位置、履歴オーダーの目的地、履歴オーダーのピックアップ時刻、履歴オーダーのそれぞれの価格等、又はそれらの任意の組み合わせを含むことができる。上記で説明した時間調整の量の情報は、種々の時間帯における種々の地理的エリアの時間調整の値を含んでもよい。オーダープッシュエンジン110は、乗客インターフェース230及び/又はドライバーインターフェース240から受信された情報をデータベース130に送信するように構成することができる。オーダープッシュエンジン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は、オーダープッシュエンジン110の一部分であってもよい。データベース130は、データを記憶することができる任意のデバイスを指してもよい。データベース130は、ユーザー端末デバイス120、ユーザー端末デバイス140、又は情報源160から収集されたデータを記憶するのに用いることができる。データベース130は、オーダープッシュエンジン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に示すオーダープッシュエンジン110は様々な方法によって実施されてもよいことが理解されるであろう。例えば、オーダープッシュエンジン110は、ハードウェア、ソフトウェア又はそれらの組み合わせによって実施されてもよい。本明細書において、ハードウェアは、専用ロジックによって実施されてもよい。ソフトウェアは、メモリに記憶されてもよく、適切な命令実行システム(例えば、マイクロプロセッサ、専用設計ハードウェア等)によって実施されてもよい。上記方法及び上記システムは、コンピューター実行可能命令及び/又はプロセッサの組み込み制御コードによって実施されてもよいことが当業者によって理解されよう。例えば、制御コードは、ディスク、CD若しくはDVD−ROM、リード・オンリー・メモリ(例えば、ファームウェア)等のプログラマブルメモリデバイス、又は光信号搬送波若しくは電気信号搬送波等のデータ搬送波等の媒体によって提供されてもよい。オーダープッシュエンジン110及びそのモジュールは、大規模集積回路若しくは大規模ゲートアレイ、半導体デバイス(例えば、ロジックチップ、トランジスタ、フィールドプログラマブルゲートアレイ、プログラマブルロジックデバイス等のプログラマブルハードウェアデバイスのハードウェア回路等)によって実施されてもよいだけでなく、様々なタイプのプロセッサにおいて実行されるソフトウェア、又は上記ハードウェア回路及びソフトウェア(例えば、ファームウェア)の組み合わせによって実施されてもよい。
当然ながら、オーダープッシュエンジン110の上記説明は、例示の目的で提供されたものであり、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールは、様々な方法で組み合わされてもよいし、サブシステムとして他のモジュールと接続してもよい。本開示の教示の下で様々な変形及び変更が行われてもよい。しかしながら、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、処理モジュール210、記憶モジュール220、乗客インターフェース230、ドライバーインターフェース240、及びデータベース130は、1つのシステム内の異なるモジュールであってもよいし、上記モジュールのうちの2つ以上の対応する機能を実行する単一のモジュールとして組み合わされてもよい。例えば、乗客インターフェース230及びドライバーインターフェース240は、乗客端末デバイス120及びドライバー端末デバイス140と同時にインタラクトすることができる単一のインターフェースとして組み合わされてもよい。例えば、データベース130は、オーダープッシュエンジン110に含まれてもよく、データベース130及び記憶モジュール220の全ての機能は、単一の記憶デバイスによって実施されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図3は、本開示の幾つかの実施形態に係るオーダープッシュエンジンの処理モジュールの概略図である。処理モジュール210は、住所解析ユニット310と、画像処理ユニット320と、音声処理ユニット330と、テキスト処理ユニット340と、決定ユニット350と、ランク付けユニット360と、経路計画ユニット370と、決定ユニット380とを備えることができる。当然ながら、オーダープッシュエンジン110の処理モジュール210の構造の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。幾つかの実施形態では、処理モジュール210は、他のユニットも備えてもよい。幾つかの実施形態では、上記ユニットのうちの幾つかは除去されてもよい。幾つかの実施形態では、上記ユニットのうちの幾つかは、対応する機能を実行する1つのユニットに組み合わされてもよい。幾つかの実施形態では、上記ユニットは独立していてもよい。幾つかの実施形態では、上記ユニットは相互接続されていてもよい。
住所解析ユニット310は、受信された住所情報を処理するように構成することができる。住所情報は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、又は処理モジュール210の他のユニット若しくはサブユニットから取得することができる。住所情報を処理する方法は、住所情報の解析及び/又は逆解析を含んでもよい。住所情報の逆解析は、1つ以上の座標を、当該座標に対応する位置のテキスト記述情報に変換することを含んでもよい。住所情報の解析は、位置のテキスト記述情報(例えば、位置のテキスト記述)を住所座標情報に変換することを指す場合がある。住所座標情報は、座標系における1つ以上の座標、例えば、経度緯度座標を含んでもよい。テキスト記述情報は、位置の一般名、番地、ランドマークの名称等の位置の象徴的名称及び代表的名称のうちの1つ以上のものであってもよい。住所解析ユニット310は、処理された住所情報を他のユニットに送信することができる。これらの他のユニットは、画像処理ユニット320、音声処理ユニット330、テキスト処理ユニット340、決定ユニット350、ランク付けユニット360、経路計画ユニット370、決定ユニット380、乗客インターフェース230、ドライバーインターフェース240等、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されるものではない。
画像処理ユニット320は、受信された画像(静止画像、ビデオフレーム等)を処理して、処理された情報を取得するように構成することができる。処理の方法は、画像強調、画像識別、画像セグメンテーション、画像測定(例えば、画角、距離、又は背景的関係の計算)等の1つ以上の画像処理方法を含んでもよい。処理ユニット320は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、又は処理モジュール210の他のユニット若しくはサブユニットの1つ以上の組み合わせから画像情報を受信することができる。画像処理ユニット320によって特定された画像情報は、対応する住所情報を検索するために住所解析ユニット310に入力することができる。幾つかの実施形態では、画像処理ユニット320によって生成された処理結果は、経路計画ユニット370に送信することができる。
音声処理ユニット330は、乗客端末デバイス120及び/又はドライバー端末デバイス140から受信された音声情報を処理するように構成することができる。処理の方法は、ノイズリダクション、音声認識及び/又は会話認識、意味認識、人物認識等を含んでもよい。音声処理ユニット330は、認識されたオーディオ情報を処理のために他のユニットに出力することができる。例えば、音声処理ユニット330は、認識された住所情報を住所解析ユニット310、経路計画ユニット370等に送信することができる。音声処理ユニット330は、非オーディオ情報(例えば、処理モジュール210の他のユニット、乗客インターフェース230、ドライバーインターフェース240等からのテキスト情報)をオーディオ情報に変換することができる。
テキスト処理ユニット340は、処理モジュール210によって受信されたテキスト情報を処理するように構成することができる。幾つかの実施形態では、テキスト情報は、単語分割、テキスト情報からの特徴的テキストの抽出、特徴的テキストの分類、テキスト情報の意味認識等、又はそれらの任意の組み合わせによって処理することができる。幾つかの実施形態では、テキスト処理ユニット340は、特定の条件を満たすテキスト情報の内容を処理する(例えば、削除操作等を実行する)ように構成することができる。テキスト情報は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、記憶モジュール220、又は処理モジュール210の他のユニット若しくはサブユニットから取得することができる。幾つかの実施形態では、テキスト処理ユニット340によって生成された結果は、更なる処理のために他のユニットに送信することができる。幾つかの実施形態では、テキスト処理ユニット340によって生成された結果は、記憶のために記憶モジュール220に送信することもできるし、更なる処理のために乗客インターフェース230又はドライバーインターフェース240に送信することもできる。
決定ユニット350は、2つの輸送サービスオーダーの間の関係を求めることができる。幾つかの実施形態では、決定ユニット350は、2つのオーダー(例えば、第1のオーダー及び第2のオーダー)の間の時間的関係を求めることができる。幾つかの実施形態では、決定ユニット350は、2つのオーダーのピックアップ時刻の時間的順序を求めることができる。幾つかの実施形態では、決定ユニット350は、或るオーダーのピックアップ時刻と他のオーダーの到着時刻との時間的順序を求めることができる。幾つかの実施形態では、決定ユニット350は、2つのオーダーの間の地理的関係を求めることができる。幾つかの実施形態では、決定ユニット350は、第1のオーダーの出発位置と第2のオーダーの目的地との間の近接性を求めることができる。幾つかの実施形態では、決定ユニット350は、一方のオーダーに関する運転方向と他方のオーダーに関する運転方向との間の近接性を求めることができる。決定ユニット350は、乗客及び/又はドライバーのステータスを求めることができる。幾つかの実施形態では、決定ユニット350は、乗客端末デバイス120及び/又はドライバー端末デバイス140によって送信された位置情報の確度及び/又は精度を求めることができる。幾つかの実施形態では、決定ユニット350は、車両の状況、例えば、車両が静止しているか否か、車両が移動しているか否か、車両の移動方向、車両の速度、車両の加速度等、又はそれらの任意の組み合わせを求めることができる。車両の状況を求めることは、決定ユニット380によるオーダーの所要費用を求めるのに用いることができる。幾つかの実施形態では、決定ユニット350は、第1の測位技術によって取得された測位結果と、第2の測位技術又は複数の測位技術によって取得された測位結果との間の差を求めることができる。ここで、測位結果は、ドライバー端末デバイス140から受信することができる。この差は、決定ユニット380によって求められてもよい。この差に従って、第1の測位技術によって取得された測位情報が異常であるか否かに関する判断を行うことができる。この判断結果に従って、オーダープッシュエンジン110は、オーダー情報をドライバー端末デバイス140及び/又は他のドライバー端末デバイス140に送信するか否かを判定するように構成することができる。
ランク付けユニット360は、特定のルールに基づいて複数のオーダーをランク付けするように構成することができる。この特定のルールは、オーダーのピックアップ時刻又は到着時刻の時間的順序とすることができる。幾つかの実施形態では、ランク付けユニット360は、複数のオーダーのピックアップ時刻の時間的順序に基づいてオーダーをランク付けすることができ、これらの複数のオーダーをピックアップ時刻によって最も早いものから最も遅いものにリストに配列することができる。ドライバーインターフェース240は、このリストを選択のためにドライバー端末デバイス140に送信することができる。幾つかの実施形態では、オーダーのピックアップ時刻及び/又は到着時刻に基づいて、ランク付けユニット360は、複数の他のオーダーをピックアップ時刻によってランク付けし、これらの複数の他のオーダーをピックアップ時刻によって時間的順序でリストに配列するように構成することができる。ドライバーインターフェース240は、このリストを選択のためにドライバー端末デバイス140に送信することができる。ランク付けユニット360は、受信された情報を特定のルールに基づいてランク付けするように構成することもできる。このルールは、確率、距離、時間シーケンス、経過時間の量、所要費用、用いられる移動方法の数等、又はそれらの任意の組み合わせとすることができる。処理された情報は、決定ユニット380から取得することができる。幾つかの実施形態では、ランク付けユニット360は、履歴オーダーの出発地及び/又は目的地の出現数又は確率に基づいて、オーダーの候補出発地及び/又は候補目的地をランク付けし、オーダーを出現数の多い方から少ない方に基づいて選択するために乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、ランク付けユニット360は、所要費用に基づいて移動方法及び/又は経路をランク付けすることができる。幾つかの実施形態では、ランク付けユニット360は、経過時間に基づいて移動方法及び/又は経路をランク付けすることができる。結果は、昇順にランク付けすることもできるし、降順にランク付けすることもできる。幾つかの実施形態では、ランク付けユニット360は、ランク付けに関与する情報の幾つか又は全てを出力することができる。
経路計画ユニット370は、乗客端末デバイス120及びドライバー端末デバイス140からの測位情報に基づいて、乗客の移動経路及びドライバーから乗客までの運転経路を特定及び計画することができる。経路計画ユニット370は、他のユニットからの情報に基づいて経路を構成することができる。これらの他のユニットは、住所解析ユニット310、画像処理ユニット320、音声処理ユニット330、ランク付けユニット360、決定ユニット380等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、経路計画ユニット370は、データベース130及び/又は情報源160からの情報に基づいて経路を計画することができる。幾つかの実施形態では、経路計画ユニット370は、データベース130から受信された履歴オーダー、地図データ、時間調整の量の情報と、情報源160から受信されたサービスに関連した情報とを包括的に解析及び処理することができる。経路計画ユニット370は、これらの情報を解析及び処理した後、乗客及び/又はドライバーが選択するための様々な経路を生成することができる。履歴オーダーは、履歴オーダーの出発位置、履歴オーダーの目的地、履歴オーダーの取引時刻(例えば、オーダーがドライバー及び乗客の双方によって受理された時刻)、オーダー完了率、コスト等、又はそれらの任意の組み合わせを含むことができる。地図データは、街路、橋梁、建物等の人工物の地理的座標、様々な水域、山岳、森林、湿地等の自然景観の地理的座標、及び上記で説明した物の記述名又は識別情報(identifiers)(例えば、番地、邸宅(mansion:マンション)の名称、河川の名称、ストアの名称等)、画像情報、3次元モデル等を含むことができる。サービスに関連した情報は、気象情報、交通情報、法規制の情報、ニュースイベント、生活情報、生活ガイド情報等、又はそれらの任意の組み合わせを含むことができる。経路計画ユニット370によって生成された結果(例えば、経路)は、乗客インターフェース230及び/又はドライバーインターフェース240を介してそれぞれ乗客端末デバイス120及び/又はドライバー端末デバイス140に送信することができる。幾つかの実施形態では、経路計画ユニット370によって生成された結果は、特定のオーダー、スコアのランク、又は優先度を有する結果を生成するように処理するために、ランク付けユニット360に送信することができる。
決定ユニット380は、受信された情報を決定するように構成することができる。この情報は、乗客インターフェース230、ドライバーインターフェース240、データベース130、情報源160、又は処理モジュール210の他のユニット若しくはサブユニット(例えば、住所解析ユニット310等)から受信することができる。受信された情報は、距離、時刻、オーダー回転率、所要費用等、又はそれらの任意の組み合わせを含むことができる。幾つかの実施形態では、決定ユニット380は、或るオーダーの出発位置と別のオーダーの目的地との間の距離を求めることができる。幾つかの実施形態では、決定ユニット380は、オーダーの出発地から目的地までの推定運転時間を求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、ドライバーの現在位置からオーダーの出発位置までの運転時間の推定値を求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、オーダーの経路における或る位置から別の位置への履歴オーダーにおけるドライバーの運転時間、運転距離及び平均運転速度を求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、履歴運転経路の確率を求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、履歴オーダーの出発位置及び/又は目的地の出現確率を求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、乗客の現在位置と履歴オーダーの出発位置との間の距離を求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、オーダーの出発位置から目的地までの距離、所要時間、所要費用、所要歩行距離等、又はそれらの任意の組み合わせを求めるように構成することができる。幾つかの実施形態では、決定ユニット380は、求められた結果を、1つ以上の他のユニット、例えば、ランク付けユニット360、経路計画ユニット370等に送信することができる。
当然ながら、オーダープッシュエンジン110の処理モジュール210の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールを様々な方法で組み合わせることもできるし、サブシステムとして他のモジュールと接続することもできる。本開示の教示の下で、上記機能が実現されることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、幾つかの実施形態では、処理モジュール210は、オーダーを完了するための所要費用を求めるように構成された独立したアカウンティングユニットを備えてもよい。幾つかの実施形態では、テキスト処理ユニット340等の幾つかのユニットは省略されてもよい。幾つかの実施形態では、処理モジュール210は、他のユニット又はサブユニットを備えてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図4−Aは、本開示の幾つかの実施形態に係るオーダープッシュエンジンの乗客インターフェースの概略図である。乗客インターフェース230は、乗客情報受信ユニット410と、乗客情報解析ユニット420と、乗客情報送信ユニット430とを備えることができる。乗客情報受信ユニット410は、乗客端末デバイス120によって送信される情報を受信することができ、この情報を認識、整理及び分類することができる。乗客端末デバイス120によって送信される情報の内容は、測位技術を用いることによって求められた乗客端末デバイス120の現在位置、乗客によって入力若しくは選択された現在位置若しくは出発位置、又は乗客の現在位置に関連した他の情報に関するものであってもよい。また、乗客端末デバイス120によって送信される情報の内容は、システムの現在時刻、乗客が期待するピックアップ時刻/到着時刻/移動時間、サービスに関する乗客の選択/要件/記述情報、乗客が受け取ることを期待する情報の内容/フォーマット/時間/量等に関するものであってもよい。また、乗客端末デバイス120によって送信される情報の内容は、乗客が乗客端末デバイス120においてサービスアプリケーションを開くか否かに関するものであってもよい。幾つかの実施形態では、乗客情報受信ユニット410は、乗客端末デバイス120からのリアルタイム輸送サービスオーダーを受信することができる。幾つかの実施形態では、乗客情報受信ユニット410は、乗客端末デバイス120から今後の輸送サービスオーダーを受信することができる。乗客端末デバイス120によって送信される情報は、乗客端末デバイス120において乗客によって入力された自然言語によるテキスト情報の場合もあるし、乗客端末デバイス120によって送信されたバイナリー情報の場合もある。送信される情報は、(図5に示すような)乗客端末デバイス120の入力/出力モジュール510に記録された音声情報(乗客の音声入力を含む)、乗客端末デバイス120の入力/出力モジュール510によって取得された画像情報(静止画像又はビデオを含む)等、又はそれらの任意の組み合わせの場合もある。乗客端末デバイス120は、ネットワーク150を介して乗客インターフェース230の乗客情報受信ユニット410に上記情報を提供することができる。
乗客情報解析ユニット420は、乗客情報受信ユニット410によって受信された乗客情報を解析するように構成することができる。この解析は、乗客情報を整理又は分類することを含んでもよい。解析は、乗客情報のフォーマットを変換するか又は乗客情報の内容を抽出、解析若しくは変換して、処理モジュール210によって特定、処理することができるか又は記憶モジュール220によって記憶することができるフォーマットにすることも含むことができる。乗客情報解析ユニット420は、乗客端末デバイス120の命令又は好みに基づいて、処理モジュール210によって処理された情報のフォーマット又は記憶モジュール220に記憶された情報のフォーマットを変換して、乗客端末デバイス120によってアクセス又は選択することができるフォーマットにすることもできる。乗客情報解析ユニット420は、フォーマット変換された情報を乗客情報送信ユニット430に提供することができる。
乗客情報送信ユニット430は、情報(例えば、オーダープッシュエンジン110が乗客端末デバイス120に送信するように要請した情報)を、ネットワーク150を介して乗客端末デバイス120に送信することができる。幾つかの実施形態では、乗客情報送信ユニット430は、以前に送信された輸送サービス情報を確認するように乗客端末デバイス120に要請する輸送サービス確認を送信することができる。乗客情報送信ユニット430によって送信される情報は、オン・デマンドサービスシステム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)によって確認された乗客の輸送サービスオーダーの情報であってもよい。この送信される情報は、乗客の位置の交通状況又は乗客の位置の他の任意の情報も含んでもよい。また、この送信される情報は、システム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)からのプロンプトメッセージ若しくは通知、情報源160からのニュース/通知/プロンプトメッセージ、乗客の輸送サービスオーダーに対する1人以上のドライバーの応答(受理、拒否等)等、又はそれらの任意の組み合わせであってもよい。幾つかの実施形態では、乗客情報送信ユニット430は、乗客の輸送サービスオーダーの受理の応答を1人以上のドライバーから乗客端末デバイス120に送信することができる。乗客情報送信ユニット430は、ドライバー情報も乗客端末デバイス120に送信することができる。乗客情報送信ユニット430によって送信される情報は、自然言語によるテキスト情報、オーダープッシュエンジン110によって生成されたバイナリー情報、音声情報(自然言語による任意のテキストのテキスト音声変換によって生成された任意の音声を含む)、画像情報(例えば、乗客及び1人以上のドライバーの位置がマーキングされた地図インターフェース)等、又はそれらの任意の組み合わせであってもよい。乗客情報送信ユニット430は、上記情報を、ネットワーク150を介して乗客端末デバイス120に送信することができる。
乗客情報受信ユニット410は、有線受信デバイス又は無線受信デバイスを備えることができる。この受信デバイスは、ネットワーク150を介して乗客端末デバイス120と通信することができる。同様に、乗客情報送信ユニット430は、有線送信デバイス又は無線送信デバイスを備えることができる。この送信デバイスは、ネットワーク150を介して乗客端末デバイス120と通信することができる。
図4−Bは、本開示の幾つかの実施形態に係るオーダープッシュエンジンにおけるドライバーインターフェースの概略図である。図4−Bに示すように、ドライバーインターフェース240は、ドライバー情報受信ユニット415と、ドライバー情報解析ユニット425と、ドライバー情報送信ユニット435とを備えることができる。ドライバー情報受信ユニット415は、ドライバーのデバイスを通じてドライバーによって送信された情報を受信することができ、この情報を認識、整理及び分類することができる。ドライバーによって送信される情報の内容は、測位技術を用いて求められたドライバーの現在位置に関するものであってもよい。また、情報の内容は、ドライバーの運転速度、ドライバーの現在の移動の出発地及び/又は目的地、輸送サービスオーダーに対するドライバーの応答若しくは傾向、ドライバーによって返される現在のサービス状況(例えば、乗車中、乗客の乗車待ち中、アイドル運転中(例えば、乗客のいない運転中))、サービス要求に対するドライバーの選択/確認/拒否情報等、又はそれらの任意の組み合わせに関するものであってもよい。また、この情報の内容は、ドライバーがドライバー端末デバイス140においてサービスアプリケーションをオン又はオフにする情報等に関するものであってもよい。ドライバー端末デバイス140によって送信される情報は、自然言語によるテキスト情報であってもよく、ドライバーによってドライバー端末デバイス140に入力することができる。また、この送信される情報は、バイナリー情報、ドライバー端末デバイス140によって記録された音声情報(ドライバーの1つ以上の音声入力を含む)、ドライバー端末デバイス140によって取得された画像情報(静止画像又はビデオを含む)、他のタイプのマルチメディア情報等、又はそれらの任意の組み合わせであってもよい。ドライバー端末デバイス140は、ネットワーク150を介してドライバーインターフェース240のドライバー情報受信ユニット415に情報を送信することができる。
ドライバー情報解析ユニット425は、ドライバー情報受信ユニット415によって受信されたドライバー情報を解析するように構成することができる。この解析は、ドライバー情報を整理すること又は分類することを含むことができる。この解析は、ドライバー情報のフォーマットを変換するか又はドライバー情報の内容を抽出、解析若しくは変換して、処理モジュール210によって特定、処理することができるか又は記憶モジュール220によって記憶することができるフォーマットにすることを含むことができる。ドライバー情報解析ユニット425は、処理モジュール210によって処理されるか又は記憶モジュール220に記憶される情報のフォーマットを、ドライバー端末デバイス140の命令又は好みに基づいて、ドライバー端末デバイス140によってアクセス又は選択することができるフォーマットに変換することもできる。ドライバー情報解析ユニット425は、フォーマット変換された情報をドライバー情報送信ユニット435に提供することができる。
ドライバー情報送信ユニット435は、ドライバー端末デバイス140への情報(例えば、オーダープッシュエンジン110が、ドライバー端末デバイス140に送信するように要請する情報)を、ネットワーク150を介してドライバー端末デバイス140に送信することができる。ドライバー情報送信ユニット435によって送信される情報は、オン・デマンドサービスシステム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)によって確認された1人以上の乗客の輸送サービスオーダーの情報であってもよい。また、この送信される情報は、現在位置の周辺エリアにおける交通状況、現在位置の周辺エリアにおける他の情報であってもよい。この送信される情報は、乗客の位置の交通状況、乗客の位置の他の情報であってもよい。この送信される情報は、システム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)からのプロンプトメッセージ若しくは通知、情報源160からのニュース/通知/プロンプトメッセージ、乗客の輸送サービスオーダーに対する他のドライバーの応答(受理、拒否等)等、又はそれらの任意の組み合わせであってもよい。幾つかの実施形態では、ドライバー情報送信ユニット435は、1つ以上の乗客端末デバイス120からのリアルタイム輸送サービスオーダーをドライバー端末デバイス140に送信することができる。幾つかの実施形態では、ドライバー情報送信ユニット435は、1つ以上のドライバー端末デバイス140からの今後の輸送サービスオーダーをドライバー端末デバイス140に送信することができる。ドライバー情報送信ユニット435によって送信される情報は、自然言語によるテキスト情報、又はオーダープッシュエンジン110によって生成されたバイナリー情報であってもよい。この送信される情報は、音声情報(任意の自然言語テキストのテキスト音声変換によって生成された任意のオーディオを含む)、画像情報(例えば、乗客及び1人以上のドライバーの位置がマーキングされた地図インターフェース)等、又はそれらの任意の組み合わせであってもよい。
ドライバー情報受信ユニット415は、有線受信デバイス又は無線受信デバイスを備えることができる。この受信デバイスは、ネットワーク150を介してドライバー端末デバイス140と通信することができる。同様に、ドライバー情報送信ユニット435は、有線送信デバイス又は無線送信デバイスを備えることができる。この送信デバイスは、ネットワーク150を介してドライバー端末デバイス140と通信することができる。
図5は、本開示の幾つかの実施形態に係るユーザー端末デバイスの概略図である。一例として乗客端末デバイス120を取り上げると、乗客端末デバイス120は、図5に示すように、入力/出力モジュール510と、ディスプレイモジュール520と、測位モジュール530と、コミュニケーションモジュール540と、処理モジュール550と、記憶モジュール560とを備えることができる。また、乗客端末デバイスは、より多くのモジュール又は構成要素を備えてもよい。
入力/出力モジュール510は、乗客が、オン・デマンドサービスアプリケーションのオペレーティングシステムインターフェース、画像インターフェース、地図インターフェース、又は入力/出力インターフェースに提供した1つ以上のタイプの入力を受信することができる。入力/出力モジュール510は、情報を1つ以上のタイプの出力で乗客に出力することができる。入力/出力モジュール510は、信号変換等の方法によって乗客又は外部(例えば、周辺環境)の光学的情報、音響的情報、電磁気的情報、機械的情報等の1つ以上のタイプの情報を静止画像、ビデオ、オーディオ、機械的振動等の形態で収集して記録することができる。入力及び/又は出力は、音響信号、光信号、機械的振動信号等、又はそれらの任意の組み合わせの形態であってもよい。ディスプレイモジュール520は、オン・デマンドサービスアプリケーションの画像インターフェース、地図インターフェース、入力/出力オペレーティングインターフェース、オペレーティングシステムインターフェース等を表示することができる。測位モジュール530は、1つ以上の測位/距離測定技術に基づいて乗客の位置及び/又は動作ステータスを求めることができる。より詳細には、例えば、乗客の位置又は動作ステータスを特定することは、乗客の位置、速度、加速度、角速度、経路等、又はそれらの任意の組み合わせ等の1つ以上の動作パラメーターを特定することを含んでもよい。コミュニケーションモジュール540は、乗客端末デバイス120の情報を有線コミュニケーション又は無線コミュニケーションによって送信又は受信することができる。例えば、コミュニケーションモジュール540は、乗客端末デバイス120が乗客インターフェース230を介してオーダープッシュエンジン110に対して情報を送受信することができるように、オーダープッシュエンジン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は、履歴オーダーデータベース610、地図データベース620、ユーザーデータベース630、時間調整データベース640等の1つ以上のサブデータベースを備えることができる。1種類以上の情報がオーダープッシュエンジン110又は他のモジュール/ユニットによって必要とされる幾つかの実施形態では、それらの情報は、データベース130から抽出することができる。
履歴オーダーデータベース610は、履歴オーダーを含むことができ、その内容は、乗客及びドライバーの出発地、目的地、出発地のタイプ、目的地のタイプ、ピックアップ時刻/到着時刻、待ち合わせ位置、運転マイレージ、運転経路、オーダーサービスの運賃、オーダーサービスのチップ、オーダーサービスの料金(tolls)、オーダーサービスのマイレージレート、オーダーサービスの時間単位の運賃、運転時間等に関するものであってもよい。また、履歴オーダーの内容は、サービス中の種々の時点における乗客/ドライバーの位置及び運転速度、平均運転速度、燃料消費、単位距離あたりの燃料消費、履歴オーダーに対する乗客及び/又はドライバーの格付け等に関するものであってもよい。
地図データベース620は、街路、橋梁、建物、商業地区、住宅地区、公共地区(例えば、公園、動物園、植物園等)等の人工物の地理的座標を含むことができる。地図データベース620は、各レベルの行政区画の境界点の地理的座標を含むことができる。地図データベース620は、様々な水域、山岳、森林、湿地等の自然景観の地理的座標を含むことができる。地図データベース620は、上述の物の記述名又は識別情報(例えば、番地、邸宅、河川、ストア等)と、様々な地理的区分の境界点の地理的座標とを含むことができる。地図データベース620は、上記地理的座標に関連した他の情報を記憶することができる。例えば、地図データベース620は、人工物及び自然景観の面積を記憶することができる。地図データベース620は、各レベルの行政区画の面積及び人口も記憶することができる。別の例として、地図データベース620は、人工物、自然景観、行政区画、地理的区分等の画像情報を記憶することができる。
ユーザーデータベース630に記憶された情報は、アカウント名、プロファイル画像、表示名(例えば、ニックネーム)、証拠書類番号(例えば、運転免許証、IDカード等)、登録日、ユーザーレベル/優先度、交通違反歴、運転歴(例えば、飲酒運転)、及びドライバー140の車両の情報等のユーザー120又は140のサービスに関連した情報を含むことができる。ユーザーデータベース630は、クレジット記録、犯罪歴、表彰歴又は報償歴等のユーザー120又は140の他の社会情報を記憶することができる。ユーザーデータベース630は、年齢、性別、国籍、住所、職場、民族、信教、学歴、職歴、結婚歴、身体の健康状態、精神の健康状態、情緒状態、言語能力、特技、政治的偏向、趣味、お気に入りの音楽/TV番組/映画/書物等のユーザー120又は140のプロファイル情報も記憶することができる。
時間調整データベース640は、時間調整の情報を記憶するように構成することができる。この時間調整の情報は、オーダーの実際の運転時間とオーダーの推定運転時間との間のオフセットを指すことができる。幾つかの実施形態では、時間調整の情報は、地理的位置に関するものであってもよい。幾つかの実施形態では、時間調整の情報は、地理的位置が位置するエリアに関するものであってもよい。幾つかの実施形態では、時間調整の情報は、時間に関するものであってもよい。幾つかの実施形態では、時間調整の情報は、履歴オーダーに従って求められてもよい。異なる時間調整量を異なる時間帯の間の同じ位置に割り当てることができる。幾つかの実施形態では、オーダーの時間調整量は、出発位置、目的地、中間位置、オーダーを満たすための時間、出発地と目的地との間の距離等、又はそれらの任意の組み合わせに関するものであってもよい。オーダーの出発地、目的地、及び運転経路が求められる幾つかの実施形態では、オーダープッシュエンジン110は、時間調整データベース640を検索して、オーダーの時間調整量を取得することができる。
時間調整量は、移動又は旅行の推定運転時間と実際の運転時間との間の時間差を表すことができる。幾つかの実施形態では、時間調整量は、推定運転時間を実際の運転時間により近い値に補正又は調整するのに用いることができる。幾つかの実施形態では、時間調整量は、推定運転時間と実際の運転時間との間の差として求めることができる。時間調整量は、正の場合もあるし、負の場合もあるし、0の場合もある。幾つかの実施形態では、時間調整量は、実際の運転時間に対する推定運転時間の比として求めることができる。時間調整量は、1よりも大きい場合もあるし、1未満の場合もあるし、1に等しい場合もある。幾つかの実施形態では、時間調整量を地理的エリア又は時間帯に関連させることができる。
当然ながら、データベース130の上記説明は、例示の目的で提供されているにすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、モジュールを様々な方法で組み合わせることもできるし、サブシステムとして他のモジュールと接続することもできる。本開示の教示の下で、上記全ての機能を実現することを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、幾つかの実施形態では、データベース130は、他のデータベース又はサブデータベースを含んでもよい。そのような全ての変更は、本開示の保護範囲内にある。
図7は、本開示の幾つかの実施形態に係る、オーダープッシュエンジン110によってオーダーをフィルタリングするプロセスの概略フローチャートである。ステップ710において、オーダープッシュエンジン110は、第1のオーダー及び第1のオーダーに関連した情報を取得することができる。第1のオーダー及び第1のオーダーに関連した情報は、1つ以上の乗客端末デバイス120及び/又は1つ以上の情報源160から取得することができる。第1のオーダーは、リアルタイムオーダーであってもよいし、非リアルタイムオーダーであってもよい。幾つかの実施形態では、第1のオーダーは、事前に設定されたピックアップ時刻を有する今後のオーダーであってもよく、この事前に設定されたピックアップ時刻は、ドライバー端末デバイス140によって受信されたものである。第1のオーダーに関連した情報は、第1のオーダーのデバイス情報、乗客情報、時間情報、地理的情報等、又はそれらの任意の組み合わせ等の情報を含むことができるが、これらに限定されるものではない。
幾つかの実施形態では、第1のオーダーに関連したデバイス情報は、第1のオーダーを要求する乗客端末デバイス120の識別情報を含むことができる。幾つかの実施形態では、この識別情報は、一意のものとすることができる。例えば、乗客端末デバイス120の一意の識別情報は、モバイル機器の国際モバイルステーション機器識別情報(IMEI)、媒体アクセス制御(MAC)アドレス等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。当然ながら、モバイル機器の一意の識別情報は、上記で説明した識別情報に限定されるものではない。一意の識別情報は、この分野において知られている他の任意の適した識別情報を含んでもよいし、今後開発されるものであってもよく、モバイル機器識別子(MEID)、電子シリアル番号(ESN)、国際モバイル加入者識別情報(IMSI)等、又はそれらの任意の組み合わせを含むが、これらに限定されるものではない。
幾つかの実施形態では、第1のオーダーに関連した乗客情報は、第1のオーダーを要求する乗客のプロファイル情報、社会情報等を含むことができる。乗客のプロファイル情報は、年齢、性別、国籍、住所、職場、身体の健康状態、精神の健康状態、言語能力、特技等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。乗客の社会情報は、結婚歴、情緒状態、民族性、信教、職歴、学歴、政治的偏向、クレジット記録、犯罪歴、表彰歴若しくは報償歴、趣味、お気に入りの音楽/テレビ番組/映画/書物等、又はそれらの任意の組み合わせを含むことができる。
幾つかの実施形態では、第1のオーダーに関連した時間情報は、第1のオーダーのピックアップ時刻情報、到着時刻情報、及び運転時間情報を含むことができる。幾つかの実施形態では、ピックアップ時刻情報は、現在時刻、乗客によって指定されたピックアップ時刻、実際のピックアップ時刻等とすることができる。幾つかの実施形態では、到着時刻情報は、乗客によって指定された到着時刻、推定到着時刻、実際の到着時刻等とすることができる。幾つかの実施形態では、運転時間情報は、第1のオーダーを完了する実際の時間、システム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)によって推定された運転時間、サードパーティ(例えば、サードパーティの地図ソフトウェア又は地図アプリケーション)によって推定された運転時間、乗客によって予想された運転時間等であってもよい。
幾つかの実施形態では、第1のオーダーに関連した地理的情報は、第1のオーダーに関連した出発位置情報、目的地情報、経路情報、又は他の任意の情報を含むことができる。幾つかの実施形態では、出発位置情報は、第1のオーダーの、乗客端末デバイス120において乗客によって指定又は選択された出発位置、実際の出発位置等であってもよい。幾つかの実施形態では、目的地情報は、第1のオーダーの、乗客端末デバイス120において乗客によって指定又は選択された目的地、実際の目的地等であってもよい。幾つかの実施形態では、経路情報は、乗客及び/又はドライバーによって指定又は提案された運転経路、システム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)によって推奨された運転経路、サードパーティ(例えば、サードパーティの地図ソフトウェア又は地図アプリケーション)によって推奨された運転経路、実際の運転経路等であってもよい。
ステップ720において、オーダープッシュエンジン110は、第2のオーダー及び第2のオーダーに関連した情報を、ネットワーク150を介して取得することができる。第2のオーダー及び第2のオーダーに関連した情報は、1つ以上の乗客端末デバイス120又は1つ以上の情報源160によって提供することができる。第2のオーダーは、単一のオーダーであってもよいし、単一のオーダーの集合であってもよい。第2のオーダーは、リアルタイムオーダーであってもよいし、非リアルタイムオーダーであってもよい。幾つかの実施形態では、第2のオーダーは、指定されたピックアップ時刻を有する今後のオーダーであってもよい。幾つかの実施形態では、第2のオーダーは、フィルタリング又はプッシュされるオーダーであってもよい。第2のオーダーに関連した情報は、第2のオーダーのデバイス情報、乗客情報、時間情報、地理的情報等、又はそれらの任意の組み合わせ等の情報を含むことができるが、これらに限定されるものではない。
幾つかの実施形態では、第2のオーダーに関連したデバイス情報は、第2のオーダーを要求する乗客端末デバイス120の識別情報を含むことができる。幾つかの実施形態では、この識別情報は、一意のものとすることができる。例えば、乗客端末デバイス120の一意の識別情報は、モバイル機器の国際モバイルステーション機器識別情報、媒体アクセス制御(MAC)アドレス等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。当然ながら、モバイル機器の一意の識別情報は、上記で説明した識別情報に限定されるものではない。一意の識別情報は、この分野において知られている他の任意の適した識別情報を含んでもよいし、今後開発されるものであってもよく、モバイル機器識別子(MEID)、電子シリアル番号(ESN)、国際モバイル加入者識別情報(IMSI)等、又はそれらの任意の組み合わせを含むが、これらに限定されるものではない。
幾つかの実施形態では、第2のオーダーに関連した乗客情報は、第2のオーダーを要求する乗客のプロファイル情報、社会情報等を含むことができる。乗客のプロファイル情報は、年齢、性別、国籍、住所、職場、身体の健康状態、精神の健康状態、言語能力、特技等、又はそれらの任意の組み合わせを含むことができるが、これらに限定されるものではない。乗客の社会情報は、結婚歴、情緒状態、民族性、信教、職歴、学歴、政治的偏向、クレジット記録、犯罪歴、表彰歴若しくは報償歴、趣味、お気に入りの音楽/テレビ番組/映画/書物等、又はそれらの任意の組み合わせを含むことができる。
幾つかの実施形態では、第2のオーダーに関連した時間情報は、第2のオーダーに関連したピックアップ時刻情報、到着時刻情報、及び運転時間情報を含むことができる。幾つかの実施形態では、ピックアップ時刻情報は、現在時刻、乗客によって指定されたピックアップ時刻、実際のピックアップ時刻等とすることができる。幾つかの実施形態では、到着時刻情報は、乗客によって指定された到着時刻、推定到着時刻、実際の到着時刻等とすることができる。幾つかの実施形態では、運転時間情報は、第2のオーダーを完了する実際の時間、システム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)によって推定された運転時間、サードパーティ(例えば、サードパーティの地図ソフトウェア又は地図アプリケーション)によって推定された運転時間、乗客が予想した運転時間等であってもよい。
幾つかの実施形態では、第2のオーダーに関連した地理的情報は、第2のオーダーに関連した出発地情報、目的地情報、経路情報、又は他の任意の情報を含むことができる。幾つかの実施形態では、出発位置情報は、第2のオーダーの、乗客端末デバイス120において乗客によって指定又は選択された出発位置、実際の出発位置等であってもよい。幾つかの実施形態では、目的地情報は、第2のオーダーの、乗客端末デバイス120において乗客によって指定又は選択された目的地、実際の目的地等であってもよい。幾つかの情報においては、経路情報は、乗客及び/又はドライバーによって指定又は提案された運転経路、システム105及び/又はシステム105の1つ以上の構成部分(例えば、オーダープッシュエンジン110)によって推奨された運転経路、サードパーティ(例えば、サードパーティの地図ソフトウェア又は地図アプリケーション)によって推奨された運転経路、実際の運転経路等であってもよい。
幾つかの実施形態では、第2のオーダーに関連した情報のタイプは、第1のオーダーに関連した情報のタイプと同じであってもよい。例えば、第2のオーダー及び第1のオーダーに関連した情報は、出発位置、目的地、ピックアップ時刻、到着時刻、運転時間等、又はそれらの任意の組み合わせの情報を含むことができる。
幾つかの実施形態では、第2のオーダーに関連した情報のタイプは、第1のオーダーに関連した情報のタイプと異なってもよい。例えば、第2のオーダーに関連した情報は、出発地及びピックアップ時刻の情報を含むことができる。第1のオーダーに関連した情報は、出発地、目的地、ピックアップ時刻、到着時刻、運転時間等の情報を含むことができる。
当然ながら、第2のオーダーの乗客及び第1のオーダーの乗客は、同じ場合もあるし、異なる場合もある。幾つかの実施形態では、第2のオーダーは、1つのオーダーのみを含むことができる。幾つかの実施形態では、第2のオーダーは、複数の異なるオーダーを含むことができる。
当然ながら、オーダープッシュエンジン110によって第2のオーダー及び第2のオーダーに関連した情報を取得することの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、本開示の教示の下で、上記機能の全てが実現されることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、幾つかの実施形態では、オーダープッシュエンジン110は、第1のオーダーと、第2のオーダーと、第1のオーダー及び第2のオーダーに関連した情報とを同時に取得してもよい。そのような全ての変更は、本開示の保護範囲内にある。
ステップ730において、オーダープッシュエンジン110の処理モジュール210は、第1のオーダーに関連した情報に基づいて第2のオーダーをフィルタリングして、1つ以上のフィルタリングされた第2のオーダーを取得することができる。第2のオーダーは、1つ以上の基準に基づいて処理モジュール210によってフィルタリングすることができる。幾つかの実施形態では、この基準は、地理、時間、運転方向等における第2のオーダーに対する第1のオーダーの近接性を含むことができるが、これらに限定されるものではない。地理、時間、運転方向等における上記近接性は、処理モジュール210の決定ユニット350によって判断することができる。第2のオーダーは、上記基準のうちの1つ以上に基づいて処理モジュール210によってフィルタリングすることができる。
幾つかの実施形態では、地理における第2のオーダーに対する第1のオーダーの近接性は、第1のオーダーと第2のオーダーとの間の距離に基づくことができる。幾つかの実施形態では、第1のオーダーと第2のオーダーとの間の距離は、第1のオーダーの目的地と第2のオーダーの出発位置との間の距離を指すことができる。幾つかの実施形態では、第1のオーダーと第2のオーダーとの間の距離は、第1のオーダーの出発位置と第2のオーダーの目的地との間の距離を指すことができる。
幾つかの実施形態では、第2のオーダーに対する第1のオーダーの地理における近接性は、第1のオーダーと第2のオーダーとの間の距離を事前設定閾値距離と比較して判断することによって取得することができる。例えば、第1のオーダーの出発地と第2のオーダーの目的地との間の道路距離が特定の範囲(例えば、3km)以内にある場合、第1のオーダー及び第2のオーダーは、距離が接近しているとみなすことができる。幾つかの実施形態では、距離における近接性は、2つの位置(例えば、第1のオーダーの目的地及び第2のオーダーの出発位置、第2のオーダーの目的地及び第1のオーダーの出発位置等)の地理的エリアに基づいて判断することによって取得することができる。例えば、第1のオーダーの目的地及び第2のオーダーの出発位置が同じ地理的エリア(例えば、商業地区又は住宅地区)内にある場合、第1のオーダー及び第2のオーダーは、地理的に接近しているとみなすことができる。
幾つかの実施形態では、時間における第2のオーダーに対する第1のオーダーの近接性は、第2のオーダーの到着時刻に対する第1のオーダーのピックアップ時刻の近接性を指すことができる。幾つかの実施形態では、時間における第2のオーダーに対する第1のオーダーの近接性は、第2のオーダーのピックアップ時刻に対する第1のオーダーの到着時刻の近接性を指すことができる。第1のオーダーの到着時刻と第2のオーダーのピックアップ時刻との間の時間間隔が、事前設定閾値時間未満であるとき、これらの2つのオーダーは、時間が接近しているとみなすことができる。この閾値時間は、30分、20分、10分、5分等であってもよい。
当然ながら、地理及び時間における第2のオーダーに対する第1のオーダーの近接性の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、本開示の教示の下で、上記全ての機能を実現することを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、距離は、道路距離、運転距離、又は直線距離であってもよい。別の例として、地理における近接性の判断結果は、地理における近接性のスコアであってもよいし、地理の出力結果が接近しているか若しくは接近していないかであってもよい。
幾つかの実施形態では、運転方向における第2のオーダーに対する第1のオーダーの近接性は、全道程中の第2のオーダーの運転方向に対する第1のオーダーの運転方向の近接性を指すことができる。幾つかの実施形態では、運転方向における第2のオーダーに対する第1のオーダーの近接性は、到着時刻における第2のオーダーの運転方向に対するピックアップ時刻における第1のオーダーの運転方向の近接性を指すことができる。幾つかの実施形態では、運転方向における第2のオーダーに対する第1のオーダーの近接性は、ピックアップ時刻における第2のオーダーの運転方向に対する到着時刻における第1のオーダーの運転方向の近接性を指すことができる。幾つかの実施形態では、運転方向における第2のオーダーに対する第1のオーダーの近接性は、2つの運転速度の間の角度によって表すことができる。到着時刻における第1のオーダーの運転速度とピックアップ時刻における第2のオーダーの運転速度との間の角度が閾値、例えば、0.5ラジアン未満である幾つかの実施形態では、第1のオーダー及び第2のオーダーは、運転方向が接近していると判断することができる。例えば、ドライバーの車両が、第1のオーダーが完了したときに北京市の東部第3環状道路の南北間道の近くに位置しているとともに、第2のオーダーの出発位置も、北京市の東部第3環状道路の南北間道近くに位置し、第2のオーダーが、車両が第1のオーダーの目的地から南に運転を継続することを必要とするものである場合、これらの2つのオーダーの運転方向は、接近しているとみなすことができる。
当然ながら、運転方向の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。実際には、運転方向における近接性の判断は、他の因子又は変数に基づいていてもよい。例えば、運転方向における第2のオーダーに対する第1のオーダーの近接性は、全道程中における第1のオーダーの変位ベクトルと第2のオーダーの変位ベクトルとの間の角度に基づいて判断されてもよい。別の例として、運転方向における第2のオーダーに対する第1のオーダーの近接性は、終了時の或る期間(例えば、5分、10分等)内の第1のオーダーの変位ベクトルと、開始時の或る期間(例えば、5分、10分等)内の第2のオーダーの変位ベクトルとの間の角度に基づいて判断されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
ステップ740において、オーダープッシュエンジン110は、フィルタリングされた第2のオーダー(複数の場合もある)を、ドライバーインターフェース240を通じてネットワーク150を介して1つ以上のドライバー端末デバイス140にプッシュすることができる。
当然ながら、フィルタリングされた第2のオーダーをオーダープッシュエンジン110によってプッシュすることの上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、本開示の教示の下で、上記全ての機能を実現することを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、オーダープッシュエンジン110は、ステップ740において、第1のオーダー及びフィルタリングされた第2のオーダーを、ネットワーク150を介して1つ以上のドライバー端末デバイス140に同時に送信してもよい。別の例として、オーダープッシュエンジン110は、ステップ740において、第1のオーダー及びフィルタリングされた第2のオーダーを、第2のオーダーに関連した乗客端末デバイス120に同時に送信してもよい。そのような全ての変更は、本開示の保護範囲内にある。
図8−Aは、本開示の幾つかの実施形態に係る、オーダーをフィルタリングするプロセスの一例のフローチャートである。ステップ810において、オーダープッシュエンジン110は、第1のオーダー及び第2のオーダーに関連した情報を、ネットワーク150を介して取得することができる。この第1のオーダー及び/又は第2のオーダーに関連した情報は、1つ以上の乗客端末デバイス120又は1つ以上の情報源160から取得することができる。第1のオーダー及び/又は第2のオーダーは、リアルタイムオーダーであってもよいし、非リアルタイムオーダーであってもよい。第1のオーダー及び第2のオーダーに関連した情報の説明は、図7に見出すことができ、ここでは繰り返さない。
ステップ820において、オーダープッシュエンジン110は、データベース130を介して履歴オーダーの実行の平均速度を取得することができる。
履歴オーダーは、1つ以上のオーダーを含むことができる。幾つかの実施形態では、履歴オーダーは、第1のオーダーに関連したものとすることができる。幾つかの実施形態では、履歴オーダーは、ドライバー端末デバイス140に関連したもの(すなわち、ドライバーの情報に関連したもの)とすることができる。ドライバーの情報は、本開示の他の個所に見出すことができ、ここでは繰り返さない。幾つかの実施形態では、履歴オーダーは、第1のオーダーとドライバーの情報との双方に関連したものとすることができる。幾つかの実施形態では、ドライバーの情報に関連した履歴オーダーは、ドライバー端末デバイス140によって受信又は実施された過去のオーダーの幾つか又は全てとすることができる。幾つかの実施形態では、ドライバーの情報に関連した履歴オーダーは、特定のエリア及び/又は特定の時間帯若しくは特定の時点においてドライバー端末デバイス140によって受信及び実行されたオーダーとすることができる。ドライバーの情報に関連した履歴オーダーに従って、異なる時点及び/又は異なるエリアにおける平均運転速度及び運転速度をドライバーのために取得することができる。したがって、履歴オーダーの平均運転速度を入手することができる。複数の履歴オーダーが特定の条件を満たす幾つかの実施形態では、オーダープッシュエンジン110は、履歴オーダーのうちの1つの運転速度、又は履歴オーダーの幾つか若しくは全ての平均運転速度を求めることができる。幾つかの実施形態では、履歴オーダーの平均運転速度は、複数の履歴オーダーの全ての運転速度の算術平均とすることができる。幾つかの実施形態では、履歴オーダーの平均運転速度は、複数の履歴オーダーの全ての運転速度の幾何平均とすることができる。幾つかの実施形態では、履歴オーダーの平均運転速度は、複数の履歴オーダーの全ての運転速度の中央値であってもよい。幾つかの実施形態では、複数の履歴オーダーの平均運転速度を求めることに、履歴オーダーの幾つか又は全てを用いてもよい。
オーダープッシュエンジン110は、本開示の幾つかの実施形態によれば、履歴オーダーの平均速度を取得する前に、履歴オーダーデータベース610において、第1のオーダーに関連した1つ以上の履歴オーダーを認識することができる。幾つかの実施形態では、履歴オーダーと第1のオーダーとの間の関連付けは、第1のオーダーの出発位置及び/又は目的地と、履歴オーダーの出発地及び/又は目的地とが、同じ地理的エリアに存在し得ることを示すことができる。幾つかの実施形態では、履歴オーダーと第1のオーダーとの間の関連付けは、第1のオーダーのピックアップ時刻及び/又は到着時刻と、履歴オーダーのピックアップ時刻及び/又は到着時刻とが、同じ時間帯内に存在し得ることを示すことができる。幾つかの実施形態では、履歴オーダーと第1のオーダーとの間の関連付けは、第1のオーダー及び履歴オーダーの運転経路が同じ地理的エリアを通過することを示すことができる。幾つかの実施形態では、異なる時間帯における履歴オーダーは、上記の様々な履歴情報又は他の履歴情報の処理に対して同じ影響を有する場合もあるし、異なる影響を有する場合もある。例えば、現在のオーダーの時間帯に比較的近い時間帯内に実行される履歴オーダーの情報と、現在のオーダーの時間帯から比較的離れた時間帯内に実行される履歴オーダーの情報とが、処理結果に対して同じ影響を有する場合がある。別の例として、現在のオーダーの時間帯に比較的近い時間帯内に実行される履歴オーダーの情報は、処理結果に対してより多くの影響を有する場合がある一方、現在のオーダーの時間帯から比較的離れた時間帯内に実行される履歴オーダーの情報は、処理結果に対してそれよりも少ない影響を有する場合もあるし、影響を有しない場合もある。
幾つかの実施形態では、必要に応じて地理的エリアを構成することができる。例えば、地理的エリアは、経度緯度、人口分布、商業活動、機能、用途等、又はそれらの任意の組み合わせに基づいて分割することができる。
幾つかの実施形態では、必要に応じて時間帯を構成することができる。幾つかの実施形態では、1日を同じ又は異なる長さの複数の時間帯に分割することができる。例えば、オーダープッシュエンジン110は、1日を48個の時間帯に分割することができる。各時間帯の長さは、30分とすることができる。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、上記地理的エリア及び時間帯の分割原理についての本開示の教示の下で、運転速度が正しく予測されることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、地理的エリアは、特定の都市の交通状況に従って動的に分割されてもよい。別の例として、異なる日付における地理的エリアは、交通状況の周期的傾向に従って異なって分割されてもよい。そのような全ての変更は、本開示の保護範囲内にある。別の例として、時間帯は、週内の異なる日付(例えば、平日及び週末)に従って異なって分割されてもよい。別の例として、時間帯は、1日のリアルタイムの交通状況に従って動的に分割されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
オーダープッシュエンジン110は、履歴オーダーの出発位置、目的地、運転経路、ピックアップ時刻、到着時刻等、又はそれらの任意の組み合わせに基づいて履歴オーダーを認識することができる。
履歴オーダーの出発位置又は目的地が特定の地理的エリアに位置する幾つかの実施形態では、オーダープッシュエンジン110は、履歴オーダーの運転速度を特定の地理的エリアに関連付けることができる。したがって、オーダープッシュエンジン110は、特定の地理的エリア内の履歴オーダーの運転速度を求めることができる。複数の履歴オーダーが特定の条件を満たす幾つかの実施形態では、オーダープッシュエンジン110は、1つの履歴オーダーの運転速度、又は履歴オーダーの幾つか若しくは全ての平均運転速度を求めることができる。幾つかの実施形態では、平均運転速度は、複数の運転速度の算術平均とすることができる。幾つかの実施形態では、平均運転速度は、複数の運転速度の幾何平均とすることができる。幾つかの実施形態では、平均運転速度は、複数の運転速度の中央値とすることができる。幾つかの実施形態では、平均運転速度を求めるのに履歴オーダーの幾つか又は全てを用いてもよい。
履歴オーダーの出発位置又は目的地が特定の地理的エリアに位置し、ピックアップ時刻又は到着時刻が特定の時間帯内にある幾つかの実施形態では、オーダープッシュエンジン110は、履歴オーダーの運転速度を特定の地理的エリア及び特定の時間帯に関連付けることができる。したがって、オーダープッシュエンジン110は、特定の地理的エリア及び特定の時間帯内の履歴オーダーの運転速度を取得することができる。複数の履歴オーダーが特定の条件を満たす幾つかの実施形態では、オーダープッシュエンジン110は、1つの履歴オーダーの運転速度、又は履歴オーダーの幾つか若しくは全ての平均運転速度を求めることができる。幾つかの実施形態では、平均運転速度は、複数の運転速度の算術平均とすることができる。幾つかの実施形態では、平均運転速度は、複数の運転速度の幾何平均とすることができる。幾つかの実施形態では、平均運転速度は、複数の運転速度の中央値とすることができる。幾つかの実施形態では、平均運転速度を求めることに、履歴オーダーの幾つか又は全てを用いてもよい。
本開示の幾つかの実施形態によれば、履歴オーダーの平均運転速度は、履歴オーダーの第1の位置情報及び第2の位置情報に基づいて履歴オーダーの運転距離情報を取得することと;履歴オーダーの第1の時間情報及び第2の時間情報に基づいて履歴オーダーの運転時間情報を取得することと;運転距離情報及び運転時間情報に基づいて履歴オーダーの平均運転速度を入手することとによって入手することができる。
ステップ830において、オーダープッシュエンジン110の処理モジュール210は、履歴オーダーの平均運転速度及び第1のオーダーに関連した情報に基づいて、第1のオーダーを完了するための第1の時間長L1を求めることができる。
幾つかの実施形態では、処理モジュール210は、事前に設定された地理的エリア、事前設定時間帯内の履歴オーダーの平均運転速度、第1のオーダーの出発位置情報及び目的地情報に基づいて第1の時間長L1を推定することができる。
本開示の幾つかの実施形態によれば、処理モジュール210の経路計画ユニット370は、第1のオーダーの出発位置情報及び目的地情報に基づいて経路計画アルゴリズムを用いて1つ以上の運転経路を入手することができる。決定ユニット380は、入手された運転経路に基づいて運転経路の運転時間を求めることができる。経路計画アルゴリズムは、従来の経路計画アルゴリズム、グラフィックスアルゴリズム、インテリジェントバイオニックアルゴリズム及び他のアルゴリズムを含むことができるが、これらに限定されるものではない。従来の経路計画アルゴリズムは、焼きなまし法(SA)アルゴリズム、人工電位法、ファジー論理算術、タブーサーチ(TS)アルゴリズム等を含むことができるが、これらに限定されるものではない。グラフィックスアルゴリズムは、C空間アルゴリズム(画像可視空間アルゴリズムとも呼ばれる)、自由空間アルゴリズム、グリッドアルゴリズム等を含むことができるが、これらに限定されるものではない。インテリジェントバイオニックアルゴリズムは、蟻コロニーアルゴリズム、ニューラルネットワークアルゴリズム、遺伝的アルゴリズム(GA)、粒子群最適化(PSO)、適応型粒子群最適化(適応型PSO)、離散型粒子群最適化(離散型PSO)等を含むことができるが、これらに限定されるものではない。他のアルゴリズムは、ダイクストラアルゴリズム、高速最短経路アルゴリズム(SPFA:shortest path faster algorithm)、ベルマン−フォードアルゴリズム、ジョンソンアルゴリズム、フォールバックアルゴリズム、フロイド−ワーシャルアルゴリズム等を含むことができるが、これらに限定されるものではない。
幾つかの実施形態では、経路計画ユニット370は、運転経路が通過する地理的エリアを求めることができる。経路計画ユニット370は、1つ以上の運転経路を入手した後、この地理的エリアにおける運転距離を求めることができる。決定ユニット380は、履歴オーダーの所与の時間帯内における各地理的エリアにおける運転距離及び各地理的エリアにおける平均運転速度に基づいて各地理的エリアにおける第1のオーダーの運転時間を求めることができる。決定ユニット380は、通過した地理的エリアの全てにおける運転時間の統計解析を実行することができる。したがって、決定ユニット380は、地理的エリアの全てを通る運転時間を入手することができる。入手された運転時間は、第1のオーダーの第1の時間長L1として指定することができる。
ステップ840において、処理モジュール210は、第1の時間長L1を入手した後、第2のオーダーをフィルタリングすることができる。幾つかの実施形態では、処理モジュール210は、第1のオーダーの到着時刻に対する第2のオーダーのピックアップ時刻の近接性に基づいて第2のオーダーをフィルタリングすることができる。幾つかの実施形態では、第1のオーダーの到着時刻は、第1の時間長L1及び第1のオーダーのピックアップ時刻に基づいて推定することができる。幾つかの実施形態では、処理モジュール210は、第1のオーダーの目的地に対する第2のオーダーの出発位置の近接性に基づいて第2のオーダーをフィルタリングすることができる。
幾つかの実施形態では、処理モジュール210の決定ユニット380は、第1の時間長L1及び第1のオーダーのピックアップ時刻に基づいて第1のオーダーの推定到着時刻を求めることができる。
幾つかの実施形態では、決定ユニット350は、第1のオーダーの推定到着時刻を第2のオーダーのピックアップ時刻と比較して1つ以上の第2のオーダーを除去することができる。例えば、第1のオーダーの推定到着時刻よりも早いピックアップ時刻を有する第2のオーダーを除去することができる。別の例として、第2のオーダーのピックアップ時刻は、第1のオーダーの推定到着時刻よりも早くてもよいし、遅くてもよい。第2のオーダーのピックアップ時刻と第1のオーダーの推定到着時刻との間の時間間隔が閾値時間よりも大きい場合、この第2のオーダーを除去することができる。この閾値時間は、第2のオーダーの出発位置の地理的エリア、それらの地理的エリアにおけるリアルタイム交通状況、ドライバー及び/又は乗客によって設定された時間許容範囲等、又はそれらの任意の組み合わせに基づいて変化し得る。幾つかの実施形態では、閾値時間は、2分、5分、10分、15分等とすることができる。
ドライバー及び/又は乗客によって設定された時間許容範囲は、ドライバー及び/又は乗客による他方の者の早着又は遅着の許容範囲の程度を表すことができる。幾つかの実施形態では、ドライバー及び/又は乗客は、他方の者の早着及び遅着に対する乗客又はドライバーの許容範囲の程度にそれぞれ対応する時間許容範囲の2つの値を設定することができる。これらの時間許容度の2つの値は、同じであってもよいし、異なってもよい。例えば、乗客は、ドライバーが20分早く到着することを受け入れてもよいが、ドライバーが5分よりも長く遅れることを許容することはできない。ここで、早着及び遅着についての乗客の時間許容範囲は、それぞれ20分及び5分とすることができる。別の例として、ドライバーは、乗客が20分前に到着することを許容してもよいが、乗客が15分よりも長く遅れることを許容することはできない。ここで、乗客の早着及び遅着についての時間許容範囲は、それぞれ20分及び15分とすることができる。幾つかの実施形態では、ドライバー及び/又は乗客の時間許容範囲は、同じ値であってもよい。例えば、ドライバー又は乗客が受け入れる待ち時間は、他方の者の遅着を越える時間許容範囲と同じであってもよい。
当然ながら、時間許容範囲の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、上記で説明した時間許容範囲の機能及び原理についての本開示の教示の下で、第2のオーダーを正確にフィルタリングすることができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、ドライバーの時間許容範囲は省略されてもよく、乗客の時間許容範囲のみが考慮されてもよい。別の例として、他方の者の早着に対するドライバー及び/又は乗客の時間許容範囲は省略されてもよく、他方の者の遅着に対するドライバー及び/又は乗客の時間許容範囲のみが考慮されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
幾つかの実施形態では、処理モジュール210の決定ユニット380は、第2のオーダーのそれぞれの出発位置と第1のオーダーの目的地との間の距離を、対応する位置情報に基づいて求めることができる。幾つかの実施形態では、この距離は、直線距離、道路距離、運転距離等であってもよい。決定ユニット350は、第2のオーダーの出発位置と第1のオーダーの目的地との間の距離を求めた後、これらの距離と閾値距離との間の相関に基づいて第2のオーダーをフィルタリングすることができる。幾つかの実施形態では、決定ユニット350は、第2のオーダーの出発地と第1のオーダーの目的地との間の距離が閾値距離よりも大きいとの判断に応答して、第2のオーダーをフィルタリング除去することができる。幾つかの実施形態では、この閾値距離は、第2のオーダーの出発地の地理的エリア、それらの地理的エリアにおけるリアルタイムの交通状況、ドライバー及び/又は乗客によって設定された距離範囲等、又はそれらの任意の組み合わせに基づいて変化し得る。幾つかの実施形態では、この閾値距離は、0.5キロメートル、1キロメートル、1.5キロメートル、2キロメートル等であってもよい。
オーダープッシュエンジン110は、第2のオーダーのうちの1つ以上をフィルタリング除去した後、1つ以上のフィルタリングされた第2のオーダーを取得することができる。
ステップ850において、オーダープッシュエンジン110は、フィルタリングされた第2のオーダーを、ドライバーインターフェース240を通じてネットワーク150を介して1つ以上のドライバー端末デバイス140にプッシュすることができる。幾つかの実施形態では、オーダープッシュエンジン110は、フィルタリングされた第2のオーダーを1つ以上のドライバー端末デバイス140にプッシュすることに加えて、第2のオーダーを要求した乗客端末デバイス120に第1のオーダーに関連した情報を送信することもできる。この情報は、第1のオーダーの出発位置及び/又は目的地、第1のオーダーのピックアップ時刻及び/又は推定到着時刻等であってもよい。
オーダープッシュエンジン110は、ステップ830において第1のオーダーを完了するための第1の時間長L1を求めた後、1つ以上の他の動作も実行してもよい。例えば、オーダープッシュエンジン110は、第1のオーダーを実行するドライバー端末デバイス140と通信してもよい。
ステップ860において、オーダープッシュエンジン110は、第1のオーダーを完了するための実際の時間長を、ネットワーク150を介してドライバーインターフェース240及び/又は乗客インターフェース230を通じて取得することができる。幾つかの実施形態では、乗客端末デバイス120及び/又はドライバー端末デバイス140は、第1のオーダーの実行中に、オーダープッシュエンジン110との定期的又は不定期的なコミュニケーションを維持することができる。乗客端末デバイス120及び/又はドライバー端末デバイス140は、現在位置及び/又は現在時刻についての情報を、ネットワーク150を介してオーダープッシュエンジン110に送信することができる。輸送サービスの開始時、すなわち、乗客端末デバイス120及び/又はドライバー端末デバイス140が、第1のオーダーにおいて必要とされるサービスの開始を確認した時刻において、オーダープッシュエンジン110は、実際のピックアップ時刻及び/又は出発地を取得することができる。輸送サービスの終了時、すなわち、乗客端末デバイス120及びドライバー端末デバイス140が第1のオーダーの目的地に到着した時刻において、オーダープッシュエンジン110は、実際の到着時刻及び/又は目的地の位置を取得することができる。実際のピックアップ時刻及び/又は実際の到着時刻に従って、オーダープッシュエンジン110の決定ユニット380は、第1のオーダーを完了するための実際の時間長を求めることができる。
ステップ870において、オーダープッシュエンジン110は、第1の時間長の時間調整量を取得することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、第1のオーダーを完了するのに必要とされる実際の時間に基づく第1の時間長の時間調整量を取得することができる。この時間調整量は、第1のオーダーを完了するための推定運転時間と実際の運転時間との間の差を表すことができる。幾つかの実施形態では、この時間調整量は、実際の時間長と求められた第1の時間長L1との間の差として求めることができる。この時間調整量は、正の場合もあるし、負の場合もあるし、0の場合もある。
当然ながら、上記例は、単に例示の目的で提供されているにすぎず、本開示の範囲を限定することを意図するものではない。当業者であれば、時間調整量の機能及び原理についての本開示の教示の下で、第2のオーダーを正確にフィルタリングすることができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、時間調整量は、求められた第1の時間長L1に対する実際の時間長の比として定義されてもよい。時間調整量は、1よりも大きい場合もあるし、1未満の場合もあるし、1に等しい場合もある。そのような全ての変更は、本開示の保護範囲内にある。
幾つかの実施形態では、第1のオーダーが完了した後に、オーダープッシュエンジン110は、第1の時間長の時間調整量を取得することができる。複数のオーダーに対して同様の計算及び操作を実施することによって、オーダープッシュエンジン110は、種々の時間調整量を収集した後、所与の地理的エリア及び/又は所与の時間帯に基づいてオーダーを分割することができる。同じ地理的エリア及び同じ時間帯に関して、オーダープッシュエンジン110は、1つ以上の時間調整量の情報を取得することができる。幾つかの実施形態では、1つ以上の時間調整量の平均値をオーダープッシュエンジン110の時間調整データベース640に記憶することができる。幾つかの実施形態では、この平均値は、算術平均とすることができる。幾つかの実施形態では、この平均値は、幾何平均とすることができる。
幾つかの実施形態では、オーダープッシュエンジン110は、ステップ870の後にステップ880に進むことができる。時間調整量に関連したデータは、記憶するために時間調整データベース640に送信することができる。幾つかの実施形態では、時間調整量に関連したデータは、時間調整量の地理的エリア及び/又は時間帯に従って記憶することができる。例えば、異なる時間調整量は、同じ位置における異なる時間帯に割り当てることができる。別の例として、異なる時間調整量は、同じ時間帯の間の異なる位置に割り当てることができる。地理的エリア及び時間帯の分割は、上記説明に見出すことができ、ここでは繰り返さない。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、時間調整量の趣意及び原理についての本開示の教示の下で、第2のオーダーを正確にフィルタリングすることができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、オーダープッシュエンジン110は、リアルタイムの道路状況及びドライバーの実際の位置に従って、ステップ830を反復して実施してもよい。ステップ830は、オーダーを実施するときに変化する地理的エリア及び時間帯を用いて到着時刻を推定することを含んでもよい。ステップ830を反復して実施することによって、目的地の推定到着時刻を動的に調整することができる。したがって、第1のオーダーの到着時刻のその後の推定の確度を更に改善することができる。そのような全ての変更は、本開示の保護範囲内にある。
本開示の幾つかの実施形態によれば、時間調整量又は時間調整量の平均値は、第1のオーダーの推定された第1の時間長を補償して推定値と現実の値との間の誤差を低減するのに用いることができる。幾つかの実施形態では、オーダープッシュエンジン110は、平均運転速度に基づいて求められた第1の時間長に時間調整量又は時間調整量の平均値を付加することによって新たな時間長を取得することができる。この新たな時間長は、第1のオーダーを完了するための運転時間を推定するとともに第2のオーダーをフィルタリングして確度を更に改善するのに用いることができる。
当然ながら、ステップ810〜ステップ880の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、これらのステップの機能及び原理についての本開示の教示の下で、第2のオーダーを正確にフィルタリングすることができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、オーダープッシュエンジン110は、ステップ830の後に時間調整量を考慮してもよい。オーダープッシュエンジン110は、第1のオーダーを完了するための比較的正確な時間を入手するために、ステップ830において、時間調整量を適用して、求められた第1の時間長L1を補償してもよい。その場合、オーダープッシュエンジン110は、補償された時間に従って第2のオーダーをフィルタリングしてもよい。別の例として、ステップ860〜ステップ880は、プロセス全体を簡潔にするために省略されてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図8−Bは、本開示の別の実施形態に係る、オーダーをフィルタリングするプロセスの一例のフローチャートである。この実施形態では、ドライバー端末デバイス140は、第1のオーダーを実行しているか又は実施するドライバー端末デバイスとすることができる。ドライバー端末デバイス140のタイプについての説明は、上記説明に見出すことができ、ここでは繰り返さない。
ステップ815において、ドライバー端末デバイス140は、現在位置に関連した情報を取得することができる。ドライバー端末デバイス140は、1つ以上の方法を用いて位置に関連した情報を取得することができる。幾つかの実施形態では、ドライバー端末デバイス140は、測位モジュール530を介して1つ以上の測位技術を用いてドライバーの現在位置を求めることができる。幾つかの実施形態では、ドライバー端末デバイス140は、ドライバーからのユーザー入力及び/又は操作命令を入力/出力モジュール510によって受け取ることができる。したがって、ドライバー端末デバイス140は、当該ドライバー端末デバイス140の現在位置を求めることができる。例えば、ドライバー端末デバイス140は、ディスプレイモジュール520によって地図インターフェース又は任意選択の地理的位置のプルダウンリストを表示することができる。ドライバー端末デバイス140は、地図インターフェース上での操作(例えば、地図アイコンの移動、ポインターの追加等)又はプルダウンリストにおける1つ以上の地理的位置の選択を入出力モジュール510によって受け取ることができる。したがって、ドライバー端末は、現在位置を求めることができる。幾つかの実施形態では、ドライバー端末デバイス140によって取得される現在位置に関連した情報は、現在時刻の情報を更に含んでもよい。
当然ながら、ステップ815の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、ドライバー端末デバイス140によって現在位置を求める方法及び原理についての本開示の教示の下で、現在位置を求めることができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、公共施設に貼付されたバーコード又はクイックレスポンスコードをスキャンすることによって、ドライバー端末デバイス140は、このバーコード又はクイックレスポンスコードに対応する地理的位置情報を取得してもよい。ドライバー端末デバイス140は、取得された地理的位置情報をドライバー端末デバイス140の現在位置として指定してもよい。そのような全ての変更は、本開示の保護範囲内にある。
ドライバー端末デバイス140は、現在位置に関連した情報を取得した後、ステップ825に進むことができる。ドライバー端末デバイス140は、その現在位置に関連した情報をコミュニケーションモジュール540によってインターネットを介して送信することができる。ドライバー端末デバイス140は、オーダープッシュエンジン110、又は1つ以上の乗客端末デバイス120、1つ以上の他のドライバー端末デバイス140、情報源160等の他の任意のターゲットに情報を送信することができる。
幾つかの実施形態では、ステップ815及びステップ825は、並列に実施されてもよいし、遂次的に実施されてもよい。幾つかの実施形態では、ステップ825は、ステップ815の前に実施されてもよい。例えば、公共施設に貼付されたバーコード又はクイックレスポンスコードをスキャンすることによって、ドライバー端末デバイス140は、バーコード又はクイックレスポンスコードに対応する情報を、ネットワーク150を介してオーダープッシュエンジン110又は情報源160に送信してもよい。これに加えて又はこれに代えて、地理的位置情報は、オーダープッシュエンジン110又は情報源160によってバーコード又はクイックレスポンスコードに対応する情報を解析することによって取得されてもよい。その場合、オーダープッシュエンジン110又は情報源160は、地理的位置情報をドライバー端末デバイス140に送信してもよい。そのような全ての変更及び改善は、本開示の保護範囲内にある。
第1のオーダーの目的地に到着した場合の幾つかの実施形態では、ドライバー端末デバイス140は、ステップ835において、第1のオーダーを完了するための実際の時間長をコミュニケーションモジュール540によって送信することができる。ドライバー端末デバイス140が時間長を送信するターゲットは、オーダープッシュエンジン110、他のドライバー端末デバイス140、第1のオーダーに関連した乗客端末デバイス120、情報源160等であってもよい。
幾つかの実施形態では、ドライバー端末デバイス140は、第1のオーダーを完了するための実際の時間長を送信するのではなく、第1のオーダーのピックアップ時刻及び到着時刻を、ネットワーク150を介して上記ターゲットのうちの1つ以上に送信してもよい。したがって、ドライバー端末デバイスは、ターゲットが第1のオーダーを完了するための実際の時間長を求めることを容易にすることができる。
当然ながら、ステップ835の上記説明は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、ドライバー端末デバイス140によって第1のオーダーを完了するための実際の時間長を送信する方法及び原理についての本開示の教示の下で、現在位置を求めることができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、ドライバー端末デバイス140は、ステップ835を省略してもよい。幾つかの実施形態では、ドライバー端末デバイス140は、ステップ815及びステップ825、すなわち、第1のオーダーを実行するときに定期的又は不定期的に現在位置及び現在時刻の関連した情報及び時間情報を入手すること及び送信することを反復して実行してもよい。ステップ815及びステップ825を反復して実行することによって、第1のオーダーのピックアップ時刻及び到着時刻は、オーダープッシュエンジン110によって求められてもよい。そのような全ての変更は、本開示の保護範囲内にある。
図9は、本開示の幾つかの実施形態に係る、オーダープッシュエンジンによってオーダーを組み合わせるプロセスの一例を示すフローチャートである。図9に示すように、オーダープッシュエンジン110は、ステップ910において、先行オーダー及び/又は後続オーダーに関連した情報を取得することができる。この情報は、先行オーダーの目的地D1、後続オーダーの出発地D2、後続オーダーのピックアップ時刻t2、先行オーダーのピックアップ時刻t1等、又はそれらの任意の組み合わせを含むことができる。ステップ910は、乗客インターフェース230及び/又はドライバーインターフェース240によって実施することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、2つのオーダーを取得することができ、ここで、これらの2つのオーダーのうちの早い方のオーダー(又は先行オーダーと呼ばれる)がより早いピックアップ時刻t1を有することができるとともに、これらの2つのオーダーのうちの遅い方のオーダー(又は後続オーダーと呼ばれる)がt1よりも遅いピックアップ時刻t2を有することができる。幾つかの実施形態では、先行オーダー及び後続オーダーに関連した情報は、乗客端末デバイス120及び/又はドライバー端末デバイス140、データベース130、情報源160等、又はそれらの任意の組み合わせから取得することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、乗客端末デバイス120によって送信されたリアルタイムオーダー及び/又は今後のオーダーに関連した情報を、乗客インターフェース230を介して取得することができる。リアルタイムオーダーは、乗客によって送信された現在のオーダー要求を指すことができる。今後のオーダーは、現在時刻に対して今後に実施される、乗客によって送信されるオーダー要求を指すことができる。この今後のオーダー要求は、予約された日付及び時刻と、出発地及び目的地の予約された住所とを含むことができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、ドライバー端末デバイス140によって送信されたオーダーに関連した情報を、ドライバーインターフェース240を介して取得することができる。ドライバーインターフェース240によって取得されたオーダーは、配車サービス、輸送サービスの要請、1つ以上の輸送サービスアプリケーションの使用等、又はそれらの任意の組み合わせによる、1人以上の乗客によって要求されたオーダーであってもよい。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、オーダーに関連した情報をデータベース130から取得することができる。データベース130内のオーダーの情報は、乗客インターフェース230を介して乗客端末デバイス120によってアップロードされたリアルタイムオーダー及び/又は今後のオーダーから取得することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、オーダーに関連した情報を情報源160から取得することができる。情報源160内のオーダーに関連した情報は、音声通話、ウェブサイト等の使用等の様々な方法を用いて取得することができる。幾つかの実施形態では、オーダーを組み合わせるか否かは、これらのオーダーの位置が僻地のエリアにあるか否かに基づいて更に判断することができる。本開示の幾つかの実施形態によれば、決定ユニット380は、僻地のエリアに位置する正方形街区(squares)を最初に求めることができる。例えば、都市は、その経度緯度情報に従って複数の正方形街区に分割することができる。オーダーの出発地及び目的地の経度緯度が或る正方形街区内にある場合、そのオーダーはその正方形街区に属する。特定の時間帯内での各正方形街区におけるオーダーの平均数に対して統計解析を行うことができる。或る正方形街区におけるオーダーの毎日の平均数が閾値よりも大きくない場合、その正方形街区は、僻地のエリアにあるとみなされる。この時間帯は、1日〜10日、5日〜9日等の範囲とすることができる。上記閾値は、1〜50、25〜35等の範囲とすることができる。正方形街区の辺長は、1キロメートル〜5キロメートル、2キロメートル〜4キロメートル等の範囲とすることができる。幾つかの実施形態では、オーダープッシュエンジン110は、僻地のエリアの正方形街区におけるオーダーのうちの任意の2つを取得することができる。オーダープッシュエンジン110は、決定ユニット350によって、これらの2つのオーダーのピックアップ時刻のシーケンスに従って先行オーダー及び後続オーダーを判断することができる。
ステップ920において、オーダープッシュエンジン110は、先行オーダーを完了するための第1の時間長L1を求めることができる。オーダープッシュエンジン110は、先行オーダーの目的地から後続オーダーの出発位置までの距離D12及び長さL0を求めることができる。ステップ920は、オーダープッシュエンジン110の処理モジュール210の決定ユニット380によって実施することができる。例えば、第1の時間長L1、距離D12、及び時間長L0の計算は、オーダープッシュエンジン110の処理モジュール210の決定ユニット380によって、履歴オーダーの情報と、先行オーダー及び/又は後続オーダーの地理的座標とに基づくことができる。本開示の幾つかの実施形態によれば、地理的座標は、測位技術によって取得することができる。これらの測位技術は、全地球測位システム(GPS)技術、全地球航法衛星システム(GLONASS)技術、コンパスナビゲーションシステム(COMPASS)、ガリレオ測位システム(Galileo)、準天頂衛星システム(QZSS)、ベースステーション(基地局)測位技術、ワイヤレスフィデリティー(Wi−Fi)測位技術等、又はそれらの任意の組み合わせを含むが、これらに限定されるものではない。幾つかの実施形態では、距離D12及び時間長L0の計算は、先行オーダーの目的地の経度緯度、後続オーダーの出発地の経度緯度及び履歴オーダーの運転速度に基づくことができる。
ステップ930において、オーダープッシュエンジン110は、距離D12を閾値距離Dbaseと比較することができる。ステップ930は、オーダープッシュエンジン110の処理モジュール210の決定ユニット350によって実施することができる。幾つかの実施形態では、決定ユニット350は、距離D12がDbaseよりも大きい(すなわち、D12>Dbase)か否かを判断することができる。幾つかの実施形態では、距離D12がDbaseよりも大きい(すなわち、D12>Dbase)との判断に応答して、オーダープッシュエンジン110は、先行オーダーが後続オーダーと地理的に接続可能でないと判断することができ、この判断プロセスはステップ970に進むことができる。一方、距離D12がDbase以下である(すなわち、D12≦Dbase)との判断に応答して、オーダープッシュエンジン110は、先行オーダーが後続オーダーと地理的に接続可能であると判断することができ、この判断プロセスはステップ940に進むことができる。先行オーダーが距離において後続オーダーと接続可能でない幾つかの実施形態では、オーダープッシュエンジン110は、先行オーダーと後続オーダーとを組み合わせることができない。幾つかの実施形態では、Dbaseは、約1キロメートル〜9キロメートル、約4キロメートル〜6キロメートル等の範囲とすることができる。Dbaseの値が過度に大きい場合、ドライバーのアイドル運転時間(例えば、乗客のいない運転時間)は比較的長くなる。Dbaseの値が過度に小さい場合、組み合わせて対にすることができるオーダーの数は比較的少なくなるか又は全くなくなる。幾つかの実施形態では、先行オーダーの目的地の経度緯度が、後続オーダーの出発地の経度緯度と同じ正方形街区内にある場合、決定ユニット350は、先行オーダーが距離において後続オーダーと接続可能であると判断することができる。幾つかの実施形態では、エリアにおけるオーダー分布に従って閾値距離Dbaseを調整することができる。例えば、エリアにおけるオーダーの数が少ない場合、閾値距離Dbaseを増加させることができる。一方、エリアにおけるオーダーの数が多い場合、閾値距離Dbaseを低減することができる。この判断の基礎となるオーダーの数は、現在のオーダーの実際の数又は履歴情報とすることができる。例えば、特定の時間帯内の或るエリアにおけるオーダーの実際の数が比較的多い場合、その特定の時間帯内のそのエリアにおける閾値距離Dbaseを低減することができる。一方、同じ特定の時間帯内の同じエリアにおけるオーダーの実際の数が比較的少ない場合、その特定の時間帯内のそのエリアにおける閾値距離Dbaseを増加させることができる。別の例として、特定の時間帯内の或るエリアにおける履歴オーダー情報が、その特定の時間帯内のオーダーの数が通常多いことを示している場合、その特定の時間帯内のそのエリアにおける閾値距離Dbaseを低減することができる。一方、特定の時間帯内の或るエリアにおける履歴オーダー情報が、その特定の時間帯内のオーダーの数が通常少ないことを示している場合、その特定の時間帯内のそのエリアにおける閾値距離Dbaseを増加させることができる。
ステップ940において、オーダープッシュエンジン110は、後続オーダーのピックアップ時刻t2と、先行オーダーのピックアップ時刻t1、先行オーダーを完了するための第1の時間長L1及び先行オーダーの目的地から後続オーダーのピックアップ時刻までの時間長L0との間の差の絶対値を閾値時間Tbaseと比較することができる。ステップ940は、オーダープッシュエンジン110の処理モジュール210の決定ユニット380及び決定ユニット350によって実施することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、決定ユニット380によって、上記差の絶対値|t2−t1−L1−L0|を求めることができる。この計算は、後続オーダーのピックアップ時刻t2と、先行オーダーのピックアップ時刻t1と、先行オーダーを完了するための第1の時間長L1と、先行オーダーの目的地から後続オーダーのピックアップ時刻までの時間長L0とに基づくことができる。オーダープッシュエンジン110は、決定ユニット350を用いて、|t2−t1−L1−L0|を閾値時間Tbaseと比較することができる。幾つかの実施形態では、決定ユニット350は、|t2−t1−L1−L0|が閾値時間Tbaseよりも大きい(すなわち、|t2−t1−L1−L0|>Tbase)か否かを判断することができる。幾つかの実施形態では、|t2−t1−L1−L0|が閾値時間Tbaseよりも大きい(すなわち、|t2−t1−L1−L0|>Tbase)との判断に応答して、オーダープッシュエンジン110は、先行オーダーが時間において後続オーダーと接続可能でないと判断することができ、この判断プロセスはステップ970に進むことができる。一方、|t2−t1−L1−L0|が閾値時間Tbase以下である(すなわち|t2−t1−L1−L0|≦Tbase)との判断に応答して、オーダープッシュエンジン110は、先行オーダーが時間において後続オーダーと接続可能であると判断することができ、この判断プロセスはステップ950に進むことができる。先行オーダーが時間において後続オーダーと接続可能でない幾つかの実施形態では、オーダープッシュエンジン110は、先行オーダーと後続オーダーとを組み合わせることができない。幾つかの実施形態では、Tbaseは、約1分〜60分、約5分〜15分等の範囲とすることができる。Tbaseの値が過度に大きい(例えば、或る閾値よりも大きい)場合、ドライバーは、比較的長い時間を待機する必要がある。Tbaseの値が過度に小さい(例えば、或る閾値よりも小さい)場合、組み合わせて対にすることができるオーダーは存在しないか又は少数である。幾つかの実施形態では、Tbaseは、乗客又はドライバーが待機する許容範囲であってもよい。例えば、t2−t1−L1−L0の値が正であるとき、この値は、ドライバーが後続オーダーのピックアップ時刻t2よりもどれくらい早く到着するのか、すなわち、ドライバーが乗客の到着を待機する時間の長さを示すことができる。t2−t1−L1−L0の値が負であるとき、この値は、ドライバーが、後続オーダーのピックアップ時刻t2よりもどれくらい遅く到着するのか、すなわち、乗客がドライバーの到着を待機する時間の長さを示すことができる。幾つかの実施形態では、ドライバーは、サービス提供者として、待機時間長に対して比較的高い許容範囲を有することができる。そして、閾値時間Tbaseは、例えば、約1分〜60分、約5分〜15分等の比較的長い時間長として設定することができる。幾つかの実施形態では、乗客は、サービス要求者として、待機時間長に対して比較的低い許容範囲を有することができる。そして、閾値時間Tbaseは、例えば、約0分〜30分、約0分〜5分等の比較的短い時間長として設定することができる。本開示の幾つかの実施形態によれば、組み合わされたオーダーのそれぞれが、僻地のエリアの正方形街区内のものであるとき、ドライバー又は乗客の双方は、待機時間長に対して比較的高い許容範囲を有することができ、Tbaseは、約5分〜60分、約15分〜30分等として設定することができる。幾つかの実施形態では、閾値時間Tbaseは、エリアにおけるオーダー分布に従って調整することができる。例えば、エリアにおけるオーダーの数が少ない場合、閾値時間Tbaseを増加させることができる。一方、エリアにおけるオーダーの数が多い場合、閾値時間Tbaseを低減することができる。この判断の基礎となるオーダーの数は、現在のオーダーの実際の数又は履歴情報とすることができる。例えば、特定の時間帯内の或るエリアにおけるオーダーの実際の数が比較的多い場合、その特定の時間帯内のそのエリアにおける閾値時間Tbaseを低減することができる。一方、同じ特定の時間帯内の同じエリアにおけるオーダーの実際の数が比較的少ない場合、その特定の時間帯内のそのエリアにおける閾値時間Tbaseを増加させることができる。別の例として、特定の時間帯内の或るエリアにおける履歴オーダー情報が、その特定の時間帯内のオーダーの数が通常多いことを示している場合、その特定の時間帯内のそのエリアにおける閾値時間Tbaseを低減することができる。一方、特定の時間帯内の或るエリアにおける履歴オーダー情報が、その特定の時間帯内のオーダーの数が通常少ないことを示している場合、その特定の時間帯内のそのエリアにおける閾値時間Tbaseを増加させることができる。
ステップ950において、オーダープッシュエンジン110は、先行オーダーと後続オーダーとを組み合わせることができる。ステップ950は、オーダープッシュエンジン110の処理モジュール210によって実施することができる。本開示の幾つかの実施形態によれば、先行オーダーと後続オーダーとからなる1つ以上の組み合わせオーダーをステップ950において取得することができる。先行オーダーと後続オーダーとからなる複数の組み合わせオーダーが取得される幾つかの実施形態では、先行オーダーと後続オーダーとからなる組み合わせオーダーは、閾値距離Dbase及び閾値時間Tbaseに関する決定ユニット350の判断結果に従って、オーダープッシュエンジン110の処理モジュール210のランク付けユニット360によってランク付けすることができる。
ステップ960において、オーダープッシュエンジン110は、先行オーダーと後続オーダーとからなるランク付けされた組み合わせオーダーを、ドライバーインターフェース240を介して1つ以上のドライバー端末デバイス140にプッシュすることができる。したがって、オーダープッシュエンジン110は、ドライバー端末デバイス140によるプッシュされた組み合わせオーダーに対する応答を促進することができる。組み合わせオーダーに対する応答は、組み合わせオーダー内の1つ以上のオーダーを受理することを含むことができる。組み合わせオーダーに対する応答は、組み合わせオーダー内の1つ以上のオーダーを拒否することを含むことができる。幾つかの実施形態では、オーダープッシュエンジン110は、先行オーダー及び/又は後続オーダーの情報を、乗客インターフェース230を介して1つ以上の乗客端末デバイス120にプッシュすることができる。例えば、オーダープッシュエンジン110は、組み合わせオーダーの第1のオーダー及び第2のオーダーを乗客端末デバイス120に送信することができる。
ステップ970において、オーダープッシュエンジン110は、先行オーダーと後続オーダーとを組み合わせることができない。
本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、先行オーダーと後続オーダーとからなる組み合わせオーダーを、ドライバーインターフェース240を介して更にプッシュすることができる。幾つかの実施形態では、先行オーダーと後続オーダーとからなる組み合わせオーダーは、並列にプッシュすることもできるし、遂次的にプッシュすることもできる。本開示の幾つかの実施形態によれば、先行オーダー及び後続オーダーが1つ以上のドライバー端末デバイス140によって応答されたか否かを調べることができる。組み合わせオーダーの先行オーダーと後続オーダーとの双方が1つ以上のドライバー端末デバイス140によって応答されていない場合、先行オーダーの出発位置の近傍のタクシー(例えば、ドライバー)を適したタクシーとみなすことができる。リアルタイムに収集されたタクシー情報セットに従って、先行オーダーの出発位置の近傍のタクシー(すなわち、適したタクシー)を見つけることができ、2つのオーダーを組み合わせることができる。これらの組み合わせオーダーは、先行オーダーの出発位置の近傍のタクシーに同時に送信されてもよい。タクシー情報セット内の各タクシーの情報は、ドライバーのシリアル番号、報告時刻及びタクシーの地理的位置情報(例えば、経度緯度)を含むことができる。先行オーダーの出発位置の近傍のタクシーは、先行オーダーの出発地から各タクシーまでの距離を、各タクシーの現在の地理的位置情報及び先行オーダーの出発地に従って順に求めることと、これらの距離を事前に設定された半径Rと比較することとによって見つけることができる。タクシーから先行オーダーの出発位置までの距離Dが、事前に設定された半径R以下である(すなわち、D≦R)場合、このタクシーは、先行オーダーの出発位置の近傍であるとみなされる。事前に設定された半径Dは、0キロメートル〜5キロメートル又は0.5キロメートル〜4キロメートルの範囲とすることができる。本開示の幾つかの実施形態によれば、先行オーダー及び後続オーダーが1つ以上のドライバー端末デバイス140によって応答されたか否かを調べることができる。先行オーダーがドライバー端末デバイス140によって応答されており、後続オーダーがドライバー端末デバイス140によっても他のドライバー端末デバイス140によっても応答されていない場合、先行オーダーに応答したドライバー端末デバイス140は、適したドライバー端末デバイス140であるとみなすことができ、後続オーダーをドライバー端末デバイス140にプッシュすることができる。
例えば、タクシー1は、現在時刻(例えば、午前10:00)において、午前10:30の推定到着時刻を有する中関村(Zhongguancun)から西二旗(Xierqi)へのオーダーAを受信する。加えて、西二旗から北京首都国際空港への午前10:35のピックアップ時刻の今後のオーダーBがある。本開示におけるオーダープッシュシステムによれば、オーダーA及びオーダーBは、決定ユニット350によって接続可能なオーダーであると判断することができる。プッシュモジュールは、タクシー1がオーダーAを受理したものと判断することができる。その場合、オーダーBは、「本日の午前10:35に西二旗を出発して北京首都国際空港に向かうという予約があります。この予約の出発位置は、貴方の現在のオーダーの目的地に非常に近く、また、この予約のピックアップ時刻は、貴方の到着時刻に近い時刻です。」という放送とともにタクシー1に直接プッシュすることができる。
北京市内の僻地のエリアの判断を一例として取り上げると、北京市の直径は170キロメートルである。そして、その経度緯度に従って、北京市は、複数の正方形街区に分割することができる。例えば、北京市は、この都市の直径の50分の1に基づく3.4キロメートルの辺長をそれぞれ有する2500個の正方形街区に分割することができる。各正方形街区内での最も近時の7日間のオーダーの平均数に対して統計解析を行うことができる。オーダー数が30未満である正方形街区は、一般に僻地のエリアとみなすことができる。中関村からその日の10:00の沙河高教園(Shahe Higher Education Park)までのオーダーAと、沙河高教園からその日の11:00の国貿(Guomao)までのオーダーBとの2つのオーダーがあるものと仮定する。オーダーAの目的地(すなわち、沙河高教園)におけるタクシー配車の需要は比較的低いので、ほとんどのドライバーは、オーダーAを進んで受理しようとしない。オーダーBの周囲におけるドライバーの数は比較的少ないので、タクシー配車サービスを得ることも困難である。本開示におけるオーダープッシュエンジン110によれば、沙河高教園が位置する正方形街区は、決定ユニット350によって僻地のエリアであると判断される。決定ユニット380及び決定ユニット350は、オーダーA及びオーダーBが接続可能であると判断することができる。オーダーA及びオーダーBの双方がいずれのドライバー端末デバイス140によっても受理されていない場合、オーダーAとオーダーBとを組み合わせることができ、オーダーAの周辺エリア内のドライバー端末デバイス140に送信することができる。オーダーBがあるので、ドライバーは、オーダーAの完了後のアイドル運転について心配する必要はない。このように、オーダーAとオーダーBとを組み合わせることによって、オーダーを終了する率を高めることができる。
当然ながら、フローチャートは、フロー図、フローチャートテーブル、データフロー図、概略チャート又はブロック図として記述されてもよい。フローチャートは、ステップを遂次プロセスとして記述することができるが、実際には、プロセスは、複数の動作を並行して実施することもできるし、同時に実施することもできる。加えて、ステップのシーケンスは、並べ替えることができる。プロセスにおけるステップが完了すると、プロセスは、終了に進む場合もあるし、フローチャートに含まれていない追加のステップに進む場合もある。プロセスは、方法、関数、プログラム、サブルーチン、サブプログラム等に対応することができる。プロセスが関数に対応するとき、プロセスの終了は、読み出し側関数又はメイン関数へのこの関数の復帰に対応することができる。加えて、本開示の上記説明におけるモジュール、ユニット又はステップは、一般的な決定モジュールによって実現されてもよいことが当業者には明らかであろう。例えば、モジュール、ユニット又はステップは、1つの決定モジュールに統合されてもよいし、複数の決定モジュールからなるネットワーク上に分散されてもよい。代替的に、モジュール、ユニット又はステップは、記憶モジュールに記憶することができるとともに決定モジュールによって実行することができるような実行可能プログラムコードによって実現されてもよい。モジュール、ユニット又はステップは、それらのそれぞれを個々の集積回路モジュール上に分散させることによって実現されてもよいし、モジュール又はステップのうちの幾つかを単一の集積回路モジュール上に分散させることによって実現されてもよい。このように、本開示は、どの特定のハードウェア又はソフトウェアの組み合わせにも限定されるものではない。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図10は、本開示の幾つかの実施形態に係る、オーダープッシュエンジンを用いてオーダーをプッシュする一例示的なプロセスのフローチャートである。図10に示すように、オーダープッシュエンジン110は、ステップ1010において、第1のオーダーの目的地を取得することができる。より詳細には、例えば、第1のオーダーは、乗客インターフェース230及び/又はドライバーインターフェース240を介して最初に取得することができ、その後、第1のオーダーの目的地は、処理モジュール210の住所解析ユニット310によって入手することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、ドライバー端末デバイス140によって提供された第1のオーダーの目的地を、ドライバーインターフェース240を介して取得することができる。ここで、ドライバー端末デバイス140によって提供される第1のオーダーは、配車サービス、輸送サービスの要請、乗客が輸送サービスアプリケーションを用いること等、又はそれらの任意の組み合わせによって乗客が開始することができる。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110は、乗客デバイス120によって提供される第1のオーダーの目的地を、乗客インターフェース230を介して取得することができる。幾つかの実施形態では、乗客端末デバイス120は、様々な形態でサービス要求を送信することができる。この様々な形態は、テキスト、音声、画像、ビデオ等、又はそれらの任意の組み合わせを含むが、これらに限定されるものではない。本開示の幾つかの実施形態によれば、オーダープッシュエンジン110の処理モジュール210の画像処理ユニット320、音声処理ユニット330及びテキスト処理ユニット340は、それぞれ異なる形態でオーダー要求を処理することができる。オーダーの目的地情報は、住所解析ユニット310によって取得することができる。本開示の幾つかの実施形態によれば、目的地は、ドライバーの現在のオーダーに基づいて取得することができる。例えば、ドライバーの現在のオーダーが、ドライバー端末デバイス140にインストールされた輸送サービスアプリケーションから取得された場合、この輸送サービスアプリケーションによって取得される目的地は、現在のオーダーの目的地とすることができる。例えば、ドライバーが、当該ドライバーの現在のオーダーに従って、京通ハイウェイ(Jing-Tong Highway)を国貿から通州北苑(Tongzhoubeiyuan)に運転し、中国伝媒大学(Communication University of China)の傍を通過する場合、通州北苑が目的地とみなされる。その上、傍を通過した中国伝媒大学に関連した第2のオーダーを送信するのではなく、目的地の通州北苑に関連した第2のオーダーを送信することの詳細な説明は、本開示の以下の実施形態に見出すことができる。本開示の幾つかの実施形態によれば、目的地情報は、ドライバーが更に提供することができる。例えば、ドライバーが、最初は自身の子供を学校に送る必要があり、その後、オーダーを入手して乗客をピックアップすることを開始した場合、ドライバーは、学校の住所を目的地として提供することができる。
ステップ1020において、オーダープッシュエンジン110は、第2のオーダーの出発位置から第1のオーダーの目的地までの距離が事前設定範囲内にある少なくとも1つの第2のオーダーを取得することができる。第2のオーダーは、乗客インターフェース230及び/又はドライバーインターフェース240を介して取得することができる。処理モジュール210の決定ユニット350は、第2のオーダーの出発位置と第1のオーダーの目的地との間の距離を求めることができる。この距離は、直線距離、道路距離、又は運転距離であってもよい。幾つかの実施形態では、第2のオーダーは、乗客端末デバイス120及び/又はドライバー端末デバイス140、データベース130、情報源160等から取得されてもよい。幾つかの実施形態では、決定ユニット350は、第2のオーダーの出発位置が、第1のオーダーの目的地と同じ場所内又は第1のオーダーの目的地の周辺エリア内にあるか否かを判断することができる。幾つかの実施形態では、オーダープッシュエンジン110によって取得された第2のオーダーの出発位置が、第1のオーダーの目的地と同じである場合、この第2のオーダーは、ドライバーインターフェース240を介してドライバー端末デバイス140に直接プッシュすることができる。本開示の幾つかの実施形態によれば、第1のオーダーの目的地に関連した事前設定エリアを決定することができる。例えば、このエリアは、目的地を中心とした1キロメートルの直径を有することができる。その場合、このエリア内の第2のオーダーを取得することができる。例えば、上記開示において説明したように、ドライバーが、京通ハイウェイを国貿から通州北苑に運転し、中国伝媒大学の傍を通過する場合、目的地の通州北苑に関連した第2のオーダーをこのドライバーに送信することができる。例えば、或るエリア(例えば、目的地の通州北苑を中心とする1キロメートルの直径を有するエリア)内に出発位置を有する第2のオーダーをドライバーに送信することができる。
ステップ1030において、オーダープッシュエンジン110は、第1のオーダーの目的地から第2のオーダーの出発位置までの時間長L0を求めることができる。ステップ1030は、オーダープッシュエンジン110の処理モジュール210の決定ユニット350によって求められた第2のオーダーに従って、決定ユニット380によって第1のオーダーの目的地から第2のオーダーの出発位置までの時間長L0を求めることを含むことができる。ここで、第1のオーダーの目的地から第2のオーダーの出発位置までの距離は、事前設定範囲内にある。幾つかの実施形態では、決定ユニット380によって求められる時間長L0は、運転距離、道路状況、運転方向等の情報に基づく。本開示の幾つかの実施形態によれば、目的地に関連した道路区間(例えば、幹線道路、又は目的地の周辺エリア内の一方通行の通り)を最初に求めることができる。次に、第2のオーダーの目的地から出発位置への運転方向が、目的地に到着した後のドライバーの運転方向と同じになることを確保するように、この道路区間から開始する第2のオーダーを求めて取得することができる。例えば、ドライバーが、北京市の東部第3環状道路の南北間道の周辺エリアに位置する北京市第80高校に自身の子供を送りたいと思っており、ドライバーが北京市第80高校に向かって北から南に運転することができるとともに、この学校の住所を目的地として提供することができる場合、この学校に関連した第2のオーダーをドライバーに送信することができる。例えば、第2のオーダーの出発位置が、学校の南において、北京市の東部第3環状道路の間道上に位置する場合、第2のオーダーをドライバーに送信することができる。このように、これによって、ドライバーが乗客をピックアップするために複数の橋梁エリアを運転して回ることを回避することができ、したがって、アイドル運転距離を削減することができる。
当然ながら、第2のオーダーは、目的地に関連したエリア及び道路区間に基づくだけでなく、他の情報、例えば、目的地へのドライバーの到着時刻にも基づいて求められてもよく、これは、以下の実施形態で更に説明される。本開示の幾つかの実施形態によれば、ドライバーが、京通ハイウェイを通って国貿から通州北苑に運転し、中国伝媒大学の傍を通過している場合、目的地の通州北苑に関連した第2のオーダーが、ドライバーに送信される。例えば、目的地の通州北苑へのドライバーの推定到着時刻が20分以内である場合、20分以内のピックアップ時刻を有する第2のオーダー(例えば、今後のオーダー)をドライバーに送信することができる。幾つかの実施形態では、目的地の通州北苑への到着時刻は、道路管理局が提供することができる京通ハイウェイの渋滞状況に基づいて求められてもよい。別の上記実施形態の説明によれば、ドライバーが、自身の子供を北京市第80高校に送る必要があり、この学校の住所を目的地として提供する場合、この学校に関連した第2のオーダーをドライバーに送信することができる。例えば、ドライバーが、目的地への到着時刻として午前8:00を指定している場合、午前8:00よりも遅いピックアップ時刻を有する第2のオーダーをドライバーに送信することができる。第2のオーダーを取得及び送信することの上記方法は単に概略にすぎず、実際的な要件に従って、それらの方法のそれぞれについて異なる重みを割り当てることができることが当業者に明らかであろう。実際的な用途では、ドライバーの実際的な運転状況を十分に活用して、アイドル運転距離を低減するために、第2のオーダーを取得及び送信する他の方法が用いられてもよい。そのような全ての方法は、本開示の保護範囲内に存在することができる。
ステップ1040において、オーダープッシュエンジン110は、第2のオーダーをフィルタリングすることができる。ステップ1040は、処理モジュール210の決定ユニット350によって実施することができる。本開示の幾つかの実施形態によれば、決定ユニット350は、決定ユニット380によって求められた時間長L0を事前に設定された時間長と比較することができ、この比較の結果に従って第2のオーダーをフィルタリングすることができる。ここで、事前に設定された時間長は、乗客及び/又はドライバーによって受理された待ち時間の長さに基づいて、及び/又は第1のオーダーの到着時刻から第2のオーダーのピックアップ時刻までの時間長に基づいて求めることができる。1つの上記実施形態の説明によれば、フィルタリングされた第2のオーダーが1つ以上存在する場合がある。ステップ1040は、第1のオーダーの目的地と第2のオーダーの出発位置との間の距離及び/又は第1のオーダーの目的地から第2のオーダーの出発位置まで運転する所要時間長L0に従って、処理モジュール210のランク付けユニット360によってこれらのフィルタリングされた第2のオーダーをランク付けすることを更に含んでもよい。
ステップ1050において、オーダープッシュエンジン110は、フィルタリングされた第2のオーダーをドライバーにプッシュすることができる。ステップ1050は、ドライバーインターフェース240によって実施することができる。本開示の幾つかの実施形態によれば、ドライバーインターフェース240は、フィルタリングされた第2のオーダーがランク付けユニット360によってランク付けされているオーダーリストをドライバー端末デバイス140にプッシュしてもよい。
当然ながら、フローチャートは、フロー図、フローチャートテーブル、データフロー図、構造チャート又はブロック図として記述されてもよい。フローチャートは、ステップを遂次的なプロセスとして記述している場合があるが、複数の動作を並行して又は同時に実施することができる。その上、ステップのシーケンスは、並べ替えることができる。プロセスにおけるステップが完了すると、プロセスは、終了に進む場合もあるし、フローチャートに含まれていない追加のステップに進む場合もある。プロセスは、方法、関数、プログラム、サブルーチン、サブプログラム等に対応することができる。プロセスが関数に対応するとき、プロセスの終了は、読み出し側関数又はメイン関数へのこの関数の復帰に対応することができる。その上、本開示の上記説明におけるモジュール、ユニット又はステップは、一般的な決定モジュールによって実現されてもよいことが当業者には明らかであろう。例えば、モジュール、ユニット又はステップは、1つの決定モジュールに統合されてもよいし、複数の決定モジュールからなるネットワーク上に分散されてもよい。代替的に、モジュール、ユニット又はステップは、当該モジュール、ユニット又はステップを記憶モジュールに記憶することができるとともに決定モジュールによって実行することができるような実行可能プログラムコードによって実現されてもよい。モジュール、ユニット又はステップは、それらのそれぞれを個々の集積回路モジュール上に分散させることによって実現されてもよいし、モジュール又はステップのうちの幾つかを単一の集積回路モジュール上に分散させることによって実現されてもよい。このように、本開示は、どの特定のハードウェア及びソフトウェアの組み合わせにも限定されるものではない。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、様々な変形及び変更を本開示の教示の下で行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。
図11は、本開示の幾つかの実施形態に係る、オーダーをプッシュするプロセスのフローチャートである。ステップ1110において、オーダープッシュエンジン110は、ドライバーの現在の情報と、第1のオーダーと、第2のオーダーと、第1のオーダー及び第2のオーダーに関連した情報とを取得することができる。ステップ1110は、乗客インターフェース230及びドライバーインターフェース240によって実施することができる。幾つかの実施形態では、第1のオーダー及び第2のオーダーは、組み合わされてプッシュされるオーダーであってもよい。1つ以上の第1のオーダー及び1つ以上の第2のオーダーが存在してもよい。幾つかの実施形態では、第1のオーダーのうちの1つは、ドライバー端末デバイス140によって受理された今後のオーダーであってもよい。プッシュされる第2のオーダーが1つ以上存在してもよい。簡潔にするために、以下の開示では、1つの第1のオーダー及び1つの第2のオーダーが説明される。ただし、当然ながら、複数の第2のオーダーが存在する場合、以下の手順は、第2のオーダーのそれぞれに対して反復して実施することができる。以下の説明は、第1のオーダーがドライバー端末デバイス140によって受理された今後のオーダーであり、第2のオーダーがまさにプッシュされようとしている状況下のものである。ドライバーの現在の情報は、現在時刻t0及び現在位置を含むことができる。第1のオーダーに含まれる情報は、第1のオーダーの出発位置、目的地、ピックアップ時刻t1、チップ等、又はそれらの任意の組み合わせを含むことができる。第1のオーダーに関連した情報は、第1のオーダーを完了するのに必要とされる時間長L1を含むことができる。第2のオーダーに含まれる情報は、第2のオーダーの出発位置、目的地、ピックアップ時刻t2、チップ等、又はそれらの任意の組み合わせを含むことができる。第2のオーダーに関連した情報は、第2のオーダーを完了するのに必要とされる時間長L2を含むことができる。幾つかの実施形態では、第1のオーダーに関連した情報は、第1のオーダーを完了するのに必要とされる時間調整量δL1も含むことができる。第2のオーダーに関連した情報は、第2のオーダーを完了するのに必要とされる時間調整量δL2も含むことができる。幾つかの実施形態では、第1のオーダーの出発位置及び目的地、並びに第2のオーダーの出発位置及び目的地についての情報は、座標、テキスト、音声、画像、ビデオ等、又はそれらの任意の組み合わせの形態で提示することができる。
幾つかの実施形態では、第1のオーダーを完了するのに必要とされる時間長L1は、データベース130に記憶された車両の平均速度に従って取得することができる。第1のオーダーの出発位置及び目的地に従って、処理モジュール210の決定ユニット340は、第1のオーダーの出発位置と目的地との間の距離を求めることができる。次に、決定ユニット340は、平均速度に基づいて、第1のオーダーを完了するのに必要とされる時間長L1を取得することができる。第2のオーダーを完了するのに必要とされる時間長L2を求める方法は、第1のオーダーを完了するのに必要とされる時間長L1を求める方法と同様とすることができ、ここでは繰り返さない。時間調整量δL1及びδL2は、事前に設定されたエリア及び時間帯とのそれらの対応する関係に基づいて取得することができる。この対応する関係は、データベース130の時間調整データベース640に記憶することができる。幾つかの実施形態では、時間調整の値δL1及びδL2は、正の場合もあるし、負の場合もある。例えば、第1のオーダー又は第2のオーダーが実行される時間帯がラッシュアワー、休日等であり、及び/又は中間エリアが商業地域、学校等に接近している場合、時間調整の値δL1及びδL2は正であり得る。一方、第1のオーダー又は第2のオーダーが実行される時間帯が移動に好都合であり、ラッシュアワー等でないか、又は中間エリアが移動に好都合である場合、時間調整の値δL1及びδL2は負であり得る。幾つかの実施形態では、時間調整量δL1は、第1のオーダーの出発位置と目的地との間の距離に関連し得る。そして、時間調整量δL1は、距離とともに増加し得る。幾つかの実施形態では、時間調整量δL2は、第2のオーダーの出発位置と目的地との間の距離に関連し得る。時間調整量δL2は、距離とともに増加し得る。当然ながら、ドライバーの現在の情報と、第1のオーダーと、第2のオーダーと、第1のオーダー及び第2のオーダーに関連した情報との入手は、同じステップで完了することもできるし、異なるステップで完了することもできる。
ステップ1120において、オーダープッシュエンジン110は、第1のオーダーのピックアップ時刻t1と第2のオーダーのピックアップ時刻t2との時間的順序を比較することができる。ステップ1120は、処理モジュール210の決定ユニット350によって実施することができる。第1のオーダーのピックアップ時刻t1が第2のオーダーのピックアップ時刻t2よりも遅い幾つかの実施形態では、次に、ステップ1130が実施される。ステップ1130において、オーダープッシュエンジン110は、第1のオーダーのピックアップ時刻t1と現在時刻t0との間の時間間隔t1−t0をT1と比較することができる。ステップ1130は、処理モジュール210の決定ユニット350によって実施することができる。ここで、T1は、ドライバーの現在位置から第2のオーダーの出発位置まで運転するのに必要とされる推定時間と、第2のオーダーを完了するための時間長L2と、第2のオーダーの目的地から第1のオーダーの出発位置までの運転に必要とされる推定時間とに基づいて入手することができる。幾つかの実施形態では、T1は、第2のオーダーを完了するための時間調整量δL2と、ドライバーの現在位置から第2のオーダーの出発位置までの運転に必要とされる時間調整量と、第2のオーダーの目的地から第1のオーダーの出発位置まで運転するのに必要とされる時間調整量とを含むことができる。T1がt1−t0未満でない場合、ステップ1150が実施され、第2のオーダーをプッシュすることができない。T1がt1−t0未満である場合、ステップ1140が実施され、第2のオーダーをプッシュすることができる。幾つかの実施形態では、第2のオーダーは、リアルタイムでプッシュすることができる。幾つかの実施形態では、オーダープッシュエンジン110は、プッシュすると判断されたオーダーを記憶することができる。オーダープッシュエンジンは、或る条件が満たされているときにオーダーをプッシュすることができる。この条件は、オーダーの数が或る特定の値に達したこと、或る特定の時点に達したこと等とすることができる。幾つかの実施形態では、プッシュすると判断されたオーダーを修正することができる。例えば、組み合わされるより適したオーダーが存在する場合、プッシュすると判断されたオーダーを再組み合わせすることができる。幾つかの実施形態では、ステップ1130において、T1は、t1−t0と比較することもできるし、t1−t0と或る値との間の差が事前に設定された値の範囲内にある、当該或る値と比較することもできる。幾つかの実施形態では、この事前に設定された値の範囲は、10分以下とすることができる。幾つかの実施形態では、この事前に設定された値の範囲は、5分以下とすることができる。
ステップ1120において、第1のオーダーのピックアップ時刻t1が第2のオーダーのピックアップ時刻t2よりも早い場合、ステップ1160が実施される。ステップ1160において、オーダープッシュエンジン110は、第2のオーダーのピックアップ時刻t2と第1のオーダーのピックアップ時刻t1との間の時間間隔t2−t1をT2と比較することができる。ステップ1160は、処理モジュール210の決定ユニット350によって実施することができる。ここで、T2は、第1のオーダーを完了するための時間長L1と、第1のオーダーの目的地から第2のオーダーの出発位置まで運転するのに必要とされる推定時間とに基づいて入手することができる。幾つかの実施形態では、T2は、第1のオーダーを完了するための時間調整量δL1と、第1のオーダーの目的地から第2のオーダーの出発位置まで運転するのに必要とされる時間調整量とを含むことができる。T2がt2−t1未満でない場合、ステップ1150が実施され、第2のオーダーはプッシュされない。そうではなくT2がt2−t1未満である場合、ステップ1140が実施され、第2のオーダーがプッシュされる。幾つかの実施形態では、第2のオーダーは、リアルタイムでプッシュすることができる。幾つかの実施形態では、オーダープッシュエンジン110は、プッシュすると判断されたオーダーを記憶することができ、或る条件が満たされているときにオーダーをプッシュすることができる。この条件は、オーダーの数が或る特定の値に達したこと、或る特定の時点に達したこと等とすることができる。幾つかの実施形態では、プッシュすると判断されたオーダーを修正することができる。例えば、組み合わされるより適したオーダーが存在する場合、プッシュすると判断されたオーダーを再組み合わせすることができる。幾つかの実施形態では、T2は、t2−t1と比較することもできるし、t2−t1と或る値との間の差が事前に設定された値の範囲内にある、当該或る値と比較することもできる。幾つかの実施形態では、この事前に設定された値の範囲は、15分以下とすることができる。幾つかの実施形態では、この事前に設定された値の範囲は、10分以下とすることができる。幾つかの実施形態では、この事前に設定された値の範囲は、5分以下とすることができる。この事前に設定された値の範囲は、他の時間長であってもよい。
当然ながら、上記例は、例示の目的で提供されており、本開示の範囲を限定することを意図するものではない。当業者であれば、上記プロセスの原理についての本開示の教示の下で、上記機能を実現することができることを条件として、様々な変形及び変更を行うことができる。ただし、それらの変形及び変更は、本開示の趣旨及び範囲を逸脱することはできない。例えば、第2のオーダーのピックアップ時刻t2が、第1のオーダーのピックアップ時刻t1よりも早い場合、決定ユニット350は、第2のオーダーを完了するための時間長L2を、現在時刻t0と第1のオーダーのピックアップ時刻t1との間の時間間隔t1−t0と比較してもよい。L2がt1−t0よりも長い場合、オーダープッシュエンジン110は、第2のオーダーがプッシュされるのに適しておらず、第2のオーダーをプッシュすることができないと直接判断してもよい。また、決定ユニット380は、ドライバーの現在位置から第2のオーダーの出発位置まで運転するのに必要とされる時間と、第2のオーダーを完了するための推定時間長L2と、第2のオーダーの目的地から第1のオーダーの出発地までの運転に必要とされる推定時間との合計を求める必要がなくてもよい。幾つかの実施形態では、第2のオーダーのピックアップ時刻t2が第1のオーダーのピックアップ時刻t1よりも遅い場合、決定ユニット350は、第1のオーダーを完了するための推定時間長L1をt2−t1と比較してもよい。L1がt2−t1よりも長い場合、オーダープッシュエンジン110は、第2のオーダーがプッシュされるのに適しておらず、第2のオーダーをプッシュすることができないと直接判断してもよい。そのような全ての変更は、本開示の保護範囲内にある。
図12は、本開示に開示された特定のシステムを実施するように構成されたモバイルデバイスの構造を示している。幾つかの実施形態では、位置に関連した情報を表示及び通信するように構成されたユーザー端末デバイスが、モバイルデバイス1200であってもよい。このモバイルデバイスは、スマートフォン、タブレットコンピューター、ミュージックプレーヤー、ポータブルゲームコンソール、GPS受信機、ウェアラブル計算デバイス(例えば、メガネ、腕時計等)等を含んでもよいが、これらに限定されるものではない。モバイルデバイス1200は、1つ以上の中央処理装置(CPU)1240と、1つ以上のグラフィカル処理ユニット(GPU)1230と、ディスプレイ1220と、メモリ1260と、アンテナ1210(例えば、無線コミュニケーションユニット)と、記憶ユニット1290と、1つ以上の入力/出力(I/O)デバイス1250とを備えることができる。その上、モバイルデバイス1200は、他の任意の適した構成要素であってもよく、この構成要素には、システムバス又はコントローラー(図12に図示せず)が含まれるが、これらに限定されるものではない。図12に示すように、モバイルオペレーティングシステム1270(例えば、IOS、Android(登録商標)(アンドロイド)、Windows(登録商標) Phone(ウィンドウズフォン)等)及び1つ以上のアプリケーション1280を記憶ユニット1290からメモリ1260にロードし、CPU1240によって実施することができる。アプリケーション1280は、モバイルデバイス1200において位置に関連した情報を受信及び処理するように構成されたブラウザー又は他のモバイルアプリケーションを含んでもよい。乗客/ドライバーは、位置に関連したコミュニケーション情報をシステムI/Oデバイス1250を通じて取得し、オーダープッシュエンジン110及び/又はシステム100の他のモジュール若しくはユニット、例えばネットワーク150にこの情報を提供することができる。
上記で説明した様々なモジュール、ユニット及びそれらの機能を実施するために、コンピューターハードウェアプラットフォームが、1つ以上のエレメント(例えば、図1〜図11において説明したオーダープッシュエンジン110及び/又はシステム100の他のセクション)のハードウェアプラットフォームとして用いられてもよい。これらのハードウェアエレメント、オペレーティングシステム及びプログラム言語は一般に知られているので、当業者であれば、これらの技法に精通している可能性があり、本開示において説明した技法に従ってオン・デマンドサービスにおいて必要とされる情報を提供することが可能であり得ると仮定することができる。ユーザーインターフェースを有するコンピューターは、パーソナルコンピューター(PC)、又は他のタイプのワークステーション若しくは端末デバイスとして用いられてもよい。ユーザーインターフェースを有するコンピューターは、適切にプログラミングされた後、サーバーとして用いられてもよい。当業者であれば、このタイプのコンピューターデバイスのそのような構造、プログラム、又は一般的な動作にも精通している可能性があると考えることができる。このため、図について余分な説明は記載されていない。
図13は、本開示に開示された特定のシステムを実施するように構成されたコンピューティングデバイスの構造を示している。特定のシステムは、機能ブロック図を用いて、1つ以上のユーザーインターフェースを含むハードウェアプラットフォームを説明することができる。コンピューターは、一般的な機能を有するコンピューターであってもよいし、特定の機能を有するコンピューターであってもよい。いずれのタイプのコンピューターも、本開示の幾つかの実施形態に従って任意の特定のシステムを実施するように構成することができる。コンピューター1300は、本明細書において開示されたオン・デマンドサービスによって必要とされる情報を提供する任意の構成要素を実施するように構成することができる。例えば、オーダープッシュエンジン110は、コンピューター1300のようなコンピューターのハードウェアデバイス、ソフトウェアプログラム、ファームウェア、又はそれらの任意の組み合わせによって実施することができる。簡潔にするために、図13は、1つのコンピューターのみを示している。幾つかの実施形態では、オン・デマンドサービスが必要とすることがある情報を提供するこのコンピューターの機能は、システムの処理負荷を分散させるために、同様のプラットフォームからなるグループによって分散モードで実施されてもよい。
コンピューター1300は、データコミュニケーションを実施することができるネットワークと接続することができるコミュニケーション端末1350を備えることができる。コンピューター1300は、命令を実行するように構成されたCPUも備えることができ、1つ以上のプロセッサを備える。この概略的なコンピュータープラットフォームは、内部コミュニケーションバス1310と、異なるタイプのプログラム記憶ユニット及びデータ記憶ユニット(例えば、ハードディスク1370、リード・オンリー・メモリ(ROM)1330、ランダム・アクセス・メモリ(RAM)1340)と、コンピューター処理及び/又はコミュニケーションに適用可能な様々なデータファイルと、CPUによって実行される可能性がある幾つかのプログラム命令とを備えることができる。コンピューター1300は、当該コンピューターと他の構成要素(例えば、ユーザーインターフェース1380)との間のデータフローの入力及び出力をサポートすることができるI/Oデバイス1360も備えることができる。その上、コンピューター1300は、コミュニケーションネットワークを介してプログラム及びデータを受信することができる。
オン・デマンドサービスによって必要とされる情報を提供する方法及び/又はプログラムによって他のステップを実施する方法の様々な態様を上記で説明している。本技法のプログラムは、実行可能なコード及び/又は関係データの形態で提供される「製品」又は「人工物」とみなすことができる。本技法のプログラムは、コンピューター可読媒体によって結合(joined)又は実施することができる。有形の不揮発性記憶媒体は、コンピューター、プロセッサ、同様のデバイス、又は関連モジュールにおいて適用される任意のタイプのメモリ又は記憶装置を含んでもよい。例えば、有形の不揮発性記憶媒体は、様々なタイプの半導体記憶装置、テープドライブ、ディスクドライブ、又は記憶機能を任意の時点にソフトウェアに提供することが可能な同様のデバイスであってもよい。
ソフトウェアの幾つか又は全ては、時に、ネットワーク、例えば、インターネット又は他のコミュニケーションネットワークを介して通信することがある。この種のコミュニケーションは、或るコンピューターデバイス又はプロセッサから別のコンピューターデバイス又はプロセッサにソフトウェアをロードすることができる。例えば、ソフトウェアは、オン・デマンドサービスシステムの管理サーバー又はメインコンピューターから、コンピューター環境内のハードウェアプラットフォーム、このシステムを実施することが可能な他のコンピューター環境、又はオン・デマンドサービスによって必要とされる情報を提供する同様の機能を有するシステムにロードすることができる。これに対応して、ソフトウェアエレメントを送信するのに用いられる別の媒体を、機器のうちの幾つかの間の物理接続として用いることができる。例えば、光波、電流波、電磁波等をケーブル、光ケーブル又は無線によって伝送することができる。波を搬送するのに用いられる物理媒体、例えば、ケーブル、無線接続、光ケーブル等は、ソフトウェアをホストする媒体とみなすこともできる。本明細書では、有形の「記憶」媒体が特に指定されていない限り、コンピューター又は機械の「可読媒体」を表す他の術語も、任意の命令を実行するときにプロセッサによって結合される媒体を表すことができる。
コンピューター可読媒体は、様々な形態を含んでもよい。これらの形態には、有形の記憶媒体、波搬送媒体又は物理伝送媒体が含まれるが、これらに限定されるものではない。安定した記憶媒体は、コンパクトディスク、磁気ディスク、又は他のコンピューター又は同様のデバイスにおいて適用される記憶システムを含んでもよく、図面において説明したシステムの全てのセクションを実現してもよい。不安定な記憶媒体は、ダイナミックメモリ、例えば、コンピュータープラットフォームのメインメモリを含んでもよい。有形の伝送媒体は、コンピューターシステムの内部におけるバスを形成する回路を含めて、同軸ケーブル、銅ケーブル及び光ファイバーを含んでもよい。波搬送媒体は、電気信号、電磁気信号、音響信号又は光波信号を伝送することができる。そして、これらの信号は、無線周波数コミュニケーション又は赤外線データコミュニケーションによって生成されてもよい。一般のコンピューター可読媒体は、ハードディスク、フロッピーディスク、磁気テープ、又は他の任意の磁気媒体;CD−ROM、DVD、DVD−ROM、又は他の任意の光媒体;パンチカード、又は開口モードを含む他の任意の物理記憶媒体;RAM、PROM、EPROM、フラッシュEPROM、又は他の任意のメモリチップ若しくは磁気テープ;データ又は命令を伝送するのに用いられる搬送波、搬送波を伝送するのに用いられるケーブル若しくは接続デバイス、又はコンピューターにアクセス可能な他の任意のプログラムコード及び/又はデータを含んでもよい。コンピューター可読媒体のほとんどは、プロセッサによる命令の実行又は1つ以上の結果の送信において適用することができる。
当業者には、本開示の幾つかの実施形態に従って様々な代替形態及び改良形態を実現することができることを理解することができる。例えば、上記で説明したシステムの様々な構成要素は全て、ハードウェア機器によって実現される。実際は、上記で説明したシステムの様々な構成要素は、例えば、このシステムを現在のサーバー上にインストールすることによって単にソフトウェアによって実現されてもよい。これに加えて又はこれに代えて、本明細書において開示された位置情報は、ファームウェア、ファームウェア及びソフトウェアの組み合わせ、ファームウェア及びハードウェアの組み合わせ、又はファームウェア、ハードウェア及びソフトウェアの組み合わせによって提供されてもよい。
本開示及び/又は幾つかの他の例を上記において説明してきた。上記説明によれば、様々な代替形態を実現することができる。本開示の主題は、様々な形態及び実施形態において実現することができ、本開示は、様々なアプリケーションプログラムにおいて更に用いることができる。特許請求の範囲において保護される必要がある全ての用途、変更及び変形は、本開示の保護範囲内にあるとすることができる。