Mutation is largely random (array indexes) so no requirement to modify mutation probability or range based on historical child improvement percentage — OR do we want to do this as there will be SOME general correlation between index position and local maxima???

BREEDING

Which percentage of genomes are suitable parents?

How are parents chosen and paired from suitable candidates

These have percentage to mate or remain

Do parents remain in gene pool after mating?

MUTATING

Each element has mutation chance?

Each element has entire genome iterated over with small mutation chance

Only children have mutation chance?

IF SO INCORPRATE INTO ABOVE PHASE
CULLING

population = nextGeneration(0,popsize) — nextGeneration is the full SORTED list of candidates for next generation

Concern regarding suitability of EA as a suitable optimisation process for this problem. The chromosome currently is two integers (indexes of FUP candidate and SBF candidate). While researching EAs it has been mentioned frequently that an EA isnt the most suitable optimisation technique for problems with few variables (where the chromosome is small). This reinforces my concern about a small chromosome in that crossover is very restricted (especially in the extreme case of a two element chromosome) and it may be difficult to maintain the required diversity.

The two integer chromosome could be represented by the respective binary value which would increase the chromosome to a much longer length (although this would be variable depending on size of relevant arrays and introduce non viable solutions where the bit size representation for the largest index would have a max value larger than the index) however I have concerns that EA is the hammer in the toolkit and we are trying to make the problem a nail.

The additional concern I have is it is how effective the EA will be due to the discontinuous nature of the search space; notably that close proximity in the index positions of the candidate FUP/SBF do not directly translate to how close the fitness function will be. This is due to the spacial links between candidates not being preserved in the array representation. (And ties in to the point below re: a graph representation possibly being a better option for candidate storage)

This is something I need to discuss with supervisors and identify alternatives asap. Even if we go with an EA, researching alternatives in detail remains a productive enterprise as it will inform justification for proceeding with an EA in the final report.