本編であまり詳しくふれなかった「運賃計算の特例」への対応について、 自分用のメモも兼ねて、少し詳しく説明しています。
まず、最初に「運賃計算の特例にどう対応するか」の基本スタンスを一言でいうと、 「適用されることが分かってから考えよう」ということになります。
JRの運賃は、実際に乗車する経路の距離にもとづいて計算するのが大原則です。
そして、この原則に当てはまらない「運賃計算の特例」がいくつかあり、
最長片道きっぷにも影響を及ぼしているわけですが、
それらはいずれも「遠回りするときも近道で運賃を計算しろ」というもので、
「近道を通っても遠回りの経路で運賃を計算しろ」という特例はありません。
これはすなわち「特例の適用を受けても、
最長片道きっぷがさらに長くなることはない」ということですから、
特例を考慮しないで解いても、
真の最長ルートを見過ごすことはないわけです。したがって、冒頭のように
「出てきた最長ルートが特例の適用を受けると分かった時点で対応を考えよう」という、
一見すると場当たり的な方針でもよいことになります。
今回、 本州内において運賃計算の特例をまったく考慮せずに最長経路を計算してみると、 「特例のおかげで距離を短縮しなければならない」という事例が3つ出てきました。 これらにどう対処したか、以下にまとめておきます。
念のため書いておきますが、以下で追加する「各特例に対応した制約式」は、 いずれもタイプLのみを想定したものになっています。 タイプPに関しては [付録1-3] のとおり、長くとも11339.1km以下であることが判明しているので、 以下で何だかんだと制約式を追加しても、 タイプLの最長がこの値を下回らない限りは、 タイプLだけ考えていればいいわけです。
大阪環状線+JR東西線+東海道本線大阪・尼崎間(図 A4 の太線区間、 以下単に「太線区間」)を通過する場合の運賃は、 旅客営業規則第70条により、 同区間内を最短経路で計算しなければなりません。 ただし、太線区間を2度以上通過する場合には実際の乗車経路で計算できます。
この特例を考慮せずにタイプLの最長経路を求めると、
得られた経路は太線区間を1度だけ通過するもので、
しかもこの特例に見事に引っかかっていました。
具体的には、
得られた経路は「…→天王寺→西九条→大阪→京橋→…」というものでした。
旅客規則70条の適用を受けるので、このように乗車する場合の運賃計算経路は、
天王寺・京橋間が最短経路になります(図 A5)。
これにより、運賃計算経路は実乗経路より8.7km短くなります。
ということは、8.7km短くなっても依然としてこの経路が全国で最長なのかどうか、 チェックする必要が出てきます。
結論から言えば、「天王寺・今宮」「今宮・西九条」「西九条・大阪」
「大阪・京橋」の4本の枝のうち、
同時に使えるのは3本以下という制約式を追加して解き直し、
得られた解を真の「全国第1位」として採用することにしました。
かりにこの4本の枝をすべて利用すると、
太線区間には未通過の接続駅が1つ(尼崎)しか残らないので、
タイプLの経路では「太線区間2度通過」があり得ません。
したがって太線区間は必ず1度通過となり、必ず特例の適用を受け、
必ず強制的に「天王寺→京橋」という最短経路で計算させられます。
つまり、4本の枝すべてを運賃計算経路に含むことはできないのです。
ダメ押しで書いておきますが、ここで追加する制約式は、図 A5
の青線のような経路が出てきたときにそれを赤線の形に変えるだけで、
ほかには何の影響も与えません。
この制約式を入れてあらためて解き直した結果は、 当初の結果のうち太線区間を最短経路に置き換えただけのものでした。 つまり、旅客規則70条があってもなくても、 最長経路は本質的に同じものになるということです。
似たような特例として、岩国・櫛ヶ浜間を通過する場合には、 旅客営業規則第69条第1項第4号により、 距離の短い岩徳線経由で計算しなければならない、というのがあります(図 A6)。
こちらはもっと単純で、
山陽本線岩国・櫛ヶ浜間を通過してはならないという制約式を入れて解き直しました。
岩国・櫛ヶ浜間には接続駅がないので、
タイプLの最長経路は岩国・櫛ヶ浜間を「通過する」か「かすりもしない」か、
二者択一を迫られます。また、
タイプLなので岩徳線と山陽本線の双方を使うことはできず、
「使うとすればどちらか一方」です。
そして、「山陽本線を通過する」ことを選択すると、
規則69条により岩徳線経由で運賃を計算されてしまいます。
すなわち、タイプLでは、
山陽本線経由で運賃計算をすることがあり得ないのです。
この区間を岩徳線経由に限定しても、出てきた最長経路は本質的に同じで、
岩国・櫛ヶ浜間が岩徳線経由になっただけのものでした。
「新幹線はどうした?」と思ったあなたは重度のマニアだと思いますが :-)、新幹線については規則69条3項の記述からして 「新幹線の運賃計算キロそのものを岩徳線経由と同一にする」 ことが適当だと思われたため、そのように対処してあります。
最後に、一番頭を悩ませたのがこれ。 出てきた最長経路は「…→幡生→新下関−(新幹線)→小倉→…」 というものだったのですが、幡生方面から来て、 新下関で在来線と新幹線を「相互に直接」乗り継いで小倉方面に行く場合には、 旅客営業規則第68条第4項第3号により新下関で運賃計算を打ち切らねばならない、 すなわち1枚の片道きっぷにならないのです(図 A7)。
これに対処するために追加した制約式は、 「幡生・新下関」と「新下関・小倉」の同時使用は不可というものです。
一見すると、上記の制約式には何の問題もなさそうですが、
これでだいじょうぶ、と思えるまでにはしばし考えてしまいました。
主に心配だったのは「この規則のせいで、
新下関を発着駅とする経路が最長になる可能性はないだろうか?」ということでした。
一般に、運賃計算を打ち切るきっかけとしては「折り返す」「同じ駅を2度通る」
という2つがあり、このことから最長片道きっぷの発着駅を終端駅や接続駅、
接続駅の隣接駅に限定してきたわけですが、
ここにもう1つ、規則68条4項3号という「打ち切るきっかけ」が存在するのです。
「新下関より先に行きたかったんだけど、
規則68条4項3号のおかげで打ち切られてしまった、
それでも他の経路には勝っているので○○駅発新下関着が最長経路です」、
そんなことがないだろうか?と。
考えたすえ、以下のような説明で「だいじょうぶだ」と納得できました。
ここまでは、新下関・小倉間の新幹線と在来線をまったく別物として扱ってきた。 この状況下で、新たに規則68条4項3号の存在を加味しても、 制約が増えるだけであるから、最長経路がより長くなる可能性はない。
規則68条4項3号が存在しても、(最長に限らない)片道乗車券がタイプL、 タイプO、タイプPのうちのどれか1つに必ず分類できること、 およびタイプOの経路が全国最長とならないことは明らか。
(規則68条4項3号をひとまず無視して) 新下関に接続する3本の枝を3本とも利用する経路は、 新下関を着駅とするタイプPの経路である。 新下関は接続駅なので、タイプPの着駅候補として想定済みである。 タイプPを扱う際には規則68条4項3号に対応する制約式を加えなかったので、 最長経路の「芽を摘んだ」可能性はない。
新下関に接続する3本の枝のうち「幡生→新下関」「新下関→小倉」 の2本を利用する経路は、 規則68条4項3号により新下関で運賃計算を打ち切られてしまうが、 この場合「新下関→厚狭」の枝は未使用であるから、 経路を必ず厚狭方面へ延長することができる。 延長した結果がタイプL、O、Pのいずれになるかは分からないが、 いずれにしても、できあがる経路は規則68条4項3号による制約と無縁のもの、 すなわち当初から想定済みのものである。