IBreeder.java :  » Development » jgap-3.4.4 » org » jgap » Java Open Source

Java Open Source » Development » jgap 3.4.4 
jgap 3.4.4 » org » jgap » IBreeder.java
/*
 * This file is part of JGAP.
 *
 * JGAP offers a dual license model containing the LGPL as well as the MPL.
 *
 * For licensing information please see the file license.txt included with JGAP
 * or have a look at the top of class org.jgap.Chromosome which representatively
 * includes the JGAP license policy applicable for any file delivered with JGAP.
 */
package org.jgap;

import java.io.*;
import org.jgap.util.ICloneable;

/**
 * Interface for GA breeders. A breeder evolves a population by performing
 * genetic operations.
 *
 * @author Klaus Meffert
 * @since 3.2
 */
public interface IBreeder
    extends ICloneable, Serializable, Comparable {
  /** String containing the CVS revision. Read out via reflection!*/
  final static String CVS_REVISION = "$Revision: 1.5 $";

  /**
   * Evolves the population of Chromosomes within a Genotype. This will
   * execute all of the genetic operators added to the present active
   * configuration and then invoke the natural selector to choose which
   * chromosomes will be included in the next generation population.
   *
   * @param a_pop the population to evolve
   * @param a_conf the configuration to use for evolution
   *
   * @author Klaus Meffert
   * @since 3.2
   */
  Population evolve(Population a_pop, Configuration a_conf);
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.