Send all–then receive (SATR) Approach: We
will assume that the number of available processes, np, is
less than the population size, npop. In this approach, the
master process divides the number of fitness evaluations
equally amongst all the slave processes. It first sends the
values of all the design variables associated with each individual
(of the population) to the slave processes. After
the information associated with the entire population is
sent to the slave processes, the master process then waits
to receive the values of the objective function and the
maximum violation from all the slave processes. The detailed
algorithm is presented below.