予約システムの効用

レストラン、映画、宿泊、電車の切符・・・今の世の中便利なもので、大抵の物事は予約できます。
それでは、予約をするのと、行き当たりばったりとでは、世の中どれだけ違ってくるのでしょうか?
簡単なシミュレーションで試してみました。

例として、ガソリンスタンドのような燃料補給を取り上げました。

これがシミュレーションの画面、Flashでできています。
* 燃料補給の予約シミュレーション(要FlashPlayer)
>> http://brownian.motion.ne.jp/memo/ECharge.html
画面上、オレンジ色をした大きな丸がガソリンスタンド、
全部で10カ所、ランダムに配置されています。
小さな点は自動車で、全部で50個あります。
自動車の色は、状態によって変化します。

・水色 = 普通に走り回っている状態。
・黄色 = 燃料が少なくなってきて、ガソリンスタンドに向かっている状態。
・ピンク = ガソリンを補充している状態。
・黒 = ガソリンの補充を待っている状態(順番待ちの列に並んでいる)

画面下にあるグラフには、現在待っている自動車(黒)の合計数を表示しています。
希に、ガソリンスタンドにたどり着けずに燃料切れを起こす車があります。

・赤 = 燃料切れで止まった状態。

一度燃料切れを起こすと、もはや助ける手段はありません。
「再スタート」ボタンを押して、やり直しましょう。

「予約なし」の場合の、車の動きは次のようなものです。

・普段(水色)のときは、でたらめに走っている。
・燃料が少なくなってくると(黄色)、最も近くにあるガソリンスタンドに向かう。
・ガソリンスタンドでは、到着した車から順番に燃料補給を行う。
・燃料補給の時間は、使った燃料=走り回った距離に比例している。
・1つのガソリンスタンドで補給できる車は、一度に1台だけ(ピンク)、
 残りの車は列に並んで順番を待っている(黒)。
・燃料補給を終えると、再び普段の状態となって走り出す(水色)。

シミュレーターを動かしてみると、およそ30〜40台程度の車が順番待ちの列に加わります。
ガソリンスタンドの配置にもよるのですが、ざっと35台を中心にプラスマイナス5といった感じです。
燃料切れの車が発生すると、その分空きができるので、順番待ち台数も小さくなります。

それでは、「予約あり」ボタンを押すと、様相はどのように変わるでしょうか。
「予約あり」の場合、車の動きは次のようになります。

・自車の燃料で行くことのできるガソリンスタンドの中で、
 現時点で一番空いているところに予約を入れる。
・普段は、ガソリンスタンドからあまり遠く離れない範囲を走行する(白色)。
・燃料が少なくなってくると(黄色)、予約したガソリンスタンドに向かう。
・予約のある車は優先的にガソリンを入れてもらえる。
 ただし、予約のある車同士であれば、順番待ち(黒色)。

果たして「予約なし」と「あり」では、順番待ちの台数に違いがあるでしょうか?
待ち台数の経過を長い目で追うと、やはり「予約あり」の方が、「予約なし」より少なくなるようです。
「予約あり」の場合、待ち台数は平均して30台強くらい、ときどき20の大台もちらほら出てきます。
「予約なし」の場合には、どちらかと言えば30台の後半で、たまに40の大台も出ていました。
つまり、ざっと見には平均して5台くらいの差が出ているわけです。
この差はどこから来ているのでしょうか。
ガソリンスタンドの周りに集まっている車の点を、よく見てください。
「予約なし」の場合には、集まる車の数にムラがあります。
2,3カ所のスタンドに黒い点(=順番待ち)が集中しているかと思えば、
あと残りのスタンドは空いている、といった状況がしばし生じています。
一方、「予約あり」の場合には、わりとどのスタンドにも均等に車が集まっています。
「空いているスタンドから優先的に予約を入れる」という作りになっているので、当然そうなるわけですが、
実際のことを考えても、予約表を見て空いている方に入れるというのは自然であるように思えます。
また、「予約あり」の状況下では、滅多に燃料切れが起こりません。
これもシミュレーションの作りに理由があって、「予約あり」の場合には、
車は予約を入れたスタンドにたどり着けないほど遠くには行かないようになっています。
これも実際に予約を入れる状況を思えば、自然なことだと思います。

* まとめ *
・「予約なし」では、ガソリンスタンドの混み具合にムラができる。
 混雑するスタンドがある一方、空いているスタンドもある。
・「予約あり」にすると、空いていたスタンドを効率よく回すことができるようになる。
・その結果、全体としての待ち台数は減る。
 このシミュレーションの場合、効果は約5台/50台、
 つまり約1割程度の車が無駄に待たなくて済むようになる。

※参考: いわしはなぜ群れるのか >> [id:rikunora:20081202]