遺伝子アルゴリズムでranking selection methodのコードが必要です。 私はルーレットとトーナメントの選択方法を作成していますが、現在はランキングが必要ですが、私は立ち往生しています。遺伝的アルゴリズムコードのランキング選択
マイルーレットコードは(私は遺伝原子のための原子構造体を使用しています)ここにある:
原子const int roulette (const atom *f)
{
int i;
double sum, sumrnd;
sum = 0;
for (i = 0; i < N; i++)
sum += f[i].fitness + OFFSET;
sumrnd = rnd() * sum;
sum = 0;
for (i = 0; i < N; i++) {
sum += f[i].fitness + OFFSET;
if (sum > sumrnd)
break;
}
return i;
}
:あなたはすでにルーレットホイールにわかっているときに
typedef struct atom
{
int geno[VARS];
double pheno[VARS];
double fitness;
} atom;
でコーディングしていますか?希望する[ディスカッション](http://stackoverflow.com/questions/10152002/building-ranking-with-genetic-algorithm)あなたを助ける。 – bonCodigo
C++、これはプレーンなCの部分ですが、私はNokia QT Framework –