HolegFittnessFkt.java 738 B

12345678910111213141516171819202122232425
  1. package algorithms.geneticAlgorithm.holegGA.Components;
  2. import classes.AbstractCpsObject;
  3. import classes.HolonObject;
  4. import algorithms.geneticAlgorithm.Components.GAFittnessFunctionStrategy;
  5. import algorithms.geneticAlgorithm.Components.GAIndividual;
  6. public class HolegFittnessFkt implements GAFittnessFunctionStrategy<HolegIndividual>{
  7. @Override
  8. public double calculateFittness(HolegIndividual candidate) {
  9. double fittness = 0;
  10. for(AbstractCpsObject abs : candidate.getObjects()){
  11. if(abs instanceof HolonObject){
  12. if(((HolonObject) abs).getState() == HolonObject.SUPPLIED){
  13. fittness += 100;
  14. }
  15. }
  16. }
  17. candidate.setFittness(fittness);
  18. candidate.addLogEntry("Fittness: " + fittness);
  19. return fittness;
  20. }
  21. }