Class PermutationMOEAD

java.lang.Object
org.uma.evolver.algorithm.base.moead.BaseMOEAD<org.uma.jmetal.solution.permutationsolution.PermutationSolution<Integer>>
org.uma.evolver.algorithm.base.moead.PermutationMOEAD
All Implemented Interfaces:
BaseLevelAlgorithm<org.uma.jmetal.solution.permutationsolution.PermutationSolution<Integer>>

public class PermutationMOEAD extends BaseMOEAD<org.uma.jmetal.solution.permutationsolution.PermutationSolution<Integer>>
Configurable implementation of the MOEA/D algorithm for permutation-based problems.

This class provides a customizable version of MOEA/D specifically designed for permutation-based optimization problems. It extends the base BaseMOEAD class with permutation-specific configurations and operations, making it suitable for combinatorial optimization problems like the Traveling Salesman Problem (TSP), scheduling, and routing problems.

Features

  • Support for permutation-based solution representations
  • Configurable crossover and mutation operators for permutation spaces
  • 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
 ParameterSpace parameterSpace = new MOEADPermutationParameterSpace();
 PermutationMOEAD algorithm = new PermutationMOEAD(100, "weightVectors/", parameterSpace);
 
 // Parse command line arguments to override default parameters
 algorithm.parse(args);
 
 // Build and run the algorithm
 EvolutionaryAlgorithm<PermutationSolution<Integer>> moead = algorithm.build();
 moead.run();
 
 // Get the resulting non-dominated solutions
 List<PermutationSolution<Integer>> 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: