Class BinaryParameterFactory
java.lang.Object
org.uma.evolver.parameter.factory.BinaryParameterFactory
- All Implemented Interfaces:
ParameterFactory<org.uma.jmetal.solution.binarysolution.BinarySolution>
public class BinaryParameterFactory
extends Object
implements ParameterFactory<org.uma.jmetal.solution.binarysolution.BinarySolution>
Factory class for creating and configuring categorical parameters specific to evolutionary algorithms
that operate on BinarySolution individuals. This factory implements the ParameterFactory interface
to provide type-safe creation of various algorithm components and their parameters.
The factory supports the creation of parameters for different components including:
- Variation operators (crossover, mutation)
- Selection mechanisms
- Archiving strategies
- Solution initialization methods
- Density estimators
- And other algorithm-specific parameters
This implementation is specifically designed for algorithms working with binary-encoded solutions and provides appropriate parameter types that are compatible with the BinarySolution interface.
- Since:
- 1.0
- Author:
- Antonio J. Nebro
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateParameter(String parameterName, List<String> values) Creates and returns a specificCategoricalParameterinstance based on the provided parameter name.
-
Constructor Details
-
BinaryParameterFactory
public BinaryParameterFactory()
-
-
Method Details
-
createParameter
Creates and returns a specificCategoricalParameterinstance based on the provided parameter name. This factory method centralizes the creation of all parameter types used in evolutionary algorithms that operate on binary-encoded solutions.The following parameter types are supported:
Supported Parameter Types Parameter Name Creates Description archiveType ExternalArchiveParameterExternal archive type for storing non-dominated solutions aggregationFunction AggregationFunctionParameterFunction for aggregating multiple objectives createInitialSolutions CreateInitialSolutionsBinaryParameterStrategy for creating initial population of binary solutions crossover BinaryCrossoverParameterBinary-solution crossover operator densityEstimator DensityEstimatorParameterDensity estimation method for solution selection mutation BinaryMutationParameterBinary-solution mutation operator sequenceGenerator SequenceGeneratorParameterGenerator for sequence-based parameters ranking RankingParameterSolution ranking method replacement ReplacementParameterStrategy for population replacement selection SelectionParameterParent selection mechanism variation BinaryVariationParameterVariation operator for binary solutions subProblemIdGenerator SequenceGeneratorParameterGenerator for sub-problem identifiers any other value CategoricalParameterBasic categorical parameter with the given name - Specified by:
createParameterin interfaceParameterFactory<org.uma.jmetal.solution.binarysolution.BinarySolution>- Parameters:
parameterName- the name of the parameter to create (case-sensitive)values- the list of possible string values for the parameter (must not be null or empty)- Returns:
- an instance of
CategoricalParametercorresponding to the specified parameter name - Throws:
IllegalArgumentException- if the values list is null or empty- See Also:
-