(57)【要約】【課題】運賃の金額の算出をともなう駅務処理の処理効率が低下するのを防止する技術を提供する。【解決手段】サーバ選択機能部２０ｃは、ネットワークを介してデータ通信可能に接続された複数の精算判定サーバ１の中から、運賃の金額の算出を要求する上位サーバを選択する。運賃算出要求機能部２０ａは、サーバ選択機能部２０ｃが選択した上位サーバに対して、運賃の金額の算出を要求する。精算処理機能部２０ｂは、運賃算出要求機能部２０ａが運賃の金額の算出を要求した上位サーバにおいて算出された運賃の金額を用いて運賃の精算を実行する。【選択図】図３
2019046353.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してデータ通信可能に接続された複数の上位サーバの中から、運賃の金額の算出を要求する上位サーバを選択するサーバ選択部と、
前記サーバ選択部が選択した前記上位サーバに対して、運賃の金額の算出を要求する運賃算出要求部と、
前記運賃算出要求部が運賃の金額の算出を要求した前記上位サーバにおいて算出された運賃の金額を用いて運賃の精算を実行する精算処理部と、を備えた駅務機器。
【請求項２】
時間帯と、前記上位サーバとを対応付けた接続先テーブルを記憶する接続先テーブル記憶部を備え、
前記サーバ選択部は、前記接続先テーブルに基づいて、前記上位サーバの選択を行う、請求項１に記載の駅務機器。
【請求項３】
前記上位サーバ毎に、前記運賃算出要求部による運賃の金額の算出にかかる要求が許容されているかどうかを登録した許容テーブルを記憶する許容テーブル記憶部を備え、
前記サーバ選択部は、前記許容テーブルにおいて、前記運賃算出要求部による運賃の金額の算出にかかる要求が許容されている前記上位サーバの中から、運賃の金額の算出を要求する上位サーバを選択する、請求項１、または２に記載の駅務機器。
【請求項４】
いずれかの前記上位サーバから前記運賃算出要求部による運賃の金額の算出にかかる要求を許容するかどうかについての通知を受信すると、その上位サーバについて前記許容テーブルの登録を更新する許容テーブル更新部を備えた、請求項３に記載の駅務機器。
【請求項５】
請求項１〜４のいずれかに記載の複数の駅務機器と、複数の前記上位サーバと、をネットワークを介してデータ通信可能に接続した駅務システムであって、
前記上位サーバは、運賃の金額を算出する運賃算出部を備えている、駅務システム。
【請求項６】
請求項４に記載の複数の駅務機器と、複数の前記上位サーバと、をネットワークを介してデータ通信可能に接続した駅務システムであって、
前記上位サーバは、
運賃の金額を算出する運賃算出部と、
運賃の金額の算出にかかる負荷の大きさが第１の大きさを越えると、一部の前記駅務機器に対して前記運賃算出要求部による運賃の金額の算出にかかる要求を許容しない旨の通知を行い、運賃の金額の算出にかかる負荷の大きさが前記第１の大きさよりも小さい第２の大きさを下回ると、前記駅務機器に対して前記運賃算出要求部による運賃の金額の算出にかかる要求を許容する旨の通知を行う許容通知部と、
を備えている、駅務システム。
【請求項７】
前記上位サーバの前記運賃算出部は、運賃の金額の算出を第１のロジックで処理するとともに、前記第１のロジックとは異なる第２のロジックで処理し、これらの処理結果が一致していなければ、利用者に対して運賃の精算が適正に行えないと判定する、請求項５、または６に記載の駅務システム。
【請求項８】
駅務機器の制御部が、
ネットワークを介してデータ通信可能に接続された複数の上位サーバの中から、運賃の金額の算出を要求する上位サーバを選択するサーバ選択ステップと、
前記サーバ選択ステップで選択した前記上位サーバに対して、運賃の金額の算出を要求する運賃算出要求ステップと、
前記運賃算出要求ステップが運賃の金額の算出を要求した前記上位サーバにおいて算出された運賃の金額を用いて運賃の精算を実行する精算処理ステップと、
を実行する精算処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、列車の利用者に対して運賃を精算する技術に関する。
【背景技術】
【０００２】
従来、駅構内に入場する利用者や、駅構内から出場する利用者に対する改札処理を、改札口に設置した自動改札機で行っている。自動改札機は、駅構内から出場する利用者の乗車券がプリペイド式の乗車券である場合、その利用者に対して乗車駅から降車駅までの運賃を精算する。
【０００３】
また、多くの駅は、複数の自動改札機を改札口に設置し、改札口が混雑するのを抑制している。改札システムの構築にかかるコストを安価にするため、乗車駅から降車駅までの運賃を算出する構成を自動改札機ではなく、サーバに設けることが提案されている（例えば、特許文献１参照）。この改札システムは、複数台の自動改札機をサーバに接続している。サーバは、接続されているいずれかの自動改札機から要求を受信すると、この要求に含まれている乗車券情報（自動改札機が乗車券から読み取った情報）を用いて乗車駅から降車駅までの運賃の金額の算出等にかかる処理を行う。そして、サーバは、要求を送信してきた自動改札機に対して処理結果を送信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−  １８５０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１は、サーバが接続されている複数台の自動改札機に代わって運賃の金額の算出等にかかる処理を実行する構成である。サーバの処理負荷は、単位時間当たりにおける、自動改札機からの運賃の金額の算出等にかかる処理の要求数が多くなるにつれて大きくなる。サーバは、処理負荷が大きくなるにつれて、自動改札機から要求された運賃の金額の算出等にかかる処理を実行し、その処理結果を自動改札機に送信するまでに要する時間が長くなる。したがって、サーバの処理負荷の増大は、自動改札機が改札処理に要する時間を長くし、自動改札機における改札処理の処理効率を低下させる。
【０００６】
複数のサーバを備えるシステムでは、各サーバの処理負荷は、サーバ間で均一でない。すなわち、処理負荷が比較的大きいサーバと、処理負荷が比較的小さいサーバとが混在する。また、各サーバは、処理負荷が一定ではなく、時間経過にともなって変動する。
【０００７】
この発明の目的は、運賃の金額の算出をともなう駅務処理の処理効率が低下するのを防止する技術を提供することにある。
【課題を解決するための手段】
【０００８】
この発明の駅務機器は、上記目的を達するために、以下のように構成している。
【０００９】
この発明にかかる駅務機器は、サーバ選択部が、ネットワークを介してデータ通信可能に接続された複数の上位サーバの中から、運賃の金額の算出を要求する上位サーバを選択する。また、運賃算出要求部が、サーバ選択部が選択した上位サーバに対して、運賃の金額の算出を要求する。そして、精算処理部が、運賃算出要求部が運賃の金額の算出を要求した上位サーバにおいて算出された運賃の金額を用いて運賃の精算を実行する。
【００１０】
この構成では、指示対象サーバ選択部が、運賃の金額の算出要求が複数の上位サーバに分散するように（運賃の金額の算出要求が特定の上位サーバに分散するように）、上位サーバを選択することで、上位サーバが過負荷になるのを抑えられる。
【００１１】
例えば、接続先テーブル記憶部に、時間帯と、上位サーバとを対応付けた接続先テーブルを記憶させておき、サーバ選択部が接続先テーブルに基づいて上位サーバの選択を行う構成にすればよい。すなわち、運賃の金額の算出要求を複数の上位サーバに分散させることができる接続先テーブルを作成することで、指示対象サーバ選択部が、運賃の金額の算出要求が複数の上位サーバに分散するように（運賃の金額の算出要求が特定の上位サーバに分散するように）、上位サーバを選択することができる。
【００１２】
また、上位サーバ毎に、運賃算出要求部による運賃の金額の算出にかかる要求が許容されているかどうかを登録した許容テーブルを許容テーブル記憶部に記憶させ、サーバ選択部が、許容テーブルにおいて、運賃算出要求部による運賃の金額の算出にかかる要求が許容されている上位サーバの中から、運賃の金額の算出を要求する上位サーバを選択する、構成にしてもよい。このように構成すれば、運賃の金額の算出にかかる処理の負荷が大きい上位サーバに対する運賃の金額の算出要求を抑えることができ、結果的に、運賃の金額の算出要求を複数の上位サーバに分散させることができる。
【００１３】
特に、この構成では、いずれかの上位サーバから運賃算出要求部による運賃の金額の算出にかかる要求を許容するかどうかについての通知を受信すると、その上位サーバについて許容テーブルの登録を更新する許容テーブル更新部を備えるのが好ましい。
【００１４】
また、上記駅務機器を用いることで、複数の駅務機器と、複数の上位サーバと、をネットワークを介してデータ通信可能に接続した駅務システムにおいて、運賃の金額の算出をともなう駅務処理の処理効率が低下するのを防止できる。
【発明の効果】
【００１５】
この発明によれば、運賃の金額の算出をともなう駅務処理の処理効率の低下を防止できる。
【図面の簡単な説明】
【００１６】
【図１】この例にかかる駅務システムを示す概略図である。
【図２】精算判定サーバの主要部の構成を示すブロック図である。
【図３】自動改札機の主要部の構成を示すブロック図である。
【図４】接続先テーブルを示す図である。
【図５】精算判定サーバの動作を示すフローチャートである。
【図６】駅構内から出場する利用者に対する自動改札機の動作を示すフローチャートである。
【図７】図７（Ａ）、（Ｂ）は、駅務機器における運賃の金額の算出要求の送信先である精算判定サーバを示す図である。
【図８】図８（Ａ）、（Ｂ）は、駅務機器における運賃の金額の算出要求の送信先である精算判定サーバを示す図である。
【図９】別の例にかかる精算判定サーバの動作を示すフローチャートである。
【図１０】別の例にかかる駅構内から出場する利用者に対する自動改札機の動作を示すフローチャートである。
【図１１】別の例にかかる精算判定サーバの主要部の構成を示すブロック図である。
【図１２】別の例にかかる自動改札機の主要部の構成を示すブロック図である。
【図１３】精算判定サーバにおける負荷状態判定処理を示すフローチャートである。
【図１４】許容テーブル更新処理を示すフローチャートである。
【図１５】精算判定サーバ選択処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、この発明の実施形態である駅務システムについて説明する。
【００１８】
図１は、この例にかかる駅務システムを示す概略図である。この駅務システムは、統括サーバ４と、複数の精算判定サーバ１と、複数の駅務機器とを備えている。ここで言う駅務機器は、駅務で使用される自動改札機２、精算機３、券売機（不図示）、係員端末（不図示）等の各種機器の総称である。この駅務システムでは、駅務機器が端末であり、精算判定サーバ１がエッジサーバとして機能し、統括サーバ４がセンタサーバとして機能する。統括サーバ４は、鉄道会社のセンタに設置される。精算判定サーバ１は、駅等に設置される。統括サーバ４には、複数の精算判定サーバ１（１Ａ、１Ｂ、１Ｃ）がネットワークを介してデータ通信可能に接続される。また、精算判定サーバ１には、比較的近い位置にある駅務機器（例えば、同じ駅や、隣接する駅等に設置されている駅務機器）がネットワークを介してデータ通信可能に接続されている。精算判定サーバ１は、ネットワークを介して複数の駅務機器とデータ通信可能であり、また各駅務機器もネットワークを介して複数の精算判定サーバ１とデータ通信可能である。
【００１９】
図１では、３つの精算判定サーバ１（１Ａ、１Ｂ、１Ｃ）を図示したが、精算判定サーバ１の台数は３つに限らない。以下の説明では、特に区別しない場合、精算判定サーバ１と表記し、区別する場合に精算判定サーバ１Ａ、１Ｂ、１Ｃと表記する。
【００２０】
なお、この駅務システムは、運賃の金額の算出をともなう駅務処理を行う駅務機器（例えば自動改札機２、精算機３）を精算判定サーバ１にデータ通信可能に接続し、運賃の金額の算出をともなう駅務処理を行わない駅務機器（例えば、券売機）を精算判定サーバ１にデータ通信可能に接続しない構成にしてもよい。このように構成すれば、精算判定サーバ１は、運賃の金額の算出をともなう駅務処理を行わない駅務機器とデータ通信を行わないので、精算判定サーバ１のデータ通信にかかる処理負荷を低減できる。
【００２１】
また、この駅務システムは、運賃の金額の算出をともなう駅務処理を行う駅務機器であっても、駅務機器の性質上、迅速な処理が要求される自動改札機２を精算判定サーバ１にデータ通信可能に接続し、迅速な処理が要求されない精算機３については精算判定サーバ１にデータ通信可能に接続しない構成にしてもよい。このように構成すれば、精算判定サーバ１のデータ通信にかかる処理負荷を一層低減できる。精算判定サーバ１にデータ通信可能に接続しない駅務機器は、ネットワークを介して統括サーバ４に直接接続してもよいし、精算判定サーバ１以外のエッジサーバ（不図示）であって、ネットワークを介して統括サーバ４に接続したエッジサーバに接続してもよい。すなわち、精算判定サーバ１にデータ通信可能に接続しない駅務機器については、実行した駅務処理のログデータを統括サーバ４にアップロードできる構成であれば、どのような構成であってもよい。精算判定サーバ１にデータ通信可能に接続しない駅務機器については、必要に応じて運賃を算出する構成を自機に備えてもよいし、統括サーバ４に備えてもよい。
【００２２】
統括サーバ４は、各駅務機器において処理された駅務処理の処理結果（ログ）を集計し、管理する。統括サーバ４は、精算判定サーバ１にデータ通信可能に接続されている駅務機器において処理された駅務処理の処理結果を精算判定サーバ１から取得する。また、統括サーバ４は、精算判定サーバ１に接続されていない駅務機器において処理された駅務処理の処理結果を、その駅務機器から直接、またはその駅務機器が接続されているエッジサーバ（精算判定サーバ１以外のエッジサーバ）から取得する。
【００２３】
精算判定サーバ１は、駅務機器から送信されてきた運賃の金額の算出にかかる指示を受信すると、列車の利用にかかる運賃（乗車駅から降車駅までの運賃）の金額を算出する。また、精算判定サーバ１は、運賃の精算が適正に行えるかどうかを判定する。精算判定サーバ１は、運賃の精算が適正に行えると判定した場合、運賃の精算が適正に行えること、および算出した運賃の金額を駅務機器に返信する。また、精算判定サーバ１は、運賃の精算が適正に行えないと判定した場合、運賃の精算が適正に行えないことを駅務機器に返信する。精算判定サーバ１は、運賃の精算が適正に行えない場合、算出した運賃の金額を駅務機器に通知してもよいし、通知しなくてもよい。精算判定サーバ１と駅務機器とをデータ通信可能に接続するネットワークのトラフィックの増大を抑える観点から、運賃の精算が適正に行えない場合、精算判定サーバ１は算出した運賃の金額を駅務機器に通知しない構成にするのが好ましい。
【００２４】
また、精算判定サーバ１は、データ通信可能に接続されている駅務機器で処理された駅務処理のログを蓄積的に記憶するとともに、適当なタイミングで記憶している駅務処理のログを統括サーバ４にアップロードする。
【００２５】
自動改札機２は、駅の改札口に設置され、改札通路における利用者の通行を制限する。また、精算機３は、駅の改札口の駅構内側に設置され、利用者が所持するキップ等の乗車券を受け付け、利用者に対して運賃の精算を行う。
【００２６】
なお、券売機は、利用者に対するキップ等の乗車券の発券を行う。係員端末は、駅係員による入力操作に応じた駅務処理を行う。駅係員は、係員端末において、利用者の要求に応じた駅務処理の実行にかかる入力操作を行う。自動改札機２、精算機３、および係員端末が、運賃の金額の算出をともなう駅務処理を行う。券売機は、運賃の金額の算出をともなう駅務処理を行わない。すなわち、この例では、自動改札機２、精算機３、および係員端末が、この発明で言う駅務機器に属し、券売機がこの発明で言う駅務機器に属さない。
【００２７】
図２は、精算判定サーバの主要部の構成を示すブロック図である。精算判定サーバ１は、制御ユニット１０と、通信ユニット１２と、ログデータ記憶ＤＢ１３とを備えている。
【００２８】
制御ユニット１０は、精算判定サーバ１本体の動作を制御する。また、制御ユニット１０は、乗車駅から降車駅までの運賃を算出する運賃算出部１１を有している。運賃算出部１１は、第１の運賃算出機能１１ａと、第２の運賃算出機能１１ｂと、判定機能１１ｃとを有している。
【００２９】
第１の運賃算出機能１１ａは、乗車駅から降車駅までの運賃の金額を第１のロジックでプログラムされた第１のプログラムで算出する。第２の運賃算出機能１１ｂは、乗車駅から降車駅までの運賃の金額を第１のロジックとは異なる第２のロジックでプログラミングされた第２のプログラムで算出する。判定機能１１ｃは、第１の運賃算出機能１１ａが算出した乗車駅から降車駅までの運賃の金額と、第２の運賃算出機能１１ｂが算出した乗車駅から降車駅までの運賃の金額とを比較し、運賃の精算が適正に行えるかどうかを判定する。
【００３０】
通信ユニット１２は、ネットワークを介してデータ通信可能に接続されている駅務機器や統括サーバ４との間におけるデータ通信を制御する。
【００３１】
ログデータ記憶ＤＢ１３は、データ通信可能に接続されている駅務機器で行われた駅務処理のログを記憶する。精算判定サーバ１は、適当なタイミングで、ログデータ記憶ＤＢ１３に記憶している駅務処理のログデータを統括サーバ４にアップロードする。この適当なタイミングは、例えば１日の列車の運行が完了してから、翌日の列車の運行が開始されるまでの期間（列車の運行時を避けたタイミング）に設定し、精算判定サーバ１の処理負荷を分散するのが好ましい。
【００３２】
図３は、自動改札機の主要部の構成を示すブロック図である。自動改札機２は、制御部２０と、接続先テーブル記憶部２１と、ＩＣカード読取部２２と、磁気券読取部２３と、利用者検知部２４と、表示部２５と、扉開閉部２６と、通信部２７と、を備えている。
【００３３】
制御部２０は、自動改札機２本体各部の動作を制御する。接続先テーブル記憶部２１は、図４に示す接続先テーブル２１ａを記憶する。図４に示すように、接続先テーブル２１ａは、時間帯毎に、いずれかの精算判定サーバ１を対応づけたものである。図４に示す接続先テーブル２１ａは、１分間隔で区切った時間帯毎に、いずれかの精算判定サーバ１を対応付けたものである。
【００３４】
なお、接続先テーブル２１ａにおける、時間帯の区切りの長さは、例示した１分間隔に限るものではなく、２分や５分や１０分等の間隔であってもよい。また、この時間帯の区切りの長さは、一定の時間間隔でなくてもよい。
【００３５】
接続先テーブル２１ａは、自動改札機２（駅務機器）毎に生成される。したがって、記憶している接続先テーブル２１ａの内容が同じである自動改札機２の組合せもあれば、接続先テーブル２１ａの内容が同じでない（異なっている）自動改札機２の組合せもある。接続先テーブル２１ａは、各精算判定サーバ１のスペックが同じである場合、時間帯毎に、単位時間当たりにおける運賃の金額の算出要求数が精算判定サーバ１間で略等しくなるように設定したものである。すなわち、接続先テーブル２１ａは、時間帯毎に、精算判定サーバ１の処理負荷が略等しくなるように（精算判定サーバ１における運賃の金額の算出にかかる処理時間が略等しくなるように）生成したものである。運賃の金額の算出要求とは、自動改札機２等の駅務機器が、精算判定サーバ１に送信する列車の利用にかかる運賃の金額の算出要求である。
【００３６】
なお、接続先テーブル２１ａは、各精算判定サーバ１のスペックが同じでない場合、スペックの違いを考慮し、精算判定サーバ１における運賃の金額の算出にかかる処理時間が略等しくなるように、生成すればよい。
【００３７】
ＩＣカード読取部２２は、無線通信機能を有する非接触式ＩＣカードが記憶する乗車券情報の読み取りや、この非接触式ＩＣカードに対する乗車券情報の書き込みを行う。ＩＣカード読取部２２は、無線通信エリアがアンテナから数ｃｍの範囲であり、利用者が無線通信エリア内に翳した非接触式ＩＣカードとの無線通信により、乗車券情報の読み取りや、乗車券情報の書き込みを行う。自動改札機２は、無線通信エリアが改札通路の入口付近になるようにアンテナを設けている。乗車券として使用できる非接触式ＩＣカードには、プリペイドカードや、定期券等がある。乗車券として使用できる非接触式ＩＣカードについては、公知であるので、ここでは詳細な説明を省略する。
【００３８】
磁気券読取部２３は、磁気券投入口に投入されたキップ等の磁気券が記憶する乗車券情報の読み取りや、この磁気券に対する乗車券情報の書き込みを行う。自動改札機２は、磁気券投入口を改札通路の入口付近に設けている。
【００３９】
利用者検知部２４は、改札通路における利用者の通行方向に沿って並べた複数のセンサにより、改札通路を通行している利用者の位置を検知する。
【００４０】
表示部２５は、改札通路に進入した利用者に対するメッセージを出力する。
【００４１】
扉開閉部２６は、利用者に対して改札通路の通行を許可しない場合、当該利用者の出口側に位置する扉を閉する。扉開閉部２６は、利用者に対して改札通路の通行を許可する場合、当該利用者の出口側に位置する扉を開する。
【００４２】
通信部２７は、ネットワークを介してデータ通信可能に接続されている精算判定サーバ１との間におけるデータ通信を制御する。上述したように、各自動改札機２は、複数の精算判定サーバ１とデータ通信可能に接続されている。
【００４３】
なお、自動改札機２は、上述したＩＣカード読取部２２、磁気券読取部２３、利用者検知部２４、表示部２５、および扉開閉部２６の一部の構成を備えていないものであってもよい。例えば、自動改札機２は、磁気券読取部２３を備えていない構成であってもよいし、扉開閉部２６を備えていない構成であってもよい。
【００４４】
また、図３に示すように、制御部２０は、運賃算出要求機能部２０ａと、精算処理機能部２０ｂと、サーバ選択機能部２０ｃを有している。この制御部２０が、この発明にかかる精算処理方法を実行する。
【００４５】
運賃算出要求機能部２０ａは、列車の利用にかかる運賃の金額の算出を精算判定サーバ１に要求する。運賃算出要求機能部２０ａは、通信部２７を制御し、運賃の金額の算出要求を精算判定サーバ１に送信する。
【００４６】
精算処理機能部２０ｂは、精算判定サーバ１において算出された運賃の金額を用いて、運賃を精算する処理を制御する。
【００４７】
サーバ選択機能部２０ｃは、運賃算出要求機能部２０ａに運賃の金額の算出要求を送信させる精算判定サーバ１を選択する。具体的には、サーバ選択機能部２０ｃは、接続先テーブル２１ａを参照し、現在時刻が属する時間帯に対応付けられている精算判定サーバ１を、運賃算出要求機能部２０ａが運賃の金額の算出要求を送信する精算判定サーバ１として選択する。
【００４８】
なお、この例にかかる自動改札機２は、乗車駅から降車駅までの運賃の金額を算出する構成を備えていなくてもよい。すなわち、この例にかかる自動改札機２は、乗車駅から降車駅までの運賃の金額を算出する構成を備えないことで、コストダウンを図ることができる。乗車駅から降車駅までの運賃の金額を用いて駅務処理を行う自動改札機２以外の駅務機器（精算機３や係員端末等）も、同様に、乗車駅から降車駅までの運賃の金額を算出する構成を備えないことで、コストダウンを図ることができる。
【００４９】
また、この駅務システムは、乗車駅から降車駅までの運賃の金額を用いて駅務処理を行う複数の駅務機器を精算判定サーバ１に接続するので、乗車駅から降車駅までの運賃の金額を算出する構成の総数を実質的に減少させることができる。
【００５０】
次に、この駅務システムの精算判定サーバ１、および自動改札機２の動作について説明する。この例では、この発明にかかる駅務機器が自動改札機２である。ここでは、プリペイド式の乗車券を使用して駅構内から出場する利用者に対する自動改札機２の改札処理を例にする。プリペイド式の乗車券は、非接触式ＩＣカードであってもよいし、磁気券であってもよい。図５は、精算判定サーバの動作を示すフローチャートである。図６は、駅構内から出場する利用者に対する自動改札機の動作を示すフローチャートである。
【００５１】
自動改札機２は、利用者が所持している乗車券（ここでは、プリペイド式の乗車券）を受け付けると、その乗車券に記録されている乗車券情報を読み取る（ｓ２１、ｓ２２）。自動改札機２は、利用者がＩＣカード読取部２２の無線通信エリア内に翳した非接触式ＩＣカードや、利用者が磁気券投入口に投入した磁気券をｓ２１で乗車券として受け付ける。また、自動改札機２は、受け付けた乗車券の乗車券情報として、乗車券の識別番号、前回の利用種別（入場、または出場）、前回の利用駅、金額残高等を読み取る。ＩＣカード読取部２２、または磁気券読取部２３が、ｓ２２における乗車券情報の読み取りを行う。
【００５２】
自動改札機２は、制御部２０において、ｓ２２で乗車券情報として読み取った前回の利用種別が入場であるか、出場であるかを判定する（ｓ２３）。制御部２０は、前回の利用種別が出場であれば（入場でなければ）、サイクルエラーが生じていると判定し、今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可しないと判定し（ｓ２４）、ｓ２１に戻る。自動改札機２は、扉開閉部２６が改札通路の通行を許可しないと判定した利用者にとって改札通路出口側に位置する扉を閉するとともに、警告音による報知等を行う。
【００５３】
なお、ｓ２３では、ｓ２２で乗車券情報が適正に読み取れたかどうかについても判定している。自動改札機２は、乗車券情報が適正に読み取れていなければ、乗車券が適正でないと判定し、ｓ２４で改札通路の通行を許可しないと判定する。
【００５４】
自動改札機２は、ｓ２３で前回の利用種別が入場であると判定すると、今回運賃の金額の算出要求を送信する精算判定サーバ１を選択する（ｓ２５）。ｓ２５では、サーバ選択機能部２０ｃが、接続先テーブル２１ａを参照し、現在時刻が属する時間帯に対応付けられている精算判定サーバ１を、運賃算出要求機能部２０ａが運賃の金額の算出要求を送信する精算判定サーバ１として選択する。自動改札機２は、運賃算出要求機能部２０ａが通信部２７を制御して、運賃の金額の算出要求を、ｓ２４で選択した精算判定サーバ１に送信する（ｓ２６）。この運賃の金額の算出要求には、少なくともｓ２２で乗車券情報として読み取った前回の利用駅（すなわち、今回の乗車駅）が含まれている。
【００５５】
精算判定サーバ１は、ネットワークを介してデータ通信可能に接続されているいずれかの駅務機器（ここでは、自動改札機２）から運賃の金額の算出要求を通信ユニット１２で受信すると（ｓ１）、第１の運賃算出処理、および第２の運賃算出処理を行う（ｓ２、ｓ３）。精算判定サーバ１は、第１の運賃算出処理を第１の運賃算出機能１１ａで行い、第２の運賃算出処理を第２の運賃算出機能１１ｂで行う。上述したように、第１の運賃算出機能１１ａは、乗車駅から降車駅までの運賃の金額を第１のプログラムで算出する。また、第２の運賃算出機能１１ｂは、乗車駅から降車駅までの運賃の金額を第２のプログラムで算出する。ｓ４、およびｓ５で用いる降車駅は、今回通信ユニット１２で受信した運賃の金額の算出指示を送信してきた自動改札機２の設置駅である。自動改札機２は、ｓ２６で送信した運賃の金額の算出要求に、自機が設置されている駅（設置駅）を示す情報を含ませる構成であってもよいし、精算判定サーバ１が今回受信した運賃の金額の算出要求を送信してきた自動改札機２の識別番号等から、この自動改札機２の設置駅を判断する構成であってもよい。
【００５６】
精算判定サーバ１は、自動改札機２における改札処理の速度低下を抑えるため、ｓ２、ｓ３にかかる処理を同時並行で行うのが好ましい。
【００５７】
第１の運賃算出機能１１ａは、第１のプログラムにおいて今回の運賃の金額を算出するプロセスにバグがあると適正な金額を算出できない。同様に、第２の運賃算出機能１１ｂは、第２のプログラムにおいて今回の運賃の金額を算出するプロセスにバグがあると適正な金額を算出できない。したがって、第１の運賃算出機能１１ａが算出した運賃の金額と、第２の運賃算出機能が算出した運賃の金額とが一致しない場合、第１のプログラム、または第２のプログラムの少なくとも一方は、今回の運賃の金額を算出するプロセスにバグがある。
【００５８】
なお、今回の運賃の金額を算出するプロセスにバグがあるプログラムが、第１のプログラム、および第２のプログラムの両方である場合、第１の運賃算出機能１１ａが算出した運賃の金額と、第２の運賃算出機能１１ｂが算出した運賃の金額とが一致する可能性は極めて小さい。言い換えれば、今回の運賃の金額を算出するプロセスにバグがあるプログラムが、第１のプログラム、および第２のプログラムの両方であると、殆どの場合、第１の運賃算出機能１１ａが算出した運賃の金額と、第２の運賃算出機能１１ｂが算出した運賃の金額とは一致しない。
【００５９】
精算判定サーバ１は、判定機能１１ｃにおいて、第１の運賃算出処理で算出した運賃の金額と、第２の運賃算出処理で算出した運賃の金額とが一致しているかどうかを判定する（ｓ４）。判定機能１１ｃは、第１の運賃算出処理で算出した運賃の金額と、第２の運賃算出処理で算出した運賃の金額とが一致していなければ、運賃の精算が適正に行えないと判定し（ｓ５）、通信ユニット１２において運賃の金額の算出要求を送信してきた自動改札機２に対して運賃の精算禁止を送信する（ｓ６）。
【００６０】
また、判定機能１１ｃは、第１の運賃算出処理で算出した運賃の金額と、第２の運賃算出処理で算出した運賃の金額とが一致していると、運賃の精算が適正に行えると判定し（ｓ７）、通信ユニット１２において運賃の精算要求を送信してきた自動改札機２に対して運賃の精算許可を送信する（ｓ８）。この精算許可には、第１の運賃算出処理で算出した運賃の金額（第２の運賃算出処理で算出した運賃の金額であってもよい。）が含まれている。精算判定サーバ１は、ｓ８で自動改札機２に精算許可を送信すると、この自動改札機２から駅務処理のログ（今回運賃を算出した利用者に対する改札処理のログ）を受信するのを待つ（ｓ９）。
【００６１】
図６に戻って、自動改札機２は、通信部２７において、ｓ２６で運賃の金額の算出要求を精算判定サーバ１に送信すると、この精算判定サーバ１から精算許可、または精算禁止の判定結果を通信部２７で受信するのを待っている（ｓ２７）。自動改札機２は、精算判定サーバ１からの判定結果を通信部２７で受信すると、精算処理機能部２０ｂが精算許可であるか、精算禁止であるかを判定する（ｓ２８）。自動改札機２は、精算処理機能部２０ｂがｓ２８で精算禁止であると判定すると、ｓ２４で今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可しないと判定し、ｓ２１に戻る。
【００６２】
また、自動改札機２は、精算処理機能部２０ｂがｓ２８で精算許可であると判定すると、精算可能であるかどうかを判定する（ｓ２９）。ｓ２９では、精算処理機能部２０ｂが、ｓ２２で乗車券から読み取った乗車券情報に含まれている金額残高が、今回精算判定サーバ１から受信した判定結果に含まれている運賃の金額以上であるかどうかを判定する。自動改札機２は、ｓ２２で乗車券から読み取った乗車券情報に含まれている金額残高が、今回精算判定サーバ１から受信した判定結果に含まれている運賃の金額以上であれば精算可能と判定する。一方、自動改札機２は、ｓ２２で乗車券から読み取った乗車券情報に含まれている金額残高が、今回精算判定サーバ１から受信した判定結果に含まれている運賃の金額未満であれば精算不可と判定する。
【００６３】
自動改札機２は、ｓ２９で精算不可であると判定すると、ｓ２４で今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可しないと判定し、ｓ２１に戻る。
【００６４】
精算処理機能部２０ｂは、精算可能であると判定すると、ｓ２１で受け付けた乗車券に対して精算処理を行う（ｓ３０）。ｓ３０では、乗車券に対して、出場時刻（現在時刻）、出場駅（自機が設置されている駅）、今回の列車の利用にかかる運賃の金額（ｓ２７で受信した判定結果に含まれている運賃の金額）、金額残高（ｓ２で読み取った金額残高から、今回算出された運賃の金額を差し引いた金額）等を対応付けた出場データを乗車券情報として書き込む。また、自動改札機２は、今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可すると判定する（ｓ３１）。自動改札機２は、改札通路の通行を許可すると判定した利用者に対して、この利用者にとっての改札通路出口側に位置する扉を開する。さらに、自動改札機２は、今回の駅務処理のログ（今回改札通路の通行を許可した利用者に対する改札処理のログ）を精算判定サーバ１に送信し（ｓ３２）、ｓ２１に戻る。
【００６５】
精算判定サーバ１は、精算許可を送信した自動改札機２から駅務処理のログ（今回運賃を算出した利用者に対する改札処理のログ）を通信ユニット１２で受信すると、受信した駅務処理のログをログデータ記憶ＤＢ１３に記憶し（ｓ１０）、ｓ１に戻る。
【００６６】
このように、この例では、自動改札機２は、運賃の金額の算出要求を送信する精算判定サーバ１を、接続先テーブル２１ａに基づいて選択する。また、接続先テーブル２１ａは、上述したように、時間帯毎に、精算判定サーバ１の処理負荷が略等しくなるように（精算判定サーバ１における運賃の金額の算出にかかる処理時間が略等しくなるように）生成したものである。すなわち、自動改札機２等の駅務機器からの運賃の金額の算出要求を複数の精算判定サーバ１に分散させるように生成したものである。したがって、自動改札機２等の駅務機器からの運賃の金額の算出要求が、特定の精算判定サーバ１に集中し、この精算判定サーバ１の処理負荷が大きくなりすぎて、駅務処理の処理効率を低下させるという事態をまねくのを防止できる。
【００６７】
図７（Ａ）、（Ｂ）および図８（Ａ）、（Ｂ）は、駅務機器における運賃の金額の算出要求の送信先である精算判定サーバを示す図である。図７（Ａ）、（Ｂ）および図８（Ａ）、（Ｂ）においては、２つの精算判定サーバ１Ａ、１Ｂを示すとともに、３つの駅（Ｘ駅、Ｙ駅、およびＺ駅）に設置されている駅務機器（自動改札機２、精算機３）を図示している。通常、各駅の駅務機器は、設置駅に列車が停車してしばらくすると、運賃の金額を用いる駅務処理の頻度が一時的に増加し、その後低下する。この現象は、停車した列車から降り、駅構内から出場する利用者によって引き起こされる。また、運賃の金額を用いる駅務処理の頻度は、駅構内から出場する利用者が多いほど高くなる。したがって、駅毎に、時間経過にともなう、運賃の金額を用いる駅務処理の頻度の変化が異なる。
【００６８】
例えば、Ｘ駅に設置されている駅務機器、Ｙ駅に設置されている駅務機器、およびＺ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が比較的小さい時間帯には、Ｘ駅に設置されている駅務機器が精算判定サーバ１Ａに対して運賃の金額の算出要求を送信し、Ｙ駅に設置されている駅務機器、およびＺ駅に設置されている駅務機器が精算判定サーバ１Ｂに対して運賃の金額の算出要求を送信するように、接続先テーブル２１ａを生成している（図７（Ａ）参照）。
【００６９】
また、Ｘ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が比較的小さく、且つＹ駅に設置されている駅務機器、およびＺ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が比較的大きい時間帯には、Ｘ駅に設置されている駅務機器およびＹ駅に設置されている駅務機器が精算判定サーバ１Ａに対して運賃の金額の算出要求を送信し、Ｚ駅に設置されている駅務機器が精算判定サーバ１Ｂに対して運賃の金額の算出要求を送信するように、接続先テーブル２１ａを生成している（図７（Ｂ）参照）。
【００７０】
また、Ｙ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が比較的小さく、且つＸ駅に設置されている駅務機器、およびＺ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が大きい時間帯には、Ｘ駅に設置されている駅務機器およびＹ駅に設置されている駅務機器の一部が精算判定サーバ１Ａに対して運賃の金額の算出要求を送信し、Ｙ駅に設置されている残りの駅務機器（精算判定サーバ１Ａに対して運賃の金額の算出要求を送信しない駅務機器、）、およびＺ駅に設置されている駅務機器が精算判定サーバ１Ｂに対して運賃の金額の算出要求を送信するように、接続先テーブル２１ａを生成している（図８（Ａ）参照）。
【００７１】
また、Ｘ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が極めて大きく、且つＹ駅に設置されている駅務機器、およびＺ駅に設置されている駅務機器において、運賃の金額を用いる駅務処理の頻度が比較的小さい時間帯には、Ｘ駅に設置されている駅務機器の一部が精算判定サーバ１Ａに対して運賃の金額の算出要求を送信し、Ｘ駅に設置されている残りの駅務機器（精算判定サーバ１Ａに対して運賃の金額の算出要求を送信しない駅務機器、）、Ｙ駅に設置されている駅務機器、およびＺ駅に設置されている駅務機器が精算判定サーバ１Ｂに対して運賃の金額の算出要求を送信するように、接続先テーブル２１ａを生成している（図８（Ｂ）参照）。
【００７２】
なお、接続先テーブル２１ａは、列車の運行ダイヤの変更時に更新すればよい。また、接続先テーブル２１ａは、定期的に更新するようにしてもよい。また、いずれかの精算判定サーバ１をメンテナンス等で停止させる期間が生じる場合には、メンテナンス前に、この精算判定サーバ１が運賃の金額の算出要求の送信先として選択されない接続先テーブル２１ａに更新し、メンテナンス後に、この精算判定サーバ１も運賃の金額の算出要求の送信先として選択される接続先テーブル２１ａに更新すればよい（更新前の接続先テーブル２１ａに戻せばよい。）。
【００７３】
接続先テーブル２１ａは、統括サーバ４が精算判定サーバ１を介する等して、各駅務機器にダウンロードすることによって更新すればよい。
【００７４】
また、精算判定サーバ１は、乗車駅から降車駅までの運賃の金額を、第１の運賃算出機能１１ａ、および第２の運賃算出機能１１ｂのそれぞれで算出し、算出した２つの運賃が一致していなければ、運賃の精算が適正に行えないと判定し、運賃の精算を禁止する。したがって、運賃の誤収受を防止し、利用者の信頼低下や、損害リスクを抑制することができる。
【００７５】
なお、精算判定サーバ１は、図５に示した処理を、多数並行して実行できるスペックである。
【００７６】
また、自動改札機２は、ｓ２３でサイクルエラーが発生していると判定すると、精算判定サーバ１に対して運賃の精算要求を送信しないので、精算判定サーバ１と自動改札機２とのデータ通信のトラフィックを抑えることができる。
【００７７】
また、上記の例では、精算判定サーバ１は、自動改札機２からの運賃の精算要求に対して、異なるロジックでプログラミングされた２つのプログラム（第１のプログラム、および第２のプログラム）で運賃の金額を算出するとしたが、それぞれが異なるロジックでプログラミングされた３つ以上のプログラムで運賃の金額を算出する構成にしてもよい。この場合、各プログラムで算出した運賃の金額が全て一致した場合に運賃の精算が適正に行えると判定し、それ以外の場合に（算出した運賃の金額が一致しないプログラムがあった場合に、）、運賃の精算が適正に行えないと判定すればよい。
【００７８】
また、精算判定サーバ１は、自動改札機２からの運賃の精算要求に対して、単一のプログラムで運賃の金額を算出する構成であってもよい（図２に示す、第２の運賃算出機能を備えていない構成であってもよい。）。この場合、図５に示すｓ３〜ｓ６にかかる処理については、不要にすればよい。
【００７９】
また、精算判定サーバ１は、自動改札機２以外の駅務機器（例えば、精算機３や係員端末等）から運賃の金額の算出依頼や、運賃の金額の算出指示を受信した場合も、図５に示した処理を実行する。精算機３は、精算判定サーバ１において運賃の精算が適正に行えないと判定された場合、精算券の発券を中止する。また、精算機３は、精算判定サーバ１において運賃の精算が適正に行えると判定された場合、運賃の精算を行うとともに、精算券を発券する処理を行う。
【００８０】
なお、精算機３や、係員端末等の駅務機器において、利用者が鉄道を利用した区間（乗車駅、降車駅）を検出する処理は公知であるので、ここでは詳細な説明を省略する。
【００８１】
また、上記の例では、自動改札機２は、利用者の出場処理にかかるログデータを精算判定サーバ１に送信し、精算判定サーバ１がログデータ記憶ＤＢ１３に記憶する構成であるので、自動改札機２側で利用者の出場処理にかかるログデータを記憶しなくてもよい。これにより、自動改札機２は、駅務処理にかかるログデータを記憶する記憶容量を抑制できる。また、自動改札機２以外の駅務機器（精算機３等）も、精算判定サーバ１に対して、上述した自動改札機２と同様の処理を行うことで、運賃の精算にかかる駅務処理のログデータを記憶しなくてもよい。
【００８２】
また、自動改札機２は、出場処理だけでなく、入場処理にかかるログデータを精算判定サーバ１に送信し、精算判定サーバ１がログデータ記憶ＤＢ１３に記憶する構成にしてもよい。このように構成すれば、自動改札機２は、駅務処理にかかるログデータを記憶するための記憶部を不要にできる。また、自動改札機２以外の駅務機器も、駅務処理を行う毎に、その駅務処理にかかるログデータを、ネットワークを介して接続されている精算判定サーバ１や、統括サーバ４に送信する構成にしてもよい。
【００８３】
なお、精算判定サーバ１は、ログデータ記憶ＤＢ１３に記憶している駅務処理にかかるログデータを、適当なタイミングで統括サーバ４にアップロードする。したがって、統括サーバ４は、各駅務機器で処理された駅務処理を一括して管理することができる。
【００８４】
また、上記の例では、精算判定サーバ１が運賃の精算が適正に行えるかどうかを判定し、自動改札機２が改札通路における利用者の通行を許可するかどうかを判定するとしたが、以下に示すようにしてもよい。
【００８５】
この例は、精算判定サーバ１が運賃の精算が適正に行えるかどうか、および改札通路における利用者の通行を許可するかどうかを判定し、自動改札機２が精算判定サーバ１の判定結果に基づき、改札通路における利用者の通行を制限する構成である。具体的には、精算判定サーバ１は図９に示す処理を実行し、自動改札機２は図１０に示す処理を実行する。この例にかかる、精算判定サーバ１、および自動改札機２の動作について説明する。
【００８６】
自動改札機２は、利用者が所持している乗車券（ここでは、プリペイド式の乗車券）を受け付けると、その乗車券に記録されている乗車券情報を読み取る（ｓ６１、ｓ６２）。このｓ６１、およびｓ６２にかかる処理は、上述した例のｓ２１、およびｓ２２と同じである。自動改札機２は、ｓ２２で乗車券情報として読み取った前回の利用種別が入場であるか、出場であるかを判定する（ｓ６３）。このｓ６３にかかる処理は、上述した例のｓ２３と同じである。自動改札機２は、前回の利用種別が出場であれば、サイクルエラーが生じていると判定し、今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可しないと判定し（ｓ６４）、ｓ６１に戻る。このｓ６４にかかる処理は、上述した例のｓ２４と同じである。
【００８７】
自動改札機２は、ｓ２３で前回の利用種別が入場であると判定すると、今回運賃の金額の算出要求を送信する精算判定サーバ１を選択し（ｓ６５）、ここで選択した精算判定サーバ１に対して運賃の金額の算出要求を送信する（ｓ６６）。この運賃の金額の算出要求には、ｓ６２で受け付けた乗車券から読み取った、乗車券の識別番号、前回の利用種別（入場、または出場）、前回の利用駅、金額残高等を含む乗車券情報が含まれている。ｓ６５にかかる処理は、上述した例のｓ２５と同じである。
【００８８】
精算判定サーバ１は、ネットワークを介してデータ通信可能に接続されているいずれかの駅務機器（ここでは、自動改札機２）から運賃の金額の算出要求を通信ユニット１２で受信すると（ｓ４１）、第１の運賃算出処理、および第２の運賃算出処理を行う（ｓ４２、ｓ４３）。このｓ４１〜ｓ４３にかかる処理は、上述した例のｓ１〜ｓ３にかかる処理と同じである。
【００８９】
精算判定サーバ１は、判定機能１１ｃにおいて、第１の運賃算出処理で算出した運賃の金額と、第２の運賃算出処理で算出した運賃の金額とが一致しているかどうかを判定する（ｓ４４）。このｓ４４にかかる処理は、上述した例のｓ４と同じである。判定機能１１ｃは、第１の運賃算出処理で算出した運賃の金額と、第２の運賃算出処理で算出した運賃の金額とが一致していなければ、運賃の精算が適正に行えないと判定し（ｓ４５）、通信ユニット１２において運賃の精算要求を送信してきた自動改札機２に、改札通路における利用者の通行禁止を送信する（ｓ４６）。このｓ４５にかかる処理は、上述した例のｓ５にかかる処理と同じである。
【００９０】
また、判定機能１１ｃは、第１の運賃算出処理で算出した運賃の金額と、第２の運賃算出処理で算出した運賃の金額とが一致していると、運賃の精算が適正に行えると判定し（ｓ４７）、精算可能であるかどうかを判定する（ｓ４８）。このｓ４７にかかる処理は、上述した例のｓ７と同じである。また、ｓ４８では、判定機能１１ｃは、ｓ４１で自動改札機２から受信した運賃の金額の算出指示に含まれている乗車券情報の１つである金額残高が、第１の運賃算出処理で算出した運賃の金額（第２の運賃算出処理で算出した運賃の金額であってもよい。）以上であるかどうかを判定する。判定機能１１ｃは、ｓ４１で自動改札機２から受信した運賃の金額の算出指示に含まれている乗車券情報の１つである金額残高が、第１の運賃算出処理で算出した運賃の金額以上であれば精算可能と判定し、反対にｓ４１で自動改札機２から受信した運賃の金額の算出指示に含まれている乗車券情報の１つである金額残高が、第１の運賃算出処理で算出した運賃の金額未満であれば精算不可と判定する。精算判定サーバ１は、ｓ４８で精算不可と判定すると、ｓ４６で通信ユニット１２において運賃の金額の算出指示を送信してきた自動改札機２に対して改札通路における利用者の通行禁止を送信する。
【００９１】
また、判定機能１１ｃは、ｓ４１で自動改札機２から受信した運賃の金額の算出指示に含まれている乗車券情報の１つである金額残高が、第１の運賃算出処理で算出した運賃の金額以上であれば、精算データを生成する（ｓ４９）。ｓ４９では、出場時刻（現在時刻）、出場駅（ｓ４２で受信した運賃の金額の算出指示を送信してきた自動改札機２が設置されている駅）、今回の列車の利用にかかる運賃の金額（第１の運賃算出処理で算出した運賃の金額）、金額残高（ｓ４２で自動改札機２から受信した運賃の精算要求に含まれている乗車券情報の１つである金額残高から、今回の列車の利用にかかる運賃の金額を差し引いた金額）等を対応付けた精算データを生成する。
【００９２】
精算判定サーバ１は、通信ユニット１２において運賃の金額の算出指示を送信してきた自動改札機２に対して改札通路における利用者の通行許可を送信する（ｓ５０）。ｓ５０で送信する通行許可には、ｓ４９で生成した精算データが含まれている。精算判定サーバ１は、ｓ４９で生成した精算データを、今回の駅務処理にかかるログデータとしてログデータ記憶ＤＢ１３に記憶し（ｓ５１）、ｓ４１に戻る。
【００９３】
ｓ５０とｓ５１の処理は、その順番が逆であってもよいが、自動改札機２における利用者の改札処理に要する処理時間の増加を抑えるため、上述したようにｓ５０、ｓ５１の順番で行うのがよい。
【００９４】
図１０に戻って、自動改札機２は、通信部２７において、ｓ６６で運賃の金額の算出要求を精算判定サーバ１に送信すると、精算判定サーバ１からの改札通路における利用者の通行許可、または通行禁止の判定結果を通信部２７で受信するのを待っている（ｓ６７）。自動改札機２は、精算判定サーバ１から判定結果を受信すると、この判定結果が通行許可であるか、通行禁止であるかを判定する（ｓ６８）。自動改札機２は、ｓ６８で通行禁止であると判定すると、ｓ６４で今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可しないと判定し、ｓ６１に戻る。
【００９５】
また、自動改札機２は、ｓ６８で通行許可であると判定すると、ｓ６７で受信した判定結果に含まれている精算データを出場データとして乗車券に書き込む精算処理を行う（ｓ６９）。そして、自動改札機２は、今回乗車券情報を読み取った乗車券を所持している利用者に対して改札通路の通行を許可すると判定し（ｓ７０）、ｓ６１に戻る。このｓ６９、およびｓ７０にかかる処理は、上述した例のｓ３０、およびｓ３１にかかる処理と同じである。
【００９６】
この図９、および図１０に示す処理であっても、上記の例と同様の効果を奏する。また、この例では、自動改札機２は、精算判定サーバ１に対して、改札通路の通行を許可した利用者に対する改札処理（出場処理）のログを送信しないので、自動改札機２と精算判定サーバ１との間における通信のトラフィックが一層抑えられる。
【００９７】
また、上記の説明では、サイクルエラーが生じているかどうかを、自動改札機２側で判定するとしたが、この判定も精算判定サーバ１に行わせてもよい。この場合、ｓ６３では、ｓ６２で乗車券情報が適正に読み取れたかどうかについて判定すればよい。
【００９８】
また、この発明にかかる駅務システムの別の例について説明する。この例にかかる駅務システムも、図１に示した構成である。図１１は、この例にかかる精算判定サーバの主要部の構成を示すブロック図である。図１２は、この例にかかる自動改札機の主要部の構成である。図１１では、図２に示した構成と同じ構成については、同じ符号を付している。また、図１２では、図３に示した構成と同じ構成については、同じ符号を付している。ここでは、上記の例にかかる駅務システムとの相違点を説明する。
【００９９】
この例にかかる精算判定サーバ１は、制御ユニット１０が負荷状態判定機能３０を有している点で、上記の例と相違する。この負荷状態判定機能３０は、精算判定サーバ１における運賃の金額の算出にかかる処理の負荷の大きさを推定する。また、負荷状態判定機能３０は、推定した運賃の金額の算出にかかる処理の負荷の大きさが、予め設定されている第１の大きさαを超えると、運賃の金額の算出にかかる処理が過負荷状態であると判定する。また、負荷状態判定機能３０は、推定した運賃の金額の算出にかかる負荷の大きさが、予め設定されている第２の大きさβを下回ると、運賃の金額の算出にかかる処理が定常負荷状態であると判定する。第２の大きさβは、第１の大きさαよりも小さい（α＞β）。運賃の金額の算出にかかる負荷の大きさは、単位時間あたりにおける、運賃の金額の算出要求数に基づいて推定できる。
【０１００】
また、この例にかかる自動改札機２は、許容テーブル記憶部４０を備えている点で、上記の例と相違する。この許容テーブル記憶部４０は、運賃の金額の算出にかかる処理が過負荷状態である精算判定サーバ１を識別するサーバコードを登録した許容テーブルを記憶する。具体的には、自動改札機２は、過負荷状態である旨の通知を受信した精算判定サーバ１のサーバコードを許容テーブルに登録し、定常負荷状態である旨の通知を受信した精算判定サーバ１のサーバコードが許容テーブルに登録されていれば、この精算判定サーバ１のサーバコードを許容テーブルから削除する。
【０１０１】
なお、精算判定サーバ１に対して運賃の金額の算出を要求する自動改札機２以外の駅務機器（例えば、精算機３）も、この許容テーブル記憶部４０を備える。
【０１０２】
この例にかかる駅務システムの精算判定サーバ１は、図５（、または図９）に示した処理を行うとともに、図１３に示す負荷状態判定処理を並行して実行する。また、自動改札機２は、図６（、または図１０）に示す処理を行うとともに、図１４に示す負荷状態登録処理を並行して実行する。
【０１０３】
図１３を参照して、精算判定サーバ１における負荷状態判定処理を説明する。精算判定サーバ１は、予め定めた負荷状態判定タイミングになる毎に、図１３に示す負荷状態判定処理を実行する。この負荷状態判定タイミングは、例えば数十秒〜数分間隔（１０秒〜３分程度の間隔）で周期的に到来する。
【０１０４】
精算判定サーバ１は、負荷状態判定機能３０が直近の数十秒〜数分の期間における、単位時間当たりの運賃の金額の算出要求数に基づき、運賃の金額の算出処理にかかる負荷の大きさを推定する（ｓ８１）。ｓ８１で推定する負荷の大きさは、単位時間当たりの運賃の金額の算出要求数であってもよいし、単位時間当たりの運賃の金額の算出要求数を変数とする関数（例えば、一次関数や二次関数）によって算出される値であってもよい。
【０１０５】
負荷状態判定機能３０は、ｓ８１で推定した負荷の大きさが、第１の大きさαを超えているかどうかを判定する（ｓ８２）。負荷状態判定機能３０は、ｓ８１で推定した負荷の大きさが、第１の大きさαを超えていれば、現在の負荷状態が定常負荷状態であるか、過負荷状態であるかを判定する（ｓ８４）。負荷状態判定機能３０は、現在の負荷状態を図示していないメモリに記憶している。
【０１０６】
負荷状態判定機能３０は、現在の負荷状態が過負荷状態であれば、後述するｓ８６に進む。一方、負荷状態判定機能３０は、現在の負荷状態が定常負荷状態であると、メモリに記憶している負荷状態を定常負荷状態から、過負荷状態に更新する（ｓ８５）。また、負荷状態判定機能３０は、過負荷状態である旨を通知する自動改札機２等の駅務機器を抽出する（ｓ８６）。負荷状態判定機能３０は、直近の一定時間の間に、運賃の金額の算出要求を送信してきた駅務機器の中から、一部の駅務機器を抽出する。負荷状態判定機能３０は、通信ユニット１２を制御し、ｓ８６で抽出した各駅務機器に対して過負荷状態である旨を通知し（ｓ８７）、本処理を終了する。
【０１０７】
また、負荷状態判定機能３０は、ｓ８１で推定した負荷の大きさが第１の大きさαを超えていなければ、ｓ８１で推定した負荷の大きさが第２の大きさβを下回っているかどうかを判定する（ｓ８３）。負荷状態判定機能３０は、ｓ８１で推定した負荷の大きさが第２の大きさβを下回っていなければ、本処理を終了する。また、負荷状態判定機能３０は、ｓ８１で推定した負荷の大きさが第２の大きさβを下回っていれば、現在の負荷状態が定常負荷状態であるか、過負荷状態であるかを判定する（ｓ８８）。負荷状態判定機能３０は、現在の負荷状態が定常負荷状態であれば、本処理を終了する。
【０１０８】
負荷状態判定機能３０は、現在の負荷状態が過負荷状態であると、メモリに記憶している負荷状態を過負荷状態から、定常負荷状態に更新する（ｓ８９）。さらに、負荷状態判定機能３０は、通信ユニット１２を制御し、各駅務機器に対して過負荷状態が解消した旨を通知し（ｓ９０）、本処理を終了する。
【０１０９】
また、自動改札機２等の駅務機器は、図１４に示すように、いずれかの精算判定サーバ１から過負荷状態である旨の通知があると、この精算判定サーバ１を許容テーブルに登録する（ｓ９１、ｓ９３）。許容テーブルには、精算判定サーバ１を識別するサーバコードを登録する。
【０１１０】
また、自動改札機２等の駅務機器は、いずれかの精算判定サーバ１から過負荷状態が解消した旨の通知があると（ｓ９２）、この精算判定サーバ１が許容テーブルに登録されているかどうかを判定する（ｓ９４）。上述したように、精算判定サーバ１が過負荷状態である旨を通知した自動改札機２等の駅務機器は、その精算判定サーバ１を許容テーブルに登録しているが、精算判定サーバ１が過負荷状態である旨を通知していない自動改札機２等の駅務機器は、その精算判定サーバ１を許容テーブルに登録していない。自動改札機２等の駅務機器は、過負荷状態の解消通知があった精算判定サーバ１を許容テーブルに登録していると、この精算判定サーバ１のサーバコードを許容テーブルから削除する（ｓ９５）。
【０１１１】
このように、この例の精算判定サーバ１は、運賃の金額の算出にかかる処理が過負荷状態になると、一部の自動改札機２等の駅務機器に対して、過負荷状態であることを通知する。また、自動改札機２等の駅務機器は、精算判定サーバ１から過負荷状態である旨の通知があると、その精算判定サーバ１のサーバコードを許容テーブルに登録する。
【０１１２】
また、上記の例では、精算判定サーバ１が運賃の金額の算出にかかる処理が過負荷状態であると判定する負荷の大きさ（第１の大きさα）と、精算判定サーバ１が運賃の金額の算出にかかる処理が定常状態であると判定する負荷の大きさ（第２の大きさβ）と、にヒステリシスを持たせているので、判定結果が過負荷状態と定常負荷状態との間で頻繁に変化することがない。これにより、自動改札機２等の駅務機器が、許容テーブルに対する精算判定サーバ１のサーバコードの登録、削除が頻繁に繰り返すのを防止できる。
【０１１３】
また、この例にかかる自動改札機２等の駅務機器が、上述したｓ２５（図６参照）、およびｓ６５（図１０参照）で実行する精算判定サーバ選択処理について説明する。図１５は、精算判定サーバ選択処理を示すフローチャートである。自動改札機２は、サーバ選択機能部２０ｃが、接続先テーブル２１ａを参照し、現在時刻が属する時間帯に対応付けられている精算判定サーバ１を、運賃算出要求機能部２０ａによって運賃の金額の算出要求を送信する精算判定サーバ１として仮選択する（ｓ１０１）。このｓ１０１は、上記したｓ２５やｓ６５と同様であるが、精算判定サーバ１を仮選択している点で相違する。
【０１１４】
サーバ選択機能部２０ｃは、ｓ１０１で仮選択した精算判定サーバ１のサーバコードが許容テーブルに登録されているかどうかを判定する（ｓ１０２）。サーバ選択機能部２０ｃは、ｓ１０１で仮選択した精算判定サーバ１のサーバコードが許容テーブルに登録されていなければ、ｓ１０１で仮選択した精算判定サーバ１を、運賃の金額の算出要求を送信する精算判定サーバ１として選択する（ｓ１０３）。一方、サーバ選択機能部２０ｃは、ｓ１０１で仮選択した精算判定サーバ１のサーバコードが許容テーブルに登録されていれば、許容テーブルに登録されていないいずれかの精算判定サーバ１を、運賃の金額の算出要求を送信する精算判定サーバ１として選択する（ｓ１０４）。
【０１１５】
このように、自動改札機２等の駅務機器は、運賃の金額の算出にかかる処理が過負荷状態である精算判定サーバ１を避けて、運賃の金額の算出要求を精算判定サーバ１に送信することができる。したがって、自動改札機２等の駅務機器は、運賃の金額を用いて行う駅務処理の処理効率が低下するのを一層抑えられる。
【０１１６】
また、精算判定サーバ１は、上述したように、過負荷状態であると判定したとき、全ての自動改札機２等の駅務機器に対して、過負荷状態であることを通知するのではなく、一部の自動改札機２等の駅務機器に対して過負荷状態であることを通知する構成である。したがって、運賃の金額の算出にかかる処理が過負荷状態である精算判定サーバ１であっても、この精算判定サーバ１が過負荷状態である旨を通知していない自動改札機２等の駅務機器から、運賃の金額の算出要求が送信されてくる。これにより、ある精算判定サーバ１が、運賃の金額の算出にかかる処理が過負荷状態になったことによって、他の精算判定サーバ１が、運賃の金額の算出にかかる処理が過負荷状態になるのを抑制できる。
【符号の説明】
【０１１７】
１（１Ａ、１Ｂ、１Ｃ）…精算判定サーバ
２…自動改札機
３…精算機
４…統括サーバ
１０…制御ユニット
１１…運賃算出部
１１ａ…第１の運賃算出機能
１１ｂ…第２の運賃算出機能
１１ｃ…判定機能
１２…通信ユニット
１３…ログデータ記憶ＤＢ
２０…制御部
２０ａ…運賃算出要求機能部
２０ｂ…精算処理機能部
２０ｃ…サーバ選択機能部
２１…接続先テーブル記憶部
２１ａ…接続先テーブル
２２…ＩＣカード読取部
２３…磁気券読取部
２４…利用者検知部
２５…表示部
２６…扉開閉部
２７…通信部
３０…負荷状態判定機能
４０…許容テーブル記憶部
【図１】
2019046353.tif 000003
【図２】
2019046353.tif 000004
【図３】
2019046353.tif 000005
【図４】
2019046353.tif 000006
【図５】
2019046353.tif 000007
【図６】
2019046353.tif 000008
【図７】
2019046353.tif 000009
【図８】
2019046353.tif 000010
【図９】
2019046353.tif 000011
【図１０】
2019046353.tif 000012
【図１１】
2019046353.tif 000013
【図１２】
2019046353.tif 000014
【図１３】
2019046353.tif 000015
【図１４】
2019046353.tif 000016
【図１５】
2019046353.tif 000017