遺伝的アルゴリズム-適応度関数

簡単に定義された適応度関数は、 candidate solution to the problem as input and produces as output 検討中の問題に関して、ソリューションがどの程度「適切」であるか。

フィットネス値の計算はGAで繰り返し実行されるため、十分に高速である必要があります。適合度値の計算が遅いと、GAに悪影響を及ぼし、非常に遅くなる可能性があります。

ほとんどの場合、適応度関数と目的関数は、目的が特定の目的関数を最大化または最小化することと同じです。ただし、複数の目的と制約を伴うより複雑な問題の場合、Algorithm Designer 別の適応度関数を持つことを選択するかもしれません。

適応度関数は、次の特性を備えている必要があります-

  • 適応度関数は、計算するのに十分高速である必要があります。

  • 特定のソリューションがどの程度適合しているか、または特定のソリューションから個人がどの程度適合しているかを定量的に測定する必要があります。

場合によっては、目前の問題に固有の複雑さのために、適応度関数を直接計算できないことがあります。このような場合、ニーズに合わせて適応度近似を行います。

次の画像は、0/1ナップザックの解の適合度の計算を示しています。これは、選択されているアイテム(1が付いている)の利益値を合計し、ナップザックがいっぱいになるまで要素を左から右にスキャンする単純な適応度関数です。