機械学習理論研究室
← AI体験の一覧
パン屋さんは毎朝、その日に何個焼くかを決めます。売れ残れば捨てることになり、足りなければ売り逃します。何個焼くのが正解でしょうか。平均のぶんだけ作る、では正解になりません。
1個 200 円で売るメロンパンを、材料と手間で 150 円かけて焼きます。売れ残ったパンは 0 円、つまり捨てるだけです。お客さんが何個買いにくるかは日によって変わり、平均するとだいたい60個です。そこで「毎朝60個焼く」と決めてみます。
1個売れ残ると、材料費の 150 円がそのまま消えます。逆に1個足りないと、売れたはずの利益 200 − 150 = 50 円を取り逃がします。
この2つの損は、同じ大きさではありません。 このパン屋では売れ残りの損のほうが3倍も重いのです。それなら、平均の60個をそのまま焼くのは本当に得なのでしょうか。STEP 2で確かめます。
30日のうち、売れ残った日も品切れの日もありました。では毎朝の数を60個から1個ずつずらしていくと、1日あたりの利益はどちらに動くでしょうか。スライダーを動かしてみてください。
太い線が1000日ぶんのシミュレーション結果です。山のてっぺんが、いちばん儲かる焼く数です。
同じ数を焼いても、日によって利益はこれだけ違います。その平均が上の曲線の1点になります。
もっと高く売れるパンなら、1個売り逃す痛手は大きくなります。売れ残りを半額で引き取ってもらえるなら、作りすぎの痛手は小さくなります。値段を動かすと、いちばん儲かる数はどこへ移るでしょうか。
毎日きっちり60個売れると分かっているパン屋なら、60個焼けば済みます。ところが実際は、40個の日も80個の日もあります。日によっての散らばりが大きくなるほど、正解は平均の60個から遠ざかります。スライダーで散らばりを変えて、正解がどちらへ動くか見てください。
色を塗った部分の面積が、ちょうど臨界比と同じになるところが正解です。
横軸がばらつき、縦軸が焼くべき数です。点線が平均需要の60個です。
最適な仕入れ量 = 需要分布の Cu/(Cu+Co) 分位点
この式は新聞売り子モデル(newsvendor model)と呼ばれ、経営システム工学でいちばん基本になる意思決定の問題です。売れ残りの損と品切れの損の重さが違うとき、正解は平均から動きます。動いた先は「需要がその数以下におさまる日が全体の何%か」で決まる位置、つまり分位点です。
そして Co と Cu が同じ大きさなら、臨界比は 0.5、つまり正解は中央値になります。多すぎたときの損と少なすぎたときの損が違う、これを非対称な損失といいます。「平均か中央値か」のアプリで扱っているのも、まったく同じ式です。呼び名が違うだけで、中身はひとつです。
同じ考え方は、お店の在庫だけでなく、飛行機やホテルの座席をいくつ予約に出すか、病院がベッドや人工呼吸器をいくつ用意しておくか、発電所が予備の電力をどれだけ確保するか、といった判断にもそのまま使われています。どれも「足りない損」と「余らせる損」の重さが違うからです。
機械学習理論研究室では、こうした「損の形をどう決めるか」「データから需要の分布をどう推定するか」を研究しています。