Class BinaryMOEAD

java.lang.Object
org.uma.evolver.algorithm.base.moead.BaseMOEAD<org.uma.jmetal.solution.binarysolution.BinarySolution>
org.uma.evolver.algorithm.base.moead.BinaryMOEAD
All Implemented Interfaces:
BaseLevelAlgorithm<org.uma.jmetal.solution.binarysolution.BinarySolution>

public class BinaryMOEAD extends BaseMOEAD<org.uma.jmetal.solution.binarysolution.BinarySolution>
Configurable implementation of the MOEA/D algorithm for binary-based problems.

This class provides a customizable version of MOEA/D specifically designed for binary-encoded optimization problems. It extends the base BaseMOEAD class with binary-specific configurations and operations.

Features

  • Support for binary-encoded solutions
  • Configurable crossover and mutation operators for binary representation
  • Customizable weight vector generation and neighborhood structures
  • Support for various aggregation functions
  • Configurable termination conditions and evaluation strategies

Usage Example


 // Create and configure the algorithm
 BinaryMOEAD algorithm = new BinaryMOEAD(100, "weightVectors/", parameterSpace);
 
 // Parse command line arguments to override default parameters
 algorithm.parse(args);
 
 // Build and run the algorithm
 EvolutionaryAlgorithm<BinarySolution> moead = algorithm.build();
 moead.run();
 
 // Get the resulting non-dominated solutions
 List<BinarySolution> result = moead.result();
 

Configuration Parameters

The algorithm can be configured using the following parameters in the parameter space:

  • maximumNumberOfReplacedSolutions: Controls how many solutions are replaced in the neighborhood
  • aggregationFunction: The aggregation function used to combine objectives
  • sequenceGenerator: The sequence generation strategy for weight vectors
  • And other parameters inherited from BaseMOEAD

Non-configurable parameters, such as the number of problem variables, maximum number of replaced solutions, and derived values for mutation or neighborhood, are set automatically based on the problem and algorithm configuration.

See Also: