以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
以下では、交通機関として、鉄道を例にして説明を行う。以下の説明において、乗車券とは、交通機関を利用するための切符と同一の意味を持つものとする。まず、図1を参照して、本発明に係る発券装置の構成について説明する。
図1は、本発明の一実施形態に係る発券装置の構成を示したブロック図である。本発明の一実施形態に係る発券装置10は、表示部101、操作部103、記憶部105、制御部107、及び発券部109から構成される。
表示部101には、後で説明する制御部107による制御のもとで、鉄道を利用するための乗車券を発券する際の案内が表示される。なお、この表示部101は、特に限定されるものではなく、例えば、一般的なディスプレイ装置であってもよい。
操作部103は、乗車券の発券に必要な情報を入力するための、ユーザと発券装置とのインターフェースの役割を果たす。操作部103は、例えば、キーボードや選択式のボタンであってもよい。あるいは、表示部101と操作部103とは、一体式で構成されてもよい。その場合、表示部101及び操作部103は、例えば、タッチパネル機能が搭載されたディスプレイで構成される。ユーザは、表示部101に表示された情報や指示に基づいて、乗車券の発券に必要な情報を入力したり、又は選択したりすることができる。以下の説明では、乗車券の発券に必要な各種の情報のことを、発券区間情報と呼ぶこととする。発券区間情報としては、例えば、少なくとも乗車駅、降車駅、乗車区間のいずれかの情報が含まれる。また、発券区間情報には、後で説明する、制御部107によって設定される第1の区間や第2の区間といった乗車区間に関する情報や、乗車区間に対して算出された運賃に関する情報が含まれてもよい。ユーザにより操作部103から入力された情報は、制御部107に送られる。
記憶部105は、乗車券の発券に必要な各種の情報を記憶している。例えば、記憶部105には、少なくとも、路線情報に関するデータベース(路線情報DB)、距離に関するデータベース(距離DB)、運賃に関するデータベース(運賃DB)が格納されている。路線情報DBには、各路線の路線図と、その路線に含まれる駅名、駅数、及び路線上での駅の並び順の情報が少なくとも含まれる。距離DBには、駅間の距離に関する情報が少なくとも含まれる。ここで駅間の距離とは、任意に選択された2つの駅の間の距離であり、線路に沿って定められた距離のことを意味する。運賃DBには、例えば、距離や特定の駅間などといった様々な条件に応じた運賃の情報が少なくとも含まれる。例えば、運賃DBは、駅間の距離と対応させた形式で運賃の情報を有していてもよい。また、運賃DBは、距離ではなく、乗車駅名及び降車駅名と対応させた形式で運賃の情報を有していてもよい。あるいは、運賃DBは、あるゾーンでは距離にかかわらず一律運賃が適用される場合には、そのゾーンに関する情報と運賃とを対応付ける形式で、運賃の情報を有していてもよい。また、運賃DBは、割引制度が適用される場合には、割引が適用された場合の運賃の情報を有していてもよい。以下の説明では、これら路線情報DB、距離DB、運賃DBを少なくとも含む情報を、経路関連情報と呼ぶこととする。記憶部105は制御部107に接続されており、互いに情報のやり取りを行う。
制御部107は、発券区間情報と、記憶部105に記憶された経路関連情報とに基づいて、乗車区間を設定し、その乗車区間に対応した運賃を算出する。また、ユーザが乗車券を購入するための案内を表示部に表示する制御を行う。また、ユーザとの間の金銭の授受や、乗車券の発券手続といった発券処理の制御を行う。制御部107の構成については、図2を参照して、後で詳しく説明する。
発券部109は、制御部107からの制御により、ユーザとの間の金銭の授受や、乗車券の発券、領収書の発行など、発券処理時における、ユーザと発券装置とのインターフェースの役割を果たす。
さらに、発券装置10は、メディア読取部111を有していてもよい。メディア読取部111は、定期券や回数券といった、発券区間情報、又は発券区間情報の一部の情報を有するICカードや磁気券などのメディアから、情報を読み取る役割を果たす。制御部107は、操作部103から入力された情報のみならず、メディア読取部111から入力された情報に基づいて、乗車区間の設定や、運賃の算出を行ってもよい。すなわち、発券区間情報は、操作部103とメディア読取部111との両方から入力された情報によって構成されてもよい。
次に、図2を参照して、制御部107の構成を詳しく説明する。図2は、制御部107の構成を示したブロック図である。
制御部107は、乗車駅と降車駅とを含み、乗車駅と降車駅との間の第1の区間よりも長い距離を有しており、第1の区間に対応する運賃よりも安い運賃となる第2の区間が存在する場合に、第2の区間に対応する運賃を提示する機能を果たす。制御部107は、経路検索部201、運賃算出部209、運賃比較部211、表示制御部213、及び発券情報処理部215を有する。
まず、経路検索部201の機能について説明する。経路検索部201は、乗車区間設定部203、距離算出部205、及び割引判定部207を有する。操作部103やメディア読取部111から発券区間情報が入力されると、乗車区間設定部203は、発券区間情報に含まれる乗車駅と降車駅とを乗車区間とする第1の区間を設定する。
距離算出部205は、乗車区間設定部203から受け取った第1の区間の情報と、記憶部105に記憶された経路関連情報を参照しながら、第1の区間の距離を算出する。
割引判定部207は、距離算出部205によって算出された第1の区間の距離に対して、割引が適用できるかどうかの判定を行う。すなわち、算出された距離が、割引が適用されるある所定の距離(以下、割引適用距離と呼ぶ)を超えているかどうかを判断する。
割引判定部207での第1の区間に対する判定が、割引適用不可であった場合、判定結果が乗車区間設定部203に出力され、乗車区間設定部203は、記憶部105に記憶された経路関連情報を参照しながら、第1の区間とは異なる乗車区間である、第2の区間を設定する。ここで、第2の区間は、発券区間情報に含まれる乗車駅と降車駅とを含み、かつ、第1の区間よりも距離の長い乗車区間として設定される。さらに、第1の区間に対して行った処理と同様にして、距離算出部205が第2の区間の距離を算出し、割引判定部207が、算出された第2の区間の距離に対して割引適用可否の判定を行う。
第2の区間に対する割引判定が不可だった場合、判定結果が乗車区間設定部203に出力され、乗車区間設定部203は、記憶部105に記憶された経路関連情報を参照しながら、第2の区間を再度設定する。このとき、再度設定される第2の区間は、先ほどの第2の区間よりも長い距離を有する。そして、距離算出部205が再度設定された第2の区間の距離を算出し、割引判定部207が、算出された再度設定された第2の区間の距離に対して割引適用可否の判定を行う。
経路検索部201は、割引判定が割引適用可能になるまでこの操作を繰り返す。すなわち、経路検索部201は、徐々に距離を長くしながら、第2の区間の再設定を繰り返す。その結果、最終的に、割引が適用される区間の中で最も距離の短い区間として、第2の区間が設定される。経路検索部201は、設定した第2の区間に関する情報を、第1の区間に関する情報と併せて、運賃算出部209に出力する。
一方、割引判定部207が最初に実施した第1の区間に対する割引判定が、割引適用可能であった場合には、第2の区間の設定はされない。経路検索部201は、第1の区間に関する情報を、運賃算出部209に出力する。
このように、経路検索部201は、入力された発券区間情報と記憶部105に記憶された経路関連情報とに基づいて、第1の区間及び第2の区間を設定する機能を果たす。ここで、乗車区間設定部203が、第2の区間を設定する具体的な方法については、図3、図4A、図4B、及び図4Cを参照して、後で詳しく説明する。
運賃算出部209は、経路検索部201によって設定された第1の区間及び第2の区間に対して、記憶部105に記憶された経路関連情報を参照しながら、運賃の算出を行い、結果を運賃比較部211に出力する。運賃比較部211は、第2の区間の運賃が、第1の区間の運賃よりも安いかどうかを判定する。すなわち、第1の区間及び第2の区間の運賃の大小関係を比較し、結果を表示制御部213に出力する。
表示制御部213は、運賃比較部211の比較結果に基づいて、表示部101に表示する内容を制御する。例えば、第2の区間の運賃が、第1の区間の運賃よりも高かった場合は、第2の区間に関する案内は表示する必要はないので、第1の区間に関する案内のみを表示する。逆に、第2の区間の運賃が、第1の区間の運賃よりも安かった場合は、第2の区間に関する案内のみを表示してもよいし、第1の区間、第2の区間両方の案内を表示するようにしてもよい。ここで、表示される内容は、第1の区間、第2の区間それぞれの、少なくとも乗車駅、降車駅、運賃に関する情報を含んでもよい。以下では、表示部に表示される第1の区間に関する各種の情報、第2の区間に関する各種の情報を、それぞれ、第1区間情報、第2区間情報と呼ぶこととする。ユーザは、表示部に表示された第1区間情報、第2区間情報、又はその両方から、操作部103を介して、購入したい乗車券の乗車区間を選択することができる。第1区間情報及び第2区間情報の具体的な例は、図6を参照して、後で詳しく説明する。
発券情報処理部215は、操作部103から入力されたユーザの乗車券購入区間の選択結果に基づいて、発券部を制御することにより、発券に関する処理を行う。ここで、発券に関する処理は、ユーザとの間の金銭の授受や、乗車券の発券、領収書の発行などを含む。
以上、本実施形態に係る発券装置10の機能の一例、特に制御部107の機能の一例について詳細に示した。上記の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、制御部107については、各構成要素の機能を、CPU(Central Processing Unit)等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
次に、図3、図4A、図4B、及び図4Cを参照して、乗車区間設定部203が、第2の区間を設定する具体的な方法について説明する。図3は、第2の区間のパターンを示した概念図である。
図3に記載されている乗車駅及び降車駅は、発券区間情報に基づく乗車駅及び降車駅を示している。すなわち、この乗降駅間を乗車区間とする区間(a)は、第1の区間を示している。これに対して、第2の区間としては、設定の方法に応じて、区間(b)、区間(c)、及び区間(d)の3つのパターンが存在する。区間(b)は、区間(a)の乗車駅を、距離が長くなる方向にn駅分ずらして設定される乗車区間に対応している。また、区間(c)は、区間(a)の降車駅を、距離が長くなる方向にm駅分ずらして設定される乗車区間に対応している。また、区間(d)は、区間(a)の乗車駅及び降車駅を、それぞれ、距離が長くなる方向に、n駅、m駅分ずらして設定される乗車区間に対応している。
区間(b)、区間(c)、及び区間(d)は、全て、区間の距離は、第1の区間である区間(a)よりも長い。しかし、乗車駅と降車駅との組み合わせは、互いに異なるため、設定方法も互いに異なるものになる。
図4Aは、図3における区間(b)の具体的な設定方法を説明するための概念図である。今、割引適用距離をαkm、第1の区間の距離をAkmとする。Akmは、αkmよりも距離が短いので、第1の区間である区間(a)には、割引が適用されない。そのため、乗車区間設定部203は、乗車区間の距離が長くなる方向に乗車駅を1駅ずらし、Akmよりも長い距離Bkmを有する新たな区間を第2の区間として設定する。しかし、Bkmも、まだαkmよりも距離が短いため、乗車区間設定部203は、乗車区間の距離が長くなる方向に乗車駅を更に1駅ずらし、Bkmよりも長い距離Ckmを有する新たな区間を、第2の区間として設定する。以下、この操作を、第2の区間の距離が、割引適用距離αkmを超えるまで繰り返す。そして、初めてαkmを超える距離を有する区間が得られたとき、その区間を、最終的な第2の区間として設定する。図4Aでは、乗車駅をn駅ずらしたときに、初めてαkmを超える距離Nkmを有する区間が得られた場合を示している。従って、この場合、乗車区間設定部203は、最終的に、乗車駅+n駅と降車駅との間の乗車区間を第2の区間として設定する。
図4Bは、図3における区間(c)の具体的な設定方法を説明するための概念図である。区間(b)が、乗車駅をずらして設定されるのに対して、図4Bに示すように、区間(c)は、降車駅をずらして設定される。その際の具体的な手順は、乗車駅の代わりに降車駅をずらしていくという点以外は、区間(b)の場合と同様であるため、詳細は割愛する。図4Bでは、降車駅をm駅ずらしたときに、初めてαkmを超える距離Mkmを有する区間が得られた場合を示している。従って、この場合、乗車区間設定部203は、最終的に、乗車駅と降車駅+m駅との間の乗車区間を第2の区間として設定する。
図4Cは、図3における区間(d)の具体的な設定方法を説明するための概念図である。区間(b)、区間(c)が、それぞれ、乗車駅、降車駅をずらして設定されるのに対して、図4Cに示すように、区間(d)は、乗車駅、降車駅の両方をずらして設定される。その際の具体的な手順は、乗車駅、降車駅の両方を1駅ずつずらしていくという点以外は、区間(b)、区間(c)の場合と同様であるため、詳細は割愛する。図4Cでは、乗車駅をn駅、降車駅をm駅ずらしたときに、初めてαkmを超える距離MNkmを有する区間が得られた場合を示している。従って、この場合、乗車区間設定部203は、最終的に、乗車駅+n駅と降車駅+m駅との間の乗車区間を第2の区間として設定する。
このように、第2の区間は、そのパターンによって、設定方法が異なる。この詳細な処理の流れは、図7及び図8を参照して、後で詳しく説明する。
以上、図3、図4A、図4B、及び図4Cを参照して、第2の区間の設定方法について説明してきたが、実際には、このように一本の路線が単独で存在する場合以外にも、いくつかの路線が複雑に分岐して存在する場合が考えられる。このような複数の路線を持つ路線図の概念図を図5に示す。この場合でも、これまでの説明と同様の方法で、第2の区間を設定することができる。すなわち、乗車駅と降車駅の少なくともいずれか一方を1駅ずつずらしていくという操作を、各路線についてそれぞれ行えばよい。その際、例えば、同じ区間(b)のパターンであっても、路線ごとに異なる第2の区間が設定されるので、パターンの数は更に増加することになる。すなわち、区間(b)のパターンの中に、さらに路線による場合分けが存在し、区間(c)、区間(d)に関しても同様のことが言える。
また、ここまでは、第2の区間を設定する方法として、乗車駅や降車駅を1駅ずつずらしていく方法を説明したが、設定方法はこれに限らない。例えば、ずらす駅の数は1駅ずつでなくてもよく、任意の駅数ずつずらしてもよい。ここで、ずらす駅数の最適な数は、入力された乗車駅及び降車駅の情報に基づいて、適宜設定され得る設計的事項である。何故ならば、入力された乗車駅及び降車駅によって、第1の区間の距離Akmと割引適用距離αkmとの差分は異なるし、また、入力された乗車駅及び降車駅が属する路線によって、隣接する駅間の平均的な距離も大きく異なるからである。また、別の方法として、第1の区間の距離Akmと割引適用距離αkmとの差分よりも長い距離を有する区間を算出し、その区間を第1の区間に延長することで、第2の区間を設定してもよい。
次に、図6を参照して、表示部101に表示される、第1区間情報及び第2区間情報の具体的な表示例について説明する。図6は、第1区間情報及び第2区間情報が表示された表示部を示した概略図である。ここでは、例として、発券区間情報に含まれる乗車駅及び降車駅が、それぞれ、桶川駅、新大阪駅であった場合を示している。
「候補1」の欄には、第1区間情報が表示されている。すなわち、乗車区間は「桶川−新大阪」である。それに対して、「候補2」、「候補3」の欄には、「候補1」よりも安い運賃の乗車区間の候補として、第2区間情報が表示されている。
「候補2」の欄では、乗車駅が桶川駅から北本駅に変更されている。すなわち、「候補2」の欄には、「北本−新大阪」を第2の区間として設定した場合が表示されている。この場合、「北本−新大阪」間には割引が適用されるため、運賃は第1の区間よりも安くなる。このことをユーザに強調するために、「お得な切符」などの文言が表示される。また、乗車駅を変更し、自動選択したことをユーザに伝える文言が同時に表示されている。
「候補3」の欄では、乗車駅が桶川駅から北本駅に、降車駅が新大阪駅から東淀橋駅に変更されている。すなわち、「候補3」の欄には、「北本−東淀橋」を第2の区間として設定した場合が表示されている。この場合も、「北本−東淀橋」間には割引が適用されるため、運賃は第1の区間よりも安くなる。「候補2」の欄と同様に、「お得な切符」などの文言や、乗車駅、降車駅を変更し、自動選択したことをユーザに伝える文言が同時に表示されている。
ここで、図6は、第1区間情報及び第2区間情報を表示部に表示する際の一例を示しているに過ぎず、第1区間情報及び第2区間情報が表示されていれば、他の表示方法であってもよい。
次に、図7を参照して、本発明に係る発券装置の一連の処理動作を説明する。図7は、本発明の一実施形態に係る発券方法を示す流れ図である。ただし、発券処理操作については割愛している。また、ここでは、図1におけるメディア読取部111を有する場合について説明する。
まず、初めに、S301で、初期画面である乗車券の購入画面がユーザに対して表示される。購入画面では、ユーザが、定期券や回数券といった乗車券類を所持している場合は、その挿入を促すメッセージが表示される。
次に、S302で、ユーザが乗車券類を所持しているかどうかの判断がなされる。所持している場合には、ユーザはその乗車券類を発券装置に挿入し(S303)、発券装置は、その乗車券類に記録されている情報から、乗車駅の情報を抽出する(S304)。以下、S303で抽出された乗車駅を、乗車駅Aと呼ぶこととする。ユーザが乗車券類を持っていなかった場合には、S303、S304のステップは行われずにスキップされる。
次に、S305で、ユーザは、乗車駅と降車駅を入力する。以下、S305で入力された乗車駅、降車駅を、乗車駅B、降車駅Bと呼ぶこととする。次いで、入力された乗車駅B、降車駅Bの情報に基づいて、乗車区間の距離B、運賃Bが算出される(S306)。この乗車区間が第1の区間に相当している。
次に、S307で、距離Bが割引適用距離を超えているかどうかが判断される。距離Bが、割引適用距離を超えている場合には、第2の区間を設定する必要はないので、乗車駅B、降車駅B、距離B、運賃Bがユーザに案内される(S311)。しかし、距離Bが、割引適用距離を超えていない場合には、別区間運賃算出、すなわち第2の区間の設定と、運賃の算出が行われる(S308)。この別区間運賃算出ステップ(S308)については、図8を参照して、後で詳しく説明する。
別区間運賃が算出されたら、別区間の運賃と運賃Bとの比較が行われる(S309)。別区間の運賃の方が運賃Bよりも安かった場合には、乗車駅B、降車駅B、距離B、運賃Bとともに、別区間の乗車駅、降車駅、距離、運賃がユーザに案内される(S310)。一方、別区間の運賃の方が運賃Bよりも高かった場合には、乗車駅B、降車駅B、距離B、運賃Bのみが、ユーザに案内される(S311)。
次に、図8を参照して、別区間運賃算出ステップ(S308)の詳細な手順について説明する。別区間運賃算出ステップ(S308)では、第2の区間の設定と、距離、運賃の算出を行う。
図3を参照して先に説明したように、第2の区間には、乗車駅を変更した場合、降車駅を変更した場合、乗車駅と降車駅の両方を変更した場合、の3つのパターンが存在する。また、ユーザが乗車券類を所持している場合には、乗車駅として、乗車駅A、乗車駅Bが入力されている。従って、本実施の形態においては、第2の区間の設定方法としては、全部で7つのパターンが存在する。図8の表に示すように、これらのパターンは、例えば1〜7までの番号を付けて管理されている。ここで、図5に示すように、複雑な路線図に対応する場合には、このパターン数を更に増やせばよい。
別区間運賃算出ステップ(S308)では、図8の表に示されるパターンの順番に、第2の区間が設定される。
まず、S401では、パターンの数だけループを実行したかどうかが判断される。全パターンについて区間の設定、運賃の算出が行われていない場合には、S402に進む。S402では、現在設定しようとしている第2の区間が、表に示されたパターン1かどうかが判断される。パターン1ならば、対応する区間の距離、運賃が算出され、運賃がセットされ(S403)、記憶部に記憶される。また、このとき、パターン1に従って設定された第2の区間の距離が、割引適用が可能な距離ならば、割引が適用された運賃が算出される。パターン1の運賃が算出された後は、別のパターンに対する計算を行うため、パターンの番号が1つ増加され(S404)、再びS401に戻る。
S402で、パターン1ではないと判断された場合、S405に進む。S405では、第2の区間を設定するために「先の駅」を抽出し、乗車区間を設定する。ここで、「先の駅」とは、第2の区間を設定する際に、乗車駅及び降車駅の少なくともいずれか一方をずらした先の駅のことである。例えば、パターン2であれば、乗車駅A+先の駅と降車駅Bとの間が乗車区間になるので、乗車駅を乗車区間が長くなる方向にずらすことになる。設定した乗車区間に対して距離を算出し(S406)、その算出した距離が、制度距離、すなわち、割引適用距離を超えているかどうかを判定する(S408)。制度距離を超えていない場合には、S405に戻り、乗車区間の再設定を行う。その際、事前にS407で、「先の駅」として、「先の駅+1」を代入しているので、乗車駅を1駅ずらした区間が、新しい乗車区間として再設定される。この操作を、S408で、乗車区間の距離が制度距離を超えていると判断されるまで繰り返す。制度距離よりも長い距離を有する乗車区間が得られたら、その運賃が算出され、運賃がセットされ(S409)、記憶部に記憶される。同様の操作が、全てのパターンについて行われ、7つのパターンそれぞれについての、乗車駅、降車駅、距離、運賃が算出され、記憶部に記憶される。
ここまでは、図7に示すS302で、乗車券類がある場合について説明してきたが、乗車券がない場合でも同様である。例えば、乗車券類がない場合には、乗車駅Aが入力されず、第2の区間を設定する際のパターンの数は3つしか存在しない。その場合は、図8に示す、別区間運賃算出ステップで、3パターンについてだけ、距離と運賃を算出すればよい。
また、図7及び図8では、本発明に係る発券装置の動作の一例について示したが、本発明はこれに限定されるものではない。例えば、図8で、第2の区間を設定する際に、1駅ずつ乗車駅又は降車駅を動かしているが、第2の区間は別の方法で設定されてもよい。先に説明したように、任意の駅数だけ動かしてもよいし、第1の区間の距離と割引適用距離との差分から、第1の区間を延長する区間を求めてもよい。
また、図7では、第1の区間よりも安い運賃を有する第2の区間全てに関する情報が、ユーザに対して案内されることになるが、第2の区間同士も比較し、最も安い運賃を有する第2の区間に関する情報のみを表示するようにしてもよい。また、先に説明したように、第1区間情報を表示せず、第2区間情報のみを表示するようにしてもよい。
次に、図9を参照しながら、本発明の実施形態に係る発券装置10のハードウェア構成について、詳細に説明する。図9は、本発明の実施形態に係る発券装置10のハードウェア構成を説明するためのブロック図である。
発券装置10は、主に、CPU901と、ROM(Read Only Memory)903と、RAM(Random Access Memory)905と、を備える。また、発券装置10は、更に、バス907と、入力装置909と、出力装置911と、ストレージ装置913と、ドライブ915と、接続ポート917と、通信装置919とを備える。
CPU901は、演算処理装置および制御装置として機能し、ROM903、RAM905、ストレージ装置913、またはリムーバブル記録媒体921に記録された各種プログラムに従って、発券装置10内の動作全般又はその一部を制御する。ROM903は、CPU901が使用するプログラムや演算パラメータ等を記憶する。RAM905は、CPU901が使用するプログラムや、プログラムの実行において適宜変化するパラメータ等を一時記憶する。これらはCPUバス等の内部バスにより構成されるバス907により相互に接続されている。
バス907は、ブリッジを介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バスに接続されている。
入力装置909は、操作部103やメディア読取部111に対応するものであり、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ及びレバーなどユーザが直接操作する操作手段のほか、磁気リーダやICカードリーダなど、ユーザが挿入もしくは接触させた媒体から情報を入力する手段を含むものである。また、入力装置909は、例えば、赤外線やその他の電波を利用したリモートコントロール手段(いわゆる、リモコン)であってもよいし、発券装置10の操作に対応したPDA等の外部接続機器923であってもよい。さらに、入力装置909は、例えば、上記の操作手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、CPU901に出力する入力制御回路などから構成されている。発券装置10のユーザは、この入力装置909を操作することにより、発券装置10に対して各種のデータを入力したり処理動作を指示したりすることができる。
出力装置911は、表示部101や発券部109に対応するものであり、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置のほか、取得した情報に基づきユーザとの間で金銭や乗車券のやり取りといった発券処理を行うことが可能な装置で構成される。このような装置として、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ELディスプレイ装置及びランプなどの表示装置や、スピーカ及びヘッドホンなどの音声出力装置や、プリンタ装置、磁気情報記録装置、及び現金処理装置などの発券処理装置のほか、携帯電話、ファクシミリなどがある。出力装置911は、例えば、発券装置10が行った各種処理により得られた結果を出力する。具体的には、表示装置は、発券装置10が行った各種処理により得られた結果を、テキストまたはイメージの形式で表示する。また、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して出力する。また、発券処理装置は、発券装置10が行った各種処理により得られた乗車券の情報に基づき、必要な情報を乗車券に記録、印字したり、ユーザとの間で金銭の授受を行ったりして、乗車券を発券する処理を行う。
ストレージ装置913は、発券装置10の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置913は、例えば、HDD(Hard Disk Drive)等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等により構成される。このストレージ装置913は、CPU901が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
ドライブ915は、記録媒体用リーダライタであり、発券装置10に内蔵、あるいは外付けされる。ドライブ915は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体921に記録されている情報を読み出して、RAM905に出力する。また、ドライブ915は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体921に記録を書き込むことも可能である。リムーバブル記録媒体921は、例えば、CDメディア、DVDメディア、Blu−rayメディア等である。また、リムーバブル記録媒体921は、コンパクトフラッシュ(登録商標)(CompactFlash:CF)、フラッシュメモリ、又は、SDメモリカード(Secure Digital memory card)等であってもよい。また、リムーバブル記録媒体921は、例えば、非接触型ICチップを搭載したICカード(Integrated Circuit card)又は電子機器等であってもよい。
接続ポート917は、機器を発券装置10に直接接続するためのポートである。接続ポート917の一例として、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポート、RS−232Cポート、LAN(Local Area Network)ポート等がある。この接続ポート917に外部接続機器923を接続することで、発券装置10は、外部接続機器923から直接各種のデータを取得したり、外部接続機器923に各種のデータを提供したりする。
通信装置919は、例えば、通信網925に接続するための通信デバイス等で構成された通信インターフェースである。通信装置919は、例えば、有線または無線LAN(Local Area Network)、Bluetooth(登録商標)、またはWUSB(Wireless USB)用の通信カード等である。また、通信装置919は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、又は、各種通信用のモデム等であってもよい。この通信装置919は、例えば、インターネットや他の通信機器との間で、例えばTCP/IP等の所定のプロトコルに則して信号等を送受信することができる。また、通信装置919に接続される通信網925は、有線又は無線によって接続されたネットワーク等により構成され、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信又は衛星通信等であってもよい。
以上、本発明の実施形態に係る発券装置10の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
なお、上述のような本実施形態に係る発券装置の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
例えば、上記の実施の形態では、図1に示す記憶部105は、発券装置10に含まれるとしたが、本発明はかかる例に限定されない。例えば、記憶部105は、発券装置10に接続された上位装置に設けられるなど、発券装置10と別に存在してもよい。その場合、例えば、制御部107は、当該上位装置にアクセスすることで運賃照会などの処理を行うことができる。また、発券装置10は、記憶部を複数有していてもよい。その場合、例えば、記憶部105はDBの機能だけを有しており、算出された距離や運賃などの各種情報を記憶するのは、別途用意された記憶部でもよい。
また、上記の実施の形態では、全ての第1の区間に対して第2の区間が設定される場合を示したが、ある所定のしきい値を設けて、第1の区間の距離がそのしきい値を超えたときにだけ、第2の区間の設定を行うようにしてもよい。すなわち、上記の実施の形態は、第2の区間を設定するかどうかを判定する手順を、更に有してもよい。第1の区間の距離が、割引適用距離に対して大幅に小さい場合には、第2の区間を設定しても、第2の区間の運賃が第1の区間の運賃よりも高くなる可能性が高いので、このような第2の区間を設定するかどうかを判定する手順を設けることで、発券装置による一連の処理の高速化を図ることができ、ユーザの利便性向上につながる。
また、上記の実施の形態では、本発明を鉄道に適用した場合について説明を行ってきたが、本発明はかかる例に限定されない。他の交通機関であっても、鉄道と同様に、利用区間の距離によって運賃が発生し、また、利用区間の距離がある所定の距離を超えるときに適用される割引制度が設定されている交通機関であれば、本発明を適用することが可能である。