[6152] | 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 | |
---|