「オペレーションズ・リサーチ」は、与えられた制約条件の下、最適なデザインや運用システムを見つけるための意思決定に関わる科学的アプローチです。
ゆえに、オペレーションズ・リサーチは、「経営科学(Management Science)」とも呼ばれます。
- オペレーションズ・リサーチはどのように発展した?
- オペレーションズ・リサーチは何に利用できる?
- 意思決定のために、どのようにアプローチする?
- 数理最適化と機械学習は何が違うか?
オペレーションズ・リサーチの発展
オペレーションズ・リサーチの誕生は第二次世界大戦中。
イギリス軍の司令官が、重要な軍事課題の分析(レーダーの設置場所、護送・爆撃・潜水に関わるマネジメント, etc.)を、当時の科学者とエンジニア達に依頼したのが始まりと言われています。(1)
第二次世界大戦後、オペレーションズ・リサーチは応用数学の領域に分類され、1947年にはアメリカ空軍の下にSCOOP(Scientific Computation of Optimal Programs)と呼ばれる研究プロジェクトが設置されました。(2)
その後、George Dantzigが線形計画法、David George Kendallが待ち行列理論、Richard Ernest Bellmanが動的計画法、などを発表し、オペレーションズ・リサーチの発展に貢献しました。
日本では、1957年にオペレーションズ・リサーチ学会が発足し、アメリカに次いで世界で2番目の会員数を持ちます。(3)
オペレーションズ・リサーチという言葉自体を初めて聞きましたが、歴史が長いんですね!
オペレーションズ・リサーチの利用例
オペレーションズ・リサーチの中心テーマに数理最適化があります。
数理最適化は以下のような例で利用されます。
- コスト・時間を最小化する郵送物の配送計画
- 各種コストを考慮した年間予算の配分計画
- 利益を最大化するための工場の生産と輸送計画
- 需要・供給に基づいた新しい工場の建設計画
- 労働環境に基づいた人員配置のシフト計画
- 売り上げを最大化するための商品価格設定計画
- エネルギーロスを削減するための発電計画
- etc.
例のように、与えられた制約のもと、最適な解を見つける問題を「最適化問題」(あるいは「数理計画問題」)と呼びます。
そして、利用可能な集合から解を選択することを「数理最適化」と呼びます。
「数理最適化」はオペレーションズ・リサーチの一分野として発展してきました。
数理最適化のアプローチ
では、数理最適化はどんなアプローチをするんですか?
数理最適化は一般的に以下のアプローチから成ります。
- 現実問題の把握
- システム全体の観察
- 現実問題を数理モデルとして定式化
- アルゴリズムの開発
- モデル検証と開発モデルを使った予測
- 最適解の選択
- パートナーへの結果共有と現実課題に対する結論
- 実装・評価
まず、現実問題を簡略化することを目的に、現実問題を数理モデルに置き換えます。
数理最適化を実行するためのモデルを「最適化モデル」と呼びます。
最適化モデルは
- 目的関数 (Objective function)
- 決定変数 (Decision variables)
- 制約条件 (Constraints)
の3つを扱います。
現実問題を数理モデルに定式化した後、それを解くためのアルゴリズムを開発します。その後、コンピュータを使って最適解を導き、結論を得ます。
最後に、分析結果から得た結論から現実問題を解釈、意思決定に繋げます。
最適化モデルの「最適化」とは、目的関数を最大化(あるいは最小化)することを意味します。
最適化問題には、問題を解くための様々な種類のモデルがあります。例えば、
- 静的モデル (Static model):決定変数間の関係に時間を考慮しない
- 動的モデル (Dynamic model):決定変数間の関係に時間の影響を考慮する
- 線形モデル (Linear model):最適化モデルの目的関数と制約条件が線形関数の等式と不等式の関係で表される
- 非線形モデル (Nonlinear model):最適化モデルの目的関数と制約条件が線形関数の等式と不等式の関係で表されない
- 整数モデル (Interger model):決定変数が整数
- 決定論モデル (Deterministic model):決定係数の値が決まれば、目的関数の値と制約条件を満たすかどうかが決定づけられる
- 確率論モデル (Stochastic model):決定係数の値から、目的関数の値と制約条件を満たすかどうかが決定づけられない
などがあげられます。
ここまでをまとめると、オペレーションズ・リサーチの中心テーマに数理最適化があり、数理最適化は、制約条件のもとで目的関数を最大化(あるいは最小化)する決定変数を見つけ、選択することを目的とします。
数理最適化と機械学習
ちょっとややこしいですが、個人的な意見として、数理最適化は機械学習と以下の点で異なります。
数理最適化 | 機械学習 | |
---|---|---|
意思決定 | 目的 | 予測・分類 |
理解 | 解釈 | 不明 |
目的に関して、数理最適化は、目的関数を最大化・最小化するための行動を提案します。一方、機械学習の目的は、データのパターンに基づいて予測することであり、そこにどうすべきかのアクションまでは含まれません。
また、プロセスに関して、数理最適化は、目的関数と制約条件に従って問題を解くため、得られた結果を解釈できます。一方、機械学習は、トレーニングセットでモデルの損失関数の値を最小化するパラメータを設定することで予測精度を高めます。したがって、機械学習モデルで精度を高めるために、パラメータ設定の意図の理解が難しいです。
まとめ
- オペレーションズ・リサーチは意思決定に関わる科学的アプローチ
- 数理最適化はオペレーションズ・リサーチの中心テーマ
- 最適化問題を解くために、目的関数、決定変数、制約条件を利用
- 数理最適化と機械学習はコンセプトが異なる
うーん、ちょっとまだよく理解できてませんが、数理最適化と機械学習の特徴が異なるということは分かりました!
一昔前はアルゴリズムを描くことが難しかったそうですが、現在はGurobiのような便利なソルバーも出ていますので、数理最適化に取り組むためのハードルは下がっています。
この記事は以上です。次回は簡単な線形計画問題の例を解いてみます。
最後まで読んでいただきありがとうございました。
参考資料
(1): Winston, W. L., & Goldberg, J. B. (2004). Operations research: Applications and algorithms. Belmont, CA: Thomson/Brooks/Cole.
(3): 公益社団法人日本オペレーションズ・リサーチ学会, “オペレーションズ・リサーチとは”(7/12/2021アクセス)
(4): 武田朗子, 統計数理研究所, “数理最適化の紹介”, 2016
この記事は「オペレーションズ・リサーチと数理最適化」をまとめます。