Add README.md files for moeo/tutorial/Lesson{1-4}, smp/tutorial/Lesson{1-4},
and mo/tutorial/Lesson9 — these tutorials had no documentation.
Fix return 1 → return 0 in 28 tutorial main() functions across mo/ and
smp/ that unconditionally returned failure status.
|
||
|---|---|---|
| .. | ||
| CMakeLists.txt | ||
| FlowShopEA.cpp | ||
| FlowShopEA.param | ||
| README.md | ||
Multi-objective EA on the flow-shop scheduling problem
This lesson solves a more realistic combinatorial problem: the bi-objective permutation flow-shop, which minimizes both makespan and total flow time.
Running
From the build/moeo/tutorial/Lesson2 directory:
./FlowShopEA @FlowShopEA.param
The parameter file specifies the problem instance, population size, operator rates, and fitness assignment strategy.
How it works
The code uses ParadisEO's do_make_* factory functions to build all
components from command-line parameters:
eoEvalFuncCounter<FlowShop>& eval = do_make_eval(parser, state);
eoInit<FlowShop>& init = do_make_genotype(parser, state);
eoGenOp<FlowShop>& op = do_make_op(parser, state);
The flow-shop representation is defined in FlowShop.h — a
permutation-based moeoVector with a bi-objective vector. Different
Pareto-based fitness assignment strategies (NSGA-II, SPEA2, IBEA, etc.)
can be selected via parameters.