私は多くの「ベクトル」を作成しました。このベクトルにはそれぞれ独自の「フィットネス」があります。フィットネスはフィットネス関数を使用して取得されます (既に行われています)。
たとえば、次のとおりです。
Vector v1 = new Vector();
Vector v2 = new Vector();
V1 = // some data
V2 = // some other data
double fitness1 = fitness(v1);
double fitness2 = fitness(v2);
今、私は何百もありVectors
、それぞれに独自のフィットネスがあります。最高のフィットネスglobalbest
を返す関数を作成しようとしていますVector
が、常に最高のフィットネスを取得しているとは限りません!! 誰でも私を助けてくれますか?コードは次のとおりです。
public Vector globalbest(Vector allPopulation) {
Vector global = new Vector();
double max = 0;
for (int i = 0; i < allPopulation.size(); i++) {
double value = fitness((Vector) allPopulation.get(i));
if (value > max) {
global = (Vector) allPopulation.get(i);
max = value ;
}
}
return global;
}