randomconstant.java

来自「这是用遗传编程算法来拟合曲线的一个经典程序」· Java 代码 · 共 37 行

JAVA
37
字号
/*作者:徐朝*/
/*keystonexu@yahoo.com.cn*/
package regression.function;
import java.util.*;
import kernel.*;
/**
*随机数类,继承了Terminal类,返回一个随机数对象
*/
public class RandomConstant extends Terminal 
{
	
	double value;
	//定义最小值和最大值
	static final double MIN = -4.0;
	static final double MAX = +4.0;
    //构造函数,对value进行求值,构造一个在-5到+5之间的值,其中GP类是后面会定义的基类
	public RandomConstant() {
		Random r = Kernel.random;
		value = r.nextDouble() * (MAX - MIN) + MIN;
		symbol = value + "";
	}

	private RandomConstant(double value) {
		this.value = value;
		this.symbol = value + "";
	}

	public Object DeepClone() 
	{
		return new RandomConstant(this.value); 
	}

	public Object eval() {
		return new Double(value);
	}

}

⌨️ 快捷键说明

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