(57)【特許請求の範囲】
【請求項１】
指定された出発地から目的地までの交通機関を利用したルートの検索を行い、前記出発地から前記目的地までの利用路線の識別情報を含む検索ルートのデータを出力する検索エンジンと、
前記交通機関の路線別の乗降ポイントに関するデータを記憶した乗降ポイントデータベースと、
予め定められた優先区間の２つの端点の識別情報及び前記優先区間の利用路線の識別情報を含む優先区間データを記憶する記憶部と、
前記乗降ポイントデータベースを参照し、前記検索エンジンが出力した検索ルートデータ及び前記記憶部に記憶された前記優先区間データに基づいて、前記検索ルートの利用路線と前記優先区間の利用路線との乗り換えが可能な一以上のクロスポイントを抽出する抽出手段と、
前記記憶部に記憶された前記優先区間データにより特定される優先区間の一部または全部を含み、前記抽出手段により抽出された一以上のクロスポイントのうちの少なくとも一つを通る、前記出発地から前記目的地までの交通機関を利用した優先区間利用ルートを生成する生成手段と、
前記生成手段により生成された優先区間利用ルートを出力する手段と、を備え、
前記抽出手段は、前記乗降ポイントデータベースから、前記検索ルートの利用路線の全ての乗降ポイント、及び前記優先区間の利用路線の全ての乗降ポイントを抽出し、前記検索ルートの利用路線の乗降ポイントのいずれかと前記優先区間の利用路線の乗降ポイントのいずれかが同一であれば、その同一乗降ポイントを前記クロスポイントとして抽出し、
前記優先区間利用ルート生成手段は、前記抽出手段により抽出されたクロスポイントが複数あるときは、前記出発地及び前記目的地の経度及び緯度と、前記クロスポイントの経度及び緯度とを特定し、前記出発地及び前記目的地からそれぞれ最も近い第１及び第２のクロスポイントを選択し、前記選択された第１のクロスポイントと第２のクロスポイント間の優先区間内を通る前記優先区間利用ルートを生成する
優先区間を利用したルート検索装置。
【請求項２】
前記出力手段は、前記出発地から第１のクロスポイントまでの運賃と第２のクロスポイントから前記目的地までの運賃との合計が、前記検索ルートで前記出発地から前記目的地まで移動する際の運賃よりも安いときに、前記優先区間利用ルートを出力することを特徴とする請求項１記載の優先区間を利用したルート検索装置。
【請求項３】
前記優先区間利用ルート生成手段は、
前記出発地または前記目的地の少なくともいずれか一方が、前記優先区間の利用路線とは異なる路線にあるときは、その異なる路線にある前記出発地または前記目的地から最も近いクロスポイントと、前記優先区間の一部または全部を通る優先区間利用ルートを生成することを特徴とする請求項１記載の優先区間を利用したルート検索装置。
【請求項４】
前記交通機関は鉄道であり、
前記乗降ポイントは前記鉄道の駅であり、
前記優先区間は定期券利用区間であることを特徴とする請求項１〜３のいずれかに記載の優先区間を利用したルート検索装置。
【請求項５】
指定された出発地から目的地までの交通機関を利用したルートの検索を行い、前記出発地から前記目的地までの利用路線の識別情報を含む検索ルートのデータを出力する検索エンジンと、前記交通機関の路線別の乗降ポイントに関するデータを記憶した乗降ポイントデータベースとを備えたルート検索装置において、
予め定められた優先区間の２つの端点の識別情報及び前記優先区間の利用路線の識別情報を含む優先区間データを記憶部に記憶し、
前記乗降ポイントデータベースから、前記検索エンジンが出力した検索ルートの利用路線の全ての乗降ポイント、及び前記記憶部に記憶された前記優先区間の利用路線の全ての乗降ポイントを抽出し、前記検索ルートの利用路線の乗降ポイントのいずれかと前記優先区間の利用路線の乗降ポイントのいずれかが同一であれば、その同一乗降ポイントを、前記検索ルートの利用路線と前記優先区間の利用路線との乗り換えが可能な一以上のクロスポイントとして抽出し、
前記記憶部に記憶された前記優先区間データにより特定される優先区間の一部または全部を含み、前記抽出された一以上のクロスポイントのうちの少なくとも一つを通る、前記出発地から前記目的地までの交通機関を利用した優先区間利用ルートを生成し、
前記抽出されたクロスポイントが複数あるときは、前記出発地及び前記目的地の経度及び緯度と、前記クロスポイントの経度及び緯度とを特定し、前記出発地及び前記目的地からそれぞれ最も近い第１及び第２のクロスポイントを選択し、前記選択された第１のクロスポイントと第２のクロスポイント間の優先区間内を通る前記優先区間利用ルートを生成し、
前記生成された優先区間利用ルートを出力する、優先区間利用ルートの検索方法。
【請求項６】
指定された出発地から目的地までの交通機関を利用したルートの検索を行い、前記出発地から前記目的地までの利用路線の識別情報を含む検索ルートのデータを出力する検索エンジンと、前記交通機関の路線別の乗降ポイントに関するデータを記憶した乗降ポイントデータベースとを備えたコンピュータを、ルート検索装置として動作させるためのコンピュータプログラムであって、
前記コンピュータが前記コンピュータプログラムを実行すると、
予め定められた優先区間の２つの端点の識別情報及び前記優先区間の利用路線の識別情報を含む優先区間データを記憶部に記憶し、
前記乗降ポイントデータベースから、前記検索エンジンが出力した検索ルートの利用路線の全ての乗降ポイント、及び前記記憶部に記憶された前記優先区間の利用路線の全ての乗降ポイントを抽出し、前記検索ルートの利用路線の乗降ポイントのいずれかと前記優先区間の利用路線の乗降ポイントのいずれかが同一であれば、その同一乗降ポイントを、前記検索ルートの利用路線と前記優先区間の利用路線との乗り換えが可能な一以上のクロスポイントとして抽出し、
前記記憶部に記憶された前記優先区間データにより特定される優先区間の一部または全部を含み、前記抽出手段により抽出された一以上のクロスポイントのうちの少なくとも一つを通る、前記出発地から前記目的地までの交通機関を利用した優先区間利用ルートを生成し、
前記抽出されたクロスポイントが複数あるときは、前記出発地及び前記目的地の経度及び緯度と、前記クロスポイントの経度及び緯度とを特定し、前記出発地及び前記目的地からそれぞれ最も近い第１及び第２のクロスポイントを選択し、前記選択された第１のクロスポイントと第２のクロスポイント間の優先区間内を通る前記優先区間利用ルートを生成し、
前記生成された優先区間利用ルートを出力する、ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、交通機関の乗り換えルート検索に関し、特に定期券区間などの所定の優先区間の一部または全部を通る優先区間利用ルートを生成する技術に関する。
【背景技術】
【０００２】
出発地及び目的地を指定して、鉄道などの交通機関の乗り換えルートの検索を行って、ルート情報を提供する乗り換え案内サービスが行われている。これに伴って、交通機関のルート検索に関する様々な技術が提案されている。
【０００３】
例えば、特許文献１には、定期券区間などの特定区間を優先的にルート内に含めるようにして、ルート検索を行う技術が記載されている。この特許文献１の技術では、優先区間に対して、Martins et al.のアルゴリズムにおけるコストが小さくなるような重み付けを行い、その優先区間が優先的に検索されるようにしている。また、最短経路問題を解くためのアルゴルズムとしては、ダイクストラ法が知られている。
【特許文献１】特開２００４−１３９５８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ここで、特許文献１の技術では、ルート検索を行う検索エンジンそのものを改良する必要がある。一方、近年は、ルート検索を行う検索エンジンは種々のものが提供されているので、この検索エンジンをそのまま利用できれば便利である。
【０００５】
また、ダイクストラ法やMartins et al.のアルゴリズムでは、乗り換えを行う場合の初乗り運賃を反映させることができない。
【０００６】
そこで、本発明の目的は、既存の検索エンジンをそのまま活用しつつ、定期券区間などの優先区間を通るルートを生成することである。
【課題を解決するための手段】
【０００７】
本発明の一つの実施態様に従う優先区間を利用したルート検索装置は、指定された出発地から目的地までの交通機関を利用したルートの検索を行い、前記出発地から前記目的地までの利用路線の識別情報を含む検索ルートのデータを出力する検索エンジンと、前記交通機関の路線別の乗降ポイントに関するデータを記憶した乗降ポイントデータベースと、予め定められた優先区間の２つの端点の識別情報及び前記優先区間の利用路線の識別情報を含む優先区間データを記憶する記憶部と、前記乗降ポイントデータベースを参照し、前記検索エンジンが出力した検索ルートデータ及び前記記憶部に記憶された前記優先区間データに基づいて、前記検索ルートの利用路線と前記優先区間の利用路線との乗り換えが可能な一以上のクロスポイントを抽出する抽出手段と、前記記憶部に記憶された前記優先区間データにより特定される優先区間の一部または全部を含み、前記抽出手段により抽出された一以上のクロスポイントのうちの少なくとも一つを通る、前記出発地から前記目的地までの交通機関を利用した優先区間利用ルートを生成する生成手段と、前記生成手段により生成された優先区間利用ルートを出力する手段と、を備える。
【０００８】
好適な実施形態では、前記抽出手段は、前記乗降ポイントデータベースから、前記検索ルートの利用路線の乗降ポイント、及び前記優先区間の利用路線の乗降ポイントを抽出し、前記検索ルートの利用路線の乗降ポイントのいずれかと前記優先区間の利用路線の乗降ポイントいずれかが同一であれば、その同一乗降ポイントを前記クロスポイントとして抽出するようにしてもよい。
【０００９】
好適な実施形態では、前記優先区間利用ルート生成手段は、前記抽出手段により抽出されたクロスポイントが複数あるときは、前記出発地及び前記目的地からそれぞれ最も近い第１及び第２のクロスポイントを選択し、前記選択された第１のクロスポイントと第２のクロスポイント間の優先区間内を通る前記優先区間利用ルートを生成してもよい。
【００１０】
好適な実施形態では、前記出力手段は、前記出発地から第１のクロスポイントまでの運賃と第２のクロスポイントから前記目的地までの運賃との合計が、前記検索ルートで前記出発地から前記目的地まで移動する際の運賃よりも安いときに、前記優先区間利用ルートを出力してもよい。
【００１１】
好適な実施形態では、前記優先区間利用ルート生成手段は、前記出発地または前記目的地の少なくともいずれか一方が、前記優先区間の利用路線とは異なる路線にあるときは、その異なる路線にある前記出発地または前記目的地から最も近いクロスポイントと、前記優先区間の一部または全部を通る優先区間利用ルートを生成してもよい。
【００１２】
好適な実施形態では、前記交通機関は鉄道であり、前記乗降ポイントは前記鉄道の駅であり、前記優先区間は定期券利用区間であってもよい。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態に係る定期券を利用したルート検索システムについて、図面を参照して説明する。
【００１４】
図１は、本実施形態に係る定期券を利用したルート検索システムの構成図である。
【００１５】
本システムは、ルート検索装置であるサーバ１と、複数のユーザ端末装置３，３とがネットワーク５を介して接続されている。そして、サーバ１は、各ユーザ端末装置３からの出発地及び目的地を指定した乗り換えルート検索要求を受けて、乗り換えルート情報を提供する。
【００１６】
ユーザ端末装置３，３は、通信機能を有する端末装置であればよく、例えば、携帯電話機、携帯情報端末、あるいは汎用的なパーソナルコンピュータなどでもよい。ユーザ端末装置３，３は、液晶パネルなどの表示装置、及びプッシュボタンあるいはポインティングデバイスなどの入力装置を有する。ユーザ端末装置３，３が携帯電話機などの場合は、無線基地局７との間で無線通信を行う。
【００１７】
以下に説明するユーザ端末装置３，３内の個々の構成要素または機能は、例えば、サーバ１から取得したＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書などのスクリプトや、コンピュータプログラムを実行することにより実現される。
【００１８】
例えば、図２は、各ユーザ端末装置３における受付画面の一例を示す。図２Ａは、ユーザ端末装置３の表示装置３１にメニュー画面１００が表示されている。このメニュー画面において、「４．乗り換え案内」または「５．乗り換え案内（定期券利用）」が選択されると、図２Ｂに示す乗り換えルート検索の受付画面２００へ遷移する。受付画面２００は、出発駅及び到着駅の入力領域２１１，２１３と、日時を指定する場合の入力領域２１５と、利用設定の入力領域２１７とを有する。ユーザは、受付画面２００に対して、入力装置３３を操作して乗り換えルート検索の条件を入力する。そして、メニュー画面１００と受付画面２００で入力された条件を含む乗り換えルート検索要求が、サーバ１へ送られる。つまり、メニュー画面１００において、「４．乗り換え案内」が選択されたときは通常の検索要求が、「５．乗り換え案内（定期券利用）」が選択されたときは定期券利用ルートの検索要求が、それぞれサーバ１へ送信される。
【００１９】
また、後述する定期券区間データは、各ユーザが自らのユーザ端末装置３を利用して登録してもよい。
【００２０】
サーバ１は、例えば汎用的なコンピュータシステムにより構成され、以下に説明するサーバ１内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【００２１】
サーバ１は、乗り換えルート検索要求処理部１１と、乗り換え検索エンジン１２と、駅データベース１３と、定期券利用ルート生成部１５と、定期券区間記憶部１７とを有する。
【００２２】
乗り換えルート検索要求処理部１１は、ユーザ端末装置３からの乗り換えルート検索要求を受ける。この乗り換えルート検索要求では、出発駅及び到着駅は、それぞれ駅コードによって特定されている。そして、受け付けた検索要求が通常の乗り換えルート検索要求のときは、乗り換え検索エンジン１２へ検索要求を送る。一方、受け付けた検索要求が定期券利用ルートの検索要求であるときは、定期券利用ルート生成部１５へ検索要求を送る。そして、乗り換えルート検索要求処理部１１は、乗り換え検索エンジン１２または定期券利用ルート生成部１５が生成したルートを示すデータをユーザ端末装置３へ送信する。乗り換えルート検索要求処理部１１は、受け付けた検索要求が、料金が安い乗り換えルートを優先させる検索要求であるときには、乗り換え検索エンジン１２及び定期券利用ルート生成部１５の双方へ検索要求を送り、料金が安いルート順にユーザ端末装置３へ結果を返すようにしてもよい。
【００２３】
乗り換え検索エンジン１２は、内部に所定の路線データベースを有し、その路線データベースに基づいて乗り換えルートの検索を行う。乗り換え検索エンジン１２は、乗り換えルート検索要求を受けると、例えば、その検索要求において駅コードで特定された出発地から目的地までの、鉄道など交通機関を用いたルート検索を行って得られたルートを示すデータを出力する。乗り換え検索エンジン１２は、検索結果の複数のルートを、所定の優先順位で出力することができる。例えば、乗り換え検索エンジン１２は、最も早く目的地へ到着するルートを優先させる時刻優先モードや、最も安く目的地へ到着するルートを優先させるコスト優先モードなどの指定を受けると、その指定されたモードに従う検索を行って、そのモードに従う優先順位で一以上のルートを出力する。乗り換え検索エンジン１２は、検索結果のルートを出力する際、そのルートを示すデータと併せて列車の時刻や運賃のデータも出力する。
【００２４】
なお、本実施形態に係る乗り換え検索エンジン１２は、例えば、Martins et al. のアルゴリズムを用いた検索エンジンなどのように、広く一般に用いられている乗り換え検索エンジンを使用するができるので、その内部処理については詳細な説明を省略する。
【００２５】
本実施形態では、交通機関として特に鉄道を用いた乗り換えルート検索を例にとって説明するが、本発明は、バス、航空機などの他の交通機関の乗り換えルート検索にも適用することができる。さらに、本発明は、これらの交通機関のうちの２以上を組み合わせたルート検索に適用することもできる。
【００２６】
駅データベース１３には、乗降ポイントである鉄道の駅に関するデータが登録されている。
【００２７】
図３は、駅データベース１３のデータ構造の一例を示す。すなわち、駅データベース１３は、データ項目として駅名１３１，駅コード１３３，路線コード１３５，路線内通番１３７及び位置情報として緯度及び経度１３９を有する。駅コード１３３は、それぞれの駅の識別情報である。二つ以上の路線が交差し、各路線間の乗り換えが可能な駅（以下、クロスポイント駅）については、駅コード１３３に同一のコードが割り当てられている。路線コード１３５は、各駅が属している路線の識別情報であり、各路線にユニークに割り当てられた識別情報である。路線内通番１３７は、同一路線内で各駅に割り当てられた通番である。例えば、路線Ｌ１と路線Ｌ２のクロスポイント駅ＳＴについては、路線Ｌ１のレコード及び路線Ｌ２のレコードが存在する。このとき、この２つのレコードの駅コード１３３は、何れもクロスポイント駅ＳＴを示すもので同一である。このため、駅データベース１３内のレコードは、路線コード１３５及び路線内通番１３７の組み合わせで、一意に識別される。
【００２８】
定期券区間記憶部１７は、ユーザ別の定期券区間を示すデータを記憶する。定期券区間データは、例えば、定期券区間の２つの端点の識別情報及び定期券区間の利用路線の識別情報を含む。定期券区間データは、各ユーザによって予め登録される。例えば、サーバ１が定期券区間データの入力画面をユーザ端末装置３に対して提供し、その画面に対してユーザが入力したデータに基づいて定期券区間記憶部１７が設定される。
【００２９】
図４は、定期券区間記憶部１７に格納される定期券区間データ２０のデータ構造の一例を示す。すなわち、定期券区間データ２０は、データ項目として、ユーザＩＤ２１と、定期券区間の２つの端点である終端駅２２，２３と、定期区間内の経由駅２５，２５，・・・とを有する。終端駅２２，２３は、さらに、駅コード２２１，２３１と、路線コード２２２，２３２と、路線内通番２２３，２３３とを有する。経由駅２５，２５，・・・も同様に、駅コード２５１，２５１，・・・と、路線コード２５２，２５２，・・・と、路線内通番２５３，２５３，・・・とを有する。経由駅２５，２５，・・・は、必要に応じて設定される。少なくとも乗り換えを行う駅は、経由駅２５，２５，・・・に設定される。
【００３０】
定期券区間データ２０は、上記の例の他、例えば、定期券区間内の全駅の駅コード、路線コード及び路線内通番を有していてもよい。
【００３１】
定期券利用ルート生成部１５は、駅コードで特定された出発地から駅コードで特定された目的地までのルートとして、定期券区間の一部または全部を含む定期券利用ルートを生成する。例えば、定期券利用ルート生成部１５は、乗り換え検索エンジン１２に対して、出発地及び目的地を指定して乗り換えルート検索を要求する。そして、定期券利用ルート生成部１５は、乗り換え検索エンジン１２によって生成されたルート（以下、通常検索ルート）を修正して、定期券区間を含むルートを生成する。通常検索ルートの修正は、例えば、通常検索ルートで利用する路線と、定期券区間の利用路線とのクロスポイント駅を一つ以上抽出し、定期券区間の一部または全部を含み、かつ、抽出されたクロスポイント駅で乗り換えを行うルートを生成する。以下、具体例を用いて説明する。
【００３２】
図５に示す路線図において、出発駅Ｓから到着駅Ｄまでの定期券利用ルートの検索を行う場合を考える。ここで、対象となるユーザの定期券区間データ２０が定期券区間記憶部１７に記憶されている。その定期券区間７０は、終端駅がＰ１及びＰ２であり、路線Ａと路線Ｂをクロスポイント駅ＳＴ５で乗り換える、図中に破線で示されている区間である。
【００３３】
＜ステップ１＞
定期券利用ルート生成部１５は、まず、定期券区間の路線コード２２２，２３２，２５２をキーとして、定期券区間として利用している路線内の全駅（図５の例では路線Ａ及び路線Ｂの全駅）の駅コード、路線コード及び路線内通番を、駅データベース１３から抽出する。つまり、定期券利用ルート生成部１５は、定期券区間７０の全駅及び定期券区間外であるが、定期券区間７０に含まれる路線７１（図５の例では、路線Ａ及び路線Ｂ）の他の駅についても駅コード、路線コード及び路線内通番を抽出する。その結果、図６に示すように、路線Ａ及び路線Ｂの全駅の駅コード、路線コード及び路線内通番が抽出される。
【００３４】
なお、同図の例では、路線Ａの路線コードが“ＴＡ”、路線Ｂの路線コードが“ＴＢ”であり、それぞれＴＡｘ、ＴＢｘの“ｘ”が路線内通番である。また、路線Ｃ及び路線Ｄについても、同様に路線コードはそれぞれ“ＴＣ”及び“ＴＤ”である。
【００３５】
また、図６では、クロスポイント駅ＳＴ５に対して、路線Ａ及び路線Ｂのそれぞれの路線コード及び路線内通番としてＴＡｎとＴＢ０が割り当てられていることがわかる。また、クロスポイント駅ＳＴ１、ＳＴ２及びＳＴ３の駅コードが、それぞれＭ１，Ｍ２及びＭ３である。
【００３６】
＜ステップ２＞
再び図５を参照すると、定期券利用ルート生成部１５は、出発駅Ｓ及び到着駅Ｄが特定された定期券利用ルートの検索要求を受け付けると、乗り換え検索エンジン１２に対して乗り換えルート検索要求を行う。そして、乗り換え検索エンジン１２によって、同図に一点鎖線で示す、出発駅Ｓ→クロスポイント駅ＳＴ４→到着駅Ｄの通常検索ルート８０が抽出される。定期券利用ルート生成部１５は、出発駅Ｓ→クロスポイント駅ＳＴ４→到着駅Ｄの通常検索ルート８０について、路線コード及び路線内通番で特定される通常検索ルートデータを乗り換え検索エンジン１２から取得する。
【００３７】
ここで、定期券利用ルート生成部１５は、通常検索ルート８０についても同様に、通常検索ルートデータに含まれる路線コードをキーとして、通常検索ルート８０で利用する路線内の全駅（図５の例では路線Ｃ及び路線Ｄの全駅）の駅コード、路線コード及び路線内通番を、駅データベース１３から抽出する。つまり、定期券利用ルート生成部１５は、出発駅Ｓから到着駅Ｄまでの通常検索ルート８０内の全駅と、出発駅Ｓから到着駅Ｄまでの通常検索ルート外であるが、通常検索ルート８０で利用する路線８１（図５の例では、路線Ｃ及び路線Ｄ）の他の駅についても駅コード、路線コード及び路線内通番を抽出する。その結果、図７に示すように、路線Ｃ及び路線Ｄの全駅の駅コード、路線コード及び路線内通番が抽出される。
【００３８】
図７では、クロスポイント駅ＳＴ４に対して、路線Ｃ及び路線Ｄのそれぞれの路線コード及び路線内通番としてＴＣｎとＴＤ０が割り当てられていることがわかる。
【００３９】
＜ステップ３＞
次に、定期券利用ルート生成部１５は、定期券区間利用路線７１と通常検索ルート利用路線８１とのクロスポイント駅を抽出する。クロスポイント駅抽出のためのマッチング処理は、例えば、図８に示すように、定期券区間利用路線７１と通常検索ルート利用路線８１とで、同一の駅コードを有する駅があるか否かを判定する。
（１）定期券利用ルート生成部１５は、定期券区間７０内の各駅に対して、通常検索ルート利用路線８１の全駅を対比して、同一駅が存在するか否かのマッチングを行ってもよい。つまり、図８の例では、ＴＡ０，ＴＡ１，ＴＢ０〜ＴＢｎまでのそれぞれの駅と、通常検索ルート利用路線８１の全駅との比較を行い、駅コードが同一の駅を抽出する。
（２）定期券利用ルート生成部１５は、通常検索ルート８０内の各駅に対して、定期券区間利用路線７１の全駅を対比して、同一駅が存在するか否かのマッチングを行ってもよい。つまり、図８の例では、ＴＣ０，ＴＣｎ，ＴＤ０〜ＴＤｎまでのそれぞれの駅と、定期券区間利用路線７１の全駅との比較を行い、駅コードが同一の駅を抽出する。
（３）定期券区間利用路線７１の全駅と通常検索ルート利用路線８１の全駅とを対比して、同一駅が存在するか否かのマッチングを行って、同一駅を抽出してもよい。
（４）定期券区間７０内の各駅と、通常検索ルート８０内の駅とを対比して、同一駅が存在するか否かのマッチングを行って、同一駅を抽出してもよい。
【００４０】
なお、互いに同一駅でなくても乗り換え可能である駅もある。これについては、駅データベース１３に、乗り換え可能駅コードの項目を追加し、これを用いて乗り換え可能駅を抽出してもよい。
【００４１】
定期券利用ルート生成部１５は、例えば、上記（１）および（２）を行ってマッチしたクロスポイント駅をすべて抽出する。あるいは、定期券利用ルート生成部１５は、上記（１）〜（４）のいずれか一つだけを行ってもよい。クロスポイント駅が一つも抽出されなかったときは、定期券利用ルート生成部１５は、定期券利用ルート検索を終了してもよい。
【００４２】
図８の例では、定期券利用ルート生成部１５が上記（１）と（２）を行うことによって駅コードがＭ１，Ｍ２及びＭ３の３つのクロスポイント駅が抽出される。
【００４３】
＜ステップ４＞
定期券利用ルート生成部１５は、ステップ３で抽出されたクロスポイント駅のなから、いずれか一つ以上を選択する。例えば、抽出されたクロスポイント駅が複数あるとき、定期券利用ルート生成部１５は、出発駅Ｓ及び到着駅Ｄのそれぞれに対して一つずつ、クロスポイント駅を抽出してもよい。出発駅Ｓ及び到着駅Ｄについてそれぞれクロスポイント駅を抽出するのは、例えば、出発駅Ｓ及び到着駅Ｄのいずれもが、定期券区間の利用路線とは異なる路線の駅であるようなときに好適である。
【００４４】
例えば、定期券利用ルート生成部１５は、駅データベース１３を参照して、出発駅Ｓ、到着駅Ｄ及び一以上のクロスポイント駅の緯度及び経度１３９を特定し、出発駅Ｓ及び到着駅Ｄのそれぞれから直線距離で最も近いクロスポイント駅ＳＴＳ及びＳＴＤをそれぞれ抽出する。これにより、出発駅Ｓ→クロスポイント駅ＳＴＳ→（定期券区間）→クロスポイント駅ＳＴＤ→到着駅Ｄという、出発駅Ｓ及び到着駅Ｄに対してそれぞれ抽出されたクロスポイント駅を通り、且つ定期券区間を通る定期券利用ルートが生成される。
【００４５】
図５の例では、出発駅Ｓに対してはクロスポイント駅ＳＴ１、到着駅Ｄに対してはクロスポイント駅ＳＴ３がそれぞれ抽出される。その結果、定期券利用ルート生成部１５が生成する定期券利用ルート９０は、出発駅Ｓ→クロスポイント駅ＳＴ１→（定期券区間）→クロスポイント駅ＳＴ３→到着駅Ｄとなる。
【００４６】
なお、クロスポイント駅の選択は、駅間の直線距離の代わりに、駅数や列車の走行距離（線路の長さ）を用いるなど、他の方法で行ってもよい。
【００４７】
また、出発駅Ｓ及び到着駅Ｄのうち、いずれか一方が定期券区間の利用路線の駅であり、他方が定期券区間の利用路線とは異なる路線の駅であるときを考える。例えば、出発駅Ｓが定期券区間の利用路線の駅であり、到着駅Ｄが定期券区間の利用路線とは異なる路線の駅であるとすると、定期券区間の利用路線とは異なる路線の駅（到着駅Ｄ）に対してだけクロスポイント駅を選択し、定期券区間の利用路線の駅（出発駅Ｓ）に対しては、クロスポイント駅を選択しなくてもよい。これにより、そのクロスポイント駅と定期券区間の一部または全部を通る、出発駅Ｓから到着駅Ｄまでの定期券利用ルートが生成される。なお、定期券区間の利用路線内に出発駅Ｓまたは到着駅Ｄがある場合には、その駅が定期券区間内である場合と、定期券区間外であるが定期券区間と同一路線である場合とがある。
【００４８】
＜ステップ５＞
定期券利用ルート生成部１５は、ステップＳ４で生成した定期券利用ルートを利用した場合の到着時刻及び運賃を算出する。定期券区間については運賃は不要であるから、定期券利用ルート生成部１５は、この区間を除いた区間の運賃を算出する。到着時刻及び運賃の算出は、例えば、（１）出発駅Ｓ→クロスポイント駅ＳＴＳ、（２）クロスポイント駅ＳＴＳ→（定期券区間）→クロスポイント駅ＳＴＤ、及び（３）クロスポイント駅ＳＴＤ→到着駅Ｄに分割して行う。この場合、（２）の区間の運賃は不要である。以下、図５の例を用いて説明する。
【００４９】
まず、出発駅Ｓの出発時刻が指定されている場合、定期券利用ルート生成部１５は、その出発時刻を指定して、乗り換え検索エンジン１２に対して出発駅Ｓからクロスポイント駅ＳＴ１までのルート検索要求を行い、クロスポイント駅ＳＴ１の到着時刻及び運賃を取得する。次に、定期券利用ルート生成部１５は、クロスポイント駅ＳＴ１の到着時刻に所定の乗り換え時間を加えた時刻を出発時刻に指定して、乗り換え検索エンジン１２に対してクロスポイント駅ＳＴ１からクロスポイント駅ＳＴ３までのルート検索要求を行い、クロスポイント駅ＳＴ３の到着時刻及び運賃を取得する。さらに、定期券利用ルート生成部１５は、クロスポイント駅ＳＴ３の到着時刻に所定の乗り換え時間を加えた時刻を出発時刻に指定して、乗り換え検索エンジン１２に対してクロスポイント駅ＳＴ３から到着駅Ｄまでのルート検索要求を行い、到着駅Ｄの到着時刻及び運賃を取得する。
【００５０】
一方、到着駅Ｄの到着時刻が指定されている場合、定期券利用ルート生成部１５は、その到着時刻を指定して、乗り換え検索エンジン１２に対してクロスポイント駅ＳＴ３から到着駅Ｄまでのルート検索要求を行い、クロスポイント駅ＳＴ３の出発時刻及び運賃を取得する。次に、定期券利用ルート生成部１５は、クロスポイント駅ＳＴ３の出発時刻から所定の乗り換え時間を引いた時刻を到着時刻に指定して、乗り換え検索エンジン１２に対してクロスポイント駅ＳＴ１からクロスポイント駅ＳＴ３までのルート検索要求を行い、クロスポイント駅ＳＴ１の出発時刻及び運賃を取得する。さらに、定期券利用ルート生成部１５は、クロスポイント駅ＳＴ１の出発時刻から所定の乗り換え時間を引いた時刻を到着時刻に指定して、乗り換え検索エンジン１２に対して出発駅Ｓからクロスポイント駅ＳＴ１までのルート検索要求を行い、出発駅Ｓの出発時刻及び運賃を取得する。
【００５１】
ここで、このユーザは定期券を有しているので、定期券利用区間であるＳＴ１→ＳＴ３の運賃は不要である。従って、この定期券利用ルート９０で運賃が必要になるのは、出発駅Ｓ→クロスポイント駅ＳＴ１及びクロスポイント駅ＳＴ３→到着駅Ｄの区間であり、その区間の運賃の合計がこの定期券利用ルートで必要になる運賃となる。そして、定期券利用ルート生成部１５は、この定期券利用ルートの運賃と通常検索ルートの運賃とを比較して、定期券利用ルートの運賃の方が安い場合に、定期券利用ルート９０を示すデータを検索結果として出力するようにしてもよい。また、定期券利用ルート生成部１５は、運賃にかかわらず、定期券利用ルート９０を示すデータを検索結果として出力するようにしてもよい。
【００５２】
また、出発駅Ｓ及び到着駅Ｄのうち、いずれか一方が定期券区間の利用路線とは異なる路線の駅で、他方が定期券区間の利用路線の駅であるときは、上記と同様に、路線ごとに到着時刻または出発時刻を乗り換え検索エンジン１２から取得する。この場合の運賃計算も、定期券区間を除く区間について算出する。例えば、出発駅Ｓまたは到着駅Ｄのいずれか一方（例えば出発駅Ｓ）が定期券区間内にあれば、クロスポイント駅と定期券区間の利用路線とは異なる路線の駅（例えば到着駅Ｄ）との運賃を算出する。あるいは、出発駅Ｓまたは到着駅Ｄのいずれか一方（例えば出発駅Ｓ）が定期券区間の利用路線の駅であるが、定期券区間内ではないときは、その駅から定期券区間の端点までの運賃と、クロスポイント駅と定期券区間の利用路線とは異なる路線の駅（例えば到着駅Ｄ）との運賃を合計する。
【００５３】
次に、図９は、上記のような構成を備える定期券を利用したルート検索システムにおける処理手順を示すフローチャートである。以下、このフローチャートに従って説明する。
【００５４】
まず、ユーザがユーザ端末装置３に対して、自らの定期券区間のデータを入力する（Ｓ１０）。そして、ユーザ端末装置３が定期券区間データをサーバ１へ送信すると、定期券区間記憶部１７に登録される（Ｓ２０）。定期券区間データを既に登録済みのユーザについては、これらの処理を省略することができる。
【００５５】
次に、ユーザは、ユーザ端末３の表示装置３１に、図２に示すメニュー画面１００及び受付画面２００を表示させて、それぞれに検索条件を入力する（Ｓ１２）。そして、ここで入力された検索条件を含む乗り換えルート検索要求がサーバ１へ送信される（Ｓ１４）。ここで、メニュー画面１００において、「５．乗り換え案内（定期券利用）」が選択されたときには、検索要求に定期券利用ルートの検索要求であることを示すデータが含まれる。
【００５６】
サーバ１は、この乗り換えルート検索要求を受け付けると、乗り換えルート検索要求処理部１１が、受け付けた検索要求が定期券利用ルートの検索要求であることを示すデータを含む定期券利用ルート検索要求であるか否かを判定する（Ｓ２２）。その結果、定期券利用ルート検索要求であるときには（Ｓ２２：Ｙｅｓ）、定期券利用ルート生成部１５が、定期券利用ルートを生成する（Ｓ２４）。この処理の詳細については、図１０を用いて説明する。一方、受け付けた検索要求が定期券利用ルート検索要求でないときは（Ｓ２２：Ｎｏ）、乗り換え検索エンジン１２に対して、通常の検索要求をする（Ｓ２６）。
【００５７】
乗り換えルート検索要求処理部１１は、乗り換え検索エンジン１２または定期券利用ルート生成部１５が出力する検索結果のルートデータを、検索要求の送信元のユーザ端末装置３へ送信する（Ｓ２８）。
【００５８】
ユーザ端末装置３は、この検索結果のルートデータを受け付けて、表示装置３１に表示する（Ｓ１６）。これにより、ユーザに対して、乗り換え案内情報を提供することができる。
【００５９】
図１０は、ステップＳ２４の定期券利用ルート生成処理の詳細な手順を示すフローチャートである。以下、このフローチャートに従って説明する。
【００６０】
定期券利用ルート生成部１５は、上述の＜ステップ１＞の処理を行う。すなわち、定期券利用ルート生成部１５は、駅データベース１３を参照して、定期券区間利用路線の全駅を抽出する（Ｓ３０）。
【００６１】
次に、定期券利用ルート生成部１５は、上述の＜ステップ２＞の処理を行う。すなわち、１２が通常検索を実行する（Ｓ３２）。そして、定期券利用ルート生成部１５が、駅データベース１３を参照して、通常検索ルートで利用する路線の全駅を抽出する（Ｓ３４）。
【００６２】
次に、定期券利用ルート生成部１５は、上述の＜ステップ３＞の処理を行う。すなわち、定期券利用ルート生成部１５は、定期券区間の利用路線と、通常検索ルートの利用路線のクロスポイント駅を抽出する（Ｓ３６）。
【００６３】
次に、定期券利用ルート生成部１５は、上述の＜ステップ４＞の処理を行ってクロスポイント駅を選択し（Ｓ３８）、定期券利用ルートを生成する（Ｓ４０）。さらに、定期券利用ルート生成部１５は、ここで生成した定期券利用ルートの運賃と、通常検索ルートの運賃とに基づいて、出力するルートを決定する（Ｓ４２）。例えば、定期券利用ルートの運賃が通常検索ルートの運賃よりも安いときには、通常検索ルート及び定期券利用ルートを出力ルートとする。定期券利用ルートの運賃が通常検索ルートの運賃と同額または高いときは、出力ルートには、通常検索ルートを含めるとともに、定期券利用ルートを含めてもよいし、含めなくてもよい。出力ルートの対象となる通常検索ルート及び定期券利用ルートは、それぞれ複数であってもよい。
【００６４】
これにより、定期券利用ルートの情報をユーザに提供することができる。特に、本実施形態では、乗り換え検索エンジンとして汎用的な検索エンジンを用いて、定期券利用ルートを生成することができる。
【００６５】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【００６６】
例えば、上述した実施形態では、サーバ１がルート検索を実行して、検索結果をユーザ端末装置３へ返しているが、ユーザ端末装置３がルート検索に関する処理の一部または全部を行ってもよい。
【図面の簡単な説明】
【００６７】
【図１】本発明の一実施形態に係る定期券を利用したルート検索システムの構成図である。
【図２】各ユーザ端末装置３における受付画面の一例を示す。
【図３】駅データベース１３のデータ構造の一例を示す。
【図４】定期券区間記憶部１７に格納される定期券区間データ２０のデータ構造の一例を示す。
【図５】定期券利用ルート検索を説明するための路線図である。
【図６】定期券区間として利用している路線内の全駅を抽出した結果を示す図である。
【図７】通常検索ルートで利用している路線内の全駅を抽出した結果を示す図である。
【図８】クロスポイント駅抽出のためのマッチング処理の説明図である。
【図９】定期券を利用したルート検索システムにおける処理手順を示すフローチャートである。
【図１０】定期券利用ルート生成処理の詳細な手順を示すフローチャートである。
【符号の説明】
【００６８】
１…サーバ、３，３…ユーザ端末装置、１１…ルート検索要求処理部、１２…乗り換え検索エンジン、１３…駅データベース、１５…定期券利用ルート生成部、１７…定期券区間記憶部、２０…定期券区間データ、２２，２３…終端駅、２５，２５，・・・…経由駅、７０…定期券区間、８０…通常検索ルート、９０…定期券利用ルート、１３１…駅名、１３３…駅コード、１３５…路線コード、１３７…路線内通番、１３９…緯度・経度
【図１】
0005000541.tif 000002
【図２】
0005000541.tif 000003
【図３】
0005000541.tif 000004
【図４】
0005000541.tif 000005
【図５】
0005000541.tif 000006
【図６】
0005000541.tif 000007
【図７】
0005000541.tif 000008
【図８】
0005000541.tif 000009
【図９】
0005000541.tif 000010
【図１０】
0005000541.tif 000011