/*
Copyright 2006 by Ankur Desai, Sean Luke, and George Mason University
Licensed under the Academic Free License version 3.0
See the file "LICENSE" for more information
*/
package sim.app.pso3d;
/**
@author Ankur Desai and Joey Harrison
*/
public class Griewangk3D implements Evaluatable3D
{
private static final long serialVersionUID = 1;
private final double sqrt2 = Math.sqrt(2);
private final double sqrt3 = Math.sqrt(3);
public double calcFitness(double x, double y, double z)
{
return (1000 - (1 + (x*x) / 4000 + (y*y) / 4000 + (z*z) / 4000 - Math.cos(x) * Math.cos(y / sqrt2) * Math.cos(z / sqrt3)));
}
}