📄 fitnessfunction.java
字号:
package net.sourceforge.jswarm_pso;/** * Base Fitness Function * @author Pablo Cingolani <pcingola@sinectis.com> */public abstract class FitnessFunction { /** Should this funtion be maximized or minimized */ boolean maximize; //------------------------------------------------------------------------- // Constructors //------------------------------------------------------------------------- /** Default constructor */ public FitnessFunction() { this.maximize = true; // Default: Maximize } /** * Constructor * @param maximize : Should we try to maximize or minimize this funtion? */ public FitnessFunction(boolean maximize) { this.maximize = maximize; } //------------------------------------------------------------------------- // Methods //------------------------------------------------------------------------- /** * Evaluates a particles at a given position * NOTE: You should write your own method! * * @param position : Particle's position * @return Fitness function for a particle */ public abstract double evaluate(double position[]); /** * Evaluates a particles * @param particle : Particle to evaluate * @return Fitness function for a particle */ public double evaluate(Particle particle) { double position[] = particle.getPosition(); double fit = evaluate(position); particle.setFitness(fit,maximize); return fit; } /** Are we maximizing this fitness funtion? */ public boolean isMaximize() { return maximize; } public void setMaximize(boolean maximize) { this.maximize = maximize; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -