以下、本発明の実施形態を図面に基づいて詳細に説明する。本実施形態において、同一の構成には原則として同一の符号を付け、繰り返しの説明は省略する。なお、本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。
図1は、運行管理システムの構成例を示すブロック図である。運行管理システムは、例えば、例えば、互いにインターネット等のネットワーク400で接続された、運行管理装置100、1以上の利用者端末200、及び1以上の車載端末300を含む。運行管理装置100は、オンデマンド交通の管理を行う。具体的には、運行管理装置100は、利用者端末200からの要求に応じてオンデマンドで、車載端末300を搭載する車両の運行を管理する。
利用者端末200は、運行管理対象の車両の乗車希望者(ユーザ)が有する端末(例えば、スマートホン、タブレット、PC(Pesonal Computer)等)であり、乗車予約を登録するための情報の入力を受け付け、運行管理装置100に送信する。また、利用者端末200は、予約確認情報、ゆずりあいリクエスト、及びポイント情報等を、運行管理装置100から受信する。車載端末300は、運行管理対象の車両に搭載された端末であり、車両の運行実績情報を車両から取得し、運行管理装置100に送信する。また、車載端末300は、運行スケジュールを示す情報を、運行管理装置100から受信する。
なお、本実施形態では、運行管理システムが乗り合いバスやタクシー等の車両の運行を管理する例を説明するが、運行管理システムは船舶や航空機等のあらゆる乗り物の運行管理に適用可能である。
また、図1の例では、ユーザが利用者端末200を用いて、運行管理装置100とのデータや指示の送受信を行うが、例えば、ユーザが(例えば、バス会社の接客スペース等に設置された)運行管理装置100に対してデータや指示を直接入力できるようにしてもよい。
図2は、運行管理装置100の構成例を示すブロック図である。運行管理装置100は、例えば、CPU(Central Processing Unit)101、メモリ102、補助記憶装置103、通信装置104、入力装置105、及び出力装置106を有する計算機によって構成される。
CPU101は、プロセッサを含み、メモリ102に格納されたプログラムを実行する。メモリ102は、不揮発性の記憶素子であるROM(Read Only Memory)及び揮発性の記憶素子であるRAM(Random Access Memory)を含む。ROMは、不変のプログラム(例えば、BIOS(Basic Input/Output System))などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、CPU101が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
補助記憶装置103は、例えば、磁気記憶装置(HDD(Hard Disk Drive))、フラッシュメモリ(SSD(Solid State Drive))等の大容量かつ不揮発性の記憶装置であり、CPU101が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。すなわち、プログラムは、補助記憶装置103から読み出されて、メモリ102にロードされて、CPU101によって実行される。
入力装置105は、例えばキーボードやマウスなどの、オペレータからの入力を受ける装置である。出力装置106は、例えばディスプレイやプリンタなど、プログラムの実行結果をオペレータが視認可能な形式で出力する装置である。
通信装置104は、所定のプロトコルに従って、他の装置との通信を制御するネットワークインターフェース装置である。また、通信装置104は、例えば、USB等のシリアルインターフェースを含んでもよい。
CPU101が実行するプログラムは、リムーバブルメディア(CD-ROM、フラッシュメモリなど)又はネットワーク400を介して運行管理装置100に提供され、非一時的記憶媒体である不揮発性の補助記憶装置103に格納される。このため、運行管理装置100は、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。
運行管理装置100は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで動作してもよく、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。利用者端末200及び車載端末300についても同様である。
CPU101は、例えば、運行スケジュール算出部111、ゆずりあいリクエスト算出部112、及びインセンティブ算出部113を含む。運行スケジュール算出部111は、利用者端末200から受信した予約情報に基づいて、車両の運行スケジュールを算出する。具体的には、例えば、運行スケジュール算出部111は、車両の走行ルート、停車ポイント間の所要時間、及び停車ポイントへの到着時刻等を算出したり、複数の利用者の予約を調整したり、車両の配車スケジュールを算出したりする。
ゆずりあいリクエスト算出部112は、運行スケジュール算出部111が利用者端末200のユーザの予約の調整が必要であると判定した場合に、少なくとも一部のユーザに対して乗車時間、降車時間、乗車位置、又は降車位置の変更を依頼するためのゆずりあいリクエストを算出する。インセンティブ算出部113は、ゆずりあいリクエストに対する諾否結果、並びに利用者端末200のユーザが入力した許容時間及び許容距離に基づいて、ユーザに対して付与するインセンティブを算出する。
例えば、CPU101は、メモリ102にロードされた運行スケジュール算出プログラムに従って動作することで、運行スケジュール算出部111として機能し、メモリ102にロードされたゆずりあいリクエスト算出プログラムに従って動作することで、ゆずりあいリクエスト算出部112として機能する。CPU101に含まれる他の機能部についても、プログラムと機能部の関係は同様である。
なお、CPU101含まれる機能部による機能の一部又は全部が、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)等のハードウェアによって実現されてもよい。
補助記憶装置103は、例えば、ユーザ情報テーブル121、予約情報テーブル122、及び運行情報テーブル123を保持する。ユーザ情報テーブル121は、利用者端末200のユーザに関する情報を保持する。予約情報テーブル122は、利用者端末200のユーザからの乗車予約に関する情報を保持する。運行情報テーブル123は、車両の運行に関する情報を保持する。なお、補助記憶装置103に格納されている一部又は全部の情報は、メモリ102に格納されていてもよいし、運行管理装置100に接続されているデータベースに格納されていてもよい。
なお、本実施形態において、運行管理システムが使用する情報は、データ構造に依存せずどのようなデータ構造で表現されていてもよい。本実施形態ではテーブル形式で情報が表現されているが、例えば、リスト、データベース又はキューから適切に選択したデータ構造体が、情報を格納することができる。
図3は、ユーザ情報テーブル121の一例である。ユーザ情報テーブル121は、例えば、ユーザID欄1211、ユーザ名欄1212、住所欄1213、連絡先欄1214、ゆずりあい履歴欄1215、ゆずりあいポイント欄1216、ごめんねポイント欄1217、及び備考欄1218を含む。
ユーザID欄1211は、ユーザ(利用者端末200を利用する乗客)を識別する情報を保持する。ユーザ名欄1212は、ユーザの名称を示す情報を保持する。住所欄1213は、ユーザの住所を示す情報を保持する。連絡先欄1214は、ユーザの連絡先を示す情報を保持する。ゆずりあい履歴欄1215は、ゆずりあいリクエストに対するユーザの回答実績を示す情報を保持する。具体的には、例えば、ゆずりあい履歴欄1215は、ユーザが受けたゆずりあいリクエストの内容と、当該ゆずりあいリクエストに対する諾否結果と、ゆずりあいリクエストを受諾した場合における当該ゆずりあいリクエストが示す時刻と許容時間の開始時間又は終了時間との差、及び当該ゆずりあいリクエストが示す位置との許容距離との端部との差、を保持する。
ゆずりあいポイント欄1216は、ユーザが保持するゆずりあいポイント数を示す情報を保持する。ごめんねポイント欄1217は、ユーザが保持するごめんねポイント数を示す情報を保持する。備考欄1218は、ユーザに関する備考を示す情報を保持する。例えば、脚が悪く長い距離を歩けないユーザは、許容距離が極めて小さいため、乗車位置及び降車位置を変更させることは難しい。従って、このようなユーザの備考欄1218には、ゆずりあいリクエストの対象外(図中「Req非対象」)であることを示す情報が格納されているとよい。
なお、備考欄1218には、当該ユーザが降車時間、乗車時間、乗車位置、及び降車位置のいずれかについてゆずりあいリクエストの非対象であることを示す情報が格納されていてもよい。また、備考欄1218には、例えば、当該ユーザに関連するユーザ(例えば、家族、友人など)のユーザIDが格納されていてもよい。
図4は、予約情報テーブル122の一例である。予約情報テーブル122は、例えば、ユーザID欄1221、乗車日欄1222、乗車時刻欄1223、降車時刻欄1224、許容時間(-)欄1225、許容時間(+)欄1226、乗車位置欄1227、降車位置欄1228、乗車許容距離欄1229、降車許容距離欄12210、及び乗車人数欄12211を含む。詳細は後述するが、予約情報テーブル122は、予約が確定する前にはユーザの予約希望情報を保持し、予約が確定した後には予約登録情報を保持する。
ユーザID欄1221は、ユーザ(利用者端末200を利用する乗客)を識別する情報を保持する。乗車日欄1222は、ユーザが車両に乗車する日(又は希望日)を示す情報を保持する。乗車時刻欄1223は、ユーザが車両に乗車する時刻(又は希望乗車時刻)を示す情報を保持する。降車時刻欄1224は、ユーザが車両から降車する時刻(又は希望降車時刻)を示す情報を保持する。
許容時間(-)欄1225は、ユーザが希望する乗車時刻又は降車時刻から早めることを許容できる時間の幅を示す情報を保持する。許容時間(+)欄1226は、ユーザが希望する乗車時刻又は降車時刻から遅らせることを許容できる時間の幅を示す情報を保持する。なお、予約情報テーブル122は、許容時間欄を1つだけ有してもよく、この場合許容時間(-)と許容時間(+)とが同じ値であるものとする。
乗車位置欄1227は、ユーザが車両に乗車する位置(又は希望乗車位置)を示す情報を保持する。降車位置欄1228は、ユーザが車両から降車する位置(又は希望降車位置)を示す情報を保持する。
乗車許容距離欄1229は、ユーザが希望する乗車位置から離れることを許容できる距離を示す情報を保持する。降車許容距離欄12210は、ユーザが希望する降車位置から離れることを許容できる距離を示す情報を保持する。乗車人数欄12211は、対象のユーザを含む乗車人数(又は乗車希望人数)を示す情報を保持する。なお、予約情報テーブル122は、乗車許容距離欄1220及び降車許容距離欄12210の代わりに許容距離欄を1つだけ有してもよく、この場合、乗車許容距離と降車許容距離とが同じ値であるものとする。乗車人数欄12211は、ユーザが希望する乗車人数を示す。
図5は、運行情報テーブル123の一例である。運行情報テーブル123は、例えば、車両ID欄1231、運行実績欄1232、車両位置欄1233、及び乗車率欄1234を含む。車両ID欄1231は、運行管理対象、即ち車載端末300を有する車両を識別する情報を保持する。運行実績欄1232は、車両の運行実績(例えば、過去の走行距離及び走行ルートの時系列等)を示す情報を保持する。車両位置欄1233は、車両の現在位置を示す情報を保持する。乗車率欄1234は、車両の現在の乗車率を示す情報を保持する。
図6は、運行管理システムの全体処理の一例を示すシーケンス図である。利用者端末200は、利用者端末200のユーザから乗車基本情報の入力を受け付け、ユーザIDと乗車基本情報とを紐づけて、運行管理装置100に送信する(S601)。乗車基本情報は、例えば、ユーザの希望乗車時刻又は希望降車時刻、当該ユーザの希望乗車位置及び希望降車位置、並びに乗車人数を含む。
運行管理装置100の運行スケジュール算出部111は、受信した希望乗車時刻又は希望降車時刻、希望乗車位置又は希望降車位置、並びに過去の混雑履歴(例えば、運行管理装置100が予め保持している、又は外部の装置から取得する)に基づいて、車両が通行する可能性がある道路の混雑予測を実行する(S602)。運行スケジュール算出部111は、ステップS602で実行した混雑予測の結果を、乗車基本情報を送信した利用者端末200に送信して、利用者端末200に表示させる(S603)。
なお、ステップS602及びステップS603の処理は実行されなくてもよい。また、ステップS602及びステップS603の処理に加えて又は代えて、運行スケジュール算出部111は、利用者端末200のユーザの予約に有用な情報を、利用者端末200に送信する処理を実行してもよい。具体的には、例えば、ユーザ情報テーブル121の備考欄128において、ユーザ同士の関連(例えば、家族、友人など)を示す情報(例えばユーザIDを用いて紐づけられている)が予め登録されており、運行スケジュール算出部111は、ステップS601で取得したユーザIDに関連するユーザIDに対応するユーザ名を、利用者端末200に返信して表示させるようにしてもよい。また、例えば、運行管理装置100は、各車両の空席数をリアルタイムで車載端末300から受信し、運行スケジュール算出部111は、受信した空席数を利用者端末200に送信して表示させるようにしてもよい。
混雑予測の結果を受信した利用者端末200は、利用者端末200のユーザから、希望乗車時刻又は希望降車時刻からの許容時間(前側の許容時間の長さと後側の許容時間の長さ)、並びに希望乗車位置及び希望降車位置入力からの許容距離の入力を受け付け、入力を受け付けた情報と、ユーザIDと、を紐づけて、運行管理装置100に送信する(S604)。なお、利用者端末200は、許容時間に代えて又は加えて複数の希望乗車時刻又は希望降車時刻を運行管理装置100に送信してもよいし、許容距離に代えて又は加えて複数の希望乗車位置又は希望降車位置を運行管理装置100に送信してもよい。
運行管理装置100の運行スケジュール算出部111は、ステップS604において受信した情報を予約情報テーブル122に(仮)登録し(S605)、予約受付が完了したことを示す情報を、ステップS604において情報を送信した利用者端末200に対して送信して表示させる(S606)。
なお、例えば、予約受付時間が運行管理装置100のユーザによって設定可能であり、ステップS601からステップS606の処理は、この予約受付時間内に行われるものである。予約受付時間が終了するとステップS607の処理が開始する。なお、ステップS607以降の処理において出現する利用者端末200は、特に説明がない限りステップS606における予約受付が完了したユーザが利用する利用者端末200を示す。
運行管理装置100は、受け付けた予約情報に基づいて運行スケジュールを算出し、必要に応じてゆずりあいリクエストを算出し、さらに利用者端末200のユーザに対するインセンティブを算出し、確定した予約を予約情報テーブル122に登録する(S607)。なお、詳細は後述するが、ステップS607の一部の処理は、ステップS608~ステップS610のいずれかの処理の結果に応じて行われる。
ゆずりあいリクエスト算出部112は、ステップS607でゆずりあいリクエストを算出した場合、ゆずりあいリクエストの対象のユーザが利用する利用者端末200に対してゆずりあいリクエストを送信する(S608)。ゆずりあいリクエストを受信した利用者端末200は、当該利用者端末200のユーザによって入力されたゆずりあいリクエストに対する諾否結果を運行管理装置100に送信する(S608)。なお、運行スケジュール算出部111は、ゆずりあいリクエストを承認したユーザについては、当該ゆずりあいリクエストに従って、当該ユーザの乗車日、乗降者時刻、及び/又は乗降者位置を修正する。
運行スケジュール算出部111は、予約確認及び予約確定通知を利用者端末200に送信する(S610)。予約確認は、予約が成立したか否かを示す情報を含む。ゆずりあいリクエストを受諾したユーザ又はゆずりあいリクエストを受信しなかったユーザが利用する利用者端末200が受信する予約確認は、予約が成立したことを示す情報を含み、ゆずりあいリクエストを受諾しなかったユーザが利用する利用者端末200が受信する予約確認は、予約が成立しなかったことを示す情報を含む。
予約確定通知は、例えば、確定した乗車日、乗降者時刻、乗降者位置、及び乗車人数を示す情報を含む。なお、運行スケジュール算出部111は、ゆずりあいリクエストを受諾しなかったユーザに対しては、予約確定通知を送信しない。また、例えば、車載端末300が二次元コードを読み取る機能を有しているとよく、予約確定通知は当該車両を予約したユーザのユーザID、確定した乗車日、乗降者時刻、乗降者位置、及び乗車人数を示す二次元コードを含んでいるとよい。
予約が確定したユーザが利用する利用者端末200は、当該ユーザの指示に従って、予約を了承する通知(支払い情報を含む)を運行管理装置100に送信する(S611)。例えば、運行管理装置100のユーザによって決定された予約了承時間までに当該通知を受信しなかったユーザについては予約がキャンセルされたものとして、運行スケジュール算出部111は予約情報テーブル122に格納されている予約のレコードを削除するとよい。
運行スケジュール算出部111は、予約が確定したユーザが乗車する車両に搭載された車載端末300に対して配車指示を送信する(S612)。配車指示は、例えば、当該車両に乗車する予定の各ユーザのユーザID、乗車日、乗降者時刻、乗降者位置、及び乗車人数を示す情報、並びに運行スケジュール算出部111が算出した当該車両の走行ルートを示す情報を含む。
以下の処理は確定した予約に従って、車両が走行を開始してから実行される処理である。車載端末300は、車両の位置情報をリアルタイムで運行管理装置100に送信し(S613)、運行管理装置100は受信した位置情報を運行情報テーブル123に格納する。なお、車載端末300には、当該車両に乗車する予定の各ユーザのユーザID、乗車日、乗降者時刻、乗降者位置、及び乗車人数を示す情報、並びに当該車両の走行ルートを示す情報が表示されているとよい。
運行スケジュール算出部111は、車載端末300から受信した位置情報に基づいて、予約が確定したユーザの利用者端末200に対して、当該ユーザの乗車位置に車両が近付いた(例えば、当該乗車位置に所定距離以内に近づいた、又は混雑予測に基づいて所定時間以内に当該乗車位置に車両が到着すると予測した)ときに、車両が接近していることを示す通知を送信する(S614)。
例えば、車両に乗車する際に、車両に乗車するユーザの利用者端末200は、当該ユーザの指示に従って、前述した二次元コードを表示し(S615)、車載端末300は、前述した二次元コードを読み取ることで、当該ユーザが当該車両を予約した正当なユーザである(乗車日、乗車時刻、及び乗車位置が正しい)ことを確認する乗車確認を行う(S616)。車載端末616は、乗車確認が行われたユーザを示す情報を運行管理装置100に送信する(S617)。
運行管理装置100は、乗車確認が行われた、かつインセンティブポイント(ゆずりあいポイント及び/又はごめんねポイント)の付与対象であるユーザに対して、ポイントを付与(ユーザ情報テーブル121を更新)し、当該ユーザが利用する利用者端末200に対して付与されたインセンティブポイントを示す情報を送信して表示させる。
図7は、運行管理装置100による運行スケジュール算出処理の一例を示すフローチャートである。具体的には、図7は、ステップS601~ステップS611までの処理のうち運行管理装置100によって実行される処理の詳細(但し一部の処理については説明を省略している)を示す。
運行スケジュール算出部111は、乗車予約を取得する(S701)。乗車予約とは、ステップS601で説明した乗車基本情報と、ステップS604で説明した許容時間及び許容距離と、を含む情報である。ステップS701の処理が終了することと、ステップS604までの処理が終了することは同義である。運行スケジュール算出部111は、予約受付時間が終了したら、乗車基本情報に含まれる、ユーザの希望乗車時刻又は希望降車時刻、当該ユーザの希望乗車位置及び希望降車位置、並びに乗車人数と、許容時間と、に基づいて、タイムテーブルを作成する(S702)。
図8は、タイムテーブル作成処理の一例を示す説明図である。運行スケジュール算出部111は、例えば、乗車基本情報を送信したユーザのユーザID(図中の予約者欄にユーザIDが格納されている)それぞれについて、希望乗車位置(図中の「-o」で終わる位置)及び希望降車位置(図中の「-d」で終わる位置)と、希望停車時刻(停車とは、乗車と降車のいずれかを指す)と、希望停車時刻からの前側の許容時間と後ろ側の許容時間との間の時間(許容時間)と、をタイムテーブルに格納する。運行スケジュール算出部111は、図8のように、希望停車時刻順にタイムテーブルをソートしてもよい。
図7の説明に戻る。運行スケジュール算出部111は、乗車基本情報に含まれる、ユーザの希望乗車時刻又は希望降車時刻、当該ユーザの希望乗車位置及び希望降車位置に基づいて、車両の運行経路及び運行にかかる所要時間を算出する(S703)。
図9は、運行経路算出の処理の一例を示す説明図である。運行スケジュール算出部111は、地図上に、各ユーザの希望乗車位置及び希望降車位置それぞれについて、当該位置を中心とし、半径が許容距離である円を生成する。
図10は、図9の続きの運行経路算出処理及び運行所要時間算出処理の一例を示す説明図である。運行スケジュール算出部111は、出発地から目的地の間の最短経路を算出する所定の経路検索アルゴリズム(例えばカーナビなどで活用されるダイクストラ法など)に基づいて、各ユーザについての希望乗車位置と希望降車位置とを結ぶ経路と、当該経路を車両が走行した場合の運行にかかる所要時間とを算出する。運行スケジュール算出部111は、算出した運行時間をタイムテーブルに格納する(後述する図11参照)。
図7の説明に戻る。運行スケジュール算出部111は、タイムテーブルにおいて、許容時間を含む希望乗車時間又は希望降車時間の少なくとも一部が重複している複数のユーザがいるかを判定する(S704)。運行スケジュール算出部111は、当該重複がないと判定した場合(S704:No)、乗り合いが発生しないものとして、生成済みのタイムテーブルが示す予約(配車スケジュール)を確定する(S714)。運行スケジュール算出部111は、当該重複があると判定した場合(S704:Yes)、当該重複があるユーザ間で乗り合いが可能かを判定する(S705)。
具体的には、例えば、運行スケジュール算出部111は、当該重複があるユーザ間で、許容時間を含めた希望乗車時間又は希望降車時間が重なっている(例えば許容時間内である)、出発地(当該重複の対象が許容時間を含めた希望乗車時間である場合)/到着地(当該重複の対象が許容時間を含めた希望降車時間である場合)が近接している(例えば許容距離以内である)、又は当該重複の対象の少なくとも1人のユーザの出発地(当該重複の対象が許容時間を含めた希望乗車時間である場合)/到着地(当該重複の対象が許容時間を含めた希望降車時間である場合)が、当該重複の対象の他のユーザのステップS703で算出した経路上(例えば当該少なくとも1人のユーザの許容距離内)にある、を含むいずれかの条件を満たすユーザ間で乗り合いが可能であると判定する。
図11は、ステップS704における重複判定処理の一例を示す説明図である。図11の例では、ユーザIDが「1」のユーザからユーザIDが「4」のユーザの組み合わせ、及びユーザIDが「5」のユーザとユーザIDが「6」のユーザの組み合わせ、それぞれについて、タイムテーブルにおける、許容時間を含む希望乗車時間又は希望降車時間の少なくとも一部が重複している(例えば、ユーザIDが「1」のユーザとユーザIDが「3」のユーザとでは重複は発生していないが、いずれもユーザIDが「2」のユーザと重複が発生しており、このように重複が連鎖しているユーザ間では重複が発生しているものとする)。従って、これらの組み合わせそれぞれにおいて、少なくとも1人のユーザの乗車時刻又は降車時刻の調整が必要である。図11中における「算出した乗車時刻/降車時刻」は、経路と乗車時刻又は降車時刻の一方とから算出された、乗車時刻又は降車時刻の他方である。
図12は、ステップS705における乗り合い判定の一例を示す説明図である。図12の例では、運行スケジュール算出部111は、ユーザIDが「3」のユーザの降車時刻と、ユーザIDが「4」のユーザの乗車時刻と、が一致し、ユーザIDが「5」のユーザの乗車時刻と、ユーザIDが「6」のユーザの乗車時刻と、が一致するため、それぞれ乗り合いが可能であると判定している。さらに、停車順序が確定している。
図13は、ステップS705における乗り合い判定の一例を示す説明図である。図12で説明したように、ユーザIDが「3」のユーザと「4」のユーザとの乗り合いが可能であり、さらに、これら2人のユーザのそれぞれの許容距離の範囲内に位置する同じ位置になるよう、ユーザIDが「3」のユーザの降車位置と、ユーザIDが「4」のユーザの乗車位置と、が調整されている。同様に、ユーザIDが「5」のユーザとユーザIDが「6」のユーザそれぞれの許容距離の範囲内に位置する同じ位置になるよう、ユーザIDが「5」のユーザの乗車位置と、ユーザIDが「6」のユーザの乗車位置と、が調整されている。
図14は、乗り合いを考慮した経路の一例を示す説明図である。ユーザIDが「3」のユーザの降車位置と、ユーザIDが「4」のユーザの乗車位置と、が一致し、さらにユーザIDが「5」のユーザの乗車位置と、ユーザIDが「6」のユーザの乗車位置と、が一致した経路と所要時間とが算出されている。図中の丸印と数字は停車位置及び停車順を示し、実線は車両に乗客が少なくとも1人は乗車している予定の走行ルートを示し、点線は車両に乗客が1人も乗車していない予定の走行ルートを示す。
図7の説明に戻る。運行スケジュール算出部111は、当該重複があるユーザ間で乗り合いが可能であるユーザについて(S705:Yes)、上記した条件に従って、許容時間の重複が発生したまま、当該乗り合いが可能なユーザの少なくとも1人について、許容時間内で乗車時刻又は降車時刻を変更し(S706)、許容距離以内で乗車位置及び/又は降車位置を変更して、経路を再生成する(S707)ことで、当該重複があるユーザ間で乗り合いが発生するように運行スケジュールを調整する。但し、車両の定員が予め定められている場合には、運行スケジュール算出部111は、乗車人数を参照して、当該定員を超過しないように運行スケジュールを調整する。
運行スケジュール算出部111は、当該重複があるユーザ間で乗り合いが可能でないユーザについて(S706:No)、許容時間の重複が発生しないように、当該乗り合いが可能でないユーザの少なくとも1人について、許容時間内で乗車時刻又は降車時刻を変更し(S708)、許容距離以内で乗車位置及び/又は降車位置を変更して、経路を再生成する(S709)ことで、当該重複がないユーザ間で乗り合いが発生しないように運行スケジュールを調整する。
運行スケジュール算出部111は、ステップS706~ステップS709における乗車時刻/降車時刻調整処理、及び乗車位置/降車位置調整処理において、例えば、以下の規則を用いて、乗車時刻、降車時刻、乗車位置、及び降車位置を調整する。
運行スケジュール算出部111は、複数のユーザの許容時間を含む希望乗車時刻又は希望降車時刻の少なくとも一部が重複している場合、当該許容時間の範囲内で乗車時刻又は降車時刻を調整する。また、複数のユーザの許容時間を含む希望乗車時刻又は希望降車時刻の少なくとも一部が重複している場合、車両の走行距離が最短となるように乗車時刻又は降車時刻を調整する。このとき、乗車時刻又は降車時刻の調整対象のユーザの希望乗車時刻又は希望降車時刻からずらされる時間の合計が最小となるように乗車時刻又は降車時刻を調整してもよいし、乗車時刻又は降車時刻の調整対象のユーザの希望乗車時刻又は希望降車時刻からずらされる時刻が当該ユーザ間でなるべく平等になるように(例えば、分散が小さくなるように、又はずらされる時刻が最大値と最小値との差が小さくなるように)調整してもよい。
図15は、ステップS706及びステップS708における乗車時刻/降車時刻調整処理の一例を示す説明図である。図15のタイムテーブルは、運行スケジュール算出部111が、各ユーザの乗車時刻又は降車時刻の許容時間の範囲内で、算出した経路における最短時間に基づいて、各ユーザの乗車時刻及び降車時刻を算出した結果を示している。
図16は、ステップS706及びステップS708における乗車時刻/降車時刻調整処理後のタイムテーブルの一例である。図16のタイムテーブルには、図15で算出された乗車時刻と降車時刻が格納されている。
図7の説明に戻る。運行スケジュール算出部111は、予約を受け付けた全てのユーザについて、許容時間の範囲を満たす運行スケジュール(当該全てのユーザについて、ステップS706~S709における調整後の乗車時刻又は降車時刻が許容時間内に収まっている運行スケジュール)を生成したか否かを判定する(S710)。
運行スケジュール算出部111は、当該運行スケジュールを生成したと判定した場合(S710:Yes)、当該運行スケジュールにて予約を確定する(S714)。運行スケジュール算出部111が、当該運行スケジュールを生成していないと判定した場合(S710:No)、ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト算出処理を実行する(S711)。ゆずりあいリクエスト算出処理の詳細については後述する。
ゆずりあいリクエスト算出部112は、ゆずりあいリクエストに対する諾否結果をゆずりあいリクエストを送信したユーザの利用者端末200から受信し、当該ユーザそれぞれがゆずりあいリクエストを承諾したかを判定する(S712)。
ゆずりあいリクエスト算出部112は、ゆずりあいリクエストを受諾したユーザ(S712:Yes)に対しては、当該ゆずりあいリクエストが示す乗車時間、降車時間、乗車位置、又は降車位置へと当該ユーザの予約を変更し、ゆずりあいリクエストを受諾しなかったユーザ(S712:No)に対しては、当該ユーザの利用者端末200に対して予約を断ったことを示す通知を送信(さらに予約情報テーブル122から当該予約に対応するレコードを削除又は予約を断ったことを示す情報を追加)して(S713)、運行スケジュール算出部111は、予約配車スケジュールを確定する(S714)。
なお、ゆずりあいリクエストを受信した利用者端末200は、ユーザの入力に従って、ゆずりあいリクエストにおけるゆずりあい度合いを調整する応答を送信可能なようにしてもよい。例えば、ゆずりあいリクエストにおいて、希望降車時間の許容時間よりも30分遅らせること及び希望乗車位置の許容距離よりも100m離れていることが示されている場合において、利用者端末200は、希望降車時間の許容時間よりも20分遅らせるだけであればゆずりあいリクエストを受諾することや、希望乗車位置の許容距離よりも200m離れていてもゆずりあいリクエストを受諾すること等を示すゆずりあい調整情報を、運行管理装置100に送信してもよい。
この場合、ゆずりあいリクエスト算出部112は、受信したゆずりあいリクエスト調整情報に基づいて、再度ゆずりあいリクエストを算出してもよい。このように、運行管理装置100と利用者端末200との間でインタラクティブにゆずりあいリクエストの内容を変更することで、予約が成立する可能性が高くなる。
続いて、運行スケジュール算出部111は、確定した予約配車スケジュールを、当該予約配車スケジュールにおいて走行する車両に搭載された車載端末300に送信する(S715)。インセンティブ算出部113は、インセンティブ算出処理Aを実行する(S716)。インセンティブ算出処理Aの詳細については後述する。運行スケジュール算出部111は、予約が確定したユーザの利用者端末200に対して、確定した予約の内容を示す通知を送信し(S717)、運行スケジュール算出処理を終了する。
図17Aは、ゆずりあいリクエスト算出処理の一例を示すフローチャートである。ゆずりあいリクエスト算出部112は、ゆずりあいリクエストの1以上のパターンを算出する(S1701)。ゆずりあいリクエストは、例えば、ゆずりあいの対象となる1以上のユーザそれぞれのユーザID、当該ユーザそれぞれに対する乗車時刻、降車時刻、乗車位置、及び降車位置の少なくとも1つの変更リクエスト(変更後の情報)を含む。
例えば、ゆずりあいリクエスト算出部112は、ステップS704における重複判定処理により重複が発生していることが判定されており、かつ、ステップS705~S710の処理によって乗り合い乗車、又は許容時間内での時間変更が不可である少なくとも1人のユーザの希望乗車時刻、希望降車時刻、希望乗車位置、及び希望降車位置の少なくとも1つを、当該少なくとも1人以外のユーザの許容時間を満たす範囲(さらに許容距離を満たす範囲としてもよい)で、変更することで、1以上のゆずりあいリクエストを算出する。このとき、当該少なくとも1人のユーザについては許容時間及び/又は許容距離の範囲外(但し、例えば、許容時間のさらに前後の所定時間まで、許容距離に所定距離を加えた距離の範囲内に)となるように変更がなされてもよい。
なお、例えば、ゆずりあいリクエスト算出部112は、ユーザ情報テーブル121の備考欄1218を参照して、「Req非対象」のユーザをゆずりあいリクエストの送信対象から除外した上でゆずりあいリクエストを算出する。また、例えば、ゆずりあいリクエスト算出部112は、例えば、ユーザ情報テーブル121の備考欄1218を参照して、ゆずりあいリクエストの送信対象のユーザに関連するユーザがいると判定した場合(例えば、家族、友人など)、当該送信対象のユーザの乗車時刻、降車時刻、乗車位置、又は降車位置が当該関連するユーザのものと一致するゆずりあいリクエストを算出してもよい。
これにより、ユーザがゆずりあいリクエストを受諾すると、自身と関連するユーザと同時に車両に乗車する時間帯が発生するため、ゆずりあいリクエストの受諾率が向上することが予想される。
続いて、ゆずりあいリクエスト算出部112は、ステップS1701において複数のリクエストパターンを算出したかを判定する(S1702)。ゆずりあいリクエスト算出部112は、複数のリクエストパターンを算出したと判定した場合(S1702:Yes)、例えば、当該複数のリクエストパターンそれぞれのゆずりあいの時間、距離、及び/又は過去のゆずりあい数(ゆずりあい数の定義については後述する)に基づいて、1つのリクエストパターンを選択する(S1703)。
具体的には、例えば、ゆずりあいリクエスト算出部112は、当該複数のリクエストパターンのうち、ゆずりあいリクエストの送信対象のゆずりあいの時間の合計値が最小のリクエストパターンを選択してもよいし、ゆずりあいリクエストの送信対象のゆずりあいの距離の合計値が最小のリクエストパターンを選択してもよいし、ゆずりあいリクエストの送信対象の過去のゆずりあい数の合計値が最小のリクエストパターンを選択してもよい。
また、例えば、ゆずりあいリクエスト算出部112は、例えば、ゆずりあいリクエストの送信対象のゆずりあいの時間の合計値と、ゆずりあいの距離の合計値と、の減少関数である所定の評価関数によって評価値を算出し、算出した評価値が最大のリクエストパターンを選択してもよい。また、例えば、ゆずりあいリクエスト算出部112は、例えば、ゆずりあいリクエストの送信対象の人数が最小のリクエストパターンを選択してもよい。
ゆずりあいリクエスト算出部112は、リクエストパターンを1つのみしか算出できなかったと判定した場合(S1702:No)、ステップS1704へと遷移する。続いて、ゆずりあいリクエスト算出部112は、決定したリクエストパターンが複数人に対するリクエストを含んでいるかを判定する(S1704)。
ゆずりあいリクエスト算出部112は、決定したリクエストパターンが1人に対するリクエストのみを含んでいると判定した場合(S1704:No)、インセンティブ算出処理Bを実行し(S1711)、リクエストパターンに含まれるゆずりあいリクエストを、送信対象である利用者端末200に、優先順位に従って、送信して(S1712)、ゆずりあいリクエスト算出処理を終了する。
なお、インセンティブ算出処理Bの詳細については後述する。また、ゆずりあいリクエスト算出部112は、ステップS1712において、優先順位が高い順に所定数又は所定割合のゆずりあいリクエストを同時に送信してもよいし、順次送信(例えば、未送信のゆずりあいリクエストを送信し優先順位が最高のゆずりあいリクエストを送信し、当該ゆずりありリクエストが受諾されなかったら次のゆずりあいリクエストを送信することを、受諾されるまで繰り返す)してもよい。
ゆずりあいリクエスト算出部112は、決定したリクエストパターンが複数人に対するゆずりあいリクエストを含んでいると判定した場合(S1704:Yes)、ゆずりあいリクエスト送信対象者間の許容時間の差が大きいか(例えば最大の許容時間と最小の許容時間との差が所定値以上であるか)を判定する(S1705)。
ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者間の許容時間の差が大きいと判定した場合(S1705:YES)、ゆずりあいリクエスト送信対象者間の許容時間に基づいて、ゆずりあいリクエスト送信の優先順位を決定し(S1706)、ステップS1711へ遷移する。具体的には、例えば、ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者の許容時間が小さいゆずりあいリクエストほど高い優先順位を付与する(但し、許容時間の差が所定値(例えば50m)以内であるゆずりあいリクエスト送信対象者には同一の優先順位を付与してもよい)。これにより、許容時間が小さいユーザに対して、優先的にゆずりあいリクエストを送信することができるため、ユーザ間での公平性が高まる。
ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者間の許容時間の差が大きくないと判定した場合(S1705:No)、ゆずりあいリクエスト送信対象者間の許容距離の差が大きいか(例えば最大の許容距離と最小の許容距離との差が所定値以上であるか)を判定する(S1707)。
ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者間の許容距離の差が大きいと判定した場合(S1707:YES)、ゆずりあいリクエスト送信対象者間の許容距離に基づいて、ゆずりあいリクエスト送信の優先順位を決定し(S1708)、ステップS1711へ遷移する。具体的には、例えば、ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者の許容距離が小さいゆずりあいリクエストほど高い優先順位を付与する(但し、許容距離の差が所定値(例えば50m)以内であるゆずりあいリクエスト送信対象者には同一の優先順位を付与してもよい)。これにより、許容距離が小さいユーザに対して、優先的にゆずりあいリクエストを送信することができるため、ユーザ間での公平性が高まる。
ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者間の許容距離の差が大きくないと判定した場合(S1707:No)、ユーザ情報テーブル121のゆずりあい履歴欄1215が示す、ゆずりあいリクエスト送信対象者の過去のゆずりあい数を比較する(S1709)。なお、過去のゆずり数として、過去に受諾したゆずりあいリクエストにおいて譲った時間の合計と距離の合計に応じて高くなる値、過去にゆずりあいリクエストを受諾した回数、又はゆずりあいポイントの回数等が採用できる。
ゆずりあいリクエスト算出部112は、ステップS1709に比較結果に基づいて、ゆずりあいリクエスト送信の優先順位を決定し(S1710)、ステップS1711へ遷移する。具体的には、例えば、ゆずりあいリクエスト算出部112は、ゆずりあいリクエスト送信対象者の過去のゆずりあい数が少ないゆずりあいリクエストほど高い優先順位を付与する。
これにより、過去にゆずりあいリクエストを受諾した回数が少ないユーザに対して、優先的にゆずりあいリクエストを送信することができるため、ユーザ間での公平性が高まる。また、ユーザは、ゆずりあいリクエストを受諾するほど、ゆずりあいリクエストを受信する可能性が低くなるため、例えばゆずりあいリクエストを受信したときに時間に余裕があるユーザは未来の時間がない状況に備えて予め積極的にゆずりあいリクエストを受諾しやすくなる。
上記した例では、ゆずりあいリクエスト算出部112が、ゆずりあいリクエストの優先順位のみを算出する例を説明しているが、ゆずりあいリクエスト算出部112は、例えば、優先度の値(例えば、ステップS1705では許容時間の所定の減少関数から得られる値、ステップS1707では許容距離の所定の減少関数から得られる値、ステップS1709では過去のゆずりあい数の所定の減少関数から得られる値)を算出して、例えば、優先度の値が所定値以上であるゆずりあいリクエストを送信するようにしてもよい。
また、上記した例では、ゆずりあいリクエスト算出部112は、ステップS1705において許容距離の差が大きくないと判定した場合に、ステップS1707で許容距離の差が大きいかを判定し、さらにステップS1707で許容距離の差が大きくないと判定した場合に、ステップS1709において過去のゆずりあい数を比較している。ユーザの乗車時間又は降車時間を調整が、分散乗車又は乗り合い乗車の成立に対する効果が最も高いため、このような順序で判定が行われている。但し、これらの判定が実行される順序は上記した例に限らず、任意の順序で実行されてもよい。
具体的には、例えば、ゆずりあいリクエスト算出部112は、ステップS1704に続いて、許容距離の差が大きいかを判定して、許容距離の差が大きれば許容距離に基づく優先順位を決定し、許容距離の差が大きくなければ、過去のゆずりあいリクエスト数の差が大きいかを判定し、過去のゆずりあいリクエスト数の差が大きければ過去のゆずりあいリクエスト数に基づく優先順位を決定し、過去のゆずりあいリクエスト数の差が大きくなければ許容距離に基づく優先順位を決定するようにしてもよい。
また、ゆずりあいリクエスト算出部112は、許容時間、及び許容距離、及び過去のゆずりあい数の少なくとも2つに基づく優先順位を算出してもよい。具体的には、例えば、ゆずりあいリクエスト算出部112は、許容時間の減少関数であり、許容距離の減少関数であり、かつ過去のゆずりあい数の減少関数である所定の関数により評価値を算出して、当該評価値が大きい順にゆずりあいリクエストの優先順位が高くなるように、当該優先順位を付与してもよい。
また、例えば、運行管理装置100はユーザからの予約受付時に乗車目的の入力を受け付け、ゆずりあいリクエスト算出部112は、前述した許容時間、許容距離、及び過去のゆずりあい数に加えて又は代えて、乗車目的に基づく優先順位を決定してもよい。例えば、乗車目的ごとに評価値が予め定められ(例えば乗車目的が「買い物」>「通勤・通学」>「通院」の順に評価値が小さくなる)、当該評価値が高いほどゆずりあいリクエストの優先順位が高くなるようにするとよい。
図17Bは、ゆずりあいリクエスト算出処理の別例を示すフローチャートである。つまり、ゆずりあいリクエスト算出部112は、ステップS711の処理として、図17Aの処理を実行してもよいし、図17Bの処理を実行してもよい。
ゆずりあいリクエスト算出部112は、図17Aと同様にステップS1701及びステップS1702の処理を実行する。ゆずりあいリクエスト算出部112は、リクエストパターンを1つのみしか算出できなかったと判定した場合(S1702:No)、ステップS1711のインセンティブ算出処理Bを実行し、ゆずりあいリクエストを一斉送信(即ち複数人に対するゆずりあいリクエストであっても当該複数人全員に送信)し(S1722)、ゆずりあいリクエスト算出処理を終了する。
ゆずりあいリクエスト算出部112は、複数のリクエストパターンを算出したと判定した場合(S1702:Yes)、当該複数のリクエストパターンのうちゆずりあいを行うユーザの人数(つまりゆずりあいリクエストを一斉送信するときの送信対象者数)が最小のリクエストパターンを選択し(S1721)、ステップS1711のインセンティブ算出処理Bを実行し、ゆずりあいリクエストを一斉送信し(S1722)、ゆずりあいリクエスト算出処理を終了する。
なお、ゆずりあいリクエスト算出部112は、ステップS1721において、予約の調整が必要なグループ(例えば、タイムテーブルにおいて許容時間を含む乗車時間又は降車時間の少なくとも一部が重複しているユーザ群)に一斉にリクエストを送信してもよい。また、例えば、ゆずりあいリクエストには、「予約時間を前後2時間程度ずらしてくれる人を募集」や、「乗車/降車位置を300mmずらしてくれる人を募集」等の、乗車時間、降車時間、乗車位置、及び/又は降車位置を変更してほしいことを示すメッセージが含まれているとよい。
図18は、ステップS716におけるインセンティブ算出処理Aの一例を示すフローチャートである。インセンティブ算出処理Aは、ステップS701において乗車予約をしたユーザそれぞれに対して行われる。インセンティブ算出部113は、当該ユーザに対して予約が成立したかを判定する(S1801)。
インセンティブ算出部113は、当該ユーザに対して予約が成立しなかったと判定した場合(S1801:No)、当該ユーザに対してごめんねポイントを算出し(1802)付与する、即ちユーザ情報テーブル121の当該ユーザのごめんねポイント欄1217に格納する(S1805)、インセンティブ算出処理Aを終了する。なお、インセンティブ算出部113は、ごめんねポイント付与対象のユーザに対して一律に同じごめんねポイントを付与してもよいし、ユーザごとに異なるごめんねポイントを付与してもよい(例えば、ゆずりあいリクエストの優先順位の高いユーザほど高い又は低い等)。また、インセンティブ算出部113は、予約不成立の状況に応じて異なるポイントを付与してもよい(例えば、同一ユーザが2回以上連続して予約が成立しなかった場合はポイントをさらに加算する等)。
インセンティブ算出部113は、当該ユーザに対して予約が成立したと判定した場合(S1801:Yes)、当該ユーザに対して、当該ユーザの許容時間及び/又は許容距離に応じた(例えば、許容時間が長いほど、許容距離が大きいほど高いポイント)ゆずりあいポイントを算出する(S1803)。さらに、インセンティブ算出部113は、当該ユーザの許容時間と受諾したゆずりあいリクエストが示す時間との差、及び当該ユーザの許容距離と受諾したゆずりあいリクエストが示す距離との差に基づいて、ゆずりあいポイントを算出する(S1804)。
インセンティブ算出部113は、ゆずりあいポイントの付与対象のユーザに対してステップS1803及びステップS1804で算出したゆずりあいポイントを付与する即ちユーザ情報テーブル121の当該ユーザのゆずりあいポイント欄1216に格納する(S1805)して、インセンティブ算出処理Aを終了する。なお、インセンティブ算出部113は、ゆずりあいリクエストを受諾したユーザに対してのみゆずりあいポイントを算出して、付与することが望ましい。
図19は、ステップS1711におけるインセンティブ算出処理Bの一例を示すフローチャートである。インセンティブ算出部113は、当該ユーザの許容時間と受諾したゆずりあいリクエストが示す時間との差、及び当該ユーザの許容距離と受諾したゆずりあいリクエストが示す距離との差に基づいて、ゆずりあいポイントを算出し(S1901)、付与する即ちユーザ情報テーブル121の当該ユーザのゆずりあいポイント欄1216に格納する(S1905)して、インセンティブ算出処理Bを終了する。
なお、インセンティブ算出部113は、図18の処理においては予約が確定した全てのユーザに対してゆずりあいポイントを算出して付与する(但し許容時間及び許容距離が0であるユーザに対してはこのゆずりあいポイントは付与されない)が、図19の処理において、ゆずりあいリクエストを受諾したユーザに対してのみゆずりあいポイントを算出する。
なお、インセンティブ算出部113は、ステップS1804及びステップS1901において、許容時間と受諾したゆずりあいリクエストが示す時間との差が大きいほど、及び当該ユーザの許容距離と受諾したゆずりあいリクエストが示す距離との差が大きいほど、ゆずりあいポイントが高くなるよう算出するとよい。
図20は、運行スケジュール算出処理において確定した経路の一例を示す説明図である。図20には全ての停車(即ち乗車又は降車)ポイント、停車地点における乗車ユーザ及び降車ユーザ、停車時刻、及び停車ポイント間の経路が示されている。
図21及び図22は、利用者端末200に表示される予約入力画面の一例である。乗車予約開始画面2100は、乗車日、乗車時刻又は降車時刻、乗車位置、降車位置、及び乗車人数それぞれの入力領域を含む。乗車予約開始画面2100の「次へ」ボタンが選択されると、許容時間入力画面2110へと遷移する。
許容時間入力画面2110には、乗車予約開始画面2100で入力された、乗車時刻又は降車時刻と、乗車時刻又は降車時刻(図中では14時到着(降車))を中心として許容時間(斜線で塗りつぶされた部分)が示された時計の画像と、が表示されている。乗車予約開始画面2100から許容時間入力画面2110へと遷移したときのデフォルト状態では、許容時間は、所定値(例えば、乗車時刻又は降車時刻の前後それぞれ1時間(図中では13時から15時までが許容時間))として表示される。
また、当該時計の画像には、車両が走行しておらず予約が不可能な時間帯が、休止時間として表示されている。また、当該時計の画像の外周にはステップS602で算出された時間帯ごとの混雑予測が表示されている。
許容時間入力画面2120は、許容時間入力画面2110においてユーザが後側の許容時間を変更した状態である。許容時間入力画面2120では、許容時間が13時から15時までに変更されている。許容時間入力画面2110及び許容時間入力画面2120において、「戻る」ボタンが選択されると乗車予約開始画面2100へと遷移し、「次へ」ボタンが選択されると、許容距離入力画面2200へと遷移する。
許容距離入力画面2200には、乗車位置と降車位置の名称と、許容距離の範囲がドットで塗りつぶされた円を含む乗車位置と降車位置の地図と、が表示されている。許容時間入力画面2110から許容距離入力画面2200へと遷移したときのデフォルト状態では、許容距離は、所定値(例えば、乗車位置及び降車位置のそれぞれ50m以内)として表示されている。
許容距離入力画面2210は、許容距離入力画面2200においてユーザが許容距離を変更した状態である。許容距離入力画面2210では、乗車位置及び降車位置のそれぞれ50m以内に変更されている。許容距離入力画面2200及び許容距離入力画面2210において、「戻る」ボタンが選択されると許容時間入力画面2120へと遷移し、「次へ」ボタンが選択されると、リクエスト送信画面2220へと遷移する。リクエスト送信画面2220の「送信」ボタンが選択されると、運行管理装置100は利用者端末200からの予約を受け付ける。
図23は、利用者端末200に表示されるゆずりあいリクエスト受信画面の一例である。ゆずりあいリクエスト受信画面2300には、リクエスト送信画面2220で「送信」ボタンが選択されたことにより運行管理装置100に送信された、乗車日、乗車時刻又は降車時刻、乗車位置、降車位置、許容時間、及び許容距離が表示されている。
さらに、ゆずりあいリクエスト受信画面2300には、ゆずりあいリクエストが示す、変更後の乗車時刻又は降車時刻と、変更後の乗車位置及び/又は降車位置と、許容時間と変更後の乗車時刻又は降車時刻との時間差と、許容距離と変更後の乗車位置及び/又は降車位置との距離と、を示す情報が表示されている。
「受諾する」ボタンが選択されるとゆずりあいリクエストが受諾されたことを示す通知が運行管理装置100に送信される。「受諾しない」ボタンが選択されるとゆずりあいリクエストが受諾されなかったことを示す通知が運行管理装置100に送信される。
図24は、利用者端末200に表示されるインセンティブ付与画面の一例である。インセンティブ付与画面2400には、例えば、ユーザに付与されたごめんねポイント及びゆずりあいポイントが表示される。
なお、ごめんねポイントは乗車チケットや金券のような金銭的価値を有するポイントでないことが望ましい(例えば、次回の乗車予約時に優先的に時間や距離をゆずってもらえるポイント等であることが望ましい)。仮にごめんねポイントが金銭的価値を有していると、ユーザが意図的に予約が成立しづらい時間帯、乗車位置、及び降車位置等を指定して、ごめんねポイントを貯めることができ車両の運行主体の利益を毀損するおそれがあるためである。
また、ゆずりあいポイントは、ユーザが時間や距離をゆずって実際に車両に乗車する場合に付与されるポイントであるため、ごめんねポイントは乗車チケットや金券のような金銭的価値を有するポイントであってもよい。ごめんねポイントとゆずりあいポイントとが、いずれも金銭的価値を有するポイントである、又はいずれも金銭的価値を有しないポイントである場合には、一度に付与されるごめんねポイントの価値よりもゆずりあいポイントの価値の方が高いことが望ましい。
本実施例の運行管理システムは、ユーザの予約時に許容時間及び許容距離の入力を受け付けることで、予約を成立させやすくし、仮に許容時間及び許容距離の範囲内で予約を成立しない場合であっても、許容時間、許容距離、及び/又は過去のゆずりあい数に基づくゆずりあいリクエストを送信することで、さらに予約を成立させやすくすることができる。また、運行管理システムは、ゆずりあいリクエストに対する諾否、並びに許容時間及び許容距離に基づくインセンティブをユーザに付与することで、ユーザがゆずりあいリクエストを受諾しやすくなる上に、許容時間及び許容距離を大きくとる可能性が高くなるため、さらに予約を成立させることができる。このように、予約が成立しやすくなることにより、ひいては車両の乗り合い率が向上し、車両の運行主体の運営コストが低下する。