chromosome.java

来自「一个JAVA原程序」· Java 代码 · 共 61 行

JAVA
61
字号
package edu.zsu.zouang.genetic;

import edu.zsu.zouang.util.Randomizer;

public class Chromosome implements Cloneable{
	private double fitness = -1; //代表未计算适应函数
	
	private double select = -1; // 选择概率
	
	private char[] chromo; //染色体串
	
	private Randomizer random;
	
	private int lower;
	
	private int upper;
	
	public Chromosome(int lower, int upper, int length){
		this.lower = lower;
		this.upper = upper;
		random = new Randomizer(lower, upper);
		chromo = random.nextBitArray(length);
	}

	/**
	 * 克隆一个染色体
	 */
	public Chromosome clone(){
		Chromosome c = new Chromosome(lower,upper,chromo.length);
		char[] temp = new char[c.chromo.length];
		System.arraycopy(chromo, 0, temp, 0, chromo.length);
		c.setChromo(temp);
		return c;
	}
	public char[] getChromo() {
		return chromo;
	}

	public void setChromo(char[] chromo) {
		this.chromo = chromo;
	}

	public double getFitness() {
		return fitness;
	}

	public void setFitness(double fitness) {
		this.fitness = fitness;
	}

	public double getSelect() {
		return select;
	}

	public void setSelect(double select) {
		this.select = select;
	}
	
	
}

⌨️ 快捷键说明

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