U「OR(オペレーションズ・リサーチ)」という言葉を初めて見たとき、「オペレーションってどんな研究?」と思いました。調べてみると「数学を使って経営の意思決定を最適化する手法群」だとわかり、線形計画法・待ち行列・デシジョンツリーがすべてその一部だと気づいて、点が線でつながった感覚がありました。
この記事でわかること
- OR(オペレーションズ・リサーチ)の全体像と主要手法
- 線形計画法の考え方と実行可能領域・最適解の見つけ方
- 待ち行列理論の基本公式(M/M/1モデル)
- デシジョンツリー(決定木)の構造と期待値計算
- PERT・CPM(クリティカルパス)の読み方
目次
OR(オペレーションズ・リサーチ)とは
OR(Operations Research)は、数学・統計・モデリングを活用して、経営上の複雑な問題に対して最適な意思決定を支援する学問領域です。第二次世界大戦中に軍事作戦の最適化を目的として発展し、戦後に企業経営へ応用されました。
| 手法 | 概要 | 主な用途 |
|---|---|---|
| 線形計画法(LP) | 線形の制約条件のもとで目的関数を最大化・最小化する | 生産計画・資源配分・輸送最適化 |
| 待ち行列理論 | サービス施設への到着・処理を確率モデルで分析する | コールセンター設計・病院待ち時間・レジ台数決定 |
| デシジョンツリー | 意思決定の選択肢と結果を樹形図で整理し期待値を計算する | 新規事業判断・設備投資・リスク分析 |
| PERT・CPM | プロジェクトの作業を有向グラフで表し最長経路(クリティカルパス)を求める | プロジェクト管理・スケジュール最適化 |
| シミュレーション | モンテカルロ法等で確率的な事象を何千回も試行し結果を分析する | 在庫シミュレーション・需要予測・リスク評価 |
線形計画法——限られた資源で最大の成果を
「材料Aが100kg、材料Bが80kgあるとき、製品XとYをどれだけ作れば利益が最大になるか」——こうした問いに答えるのが線形計画法(Linear Programming)です。
線形計画法の構成要素(試験頻出)
目的関数:最大化(利益)または最小化(コスト)したい値を表す式例:Z = 3X + 5Y(最大化)
制約条件:資源量・能力等の上限を表す不等式
例:2X + 4Y ≤ 100(材料A制約)/ X + Y ≤ 60(材料B制約)/ X,Y ≥ 0(非負条件)
実行可能領域:すべての制約条件を同時に満たす解の集合(グラフ上の多角形領域)
最適解:実行可能領域の頂点(端点)のいずれかに最適解が存在する(端点定理)
端点定理の直感的な理解
- 目的関数の等高線(等利益線)を平行移動させていくと、実行可能領域の最も端(頂点)で接するときが最大値
- 実際の解法:頂点の座標をすべて目的関数に代入し、最大値を与える頂点が最適解
- 試験では「グラフを描いて頂点の座標を読み取る」問題が出る。聯立方程式を解く練習が必要
待ち行列理論——レジの台数は何台が最適?
スーパーのレジ待ちや電話の保留——「何台あれば待ち時間を許容範囲に抑えられるか」を数学的に求めるのが待ち行列理論です。試験では最もシンプルなM/M/1モデルが頻出です。
M/M/1モデルの公式(試験頻出)
記号:・λ(ラムダ):単位時間あたりの平均到着率(例:1時間に10人来る → λ=10)
・μ(ミュー):単位時間あたりの平均サービス率(例:1時間に15人さばける → μ=15)
・ρ(ロー)= λ/μ:利用率(ρ < 1 でシステムが安定)
主要公式:
・システム内平均顧客数:L = ρ/(1-ρ)
・システム内平均待ち時間:W = 1/(μ-λ)
・待ち行列内平均顧客数:Lq = ρ²/(1-ρ)
・待ち時間(サービス前):Wq = λ/{μ(μ-λ)}
待ち行列の直感的イメージ
- λ=10、μ=15 なら ρ=10/15≒0.67(67%の稼働率)→ 安定して運営できる
- λ=15、μ=15 なら ρ=1.0 → 理論上、待ち行列は無限大に(キャパオーバー)
- ρ が 1 に近づくほど待ち時間が急激に長くなる(混雑の非線形性)
デシジョンツリー——不確実な将来を「期待値」で選ぶ
「新工場を建設するか、既存設備を拡張するか。好景気なら〇億円の利益、不景気なら△億円の損失になる」——このような不確実性のある意思決定を整理するのがデシジョンツリー(決定木)です。
デシジョンツリーの構成要素
決定ノード(□):意思決定者が選択する分岐点。複数の選択肢から1つを選ぶ確率ノード(○):自然の状態(市場環境等)が決まる分岐点。確率が付随する
端末ノード:各シナリオの最終的な結果(利益・損失)
解法手順(後ろから解く「バックワードインダクション」):
① 各確率ノードで「期待値 = Σ(確率 × 結果)」を計算
② 各決定ノードで最大期待値を選択(最大化問題の場合)
③ 根(最初の決定ノード)まで遡って最適戦略を決定
【例】新製品投入の判断
□ ─── 投入する ─── ○ ─── 好景気(確率0.6) → +2,000万円
│ └── 不景気(確率0.4) → -500万円
│ 期待値 = 0.6×2,000 + 0.4×(-500) = 1,200 – 200 = 1,000万円
│
└── 投入しない ──────────────────────── 0円
→ 期待値1,000万円 > 0円 なので「投入する」が最適
PERT・CPM——プロジェクトの最長経路を探す
| 用語 | 意味 |
|---|---|
| PERT(Program Evaluation and Review Technique) | 作業間の依存関係をアローダイアグラム(矢線図)で表す。各作業に楽観値・最悲観値・最確値を設定して期待完了時間を推計 |
| CPM(Critical Path Method) | クリティカルパス(最長経路)を求め、プロジェクト最短完了時間を算出。クリティカルパス上の作業に遅れが生じると全体が遅延する |
| クリティカルパス | 開始から終了までのすべての経路の中で所要時間が最長のもの。この経路上の作業に余裕(フロート)はゼロ |
| フロート(余裕時間) | プロジェクト全体に遅れを与えずに作業を遅らせられる時間。トータルフロート=最遅開始時刻-最早開始時刻-作業時間 |
クリティカルパスの求め方(試験対策)
- アローダイアグラムを書いて、各イベントの最早完了時刻(前向き計算)を求める
- 次に最遅完了時刻(後ろ向き計算)を求める
- フロート = 0 の作業を結ぶ経路 = クリティカルパス
- 試験では「どの経路がクリティカルパスか」「最短完了日数は何日か」の問いが多い
Uのメモ
学習メモ
- 線形計画法:制約条件の頂点に最適解がある(端点定理)。頂点の座標を目的関数に代入して比較
- 待ち行列M/M/1:ρ=λ/μ(利用率)。ρ<1で安定。L=ρ/(1-ρ)・W=1/(μ-λ)
- デシジョンツリー:後ろから期待値計算(バックワードインダクション)
- PERT:アローダイアグラム。クリティカルパス=最長経路=フロート0の作業の連鎖
- フロート=最遅開始時刻-最早開始時刻-作業時間









