Documentation ¶
Index ¶
- type Moead
- func (m Moead) Archive() []types.Individual
- func (m Moead) CHM() types.CHM
- func (m Moead) ConstraintViolation() []float64
- func (m *Moead) Evolve(stage types.Stage)
- func (m Moead) FeasibleRatio() float64
- func (m Moead) FunctionEvaluations() int
- func (m Moead) Generation() int
- func (m Moead) Ideal() []float64
- func (m *Moead) Initialise()
- func (m Moead) MaxFuncEvals() int
- func (m Moead) MaxViolation() float64
- func (m Moead) Population() []types.Individual
- func (m *Moead) Reset()
- type MoeadIndividual
- func (i MoeadIndividual) Copy() types.Individual
- func (i MoeadIndividual) D() int
- func (i MoeadIndividual) Fitness() types.Fitness
- func (i MoeadIndividual) Genotype() types.Genotype
- func (i *MoeadIndividual) Initialise()
- func (i *MoeadIndividual) PolynomialMutation(m float64)
- func (ind *MoeadIndividual) Repair()
- func (i *MoeadIndividual) SetFitness(f types.Fitness)
- func (i *MoeadIndividual) SetGenotype(g []float64)
- func (i *MoeadIndividual) UpdateFitness() types.Fitness
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Moead ¶
type Moead struct {
T, WeightDistribution int
DecisionVariables, Nr int
F, Cr, DistributionIndex float64
Weights []arrays.Vector
WeightNeigbourhood [][]int
// contains filtered or unexported fields
}
Moead is the struct describing the MOEA/D algorithm.
func (Moead) Archive ¶
func (m Moead) Archive() []types.Individual
func (Moead) ConstraintViolation ¶
ConstraintViolation returns the total constraint violation of the population
func (*Moead) Evolve ¶
Evolve performs the genetic operator on all individuals in the population Based on the stage parameter different evolutionary steps are taken
func (Moead) FeasibleRatio ¶
FeasibleRatio returns the ratio of feasible feasible individuals in the population
func (Moead) FunctionEvaluations ¶
FunctionEvaluations returns the current number of function evaluations performed
func (Moead) Generation ¶
func (*Moead) Initialise ¶
func (m *Moead) Initialise()
Initialise initialises the MOEA/D by calculating the weights, weight neighbourhood, population and ideal point.
func (Moead) MaxFuncEvals ¶
func (Moead) MaxViolation ¶
func (Moead) Population ¶
func (m Moead) Population() []types.Individual
type MoeadIndividual ¶
MoeadIndividual is a struct containing information about an individual in the population of an evolutionary algorithm.
func (MoeadIndividual) Copy ¶
func (i MoeadIndividual) Copy() types.Individual
func (MoeadIndividual) D ¶
func (i MoeadIndividual) D() int
func (MoeadIndividual) Fitness ¶
func (i MoeadIndividual) Fitness() types.Fitness
Fitness returnes the fitness value of the individual if it has been calculated
func (MoeadIndividual) Genotype ¶
func (i MoeadIndividual) Genotype() types.Genotype
Genotype returns the genotype of the individual
func (*MoeadIndividual) Initialise ¶
func (i *MoeadIndividual) Initialise()
Initialise initialises the individuals genotype with random floats in the range [0,1]
func (*MoeadIndividual) PolynomialMutation ¶
func (i *MoeadIndividual) PolynomialMutation(m float64)
PolynomialMutation performs the mutation described in the paper https://reader.elsevier.com/reader/sd/pii/S0045782599003898 PPS describes a mutation probability of 1/n where n => length of genotype. We don't iterate but make a 1/n dice roll to check if we're mutating a single alele.
func (*MoeadIndividual) Repair ¶
func (ind *MoeadIndividual) Repair()
func (*MoeadIndividual) SetFitness ¶
func (i *MoeadIndividual) SetFitness(f types.Fitness)
func (*MoeadIndividual) SetGenotype ¶
func (i *MoeadIndividual) SetGenotype(g []float64)
func (*MoeadIndividual) UpdateFitness ¶
func (i *MoeadIndividual) UpdateFitness() types.Fitness
UpdateFitness updates the fitness value of an individual