⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nevaluator.java

📁 是zuojie用java实现的gep库
💻 JAVA
字号:
package gep.num;import ga.Evaluator;import ga.Fitness;import ga.Protein;import gep.Formula;/** * 数值评价器 */public class NEvaluator implements Evaluator{	private NFitness fitnessFunction;	// 适应度函数	private double[][] parameters;				// 训练数据的参数		public NEvaluator(Fitness fitnessFunction, NDataSet dataSet)	{		this.fitnessFunction = (NFitness) fitnessFunction;		this.parameters = dataSet.getParameters();	}	/**	 * 评价,返回适应度	 * @param protein 待评价的"蛋白质"	 * @return 适应度值	 */	public double evaluate(Protein protein)	{		NEvaluable evaluable = (NEvaluable) protein;		int size = parameters.length;				// 计算每一个样本的值		double[] model = new double[size];		for (int i=0; i<size; i++)		{			double[] sample = parameters[i];						// 模型计算值			try			{				model[i] = evaluable.evaluate(sample);			}			catch (Exception e)			{				return fitnessFunction.getMinFitness();			}		}				// 计算适应度		double f = fitnessFunction.calculate(model);		// TODO 测试"世界简单性原理"		if (false) f += 1/((Formula) protein).getComplex();				return f;	}		public String toString()	{		return getClass().getName();	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -