jenes.tutorials.problem6
Class KnapsackGA
java.lang.Object
jenes.GeneticAlgorithm<BooleanChromosome>
jenes.tutorials.problem6.KnapsackGA
public class KnapsackGA
- extends GeneticAlgorithm<BooleanChromosome>
Tutorial showing how to minimization and maximization sub-prolems can cohesists in
the breeding structure of Jenes.
This class implements a genetic algorithm for solving the Knapsack problem.
- Since:
- 1.0
- Version:
- 1.0
- Author:
- Luigi Troiano, Pierpaolo Lombardi
Fields inherited from class jenes.GeneticAlgorithm |
algorithmListeners, body, DEFAULT_GENERATION_LIMIT, DEFAULT_HISTORY_SIZE, elitism, elitismStrategy, fullEvaluationForced, generation, generationLimit, generationListeners, initialPopulation, MAX_HISTORY_SIZE, MIN_HISTORY_SIZE, random, randomization, resizeStrategy, statistics |
Constructor Summary |
KnapsackGA(int popsize,
int generations,
double[] utilities,
double[] weights)
|
Methods inherited from class jenes.GeneticAlgorithm |
addAlgorithmEventListener, addGenerationEventListener, addStage, applyElitism, end, evaluatePopulation, evaluatePopulation, evolve, evolve, evolve, getBody, getCurrentPopulation, getElitism, getElitismStrategy, getGeneration, getGenerationLimit, getHistoryAt, getHistorySize, getInitialPopulation, getNextPopulation, getRandomization, getResizeStrategy, getStatistics, isBiggerBetter, isFullEvaluationForced, onGeneration, onInit, onStart, onStop, randomizeIndividual, randomizePopulation, removeAlgorithmEventListener, removeGenerationEventListener, setBiggerIsBetter, setElitism, setElitismStrategy, setFullEvaluationForced, setGenerationLimit, setHistorySize, setRandomization, setRandomization, setResizeStrategy, start, stop, toString, updateStatistics |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
KnapsackGA
public KnapsackGA(int popsize,
int generations,
double[] utilities,
double[] weights)
getCapacity
public double getCapacity()
setCapacity
public void setCapacity(double capacity)
getUtilityOf
public double getUtilityOf(Individual<BooleanChromosome> individual)
getWeightOf
public double getWeightOf(Individual<BooleanChromosome> individual)
evaluateIndividual
public void evaluateIndividual(Individual<BooleanChromosome> individual)
- Description copied from class:
GeneticAlgorithm
- Evaluates a single individual. This evaluation of individuals is
specifically related to the problem to solve, thus it is an abstract
method requiring an implementation by the sublass.
- Specified by:
evaluateIndividual
in class GeneticAlgorithm<BooleanChromosome>
- Parameters:
individual
- the individual to be evaluated