2016-8-9_0-21-16_No-00

トレードオフの関係

あちらを立てればこちらが立たずの関係とは、たとえばダイエットしている方にとって、空腹度と肥満度の関係です。どちらも小さいくしたいですが、どちらかを小さくすると一方が大きくなってしまいます。たくさん食べて空腹度を下げると肥満度が上がってしまいますし、逆に肥満度を下げようとすると食事を制限して空腹度が上がってしまいます。

このように2つ以上の目指したいことがあったときに、一つを良くしようとすると他が悪くなるようなとき、それらの関係はトレードオフの関係、と呼びます。あちらを立てればこちらが立たず、ですね。

このようなトレードオフの関係にある複数の目的を同時に最適化することが、多目的最適化です。空腹度と肥満度とを同時に小さくする、ということも多目的最適化なのです。

もちろんデータ解析・分析の分野でも多目的最適化はあります。むしろ、あまり気付きませんが、ほとんどが多目的最適化問題です。たとえばLASSOも、

  • 誤差の二乗和
  • 回帰係数の絶対値の和

を両方小さくする多目的最適化問題です。

多目的最適化問題への取り組み方

多目的最適化を行うには大きく分けて2つの方法があります。

  • 一つの指標に変換する
  • パレート最適解を求める

順に説明します。

一つの指標に変換する

A, B, C, …をすべて最小化したいときは、それらを一つにまとめて、

Z = A + βB + γC + ・・・

という1つのZにまとめて、Zを最小化するようにします。ちなみにβ, γ, …は重みであり、0より大きい数です。たとえばAは最小化したい、Bは最大化したい、Cは最小化したい、といったときは、βを0より小さい数、γを0より大きい数とします。

この方法のメリットは、まず分かりやすいということです。一つの指標になりますので、普通の最適化問題になります。また、LASSOがそうであるように、解析的に解を求められることもメリットです。

ただしデメリットとして、重みβ, γ, …の値によって結果が大きく異なることがあるため、重みの値を変えて試行錯誤する必要があります。直感で重みを決めてはいけないのは、こちらに書いたとおりです。

目的関数や評価関数を直感だけで決めてはいけない~結果を確認しながら試行錯誤しよう~ : 大学教授のブログ

パレート最適解を求める

パレート最適解とは、複数の目的関数を同時に改善できる解がないような解のことです。たとえば、A, Bをどちらも最小化したいときに、次の3つの解があったとします。

  • 解1: A = 1, B = 5
  • 解2: A = 3, B = 3
  • 解3: A = 2, B = 7

このとき、解1と解2はパレート最適解ですが、解3はパレート最適解ではありません。AもBもより小さくできる (改善できる) 解1があるためです。

この方法のメリットは、上の「一つの指標に変換する」のような重みを設定する必要がないことです。

ただしデメリットとして最適化が複雑になります。基本的には、多目的遺伝的アルゴリズムなどのメタヒューリスティックアルゴリズムを使うことになります。

まとめ

多目的最適化は2つ以上の目的があり同時に最適化することです。実際、一つのものを最適化すれば良いといったケースはほとんどなく、基本的にすべての問題は多目的最適化の問題です。最適化の方法として、一つの指標に変換する方法とパレート最適解を求める方法を説明しましたが、一長一短あります。試行錯誤しながらぜひよりよい解を求めましょう!

ご案内。

オススメ記事セレクション。

twitterでも発信中。

この記事に興味を持っていただけましたら、ぜひフォローをお願いします!


無料メルマガでブログにない情報を配信中。

データ解析・分析に興味がありましたらぜひ登録をお願いします!
無料メルマガの登録はこちら