(57)【要約】      （修正有）【課題】簡便な方法により交通費を適切に精算する、運賃精算装置、運賃精算プログラム及び運賃精算方法を提供する。【解決手段】運賃精算装置１００は、時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、位置を特定する情報ごとに移動手段と対応付ける移動手段特定部１１２と、移動手段が鉄道であると対応付けられた位置を特定する情報について、鉄道の路線を特定する滞在路線特定部１１３と、滞在路線特定部１１３により特定された路線ごとに運賃を特定する運賃特定部１１６と、を備える。【選択図】図１
2017016559.tif 000002
【特許請求の範囲】
【請求項１】
時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、前記位置を特定する情報ごとに移動手段と対応付ける移動手段特定部と、
前記移動手段が鉄道であると対応付けられた前記位置を特定する情報について、当該鉄道の路線を特定する路線特定部と、
前記路線特定部により特定された路線ごとに運賃を特定する運賃特定部と、
を備えることを特徴とする運賃精算装置。
【請求項２】
請求項１に記載の運賃精算装置であって、
前記路線特定部は、複数の乗入路線がある区間に含まれる位置については、当該乗車に係る以前の時刻における前記位置を特定する情報を用いて乗車した路線を特定する、
ことを特徴とする運賃精算装置。
【請求項３】
請求項１または２に記載の運賃精算装置であって、
前記運賃特定部は、定期券区間を除外して前記運賃を特定する、
ことを特徴とする運賃精算装置。
【請求項４】
請求項１〜３のいずれか一項に記載の運賃精算装置であって、
駅が占める範囲を特定する情報を含む交通機関位置情報記憶部と、
前記位置を特定する情報により特定される位置が、前記駅が占める範囲に含まれるか否か判定する行動特定部と、を備え、
前記移動手段特定部は、前記位置を特定する情報のうち直近前後の各駅が占める範囲に含まれる位置の情報と対応付けられている前記時刻の差分が所定の閾値を上回る場合には、当該位置の間の移動手段が鉄道ではないと判定する、
ことを特徴とする運賃精算装置。
【請求項５】
コンピュータに、運賃の精算を行う手順を実行させるプログラムであって、
前記コンピュータを、制御手段として機能させ、
前記制御手段に対して、
時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、前記位置を特定する情報ごとに移動手段と対応付ける移動手段特定ステップと、
前記移動手段が鉄道であると対応付けられた前記位置を特定する情報について、当該鉄道の路線を特定する路線特定ステップと、
前記路線特定ステップにおいて特定された路線ごとに運賃を特定する運賃特定ステップと、
を実行させることを特徴とする運賃精算プログラム。
【請求項６】
コンピュータを用いて運賃の精算を行う手順を実施する運賃精算方法であって、
前記コンピュータが備える制御手段は、
時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、前記位置を特定する情報ごとに移動手段と対応付ける移動手段特定ステップと、
前記移動手段が鉄道であると対応付けられた前記位置を特定する情報について、当該鉄道の路線を特定する路線特定ステップと、
前記路線特定ステップにおいて特定された路線ごとに運賃を特定する運賃特定ステップと、
を実行することを特徴とする運賃精算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、運賃精算装置、運賃精算プログラムおよび運賃精算方法に関するものである。
【背景技術】
【０００２】
特許文献１には、「ユーザが出発駅を特定する時に、サーバ装置と、自身の位置を測定可能な通信端末とが、駅を特定する駅特定処理を実行することにより、前記出発駅の駅名を示す駅データを前記サーバ装置の記憶部に記憶させる出発駅記憶ステップと、前記ユーザが到着駅を特定する時に、前記サーバ装置と前記通信端末とが前記駅特定処理を実行することにより、前記到着駅の駅名を示す駅データを前記サーバ装置の記憶部に記憶させる到着駅記憶ステップと、前記出発駅記憶ステップで前記記憶部に記憶された駅データと、前記到着駅記憶ステップで前記記憶部に記憶された駅データとから、前記出発駅から前記到着駅までの経路を求め、求めた経路に伴う交通費を算出する交通費算出ステップとを具備し、前記駅特定処理は、前記通信端末が、当該通信端末の使用者の指示に応じて自身の位置を測定し、測定した位置を示す位置データをサーバ装置へ送信する位置送信ステップと、
前記サーバ装置が、前記位置データを受信し、前記位置データが示す位置から所定の距離にある駅を特定し、特定した駅の名称を示す候補駅データを、前記通信端末へ送信する駅候補送信ステップと、前記通信端末が、前記駅候補送信ステップにより送信されたデータに基づいて駅名を表示し、表示した駅名の中から当該通信端末の使用者が選択した駅名を、該使用者の指示に基づいて特定し、特定した駅名を示す駅データを前記サーバ装置へ送信する駅データ送信ステップと、前記サーバ装置が、前記駅データを受信し、受信した前記駅データを記憶部に記憶させる駅データ記憶ステップとを具備する交通費精算方法」について記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３３４４８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記技術では、出張地への出発時と到着時に通信端末上での操作が必要となり、出張地から帰社・帰宅する場合の出発時と到着時にも同様に通信端末上の操作が必要になり、操作を一度でも怠ると交通費精算の効果を得られない。
【０００５】
本発明の目的は、より簡便な方法により交通費を適切に精算する技術を提供することにある。
【課題を解決するための手段】
【０００６】
本願は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下のとおりである。上記課題を解決すべく、本発明に係る運賃精算装置は、時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、上記位置を特定する情報ごとに移動手段と対応付ける移動手段特定部と、上記移動手段が鉄道であると対応付けられた上記位置を特定する情報について、当該鉄道の路線を特定する路線特定部と、上記路線特定部により特定された路線ごとに運賃を特定する運賃特定部と、を備える。
【０００７】
また、上記の運賃精算装置においては、上記路線特定部は、複数の乗入路線がある区間については、前後の時刻の前記位置を特定する情報を用いて乗車した路線を特定するものであってもよい。
【０００８】
また、上記の運賃精算装置においては、上記運賃特定部は、定期券区間を除外して前記運賃を特定するものであってもよい。
【０００９】
また、上記の運賃精算装置においては、駅が占める範囲を特定する情報を含む交通機関位置情報記憶部と、上記位置を特定する情報により特定される位置が、上記駅が占める範囲に含まれるか否か判定する行動特定部と、を備え、上記移動手段特定部は、上記位置を特定する情報のうち直近前後の各駅が占める範囲に含まれる位置の情報と対応付けられている上記時刻の差分が所定の閾値を上回る場合には、当該位置の間の移動手段が鉄道ではないと判定するものであってもよい。
【００１０】
また、本発明に係る運賃精算プログラムは、コンピュータに、運賃の精算を行う手順を実行させるプログラムであって、上記コンピュータを、制御手段として機能させ、上記制御手段に対して、時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、上記位置を特定する情報ごとに移動手段と対応付ける移動手段特定ステップと、上記移動手段が鉄道であると対応付けられた上記位置を特定する情報について、当該鉄道の路線を特定する路線特定ステップと、上記路線特定ステップにおいて特定された路線ごとに運賃を特定する運賃特定ステップと、を実行させるものであってもよい。
【００１１】
また、本発明に係る運賃精算方法は、コンピュータを用いて運賃の精算を行う手順を実施する運賃精算方法であって、上記コンピュータが備える制御手段は、時刻に対応付けて記録された位置を特定する情報を複数含む位置情報を用いて、上記位置を特定する情報ごとに移動手段と対応付ける移動手段特定ステップと、上記移動手段が鉄道であると対応付けられた上記位置を特定する情報について、当該鉄道の路線を特定する路線特定ステップと、上記路線特定ステップにおいて特定された路線ごとに運賃を特定する運賃特定ステップと、を実行するものであってもよい。
【００１２】
上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
【発明の効果】
【００１３】
本発明によると、より簡便な方法により交通費を適切に精算する技術を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態に係る旅費システムの構成例を示す図である。
【図２】交通機関位置情報記憶部に格納されるデータ構造を示す図である。
【図３】定期区間情報記憶部に格納されるデータ構造を示す図である。
【図４】位置情報記憶部に格納されるデータ構造を示す図である。
【図５】行動情報記憶部に格納されるデータ構造を示す図である。
【図６】経路情報記憶部に格納されるデータ構造を示す図である。
【図７】運賃精算装置のハードウェア構成例を示す図である。
【図８】利用者端末のハードウェア構成例を示す図である。
【図９】旅費算出処理のフローを示す図である。
【図１０】行動特定処理のフローを示す図である。
【図１１】移動手段特定処理のフローを示す図である。
【図１２】滞在路線特定処理のフローを示す図である。
【図１３】経路特定処理のフローを示す図である。
【図１４】発着地特定処理のフローを示す図である。
【図１５】発着地設定処理のフローを示す図である。
【図１６】運賃特定処理のフローを示す図である。
【発明を実施するための形態】
【００１５】
一般に、事業者等に属する従業員等がその業務において出張等の移動が必要となる場合、旅費を経費として事業者側に申請することが一般的である。この申請は、近年ではウェブシステムを利用してパソコンやスマートフォン等を用いて従業者が申請する内容を入力し、承認されると経費として計上され、従業員に旅費が支払われる場合が多い。このような旅費申請を行う場合、従業員は使用した交通機関情報（利用交通機関、発着駅、時間、運賃等）の入力を行うが、多くの場合に申請は出張から帰ってきてから行う。このため、従業員は、出張期間中に利用した交通機関の情報を漏れなく記録しておく必要がある。また、詳細な記録を失念した場合には、従業員は、詳細な情報を再取得するためにインターネットの路線検索サービス等を用いて交通機関情報を収集することも多い。このように、旅費精算には時間および手間がかかり、本来の業務の時間を圧迫してしまう等の憂慮すべき点がある。
【００１６】
以下に、本発明に係る第一の実施形態を適用した旅費システム１を用いた実施形態について、図面を参照して説明する。
【００１７】
図１は、本発明の第一の実施形態を適用した旅費システム１の構成例を示す図である。利用者は、旅費システム１を用いて、任意のタイミングで旅費の精算を行う。本実施形態において想定する旅費システム１においては、運賃精算装置１００と、利用者端末３００と、が含まれる。なお、運賃精算装置１００は、ネットワーク１０を介して利用者端末３００と通信することが可能である。
【００１８】
しかし、これに限られず、運賃精算装置１００と利用者端末３００とは、ネットワーク１０により互いに通信可能に接続されるものではなく、同一の装置において実現されるものであってもよい。また、利用者端末３００と運賃精算装置１００との間のデータの交換は、不揮発性記憶媒体を介して行われるものであってもよい。
【００１９】
ここで、運賃精算装置１００は、例えば、いわゆるサーバー装置である。しかし、これに限られず、運賃精算装置１００は、パソコンやスマートフォン、ワークステーション、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ａｓｓｉｓｔａｎｔ）、タブレット装置等各種の情報処理装置であってもよい。
【００２０】
利用者端末３００は、例えば、いわゆる携帯電話や、無線通信装置である。しかし、これに限られず、利用者端末３００は、パソコンやスマートフォン、ワークステーション、ＰＤＡ、タブレット装置、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）／ＧＬＯＮＡＳＳ（Ｇｌｏｂａｌ  Ｎａｖｉｇａｔｉｏｎ  Ｓａｔｅｌｌｉｔｅ  Ｓｙｓｔｅｍ）ロガー装置等各種の情報処理装置であってもよい。
【００２１】
当該システムにおいては、利用者は、利用者端末３００に対して入出力を行うものとする。また、利用者端末３００と、運賃精算装置１００とは、ネットワーク１０を介して通信を行う際に、所定のプロトコル（例えば、携帯電話、Ｂｌｕｅｔｏｏｔｈ（登録商標）や無線ＬＡＮ、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  ｃｏｍｍｕｎｉｃａｔｉｏｎ）、ＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  Ｉｄｅｎｔｉｆｉｅｒ）等）の無線通信路を介して互いに通信可能に接続する。
【００２２】
利用者端末３００は、所定のタイミングで衛星電波（例えば、ＧＰＳまたはＧＬＯＮＡＳＳ等の電波）を受信して、利用者端末３００と衛星間の距離と距離の変化率とを３個以上の衛星に対して測定することで利用者端末３００の現在地、進行速度および進行方位および時刻を特定するとともに、位置等を特定した年月日時刻に関連付けて記憶部に記録する。
【００２３】
ネットワーク１０は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、携帯電話網等の通信網である。なお、携帯電話通信網等の無線通信網上のＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）等であってもよい。
【００２４】
運賃精算装置１００には、制御部１１０と、記憶部１２０と、通信部１３０と、が含まれる。制御部１１０には、行動特定部１１１と、移動手段特定部１１２と、滞在路線特定部１１３と、経路判定部１１４と、発着地特定部１１５と、運賃特定部１１６と、が含まれる。記憶部１２０には、交通機関位置情報記憶部１２１と、定期区間情報記憶部１２２と、位置情報記憶部１２３と、行動情報記憶部１２４と、経路情報記憶部１２５と、が含まれる。
【００２５】
図２は、交通機関位置情報記憶部１２１に格納されるデータ構造を示す図である。交通機関位置情報記憶部１２１には、西端緯度１２１Ａと、東端緯度１２１Ｂと、北端経度１２１Ｃと、南端経度１２１Ｄと、交通機関名１２１Ｅと、路線１２１Ｆと、が対応付けられている。
【００２６】
西端緯度１２１Ａは、交通機関の施設について、西端の緯度を識別する情報である。東端緯度１２１Ｂは、交通機関の施設について、東端の緯度を識別する情報である。北端経度１２１Ｃは、交通機関の施設について、北端の経度を識別する情報である。南端経度１２１Ｄは、交通機関の施設について、南端の経度を識別する情報である。交通機関名１２１Ｅは、交通機関の駅の名称等を特定する情報である。路線１２１Ｆは、交通機関の路線を特定する情報である。
【００２７】
図３は、定期区間情報記憶部１２２に格納されるデータ構造を示す図である。定期区間情報記憶部１２２には、ユーザー識別子１２２Ａと、項番１２２Ｂと、交通機関名１２２Ｃと、路線１２２Ｄと、定期区間１２２Ｅと、が対応付けられている。
【００２８】
ユーザー識別子１２２Ａは、定期券のユーザーを識別する情報である。項番１２２Ｂは、定期区間に含まれる駅について、所定の順に付番した番号である。交通機関名１２２Ｃは、交通機関の駅の名称等を特定する情報である。路線１２２Ｄは、交通機関の路線を特定する情報である。定期区間１２２Ｅは、定期区間に含まれる駅であることを示す情報であり、さらに、望ましくは、定期区間の端の駅であるか否かを特定する情報が含まれる情報である。
【００２９】
図４は、位置情報記憶部１２３に格納されるデータ構造を示す図である。位置情報記憶部１２３は、ユーザー識別子１２３Ａと、時刻１２３Ｂと、緯度１２３Ｃと、経度１２３Ｄと、が対応付けられている。
【００３０】
ユーザー識別子１２３Ａは、ユーザーを識別する情報である。時刻１２３Ｂは、位置情報を得た時刻を特定する情報である。緯度１２３Ｃは、位置情報のうち、緯度を特定する情報である。経度１２３Ｄは、位置情報の内、経度を特定する情報である。
【００３１】
図５は、行動情報記憶部１２４に格納されるデータ構造を示す図である。行動情報記憶部１２４は、ユーザー識別子１２４Ａと、開始時刻１２４Ｂと、終了時刻１２４Ｃと、滞在場所１２４Ｄと、滞在路線１２４Ｅと、定期区間１２４Ｆと、移動距離１２４Ｇと、時速１２４Ｈと、移動手段１２４Ｊと、が対応付けられている。
【００３２】
ユーザー識別子１２４Ａは、ユーザーを識別する情報である。開始時刻１２４Ｂは、移動開始の時刻を特定する情報である。終了時刻１２４Ｃは、移動終了の時刻を特定する情報である。滞在場所１２４Ｄは、開始時刻１２４Ｂから終了時刻１２４Ｃまでの期間において滞在した場所を特定する情報である。滞在路線１２４Ｅは、滞在場所１２４Ｄが示す場所が交通機関である場合にその交通機関の路線を特定する情報である。定期区間１２４Ｆは、滞在場所１２４Ｄが示す場所が交通機関である場合に、当該滞在場所が定期区間内に含まれるか否か、含まれる場合には定期区間の端駅か否かを特定する情報である。移動距離１２４Ｇは、開始時刻１２４Ｂにより特定される時刻から終了時刻１２４Ｃにより特定される時刻までの間の移動距離を特定する情報である。時速１２４Ｈは、開始時刻１２４Ｂにより特定される時刻から終了時刻１２４Ｃにより特定される時刻までの間の平均の移動速度を時速で特定する情報である。移動手段１２４Ｊは、開始時刻１２４Ｂにより特定される時刻から終了時刻１２４Ｃにより特定される時刻までの間の移動手段を特定する情報である。
【００３３】
図６は、経路情報記憶部１２５に格納されるデータ構造を示す図である。経路情報記憶部１２５には、ユーザー識別子１２５Ａと、出発時刻１２５Ｂと、到着時刻１２５Ｃと、出発地１２５Ｄと、到着地１２５Ｅと、定期区間１２５Ｆと、経由駅１２５Ｇと、利用路線１２５Ｈと、運賃１２５Ｊと、が対応付けられている。
【００３４】
ユーザー識別子１２５Ａは、ユーザーを識別する情報である。出発時刻１２５Ｂは、出発地１２５Ｄを出発した時刻、すなわち出発地１２５Ｄを離れた時刻を特定する情報である。到着時刻１２５Ｃは、到着地１２５Ｅに到着した時刻、すなわち到着地１２５Ｅに到着した時刻を特定する情報である。出発地１２５Ｄは、移動を開始した所定の地点を特定する情報である。到着地１２５Ｅは、移動が中断あるいは終了した所定の地点を特定する情報である。定期区間１２５Ｆは、定期区間に含まれる駅であることを示す情報であり、さらに、望ましくは、定期区間の端の駅であるか否かを特定する情報が含まれる情報である。経由駅１２５Ｇは、出発地１２５Ｄから到着地１２５Ｅへ至る経路上で経由した所定の地点を特定する情報である。利用路線１２５Ｈは、利用した可能性のある路線を特定する情報である。運賃１２５Ｊは、出発地１２５Ｄから到着地１２５Ｅまでの移動に関して利用路線１２５Ｈにおける運賃を特定する情報である。
【００３５】
行動特定部１１１は、交通機関位置情報記憶部１２１と位置情報記憶部１２３とを照らし合わせて滞在場所、滞在路線（仮設定）を特定し、滞在場所と定期区間情報記憶部１２２とを照らし合わせて定期区間に含まれる滞在場所を特定する。また、行動特定部１１１は、移動距離と時速を特定し、行動情報記憶部１２４に格納する。
【００３６】
移動手段特定部１１２は、行動情報記憶部１２４の滞在場所１２４Ｄと移動手段判定用の閾値とを用いて、移動手段を特定し、行動情報記憶部１２４を更新する。
【００３７】
滞在路線特定部１１３は、判定対象路線に乗車した以前の滞在路線の情報を用いて滞在路線を設定し、行動情報記憶部１２４を更新する。
【００３８】
経路判定部１１４は、定期区間の特定を行うパラメータを設定し、発着地特定部１１５に、行動情報記憶部１２４を用いて定期区間分の経路情報記憶部１２５を作成させる。経路判定部１１４は、発着地特定部１１５に、定期区間外についても同様の処理を実行させ、定期区間外分の経路情報記憶部１２５を作成させる。
【００３９】
発着地特定部１１５は、行動情報記憶部１２４を用いて定期区間および定期区間外の経路情報記憶部１２５を作成する。
【００４０】
運賃特定部１１６は、運賃算出および運賃の設定を行い、出発時間順に昇順ソートを行い、経路情報記憶部１２５を更新して精算に必要な処理を行う。
【００４１】
通信部１３０は、ネットワーク１０を介して他の装置、例えば運賃精算装置１００との通信を行う。
【００４２】
利用者端末３００には、制御部３１０と、衛星電波受信部３２０と、通信部３３０と、位置情報記憶部３４０と、が含まれる。制御部３１０には、通信制御部３１１と、位置記録部３１２と、が含まれる。
【００４３】
通信制御部３１１は、通信部３３０を介して運賃精算装置１００との通信を制御する。例えば、通信制御部３１１は、位置情報を、運賃精算装置１００へ送信する。
【００４４】
位置記録部３１２は、衛星電波受信部３２０を介して人工衛星からの電波を受信し、衛星電波受信部３２０が備えられた利用者端末３００の位置および現在時刻を特定する。そして、位置記録部３１２は、位置情報記憶部３４０に、位置を特定した時刻と関連付けて記録する。
【００４５】
衛星電波受信部３２０は、ＧＰＳ、ＧＬＯＮＡＳＳ等の人工衛星から送信される所定の電波を受信する。
【００４６】
通信部３３０は、ネットワーク１０を介して他の装置、例えば運賃精算装置１００との通信を行う。
【００４７】
位置情報記憶部３４０は、位置情報を記憶する。位置情報は、時刻情報と、位置を特定する情報である座標とが関連付けられた情報である。
【００４８】
図７は、運賃精算装置１００のハードウェア構成例を示す図である。運賃精算装置１００は、演算装置１０２と、外部記憶装置１０３と、主記憶装置１０４と、出力装置１０５と、通信装置１０６と、各装置をつなぐバス１０７と、を少なくとも備える。また、他に、運賃精算装置１００は、入力装置１０１を備える。
【００４９】
演算装置１０２は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの演算装置である。
【００５０】
外部記憶装置１０３は、デジタル情報を記憶可能な、いわゆるハードディスク（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）あるいはフラッシュメモリなどの不揮発性記憶装置である。
【００５１】
主記憶装置１０４は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などのメモリ装置である。
【００５２】
出力装置１０５は、例えば液晶ディスプレイや、有機ＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ等の表示装置である。
【００５３】
通信装置１０６は、ネットワーク１０等を介して利用者端末３００等の他の装置と通信経路を確立し、情報を送受信するネットワークカード等の装置である。
【００５４】
入力装置１０１は、キーボードやマウス、タッチパネル等の各種入力装置である。
【００５５】
入力装置１０１と、演算装置１０２と、外部記憶装置１０３と、主記憶装置１０４と、出力装置１０５と、通信装置１０６とは、バス１０７等の接続導線により互いに接続される。
【００５６】
上記した運賃精算装置１００の行動特定部１１１と、移動手段特定部１１２と、滞在路線特定部１１３と、経路判定部１１４と、発着地特定部１１５と、運賃特定部１１６とは、演算装置１０２に処理を行わせるプログラムによって実現される。このプログラムは、主記憶装置１０４、外部記憶装置１０３または図示しないＲＯＭ装置内に記憶され、実行にあたって主記憶装置１０４上にロードされ、演算装置１０２により実行される。
【００５７】
また、運賃精算装置１００の記憶部１２０は、主記憶装置１０４及び外部記憶装置１０３により実現される。また、運賃精算装置１００の通信部１３０は、通信装置１０６により実現される。以上が、運賃精算装置１００のハードウェア構成例である。
【００５８】
図８は、利用者端末３００のハードウェア構成例を示す図である。利用者端末３００は、演算装置３０１と、主記憶装置３０２と、外部記憶装置３０３と、衛星電波受信装置３０４と、通信装置３０５と、入出力装置３０６と、各装置をつなぐバス３０７と、を少なくとも備える。
【００５９】
演算装置３０１は、例えばＣＰＵなどの演算装置である。
【００６０】
主記憶装置３０２は、例えばＲＡＭなどのメモリ装置である。
【００６１】
外部記憶装置３０３は、デジタル情報を記憶可能な、いわゆるハードディスクやＳＳＤあるいはフラッシュメモリなどの不揮発性記憶装置である。
【００６２】
衛星電波受信装置３０４は、ＧＰＳ、ＧＬＯＮＡＳＳのいずれか又は両方による衛星からの電波を受信して、利用者端末３００の位置を、座標により特定する。
【００６３】
通信装置３０５は、ネットワーク１０等を介して運賃精算装置１００等の他の装置と通信経路を確立し、情報を送受信するネットワークモジュール等の装置である。
【００６４】
入出力装置３０６は、例えば液晶ディスプレイや、有機ＥＬディスプレイ等の表示装置と、それらの表示装置に取り付けられ、あるいは組み込まれ、タッチされた位置を入力として受け付けるタッチパネル等の各種入力装置とを含む入力および出力処理を担う装置である。
【００６５】
演算装置３０１と、主記憶装置３０２と、外部記憶装置３０３と、衛星電波受信装置３０４と、通信装置３０５と、入出力装置３０６とは、バス３０７等の接続導線により互いに接続される。
【００６６】
上記した利用者端末３００の通信制御部３１１と、位置記録部３１２とは、演算装置３０１に処理を行わせるプログラムによって実現される。このプログラムは、主記憶装置３０２、外部記憶装置３０３または図示しないＲＯＭ装置内に記憶され、実行にあたって主記憶装置３０２上にロードされ、演算装置３０１により実行される。
【００６７】
また、利用者端末３００の通信部３３０は、通信装置３０５により実現される。また、利用者端末３００の衛星電波受信部３２０は、衛星電波受信装置３０４により実現される。また、利用者端末３００の位置情報記憶部３４０は、主記憶装置３０２および外部記憶装置３０３により実現される。以上が、利用者端末３００のハードウェア構成例である。
【００６８】
運賃精算装置１００、利用者端末３００のそれぞれの構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、１つの構成要素がさらに多くの処理を実行するように分類することもできる。
【００６９】
また、各制御部は、ハードウェア（ＡＳＩＣ、ＧＰＵなど）により構築されてもよい。また、各制御部の処理が一つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
【００７０】
[動作の説明]次に、本実施形態における旅費システム１の動作を説明する。
【００７１】
位置情報を利用した運賃精算処理では、運賃精算装置１００は、出張等の移動時において利用者端末３００の位置を定期的に（例えば、１分ごとに）記録した情報を用いて、利用した交通機関とその区間を特定し、運賃を算出して精算する。その際、利用者が使用可能な定期券により運賃を支払い済みの区間については、運賃から除外して精算する。
【００７２】
その処理の詳細については、後述するが、まず概要を説明する。運賃精算装置１００は、位置情報を一定間隔で発信する利用者端末３００から位置情報である座標（緯度経度）を取得し、ユーザーＩＤと位置情報を取得した時間とともに位置情報記憶部１２３に記録していく。
【００７３】
出張の終了後、利用者が旅費システム１の入力画面を表示する際には、まず、行動特定部１１１が、交通機関位置情報記憶部１２１と位置情報記憶部１２３とを照らし合わせて滞在場所、滞在路線（仮設定）を特定し、滞在場所と定期区間情報記憶部１２２とを照らし合わせて定期区間に含まれる滞在場所を特定する。そして、行動特定部１１１は、移動距離と時速を特定し、行動情報記憶部１２４に格納する。
【００７４】
次に、移動手段特定部１１２は、行動情報記憶部１２４の滞在場所の変化量から算出した移動速度と、移動手段の判定のための移動速度に関する所定の閾値とを用いて、移動手段を特定し、行動情報記憶部１２４を更新する。
【００７５】
次に、滞在路線特定部１１３は、判定対象路線に乗車した以前の滞在路線の情報を用いて滞在路線を設定し、行動情報記憶部１２４を更新する。
【００７６】
そして、経路判定部１１４は、定期区間の特定を行うパラメータを設定し、発着地特定部１１５に、行動情報記憶部１２４を用いて定期区間分の経路情報記憶部１２５を作成させる。経路判定部１１４は、発着地特定部１１５に、定期区間外についても同様の処理を実行させ、定期区間外分の経路情報記憶部１２５を作成させる。
【００７７】
その後、運賃特定部１１６は、運賃算出および運賃の設定を行い、出発時間順に昇順ソートを行い、経路情報記憶部１２５を更新して精算に必要な処理を行う。
【００７８】
図９は、本実施形態における旅費算出処理のフロー図である。旅費精算処理では、まず、行動特定部１１１は、ユーザー識別子と期間を受け付ける（ステップＳ００１）。具体的には、行動特定部１１１は、旅費を清算するユーザーを識別する情報であるユーザー識別子および清算する対象となる旅費が発生した期間を特定する情報を受け付ける。
【００７９】
そして、行動特定部１１１は、期間内の行動を特定する（ステップＳ００２）。具体的には、行動特定部１１１は、位置情報記憶部１２３を読み込んで、ステップＳ００１において受け付けたユーザー識別子により特定されるユーザーの、ステップＳ００１において受け付けた期間に含まれる情報を取得し、滞在場所と滞在路線を設定し、定期区間に含まれるか否かを特定し、移動距離および時速を算出し、これらの情報を行動情報記憶部１２４に格納する。このステップＳ００２の行動特定処理の詳細については、後述する。
【００８０】
そして、移動手段特定部１１２は、移動手段を特定する（ステップＳ００３）。具体的には、移動手段特定部１１２は、行動情報記憶部１２４の滞在場所、滞在路線の情報に応じて、移動手段が鉄道であるか、徒歩であるか、または鉄道以外であるか、を特定する。また、移動手段特定部１１２は、特定した移動手段の情報を用いて、行動情報記憶部１２４を更新する。すなわち、移動手段特定部１１２は、位置を特定する情報のうち直近前後の各駅が占める範囲に含まれる位置の情報と対応付けられている時刻の差分が所定の閾値を上回る場合には、当該位置の間の移動手段が鉄道ではないと判定することができるといえる。このステップＳ００３の移動手段特定処理の詳細については、後述する。
【００８１】
そして、滞在路線特定部１１３は、滞在路線を特定する（ステップＳ００４）。具体的には、滞在路線特定部１１３は、行動情報記憶部１２４のレコードについて、一つのレコードに複数の滞在路線の情報が含まれている場合には、いずれかの滞在路線に絞り込む。また、特定した滞在路線の情報を用いて、行動情報記憶部１２４を更新する。このステップＳ００４の滞在路線特定処理の詳細については、後述する。
【００８２】
そして、経路判定部１１４は、経路を判定する（ステップＳ００５）。具体的には、経路判定部１１４は、定期区間の特定を行うパラメータを設定し、発着地特定部１１５に、行動情報記憶部１２４のレコードのうち定期区間分の経路情報記憶部１２５を作成させる。また、経路判定部１１４は、発着地特定部１１５に、行動情報記憶部１２４のレコードのうち定期区間外についても同様の処理を実行させ、定期区間外分の経路情報記憶部１２５を作成させる。このステップＳ００５において行われる経路の判定のための経路特定処理の詳細については、後述する。
【００８３】
そして、経路判定部１１４は、経路の修正を受け付ける（ステップＳ００６）。具体的には、経路判定部１１４は、定期区間分の経路情報記憶部１２５および定期区間外分の経路情報記憶部１２５に関して特定した情報の修正内容を受け付ける。そして、修正内容により経路情報記憶部１２５を更新する。
【００８４】
そして、運賃特定部１１６は、旅費を算出する（ステップＳ００７）。具体的には、運賃特定部１１６は、定期区間内の運賃を０円あるいは所定の定期区間内の定められた基準に沿う金額として算出し、定期区間外の運賃については交通機関により定められた運賃の算出を行うことで、経路の運賃を特定する。
【００８５】
以上が、旅費算出処理のフローである。旅費精算処理によれば、利用者は、移動時に利用した交通機関に関する運賃の算出をより正確かつ迅速に、行うことができる。
【００８６】
図１０は、行動特定処理のフローを示す図である。行動特定処理は、旅費算出処理のステップＳ００２に相当する処理である。
【００８７】
まず、行動特定部１１１は、位置情報を用いて１レコードの開始時刻および終了時刻を設定する（ステップＳ１０１）。具体的には、まず、行動特定部１１１は、位置情報記憶部１２３のうち旅費算出処理の処理ステップＳ００１において読みこんだ情報から、旅費算出処理のステップＳ００１において受け付けたユーザー識別子により特定されるユーザーの、ステップＳ００１において受け付けた期間に含まれる情報を取得し、行動情報記憶部１２４にユーザー識別子１２４Ａにユーザー識別子を含むレコードを同数追加する。そして、行動特定部１１１は、行動情報記憶部１２４の追加した各レコードについて、開始時刻１２４Ｂに時刻１２３Ｂの情報を追加し、当該レコードの直前のレコードがある場合には、当該直前のレコードの終了時刻１２４Ｃにも同じ時刻１２３Ｂの情報を追加する。
【００８８】
そして、行動特定部１１１は、開始時刻から終了時刻の間の緯度経度が交通機関の駅内であれば滞在場所、滞在路線にそれぞれ交通機関名、滞在路線を設定する（ステップＳ１０２）。具体的には、行動特定部１１１は、交通機関位置情報記憶部１２１に規定される交通機関の駅を特定する座標内に位置情報記憶部１２３の緯度１２３Ｃおよび経度１２３Ｄのいずれもが含まれる場合には、当該レコードについて滞在場所１２４Ｄ、滞在路線１２４Ｅにそれぞれ交通機関名、滞在路線を設定する。
【００８９】
そして、行動特定部１１１は、定期区間の内外に応じ、定期区間情報を設定する（ステップＳ１０３）。具体的には、行動特定部１１１は、ステップＳ１０２において設定された滞在場所１２４Ｄがある場合には、その滞在場所と定期区間情報記憶部１２２の交通機関名１２２Ｃとを照らし合わせて、定期区間に含まれる場合には行動情報記憶部１２４の定期区間１２４Ｆに、定期区間の内部あるいは定期区間の端駅である旨を示す情報を設定する。
【００９０】
そして、行動特定部１１１は、移動距離および時速を算出する（ステップＳ１０４）。具体的には、行動特定部１１１は、行動情報記憶部１２４の開始時刻１２４Ｂと、終了時刻１２４Ｃと、のそれぞれの時刻における位置の緯度・経度差を用いて移動距離を算出し、移動距離１２４Ｇに設定する。そして、移動距離を、行動情報記憶部１２４の開始時刻１２４Ｂと、終了時刻１２４Ｃと、の差の時間で除すことで時速の算出を行い、行動情報記憶部１２４の時速１２４Ｈに設定する。
【００９１】
そして、行動特定部１１１は、位置情報記憶部１２３に、精算対象の期間に含まれる時刻情報を有する次のレコードがあるか否かを判定する（ステップＳ１０５）。レコードが無い場合（ステップＳ１０５にて「Ｎｏ」の場合）には、行動特定部１１１は、行動特定処理を終了させる。レコードが有る場合（ステップＳ１０５にて「Ｙｅｓ」の場合）には、行動特定部１１１は、制御をステップＳ１０１へ戻す。
【００９２】
以上が、行動特定処理のフローである。行動特定処理によれば、記録された位置情報を用いて、滞在していた駅と、路線と、その駅が定期区間内であるか否かと、移動距離および移動速度を特定することができる。
【００９３】
図１１は、移動手段特定処理のフローを示す図である。移動手段特定処理は、旅費算出処理のステップＳ００３において開始される。
【００９４】
まず、移動手段特定部１１２は、次レコードの滞在場所は交通機関外であるか否かを判定する（ステップＳ２０１）。具体的には、移動手段特定部１１２は、行動情報記憶部１２４の未処理のレコードの一つについて、滞在場所１２４Ｄは交通機関の駅の外であるか否かを判定する。
【００９５】
次レコードの滞在場所が交通機関外でない場合（ステップＳ２０１にて「Ｎｏ」の場合）には、移動手段特定部１１２は、移動手段は鉄道であると特定する（ステップＳ２０２）。そして、移動手段特定部１１２は、当該レコードの移動手段１２４Ｊに移動手段が鉄道であることを示す情報を格納する。そして、移動手段特定部１１２は、制御を後述するステップＳ２１１へ進める。
【００９６】
次レコードの滞在場所が交通機関外である場合（ステップＳ２０１にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、行動情報の前方後方の両方のレコードの滞在場所に駅を含むか否かを判定する（ステップＳ２０３）。
【００９７】
行動情報の前方後方の両方のレコードの滞在場所に駅を含む場合（ステップＳ２０３にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、行動情報の前方後方の直近の滞在路線は同一路線を含まないか否かを判定する（ステップＳ２０４）。
【００９８】
行動情報の前方後方の直近の滞在路線は同一路線を含まない場合（ステップＳ２０４にて、「Ｙｅｓ」の場合）には、移動手段特定部１１２は、行動情報の前方後方の直近の駅間の時間が駅間乗車閾値以下であるか否かを判定する（ステップＳ２０５）。
【００９９】
行動情報の前方後方の直近の駅間の時間が駅間乗車閾値以下である場合（ステップＳ２０５にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、前方後方の直近の駅間の乗り換えは改札の通過が不要であるか否かを判定する（ステップＳ２０６）。具体的には、移動手段特定部１１２は、記憶部１２０の図示しない領域に予め格納される駅の接続情報を用いて、前方後方の直近の駅間の乗り換えは改札の通過が不要であるか否かを判定する。
【０１００】
前方後方の直近の駅間の乗り換えは改札の通過が不要である場合（ステップＳ２０６にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、制御を上記したステップＳ２０２へ進め、移動手段を鉄道と判定する。
【０１０１】
行動情報の前方後方の直近の滞在路線は同一路線を含む場合（ステップＳ２０４にて「Ｎｏ」の場合）には、移動手段特定部１１２は、行動情報の前方後方の直近駅が同じか否かを判定する(ステップＳ２０７）。
【０１０２】
直近駅が同じでない場合（ステップＳ２０７にて「Ｎｏ」の場合）には、移動手段特定部１１２は、制御をステップＳ２０５へと進める。
【０１０３】
直近駅が同じ場合（ステップＳ２０７にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、制御をステップＳ２０８へと進める。
【０１０４】
行動情報の前方後方のレコードのいずれかの滞在場所に駅を含まない場合（ステップＳ２０３にて「Ｎｏ」の場合）、直近駅が同じ場合（ステップＳ２０７にて「Ｙｅｓ」の場合）、行動情報の前方後方の直近の駅間の時間が駅間乗車閾値以下でない場合（ステップＳ２０５にて「Ｎｏ」の場合）、あるいは前方後方の直近の駅間の乗り換えは改札の通過が不要でない場合（ステップＳ２０６にて「Ｎｏ」の場合）には、移動手段特定部１１２は、時速が所定の閾値を超えているか否かを判定する（ステップＳ２０８）。
【０１０５】
時速が所定の閾値を超えていない場合（ステップＳ２０８にて「Ｎｏ」の場合）には、移動手段特定部１１２は、移動手段は徒歩であると特定する（ステップＳ２０９）。そして、移動手段特定部１１２は、当該レコードの移動手段１２４Ｊに移動手段が徒歩であることを示す情報を格納する。そして、移動手段特定部１１２は、制御を後述するステップＳ２１１へ進める。
【０１０６】
時速が所定の閾値を超えている場合（ステップＳ２０８にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、移動手段は鉄道以外であると特定する（ステップＳ２１０）。そして、移動手段特定部１１２は、当該レコードの移動手段１２４Ｊに移動手段が鉄道以外であることを示す情報を格納する。そして、移動手段特定部１１２は、制御を後述するステップＳ２１１へ進める。
【０１０７】
移動手段が特定される（ステップＳ２０２により移動手段が鉄道であると特定されるか、ステップＳ２０９により移動手段が徒歩であると特定されるか、あるいはステップＳ２１０により移動手段が鉄道以外であると特定される）と、移動手段特定部１１２は、行動情報記憶部１２４に未処理の次のレコードが無いか否かを判定する（ステップＳ２１１）。未処理の次のレコードが有る場合には、移動手段特定部１１２は、制御をステップＳ２０１へ戻す。
【０１０８】
未処理の次のレコードが無い場合（ステップＳ２１１にて「Ｙｅｓ」の場合）には、移動手段特定部１１２は、移動手段特定処理を終了させる。
【０１０９】
以上が、移動手段特定処理のフローである。移動手段特定処理によれば、行動情報記憶部１２４に格納された行動の情報について、交通機関を用いた移動手段を用いた区間であるか否かを特定することができる。
【０１１０】
図１２は、滞在路線特定処理のフローを示す図である。滞在路線特定処理は、旅費算出処理のステップＳ００４に相当する処理である。
【０１１１】
まず、滞在路線特定部１１３は、ループ変数ｉの初期化を行う（ステップＳ３０１）。具体的には、滞在路線特定部１１３は、ループ変数ｉ（ｉは整数）を「１」で初期化する。
【０１１２】
そして、滞在路線特定部１１３は、対象レコードに複数の滞在路線の設定があるか否かを判定する（ステップＳ３０２）。具体的には、滞在路線特定部１１３は、行動情報記憶部１２４の開始時刻の早い順に未処理のレコードを対象レコードとして、対象レコードの滞在路線１２４Ｅに複数の路線が含まれているか否かを判定する。含まれていない場合には、滞在路線特定部１１３は、後述するステップＳ３０９へ制御を進める。
【０１１３】
対象レコードの滞在路線１２４Ｅに複数の路線が含まれている場合（ステップＳ３０２にて「Ｙｅｓ」の場合）には、滞在路線特定部１１３は、対象レコードのｉ個前に移動手段が鉄道であるレコードがあるか否かを判定する（ステップＳ３０３）。対象レコードのｉ個前に移動手段が鉄道であるレコードがない場合には、滞在路線特定部１１３は、後述するステップＳ３０９へ制御を進める。
【０１１４】
対象レコードのｉ個前に移動手段が鉄道であるレコードがある場合（ステップＳ３０３にて「Ｙｅｓ」の場合）には、滞在路線特定部１１３は、対象レコードのｉ個前のレコードには滞在路線の設定があるか否かを判定する（ステップＳ３０４）。対象レコードのｉ個前のレコードには滞在路線の設定がない場合には、滞在路線特定部１１３は、後述するステップＳ３０８へ制御を進める。
【０１１５】
対象レコードのｉ個前のレコードには滞在路線の設定がある場合（ステップＳ３０４にて「Ｙｅｓ」の場合）には、滞在路線特定部１１３は、対象レコードのｉ個前のレコードの滞在路線は、対象レコードの滞在路線と異なるか否かを判定する（ステップＳ３０５）。対象レコードのｉ個前のレコードの滞在路線が対象レコードの滞在路線と異ならない場合には、滞在路線特定部１１３は、後述するステップＳ３０９へ制御を進める。
【０１１６】
対象レコードのｉ個前のレコードの滞在路線が対象レコードの滞在路線と異なる場合（ステップＳ３０５にて「Ｙｅｓ」の場合）には、滞在路線特定部１１３は、対象レコードのｉ個前のレコードの滞在路線は、対象レコードの滞在路線と同一の路線を含むか否かを判定する（ステップＳ３０６）。対象レコードのｉ個前のレコードの滞在路線が対象レコードの滞在路線と同一の路線を含まない場合には、滞在路線特定部１１３は、後述するステップＳ３０９へ制御を進める。
【０１１７】
対象レコードのｉ個前のレコードの滞在路線が対象レコードの滞在路線と同一の路線を含む場合（ステップＳ３０６にて「Ｙｅｓ」の場合）には、滞在路線特定部１１３は、ｉ個前のレコードと対象レコードの共通路線を双方の滞在路線に設定する（ステップＳ３０７）。
【０１１８】
そして、滞在路線特定部１１３は、ｉをインクリメントして、制御をステップＳ３０３に戻す（ステップＳ３０８）。
【０１１９】
また、滞在路線特定部１１３は、ステップＳ３０２、Ｓ３０３、Ｓ３０５、Ｓ３０６のいずれかの判定において「Ｎｏ」となった場合には、対象レコードの次の未処理のレコードが存在するか否かを判定し（ステップＳ３０９）、無い場合には滞在路線特定処理を終了させる。
【０１２０】
対象レコードの次の未処理のレコードが存在する場合（ステップＳ３０９にて「Ｎｏ」の場合）には、滞在路線特定部１１３は、対象レコードを次のレコードへ変更する（ステップＳ３１０）。そして、制御をステップＳ３０１へ戻す。
【０１２１】
以上が、滞在路線特定処理のフローである。滞在路線特定処理によれば、滞在路線の候補が複数ある場合に、より以前の移動経路から路線を特定する。例えば、滞在路線の候補が複数ある場合とは、異なる路線が同一の線路を走行する乗り入れ区間等を移動する場合であるが、乗り入れ区間に進入する以前の路線が特定できれば、その乗り入れ区間についても路線を特定することができる。
【０１２２】
図１３は、経路特定処理のフローを示す図である。経路特定処理は、旅費算出処理のステップＳ００５に相当する処理である。また、経路特定処理は、図１４に示す発着地特定処理を内包する。
【０１２３】
まず、経路判定部１１４は、定期区間を特定する（ステップＳ４０１）。具体的には、経路判定部１１４は、行動情報記憶部１２４の定期区間１２４Ｆを参照し、定期区間に含まれるレコードを特定する。
【０１２４】
そして、経路判定部１１４は、定期範囲表示を設定する（ステップＳ４０２）。具体的には、経路判定部１１４は、ステップＳ４０１にて特定した定期区間に含まれるレコードのそれぞれに、定期区間内、定期区間外、定期区間内の定期区間の端駅のいずれかを区別可能に定期範囲表示として対応付けを行う。
【０１２５】
そして、経路判定部１１４は、発着地を特定する（ステップＳ４０３）。具体的には、経路判定部１１４は、行動情報記憶部１２４の定期区間を除いて、鉄道による移動区間についての運賃計算のための情報となる発着駅の特定を行う。発着地特定処理の詳細については、図１４および図１５を用いて後述する。
【０１２６】
そして、経路判定部１１４は、定期区間外を特定する（ステップＳ４０４）。具体的には、経路判定部１１４は、行動情報記憶部１２４の定期区間１２４Ｆを参照し、定期区間に含まれないレコードを特定する。
【０１２７】
そして、経路判定部１１４は、定期範囲表示を設定する（ステップＳ４０５）。具体的には、経路判定部１１４は、ステップＳ４０４にて特定した定期区間に含まれないレコードのそれぞれに、定期区間内、定期区間外、定期区間内の定期区間の端駅のいずれかを区別可能に定期範囲表示として対応付けを行う。
【０１２８】
そして、経路判定部１１４は、発着地を特定する（ステップＳ４０６）。具体的には、経路判定部１１４は、行動情報記憶部１２４の定期区間を除いて、鉄道による移動区間についての運賃計算のための情報となる発着駅の特定を行う。発着地特定処理の詳細については、図１４および図１５を用いて後述する。
【０１２９】
そして、運賃特定部１１６は、運賃を算出する（ステップＳ４０７）。具体的には、後述する図１６の処理を行う。
【０１３０】
そして、経路判定部１１４は、記録を時系列に整列させる（ステップＳ４０８）。具体的には、経路判定部１１４は、経路情報記憶部１２５の情報を時系列にソートする。
【０１３１】
以上が、経路特定処理のフローである。経路特定処理によれば、定期券を用いて移動した区間については運賃を所定の額とみなし、それ以外の区間については運賃を既定のとおり発着駅を特定することで、適切に旅程の運賃を算出することができる。
【０１３２】
図１４は、発着地特定処理のフローを示す図である。発着地特定処理は、経路特定処理のステップＳ４０３において実行される。
【０１３３】
まず、発着地特定部１１５は、行動情報の次レコードの移動手段が鉄道であるか否かを判定する（ステップＳ５０１）。具体的には、発着地特定部１１５は、行動情報記憶部１２４の未処理の先頭のレコードの移動手段１２４Ｊが鉄道を示すものであるか否かを判定する。鉄道ではない場合には、発着地特定部１１５は、後述するステップＳ５０６へ制御を進める。
【０１３４】
行動情報の次レコードの移動手段が鉄道である場合（ステップＳ５０１にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、行動情報の次レコードの滞在場所は駅であるか否かを判定する（ステップＳ５０２）。具体的には、発着地特定部１１５は、行動情報記憶部１２４の未処理の先頭のレコードの滞在場所１２４Ｄが駅を示すものであるか否かを判定する。駅ではない場合には、発着地特定部１１５は、後述するステップＳ５０５へ制御を進める。
【０１３５】
行動情報の次レコードの滞在場所が駅である場合（ステップＳ５０２にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、当該駅が定期区間内であるか否かを判定する（ステップＳ５０３）。具体的には、発着地特定部１１５は、行動情報記憶部１２４の未処理の先頭のレコードの滞在場所１２４Ｄが定期区間内を示すものであるか否かを判定する。定期区間内ではない場合には、発着地特定部１１５は、後述するステップＳ５０６へ制御を進める。
【０１３６】
行動情報の次レコードの滞在場所の駅が定期区間内である場合（ステップＳ５０３にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、発着地設定処理を行う（ステップＳ５０４）。具体的には、発着地特定部１１５は、行動情報記憶部１２４の未処理の先頭のレコードを対象として、図１５に示す発着地設定処理を行う。発着地設定処理の詳細に関しては、後述する。
【０１３７】
そして、発着地特定部１１５は、行動情報の次レコードが無いか否かを判定する（ステップＳ５０５）。具体的には、発着地特定部１１５は、行動情報記憶部１２４に、未処理のレコードが残っているか否かを判定する。行動情報の次レコードが無い（ステップＳ５０５にて「Ｙｅｓ」の場合）場合には、発着地特定部１１５は発着地特定処理を終了させる。次レコードがある場合（ステップＳ５０５にて「Ｎｏ」の場合）には、発着地特定部１１５は、制御をステップＳ５０１へ戻す。
【０１３８】
行動情報の次レコードの移動手段が鉄道でない場合（ステップＳ５０１にて「Ｎｏ」の場合）または行動情報の次レコードの滞在場所は定期区間内にない駅である場合（ステップＳ５０３にて「Ｎｏ」の場合）には、発着地特定部１１５は、経路情報の現レコードが設定済みであるか否かを判定する（ステップＳ５０６）。具体的には、発着地特定部１１５は、経路情報記憶部１２５に、出発時刻、到着時刻、出発地、到着地のいずれかを設定済みのレコードが格納済みであるか否かを判定する。設定済みのレコードが格納済みでない場合には、発着地特定部１１５は、制御をステップＳ５０５へ進める。
【０１３９】
経路情報の現レコードが設定済みである場合（ステップＳ５０６にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、設定済みの経路情報記憶部１２５の対象レコードを、次のレコードへと進める（ステップＳ５０７）。そして、発着地特定部１１５は、制御をステップＳ５０５へ進める。
【０１４０】
以上が、発着地特定処理のフローである。発着地特定処理によれば、鉄道の定期区間内の駅の情報が行動情報内に含まれる場合に、発着地設定を行うことができる。
【０１４１】
図１５は、発着地設定処理のフローである。発着地設定処理は、発着地特定処理のステップＳ５０４において実行される。
【０１４２】
まず、発着地特定部１１５は、経路情報に出発地が設定されているか否かを判定する（ステップＳ５０４１）。具体的には、発着地特定部１１５は、対象となる経路情報記憶部１２５のレコード（発着地特定処理において処理対象となっているレコード）について、出発地１２５Ｄの情報が格納されているか否かを判定する。格納されていない場合には、発着地特定部１１５は、後述するステップＳ５０４６へ制御を進める。
【０１４３】
経路情報に出発地が設定されている場合（ステップＳ５０４１にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、行動情報の滞在路線は経路情報の利用路線に含まれるか否かを判定する（ステップＳ５０４２）。具体的には、発着地特定部１１５は、行動情報記憶部１２４の対象レコードの滞在路線１２４Ｅにより特定される路線は、経路情報記憶部１２５の対象レコードの利用路線１２５Ｈに含まれる路線のいずれかと同一か否かを判定する。利用路線に含まれる場合（ステップＳ５０４２にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、後述するステップＳ５０４８へ制御を進める。
【０１４４】
利用路線に含まれない場合（ステップＳ５０４２にて「Ｎｏ」の場合）には、発着地特定部１１５は、行動情報の滞在路線と経路情報の利用路線は改札内乗り換えが可能であるか否かを判定する（ステップＳ５０４３）。
【０１４５】
改札内乗り換えが可能である場合（ステップＳ５０４３にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、行動情報の到着地、開始時刻、滞在場所、滞在路線のそれぞれを、経路情報の経由駅、到着時刻、到着地、利用路線に格納する（ステップＳ５０４４）。なお、発着地特定部１１５は、経路情報の利用路線については、行動情報の滞在路線を追加して格納する。
【０１４６】
改札内乗り換えが可能でない場合（ステップＳ５０４３にて「Ｎｏ」の場合）には、発着地特定部１１５は経路情報の対象レコードを次のレコードに進める（ステップＳ５０４５）。そして、発着地特定部１１５は、制御をステップＳ５０４１へ戻す。
【０１４７】
経路情報に出発地が設定されていない場合（ステップＳ５０４１にて「Ｎｏ」の場合）には、発着地特定部１１５は、経路情報の定期区間に区間内であることを示す情報を格納し、行動情報の滞在路線を、経路情報の利用路線に格納する（ステップＳ５０４６）。
【０１４８】
そして、発着地特定部１１５は、行動情報の終了時刻、滞在場所をそれぞれ経路情報の出発時刻・到着時刻、出発地・到着地に格納する（ステップＳ５０４７）。
【０１４９】
また、行動情報滞在路線は経由情報の利用路線に含まれる場合（ステップＳ５０４２にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、行動情報の滞在場所は経路情報の出発地と異なるか否かを判定する（ステップＳ５０４８）。異ならない場合には、発着地特定部１１５は、ステップＳ５０４７へ制御を進める。
【０１５０】
行動情報の滞在場所は経路情報の出発地と異なる場合（ステップＳ５０４８にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、行動情報の滞在場所は経路情報の到着地と異なるか否かを判定する（ステップＳ５０４９）。経路情報の到着地と異ならない場合（ステップＳ５０４９にて「Ｎｏ」の場合）には、発着地特定部１１５は、出発地設定処理を終了させる。
【０１５１】
行動情報の滞在場所は経路情報の到着地と異なる場合（ステップＳ５０４９にて「Ｙｅｓ」の場合）には、発着地特定部１１５は、行動情報の開始時刻、滞在場所をそれぞれ、経路情報の到着時刻、到着地に格納する（ステップＳ５０５０）
【０１５２】
以上が、発着地設定処理のフローである。発着地設定処理によれば、経路情報記憶部１２５を生成し、出発地と出発時刻、到着地と到着時刻を設定することができる。
【０１５３】
図１６は、運賃特定処理のフローを示す図である。運賃特定処理は、経路特定処理のステップＳ４０７において実行される。
【０１５４】
まず、運賃特定部１１６は、経路情報の区間は定期区間内か否かを判定する(ステップＳ６０１)。具体的には、運賃特定部１１６は、経路情報記憶部１２５の処理対象のレコードのうち未処理のレコードを対象レコードとして、対象レコードの定期区間１２５Ｆが、利用者の定期券の区間内に含まれることを示す情報であるか否かを判定する。
【０１５５】
経路情報の区間が定期区間内である場合（ステップＳ６０１にて「Ｙｅｓ」の場合）には、運賃特定部１１６は、当該経路情報の運賃を０円に設定する（ステップＳ６０２）。具体的には、運賃特定部１１６は、ステップＳ６０１にて定期区間内であると判定したレコードに関して、当該区間の運賃１２５Ｊには、定期券購入時に予め定められた金額である「０円」を格納する。なお、定期券購入時に予め定められた金額が「０円」ではない場合には、予め定められた金額を格納する。
【０１５６】
そして、運賃特定部１１６は、経路情報に次レコードが無いか否かを判定する（ステップＳ６０３）。具体的には、運賃特定部１１６は、経路情報記憶部１２５の対象レコードの次の未処理のレコードが存在するか否かを判定する。次レコードが無い場合には、運賃特定部１１６は、滞在路線特定処理を終了させる。
【０１５７】
対象レコードの次の未処理のレコードが存在する場合（ステップＳ６０３にて「Ｎｏ」の場合）には、運賃特定部１１６は、経路情報の対象レコードを次のレコードへ変更する（ステップＳ６０４）。そして、制御をステップＳ６０１へ戻す。
【０１５８】
経路情報の区間が定期区間内でない場合（ステップＳ６０１にて「Ｎｏ」の場合）には、運賃特定部１１６は、当該経路情報の運賃を、経路情報の出発地、到着地、経由駅、利用路線の情報を用いて算出し、設定する（ステップＳ６０５）。そして、運賃特定部１１６は、制御をステップＳ６０３へ進める。
【０１５９】
以上が、運賃特定処理のフローである。運賃特定処理によれば、定期券の区間内にある移動については、運賃を所定の金額に設定し、区間外にある移動については、正規の運賃を算出して設定することで、旅程の運賃を算出することができる。
【０１６０】
以上、本発明に係る第一の実施形態を適用した旅費システム１について説明した。当該実施形態によると、利用者は、交通費を適切に精算することができる。
【０１６１】
本発明は、上記の第一の実施形態に制限されない。上記の第一の実施形態は、本発明の技術的思想の範囲内で様々な変形が可能である。例えば、上記の第一の実施形態においては、利用者端末３００と運賃精算装置１００とは、無線通信等により位置情報等の授受を行っているが、これに限られない。例えば、有線通信であってもよいし、記憶媒体を介した授受であってもよい。また、直接的な通信に限られず、電子メールやチャット、ホームページ、ウェブログ、ＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋ  Ｓｅｒｖｉｃｅ）等の通信による授受であってもよい。
【０１６２】
また例えば、利用者端末３００は、上記の第一の実施形態においては、スマートフォン等の多機能端末を想定しているが、これに限られない。例えば、単体動作可能なＧＰＳロガー装置による位置情報を用いるものであってもよい。このようにすることで、より正確精度高く利用者端末３００の位置を取得することができる。
【０１６３】
また、上記した実施形態の技術的要素は、単独で適用されてもよいし、プログラム部品とハードウェア部品のような複数の部分に分けられて適用されるようにしてもよい。
【０１６４】
以上、本発明について、実施形態を中心に説明した。
【符号の説明】
【０１６５】
１・・・旅費システム、１０・・・ネットワーク、１００・・・運賃精算装置、１１０・・・制御部、１１１・・・行動特定部、１１２・・・移動手段特定部、１１３・・・滞在路線特定部、１１４・・・経路判定部、１１５・・・発着地特定部、１１６・・・運賃特定部、１２０・・・記憶部、１２１・・・交通機関位置情報記憶部、１２２・・・定期区間情報記憶部、１２３・・・位置情報記憶部、１２４・・・行動情報記憶部、１２５・・経路情報記憶部、１３０・・・通信部、３００・・・利用者端末、３１０・・・制御部、３１１・・・通信制御部、３１２・・・位置記録部、３２０・・・衛星電波受信部、３３０・・・通信部、３４０・・・位置情報記憶部
【図１】
2017016559.tif 000003
【図２】
2017016559.tif 000004
【図３】
2017016559.tif 000005
【図４】
2017016559.tif 000006
【図５】
2017016559.tif 000007
【図６】
2017016559.tif 000008
【図７】
2017016559.tif 000009
【図８】
2017016559.tif 000010
【図９】
2017016559.tif 000011
【図１０】
2017016559.tif 000012
【図１１】
2017016559.tif 000013
【図１２】
2017016559.tif 000014
【図１３】
2017016559.tif 000015
【図１４】
2017016559.tif 000016
【図１５】
2017016559.tif 000017
【図１６】
2017016559.tif 000018