以下の記述は、当業者がこの開示を制作及び利用可能にするために提示され、特定のアプリケーション及びその要件の文脈で提供される。開示された実施形態に対する種々の変形は、当業者には容易に明らかであり、ここに定義される一般的原理は、この開示の精神と範囲を逸脱することなく、他の実施形態及びアプリケーションに適用可能である。従って、この開示は、図示された実施形態に限定されず、請求項に一致する最も広い範囲と一致する。
ここに使用される、「システム」、「エンジン」、「ユニット」、「モジュール」及び/又は「ブロック」という用語は、異なるコンポーネント、エレメント、パーツ、セクション又は昇べきの順に異なるレベルのアセンブリを区別するための1つの方法である。しかしながら、用語は、同じ目的を達成するのであれば、別の表現に交換することができる。
ここに使用される用語は、特定の例示実施形態を記載するためだけのために使用され、限定することを意図したものではない。ここに使用されるように、「ひとつの(a)」、「ひとつの(an)」及び「その(the)」という単一形は、コンテキストが明瞭にそうでないことを示さない限り、同様に複数形をも含むように意図されることができる。さらに、用語「備える(comprise)」、「備える(comprises)」、「及び/又は」、「含む(include)」、「含む(includes)」、及び/又は「含む(including)」は、この明細書で使用されるとき、記載された特徴、整数、ステップ、動作、エレメント及び/又はコンポーネントの存在を指定するが、1つ又は複数の他の特徴、整数、ステップ、動作、エレメント、コンポーネント、及び/又はそれらのグループの提示又は追加を排除しない。
これらの及び他の特徴及びこの開示の特性、並びに動作方法及び構造の関連要素の機能及びパーツの組み合わせ及び製造の経済は、それらの全てが、この開示の一部を形成する、添付図面を参照した以下の記述を考察するとより明らかになる。しかしながら、図面は説明及び記載の目的のためだけであり、この開示の範囲を限定することを意図したものではない。
この開示で使用されるフローチャートは、この開示のいくつかの実施形態に従ってシステムが実施する動作を説明する。フローチャートの動作は、順番に実施されなくてもよいことは、明瞭に理解される。反対に、動作は、逆の順序で実施されてもよいし、あるいは同時に実施されてもよい。さらに、1つ又は複数の他の動作をフローチャートに追加してもよい。1つ以上の動作をフローチャートから除去してもよい。
この開示における「乗客」、「要求者」、「サービス要求者」、及び「顧客」という用語は、サービスを要求する、又はオーダーすることができる個人、エンティティ、又はツールを指すように交換可能に使用される。また、この開示における、「ドライバ」、「プロバイダー」、「サービスプロバイダー」及び「サプライヤー」は、サービスを提供する、又はサービスの提供を容易にすることができる個人、エンティティ、又はツールを指すように交換可能に使用される。この開示における「ユーザ」という用語は、サービスを要求する、サービスをオーダーする、サービスを提供する、又はサービスの提供を容易にすることができる個人、エンティティ、又はツールを指すことができる。例えば、ユーザは乗客、ドライバ、オペレーター又は同様のもの、又はそれらの任意の組み合わせであり得る。この開示において、「乗客」、「ユーザ機器」、「ユーザ端末130」、及び「乗客端末」は、交換可能に使用されることができ、「ドライバ」及び「ドライバ端末」は交換可能に使用されることができる。
この開示の態様は、乗り物割り当て方法に関する。この開示によれば、オーダーは、ユーザ端末がサービスの要求を送信した後に乗り物に割り当てられる待ち行列に追加されることができる。ユーザ端末は、ユーザ端末のユーザに、オーダーのステータス(例えば、オーダーが乗り物に割り当てられたかどうか、オーダーが、乗り物に割り当てられるまでにどのくらい待たねばならないか、どのくらいの数の利用可能な乗り物が待ち行列にあるか等)を知らせるために、オーダースのテータスを表示するように指示されることができる。システム及び方法は、現在の時間期間内に現在のエリア内に送信されたサービス要求が、サービスプロバイダーの処理能力を超えているかどうかも判断することができる。現在の時間期間において、現在のエリア内のサービスが、予約超過している場合、システム及び方法は、1つ又は複数のトラベルモードをユーザに提供し、それによりユーザは、乗り物に割り当てられる別のトラベルモードに変更するように選択することができる。この開示に従うシステム及び方法は、乗り物に割り当てられる、より高速な待ち行列に切り替えるための1つ又は複数のオプションをユーザに提供することにより、サービス要求の処理を加速することができる。
図1は、この開示のいくつかの実施形態に従う、例示乗り物割り当てシステム100のブロック図である。例えば、システム100は、車を呼ぶサービス、運転手付き(chauffeur)サービス、車両配送サービス、相乗りサービス、バスサービス、ドライバ採用サービス、及びシャトルサービス等のような輸送サービスのためのオンライン輸送サービスプラットフォームであり得る。図1に示すように、乗り物割り当てシステム100はサーバー110、ネットワーク120、ユーザ端末120、ドライバ端末120及びストレージ150を含むことができる。
サーバー110は、サービス要求、例えば車を呼ぶためのサービス要求に関する情報及び/又はデータを処理するように構成されることができる。例えば、サーバー110は、ユーザ端末130からサービス要求を受信し、サービス要求に関するオーダーを処理し、乗り物をユーザ端末130に割り当てることができる。いくつかの実施形態において、サーバー110は、シングルサーバー又はサーバーグループであり得る。サーバーグループは、一元化することもできるし、分散することもできる(例えば、サーバー110は、分散システムであり得る)。いくつかの実施形態において、サーバー110は、ローカル又はリモートであり得る。例えば、サーバー110は、ユーザ端末130、ドライバ端末140、及び/又は、ネットワーク120を介したストレージ150内に記憶された情報及び/又はデータにアクセスすることができる。他の例として、サーバー110は、ユーザ端末120、ドライバ端末140、及び/又はストレージ150に直接接続して記憶された情報及び/又はデータにアクセスすることができる。いくつかの実施形態において、サーバー110は、クラウドプラットフォームにインプリメントすることができる。クラウドプラットフォームは、プライベートクラウド、パブリッククラウド、ハイブリッドクラウド、コミュニティクラウド、分散クラウド、インタークラウド、マルチクラウド、あるいは同等物、あるいはそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、サーバー110は、図2に説明されたコンピューティングデバイス200上にインプリメントすることができる。
いくつかの実施形態において、サーバー110は、処理エンジン111を含むことができる。処理エンジン111は、この開示に記載した1つ又は複数の機能を実行するためにサービス要求に関連した情報及び/又はデータを処理することができる。例えば、処理エンジン111は、サービス要求の開始ロケーションと目的地に基づく第1の推定価格を有するサービス要求に関するオーダーを生成することができる。他の例として、処理エンジン111は、オーダーを第1の待ち行列に追加することができる。さらに、他の例として、処理エンジン111は、ユーザが、サービス料金を上げることによりオーダーを加速することを選択した場合、第2の待ち行列にオーダーを追加することができる。いくつかの実施形態において、処理エンジン111は、1つ又は複数の処理エンジン(例えば、シングルコア処理エンジン(複数の場合もある)又はマルチコアプロセッサ(複数の場合もある))を含むことができる。処理エンジン111は、中央処理ユニット(CPU)、特定用途集積回路(ASIC)、特定用途命令セットプロセッサー(ASIP)、グラフィック処理ユニット(GPU)、物理処理ユニット(PPU)、デジタルシグナルプロセッサー(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックデバイス(PLD)、コントローラ、マイクロコントローラユニット、縮小命令セットコンピュータ(RISC)、マイクロプロセッサー、又は同等物、又はそれらの任意の組み合わせを含むことができる。
ネットワーク120は、情報及び/又はデータの交換を容易にすることができる。いくつかの実施形態において、乗り物割り当てシステム100における1つ又は複数のコンポーネント(例えば、サーバー110、ユーザ端末130、ドライバ端末140、及びストレージ150)は、情報及び/又はデータをネットワークを介して乗り物割り当てシステム100の別のコンポーネント(1つ又は複数)に送信することができる。例えば、サーバー110は、ネットワーク120を介してユーザ端末130からサービス要求を取得/獲得することができる。いくつかの実施形態において、ネットワーク120は、有線又は無線のネットワークの任意のタイプ、又はそれらの任意の組み合わせであり得る。ネットワーク120は、ケーブルネットワーク、有線ネットワーク、光ファイバーネットワーク、テレコミュニケーションネットワーク、イントラネット、インターネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線ローカルエリアネットワーク(WLAN)、メトロポリタンエリアネットワーク(MAN)、公衆電話交換網(PSTN)、ブルートゥースネットワーク、ZigBeeネットワーク、近距離無線通信(NFC)、又は同等物、又は、それらの任意の組み合わせを含むことができる。いくつかの実施形態において、ネットワーク120は、1つ又は複数のネットワークアクセスポイントを含むことができる。例えば、ネットワーク120は、基地局及び/又はインターネット交換ポイント120−1、120−2、・・・を含み、それらを介して、乗り物割り当てシステム100の1つ又は複数のコンポーネントがネットワーク120に接続してデータ及び/又は情報を交換することができる。いくつかの実施形態において、サービス要求者は、ユーザ端末130のユーザであり得る。いくつかの実施形態において、ユーザ端末130のユーザは、サービス要求者以外の誰かであり得る。例えば、ユーザ端末130のユーザAは、ユーザ端末130を使って、ユーザBに関するサービス要求を送信することができ、あるいはサーバー110からサービス、及び/又は情報、又は命令を受信することができる。いくつかの実施形態において、サービスプロバイダーは、ドライバ端末140のユーザであり得る。いくつかの実施形態において、ドライバ端末140のユーザは、サービスプロバイダー以外の誰かであり得る。例えば、ドライバ端末140のユーザCは、ドライバ端末140を使って、ユーザDに関するサービス要求を受信し、及び/又はサーバー110から情報又は命令を受信することができる。
ユーザ端末130は、ユーザから、開始ロケーション及び/又は目的地の入力を受信するように構成されることができる。代替的に、又は追加的に、ユーザ端末120は、サーバー110からの命令を受信して、開始ロケーション及び/又は目的地を取得することができる。いくつかの実施形態において、ユーザ端末130は、サービス要求を処理エンジン111に送信することができる。サービス要求は、開始ロケーション、目的地、ユーザ端末120のユーザ識別子、サービス時間、ユーザ端末120がサービス要求を開始するロケーション、サービスタイプ、又は同等物、又はそれらの任意の組み合わせを含むことができる。他の例として、ユーザ端末130は、処理エンジン111により送信された異なる表示命令(例えば、第1の表示命令、第2の表示命令、第3の表示命令、第4の表示命令、第5の表示命令)を受信することができる。
いくつかの実施形態において、ユーザ端末130は、モバイルデバイス130−1、タブレットコンピュータ130−2、ラップトップコンピュータ130−3、自動車内のビルトインデバイス130−4、又は同等物、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、モバイルデバイス130−1は、スマートホームデバイス、ウエアラブルデバイス、スマートモバイルデバイス、バーチャルリアリティデバイス、オーグメンテッドリアリティデバイス(augmented reality devices)ができる。いくつかの実施形態において、スマートホームデバイスは、スマートライティングデバイス、インテリジェント電気装置の制御デバイス、スマートモニタリングデバイス、スマートテレビジョン、スマートビデオカメラ、インターフォン、又は同等物、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、ウエアラブルデバイスは、スマートブレスレット、スマートフットギア(smart footgear)、スマートグラス、スマートヘルメット、スマートウォッチ、スマートクロージング(smart clothing)、スマートバックパック、スマートアクセサリ、又は同等物、又はそれらの組み合わせを含むことができる。いくつかの実施形態において、スマートモバイルデバイスは、スマートフォン、パーソナルデジタルアシスタンス(PDA)、ゲーミングデバイス、ナビゲーションデバイス、ポイントオブセール(POS)デバイス、又は同等物、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、バーチャルリアリティデバイス及び/又はオーグメンテッドリアリティデバイスは、バーチャルリアリティヘルメット、バーチャルリアリティーグラス、バーチャルリアリティーパッチ、オーグメンテッドリアリティヘルメット、オーグメンテッドグラス、オーグメンテッドリアリティパッチ、又は同等物、又はそれらの任意の組み合わせを含むことができる。例えば、バーチャルリアリティデバイス及び/又はオーグメンテッドリアリティデバイスは、グーグルグラス(Google Glass)、オキュラスリフト(Oculus Rift)、ホロレンズ(Hololens)、ギアVR(Gear VR)等を含むことができる。いくつかの実施形態において、自動車130−4内のビルトインデバイスは、オンボードコンピュータ、オンボードテレビジョン等を含むことができる。いくつかの実施形態において、ユーザ端末130は、サービス要求及び/又はユーザ端末130のロケーションを特定するための位置決め技術を有したデバイスであり得る。
いくつかの実施形態において、ドライバ端末140は、ドライバ及び/又はドライバ端末140のロケーションを特定するための位置決め技術を有したデバイスであり得る。いくつかの実施形態において、ユーザ端末130及び/又はドライバ端末140は、他の位置決めデバイスと通信し、サービス要求者、ユーザ端末130、ドライバ、及び/又はドライバ端末140のロケーションを決定することができる。
ストレージ150は、サービス要求に関するデータ及び/又は命令を記憶することができる。いくつかの実施形態において、ストレージ150はユーザ端末130及び/又はドライバ端末140から取得したデータを記憶することができる。いくつかの実施形態において、ストレージ150は、この開示に記載された例示方法を実行するためにサーバー110が実行又は使用することができるデータ及び/又は命令を記憶することができる。例えば、ストレージ150は、過去の待ちデータを記憶するように構成することができる。過去の待ちデータは、複数の過去のオーダーに関する過去の情報、例えば、過去のオーダーの開始ロケーション、過去のオーダーの目的地、過去のオーダーのオーダータイプ、過去のオーダーのステータスに関する過去の情報、又は同等物、又はそれらの任意の組み合わせを含むことができる。
いくつかの実施形態において、ストレージ150は、マスストレージ、リムーバブルストレージ、揮発性リードアンドライトメモリ、リードオンリーメモリ(ROM)、又は同等物、又はそれらの任意の組み合わせを含むことができる。例示マスストレージは、磁気ディスク、光ディスク、ソリッドステートドライブ等を含むことができる。例示リムーバブルストレージは、フラッシュドライブ、フロッピーディスク、光ディスク、メモリカード、ジップディスク(zip disk)、磁気テープ等を含むことができる。例示揮発性リードアンドライトメモリは、ランダムアクセスメモリ(RAM)を含むことができる。例示RAMは、ダイナミックRAM(DRAM)、ダブルデートレート同期ダイナミックRAM(DDR SDRAM)、スタティックRAM(SRAM)、サイリスタRAM(T−RAM)、及びゼロキャパシターRAM(Z−RAM)等を含むことができる。例示ROMは、マスクROM(MROM)、プログラマブルROM(PROM)、イレーザブルプログラマブルROM(PEROM)、電気的イレーザブルプログラマブルROM(EEPROM)、コンパクトディスクROM(CD−ROM)、及びデジタルバーサタイルディスクROM等を含むことができる。いくつかの実施形態において、ストレージ150は、クラウドプラットフォームにインプリメントすることができる。単なる例示として、クラウドプラットフォームは、プライベートクラウド、パブリッククラウド、ハイブリッドクラウド、コミュニティクラウド、分散クラウド、インタークラウド、マルチクラウド、又は同等物、又はそれらの任意の組み合わせを含むことができる。
いくつかの実施形態において、ストレージ150は、ネットワーク120に接続して、乗り物割り当てシステム100内の1つ又は複数のコンポーネント(例えば、サーバー110、ユーザ端末130、ドライバ端末140)と通信することができる。乗物割り当てシステム100内の1つ又は複数のコンポーネントは、ネットワーク120を介してストレージ150に記憶されたデータ及び/又は命令にアクセスすることができる。いくつかの実施形態において、ストレージ150は、乗り物割り当てシステム100内の1つ又は複数のコンポーネント(例えば、サーバー110、ユーザ端末130、ドライバ端末140)に直接接続することができる。いくつかの実施形態において、ストレージ150は、サーバー110の一部であり得る。
いくつかの実施形態において、乗り物割り当てシステム100内の1つ又は複数のコンポーネント(例えば、サーバー110、ユーザ端末130、ドライバ端末140)は、ストレージ150にアクセスすることができる。いくつかの実施形態において、乗り物割り当てシステム100内の1つ又は複数のコンポーネントは、1つ又は複数の条件が満足されると、サービス要求、ドライバ、及び/又は公共(the public)に関する情報を読み及び/又は変更することができる。例えば、サーバー110は、サービスの後に1つ又は複数のユーザ情報を読み、及び/又は変更することができる。他の例として、ドライバ端末140は、ユーザ端末130からのサービス要求を受信すると、サービス要求に関する情報にアクセスすることができるが、ドライバ端末140は、サービス要求の関連情報を変更することはできない。いくつかの実施形態において、乗り物割り当てシステム100の1つ又は複数のコンポーネントの情報交換は、サービスを要求することにより達成することができる。サービス要求の対象は、任意のプロダクト(product)であり得る。いくつかの実施形態において、プロダクトは、有形(tangible)のプロダクト又は無形(immaterial)のプロダクトであり得る。有形のプロダクトは、食料、医薬品、日用品、化学製品、電気製品、衣服、車、ハウジング、ぜいたく品、又は同等物、又はそれらの任意の組み合わせを含むことができる。無形のプロダクトは、サービスプロダクト、財務プロダクト、知識プロダクト、インターネットプロダクト、又は同等物、又は、それらの任意の組み合わせを含むことができる。インターネットプロダクトは、個人のホストプロダクト、ウエブプロダクト、モバイルインターネットプロダクト、コマーシャルホストプロダクト、エンベデッドプロダクト(embedded product)、又はそれらの任意の組み合わせを含むことができる。モバイルインターネットプロダクトは、モバイル端末のソフトウエア、プログラム、システム、又は同等物、又はそれらの任意の組み合わせに使用することができる。モバイル端末は、タブレットコンピュータ、ラップトップコンピュータ、モバイルフォン、パーソナルデジタルアシスタンス(PDA)、スマートウォッチ、ポイントオブセール(POS)デバイス、オンボードコンピュータ、オンボードテレビジョン、ウエアラブルデバイス、又は同等物、又は、それらの任意の組み合わせを含むことができる。例えば、プロダクトは、コンピュータ又はモバイルフォンに使用される任意のソフトウエア及び/又はアプリケーションであり得る。ソフトウエア及び/又はアプリケーションは、社交、ショッピング、輸送、エンターテイメント、学習、投資、又は同等物、又はそれらの任意の組み合わせに関連することができる。いくつかの実施形態において、輸送に関連するソフトウエア及び/又はアプリケーションは、トラベリングソフトウエア及び/又はアプリケーション、乗り物スケジューリングソフトウエア及び/又はアプリケーション、マッピングソフトエア及び/又はアプリケーション等を含むことができる。乗り物スケジューリングソフトウエア及び/又はアプリケーションにおいて、乗り物は、馬、馬車(carriage)、人力車(rickshaw)(例えば、手押し車、自転車、三輪車)、車(例えば、タクシー、バス、自家用車)、電車、地下鉄、船、航空機(例えば、飛行機、ヘリコプター、スペースシャトル、ロケット、熱気球)、又は同等物、又はそれらの任意の組み合わせを含むことができる。
図2は、この開示のいくつかの実施形態に従うコンピューティングデバイス200(例えば、サーバー110)の例示ハードウエア及び/又はソフトウエアコンポーネントのブロック図である。特定のシステムは、機能ブロック図を使用して1つ又は複数のユーザインターフェースを含むハードウエアプラットフォームを説明することができる。コンピュータは、汎用の又は特定の機能のコンピュータであり得る。両方のタイプのコンピュータは、この開示のいくつかの実施形態に従う任意の特定のシステムをインプリメントするように構成することができる。コンピューティングデバイス200は、この記載で開示された乗り物割り当てにより要求された情報を提する任意のコンポーネントをインプリメントするように構成することができる。例えば、サーバー110は、コンピューティングデバイス200のようなコンピュータのハードウエアデバイス、ソフトエアプログラム、ファームウエア、又はそれらの任意の組み合わせによりインプリメントすることができる。単なる例示として、サーバー110をインプリメントするように構成されたコンピューティングデバイス200は、過去の待ちデータに基づいてオーダーの推定待ち時間を決定することができる。例えば、コンピューティングデバイス200は、アルゴリズムに従ってオーダーの推定待ち時間を決定するために過去の待ちデータを処理することができる。アルゴリズムは、クラスター解析、ファクター解析、相関解析、対応解析、回帰分析、分散分析、又は同等物、又はそれらの任意の組み合わせを含むことができる。他の例として、コンピューティングデバイス200は、第1の待ち行列内の推定待ち時間が、時間しきい値(例えば、第1の時間しきい値、第2の時間しきい値、第3の時間しきい値、第4の時間しきい値)より大きいと判断することができる。簡単のために、図2は、1つのコンピュータのみを示す。いくつかの実施形態において、乗り物割り当てが必要とする情報を提供するコンピュータの機能は、システムの処理の負荷を分散するために分散モードの類似のプラットフォームのグループによりインプリメントすることができる。
コンピューティングデバイス200は、データ通信をインプリメントすることができるネットワークに接続することができる通信端末250を含むことができる。コンピューティングデバイス200は、また、命令を実行するように構成されたCPUを含むことができ、1つ又は複数のプロセッサーを含む。概略コンピュータプラットフォームは、内部通信バス210、異なるタイプのプログラムストレージユニット及びデータストレージユニット、例えば、ハードディスク270、ROM230、RAM240)、コンピュータ処理及び/又は通信に適用可能な種々のデータファイル、及び恐らくCPUにより実行されるいくつかのプログラム命令を含むことができる。コンピューティングデバイス200は、また、コンピュータ及び他のコンポーネント(例えば、ユーザインターフェース)間のデータフローの入出力をサポートすることができる。さらに、コンピューティングデバイス200は、通信ネットワークを介してプログラムとデータを受信することができる。
図3は、この開示のいくつかの実施形態に従って、ユーザ端末130又は、ドライバ端末140をインプリメントすることができるモバイル端末300の例示ハードウエア及び/又はソフトウエアコンポーネントのブロック図を説明する。モバイルデバイス300は、これらに限定されないけれども、スマートフォン、タブレットコンピュータ、ミュージックプレイヤ、ポータブルゲームコンソール、GPS受信機、ウエアラブルカルキュレーティングデバイス(例えば、眼鏡、ウォッチ)等を含むことができる。モバイルデバイス300は、1つ又は複数のCPUs340、1つ又は複数のGPUs330、ディスプレイ320、メモリ360、アンテナ310(例えば、ワイヤレス通信ユニット)、ストレージユニット390、及び1つ又は複数の入出力(I/O)ユニットデバイス350を含むことができる。さらに、モバイルデバイス300はまた、これに限定されないけれども、システムバス又は(図3に図示しない)コントローラを含む任意の他の適切なコンポーネントであり得る。図3に示すように、モバイルオペレーティングシステム(例えば、IOS、アンドロイド、ウインドウズフォーン)及び1つ又は複数のアプリケーション380は、ストレージユニット390からメモリ360へロードすることができ、CPUs340によりインプリメントすることができる。アプリケーション380は、ブラウザ、又は、モバイルデバイス300内のロケーションに関連する情報を受信し処理するように構成される他のモバイルアプリケーションを含むことができる。
上述した種々のモジュール、ユニット及び機能をインプリメントするために、コンピュータハードウエアプラットフォームは、1つ又は、複数のエレメント(例えば、サーバー110及び/又は図1に記載した乗り物割り当てシステム100の他のセクション)のハードウエアプラットフォームとして使用することができる。これらのハードウエアエレメント、オペレーティングシステム、及びプログラム言語は、一般的であるので、当業者は、これらの技術に精通しており、この開示に記載された技術に従う乗り物割り当てに必要な情報を提供できると仮定することができる。ユーザインターフェースを有するコンピュータは、パーソナルコンピュータ(PC)、又は、他のタイプのワークステーション又は端末デバイスとして使用することができる。適切にプログラムした後、ユーザインターフェースを有するコンピュータは、サーバーとして使用することができる。当業者は、この種のコンピュータデバイスのそのような構成、プログラム、又は汎用動作にも精通していると考えることができる。従って、図面に対する追加説明は記載しない。
図4は、この開示のいくつかの実施形態に従う、例示処理エンジン111に説明する概略ブロック図である。処理エンジン111は、受信モジュール410、オーダー生成モジュール420、割り当てモジュール430及び送信モジュール440を含むことができる。受信モジュール410、オーダー生成モジュール420、割り当てモジュール430及び送信モジュール440は、処理エンジン111のすべて又は一部のハードウエア回路であり得る。受信モジュール410、オーダー生成モジュール420、割り当てモジュール430、及び送信モジュール440は、また、処理エンジン111により読んで実行されるアプリケーション又は命令のセットとしてインプリメントすることができる。さらに、受信モジュール410、オーダー生成モジュール420、割り当てモジュール430及び送信モジュール440は、ハードウエア回路及びアプリケーション/命令セットの任意の組み合わせであり得る。例えば、処理エンジン111がアプリケーション/命令セットを実行するとき、受信モジュール410、オーダー生成モジュール420、割り当てモジュール430及び送信モジュール440は、処理エンジン111の一部であり得る。
いくつかの実施形態において、受信モジュール410は、システム100内の1つ又は複数のコンポーネントからの及び/又は1つ又は複数のコンポーネントへのサービス要求に関連する情報を受信及び/又は送信するように構成することができる。例えば、受信モジュール410は、ユーザ端末120からサービス要求を受信することができる。サービス要求は、開始ロケーション、目的地、ユーザ端末130のユーザ識別子、サービス時間、ユーザ端末130がサービス要求を開始するロケーション、サービスタイプ、又は同等物、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、開始ロケーション及び/又は目的地は、物理アドレス、緯度情報及び経度情報により表される地理的ロケーションを含むことができる。ユーザ端末130は、サービス要求を開始するためにユーザ(例えば、乗客、サービス要求者)により使用される端末(例えば、スマートフォンのようなワイヤレスデバイス、タブレットコンピュータ、ラップトップコンピュータ等)を含むことができる。例えば、ユーザ端末130は、サービス要求が開始されるアプリケーションでインプリメントすることができる。
他の例として、受信モジュール410は、過去の待ちデータを取得することができる。いくつかの実施形態において、受信モジュール410は、乗り物に取り付けられたデバイス、市町村輸送システム、特定データベース(例えば、ストレージ150)、又は同等物、又はそれらの任意の組み合わせから過去の待ちデータを取得することができる。特定のデータベースは、大量の過去の待ちデータを記憶し解析するように構成されたデータベースを参照することができる。過去の待ちデータの詳細な記述は、この開示の他の場所(例えば、図5に関連して)に見出すことができる。
オーダー生成モジュール420は、開始ロケーションと目的地に基づいて第1の推定価格を有するサービス要求に対してオーダーを生成することができる。いくつかの実施形態において、オーダーは、異なるサービス要求に応答して異なるタイプのオーダーを含むことができる。異なるサービス要求の詳細な記述は、この開示のいずれか(例えば、図5に関連して)に見出すことができる。いくつかの実施形態において、オーダー生成モジュール420は、開始ロケーション、目的地、サービス時間、サービスタイプ、又は同等物、又はそれらの任意の組み合わせに基づいて第1の推定価格を決定することができる。第1の推定価格を決定する詳細な記述は、(例えば、図5に関連して)この開示のいずれかに見出すことができる。
割り当てモジュール430は、乗り物を、オーダーに関連するユーザ端末に割り当てるように構成することができる。割り当てモジュール430は、第1の待ち行列ユニット431おおび第2の待ち行列ユニット433を含むことができる。第1の待ち行列ユニット431は、第1の待ち行列内のオーダーに関連するデータを処理するように構成することができる。例えば、第1の待ち行列ユニット431は、オーダーを、乗り物に割り当てる第1の待ち行列に追加することができる。第1の待ち行列は、順番に処理されるのを待っているオーダーのスタックを含むことができる。他の例として、第1の待ち行列431は、第1の待ち行列の待ち行列モードを決定することができオーダーを第1の待ち行列に追加することができる。待ち行列モードは、オーダーの確認時間に関する厳格モードと、オーダーの重みに関する非厳格モードとを含むことができる。さらに、他の例として、第1の待ち行列ユニット431は、第1の待ち行列内の推定待ち時間が第2の時間しきい値より大きいかどうか、第1の待ち行列内の現在の待ち時間が第3の時間しきい値及び/又は第4の時間しきい値より大きいかどうか、オーダーが第1の条件を満足するか、又は同様のもの、又はそれらの任意の組み合わせを、判断することができる。
第2の待ち行列ユニット433は、第2の待ち行列内のオーダーに関するデータを処理するように構成されることができる。例えば、第2の待ち行列ユニット433が第2の推定価格を有する代替トラベル示唆の選択を受信する場合、第2の待ち行列ユニット433は、そのオーダーを第2の待ち行列に追加することができる。第2の待ち行列と第2の推定価格の詳細な記述は、この開示のいずれか(例えば、図15に関連して)見出すことができる。
送信モジュール440は、サービス要求に関連する情報及び/又はデータをユーザ端末130に送信するように構成することができる。送信モジュール440は、第1送信ユニット441、第2の送信ユニット443、第3の送信ユニット445、第4の送信ユニット447、及び第5の送信ユニット449を含むことができる。第1の送信ユニット441は、第1の表示命令をユーザ端末130に送信するように構成することができる。第1の表示命令は、ユーザ端末130に、オーダーのステータスに関する情報を表示するように指示することができる。いくつかの実施形態において、第1の送信ユニット441は、オーダー前の第1の待ち行列内のオーダー待ち個数がオーダーしきい値より大きいとき、第1の表示命令をユーザ端末130に送信することができる。いくつかの実施形態において、第1の送信ユニット441は、現在の待ち時間が第1のしきい値より長いとき、第1の表示命令をユーザ端末130に送信することができる。いくつかの実施形態において、第1の送信ユニット441は、所定の状況下でオーダーが生成されると、第1の表示命令をユーザ端末130に送信することができる。いくつかの実施形態において、第1の送信ユニット441は、新しい第1の表示命令をユーザ端末130に再送信することができる。
2の送信ユニット443は、オーダー前の第1の待ち行列内のオーダー待ちの個数がオーダーしきい値未満のとき、又は第1の待ち行列内の推定待ち時間が第1の時間しきい値未満のとき、第2の表示命令をユーザ端末130に送信するように構成することができる。オーダーしきい値、第1の時間しきい値の詳細な記述は、この開示のいずれか(例えば、図5に関連して)見出すことができる。第2の表示命令は、ユーザ端末130に、乗り物割り当てステータスを表示するように指示することができる。
いくつかの実施形態において、第2の送信ユニット443は、通常の時間に、第2の表示命令をユーザ端末130に直接送信することができる。通常時間は、利用可能な乗り物の数が、その時間期間に待ち行列(例えば、第1の待ち行列、第2の待ち行列等)内のオーダーの数より大きいかまたはほぼ等しいときの時間期間を指すことができる。
第3の送信ユニット445は、第1の待ち行列内の推定待ち時間が第2の時間しきい値より大きいとき、第3の表示命令をユーザ端末130に送信するように構成することができる。第3の表示命令は、サービス要求を完了するための選択のための1つ又は複数の示唆を表示するようにユーザ端末130に指示することができる。1つまたは複数の示唆は、相乗り、相乗りシャトルサービス、又は任意の他のタイプのサービスのような1つ又は複数の代替トラベルモードと、それらの関連する情報を含むことができる。
第4の送信ユニット447は、第1の待ち行列内の現在の待ち時間が第3のしきい値より大きいとき、ユーザ端末130に第4の表示命令を送信することができるように構成される。第4の表示命令は、ユーザ端末130に、待ち続けるかどうかに関する問い合わせを表示するように指示することができる。
第5の送信ユニット449は、オーダーが第1の条件を満足するとき、ユーザ端末130に第5の表示命令を送信するように構成することができる。第5の表示命令は、第2の推定価格を有するサービスに対して選択のための代替トラベル示唆をユーザに表示するように、ユーザ端末130に指示することができる。
処理エンジン111内のモジュール及び/又はユニットは、有線接続又は無線接続を介して、互いに接続又は通信することができる。有線接続は、金属ケーブル、光学ケーブル、ハイブリッドケーブル、又は同等物、又はそれらの任意の組み合わせを含むことができる。無線接続は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ブルートゥース(登録商標)、ZigBee(登録商標)、近距離無線通信(NFC)、又は同等物、又はそれらの任意の組み合わせを含むことができる。2つ以上のモジュール及び/又はユニットは、単一モジュールとして組み合わせることができ、いずれか1つのモジュールを2つ以上のユニットに分割することができる。
例えば、第1の待ち行列ユニット431は、両方が乗り物をユーザ端末に割り当てることができる単一モジュールとして第2の待ち行列ユニット433内に統合することができる。他の例として、送信モジュール440内の5つの送信ユニットの2つ以上が1つのユニットとして統合され表示命令をユーザ端末に送信することができる。
図5は、この開示のいくつかの実施形態に従うサービス要求のための乗り物を割り当てる例示プロセス500を説明するフローチャートである。いくつかの実施形態において、プロセス500内の1つ又は複数のステップは、図1に説明される乗り物割り当てシステム100内にインプリメントすることができる。例えば、プロセス500内の1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又はストレージ(例えば、ROM230、RAM240等)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン111、又はサーバー110内の処理エンジン111のCPU220)により、起動及び/又は実行することができる。
510において、処理エンジン111(又は受信モジュール410)は、ユーザ端末からサービス要求を受信することができる。サービス要求は、開始ロケーション、目的地、ユーザ端末のユーザ識別子、サービス時間、ユーザ端末がサービス要求を開始する位置、サービスタイプ、又は同等物、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、開始ロケーション及び/又は目的地は、物理アドレス、又は緯度及び経度情報で表される地理的ロケーションを含むことができる。
ユーザ端末は、サービス要求を開始するために、ユーザ(例えば、乗客、サービス要求者)により使用される端末(例えば、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、等)を含むことができる。例えば、ユーザ端末は、サービス要求が開始されるアプリケーションでインプリメントすることができる。例えば、ユーザがオンデマンドサービスにより星華路地(Xinghua Alley)から北海北門(Beihai North Gate)に行こうとするとき、ユーザは、ユーザのモバイルフォンにインストールされたアプリケーションで、星華路地を開始ロケーションとして入力し、北海北門を目的地として入力することができる。ユーザは、テキストを入力し、音声を記録し、GPSを介して自動的に位置決めされ、ユーザのモバイルフォンにインストールされたマップアプリケーションに標示されるロケーションを選択し、ユーザの過去の使用に基づいて、アプリケーションにより推奨される1つ以上のロケーションからロケーションを選択し、又は同様のもの、又はそれらの任意の組み合わせにより、開始ロケーション及び/又は目的地を入力することができる。ユーザは、次に、開始ロケーションと目的地を含むサービス要求を、アプリケーションを介して処理エンジン111に送信することができる。520において、処理エンジン111(又は、オーダー生成モジュール420)は、開始ロケーション及び目的地に基づいて第1の推定価格を有するサービス要求に関するオーダーを生成することができる。
いくつかの実施形態において、処理エンジン111は、開始ロケーションと目的地を含むサービス要求が確認されると、オーダーを生成することができる。いくつかの実施形態において、オーダーは、異なるサービス要求に応答して異なるタイプのオーダーを含むことができる。例えば、オーダーは、タクシーオーダー、相乗りオーダー、運転手付きオーダー、等を含むことができる。他の例として、オーダーは、ユーザ端末のユーザ識別子に基づいて個人オーダー及び企業オーダーを含むことができる。さらに他の例として、オーダーは、開始ロケーションとサービスタイムに基づいたアクティビティオーダーを含むことができる。アクティビティオーダーは、同じ及び/又は類似の開始ロケーションで同じ及び/又は類似のサービス時間で複数のユーザにより開始することができる。例えば、コンサート又はパーティが終了すると、大多数のユーザは、複数のサービス要求を送信する可能性がある。処理エンジン111は、複数のサービス要求に基づいて複数のアクティビティオーダーを生成することができる。
いくつかの実施形態において、処理エンジン111は、開始ロケーション、目的地、サービス時間、サービスタイプ、又は同等のもの、又はそれらの任意の組み合わせを決定することができる。例えば、処理エンジン111は、開始ロケーションと目的地との間の運転距離に基づいて第1の推定価格を決定することができる。さらに他の例として、プロセッサーは、開始ロケーションと目的地との間の運転距離と、サービス時間とに基づいて第1の推定価格を決定することができる。さらに他の例として、プロセッサーは、開始ロケーションと目的地との間の運転距離と、サービスタイプに基づいて第1の推定価格を決定することができる。530において、処理エンジン111(又は、割り当てモジュール430、第1の待ち行列ユニット431)は、オーダーを、乗り物に割り当てる第1の待ち行列に追加することができる。
いくつかの実施形態において、処理エンジン111は、第1の待ち行列の待ち行列モードを決定し、オーダーを第1の待ち行列に追加することができる。待ち行列モードは、オーダーの確認時間に関して厳格モードを含めることができる。第1の待ち行列は、処理される待ち行列内で待っている注文のスタックを含めることができる。オーダーが確認されるのが早ければ早いほど、オーダーは、第1待ち行列内に早く並ぶ、すなわち、それだけ早くオーダーが処理される。第1の待ち行列の厳格モードによれば、例えば、午前9:00に確認されたオーダーは、午前9:06に確認されたオーダーより前であって、午前8:57に確認されたオーダーの後に、第1の待ち行列に並ぶことができる。いくつかの実施形態において、待ち行列モードは、オーダーの重みに関して、非厳格モードを含めることができる。オーダーの重みが大きいければ大きいほど、それだけ早く、オーダーが第1の待ち行列に並ぶ、すなわち、それだけ早くオーダーが処理される。オーダーの重みは、開始ロケーション、オーダーの目的地、開始ロケーションと目的地との間の運転距離、オーダーが生成されたエリア、等に関連づけることができる。例えば、かなり長い運転距離を伴うオーダーは、相対的に短い運転距離のオーダーよりも大きな重みを有することができる。従って、相対的に長い運転距離を伴うオーダーは、相対的に短い運転距離を伴うオーダーの前に第1の待ち行列に並ぶことができる。いくつかの実施形態において、処理エンジン111は、リアルタイムな状況に基づいて第1の待ち行列の待ち行列モードを動的に決定することができる。例えば、過剰需要の状況(例えば、多くのユーザ人口がサービスを要求する、雨の日や雪の日)では、処理エンジン111は、厳格モードに基づいて、乗り物に割り当てられる第1の待ち行列にオーダーを追加することができる。他の例として、利用可能な乗り物の数がサービスを要求するユーザに適合する、豊富な供給状況では、処理エンジン111は、非厳格モードに従って、乗り物に割り当てられる第1の待ち行列にオーダーを追加することができる。
いくつかの実施形態において、第1の待ち行列は、異なるオーダーに基づいた複数の第1のサブ待ち行列を含むことができる。複数の第1のサブ待ち行列は、タクシー待ち行列、相乗り待ち行列、運転手付き待ち行列、個人の待ち行列、企業待ち行列、アクティビティ待ち行列、又は同等物、又はそれらの任意の組み合わせを含むことができる。
例えば、処理エンジン111は、タクシーに割り当てられる第1の待ち行列のタクシー待ち行列にタクシーオーダーを追加することができる。他の例として、処理エンジン111は、乗り物に割り当てられる第1の待ち行列のアクティビティ待ち行列にアクティビティオーダーを追加することができる。いくつかの実施形態において、異なるサブ待ち行列は、サブ待ち行列内に、異なる処理特性のオーダーを生じさせる異なる待ち行列モードを有することができる。例えば、コンサート終了時刻頃のアクティビティ待ち行列内のオーダーは、同時刻の又は同時刻頃のタクシー待ち行列内のオーダーよりも早く処理することができる。
540において、処理エンジン111(又は、送信モジュール440、第1の送信ユニット441)は、第1の表示命令をユーザ端末に送信することができる。第1の表示命令は、ユーザ端末にオーダーのステータスに関する情報を表示するように指示することができる。オーダーのステータスに関する情報は、第1の推定価格、オーダー前の第1の待ち行列内のオーダー待ちの個数、第1の待ち行列内のオーダーの推定待ち時間、第1の待ち行列のオーダー待ちの総数、又は第1の待ち行列内のオーダーを受けることができる現在利用可能な乗り物の数、又は同等のもの、又はそれらの任意の組み合わせを含むことができる。第1の待ち行列内のオーダーの推定待ち時間を決定する詳細な記述は、この開示のいずれか(例えば、図8に関連して)見出すことができる。
いくつかの実施形態において、処理エンジン111(又は、送信モジュール440、第1の送信ユニット441)は、オーダー前の第1の待ち行列内のオーダー待ち個数がオーダーしきい値より大きいとき、第1の表示命令をユーザ端末に送信することができる。オーダーしきい値は、すべてのオーダーに適用される、システム100内に設定された所定の値であり得る。あるいは、オーダーしきい値は、エリア、サービス時間等のようなオーダー関連した情報に基づいて動的に決定してもよい。他の例として、オーダーしきい値は、異なるエリア及び/又は異なるサービス時間によって、変動してもよい。いくつかの実施形態において、エリアは、開始ロケーションに基づいて決定することができる。例えば、処理エンジン111は、マップを複数のグリッドに分割することができる。エリアは、開始ロケーションがマップ内に位置するグリッド、開始ロケーションが、マップ内の1つ又は複数の隣接グリッドに位置するグリッド、マップ内の所定半径の開始ロケーションに中心がある環状エリア、又は、緯度情報おび経度情報に基づいたエリア等を含むことができる。
いくつかの実施形態において、処理エンジン111(又は、送信モジュール440、第1の送信ユニット441)は、現在の待ち時間が第1の時間しきい値よりも長いとき、ユーザ端末に第1の表示命令を送信することができる。第1の時間しきい値は、すべてのオーダーに適用される、システム100内に設定される所定の値であり得る。代替的に、第1の時間しきい値は、エリア、サービス時間等のような、オーダーに関連した情報に基づいて動的に決定することができる。他の例として、第1の時間しきい値は、異なるエリア及び/又は異なるサービス時間によって変動することができる。
いくつかの実施形態において、処理エンジン111(又は、送信モジュール440第1の送信ユニット441)は、オーダーが所定の状況下で生成されるとき、ユーザ端末に第1の表示命令を送信することができる。例えば、処理エンジン111は、第1の待ち行列内のオーダーを受ける利用可能な乗り物が過剰予約しているとき、第1の表示命令を送信することができる。他の例として、処理エンジン111は、1日のうちのラッシュアワー(例えば、午前7:30から9:30、午後5:00から7:00まで)の時間帯、雨の日又は雪の日、等に第1の表示命令を送信することができる。ラッシュアサーは、待ち行列内の利用可能な乗り物の数が待ち行列内のオーダーの数未満であるときの時間期間を指す。
いくつかの実施形態において、オーダーのステータスに関連する情報は、さらに、第2の推定価格、オーダー前の第2の待ち行列のオーダー待ちの個数、第2の待ち行列のオーダーの推定待ち時間、第2の待ち行列のオーダー待ちの総数、又は、第2の待ち行列内のオーダーを受けることができる現在利用可能な乗り物の数、又は、同等のもの、又はそれらの任意の組み合わせを含むことができる。第2の推定価格は、第1の推定価格よりも高くすることができる。第2の待ち行列は、第2のサービスタイプ、又は乗り物を割り当てる別の方法に関連づけることができる。第2の待ち行列内のオーダーの推定待ち時間の詳細な記述は、この開示のいずれか(例えば、図8に関連して)見出すことができる。
いくつかの実施形態において、オーダーステータスに関する情報は、ユーザによりリフレッシュすることができる。処理エンジン111(又は、送信モジュール440、第1の送信ユニット441)は、新しい第1の表示命令をユーザ端末に再送信することができる。第1の表示命令は、オーダーステータスに関する現在の情報を含むことができる。いくつかの実施形態において、乗り物割り当てシステム100(又は、処理エンジン111)は、周期的にオーダーのステータスに関する情報を自動的にリフレッシュすることができる。情報をリフレッシュする頻度は、処理エンジン111によりあらかじめ決定してもよいし、あるいはユーザにより手動で決めてもよい。
図6は、この開示のいくつかの実施形態に従う、待ち行列内のオーダーに関する乗り物を割り当てる例示プロセスを説明する概略図である。開始ロケーションと目的地を含むサービス要求が確認されると、処理エンジン111(又は、他の生成モジュール420)は、オーダーを生成することができ、オーダーを、サービス要求に基づいて乗り物に割り当てられる第1の待ち行列に追加することができる。図6に示すように、ユーザ端末からのオーダーを、送信し、時間順に従って、乗り物待ち行列に入れることができる。オーダーを送信するのが早ければ早いほど、それだけ早くオーダーは、第1の待ち行列に並ぶ、すなわち、より早く、オーダーが乗り物に割り当てられる。相乗りサービスオーダー、拒否されたオーダー等のような他のタイプのオーダーは、より高い優先度を割り当てることができ、乗り物待ち行列内のタクシーオーダーの前に入れることができる。他の例として、オーダーが、サービスプロバイダーに割り当てられた後、サービスプロバイダーは、サービス要求者にサービスを提供することを拒否してもよい。そのような環境下で、処理エンジン111は、拒否したオーダーに、より高い優先度を割り当て、拒否したオーダーを再割り当てのために第1の待ち行列に戻すことができる。処理エンジン111は、第1の利用可能な乗り物を割り当てるために、第1の待ち行列の一番先頭に拒否したオーダーを置くことができる。いくつかの実施形態において、処理エンジン111は、拒否したオーダーのために乗り物を割り当て、及び相乗りオーダーを、乗り物待ち行列に割り当てるための割り当てルールを決定することができる。例えば、相乗りオーダー及び拒否されたオーダーが同時刻又はその付近で要求された場合、処理エンジン111は、相乗りオーダーが2人以上の乗客に係合している場合、拒否したオーダーよりも相乗りオーダーにより高い優先度を割り当てることができる。他の例として、処理エンジン111は、相乗りオーダーが、サービス要求者以外のいずれの乗客にも割り当てられていない場合、相乗りオーダーよりも拒否したオーダーにより高い優先度を割り当てることができる。
いくつかの実施形態において、乗り物待ち行列内のオーダーは、タクシーオーダー、相乗りオーダー、運転手付きオーダー、キャンセルされたオーダー等を含むことができる。いくつかの実施形態において、乗り物待ち行列は、タクシー待ち行列、相乗り待ち行列、運転手付き待ち行列、個人の待ち行列、企業待ち行列、アクティビティ待ち行列等を含むことができる。
図7は、この開示のいくつかの実施形態に従う、ユーザ端末の例示ユーザインターフェースである。ユーザインターフェースは、ラッシュアワーの期間にオーダーのステータスに関する情報を表示することができる。オーダーのステータスに関連する情報は、図5に関連する第1の表示命令により指示することができる。サービス要求に基づいてオーダーを生成し、そのオーダーを乗り物に割り当てられる第1の待ち行列に追加した後、処理エンジン111(又は、送信モジュール440、第1の送信ユニット441)は、第1の表示命令をユーザ端末に送信することができる。表示命令は、ユーザインターフェース上のオーダーに関する情報を表示するようにユーザ端末に指示することができる。図7は、ユーザインターフェース上のオーダーに関する複数の情報を説明する。「応答待ち」は、ユーザが、現時点で乗り物に割り当てられるのを待たなければならない可能性があることを表示することができる。「乗り物を割り当てる際のラッシュアワー、あなたの番号:100、総数120、5分以内に応答」は、オーダー前の第1の待ち行列の個数が99で、第1の待ち行列内のオーダー待ちの数が120であり、第1の待ち行列内のオーダーの推定待ち時間が、オーダーのステータスが表示される時点又はその近辺で5分であることを示すことができる。「星華路地(Xinguhua Alley)」は、オーダーの開始ロケーションが星華路地であることを示すことができる。「経過待ち時間:00:20、あなたの乗り物を探しています」は、ユーザが20秒間待ったことを示すことができる。第1の待ち行列内のオーダーの推定待ち時間は、5分であるので、ユーザは、処理エンジン111が乗り物をユーザに割り当てる前に約4分40秒待たなければいけないであろう。ユーザは、ユーザインターフェースのタッチスクリーン上の「オーダーキャンセル」を押すことによりオーダーをキャンセルすることができる。
図7に表示されるオーダーのステータスに関する情報は、単に説明目的のために提供され、この開示の範囲を限定することを意図したものではないことに留意する必要がある。当業者は、この開示の教えに基づいて、複数の変更及び変形を行うことができる。しかしながら、これらの変更及び変形は、この開示の範囲から逸脱することはない。例えば、オーダーのステータスに関する情報は、写真、言葉、アイコン、色又は同様のもの、又はそれらの任意の組み合わせによるような種々の方法で表示することができる。
いくつかの実施形態において、ユーザは、オーダーのステータスに関する表示された情報を、手動でリフレッシュすることができる。いくつかの実施形態において、乗り物割り当てシステム100は、オーダーのステータスに関する情報を自動的にリフレッシュすることができる。オーダーのステータスに関する情報を自動的にリフレッシュする頻度は、処理エンジン111により予め決めてもよいし、又はユーザにより手動で決めてもよい。例えば、オーダーのステータスに関する表示された情報は、5秒毎、10秒毎、15秒毎等にリフレッシュすることができる。いくつかの実施形態において、表示された情報は、オーダーが処理されて乗り物に割り当てられると、リフレッシュすることができる。
図8は、この開示のいくつかの実施形態に従う、オーダーの推定待ち時間を決定する例示プロセス800を説明するフロー図である。いくつかの実施形態において、処理800内の1つ又は複数のステップは、図1で説明した乗り物割り当てシステム100にインプリメントすることができる。例えば、プロセス800内の1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又はストレージ(例えば、ROM230、RAM240等)に記憶することができ、サーバー(例えば、サーバー110内の処理エンジン111、又はサーバー11内の処理エンジン111のCPU220)により起動及び/又は実行されることができる。
810において、処理エンジン111(又は受信モジュール410)は、過去の待ちデータを取得することができる。いくつかの実施形態において、処理エンジン111は、乗り物に搭載されたデバイス、市町村の輸送システム、特定のデータベース、又は同等物、又はそれらの任意の組み合わせから過去の待ちデータを取得することができる。特定のデータベースは、大量の過去の待ちデータを記憶し、解析するように構成されたデータべースを指すことができる。過去の待ちデータは、複数の過去のオーダーに関する過去の情報、例えば、複数の過去のデータの各過去のオーダーの開始ロケーション、各過去のオーダーの目的地、各過去のオーダーのオーダータイプ、各過去のオーダーのステータスに関する過去の情報、又は同等物、又はそれらの任意の組み合わせを含むことができる。各過去のオーダーのステータスに関する過去の情報は、第1の待ち行列内の各オーダーの過去の待ち時間、第1の待ち行列内の過去のオーダー待ちの総数、第1の待ち行列内の過去の利用可能な乗り物の数、又は同等物、又はそれらの任意の組み合わせを含むことができる。各過去のオーダーのステータスに関する過去の情報は、さらに、第2の待ち行列内の各オーダーの過去の推定時間、第2の待ち行列内の過去のオーダー待ちの総数、第2の待ち行列内の過去の利用可能な乗り物の数、又は同等物、又は、それらの任意の組み合わせを含むことができる。
820において、処理エンジン(又は割りあてモジュール430)は、過去の待ちデータに基づいてオーダーの推定待ち時間を決定することができる。例えば、処理エンジン111は、アルゴリズムに従って、過去の待ち時間デデータを処理することができる。アルゴリズムは、クラスター解析、ファクター解析、相関解析、対応解析、回帰分析、分散分析、又は同等物、又はそれらの任意の組み合わせを含むことができる。クラスター解析は、分割方法、階層方法、密度ベースの方法、グリッドベースの方法、モデルベースの方法等を含むことができる。ファクター解析は、k平均法、期待値最大化等を含むことができる。他の例として、処理エンジン111は、特徴が、推定されるオーダーと同一か、又は類似である複数の過去のオーダーを取得することができる。例えば、処理エンジン111は、同一時刻又は類似の時刻であって同一又は類似の開始エリア内で要求された同じオーダータイプの過去のオーダーを取得することができる。処理エンジン111は、オーダーの推定待ち時間として設定するこれらのオーダーの過去のオーダーの平均値を決定することができる。
いくつかの実施形態において、オーダーの推定待ち時間は、待ち行列(例えば、第1の待ち行列、第2の待ち行列)内のオーダーが処理される実際の時間期間を表示することができる。例えば、オーダーの推定待ち時間が3分15秒であるとき、ユーザは、乗り物割り当てシステム100が、オーダーに乗り物を割り当てる前に3分15秒待たなければいけないかもしれない。
いくつかの実施形態において、推定された待ち時間は、待ち行列(例えば、第1の待ち行列、第2の待ち行列)が処理される最も近いしきい値に丸め込まれた時間期間を示すことができる。過去の待ちデータレンジに基づく、オーダーの推定待ち時間が0乃至59秒のレンジであるとき、ユーザ端末に表示される推定待ち時間は1分であり得る。
例えば、過去の待ち時間データに基づく推定待ち時間が30秒のとき、ユーザ端末に標示される推定時間は、1分であり得る。過去の待ちデータに基づくオーダーの推定待ち時間が1分から1分59秒の範囲であるとき、ユーザ端末に表示される推定時間は、3分であり得る。例えば、過去の待ちデータに基づくオーダーの推定待ち時間が1分40秒であるとき、ユーザ端末に表示される推定時間は、3分であり得る。過去の待ちデータに基づく、オーダーの推定待ち時間が2分から4分59秒の範囲にあるとき、ユーザ端末に表示される推定時間は5分であり得る。例えば、過去の待ちデータに基づくオーダーの推定待ち時間が3分30秒であるとき、ユーザ端末に表示される推定時間は、5分であり得る。過去の待ちデータに基づく、オーダーの推定待ち時間が5分から8分59秒であるとき、ユーザ端末に表示される推定時間は10分であり得る。過去の待ちデータに基づく、オーダーの推定待ち時間が9分から10分の範囲にあるとき、ユーザ端末に表示される推定待ち時間は11分であり得る。
いくつかの実施形態において、処理エンジン111は、所定の時間間隔毎に過去の待ちデータを更新することができる。所定の時間間隔は、すべてのオーダーに適用される、システム100内で設定される所定値であり得る。代替的に、所定の時間間隔は、エリア、サービス時間、オーダータイプ等のような、オーダーに関する情報に基づいて動的に決定することができる。他の例として、所定の時間間隔は、異なるエリア、異なるサービス時間、異なるオーダータイプ、又は、同様のもの、又はそれらの組み合わせにおいて可変であり得る。いくつかの実施形態において、処理エンジン111は、道路再建が完了した後、過去の待ちデータを更新することができる。例えば、新しい鉄道がオープンすると、新しい鉄道に関連づけられた異なる道路の道路状態を変更することができる。他の例として、主要な混雑した道路は、混雑していない道路になり得、従って、混雑していない道路に関連づけられたオーダーの推定待ち時間は、変わる可能性がある。処理エンジン111は、更新された過去の待ちデータに基づいて、オーダーの推定待ち時間を決定することができる。
推定待ち時間は、ユーザが待っていた時間に従って可変であることが理解されねばならない。例えば、ユーザが待っていた時間が長ければ長いほど、推定待ち時間は短くなり得る。例えば、ユーザが1分間待っていた時、推定待ち時間は2分である。ユーザが1.5分待っていたとき、推定待ち時間は、1.5分である。他の例として、ユーザが待っている時間が長ければ長いほど、オーダー前の第1の待ち行列内のオーダー待ちの個数は小さくなる。例えば、ユーザが1分間待っていた時、オーダー前の第1待ち行列内のオーダー待ちの個数は、50である。ユーザが2分待っていた時、オーダー前の第1待ち行列内のオーダー待ちの個数は、20である。
図9は、この開示のいくつかの実施形態に従う、ユーザ端末130に表示命令を送信する例示プロセス900を説明するフローチャートである。いくつかの実施形態において、プロセス900内の1つ又は複数のステップは、図1に説明される乗り物割り当てシステム100にインプリメントすることができる。例えば、プロセス900内の1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又はストレージ(例えば、ROM230、RAM240等)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン111、又はサーバー110内の処理エンジン111のCPU220)により起動及び/又は実行することができる。
910において、処理エンジン111(又は、割り込みモジュール430、第1の待ち行列ユニット431)は、オーダー前の第1待ち行列内のオーダー待ちの個数がオーダーしきい値未満であるか、又は第1待ち行列内の推定時間が第1の時間しきい値未満であると決定することができる。オーダーしきい値及び/又は第1の時間しきい値の詳細な記述は、この開示のいずれかに(例えば、図5に関連して)見出すことができる。
いくつかの実施形態において、処理エンジン111は、オーダー前の第1の待ち行列内のオーダー待ちの個数がオーダーしきい値未満である、又は第1の待ち行列内の推定待ち時間が、ある環境下、例えば、1日のラッシュアワー(例えば、午前7:30から午前9:30、午後5:00から午後8:00)、雨天の日、雪の日等における第1の時間しきい値未満であると判断するすることができる。
920において、処理エンジン111は、(又は、送信モジュール440、第2の送信ユニット443)は、第2の表示命令をユーザ端末に送信することができる。第2の表示命令は、ユーザ端末に乗り物割り当てステータスを表示するように指示することができる。乗り物割り当てステータスは、乗り物割り当てシステム100が、ユーザに関する乗り物を割り当て中であることを表示することができる。オーダー前の第1の待ち行列内のオーダー待ちの個数、第1の待ち行列内のオーダーの推定待ち時間、第1の待ち行列内のオーダー待ちの総数、第1の待ち行列内のオーダーを受けることができる乗り物の数、ユーザが待った時間、又は同様のもの、又はそれらの任意の組み合わせ、のような乗り物割り当てステータスに関する他の情報は、乗り物割り当てステータスと一緒に表示することができる。
単なる例示として、オーダーしきい値は、4に設定される。第1の待ち行列内のオーダー待ちの個数が4未満(例えば、1、2、3)であるとき、それは、オーダー前の待ち行列には、4未満のオーダーしかないことを示し、処理エンジン111は、第2の表示命令をユーザ端末に送信することができる。第1の待ち行列内の推定待ち時間が59秒未満(例えば、30秒、45秒等)であるとき、それは、乗り物割り当てシステム100が、すぐに、そのオーダーに関する乗り物を割り当てることを示し、処理エンジン111は、第2の表示命令をユーザ端末に送信することができる。
図10は、この開示のいくつかの実施形態に従う、ユーザ端末の例示ユーザインターフェースである。ユーザインターフェースは、ラッシュアワーの期間に乗り物割り当てステータスに関する情報を表示することができる。乗り物割り当てステータスに関する情報は、図9に関連する第2の表示命令であり得る。
図10に示すように、「応答待ち」は、現時点でユーザが割り当てられるのを待たなければいけない可能性を示すことができる。「乗り物を割り当てる際のラッシュアワー、あなたの番号:3、乗り物を割り当てています、お待ちください」は、オーダー前の第1の待ち行列内のオーダー待ちの個数が2であり得、乗り物割り当てシステム100は乗り物をユーザに割り当てていることを示すことができる。「乗り物を割り当てています。お待ちください」は、オーダー前の第1の待ち行列内のオーダー待ちの個数は2であり得、乗り物割り当てシステム100は、乗り物をユーザに割り当てていることを示すことができる。「星華路地(Xinguhua Alley)」は、オーダーの開始ロケーションが星華路地(Xinguhua Alley)であることを示すことができる。「待ち時間3分20秒経過、あなたの乗り物を探しています」は、ユーザが3分20秒待った可能性があることを示すことができる。ユーザは、ユーザインターフェースのタッチスクリーン上の「オーダーをキャンセル」を押すことによりオーダーをキャンセルすることができる。
いくつかの実施形態において、処理エンジン111(又は、送信モジュール、第2の送信ユニット443)は、通常の時間期間に第2の表示命令を、ユーザ端末に、直接送信することができる。通常時間は、利用可能な乗り物の数が待ち行列(例えば、第1の待ち行列、第2の待ち行列)内のオーダーの数より大きいか、又はほぼ等しい時間期間を指すことができる。例えば、通常時間は、一日のうちのラッシュアワー以外の時間期間を指すことができる。通常時間は、1日のうちの午前10:00〜午前11:00、午後1:00〜午後3:00等を含むことができる。
図11は、この開示のいくつかの実施形態に従う、ユーザ端末120に、表示命令を送信する例示プロセス1100を説明するフローチャートである。いくつかの実施形態において、プロセス1100内の1つ又は複数のステップは、図1に説明される乗り物割り当てシステム100にインプリメントすることができる。例えば、プロセス1100内の1つ又は複数のステップは、命令の一形態としてストレージ150及び/又はストレージ(例えば、ROM230、RAM240等)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン、又はサーバー110内の処理エンジン111のCPU220)により起動及び/又は実行することができる。
1110において、処理エンジン111(又は割り当てモジュール430、第1の待ち行列ユニット431)は、第1の待ち行列内の推定待ち時間が第2の時間しきい値より大きいと決定することができる。いくつかの実施形態において、第2の時間しきい値は、第1の時間しきい値よりも大きくすることができる。いくつかの実施形態において、第2の時間しきい値は、すべてのオーダーに適用される、システム100内に設定された所定値、例えば、10分、20分、30分等であり得る。いくつかの実施形態において、第2の時間しきい値は、エリア、サービス時間等のようなオーダーに関連する情報に基づいて動的に決定されることができる。例えば、第2の時間しきい値は、異なるエリア及び/又は異なるサービス時間で可変であり得る。
1120において、処理エンジン111(又は送信モジュール440、第3の送信ユニット445)は、第3の表示命令をユーザ端末に送信することができる。第3の表示命令は、サービス要求を完了させるように選択するための1つ又は複数の示唆をユーザに表示するようにユーザ端末に指示することができる。1つ又は複数の示唆は、相乗り、相乗りシャトルサービス、又は任意の他のタイプのサービス、及びそれらの関連する情報のような1つ又は複数の代替トラベルモードを含むことができる。相乗りに関する情報は、第1の相乗り推定価格、第1の待ち行列内の相乗りの推定待ち時間、又は同様のもの、又はそれらの任意の組み合わせを含むことができる。ユーザ端末は、オーダーステータスに関する情報及び相乗りに関する情報を表示することができる。
いくつかの実施形態において、ユーザが相乗りを選択する場合、乗り物割り当てシステム100は、相乗り割り当てルールに従って乗り物を割り当てることができる。例えば、相乗り割り当てルールは、同じ乗り物を共有する少なくとも二人のユーザが存在することを示すことができる。乗り物割り当てシステム100は、複数の相乗り要求者の中でサービス要求時間に従う少なくとも二人のユーザに対して乗り物を割り当てることができる。
図12は、この開示のいくつかの実施形態に従うユーザ端末の例示ユーザインターフェースである。ユーザインターフェースは、サービス要求を完了するための示唆に関連する情報を表示することができる。示唆に関連する情報は図11に関連した第3の表示命令により指示することができる。
図12に示すように、「応答待ち」は、現時点でユーザが乗り物に割り当てられるのを待たなければいけない可能性があることを示すことができる。「乗り物を割り当てるラッシュアワー、あなたの番号:100、総数120、応答11分以上、相乗りを示唆」は、オーダー前の第1の待ち行列内のオーダー待ちの個数が99であり、第1の待ち行列内のオーダー待ちの総数が120であり、第1の待ち行列内のオーダーの推定待ち時間が11分以上であり得ることを示すことができる。ユーザがオーダーを加速したい場合、ユーザは、ユーザインターフェースのタッチスクリーン上の「相乗り」を押すことにより相乗りを選択することができる。「星華路地(Xinghua Alley)」は、オーダーの開始ロケーションが星華路地(Xinghua Alley)であることを示すことができる。ユーザ端末は、「待ち時間00:20秒経過、あなたの乗り物を探しています」を表示することができ、ユーザが20秒間待ったかもしれないことを示すことができる。ユーザは、ユーザインターフェースのタッチスクリーン上の「オーダーキャンセル」を押すことによりオーダーをキャンセルすることができる。
いくつかの実施形態において、処理エンジン111は、オーダー前に第1待ち行列内のオーダー待ちの個数が、オーダーしきい値よりも大きいか、又は第1待ち行列内の推定待ち時間が、第1時間しきい値よりも大きいとき、ユーザ端末に第3の表示命令を送信することができる。第3の表示命令は、オーダーステータスに関する情報と、相乗りに関する情報を標示するようにユーザ端末に指示することができる。
図13は、この開示のいくつかの実施形態に従うユーザ端末120に表示命令を送信するための例示プロセス1300を説明するフローチャートである。いくつかの実施形態において、プロセス1300内の1つ又は複数のステップは、図1に説明される乗り物割り当てシステム100にインプリメントすることができる。例えば、プロセス1300内に1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又はストレージ(例えば、ROM230,RAM240等)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン111、又はサーバー110内の処理エンジン111のCPU220)により起動及び/又は実行することができる。
1310において、処理エンジン111(又は割り当てモジュール430、第1の待ち行列ユニット431)は、第1の待ち行列内の現在の待ち時間が第3の時間しきい値より大きいと決定することができる。いくつかの実施形態において、第3の時間しきい値は、第2の時間しきい値よりも大きくなり得る。いくつかの実施形態において、第3の時間しきい値は、すべてのオーダーに適用される、システム100内に設定された所定値、例えば、30分、40分、50分等であり得る。いくつかの実施形態において、第3の時間しきい値は、エリア、サービス時間等のようなオーダーに関する情報に基づいて動的に決定することができる。例えば、第3の時間しきい値は、異なるエリア及び/又は異なるサービス時間において可変であり得る。
1320において、処理エンジン111(又は送信モジュール440、第4送信ユニット447)は、第4表示命令をユーザ端末に送信することができる。第4表示命令は、待つのを継続するかどうかに関する問い合わせを表示するようにユーザ端末に指示することができる。ユーザが待ち続けることを選択すると、乗り物割り当てシステム100は、オーダーステータスに関する情報、相乗りに関する情報、又は同様のもの、又はそれらの任意の組み合わせを表示し続けることができる。ユーザが待たないことを選択すると、乗り物割り当てシステム100は、オーダーをキャンセルすることができる。
図14は、この開示のいくつかの実施形態に従う、オーダーをキャンセルするための例示プロセス1400を説明するフローチャートである。いくつかの実施形態において、プロセス1400内の1つ又は複数のステップは、図1に説明される乗り物割り当てシステム100にインプリメントすることができる。例えば、プロセス1400内の1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又はストレージ(例えば、ROM230、RAM240等)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン111、又はサーバー110内の処理エンジン111のCU220)により起動及び/又は実行することができる。
1410において、処理エンジン111(又は、割り当てモジュール430、第1の待ち行列ユニット431)は、第1の待ち行列内の現在の待ち時間が第4の時間しきい値より大きいと判断することができる。第4の時間しきい値は、第3の時間しきい値より大きくなり得る。第4の時間しきい値は、すべてのオーダーに適用されるようにシステム100内に設定された所定値、例えば、40分、50分、60分等であり得る。いくつかの実施形態において、第4の時間しきい値は、エリア、サービス時間等のようなオーダーに関連した情報に基づいて動的に決定することができる。例えば、第4の時間しきい値は、異なるエリア及び/又は異なるサービス時間において可変であり得る。1420において、処理エンジン111は、オーダーをキャンセルすることができる。
図15は、この開示のいくつかの実施形態に従う、サービス要求に対して乗り物を割り当てる例示プロセス1500を説明するフローチャートである。いくつかの実施形態において、プロセス1500内の1つ又は複数のステップは、図1に説明される乗り物割り当てシステム100にインプリメントすることができる。例えば、プロセス1500内の1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又は(例えば、ROM230、RAM240等)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン111、又はサーバー110内の処理エンジン111のCPU220)により起動及び/又は実行することができる。
1510において、処理エンジン111(又は割り当てモジュール430、第1の待ち行列ユニット431)は、オーダーが第1の条件を満足すると判断することができる。いくつかの実施形態において、第1の条件は、エリア内のオーダー待ちの総数は第1の待ち行列からのオーダーを受けることができるエリア内の乗り物の個数よりも大きいという条件を含めることができる。エリアは、オーダーの開始ロケーションに基づいて決定することができる。例えば、処理エンジン111は、マップを複数のグリッド(例えば、六角形のグリッド)に分割することができる。このエリアは、開始ロケーションがマップ内に位置するグリッド、開始ロケーションがマップ内の1つ又は複数の隣接グリッドに位置するグリッド、マップ内の所定の半径を有する開始ロケーションに中心がある環状エリア、又は経度情報及び緯度情報に基づいて分割されたエリア等を含むことができる。
いくつかの実施形態において、第1の条件は、エリア内のオーダー待ちの総数と、第1の待ち行列からオーダーを受けることができるエリア内の乗り物の個数との間の差が所定のしきい値より大きいという条件を含むことができる。所定のしきい値は、すべてのオーダーに適用されるように乗り物割り当てシステム内に設定された所定値であり得る。代替的に、所定の時間しきい値は、エリアに基づいて決定することができる。例えば、エリアが多きければ大きいほど、所定のしきい値は大きい。
いくつかの実施形態において、第1の条件は、現在時刻が所定の時間期間内であるという条件を含むことができる。所定の時間期間は、すべてのオーダーに適用される、乗り物割り当てシステム100に設定された所定値であり得る。代替的に、所定のしきい値は、エリアに基づいて決定することができる。例えば、所定の時間期間は、ラッシュアワー、例えば、一日のうちの午前7:30〜午前9:30、午後5:00〜午後8:00を含むことができる。
いくつかの実施形態において、第1の条件は、他の過需要状態を含むことができる。例えば、第1の条件は、雨の日、雪の日、多数のユーザがサービスを要求するとき、等を含めることができる。オーダーが第1の条件を満足することを判断する詳細な記述は、この開示のいずれか(例えば、図18に関連して)見出すことができる。
1520において、処理エンジン111(又は、送信モジュール440、第5送信ユニット449)は、第5表示命令をユーザ端末に送信することができる。第5の表示命令は、第2の推定価格を有するサービスに対して代替トラベルの示唆を表示するようにユーザ端末に指示することができる。代替トラベル示唆は、さらに、相乗り、他のタイプのサービス、又は同様のもの、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、ユーザ端末は、第2の推定価格を有するオーダーステータスに関する情報、第1の推定価格を有するオーダーステータスに関する情報、相乗りに関する情報、又は同様のもの、又はそれらの任意の組み合わせを表示することができる。
第2の推定価格は、第1の推定価格よりも大きくなり得る。いくつかの実施形態において、第2の推定価格と第1の推定価格との間の差は、所定の値であり得る。いくつかの実施形態において、第2の推定価格と第1の推定価格との間の差は、オーダーのルート情報に基づいて決定することができる。ルート情報は、オーダーの開始ロケーション、オーダーの目的地、オーダーの運転距離、又は同様のもの、又はそれらの任意の組み合わせを含むことができる。例えば、オーダーの運転距離が長ければ長いほど、第2の推定価格と第1の推定価格との間の差は、それだけ大きくなる。いくつかの実施形態において、第2の推定価格と第1の推定価格との間の差は、ユーザにより決定された値であり得る。例えば、ユーザは、自分の意志で推定価格にチップを加算することができる。
1530において、処理エンジン111は、第2の推定価格を有する代替トラベル示唆の選択を受信することができる。乗り物割り当てシステム100は、ユーザが、引き上げられたサービス料金(例えば、第2の推定価格)を受諾する場合、ユーザへの乗り物の割り当てを加速することができる。いくつかの実施形態において、処理エンジン111は、さらに相乗り、共有シャトルサービス、他のタイプのサービス等の選択を受信することができる。例えば、ユーザは、同時に、引き上げられたサービス料金を受諾するとともに相乗りの示唆を選択して、乗り物に割り当てられるオーダーを加速することができる。
1540において、処理エンジン111(又は、割り当てモジュール430、第2の待ち行列433)は、オーダーを第2の待ち行列に追加することができる。第2の待ち行列内の第2のオーダー待ちの第2の個数に対する第2の待ち行列からのオーダーを受けることができる乗り物の第2の数の第2の比は、第1の待ち行列内のオーダー待ちの第1の個数に対する第1の待ち行列からのオーダーを受けることができる乗り物の第1の数の第1の比よりも大きくすることができ、それは、第2の待ち行列内のオーダーが、第1の待ち行列内のオーダーよりも早く乗り物に割り当てることができることを示すことができる。
第2の待ち行列の行列モードは、オーダーの確認時間に対する厳格モードと、オーダーの重みに関する非厳格モードと、を含むことができる。第1の厳格モード及び/又は非厳格モードの詳細な記述は、この開示のいずれか(例えば、図5に関連して)見出すことができる。
いくつかの実施形態において、第2の待ち行列は、異なるオーダーに基づいて、複数の第2のサブ待ち行列を含むことができる。複数の第2の待ち行列は、タクシー待ち行列、相乗り待ち行列、運転手付き待ち行列、個人の待ち行列、企業の待ち行列、アクティビティ待ち行列、又は同様のもの、又はそれらの任意の組み合わせを含むことができる。いくつかの実施形態において、異なるサブ待ち行列は、サブ待ち行列内のオーダーの処理優先度を異ならせる、異なる待ち行列モードを有することができる。例えば、コンサート終了時刻近辺のアクティビティ待ち行列内のオーダーは、同時刻又はその近辺のタクシー待ち行列内のオーダーよりも早く処理することができる。
いくつかの実施形態において、処理エンジン111は、第2の推定価格を有する代替トラベル示唆の選択を受信することができない可能性があり、それは、引き上げられたサービス料金を受諾することによりオーダーを加速しないことをユーザが選択したことを示すことができる。そのオーダーは、乗り物に割り当てる第1の待ち行列内に留まることができる。
図16a乃至16dは、この開示のいくつかの実施形態に従うユーザ端末の例示ユーザインターフェースである。ユーザインターフェースは、サービス要求を完了するための代替トラベル示唆に関する情報を表示することができる。代替トラベル示唆に関する情報は、図15に関連する第5の表示命令によって指示することができる。
図16aに示すように、「呼び出しを確認する」は、ユーザインターフェースに表示されたオーダーに関する情報が正しいかどうかをユーザが確認することができることを示すことができる。「エクスプレスプライベートタクシーの相乗り」は、異なるオーダータイプを示すことができ、ユーザは、異なるオーダータイプからオーダーを選択することができる。「星華路地(Xinguhua Alley)」は、オーダーの開始ロケーションが星華路地であることを示すことができる。「北海北門(Beihai North Gate)」は、オーダーの目的地が、北海北門であることを示すことができる。「4分、ピックアップロケーション」は、処理エンジン111により割り当てられた乗り物は、4分以内にピックアップロケーション(例えば、開始ロケーション)に到着することを示すことができる。「相乗り18.0人民元(RMB)」は、開始ロケーションに基づいて、オーダーの第1の推定価格を示すことができ、ユーザが乗り合いを選択した場合、目的地は、18.0人民元であることを示すことができる。「相乗りなし32.8人民元」は、開始ロケーションに基づいて、オーダーの第1の推定価格を示すことができ、ユーザが相乗りを選択しない場合、32.8人民元であることを示すことができる。例えば、ユーザは、相乗りを選択する場合、「相乗り」を押し、次に「乗り物を呼び出す」を押して、ユーザインターフェースのタッチスクリーン上で、オーダーを確認することができる。他の例として、ユーザは、相乗りを選択しない場合に、ユーザインターフェースのタッチスクリーン上で「相乗りなし」を押し、次に「乗り物を呼び出す」を押すことができる。
ユーザがオーダーを確認した後、処理エンジン111は、オーダーを、乗り物に割り当てられる第1の待ち行列に追加することができる。ユーザインターフェースは、図16bに示す情報を表示することができる。「応答待ち(Waiting for Reply)」は、ユーザは、現時点で乗り物に割り当てられるのを待たなければいけないことを示すことができる。「あなたの前に100人待っています、10分以内に応答します」は、オーダー前の第1の待ち行列内のオーダー街の個数が99であり、第1の待ち行列内のオーダーの推定待ち時間は、オーダーステータスが表示される時刻が10分前後であることを示すことができる。「12人民元を追加、割り当てを加速」は、ユーザが、サービス料金を12人民元割増することに同意する場合、処理エンジン111は、乗り物への割当を加速することができ、第2の推定価格と第1の推定価格との差が12人民元であることを示すことができる。ユーザは、ユーザインターフェースのタッチスクリーン上で「オーダーをキャンセル」を押すことによりオーダーをキャンセルすることができる。
ユーザが、乗り物への割当を加速することを選択した場合、ユーザインターフェースは、図16cに示す情報を表示することができる。「割り当てを加速する、お待ち下さい」は、オーダーが加速され、ユーザは、現時点で乗り物に割り当てられるのを待たなければならないことを示すことができる。「待ち時間00:20経過、あなたの乗り物を探しています」は、ユーザが20秒待ったことを示すことができる。
ユーザが、乗り物に割り当てられるのを加速しないことを選択すると、ユーザインターフェースは、図16dに示す情報を表示することができる。「オーダーを加速することを選択する人がたくさんいます、利用可能な乗り物は十分ではありません、お待ちください」は、ユーザが、乗り物の割当に比較的長い時間待たされることを示すことができる。
図17は、この開示のいくつかの実施形態に従って、オーダーが第1の条件を満足することを判断する例示プロセス1700を説明するフローチャートである。いくつかの実施形態において、プロセス1700の1つ又は複数のステップは、図1に説明される乗り物割当システム100にインプリメントすることができる。例えば、プロセス1700の1つ又は複数のステップは、命令の一形態として、ストレージ150及び/又はストレージ(例えば、ROM230、RAM240など)に記憶することができ、サーバー110(例えば、サーバー110内の処理エンジン111、又は、サーバー110内の処理エンジン111のCPU220)により起動及び/又は実行することができる。
1710において、処理エンジン111(又は、割当モジュール430、第1の待ち行列ユニット431)は、オーダーの開始ロケーションと目的地に基づいてエリアを決定することができる。エリアは、オーダーの開始ロケーションに基づいて決定することができる。例えば、処理エンジン111は、マップを複数のグリッド(例えば、六角形のグリッド)に分割することができる。エリアは、開始ロケーションがマップ内にあるグリッド、開始ロケーションが、マップ内の1つ又は複数の隣接グリッドに位置するグリッド、マップ内の所定半径を有する開始ロケーションに中心を持つ環状エリア、又は、緯度情報及び経度情報などに基づいて分割されるエリアを含めることができる。
1720において、処理エンジン111(又は、割当モジュール430、第1の待ち行列ユニット431)は、第1の待ち行列からのオーダーを受けることができる、エリア内の乗り物の数を決定することができる。1730において、処理エンジン111(又は、割当モジュール、第1の待ち行列ユニット431)は、第1の待ち行列からのエリア内のオーダー待ちの総数を決定することができる。
1740において、処理エンジン111(又は、割当モジュール430、第1の待ち行列ユニット431)は、エリア内のオーダー待ちの総数は、第1の待ち行列からのオーダーを受けることができる、エリア内の乗り物の数よりも大きいと判断することができる。エリア内のオーダー待ちの総数が、第1の待ち行列からのオーダーを受け取ることができるエリア内の乗物の数より大きい場合、処理エンジン111は、オーダーが第1の条件を満足すると判断することができる。
オーダーが図17の第1の条件を満足するかどうかを判断することに関連する記述は、単に説明の目的のために提供され、この開示の範囲を限定することを意図したものではない。処理エンジン111は、オーダーが第1の条件を満足するかどうかを判断する他の基準を決定することができる。例えば、処理エンジン111は、さらに、エリア内のオーダー待ちの総数と、第1の待ち行列からのオーダーを受けることができるエリア内の乗り物の数との差が所定のしきい値より大きいとさらに判断することができる。他の例として、処理エンジン111は、さらに、現在時刻が所定の時間期間内にあるか、又は、多くのユーザがサービスを要求する雨の日、雪の日等を決定することができる。
図18a乃至18hは、この開示のいくつかの実施形態に従うユーザ端末の例示ユーザインターフェースである。ユーザインターフェースは、オーダーがこの条件を満足すると、サービス要求を完了するための代替トラベル示唆に関する情報を表示することができる。代替トラベル示唆に関する情報は、図15に関連する第5表示命令により指示することができる。
処理エンジン111が、第1の条件を満足するオーダーを受信すると、ユーザインターフェースは、図18aに示す情報を表示することができる。「オファーよりも高い付け値(bid higher than offered)」は、第1の待ち行列内の利用可能な乗り物の数が第1の待ち行列内のオーダーの数未満であり得ることを示すことができることを示すことができる。「12人民元追加、5分以内に応答」は、ユーザが、12人民元だけサービス料金を割増することに同意する場合、処理エンジン111は、5分以内にユーザに乗り物を割り当てることを加速することができる。「0人民元追加、20分以内に応答」は、乗り物割当システム100が、乗り物をユーザに割り当てる前に、ユーザは、20分程待たなければいけないことを示すことができる。
ユーザが、サービス料金に同意した後、ユーザインターフェースは、図18bに示す情報を表示することができる。「4分、ピックアップロケーション」は、処理エンジン111により割り当てられた乗り物が4分でピックアップロケーション(例えば、開始ロケーション)に到着することを示すことができる。「相乗り、18.0人民元」は、ユーザが相乗りを選択する場合、オーダーの第1の推定価格と第2の推定価格との間の差が18.0人民元になることを示すことができる。「相乗りなし、32.8人民元、追加料金12人民元」は、ユーザが相乗りを選択しない場合、オーダーの第2の推定価格は、32.8人民元であることを示すことができる。例えば、ユーザは「相乗り」を押し、次に「乗り物を呼び出す」を押して、相乗りを選択し、ユーザインターフェースのタッチスクリーン上でオーダーを確認することができる。他の例として、ユーザは、ユーザインターフェースのタッチスクリーンで「相乗りなし」を押し、次に「乗り物呼び出し」を押して、相乗りをしないように選択することができる。
ユーザが第2の推定価格で乗り物を要求した後、ユーザインターフェースは、図18cに示す情報を表示することができる。ユーザは、ユーザインターフェースのタッチスクリーン上で2分以内に「2分以内に確認」を押すことによりサービス料金を追加することを再確認することができる。
サービス料金を追加することをユーザが再確認した後、ユーザインターフェースは、図18dに示す情報を表示することができる。「割り当てを加速する、お待ち下さい」は、オーダーが加速され、ユーザは、現時点で乗り物に割り当てられるのを待たなければならない。「待ち時間00:20経過、あなたの乗り物を探しています」は、ユーザは20秒間待たなければいけないことを示すことができる。ユーザがサービス料金の割増に同意しない場合、ユーザインターフェースは、図18eに示す情報を表示することができる。「4分、ピックアップロケーション」は、処理エンジン111により割り当てられた乗り物は、4分でピックアップロケーション(例えば、開始ロケーション)に到着することを示すことができる。「相乗り18.0人民元」は、ユーザが相乗りを選択した場合、オーダーの第1のしきい値価格が18.0人民元であることを示すことができる。「相乗りなし」は、ユーザが相乗りを選択しない場合、オーダーの第1の推定価格が32.8人民元であることを示すことができる。例えば、ユーザは、「相乗り」を押し、次に「乗り物を呼び出す」を押して、相乗りを選択し、ユーザインターフェースのタッチスクリーン上でオーダーを確認することができる。別の例として、ユーザは、ユーザインターフェースの「乗り合タッチスクリーン上で「相乗りなし」を押し、次に、「乗り物を呼び出す」を押して、相乗りをしないことを選択することができる。
ユーザが第1の推定価格により乗り物を呼び出した後、処理エンジン111は、サービス料金の割増によりオーダーを加速するかどうかをユーザに再確認することができる。ユーザインターフェースは、図18fに示す情報を表示することができる。「あなたの前に100人待っています、10分以内に応答」は、オーダー前に第1の待ち行列内のオーダー待ちの個数が99であり、オーダー状態を表示可能な、第1の待ち行列内のオーダーの推定待ち時間が、10分前後であることを示すことができる。「12人民元追加、3分以内に応答」は、ユーザが12人民元だけサービス料金を割増することに同意する場合、処理エンジン111は、3分以内にユーザに乗り物を割り当てることを加速することができる。
ユーザが、割増サービス料金を受諾することによりオーダーを加速することを選択した後、図18gに示すように、ユーザインターフェースは、図18dに関連した情報を表示することができる。多数の、加速するオーダーがあり、第2の待ち行列内の利用可能な乗り物が十分でないと、ユーザインターフェースは、図18fに示す情報を表示することができる。ユーザインターフェースのタッチスクリーン上の「オーダーをキャンセル」を押すことによりオーダーのキャンセルを選択することができる。
図19a−19bは、この開示のいくつかの実施形態に従うユーザ端末の例示ユーザインターフェースである。オーダーが第1の条件を満足しないとき、ユーザインターフェースは、第1の推定価格、相乗りに関する情報、又は、同様のもの、又は、それらの任意の組み合わせを有するオーダーのステータスに関する情報を表示することができる。
図19aに示すように、「乗り物を割当る際のラッシュアワー、あなたの番号:118、合計120、2分以内に応答」は、オーダー前の第1の待ち行列内のオーダー待ちの個数は2であることを示すことができる。「相乗り6人民元」は、ユーザが相乗りを選択した場合、開始ロケーションと目的地とに基づいてオーダーの第1の推定価格が6人民元であることを示すことができる。「相乗りなし」は、ユーザが相乗りをしないことを選択する場合、オーダーの第1の推定価格は、20.8人民元であることを示すことができる。例えば、ユーザは、ユーザインターフェースのタッチスクリーン上で「相乗り」を押すことにより相乗りを選択することができる。他の例として、ユーザは、ユーザインターフェースのタッチスクリーン上で「相乗りなし」を押すことにより相乗りしないことを選択することができる。ユーザは、ユーザインターフェースのタッチスクリーン上で「オーダーをキャンセル」を押すことにより、オーダーをキャンセルすることができる。
図19bに示すように、「乗り物が割り当てられました。あなたはすでに00:20待っています」は、処理エンジン111は、乗り物をユーザに割り当て中であり、ユーザはすでに20秒待ったことを示すことができる。
以上基本概念を述べたが、当業者には、この詳細な記述を読んだ後で、上述の詳細な記述は、例示にのみ提供されることを意図したものであり、限定するものではないことは、明らかであろう。ここには明示的に記載していないけれども、種々の代替、改良、及び変更を生じさせることができ、当業者に意図される。これらの代替、改良、及び変更は、この開示により示唆されることを意図し、この開示の例示実施形態の精神及び範囲内である。
さらに、この開示の実施形態を記載するためにある用語が使用された。例えば、「1つの実施形態(one embodiment)」、「実施形態(an embodiment)」、及び/又は「いくつかの実施形態(some embodiment)」は、実施形態に関連して記載された特定の特徴、構造又は特性は、この開示の少なくとも1つの実施形態に含まれる。それゆえ、この明細書の種々の箇所の「実施形態(an embodiment)」、「1つの実施形態(one embodiment)」、又は「代替実施形態(an alternative embodiment)」への3つ以上の参照は、すべてが必ずしも同一実施形態を参照するものではないことが強調され、理解されなければならない。さらに、特定の特徴、構図又は特性は、この開示の1つ以上の実施形態において適切に組み合わせることができる。
さらに、この開示の態様は、任意の新規で有用なプロセス、マシン、製造、又は物質の組成、又はそれらの任意の新規で有用な改良を含む多数の特許性のあるクラス又はコンテキストのいずれかにおいて、ここに説明し記載することができる。したがって、この開示の態様は、全部がハードウエアで、全部がソフトウエア(ファームウエア、レジデントウエア、マイクロコード等)又は、ここでは、すべて一般的に「ブロック」、「モジュール」、「エンジン」、「ユニット」、「コンポーネント」、又は「システム」と呼ばれる、ソフトウエアとハードウエアの組み合わせであり得る。「さらに、この開示の態様は、そこに具現化されたコンピュータ読み取り可能プログラムコードを有する1つ又は複数のコンピュータ可読媒体に具現化されたコンピュータプログラムコードの形態を取ることができる。
コンピュータ可読信号媒体は、例えば、搬送波のベースバンド又は一部に具現化されたコンピュータ可読プログラムコードを有した伝搬データ信号を含むことができる。そのような伝搬信号は、電磁気、光学、又は同様のもの、又はそれらの任意の適切な組合わせを含む種々の形態を取ることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではない任意のコンピュータ可読媒体であり得、命令実行システム、装置又はデバイスによって又は関連して使用するためのプログラムを通信し、伝搬し、又は輸送することができる任意のコンピュータ可読媒体であり得る。コンピュータ可読信号媒体に具現化されたプログラムコードは、無線、有線、光ファイバーケーブル、RF、又は同様のもの、又は、上述の任意の適切な組み合わせを含む、任意の適当な媒体を用いて送信することができる。
この開示の態様に関する動作を実行するためのコンピュータプログラムコードは、Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python、等のようなオブジェクト指向プログラミング言語、「C]プログラミング言語、Visual Basic、Fortran 1703、Perl、COBOL 1702、PHP、ABAPのような従来の手続型プログラミング言語、Python、Ruby、及びGroovy、又は他のプログラミング言語のような動的プログラミング言語を含む、1つ以上のプログラム言語の任意の組み合わせで書くことできる。プログラムコードは、スタンドアローンソフトウエアパッケージとして、すべてがユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、一部がユーザのコンピュータ上で一部がリモートコンピュータ上で又はすべてがリモートコンピュータ又はサーバー上で実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介して接続することができ、又は、接続は外部コンピュータ(例えば、インターネットサービスプロバイダを用いたインターネットを介して)又はクラウドコンピューティング環境下で接続することができ、又はサービスとしてのソフトウエア(SaaS)のようなサービスとして提供されることができる。
さらに、処理エレメント又はシーケンスの記載した順番、又は番号、文字、又は他の指定は、クレームにおいて指定できる場合を除いて任意の順番に対してクレームされたプロセス及び方法を限定することを意図したものではない。上述した開示は、開示の有用な種々の実施形態のであると現在考えられる種々の例を通して述べたが、そのような詳細は、その目的のためだけであり、添付されたクレームは、開示された実施形態を限定するものではなく、反対に、開示した実施形態の精神と範囲内にある変形例及び等価な構成をカバーすることを意図したものであることが理解される。例えば、上述した種々のコンポーネントのインプリメンテーションは、ハードウエアデバイスで具現化できるが、ソフトウエアのみのソリューション、例えば、既存のサーバー又はモバイルデバイスとしてインプリメントすることができる。
同様に、この開示の実施形態の上述の記述において、1つ又は複数の種々の実施形態を理解する上で、助となる開示を合理化する目的で、種々の特徴が単一実施形態、図面、又は記述が時としてグループ化されることが理解されなければならない。しかしながら、この方法は、クレームされた主題が各クレームにおいて明示的に記載されたものより多くの特徴を必要とする意図を反映するものとして理解されるべきではない。むしろ、クレームされた主題は、単一の上述した実施形態のすべての特徴未満に存在し得る。