常に10人が並んでいるATM1台にもう1台ATMを追加すると・・・

2016年6月15日

学習 日記

行列における統計を調査している人におもしろい問題を聞きました。 「常に10人並んでいる1台のATMがあり、そこにもう一台ATMを設置したらどうなるか?」
- 変化なし - 5人の行列が2つできる - 行列が無くなる
単純に考えて正解は2だと思ったんだが、3番が正解。

簡単に解説

この問題は、少し引っ掛けがあり、「常に10人並んでいる」という所がポイントで、説明が不足していると思われる箇所は、並んでいる人数ではなく、「どの位の利用者がいる」かということ。 言い変えてみると、常に10人並んでいるということは、利用者に対して、処理能力は一定であると言える。 もし仮に、処理能力が足りずに10人ならんでいるのだとすると、常に10人並んでいるのではなく、 1時間後には倍かそれ以上に行列が膨らんでいるからである。 これを踏まえて、ATM機を2台にしてみると、1台で利用増加と同等の処理能力を有しているとする。 2台あれば、利用増加数を上回る処理能力になるため、10人並んでいる列の数が減っていき、 将来的に並んでいる人は0人になるはずである。

サーバーバランシングで応用編

これが実際にどういう場面で使えるかと言うと、サーバーレスポンスに関しての処理待ち状態や、 ピーク時の最大数が処理数を上回っている場合に、どのくらいのバランシング台数にするのが適正かと考える場合、 待ち状態の数を考えて台数を決めるのも、処理数の参考値で決めるのも、正確な値は出ず、 最大アクセス数を処理数と待ち数に分割して行う必要があるという事。 このうち、処理数というのは、「最大処理数」として、サーバーの負荷計測を行うことで算出できるので、この値を持っておくと、待ち数だけで判断が可能になる。

行列は悪なのか?

ただ、待ち数が発生するシステムが問題かというと、そうでもなく、瞬間的にアクセスが過多になるサービスなどの場合は、 最大数でのサーバー維持を行う事は得策ではなく、費用対効果を考えて、待ち人数を何人にするかという考え方のほうが効率がいいのである。 飲食店などにおける行列というのは、店舗側にとってみると、「人気の証」でもあるため、行列ゼロの状態は「閑古鳥が鳴いている」と考える人もいるため、 サクラを使ってわざわざ行列を演出する場合もあるため、行列が必ずしも悪ではないといえるかもしれません。 利用者側の心理としても、行列に並んでいるときは、それがストレスと感じる人は少なく無いでしょうが、後日「◯時間並んでラーメン食った」などの自慢話をしている人が意外と多くいる印象があるので、今時ではこの自慢話をSNSで拡散するというのがサクラよりもいいブランド戦略なのかもしれませんね。

実店舗にも応用

O2Oなどで、順番待ちシステムが増えてきていますが、多くのサービスが「待ち時間軽減」などをうたって、 アプリなどにより利便性を増す施策を取っていますが、店舗側で「待ち人数」を把握して適正に対応できる状態ができると、利用者も店舗側のハッピーになることでしょう。 飲食店舗などで、ランチ時に大量の行列が出来、1時間待ちという風にどこぞの遊園地のアトラクションの状態になるのもいかがなものかと思いますが、 これも短期的に爆発的な利用者の増加における待ち数が、キャパを超えてしまうためなので、 飲食店舗などは、席数が限られているので仕方がなく、ユーザー側が、「どの店が空いている状態」などをアプリを通じて把握し、 行列のできる店舗にわざわざ並ぶのではなく、より待ち時間の少ない店舗に行くような選択肢が持てる事が重要なのです。 O2Oというジャンルは、1店舗で考えるのではなく、地域内の店舗をひっくるめて管理できる事が求められている気がします。

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。