elzurdo / multi_objective_optimisation

Material for learning and practicing the technique of multi-objective optimisation
56 stars 11 forks source link

2nd notebook annotation review #6

Open ptizei opened 3 years ago

ptizei commented 3 years ago

Elitism - selected individuals progress to the next generation bypassing the selection process

I searched a bit and it seems like the important point when implementing Elitism is to ensure that this fraction of best genotypes doesn't get destroyed by mutation/crossover. Some comments I saw mention that some implementations still consider those "Elites" as possible parents in the breeding process, but in that case they don't delete the parents like your current implementation does.

Maybe replace it with something like to make it more clear:

Elitism - a fraction of the selected individuals progress to the next generation, bypassing the mutation and crossover processes

ensure no replications by setting PROB_CROSS_OVER - PROB_MUTATION = 1

In the second markdown cell of "6 Knapsack Optimisation", you have the following equation 'replicate_prob= 1 - PROB_CROSS_OVER - PROB_MUTATION', which would give 'PROB_CROSS_OVER + PROB_MUTATION = 1' after setting 'replicate_prob' to 0.

Also, our Objective space was 2D (weight, value). Further consideration of visualisation is required for more dimensions. E.g, 2D slices in the Objective Space using colors-grading/shapes/sizes for additional numerical/categorical dimensions.

Could dimensionality reduction methods like PCA or t-SNE also be useful for visualisation here? You probably wouldn't be able to pick out the pareto fronts visually after the points got remapped, but I guess they could provide some overview of how the populations behave over time.

elzurdo commented 3 years ago

thanks @ptizei , I like these comments a lot!

I updated Elitism. Great catch on the PROB_CROSS_OVER, PROB_MUTATION calculation!

I'm leaving this open at the moment because I need to think more about the usefulness of applying PCA or t-SNE. My first intuition is that it would bring in yet more stochasticity to the problem (perhaps best explore on an exhaustive search space.