モデル化とシミュレーション|モデルの種類と待ち時間・乱数を使った試行
実際に試すのが難しいこと、時間やお金がかかることを、コンピュータの中で試してみる方法がシミュレーションです。そのための「現実を単純化したもの」がモデルです。共通テストでは、2025年・2026年とも、手順に従って表を埋めるシミュレーションの問題が出題されています。
モデルとモデル化
モデルは、現実の物事や現象の本質的な部分を取り出して単純化し、分かりやすく表したものです。モデルを作ることをモデル化といいます。
モデル化の手順
| 手順 | すること | 例:模擬店のレジの行列 |
|---|---|---|
| ① 目的を決める | 何を知りたいのかをはっきりさせる | レジを何台にすれば、待ち時間が5分以内になるか |
| ② 要素を取り出す | 結果に影響する要素を選び、関係のないものは省く | 客の到着の間隔、会計にかかる時間、レジの台数(客の服装などは省く) |
| ③ 関係を明らかにする | 要素どうしの関係を、式・図・表などで表す | 「開始時刻=到着時刻と前の客の終了時刻の遅い方」 |
目的によって、残す要素も省く要素も変わります。目的に合わないモデルからは、役に立つ結果は得られません。
モデルの分類
表し方による分類
| 分類 | 内容 | 例 |
|---|---|---|
| 物理モデル | 実物を拡大・縮小したり、形をまねたりしたもの | 地球儀、建物の模型、風洞実験の飛行機の模型 |
| 数式モデル | 要素の関係を数式で表したもの | 落下の式、預金の利息の計算式、人口の増加の式 |
| 図的モデル | 要素の関係を図で表したもの | 路線図、フローチャート、状態遷移図、回路図 |
物理モデルのうち、実物と同じ大きさのものを実物モデル、縮小したものを縮小モデルということもあります。
性質による分類
| 分類 | 意味 | 例 |
|---|---|---|
| 確定的モデル | 同じ条件なら、結果は必ず同じになる | 一定の速さで進む車の位置、毎月同じ額を積み立てる貯金 |
| 確率的モデル | 偶然の要素を含み、結果が毎回変わりうる | さいころの目、客の来店、くじ引き |
| 静的モデル | 時間の経過を考えない | 建物の模型、ある時点の家計の収支 |
| 動的モデル | 時間とともに状態が変化する | 人口の推移、行列の長さの変化、水槽の水位の変化 |
シミュレーション
**シミュレーション**は、モデルを使って、条件を変えながら結果を調べることです。
確定的モデルのシミュレーション(手計算)
例: 水槽に毎分 3L ずつ水を入れ、同時に毎分 1L ずつ排水する。最初の水の量が 10L のとき、何分後に 20L になるか。
| 時間(分) | 0 | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|---|
| 水の量(L) | 10 | 12 | 14 | 16 | 18 | 20 |
「次の量 = 今の量 + 入る量 − 出る量」という規則を繰り返し当てはめると、5分後です。このように、前の状態から次の状態を求める規則を作って表を埋めるのが、シミュレーションの基本です。
待ち行列のシミュレーション
客が順番にサービスを受けるときの待ち時間は、次の規則で計算できます。
- 開始時刻 = 「本人の到着時刻」と「直前の人の終了時刻」の遅い方
- 終了時刻 = 開始時刻 + サービスにかかる時間
- 待ち時間 = 開始時刻 − 到着時刻
2026年の本試験 第3問 では、この規則で文化祭のゲームの待ち時間を表にまとめ、体験時間を1分から順に変えて、最長待ち時間が10分未満になる体験時間を調べました(「2026年 第3問 解説」)。
確率的モデルと乱数
確率的モデルでは、偶然の要素を乱数(でたらめな数)で表します。
- さいころの目:
整数(乱数() * 6) + 1で 1〜6 のどれかになる - 客が来るかどうか:乱数が 0.3 未満なら「来る」とすれば、来る確率は30%
確率的なシミュレーションは、1回だけだと結果が偶然に左右されるので、何回も試行して平均や分布を見ることが大切です。乱数を使って多数回の試行を行い、結果の傾向を調べる方法をモンテカルロ法といいます。
2025年の本試験 第2問B では、10人のメンバーの支払い方(千円札か一万円札か)を乱数で決めるシミュレーションを使って、おつり用の千円札を何枚用意すればよいかを調べる問題が出ました(「2025年 第2問 解説」)。
結果を評価する
シミュレーションの結果は、モデルの前提によって決まります。
- 前提は現実と合っているか:「全員の体験時間が同じ」「交替時間はない」などの単純化が、結果にどう影響するか
- 試行回数は十分か:確率的なシミュレーションでは、回数が少ないと偶然の偏りが大きい
- 実際のデータと比べる:可能なら、過去の実績と比べてモデルの妥当性を確かめる
結果がおかしいと感じたら、モデルを見直して、もう一度シミュレーションします(問題解決のPDCAサイクルと同じ考え方です)。
共通テストでの出題
- 2026年の本試験 第3問:ゲームの待ち時間(確定的な待ち行列のシミュレーション)を、表とプログラムで求める問題。
- 2025年の本試験 第2問B:乱数を使って集金のおつりを調べる、確率的なシミュレーション。
- モデルの分類:示された例が、物理・数式・図的のどれか、確定的・確率的のどちらかを選ぶ問題。
よくある間違い
- 「モデルは現実を完全に再現したもの」:モデルは目的に合わせて単純化したもので、省いた要素の影響は反映されません。
- 確率的なシミュレーションを1回で判断する:何回も試行して傾向を見ます。
- 規則の当てはめ方を間違える:前の状態から次の状態を求めるとき、どの値(前の人の終了時刻か、本人の到着時刻か)を使うかを表で確かめましょう。
まとめ
- モデル化は「目的を決める → 要素を取り出す → 関係を明らかにする」
- 表し方で物理・数式・図的、性質で確定的・確率的、静的・動的に分類する
- シミュレーションは「前の状態から次の状態を求める規則」を繰り返し当てはめる
- 確率的なシミュレーションは乱数を使い、多数回試行して傾向を見る