•  定式化・シミュレーション
  •  最適化とは

製品の設計においては,材料費などのコストが小さく,かつ性能が良く なるよう,様々な決定が下されている. ネットワークの構築においては,予算や地理的な制約の下,信頼性の増 加や負荷の分散を目的として, 回線の多重化や高機能な機器の選択などが行われる.このように,最も適切な計画,設計などを作成し, または選択するこ とを最適化と呼ぶ.

最適化は,ごく日常的に行われているプロセスであり,例えば


 ・夕食の買い出しは,良い料理を安く作れるように食材を選択する;
 ・洋服の購入は,予算と今後の購入計画を考慮しながら,できるだけ気に入ったものを選択する;
 ・車による移動は,なるべく移動にかかる時間が短くなり,かつ必要なお金が少なくなるよう,また, 可能であれば景色がいいような経路を選択する;
 ・最適化問題であるといえる.


図1に示す,最適化問 題の求解プロセスにおける各段階を,大阪- 東京間の最適な 移動方法選択という問題を例にとって説明する.


図1: 最適化問題の求解プロセス
  1. 問題の把握
  2. その問題の目的は何であり,どのような制限 があり,なにが固定でなにを決定するのか, といったことを把握する. 例でいえば,

     ・移動にかかる時間を最短としたいのか,経費を最小としたいのか;
     ・使用可能な経費の上限はいくらか;
     ・移動手段を決定するのか,あるいは,それは定まっていて,利用 する便を決定するのか;

    といった事項を明らかにする.

  3. 問題のモデル化
  4. 問題において本質的でない部分を削ぎ落とし,定量的な表現を可能とする. 何らかの計算手法を適用する場合には,一般には式(1)のように表現可能とすることが必要である.


    minimize(maximize) f(x),
    subject to gi(x) ≦ 0, i = 1,2,..., m,
    x ∈ X.

    ここで,

    ・xは決定変数を,
    ・f(x)は目的関数を,
    ・gi(x)は制約条件を,
    ・Xは決定変数の定義域を,


    それぞれ表わす. 最適化問題はこれらの要素の特徴に基づいて分類される.

    例でいえば,大阪から東京まで新幹線を使うことが固定されているならば, 決定変数はどの便を使うかの1つとなる. このとき,決定変数は離散的な値をとり, そのような問題は組合せ 最適化問題と呼ばれる.

  5. 適用手法の選択
  6. 問題のモデルに基づいて,適切な求解手法を選択する.例でいえば, 時刻表を調べて適切な便を選択することも考えられるが,特別な制約条件がないのであれば, WEB上のサービスを使うことも可能である.

  7. 手法の適用
  8. 何らかの手法の適用において,複数のアルゴ リズムが使用可能であることが多い.この場合, どのアルゴリズムを選択し,またそこにパラメータが含まれているのであれば, その値を決定した上で対象モデルに適用する.例でいえば,自分で時刻表を調べるとしたとき, 便を探すための手順 (目次を見る,前から順に探すなど)に相当すると考えられる.

  9. 意志決定
  10. 手法を適用することで得られた結果が適切であるか否かを判断する.このような行為を行う主体は 意思決定者(Decision Maker; DM)と呼ばれ,必ずしも問題を解こうとしている主体と同じではない. その結果が適切であれば,それが対象とする最適化問題の最適解であるといえる.

  11. 設定の変更
  12. それまでに設定した事項を変更して,上述した最適化プロセスを繰返す. 以前の設定により得られた結果に応じて,アルゴリズムのパラメータ値の修正にとどまるかもしれないし, モデル化からやりなおす必要があるかもしれない.