feat(algorithms): add KnEA (Knee point-driven EA)
Zhang, Tian & Jin 2015 KnEA: many-objective MOEA that biases survival selection toward 'knee points' on the Pareto front — points where a small improvement in one objective costs a large degradation in another. Each generation: - NSGA-II-like loop with offspring + non_dominated_sort - For the splitting front, identify knee points by perpendicular distance from the hyperplane connecting the front's extreme points. Members further from the hyperplane (= more 'kneeness') are preferred. - Survival keeps every knee-tagged member; if room remains, fill from remaining members by largest perpendicular distance. Knee points are intuitively the most attractive points on a Pareto front when no preference information is available. KnEA pushes the search toward them at the cost of less uniform front coverage.
This commit is contained in:
+1
-1
@@ -25,7 +25,7 @@ pub use crate::algorithms::{
|
||||
AgeMoea, AgeMoeaConfig, AntColonyTsp, AntColonyTspConfig, CmaEs, CmaEsConfig, DifferentialEvolution,
|
||||
DifferentialEvolutionConfig, EpsilonMoea, EpsilonMoeaConfig,
|
||||
GeneticAlgorithm, GeneticAlgorithmConfig, Grea, GreaConfig, HillClimber, HillClimberConfig, Hype,
|
||||
HypeConfig, Ibea, IbeaConfig, Moead, MoeadConfig, Mopso, MopsoConfig, Nsga2,
|
||||
HypeConfig, Ibea, IbeaConfig, Knea, KneaConfig, Moead, MoeadConfig, Mopso, MopsoConfig, Nsga2,
|
||||
Nsga2Config, Nsga3, Nsga3Config, Paes, PaesConfig, ParticleSwarm, PesaII, PesaIIConfig,
|
||||
ParticleSwarmConfig, RandomSearch, RandomSearchConfig, Rvea, RveaConfig,
|
||||
SimulatedAnnealing,
|
||||
|
||||
Reference in New Issue
Block a user