ここでの混乱は、通常、適応度関数がスカラーを返すという事実から来ていると思いますが、場合によっては離散スケールで返されますが、バイナリのyes / no(またはtrue / false)は返されません。この意味で、これはニューラルネット(またはおそらくベイズ論理)で解決される「分類」問題のように見えます。そうは言っても、どんな種類の分類子でも進化させるGAを考案することは確かに可能であり、適応度関数は基本的に、総合評価に対する正しい分類の観点から表現されます。
これに対するもう1つの純粋なGAアプローチは、おそらく質問により関連性がありますが、分類ルールセット全体を遺伝的アルゴリズムの特定の個人としてエンコードすることです。この意味で、適応度関数は、手元にある特定の候補解が合計に対していくつのyes/no分類を取得するかを表すスカラーとして表すことができます。同様のアプローチは、この論文の「実数値遺伝的アルゴリズムの使用:分類のためのR、deセットを進化させるアルゴリズム」にあります。
例(これをエンコードするための可能な方法の1つ):
A1, A2, A3, Outcome
red dark large yes
green dark small yes
orange bright large no
エンコーディング:赤= 000、暗い= 001、大きい= 010、緑= 011、小さい= 100、オレンジ= 101、明るい= 111など。結果:はい= 1、いいえ= 0
染色体:
A1, A2, A3, Outcome
000 001 010 1
011 001 100 1
101 111 010 0
上記のすべては、次のように候補解に変換されます。
000001010-1/011001100-1/101111010-0
これらをランダムに生成し、ルールセット全体の適合性(ルールセット内の正しい分類/合計分類)をテストすることで、好きなように進化させます(ここでクロスオーバー戦略を慎重に選択してください!)。
また、気分を盛り上げるために、バイナリソロを聴くことをお勧めします。
注:これが3つのルールのみで構成されるルールセットで機能するかどうかは非常に疑わしく、GAには十分な幅がありません。