1 /* 2 * This file is part of JGAP. 3 * 4 * JGAP offers a dual license model containing the LGPL as well as the MPL. 5 * 6 * For licencing information please see the file license.txt included with JGAP 7 * or have a look at the top of class org.jgap.Chromosome which representatively 8 * includes the JGAP license policy applicable for any file delivered with JGAP. 9 */ 10 package org.jgap; 11 12 import java.util.*; 13 14 /** 15 * Interface for a constraint checker that determines whether a genetic 16 * operation should be executed for a given list of chromosomes. it is possible 17 * considering the caller. With that one could state that the two chromosome 18 * with classes ChromosomeClass1 and ChromosomeClass2 should not be considered 19 * for CrossoverOperator but for MutationOperator. 20 * 21 * @author Klaus Meffert 22 * @since 2.6 23 */ 24 public interface IGeneticOperatorConstraint { 25 /** String containing the CVS revision. Read out via reflection!*/ 26 final static String CVS_REVISION = "$Revision: 1.1 $"; 27 28 boolean isValid(Population a_pop, List a_chromosomes, 29 GeneticOperator a_caller); 30 } 31