The last examined stochastic algorithm is the genetic algorithm (GA) [68]. GA has been widely used in previous studies for the water network distribution contamination source detection problem [14,16]. A recent review of GA with a focus on the crossover and mutation rate choice was made by [69]. Recently, in the work by [70], GA was used to optimize a novel real-time control system for mitigation of sewer flooding and in [71] GA is implemented in an algorithmic procedure to investigate the wastewater seepage appearance in a semiarid urban environment.
GA is an algorithm inspired by the evolutionary process. A population (with size p) is formed by a set of individuals which are improved with each generation g. The formation of a new generation is based on the selection of the best performing individuals which is determined by their fitness value, the crossover parameter and the mutation m. The python module for multiobjective optimization pymoo 0.4.2. was used. The details and review of the specifics of the Python module pymoo can be found in the paper by the original authors [45].
The pymoo function was used to define the whole optimization function which takes in as function arguments the number of optimization variables, the name of the predefined goal function and the lower and upper bounds of the optimization problem. The function was used to define the maximum number of generations as the stopping criterion. The mutation and crossover rates were defined with the functions and . The mutation rate, crossover rate, population size were used as arguments for the genetic algorithm function and finally, the optimization function, algorithm definition and the termination criterion were used as arguments for the pymoo function.
Do you have any questions about this protocol?
Post your question to gather feedback from the community. We will also invite the authors of this article to respond.