u++の備忘録

待ち行列モデルを用いてセブンイレブンのコンサルティングをしてみた

2015年に大学の授業で、待ち行列モデルを用いてセブンイレブンコンサルティングをした際の資料が出てきたので、出せる部分のみ編集して共有します。


問題設定

大学の最寄り駅近くにあるセブンイレブンを利便性の都合上よく使うのですが、当時の店員のオペレーションに不満を感じていました。それは二つレジがあるにもかかわらず原則一つのレジしか稼働しておらず、5人程度の列ができないと二つ目のサポートが入らない点です。

今回は「平均来店人数」と「平均レジ処理速度」を定義することで行列の数を再現する「待ち行列モデル」を用いて、①このセブンイレブンでどの程度の待ち時間が生じているか②仮に3人並んだ段階で2人体制になったら待ち時間がどの程度削減されるかーーを調べてみました。

実験

①このセブンイレブンでどの程度の待ち時間が生じているか

最初に実地調査をもとに、「平均来店人数」を1分間に1人、「平均レジ処理速度」を店員1人当たり40秒に1人と定義しました。そして共に指数分布に従うと仮定し、モンテカルロシミュレーションを実行します(理論の詳細は割愛します)。「エクセルのシート関数で処理しましょう」みたいな授業だったので、基本はExcelのシート関数で処理しつつ、難しかった部分はVBAで補っています。

この時の系内人数分布と待ち時間分布は下記のようになりました(グラフはRのggolot2で作成しました)。

系内人数分布

f:id:upura:20171118155356p:plain

待ち時間分布

f:id:upura:20171118155249p:plain

ここで、過去のアンケート結果を引用し、コンビニにおける「許容待ち時間」を3分と設定しました。この場合に、シミュレーション結果からは、許容待ち時間の3分を超える層が9.01%もいると判明しました。

②仮に3人並んだ段階で2人体制になったら待ち時間がどの程度削減されるか

ここでは「平均来店人数」と「平均レジ処理速度」の設定は変えず、3人並んだ段階で2人体制になるようにモデルを変更しました。

この時の系内人数分布と待ち時間分布は下記のようになりました。

系内人数分布

f:id:upura:20171118155850p:plain

待ち時間分布

f:id:upura:20171118155929p:plain

①の場合と比較すると下記のようになります。

系内人数分布

f:id:upura:20171118160050p:plain

待ち時間分布

f:id:upura:20171118160100p:plain

まとめ

f:id:upura:20171118160146p:plain

②の変更によって「許容待ち時間」を超えた層の割合が1.38%にまで削減されました。現実世界はここまで上手くいかないとは思いますが、このオペレーションにしてもらえると、顧客満足度は大幅に上昇する気がします。当時の僕にもう少しコミュニケーション力があれば、この資料をセブンイレブンに持参したかもしれません(???)。