1 | This package, and various subpackages, contain tools for doing multiobjective |
---|
2 | optimization. In the primary package (ec.multiobjective) are just useful |
---|
3 | top-level classes. In the subsidiary packages (ec.multiobjective.nsga2 |
---|
4 | and ec.multiobjective.spea2) are implementations of two popular multiobjective |
---|
5 | optimization algorithms, NSGA-II and SPEA2, which use these top-level classes. |
---|
6 | |
---|
7 | |
---|
8 | |
---|
9 | |
---|
10 | The top-level classes: |
---|
11 | |
---|
12 | |
---|
13 | ec.multiobjective.MultiObjectiveFitness |
---|
14 | |
---|
15 | This is the superclass of fitness classes involving multiple objectives. This |
---|
16 | class holds not a single fitness value but some N objective values. These |
---|
17 | objective values can be either maximized or minimized depending on the setting |
---|
18 | of the fitness class. The class can perform Pareto Dominance computation between |
---|
19 | two MultiObjectiveFitness classes, and in fact uses this as the basis of its |
---|
20 | default fitness comparison. Additionally the class contains utility methods for |
---|
21 | computing Pareto Fronts. |
---|
22 | |
---|
23 | |
---|
24 | ec.multiobjective.MultiObjectiveStatistics |
---|
25 | |
---|
26 | This simple subclass of ec.simple.SimpleStatistics aso outputs the Pareto Front |
---|
27 | in various ways at the end of the run: |
---|
28 | |
---|
29 | - A summary printed on-screen in a helpful columnar format |
---|
30 | - The entire front written to the end of the statistics file |
---|
31 | - The multiple objective results of the front written to a special |
---|
32 | auxillary file (nominally called 'front.stat'). This front can |
---|
33 | be easily displayed by gnuplot, Excel, or other plotting packages. |
---|
34 | If you have a single subpopulation, for example, you can write: |
---|
35 | |
---|
36 | echo plot \"front.stat\" | gnuplot -persist |
---|
37 | |
---|
38 | and the front will be displayed in gnuplot for you. |
---|
39 | |
---|
40 | |
---|