(57)【要約】  【課題】任意の地点における交通機関の通過時刻に関する情報を提供する。  【解決手段】時刻表生成装置は、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得部と、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、前記生成された時刻表を出力する時刻表出力部と、を有する。【選択図】図１
2014170351.tif 000002
【特許請求の範囲】
【請求項１】
路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得部と、
前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、
前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、
前記生成された時刻表を出力する時刻表出力部と、
を有することを特徴とする時刻表生成装置。
【請求項２】
請求項１に記載の時刻表生成装置であって、
前記取得部は、前記指定地点を通過する指定路線の情報を取得し、
前記時刻特定部は、前記指定地点の位置情報と、前記指定路線上を運行する交通機関が通過する通過地点であって前記指定地点の前及び後の通過地点の位置情報と、前記指定地点の前及び後の前記通過地点を通過する前記交通機関の通過時刻の情報とに基づいて、前記指定地点を通過する前記交通機関の通過時刻を特定する、
ことを特徴とする時刻表生成装置。
【請求項３】
請求項２に記載の時刻表生成装置であって、
前記時刻特定部は、前記指定地点を通過する上り及び下りの少なくとも一方の交通機関の通過時刻を特定する、
ことを特徴とする時刻表生成装置。
【請求項４】
請求項２又は３に記載の時刻表生成装置であって、
前記時刻特定部は、前記指定地点を通過する前記交通機関の最遅通過時刻、定刻通過時刻、及び最早通過時刻の少なくともいずれか一つを前記通過時刻として特定する、
ことを特徴とする時刻表生成装置。
【請求項５】
請求項３に記載の時刻表生成装置であって、
前記時刻特定部は、前記指定地点を通過する上り及び下りの交通機関の通過時刻を特定し、
前記時刻表出力部は、前記上りの通過時刻と前記下りの通過時刻とを異なる表示とした一つの時刻表を出力する、又は、前記上りの通過時刻と前記下りの通過時刻とを別の時刻表として出力する、
ことを特徴とする時刻表生成装置。
【請求項６】
請求項４に記載の時刻表生成装置であって、
前記時刻特定部は、前記指定地点を通過する前記交通機関の最遅通過時刻、定刻通過時刻、及び最早通過時刻を前記通過時刻として特定し、
前記時刻表出力部は、前記定刻通過時刻に前記最遅通過時刻、及び前記最早通過時刻を関連付けて表示した時刻表を出力する、
ことを特徴とする時刻表生成装置。
【請求項７】
請求項２〜６いずれか一項に記載の時刻表生成装置であって、
前記取得部は、前記指定路線を運行する交通機関のダイアグラムを含む第一の画面を出力し、前記第一の画面上で前記指定地点の指定を受け付ける、又は、路線の情報及び地図情報を含む第二の画面を出力し、前記第二の画面上で前記指定路線の指定及び前記指定地点の指定を受け付ける、
ことを特徴とする時刻表生成装置。
【請求項８】
時刻表生成装置における時刻表生成方法であって、
路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得ステップと、
前記指定地点を通過する交通機関の通過時刻を特定する時刻特定ステップと、
前記特定された通過時刻を含む時刻表を生成する時刻表生成ステップと、
前記生成された時刻表を出力する時刻表出力ステップと、
を含むことを特徴とする時刻表生成方法。
【請求項９】
コンピューターを時刻表生成装置として機能させるプログラムであって、
路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得部と、
前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、
前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、
前記生成された時刻表を出力する時刻表出力部、
としてコンピューターを機能させることを特徴とするプログラム。
【請求項１０】
ユーザー端末と時刻表生成装置とを有する時刻表生成システムであって、
前記ユーザー端末は、
路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報の入力を受け付ける入力部と、
前記入力された指定地点の位置情報を前記時刻表生成装置に送信する送信部と、
前記指定地点を通過する交通機関の通過時刻を含む時刻表を前記時刻表生成装置から受信する受信部と、
前記受信された時刻表を出力する出力部と、
を有し、
前記時刻表生成装置は、
前記ユーザー端末から前記指定地点の位置情報を取得する取得部と、
前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、
前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、
前記生成された時刻表を前記ユーザー端末に送信する時刻表出力部と、
を有する、
ことを特徴とする時刻表生成システム。
【請求項１１】
ユーザー端末と時刻表生成装置とを有する時刻表生成システムにおける時刻表生成方法であって、
前記ユーザー端末が、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報の入力を受け付ける入力ステップと、
前記ユーザー端末が、前記入力された指定地点の位置情報を前記時刻表生成装置に送信する送信ステップと、
前記時刻表生成装置が、前記ユーザー端末から前記指定地点の位置情報を取得する取得ステップと、
前記時刻表生成装置が、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定ステップと、
前記時刻表生成装置が、前記特定された通過時刻を含む時刻表を生成する時刻表生成ステップと、
前記時刻表生成装置が、前記生成された時刻表を前記ユーザー端末に送信する時刻表出力ステップと、
前記ユーザー端末が、前記指定地点を通過する交通機関の通過時刻を含む時刻表を前記時刻表生成装置から受信する受信ステップと、
前記ユーザー端末が、前記受信された時刻表を出力する出力ステップと、
を含むことを特徴とする時刻表生成方法。
【請求項１２】
時刻表生成装置と通信するユーザー端末であって、
路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報の入力を受け付ける入力部と、
前記入力された指定地点の位置情報を前記時刻表生成装置に送信する送信部と、
前記指定地点を通過する交通機関の通過時刻を含む時刻表を前記時刻表生成装置から受信する受信部と、
前記受信された時刻表を出力する出力部と、
を有することを特徴とするユーザー端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時刻表の生成に関する。
【背景技術】
【０００２】
特許文献１には、乗車駅から下車駅までの経路検索を行い、検索した経路の乗車駅、乗換駅、及び下車駅のそれぞれの通過時刻の所定時間前に案内を行う交通ナビゲーションシステムが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１７８９２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、例えば、鉄道の駅間の線路上やバスの停留所間の道路上の地点などの、駅や停留所などの予め定められた地点以外の地点について、電車やバスなどの交通機関の通過時刻を知りたい場合がある。例えば、線路や道路の工事を行おうとする場合に、予め工事が行われる地点での交通機関の運行状況などを知ることができれば、工事の作業や交通機関の運行に支障が出ないように工事計画を立てたりすることができる。
【０００５】
上記の特許文献１は、乗車駅、乗換駅、及び下車駅のそれぞれの通過時刻を求める技術である。しかし、特許文献１は、そもそも、任意の地点の電車の通過時刻を求めることを目的とするものではない。
【０００６】
そこで、本発明は、任意の地点における交通機関の通過時刻に関する情報を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下のとおりである。
【０００８】
上記の課題を解決する本発明の第一の態様は、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得部と、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、前記生成された時刻表を出力する時刻表出力部と、を有することを特徴とする時刻表生成装置である。
【０００９】
前記取得部は、前記指定地点を通過する指定路線の情報を取得し、前記時刻特定部は、前記指定地点の位置情報と、前記指定路線上を運行する交通機関が通過する通過地点であって前記指定地点の前及び後の通過地点の位置情報と、前記指定地点の前及び後の前記通過地点を通過する前記交通機関の通過時刻の情報とに基づいて、前記指定地点を通過する前記交通機関の通過時刻を特定する、ことを特徴としてもよい。
【００１０】
前記時刻特定部は、前記指定地点を通過する上り及び下りの少なくとも一方の交通機関の通過時刻を特定する、ことを特徴としてもよい。
【００１１】
前記時刻特定部は、前記指定地点を通過する前記交通機関の最遅通過時刻、定刻通過時刻、及び最早通過時刻の少なくともいずれか一つを前記通過時刻として特定する、ことを特徴としてもよい。
【００１２】
前記時刻特定部は、前記指定地点を通過する上り及び下りの交通機関の通過時刻を特定し、前記時刻表出力部は、前記上りの通過時刻と前記下りの通過時刻とを異なる表示とした一つの時刻表を出力する、又は、前記上りの通過時刻と前記下りの通過時刻とを別の時刻表として出力する、ことを特徴としてもよい。
【００１３】
前記時刻特定部は、前記指定地点を通過する前記交通機関の最遅通過時刻、定刻通過時刻、及び最早通過時刻を前記通過時刻として特定し、前記時刻表出力部は、前記定刻通過時刻に前記最遅通過時刻、及び前記最早通過時刻を関連付けて表示した時刻表を出力する、ことを特徴としてもよい。
【００１４】
前記取得部は、前記指定路線を運行する交通機関のダイアグラムを含む第一の画面を出力し、前記第一の画面上で前記指定地点の指定を受け付ける、又は、路線の情報及び地図情報を含む第二の画面を出力し、前記第二の画面上で前記指定路線の指定及び前記指定地点の指定を受け付ける、ことを特徴としてもよい。
【００１５】
上記の課題を解決する本発明の第二の態様は、時刻表生成装置における時刻表生成方法であって、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得ステップと、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定ステップと、前記特定された通過時刻を含む時刻表を生成する時刻表生成ステップと、前記生成された時刻表を出力する時刻表出力ステップと、を含むことを特徴とする。
【００１６】
上記の課題を解決する本発明の第三の態様は、コンピューターを時刻表生成装置として機能させるプログラムであって、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報を取得する取得部と、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、前記生成された時刻表を出力する時刻表出力部、としてコンピューターを機能させることを特徴とする。
【００１７】
上記の課題を解決する本発明の第四の態様は、ユーザー端末と時刻表生成装置とを有する時刻表生成システムであって、前記ユーザー端末は、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報の入力を受け付ける入力部と、前記入力された指定地点の位置情報を前記時刻表生成装置に送信する送信部と、前記指定地点を通過する交通機関の通過時刻を含む時刻表を前記時刻表生成装置から受信する受信部と、前記受信された時刻表を出力する出力部と、を有し、前記時刻表生成装置は、前記ユーザー端末から前記指定地点の位置情報を取得する取得部と、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定部と、前記特定された通過時刻を含む時刻表を生成する時刻表生成部と、前記生成された時刻表を前記ユーザー端末に送信する時刻表出力部と、を有する、ことを特徴とする。
【００１８】
上記の課題を解決する本発明の第五の態様は、ユーザー端末と時刻表生成装置とを有する時刻表生成システムにおける時刻表生成方法であって、前記ユーザー端末が、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報の入力を受け付ける入力ステップと、前記ユーザー端末が、前記入力された指定地点の位置情報を前記時刻表生成装置に送信する送信ステップと、前記時刻表生成装置が、前記ユーザー端末から前記指定地点の位置情報を取得する取得ステップと、前記時刻表生成装置が、前記指定地点を通過する交通機関の通過時刻を特定する時刻特定ステップと、前記時刻表生成装置が、前記特定された通過時刻を含む時刻表を生成する時刻表生成ステップと、前記時刻表生成装置が、前記生成された時刻表を前記ユーザー端末に送信する時刻表出力ステップと、前記ユーザー端末が、前記指定地点を通過する交通機関の通過時刻を含む時刻表を前記時刻表生成装置から受信する受信ステップと、前記ユーザー端末が、前記受信された時刻表を出力する出力ステップと、を含むことを特徴とする。
【００１９】
上記の課題を解決する本発明の第六の態様は、時刻表生成装置と通信するユーザー端末であって、路線上の任意の地点であって時刻表を生成すべき指定地点の位置情報の入力を受け付ける入力部と、前記入力された指定地点の位置情報を前記時刻表生成装置に送信する送信部と、前記指定地点を通過する交通機関の通過時刻を含む時刻表を前記時刻表生成装置から受信する受信部と、前記受信された時刻表を出力する出力部と、を有することを特徴とする。
【発明の効果】
【００２０】
本発明によれば、任意の地点における交通機関の通過時刻に関する情報を提供することができる。
【００２１】
上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施形態に係る時刻表生成システム５の概略構成の一例を示す図である。
【図２】通過位置情報１４０の構成の一例を示す図である。
【図３】バス情報１５０の構成の一例を示す図である。
【図４】通過時刻情報１６０の構成の一例を示す図である。
【図５】時刻表情報１７０の構成の一例を示す図である。
【図６】コンピューター５０の概略構成の一例を示す図である。
【図７】時刻表生成処理の一例を示すフロー図である。
【図８】出力位置をダイアグラムから取得する処理の一例を示すフロー図である。
【図９】ダイアグラム上で出力位置を指定するＵＩ画面１００Ａの一例を示す図である。
【図１０】出力位置を地図から取得する処理の一例を示すフロー図である。
【図１１】地図上で出力位置を指定するＵＩ画面１００Ｂの一例を示す図である。
【図１２】出力位置におけるバスの通過時刻を特定する処理の一例を示すフロー図である。
【図１３】出力位置の時刻表を生成する処理の一例を示すフロー図である。
【図１４】時刻表を出力するＵＩ画面１３０の一例を示す図である。
【発明を実施するための形態】
【００２３】
本発明の一実施形態について、図面を参照して説明する。
【００２４】
図１は、本発明の一実施形態に係る時刻表生成システム５の概略構成の一例を示す図である。本実施形態では、交通機関として路線バスを例に挙げて説明する。
【００２５】
時刻表生成システム５は、時刻表生成装置１と、ユーザー端末２とを有する。時刻表生成装置１とユーザー端末２とは、ネットワーク３を介して情報を互いに送受信することができる。
【００２６】
時刻表生成装置１は、ユーザー端末２にユーザーインターフェイス画面（以下、「ＵＩ画面」ともいう。）を送り、ユーザー端末２に表示させる。また、時刻表生成装置１は、ユーザー端末２から当該ＵＩ画面に入力された入力情報を受信し、当該入力情報に応じた処理を実行する。詳細は後述するが、時刻表生成装置１は、ユーザー端末２から、時刻表を生成すべき地点（以下、「出力位置」ともいう。）の指定を受け付け、受け付けた出力位置をバスが通過する時刻を示す時刻表を生成し、ユーザー端末２に送る。
【００２７】
ユーザー端末２は、時刻表生成装置１から受信したＵＩ画面などを、ディスプレイに表示する。また、ユーザー端末２は、ＵＩ画面に対するユーザーの入力をマウスなどの入力装置を介して受け付け、入力された入力情報を時刻表生成装置１に送信する。
【００２８】
上記の図１の時刻表生成システム５の構成は、本願発明の特徴を説明するにあたって主要構成を説明したのであって、上記の構成に限られない。また、一般的な時刻表生成システムが備える構成を排除するものではない。
【００２９】
時刻表生成装置１、及びユーザー端末２について詳細に説明する。
【００３０】
時刻表生成装置１は、出力位置取得部１０と、通過時刻特定部１１と、時刻表生成部１２と、時刻表出力部１３と、通過位置情報記憶部１４と、バス情報記憶部１５と、通過時刻情報記憶部１６と、時刻表情報記憶部１７とを有する。
【００３１】
出力位置取得部１０は、時刻表を生成すべき出力位置の指定を受け付けるＵＩ画面を、通信Ｉ／Ｆ５４（図６参照）及びネットワーク３を介してユーザー端末２に送信する。また、出力位置取得部１０は、ユーザー端末２に送信したＵＩ画面で指定された出力位置の情報を通信Ｉ／Ｆ５４及びネットワーク３を介してユーザー端末２から取得する。なお、出力位置取得部１０は、時刻表を生成すべき出力位置の指定を受け付けるＵＩ画面を自身の出力装置５６（図６参照）に表示させ、当該ＵＩ画面で指定される出力位置の情報を入力装置５５（図６参照）を介して取得するようにしてもよい。
【００３２】
通過時刻特定部１１は、出力位置取得部１０で取得された出力位置を通過するバスの通過時刻を、通過位置情報記憶部１４に格納されている通過位置情報１４０（図２参照）と、バス情報記憶部１５に格納されているバス情報１５０（図３参照）とに基づいて特定する。また、特定した通過時刻を、通過時刻情報１６０（図４参照）として通過時刻情報記憶部１６に格納する。
【００３３】
時刻表生成部１２は、通過時刻情報１６０に基づいて、取得された出力位置における時刻表情報を生成し、時刻表情報１７０（図５参照）として時刻表情報記憶部１７に格納する。
【００３４】
時刻表出力部１３は、時刻表情報１７０に基づいて、所定の出力形式の時刻表を含むＵＩ画面を生成し、通信Ｉ／Ｆ５４及びネットワーク３を介してユーザー端末２に送信する。
【００３５】
通過位置情報記憶部１４には、バス路線の通過位置などを特定する通過位置情報１４０が格納される。本実施形態では、通過位置情報１４０には、各バス路線の情報が予め設定されるものとする。図２は、通過位置情報１４０の構成の一例を示す図である。
【００３６】
通過位置情報１４０には、路線ごとに、当該路線の識別情報である路線ＩＤ１４０ａと、当該路線の始発停留所の識別情報である始発停留所ＩＤ１４０ｂと、当該路線の行先停留所の識別情報である行先停留所ＩＤ１４０ｃと、当該路線が通過する通過位置（停留所で停車する停車位置も含む）の数を示す通過位置数１４０ｄと、通過位置の詳細情報とが関連付けられた路線レコードが含まれる。通過位置の詳細情報には、通過する順に、通過位置ごとに、当該通過位置の緯度１４０ｅと、当該通過位置の経度１４０ｆと、当該通過位置が停留所であるか否かを示す停留所フラグ１４０ｇ（ここでは、「０：停留所でない」、「１：停留所である」、とする。）と、当該通過位置が停留所である場合の当該停留所の識別情報である停留所ＩＤ１４０ｈと、当該通過位置と当該通過位置の直前の通過位置との間の距離を示す通過位置間距離１４０ｉとが関連付けられた通過位置レコードが含まれる。
【００３７】
図１に戻って説明する。バス情報記憶部１５には、バスの通過位置（停車位置も含む）、通過時刻（停車時刻も含む）などを特定するバス情報１５０が格納される。本実施形態では、バス情報１５０には、各バスの情報が予め設定されるものとする。図３は、バス情報１５０の構成の一例を示す図である。
【００３８】
バス情報１５０には、バスごとに、当該バスの識別情報であるバスＩＤ１５０ａと、一営業日内で当該バスを識別する識別情報であるバス番号１５０ｂと、当該バスが路線ＩＤ１５０ｄが示す路線の上りであるか下りであるかを示す上下フラグ１５０ｃ（ここでは、「０：下り」、「１：上り」とする。）と、当該バスが走る路線の路線ＩＤ１５０ｄと、当該バスの回復運転（遅れを取り戻すための運転）の最高速度を示す速度１５０ｅと、当該バスの始発停留所の識別情報である始発停留所ＩＤ１５０ｆと、当該バスの行先停留所の識別情報である行先停留所ＩＤ１５０ｇと、当該バスが通過（停車も含む）する停留所の数を示す停留所数１５０ｈと、停留所の詳細情報とが関連付けられたバスレコードが含まれる。停留所の詳細情報には、通過する順に、停留所ごとに、当該停留所の識別情報である停留所ＩＤ１５０ｉと、当該停留所に当該バスが到着する時刻を示す着時刻１５０ｊと、当該停留所からバスが出発する時刻を示す発時刻１５０ｋと、当該停留所をバスが通過するか停車するかを示す停車フラグ１５０ｌ（ここでは、「０：通過」、「１：停車」とする。）とが関連付けられた停留所レコードが含まれる。なお、速度１５０ｅは、回復運転の最高速度に限られず、回復運転の平均速度などの他の速度であってもよい。
【００３９】
図１に戻って説明する。通過時刻情報記憶部１６には、指定された出力位置を通過するバスの通過時刻などを特定する通過時刻情報１６０が格納される。図４は、通過時刻情報１６０の構成の一例を示す図である。
【００４０】
通過時刻情報１６０には、出力位置ごとに、当該出力位置の座標情報など当該出力位置を特定する情報を含む出力位置１６０ａと、当該出力位置を通過する路線の識別情報である路線ＩＤ１６０ｂと、当該路線を走るバスが当該出力位置を通過する通過時刻の詳細情報とが関連付けられた出力位置レコードが含まれる。通過時刻の詳細情報には、バスごとに、当該バスが当該出力位置を最も早く通過する時刻を示す最早通過時刻１６０ｃと、当該バスが当該出力位置を定刻で通過する時刻を示す定刻通過時刻１６０ｄと、当該バスが当該出力位置を最も遅く通過する時刻を示す最遅通過時刻１６０ｅとが関連付けられた通過時刻レコードが含まれる。
【００４１】
図１に戻って説明する。時刻表情報記憶部１７には、出力位置を通過するバスの時刻表を定義する時刻表情報１７０が格納される。図５は、時刻表情報１７０の構成の一例を示す図である。
【００４２】
時刻表情報１７０には、出力位置ごとに、当該出力位置を特定する情報を含む出力位置１７０ａと、時刻表の詳細情報とが関連付けられた出力位置レコードが含まれる。時刻表の詳細情報には、定刻通過時刻の早い順に、通過時刻（時）１７０ｂと、最早通過時刻（分）１７０ｃと、定刻通過時刻（分）１７０ｄと、最遅通過時刻（分）１７０ｅとが関連付けられた通過時刻レコードが含まれる。
【００４３】
図１に戻って説明する。ユーザー端末２は、入力部２０と、出力部２１と、通信部２２とを有する。
【００４４】
入力部２０は、情報の入力を受け付ける。例えば、入力部２０は、出力部２１により出力されたＵＩ画面に対する情報の入力を受け付け、入力情報を通信部２２及びネットワーク３を介して時刻表生成装置１に送信する。
【００４５】
出力部２１は、情報を出力する。例えば、出力部２１は、通信部２２を介して時刻表生成装置１から受信したＵＩ画面を表示する。
【００４６】
通信部２２は、ネットワーク３を介した情報の送受信を行う。
【００４７】
上記の時刻表生成装置１は、例えば、図６（コンピューター５０の概略構成の一例を示す図）に示すような、ＣＰＵ（Central Processing Unit）５１と、メモリー５２と、ＨＤＤ等の外部記憶装置５３と、無線や有線により通信ネットワークに接続するための通信インターフェイス（Ｉ／Ｆ）５４と、マウスやキーボードなどの入力装置５５と、液晶ディスプレイなどの出力装置５６と、ＤＶＤ（Digital Versatile Disk）などの記録媒体に対する情報の読書きを行うメディアＩ／Ｆ５７と、を備えるコンピューター５０で実現することができる。
【００４８】
例えば、出力位置取得部１０、通過時刻特定部１１、時刻表生成部１２、及び時刻表出力部１３は、外部記憶装置５３に記憶されている所定のプログラムをメモリー５２にロードしてＣＰＵ５１で実行することで実現可能である。ネットワーク３との通信は、ＣＰＵ５１が通信Ｉ／Ｆ５４を利用することにより実現可能である。通過位置情報記憶部１４、バス情報記憶部１５、通過時刻情報記憶部１６、及び時刻表情報記憶部１７は、ＣＰＵ５１がメモリー５２又は外部記憶装置５３を利用することにより実現可能である。
【００４９】
上記の所定のプログラムは、通信Ｉ／Ｆ５４を介してネットワークから、外部記憶装置５３にダウンロードされ、それから、メモリー５２上にロードされてＣＰＵ５１により実行されるようにしてもよい。また、通信Ｉ／Ｆ５４を介してネットワークから、メモリー５２上に直接ロードされ、ＣＰＵ５１により実行されるようにしてもよい。また、コンピューター５０が、メディアＩ／Ｆ５７にセットされた記憶媒体から、上記の所定のプログラムを、外部記憶装置５３あるいはメモリー５２にロードするようにしてもよい。
【００５０】
ユーザー端末２も、例えば、図６に示すようなコンピューター５０で実現することができる。ユーザー端末２は、一般的なＰＣ（Personal Computer）などの装置に限られず、モバイルＰＣ、スマートフォン、タブレットＰＣ、携帯電話などの携帯可能な装置であってもよい。なお、入力部２０は、例えば、ＣＰＵ５１が入力装置５５を利用することで実現可能である。出力部２１は、例えば、ＣＰＵ５１が出力装置５６を利用することで実現可能である。通信部２２は、例えば、ＣＰＵ５１が通信Ｉ／Ｆ５４を利用することで実現可能である。
【００５１】
上記の図１の時刻表生成装置１及びユーザー端末２の機能構成は、理解容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。時刻表生成装置１及びユーザー端末２の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、１つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、１つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。また、各構成要素の処理は、１つのプログラムで実現されてもよいし、複数のプログラムで実現されてもよい。また、例えば、時刻表生成装置１にネットワークなどを介して接続される記憶装置上に各記憶部を構築してもよい。また、上記の図２〜図５の各情報のデータ構成は、一例であり、図示したデータ構成に限られない
【００５２】
次に、上記の時刻表生成装置１で実行される処理について説明する。
【００５３】
図７は、時刻表生成処理の一例を示すフロー図である。本フローは、例えば、時刻表生成装置１が、ユーザー端末２から時刻表生成処理の開始の指示を受け付けた場合に開始される。
【００５４】
まず、時刻表生成装置１は、ユーザー端末２から時刻表を生成すべき出力位置を取得する（ステップＳ１）。ステップＳ１の詳細は、図８〜図１１を参照して後述する。なお、ステップＳ１は、ダイアグラムを用いる処理（図８〜図９）、又は、地図を用いる処理（図１０〜図１１）により行われる。
【００５５】
それから、時刻表生成装置１は、ステップＳ１で取得した出力位置におけるバスの通過時刻を特定する（ステップＳ２）。ステップＳ２の詳細は、図１２を参照して後述する。
【００５６】
それから、時刻表生成装置１は、ステップＳ２で特定した、出力位置におけるバスの通過時刻に基づいて、当該出力位置の時刻表を生成する（ステップＳ３）。ステップＳ３の詳細は、図１３を参照して後述する。
【００５７】
それから、時刻表生成装置１は、ステップＳ３で生成した時刻表を、ユーザー端末２に出力する（ステップＳ４）。そして、本フローを終了する。ステップＳ４の詳細は、図１４を参照して後述する。
【００５８】
図８は、出力位置をダイアグラムから取得する処理の一例を示すフロー図である。
【００５９】
本フローが開始されると、出力位置取得部１０は、路線の指定を受け付ける（ステップＳＡ１１）。具体的には、出力位置取得部１０は、例えば、通過位置情報１４０に含まれる路線ＩＤ１４０ａの一覧をユーザー端末２に出力し、路線の指定をユーザー端末２から受け付ける。また、出力位置取得部１０は、ステップＳＡ１１で指定された路線の路線ＩＤを取得する（ステップＳＡ１２）。
【００６０】
それから、出力位置取得部１０は、出力位置の指定を受け付ける（ステップＳＡ１３）。具体的には、出力位置取得部１０は、例えば、ステップＳＡ１１〜ＳＡ１２で指定された路線のダイアグラムを含むＵＩ画面を、ユーザー端末２に出力し、当該ダイアグラム上で出力位置の指定を受け付ける。
【００６１】
路線のダイアグラムの生成は、既存の技術により実現できるため、詳細な説明は省略する。出力位置取得部１０は、例えば、通過位置情報１４０から、指定された路線ＩＤに対応する路線ＩＤ１４０ａを含む路線レコードを特定する。また、バス情報１５０から、指定された路線ＩＤに対応する路線ＩＤ１５０ｄを含むバスレコードを特定する。また、特定した路線レコードに含まれる停留所フラグ１４０ｇ、停留所ＩＤ１４０ｈ、通過位置間距離１４０ｉ等と、特定したバスレコードに含まれる停留所ＩＤ１５０ｉ、着時刻１５０ｊ、発時刻１５０ｋ等に基づいて、ダイアグラムを生成する。
【００６２】
出力位置取得部１０は、例えば、図９（ダイアグラム上で出力位置を指定するＵＩ画面１００Ａの一例を示す図）に示すようなＵＩ画面１００Ａをユーザー端末２に出力する。
【００６３】
ＵＩ画面１００Ａには、距離及び停留所の位置を縦軸（Ｙ軸）、時間を横軸（Ｘ軸）としたダイアグラムが表示される。縦軸に沿って、停留所ＩＤ１０１が配列される。また、ダイアグラムには、各停留所の位置を示す線１０２と、バスの位置を示すスジ（筋）１０３とが表示される。なお、本図では、スジ１０３は、一つ表示されているが、異なるバス（上り下りも区別する）ごとに複数表示されてもよい。ここで、ダイアグラム上には、ユーザーが動かすマウスポインタなどの指す位置に応じて、当該位置のＹ座標位置を示す線１０４が表示される。
【００６４】
出力位置取得部１０は、ＵＩ画面１００Ａでのマウスのクリックなどの操作を、ユーザー端末２から受け付けることにより、出力位置の指定を受け付ける。
【００６５】
なお、ダイアグラム上で出力位置の指定を受け付けることができれば、ＵＩ画面１００Ａの構成は、図９の例に限られない。
【００６６】
それから、出力位置取得部１０は、ＵＩ画面１００Ａで、マウスのクリックがされた位置のＹ座標（すなわち、線１０４のＹ座標）を取得することで、出力位置のＹ座標を取得する（ステップＳＡ１４）。
【００６７】
それから、出力位置取得部１０は、指定された出力位置の直前の停留所（以下、「発停留所」ともいう。）のＹ座標（すなわち、発停留所に対応する線１０２のＹ座標）と、指定された出力位置の直後の停留所（以下、「着停留所」ともいう。）のＹ座標（すなわち、着停留所に対応する線１０２のＹ座標）とを取得する（ステップＳＡ１５）。
【００６８】
ここで、路線の上りと下りでは発停留所と着停留所は逆になるため、出力位置取得部１０は、上りの場合の発停留所及び着停留所のＹ座標と、下りの場合の発停留所及び着停留所のＹ座標とを取得する。例えば、図９の例では、上りの場合、発停留所は停留所ＩＤ＝１３の停留所であり、着停留所は停留所ＩＤ＝１４の停留所である。下りの場合、発停留所は停留所ＩＤ＝１４の停留所であり、着停留所は停留所ＩＤ＝１３の停留所である。
【００６９】
それから、出力位置取得部１０は、発停留所と着停留所の間の距離を取得する（ステップＳＡ１６）。具体的には、出力位置取得部１０は、通過位置情報１４０から、指定された路線ＩＤに対応する路線ＩＤ１４０ａを含む路線レコードを特定する。また、当該特定した路線レコードに含まれる各通過位置レコードの停留所ＩＤ１４０ｈ、及び通過位置間距離１４０ｉに基づいて、発停留所と着停留所の間の距離を計算する。
【００７０】
例えば、出力位置取得部１０は、発停留所の停留所ＩＤを含む通過位置レコードと、着停留所の停留所ＩＤを含む通過位置レコードとの間に、他の通過位置レコードがない場合、着停留所の通過位置レコードの通過位置間距離１４０ｉを、発停留所と着停留所の間の距離として計算する。一方、発停留所の停留所ＩＤを含む通過位置レコードと、着停留所の停留所ＩＤを含む通過位置レコードとの間に、他の通過位置レコードがある場合、他の通過位置レコードの通過位置間距離１４０ｉと、着停留所の通過位置レコードの通過位置間距離１４０ｉとを合計した値を、発停留所と着停留所の間の距離として計算する。
【００７１】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発停留所と着停留所の間の距離を取得する。なお、本実施形態では、上りと下りのいずれでも発停留所と着停留所の間の距離は等しい。
【００７２】
それから、出力位置取得部１０は、発停留所と出力位置の間の距離を計算する（ステップＳＡ１７）。具体的には、出力位置取得部１０は、例えば、下記の数式（１）により、発停留所と出力位置の間の直線距離を計算する。もちろん、距離の計算方法は、数式（１）に限定されない。
【００７３】
【数１】
2014170351.tif 000003
【００７４】
なお、発停留所と着停留所の間の距離は、ステップＳＡ１６で特定されている。出力位置のＹ座標は、ステップＳＡ１４で特定されている。発停留所のＹ座標及び着停留所のＹ座標は、ステップＳＡ１５で特定されている。
【００７５】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発停留所と出力位置の間の距離を計算する。
【００７６】
それから、出力位置取得部１０は、本フローを終了する。
【００７７】
図１０は、出力位置を地図から取得する処理の一例を示すフロー図である。
【００７８】
本フローが開始されると、出力位置取得部１０は、路線上で出力位置の指定を受け付ける（ステップＳＢ１１）。具体的には、出力位置取得部１０は、例えば、地図と路線を含むＵＩ画面を、ユーザー端末２に出力し、当該地図上で路線と出力位置の指定を受け付ける。
【００７９】
地図と路線を含む画面の表示は、既存の技術により実現できるため、詳細な説明は省略する。出力位置取得部１０は、例えば、ユーザー端末２から指定された地点を含む所定範囲の地図情報を、ネットワーク３に接続された地図情報提供サーバー（不図示）から取得する。また、通過位置情報１４０の路線レコードに含まれる各通過位置レコードの通過位置緯度１４０ｅ、通過位置経度１４０ｆなどに基づいて、取得した地図情報の範囲に含まれる路線を特定する。また、特定した路線について、各通過位置を頂点として線で連結した路線情報を生成し、取得した地図情報に重ねることで表示画面を生成する。
【００８０】
出力位置取得部１０は、例えば、図１１（地図上で出力位置を指定するＵＩ画面１００Ｂの一例を示す図）に示すようなＵＩ画面１００Ｂをユーザー端末２に出力する。
【００８１】
ＵＩ画面１００Ｂには、地図１０５と、路線１０６とが表示される。なお、本図では、路線１０６は、一つ表示されているが、複数表示されてもよい。また、通過位置や停留所を示す図形などが表示されてもよい。
【００８２】
出力位置取得部１０は、ＵＩ画面１００Ｂで、路線１０６上でマウスのクリックなどの操作を受け付けることにより、路線及び出力位置の指定を受け付ける。
【００８３】
なお、地図上で路線及び出力位置の指定を受け付けることができれば、ＵＩ画面１００Ｂの構成は、図１１の例に限られない。
【００８４】
それから、出力位置取得部１０は、ＵＩ画面１００Ｂで、マウスのクリックがされた位置の緯度及び経度を取得することで、出力位置の緯度及び経度を取得するとともに、マウスのクリックがされた路線の路線ＩＤを取得する（ステップＳＢ１２）。
【００８５】
それから、出力位置取得部１０は、指定された出力位置の直前の通過位置（以下、「発通過位置」ともいう。発通過位置が停留所である場合もある。）の緯度及び経度を取得する（ステップＳＢ１３）。具体的には、出力位置取得部１０は、例えば、マウスのクリック位置（出力位置）が含まれる線の両端の頂点（通過位置）を特定する。また、指定された路線ＩＤに対応する路線ＩＤ１４０ａを含む路線レコードに含まれる各通過位置レコードの通過位置緯度１４０ｅ及び通過位置経度１４０ｆに基づいて、特定した二つの頂点（通過位置）のうち始発停留所に近い側の頂点を発通過位置として特定するとともに当該発通過位置の緯度及び経度を特定する。
【００８６】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発通過位置を特定するとともに当該発通過位置の緯度及び経度を特定する。なお、下りの場合、行先停留所に近い側の頂点を発通過位置として特定する。
【００８７】
それから、出力位置取得部１０は、発通過位置と出力位置の間の距離を計算する（ステップＳＢ１４）。具体的には、出力位置取得部１０は、例えば、下記の数式（２）、又は数式（３）により、発通過位置と出力位置の間の直線距離を計算する。もちろん、距離の計算方法は、数式（２）、数式（３）に限定されない。
【００８８】
【数２】
2014170351.tif 000004
【００８９】
なお、出力位置の緯度及び経度は、ステップＳＢ１２で特定されている。発通過位置の緯度及び経度は、ステップＳＢ１３で特定されている。地球の半径は、予め設定しておけばよい。
【００９０】
【数３】
2014170351.tif 000005
【００９１】
なお、出力位置の緯度及び経度は、ステップＳＢ１２で特定されている。発通過位置の緯度及び経度は、ステップＳＢ１３で特定されている。経度１度の距離定数は、例えば、経度１度ごとに予め設定しておく。また、緯度１度の距離定数は、例えば、予め一つ設定しておく。
【００９２】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発通過位置と出力位置の間の距離を計算する。
【００９３】
それから、出力位置取得部１０は、発停留所及び着停留所を取得する（ステップＳＢ１５）。具体的には、出力位置取得部１０は、特定された発通過位置と、指定された路線ＩＤに対応する路線ＩＤ１４０ａを含む路線レコードに含まれる各通過位置レコードの通過位置緯度１４０ｅ、通過位置経度１４０ｆ、及び停留所フラグ１４０ｇに基づいて、出力位置の発停留所及び着停留所を特定する。
【００９４】
例えば、発通過位置の停留所フラグ１４０ｇが「０：停留所でない」である場合、当該発通過位置よりも始発停留所側の、当該発通過位置に最も近い、停留所フラグ１４０ｇが「１：停留所である」の通過位置を、発停留所として特定する。発通過位置の停留所フラグ１４０ｇが「１：停留所である」である場合、当該発通過位置を発停留所として特定する。また、発通過位置よりも行先停留所側の、当該発通過位置に最も近い、停留所フラグ１４０ｇが「１：停留所である」の通過位置を、着停留所として特定する。また、特定した発停留所及び着停留所の停留所ＩＤ１４０ｈを取得する。
【００９５】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発停留所及び着停留所を取得する。
【００９６】
それから、出力位置取得部１０は、発停留所と着停留所の間の距離を取得する（ステップＳＢ１６）。具体的には、出力位置取得部１０は、通過位置情報１４０から、指定された路線ＩＤに対応する路線ＩＤ１４０ａを含む路線レコードを特定する。また、当該特定した路線レコードに含まれる各通過位置レコードの停留所ＩＤ１４０ｈ、及び通過位置間距離１４０ｉに基づいて、発停留所と着停留所の間の距離を計算する。処理内容は、ステップＳＡ１６と同様なので説明を省略する。
【００９７】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発停留所と着停留所の間の距離を取得する。なお、本実施形態では、上りと下りのいずれでも発停留所と着停留所の間の距離は等しい。
【００９８】
それから、出力位置取得部１０は、発停留所と出力位置の間の距離を計算する（ステップＳＢ１７）。具体的には、出力位置取得部１０は、指定された路線ＩＤに対応する路線ＩＤ１４０ａを含む路線レコードに含まれる各通過位置レコードの通過位置間距離１４０ｉに基づいて、発停留所と発通過位置の間の距離を計算する。また、出力位置取得部１０は、計算した発停留所と発通過位置の間の距離に、ステップＳＢ１４で計算した発通過位置と出力位置の間の距離を加算することで、発停留所と出力位置の間の距離を計算する。そして、本フローを終了する。
【００９９】
ここで、出力位置取得部１０は、路線の上りと下りの両方の場合について、発停留所と出力位置の間の距離を計算する。
【０１００】
図１２は、出力位置におけるバスの通過時刻を特定する処理の一例を示すフロー図である。
【０１０１】
本フローが開始されると、通過時刻特定部１１は、指定された路線を運行するバスのバス情報（スジ）を取得する（ステップＳ２１）。具体的には、通過時刻特定部１１は、ステップＳＡ１２（図８参照）、又はステップＳＢ１２（図１０参照）で取得された路線ＩＤを取得する。また、通過時刻特定部１１は、取得した路線ＩＤに対応する路線ＩＤ１５０ｄを含むバスレコードを、バス情報１５０から取得する。なお、取得したバスレコードの数を、取得スジ数として設定する。
【０１０２】
ここで、通過時刻特定部１１は、図８又は図１０のフローで指定された出力位置を特定する情報（座標情報など）、及び指定された路線ＩＤを、出力位置１６０ａ及び路線ＩＤ１６０ｂとして含む出力位置レコードを、通過時刻情報１６０に追加する。なお、通過時刻の詳細情報の通過時刻レコード（最早通過時刻１６０ｃ、定刻通過時刻１６０ｄ、最遅通過時刻１６０ｅ）は、選択されたスジごとに、下記のステップＳ２５〜Ｓ２７において設定される。
【０１０３】
それから、通過時刻特定部１１は、指定された出力位置を通過する通過時刻の計算が終了したスジ数である処理済スジ数を０に設定する（ステップＳ２２）。
【０１０４】
それから、通過時刻特定部１１は、処理済スジ数が取得スジ数よりも小さいか否かを判定する（ステップＳ２３）。
【０１０５】
処理済スジ数が取得スジ数よりも小さい場合（ステップＳ２３：Ｙ）、通過時刻特定部１１は、ステップＳ２１で取得した各バスレコードの中から、未処理のスジのバスレコードを一つ選択する（ステップＳ２４）。
【０１０６】
それから、通過時刻特定部１１は、指定された出力位置での最早通過時刻を計算する（ステップＳ２５）。具体的には、通過時刻特定部１１は、例えば、下記の数式（４）により、指定された出力位置での最早通過時刻を計算する。また、計算した最早通過時刻を、選択したスジの通過時刻レコードの最早通過時刻１６０ｃとして設定する。もちろん、最早通過時刻の計算方法は、数式（４）に限定されない。
【０１０７】
【数４】
2014170351.tif 000006
【０１０８】
なお、発停留所の停留所ＩＤは、ステップＳＡ１５（図８参照）、又はステップＳＢ１５（図１０参照）で特定されている。発停留所の発時刻は、発停留所の停留所ＩＤと、ステップＳ２４で選択したスジのバスレコードに含まれる各停留所レコードの停留所ＩＤ１５０ｉ、及び発時刻１５０ｋとに基づいて取得すればよい。発停留所と出力位置の間の距離は、ステップＳＡ１７（図８参照）、又はステップＳＢ１７（図１０参照）で計算されている。回復運転最高速度は、ステップＳ２４で選択したスジのバスレコードの速度１５０ｅを取得すればよい。
【０１０９】
ここで、通過時刻特定部１１は、選択したスジのバスレコードの上下フラグ１５０ｃが「１：上り」の場合、上りの場合の発停留所の発時刻、及び発停留所と出力位置の間の距離を用いて、最早通過時刻を計算する。「０：下り」の場合、下りの場合の発停留所の発時刻、及び発停留所と出力位置の間の距離を用いて、最早通過時刻を計算する。
【０１１０】
それから、通過時刻特定部１１は、指定された出力位置での定刻通過時刻を計算する（ステップＳ２６）。具体的には、通過時刻特定部１１は、例えば、下記の数式（５）により、指定された出力位置での定刻通過時刻を計算する。また、計算した定刻通過時刻を、選択したスジの通過時刻レコードの定刻通過時刻１６０ｄとして設定する。もちろん、定刻通過時刻の計算方法は、数式（５）に限定されない。
【０１１１】
【数５】
2014170351.tif 000007
【０１１２】
なお、発停留所の停留所ＩＤ、発停留所の発時刻、及び発停留所と出力位置の間の距離は、上述のとおり取得できる。着停留所の停留所ＩＤは、ステップＳＡ１５（図８参照）、又はステップＳＢ１５（図１０参照）で特定されている。着停留所の着時刻は、着停留所の停留所ＩＤと、ステップＳ２４で選択したスジのバスレコードに含まれる各停留所レコードの停留所ＩＤ１５０ｉ、及び着時刻１５０ｊとに基づいて取得すればよい。発停留所と着停留所の間の距離は、ステップＳＡ１６（図８参照）、又はステップＳＢ１６（図１０参照）で計算されている。
【０１１３】
ここで、通過時刻特定部１１は、選択したスジのバスレコードの上下フラグ１５０ｃが「１：上り」の場合、上りの場合の発停留所の発時刻、着停留所の着時刻、発停留所と出力位置の間の距離、及び発停留所と着停留所の間の距離を用いて、定刻通過時刻を計算する。「０：下り」の場合、下りの場合の発停留所の発時刻、着停留所の着時刻、発停留所と出力位置の間の距離、及び発停留所と着停留所の間の距離を用いて、定刻通過時刻を計算する。
【０１１４】
それから、通過時刻特定部１１は、指定された出力位置での最遅通過時刻を計算する（ステップＳ２７）。具体的には、通過時刻特定部１１は、例えば、下記の数式（６）により、指定された出力位置での最遅通過時刻を計算する。また、計算した最遅通過時刻を、選択したスジの通過時刻レコードの最遅通過時刻１６０ｅとして設定する。もちろん、最遅通過時刻の計算方法は、数式（６）に限定されない。
【０１１５】
【数６】
2014170351.tif 000008
【０１１６】
なお、着停留所の停留所ＩＤ、着停留所の着時刻、発停留所と着停留所の間の距離、発停留所と出力位置の間の距離、及び回復運転最高速度は、上述のとおり取得できる。
【０１１７】
ここで、通過時刻特定部１１は、選択したスジのバスレコードの上下フラグ１５０ｃが「１：上り」の場合、上りの場合の着停留所の着時刻、発停留所と着停留所の間の距離、及び発停留所と出力位置の間の距離を用いて、最遅通過時刻を計算する。「０：下り」の場合、下りの場合の着停留所の着時刻、発停留所と着停留所の間の距離、及び発停留所と出力位置の間の距離を用いて、最遅通過時刻を計算する。
【０１１８】
それから、通過時刻特定部１１は、処理済スジ数に１を加算し（ステップＳ２８）、処理をステップＳ２３に戻す。
【０１１９】
一方、処理済スジ数が取得スジ数以上である場合（ステップＳ２３：Ｎ）、通過時刻特定部１１は、本フローを終了する。
【０１２０】
図１３は、出力位置の時刻表を生成する処理の一例を示すフロー図である。
【０１２１】
本フローが開始されると、時刻表生成部１２は、通過時刻情報のレコードを通過時刻でソートする（ステップＳ３１）。具体的には、時刻表生成部１２は、図１３のフローで生成された通過時刻情報１６０の出力位置レコードに含まれる各通過時刻レコード（最早通過時刻１６０ｃ、定刻通過時刻１６０ｄ、最遅通過時刻１６０ｅ）を、定刻通過時刻が早い順に並べ替える。なお、各通過時刻レコードの数を、取得スジ数として設定する。
【０１２２】
それから、時刻表生成部１２は、出力対象時を所定値に設定するとともに、指定された出力位置を通過する通過時刻の出力が終了したスジ数である処理済スジ数を０に設定する（ステップＳ３２）。なお、出力対象時とは、時刻の「時」であり、所定値は、時刻表に出力される最初の「時」である。所定値は、予め設定されていてもよいし、ユーザー端末２から受け付けるようにしてもよい。
【０１２３】
ここで、時刻表生成部１２は、図８又は図１０のフローで指定された出力位置を特定する情報（座標情報など）を、出力位置１７０ａとして含む出力位置レコードを、時刻表情報１７０に追加する。また、時刻表生成部１２は、出力対象時を通過時刻（時）１７０ｂとして、出力位置１７０ａに関連付けて設定する。なお、時刻表の詳細情報の通過時刻レコード（最早通過時刻（分）１７０ｃ、定刻通過時刻（分）１７０ｄ、最遅通過時刻（分）１７０ｅ）は、選択されたスジごとに、下記のステップＳ３８において設定される。
【０１２４】
それから、時刻表生成部１２は、処理済スジ数が取得スジ数よりも小さいか否かを判定する（ステップＳ３３）。
【０１２５】
処理済スジ数が取得スジ数よりも小さい場合（ステップＳ３３：Ｙ）、時刻表生成部１２は、図１２のフローで生成された通過時刻情報１６０の出力位置レコードに含まれる各通過時刻レコードの中から、未処理のスジの通過時刻レコードを一つ選択する（ステップＳ３４）。
【０１２６】
それから、時刻表生成部１２は、ステップＳ３４で選択したスジの通過時刻レコードの定刻通過時刻１６０ｄの「時」が、出力対象時と同じであるか否かを判定する（ステップＳ３５）。同じである場合（ステップＳ３５：Ｙ）、時刻表生成部１２は、処理をステップＳ３８に進める。同じでない場合（ステップＳ３５：Ｎ）、時刻表生成部１２は、処理をステップＳ３６に進める。
【０１２７】
時刻表生成部１２は、出力対象時に１を加算する（ステップＳ３６）。
【０１２８】
ここで、時刻表生成部１２は、出力対象時を通過時刻（時）１７０ｂとして、ステップＳ３２で追加した出力位置レコードの出力位置１７０ａに関連付けて設定する。
【０１２９】
それから、時刻表生成部１２は、ステップＳ３４で選択したスジの通過時刻レコードの定刻通過時刻１６０ｄの「時」が、出力対象時と同じであるか否かを判定する（ステップＳ３７）。同じである場合（ステップＳ３７：Ｙ）、時刻表生成部１２は、処理をステップＳ３８に進める。同じでない場合（ステップＳ３７：Ｎ）、時刻表生成部１２は、処理をステップＳ３６に戻す。
【０１３０】
それから、時刻表生成部１２は、ステップＳ３４で選択したスジの通過時刻を出力する（ステップＳ３８）。具体的には、時刻表生成部１２は、ステップＳ３２又はステップＳ３６で設定した通過時刻（時）１７０ｂに関連付けて、ステップＳ３４で選択したスジの通過時刻レコードの最早通過時刻１６０ｃの分、定刻通過時刻１６０ｄの分、及び最遅通過時刻１６０ｅの分を、最早通過時刻（分）１７０ｃ、定刻通過時刻（分）１７０ｄ、及び最遅通過時刻（分）１７０ｅとして追加する。
【０１３１】
それから、時刻表生成部１２は、処理済スジ数に１を加算し（ステップＳ３９）、処理をステップＳ３３に戻す。
【０１３２】
一方、処理済スジ数が取得スジ数以上である場合（ステップＳ３３：Ｎ）、時刻表生成部１２は、本フローを終了する。
【０１３３】
図１４は、時刻表を出力するＵＩ画面１３０の一例を示す図である。
【０１３４】
指定された出力位置の時刻表情報１７０が生成されると（図１３参照）、時刻表出力部１３は、当該出力位置の時刻表情報１７０に基づいて、時刻表を生成し、当該時刻表を含むＵＩ画面１３０を、ユーザー端末２に出力する。
【０１３５】
ＵＩ画面１３０には、通過時刻の時を縦軸に、通過時刻の分を横軸とした時刻表が表示される。通過時刻の分は、スジごとに、最早通過時刻（分）、定刻通過時刻（分）、最遅通過時刻（分）が関連付けられて（図では、［最早−定刻−最遅］）表示される。なお、時刻表の時は、時刻表情報１７０の通過時刻（時）１７０ｂに対応し、時刻表の分は、時刻表情報１７０の各スジの最早通過時刻（分）１７０ｃ、定刻通過時刻（分）１７０ｄ、及び最遅通過時刻（分）１７０ｅに対応する。
【０１３６】
なお、出力位置をバスが通過する時刻を示すことができれば、ＵＩ画面１３０の構成は、図１４の例に限られない。
【０１３７】
上記の図７、８、１０、１２、１３のフローの処理単位は、時刻表生成装置１の処理を理解容易にするために、主な処理内容に応じて分割したものである。処理単位の分割の仕方や名称によって、本願発明が制限されることはない。時刻表生成装置１の処理は、処理内容に応じて、さらに多くの処理単位に分割することもできる。また、１つの処理単位がさらに多くの処理を含むように分割することもできる。また、上記のフローの処理順序も、図示した例に限られるものではない。
【０１３８】
以上、本発明の一実施形態について説明した。本実施形態によれば、任意の地点における交通機関の通過時刻に関する情報を提供することができる。
【０１３９】
すなわち、本実施形態では、ユーザーが指定した出力位置を交通機関が通過する時刻を示す時刻表を生成し、ユーザーに提示する。これにより、任意の地点における交通機関の通過時刻に関する情報を提供することができる。また、本実施形態では、指定された出力位置を通過する路線の上りと下りの両方の通過時刻を含む時刻表が提示される。これにより、ユーザーは上りと下りの両方の通過時刻を知ることができる。また、本実施形態では、通過時刻として、定刻通過時刻だけでなく、最早通過時刻及び最遅通過時刻が提示される。これにより、ユーザーは定刻通過時刻だけでなく最早通過時刻及び最遅通過時刻も知ることができる。
【０１４０】
また、例えば、指定の地点について生成された時刻表を、当該地点や当該地点の近くで工事を実施する業者に提供することで、当該業者は、工資材や重機を運搬する車両の移動や駐車と、交通機関の通過時間とが重ならないように、工事の計画を行うことができる。また、例えば、時刻表を、交通機関の事業者に提供するようにしてもよい。
【０１４１】
なお、以上の本発明の一実施形態は、本発明の要旨と範囲を例示することを意図し、限定するものではない。多くの代替物、修正、変形例は当業者にとって明らかである。
【０１４２】
例えば、上記の実施形態では、上りと下りの両方について通過時刻を特定しているが、時刻表生成装置１は、ユーザー端末２から、指定された路線について上りと下りの一方の指定を受け付け、上りと下りの一方の通過時刻を特定するようにしてもよい。
【０１４３】
例えば、上記の実施形態では、上りと下りの両方の通過時刻を含む時刻表を生成して出力しているが、上りの通過時刻と下りの通過時刻の区別がつくように異なる表示（例えば、色を変えたり、目印を付けたりする）を行ってもよい。また、上りの時刻表と下りの時刻表とを別の時刻表に分けて出力するようにしてもよい。
【０１４４】
例えば、上記の実施形態では、最早通過時刻、定刻通過時刻、及び最遅通過時刻の三つを特定しているが、三つの通過時刻のうちのいずれか一つ、又はいずれか二つを特定するようにしてもよい。どの通過時刻を特定するかを、ユーザー端末２から指定できるようにしてもよい。
【０１４５】
例えば、上述の実施形態では、地図上で一つの路線が指定されているが、複数の路線の一部が重なっている場合に、当該重なっている部分に出力位置が指定されたときは、各路線について出力位置を通過するバスの時刻を特定するようにしてもよい。この場合、時刻表は、一つとしてもよいし、路線ごとに分けてもよい。
【０１４６】
例えば、ユーザー端末２は、生成された時刻表情報を時刻表生成装置１から取得して保存し、現在時刻が、時刻表の各スジの最早通過時刻から最遅通過時刻の時間帯に入った場合に、アラームなどを出力するようにしてもよい。
【０１４７】
なお、本発明は、バスだけでなく、電車その他の交通機関にも適用できる。
【符号の説明】
【０１４８】
１：時刻表生成装置、２：ユーザー端末、３：ネットワーク、５：時刻表生成システム、１０：出力位置取得部、１１：通過時刻特定部、１２：時刻表生成部、１３：時刻表出力部、１４：通過位置情報記憶部、１５：バス情報記憶部、１６：通過時刻情報記憶部、１７：時刻表情報記憶部、２０：入力部、２１：出力部、２２：通信部、
５０：コンピューター、５１：ＣＰＵ、５２：メモリー、５３：外部記憶装置、５４：通信Ｉ／Ｆ、５５：入力装置、５６：出力装置、５７：メディアＩ／Ｆ、
１００Ａ：ＵＩ画面、１０１：停留所ＩＤ、１０２：線、１０３：スジ、１０４：線、
１００Ｂ：ＵＩ画面、１０５：地図、１０６：路線、１３０：ＵＩ画面、
１４０：通過位置情報、１４０ａ：路線ＩＤ、１４０ｂ：始発停留所ＩＤ、１４０ｃ：行先停留所ＩＤ、１４０ｄ：通過位置数、１４０ｅ：通過位置緯度、１４０ｆ：通過位置経度、１４０ｇ：停留所フラグ、１４０ｈ：停留所ＩＤ、１４０ｉ：通過位置間距離、
１５０：バス情報、１５０ａ：バスＩＤ、１５０ｂ：バス番号、１５０ｃ：上下フラグ、１５０ｄ：路線ＩＤ、１５０ｅ：速度、１５０ｆ：始発停留所ＩＤ、１５０ｇ：行先停留所ＩＤ、１５０ｈ：停留所数、１５０ｉ：停留所ＩＤ、１５０ｊ：着時刻、１５０ｋ：発時刻、１５０ｌ：停車フラグ、
１６０：通過時刻情報、１６０ａ：出力位置、１６０ｂ：路線ＩＤ、１６０ｃ：最早通過時刻、１６０ｄ：定刻通過時刻、１６０ｅ：最遅通過時刻、
１７０：時刻表情報、１７０ａ：出力位置、１７０ｂ：通過時刻（時）、１７０ｃ：最早通過時刻（分）、１７０ｄ：定刻通過時刻（分）、１７０ｅ：最遅通過時刻（分）
【図１】
2014170351.tif 000009
【図２】
2014170351.tif 000010
【図３】
2014170351.tif 000011
【図４】
2014170351.tif 000012
【図５】
2014170351.tif 000013
【図６】
2014170351.tif 000014
【図７】
2014170351.tif 000015
【図８】
2014170351.tif 000016
【図９】
2014170351.tif 000017
【図１０】
2014170351.tif 000018
【図１１】
2014170351.tif 000019
【図１２】
2014170351.tif 000020
【図１３】
2014170351.tif 000021
【図１４】
2014170351.tif 000022