1.ドライブ中の悩みを数学で解く:「ガソリンスタンド最安値問題」
車で知らない道を走っているとき、こんな経験はありませんか?
「あ、ガソリンスタンド(GS)がある。でもちょっと高そうだな…もう少し先に行けば、もっと安い店があるかも!」
そう思って通り過ぎたものの、その先にあるGSはどれも最初のお店より高くて、結局一番最後の高いお店で給油する羽目になり大後悔——。
戻ることができない一本道に 10軒のガソリンスタンド が並んでいるとき、私たちは「何軒目まで見送って、何軒目から給油を決断すべきか?」。
今回はこの日常の悩みを確率論でガチ計算し、ネットでよく知られる「有名理論の罠」と「本当に得する買い物戦略」を解き明かします!

2.ネットで有名な「秘書問題(37%ルール)」の罠
この問題は、確率論やオペレーションズ・リサーチの世界では「秘書問題(最適停止問題)」として非常に有名です。
秘書問題のルール
- ガソリンスタンドは全10軒。後戻りはできない。
- 最初の $k$ 軒は「価格相場の下見」として絶対に通り過ぎ、暫定の最安値を調べる。
- $(k+1)$ 軒目以降で、それまでの暫定最安値より1円でも安い店が出たら即座に入る。
- 9軒目までに更新できなければ、最後の10軒目で強制給油。
このルールで「全10軒の中で完璧な1番(真の最安値)を引き当てる確率 $P$」を計算すると、以下のようになります。
| 下見する軒数 (k) | 割合 | 評価を始める店舗 | 最安値(1位)を選べる確率 |
| 1軒 | 10% | 2軒目から | 32.58% |
| 2軒 | 20% | 3軒目から | 36.58% |
| 3軒 | 30% | 4軒目から | 39.87% (最高確率) |
| 4軒 | 40% | 5軒目から | 39.83% |
| 5軒 | 50% | 6軒目から | 37.28% |
数学の教科書での結論はこうです。
「全10軒のうち3軒(30%)を下見に使い、4軒目以降で過去最安値が出たら即決するのが最適解(成功率 約40%)」
※なお、全体の選択肢 $n$ が十分大きい場合、最適な下見の割合は $\displaystyle \frac{1}{e} \approx 36.8\%$ に収束するため、一般に「37%ルール」と呼ばれています。
💡 ここが秘書問題の罠!
一見完璧に見えるこの理論ですが、現実の買い物に当てはめると大きな穴があります。
なぜなら秘書問題は「1位(最安値)以外は、2位であっても3位であってもすべて『失敗(0点)』とみなす」という、極端なオール・オア・ナッシングのルールだからです。
しかし、現実の給油で重要なのは「1位当てギャンブル」ではなく、「支払うガソリン代の平均額(平均順位)をできる限り安く抑える(=大損を避ける)」ことのはずです!
3.ガチ証明:平均支払額(期待順位)を最小化する最適条件
では、「購入するガソリンの順位の期待値 $E$」 を最小化するには、何軒下見するのが数学的に正しいのでしょうか?
厳密に証明してみましょう。

確定モデルの導出
【前提設定】
$n$ 軒のGSの価格を安い順に順位 $1 \sim n$(1が最安値)とします。最初の $k$ 軒を観察してベンチマーク $M$($k$ 軒の中での最小順位)を記録し、$(k+1)$ 軒目以降で $M$ より安い店が出たら即入る戦略をとります。
【ステップ1:ベンチマーク $M$ の期待値】
$k$ 軒の中での最良順位 $M$ の期待値は、組み合わせ論より以下のようになります。
$$\displaystyle E[M] = \frac{n+1}{k+1}$$
また、$M=1$(最安値が既に下見の $k$ 軒の中に存在した)となる確率は $\displaystyle P(M=1) = \frac{k}{n}$ です。
【ステップ2:選択順位の条件付き期待値】
- $M=1$ の場合: ベンチマークを超える店がもう現れないため、最終 $n$ 軒目で強制給油となります。$n$ 軒目の順位は $\{2, \dots, n\}$ 上で一様分布するため、$$\displaystyle E[\text{選択順位} \mid M=1] = \frac{n+2}{2}$$
- $M=m \ge 2$ の場合: 順位 $1 \sim m-1$ の店舗がすべて $(k+1)$ 軒目以降に存在し、その中で最初に現れたお店を選びます。対称性より、選ばれる順位の期待値は、$$\displaystyle E[\text{選択順位} \mid M=m] = \frac{1 + 2 + \dots + (m-1)}{m-1} = \frac{m}{2}$$
【ステップ3:全体の期待順位の公式】
これらを掛け合わせて合計すると、全体の期待順位 $E[\text{順位} \mid k, n]$ は次のシンプルな公式に整理されます。
$$\displaystyle E[\text{順位} \mid k, n] = \frac{n+1}{2} \left( \frac{1}{k+1} + \frac{k}{n} \right)$$
【ステップ4:最適な下見軒数 $k^*$ の導出】
期待順位を最小化するために、$f(k) = \displaystyle \frac{1}{k+1} + \frac{k}{n}$ を $k$ で微分して 0 と置きます。
$$\displaystyle f'(k) = -\frac{1}{(k+1)^2} + \frac{1}{n} = 0 \implies (k+1)^2 = n$$
$$\displaystyle \therefore k^* = \sqrt{n} – 1$$
なんと、平均支払額を最小化する最適な下見軒数は $\sqrt{n} – 1$ という美しい極限式で与えられるのです!
4.計算結果:実は「2軒見送り(20%)」がコスパ最強!
求めた公式に $n = 10$ を代入してみましょう。
$$\displaystyle k^* = \sqrt{10} – 1 \approx 3.162 – 1 = 2.162$$
連続値での最適値は約 $2.16$ です。実際に $n=10$ における各 $k$ の期待順位を計算して比較してみます。
| 下見する軒数 (k) | 割合 | 評価開始店舗 | 期待順位(平均順位) |
| 0軒 | 0% | 1軒目から即決 | 5.50 位 |
| 2軒 | 20% | 3軒目から | 2.93 位 (★最小・最適解) |
| 3軒 | 30% | 4軒目から (37%ルール) | 3.03 位 |
| 5軒 | 50% | 6軒目から | 3.67 位 |
| 9軒 | 90% | 最後の1軒 | 5.50 位 |

📊 驚きの結論
最安値1位だけを狙う「37%ルール($k=3$)」では平均 $3.03$ 位ですが、たった2軒(20%)見送って3軒目から決断する($k=2$)と、平均 $2.93$ 位となり最も良い買い物ができます!
「1位を当てる」ことだけに執着せず、「損をせず平均して安く買う」ことが目的であれば、下見に時間をかけすぎる必要はありません。わずか 20%(10軒なら2軒)下見するだけで十分な情報を得られ、早めに意思決定する方が平均支払額は圧倒的に安くなるのです。
5.まとめ:日常の買い物への応用
今回の「ガソリンスタンド最安値問題」から得られる、数学的に正しい行動パターンは以下の通りです。
- 「1番(最安値)」を一点突破で狙うなら:全体の 約 30〜37%(10軒なら3軒)を下見に使い、4軒目以降で過去最安値が出たら即決する。
- 「平均して一番得したい(大損を避ける)」なら:全体の 約 20%($k^ = \sqrt{n}-1$)*(10軒なら2軒)だけ下見して、3軒目以降で過去の最安値を下回ったら即決する!
「引っ越しの部屋探し」や「ネットショッピングの比較」など、後戻りできない選択肢で迷ったときは、「最初の2割で相場を掴み、すぐに決断へ動く」という20%ルールをぜひ活用してみてください!


コメント