1 10 package org.jgap.impl.salesman; 11 12 import org.jgap.*; 13 14 22 public class SalesmanFitnessFunction 23 extends FitnessFunction { 24 25 private final static String CVS_REVISION = "$Revision: 1.9 $"; 26 27 private final Salesman m_salesman; 28 29 public SalesmanFitnessFunction(final Salesman a_salesman) { 30 m_salesman = a_salesman; 31 } 32 33 44 protected double evaluate(final IChromosome a_subject) { 45 double s = 0; 46 Gene[] genes = a_subject.getGenes(); 47 for (int i = 0; i < genes.length - 1; i++) { 48 s += m_salesman.distance(genes[i], genes[i + 1]); 49 } 50 s += m_salesman.distance(genes[genes.length - 1], genes[0]); 52 return Integer.MAX_VALUE / 2 - s; 53 } 54 } 55 | Popular Tags |