The discussion thus far has focussed on single objective optimization, but in reality there are many CQAs in pharmaceutical production and it would be desirable to target more than one objective from optimization and control. Single-objective optimization can be used when it is known to what extent each of the different objectives should be achieved, by using a weighted optimization approach, one example of this is seen in Shen et al. (1999) where a cost function is introduced with a weighted objectives on the mean size, crystal mass and suppression of nucleation. However, qualitative understanding of a process can be gained by an alternative method of multi-objective optimization where objectives are competing or contradictory and an ideal solution cannot be found. The aim of multi-objective optimization is to find a set of trade-off solutions and thus understand the many ways in which two or more competing objectives can be achieved. The NSGA-II is capable of performing multi-objective optimization, and the algorithm will be used to maximise crystal length and minimise the crystal size distribution width because these two are known to be competing objectives (Benyahia et al., 2011; Acevedo, Tandy and Nagy, 2015; Hreiz et al., 2015; Lakerveld et al., 2015). The outcome of this optimization will not lead to one unique solution but many compromise or a trade-off solutions. In MATLAB, the function gamultiobj is based on the NSGA-II, and is used to solve the multi-objective optimization problem.
One option that is available with the genetic algorithm is seeding. As seeding is terminology that is also used for crystallization, to avoid conflict of terms, seeding of a genetic algorithm will be referred to as initialisation. Initialisation is the process of providing the initial population of the genetic algorithm with one or more defined individuals. The remaining individuals in the population are generated through the random selection performed by the algorithm.
3.6.1 Multi-objective Optimization Case Study
This case study consists of 2 optimization problems and the population size and generations are specified in Table 3-5. There are 50 DVs (25 time periods and 25 corresponding temperature gradients). The first case is without initialisation, whereas the second case is initialised with two profiles. The two profiles are obtained by performing a single objective optimization first on the maximisation of mean size, and secondly on the minimization of
88
coefficient of variation, using the same DVs but using the SQP method and the first initial guess from Table 3-2.
Case Population size (GA) Generations (GA) Absolute Tolerance
1 200 60 1 x 10-5
2 200 60 1 x 10-5
Table 3-5 β Summary of settings for optimization test problem
The second multi-objective genetic algorithm case is initialised with these two profiles to determine if initialisation shows a performance benefit when using multi-objective optimization, such as an improved solution or reduced time to converge a solution. The CSD width is quantified by the coefficient of variation which can be obtained by the zeroth, first and second moments as shown in Equation 3-14 (Shen et al, 1999, Aamir, 2010). This together with maximising the number weighted mean size will define the optimization problem for this case study.
π. π£. =ππ£ππ πΏπ = β
π0π2
π12 β 1 Equation 3-14
The optimization problem is defined in Equation 3-15. maxπ1 π0 min βπ0π2 π12 β 1 Equation 3-15 π . π‘. 295 β€ π(πΎ) β€ 315 π(π‘0) = 315 πΎ π(π‘πππ) = 295 πΎ π‘π= 300 ππππ 0 β€ πΌπ(β πΎ πππ) β€ 30 1 β€ Ξπ‘π(ππππ ) β€ 300
89
3.6.2 Multi-objective results and discussion
The multi-objective optimization results for the first case without initialisation are presented in Figure 3-9. Here, a Pareto fraction value of 35% is used which means from all the individuals in a given generation, the best 35% are plotted in the Pareto plot. For each generation, the Pareto front (the boundary on which the Pareto set lies in Figure 3-8) should move closer to the boundary of the feasible region for these two objectives until a final Pareto set is found with no further improvement to both objectives. The two Pareto points on the extremes of the Pareto front are known as the anchor points, which should be comparable to the single- objective optimization solution of each respective objective.
Figure 3-8 - The multi-objective Pareto plot for maximising crystal mean size and minimising coefficient of variation The results show how increasing crystal size results in an increasing distribution width, quantified by coefficient of variation. Specifically, the maximum mean size seen here is 104 ΞΌm for which the coefficient of variation is 0.27, whereas the minimum coefficient of variation of 0.198 results in a corresponding mean size of larger than 90.6 ΞΌm. This information can be used to select an operating profile based on one of these Pareto points for further analysis or experimental validation. One drawback of this approach is that the Pareto required 4 hours of computation to achieve the results shown in Figure 3-8, but the best mean size result of 104 ΞΌm was significantly lower than the previously seen values of 117 ΞΌm for the genetic algorithm with single objective optimization.
90
In an attempt to improve on this result, the second multi-objective optimization is initialised with the temperature profiles resulting from two single-objective optimizations, one for maximising L10 mean size and the other for minimising coefficient of variation. The single-
objective optimizations were performed with lower tolerances on error than the previous case study to reduce the time to converge a solution. The initialised multi-objective genetic algorithm converged the results shown in Figure 3-9 in 40 minutes of computation time, 30 minutes of this time was used for both single objective optimization and 10 minutes for the multi-objective optimization. With a new maximised mean size of 124 ΞΌm and minimised coefficient of variation of 0.16, initialisation of the multi-objective optimization with single- objective optimization profiles would be the preferred way to handle this optimization problem, as can be seen in the Pareto front in Figure 3-9. This Pareto solution is much further to the right in the objective space than the Pareto from the previous multi-objective case and it is suspected that the first case was also evolving towards the solution of the second case but was terminated soon before it could reach the same Pareto due to the number of individuals and generations not being sufficiently large enough. However, with a time of 4 hours to converge the previous case, and 40 minutes for the current case, it appears that the current approach to multi-objective optimization is a better use of resources and time.
Figure 3-9 β Multi-objective Pareta plot when initialised with single-objective optimization profiles
The temperature profiles for the Pareto set of the second case are provided in Figure 3-10. The insight gained from these trends is that the initial cooling phase differs between the two
91
objectives. The dark blue profile was obtained from single-objective optimization of mean size, and the red profile from coefficient of variation reduction. After the initial 50 minutes of the simulation, the remaining profiles from the Pareto appear to be bounded by the two single objective profiles for much of the temperature profile except for the initial 50 minutes prior to nucleation.
Figure 3-10 β Temperature profiles for the Pareto set obtained from Multi-Objective Optimization with Initialisation β Blue profile from single objective maximisation of mean size, Red profile from single-objective minimisation of coefficient of
variation, Cyan profiles from intermediate points in the Pareto front.
A further consideration to be made here is that while the Pareto plot can be used to determine the region in which the process can be operated to give the best compromise solution of these two objectives, there would also need to be some profile selection criteria in place if automatic selection of a profile is desired, such as for real-time control. For systems with higher degree of nonlinearities and objective functions whose correlation isnβt as obvious as for this system, it may be useful to use multi-objective optimization to highlight any nonconvexity in the Pareto too. However, for this simple batch crystallization simulation, a weighted single-objective approach would suffice in selecting an operating profile and using the deterministic SQP would also be sufficient in place of the NSGA-II.