Reference: K. Deb and H. Jain, An evolutionary many-objective optimization algorithm using reference-point based non-dominated sorting approach, part I: Solving problems with box constraints, IEEE Transactions on Evolutionary Computation, 2014, 18(4): 577-601.
NSGA-III is an improved version of the classic multi-objective evolutionary algorithm (MOEA) NSGA-II. NSGA-III implements reference points to tackle the difficulties of many-objective optimization.
Variables | Meaning |
---|---|
npop | Population size |
iter | Iteration number |
lb | Lower bound |
ub | Upper bound |
nobj | The dimension of objective space |
pc | Crossover probability (default = 1) |
pm | Mutation probability (default = 1) |
eta_c | Spread factor distribution index (default = 30) |
eta_m | Perturbance factor distribution index (default = 20) |
nvar | The dimension of decision space |
pop | Population |
objs | Objectives |
V | Reference vectors |
zmin | Ideal points |
rank | Pareto rank |
pf | Pareto front |
if __name__ == '__main__':
main(91, 400, np.array([0] * 7), np.array([1] * 7))