MOEA Framework 2.12
API Specification

org.moeaframework.algorithm.single
Class LinearObjectiveComparator

java.lang.Object
  extended by org.moeaframework.algorithm.single.LinearObjectiveComparator
All Implemented Interfaces:
Serializable, Comparator<Solution>, AggregateObjectiveComparator, DominanceComparator

public class LinearObjectiveComparator
extends Object
implements AggregateObjectiveComparator, Serializable

The weighted linear aggregate function. By default, this method assumes equal weights for all objectives.

See Also:
Serialized Form

Constructor Summary
LinearObjectiveComparator()
          Constructs a new comparator using a weighted linear aggregate function.
LinearObjectiveComparator(double... weights)
          Constructs a new comparator using a weighted linear aggregate function.
 
Method Summary
static double calculateFitness(Solution solution, double[] weights)
          Computes the weighted linear aggregate fitness of the solution.
 int compare(Solution solution1, Solution solution2)
          Compares the two solutions using a dominance relation, returning -1 if solution1 dominates solution2, 1 if solution2 dominates solution1, and 0 if the solutions are non-dominated.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Comparator
equals
 

Constructor Detail

LinearObjectiveComparator

public LinearObjectiveComparator()
Constructs a new comparator using a weighted linear aggregate function. Equal weights are used for each objective.


LinearObjectiveComparator

public LinearObjectiveComparator(double... weights)
Constructs a new comparator using a weighted linear aggregate function. One weight should be given for each objective; if fewer weights are provided, the last weight is repeated for the remaining objectives.

Parameters:
weights - the weight vector
Method Detail

compare

public int compare(Solution solution1,
                   Solution solution2)
Description copied from interface: DominanceComparator
Compares the two solutions using a dominance relation, returning -1 if solution1 dominates solution2, 1 if solution2 dominates solution1, and 0 if the solutions are non-dominated.

Specified by:
compare in interface Comparator<Solution>
Specified by:
compare in interface DominanceComparator
Parameters:
solution1 - the first solution
solution2 - the second solution
Returns:
-1 if solution1 dominates solution2, 1 if solution2 dominates solution1, and 0 if the solutions are non-dominated

calculateFitness

public static double calculateFitness(Solution solution,
                                      double[] weights)
Computes the weighted linear aggregate fitness of the solution. One weight should be given for each objective; if fewer weights are provided, the last weight is repeated for the remaining objectives.

Parameters:
solution - the solution
weights - the weight vector
Returns:
the fitness, where smaller values are preferred

MOEA Framework 2.12
API Specification

Copyright 2009-2016 MOEA Framework. All rights reserved.
Licensed under the GNU Lesser General Public License.
Return to the MOEA Framework homepage. Visit us on Github!