Differential gradient evolution plus algorithm for constraint optimization problems: A hybrid approach

a Department of Mathematics, University of Management and Technology, Lahore, 54000, Pakistan. b Department of Sports Sciences, Faculty of Allied Health Science, University of Lahore, Lahore, 54000, Pakistan. c School of Mathematics and Statistics, Xi’an Jiaotong University, Xi’an 710049, Shaanix. People’s Rebublic of China. d Department of Mathematics and Statistics, University of Lahore, Lahore, 54000, Pakistan e Department of Mathematics and Computer Sciences, Faculty of Science, Necmettin Erbakan University, 42090 Konya, Turkey f Department of Chemical Engineering, College of Engineering, Jazan University, Jazan 45142, Saudi Arabia g Section of Mathematics, International Telematic University Uninettuno, Corso Vittorio Emanuele II, 39, 00186 Roma, Italy h Department of Basic Sciences, University of Engineering and Technology, Peshawar, Pakistan


Introduction
Optimization is the best fit solution for all possible solutions to a given problem. Many modern optimization approaches fail to solve complex problems. Several researchers then started proposing new approaches to solve complex optimization problems in reasonable time and cost. There are two groups for optimizing methods: deterministic algorithms and stochastic algorithms [2]. If the same initial values are used, Deterministic methods may obtain the same results. Such algorithms have good efficacy for certain problems, but for all forms of optimization problems, it is difficult to generalize them [3]. One disadvantage of these search algorithms, they can simply be trapped in the local optimum [4]. For their strategies, stochastic algorithms usually use some randomness and avoid striking at a local optimum. Although they can have high-quality solutions in a reasonable amount of time for hard optimization problems, they do not ensure that the best solution will be found always. The complexity of real-world problems has risen over the last few decades. To resolve these problems, a new metaheuristic technique needs to be developed that is used to achieve optimal solutions with a low computational cost. Meta-heuristics are broadly divided into three categories: algorithms based on evolution theory, physical phenomena and swarm intelligence. A population-based meta-heuristic, inspired by the biological evolution based on mutation, reproduction, selection, and recombination. to be avoided [43]. This concept is based on gradientbased methods of search, such as the newton method, the conjugate direction and the Quasi-Newton method [44]. This paper introduces a new metaheuristic algorithm to optimize unconstrained and chemical design problems. The main characteristic of this paper are as follows: 1) A novel hybrid meta-heuristic optimization algorithm based on local and global search. This algorithm is the best combination of exploration and exploitation. 2) The proposed hybridized algorithm works with the help of an improvised dynamic probability distribution. 3) Additionally, it provides a novel shake off method to avoid premature convergence towards local minima. 4) It has been applied on several benchmark unconstraint problems and four complex practical engineering problems to evaluate the efficiency of proposed algorithm. The remaining of this paper is organized as follows: in section 2, the comprehensive detail of Differential Evolution and Gradient Evolution. In section 3, the proposed DGE+ and the concepts behind it are introduced in details. In section 4, the performance of the proposed optimizer is validated on different constrained optimization problems. Finally, conclusions and future directions are given in section 5.

Conventional algorithms 2.1. Differential evolution algorithm
Differential evolution is a relatively efficient metaheuristic technique designed to optimize existing problems. Through applying mutation, crossover and selection operators, the population is successively improved over generations to achieve an optimal solution [45,46]. The comprehensive detail of DE is present in [9,47] and the main steps of the DE algorithm are given below in the form of a self-explanatory flow diagram shown in Figure 1.

Gradient evolution algorithm
Gradient evolution (GE) is an optimization algorithm based on the concept of gradients. The vector updating operator was driven from the Tylor series expansion and transforms the updating law for population-based search. The vector jumping operator prevents local optima and the vector refreshing operator is implemented in multiple iterations when a vector cannot move to a different location. The detail of this idea and the mathematical formulation of the GE algorithm is in [43,48] the main steps of the GE algorithm are given below in the form of the self-explanatory flow diagram shown in Figure 2.

Differential gradient evolution plus
Differential Evolution is a powerful search technique to solve optimization problems with non-discreet variables. Differential Evolution is known for its excellent coverage of global search space and its tendency to find optimum solutions in higher dimensional optimization problems. On the other hand Gradient Evolution (GE) is a wellknown technique that converges towards local minima by the use of instantaneous gradient information. In this way, GE is an effective method to explore local search space. The proposed algorithm hybridizes the above-mentioned algorithms with the help of an improvised dynamic probability distribution. The proposed algorithm additionally provides a new shake off' method to avoid premature convergence towards local minima. In this proposed method, the best solution of the last generation is maintained as a solution vector , this vector is used in the differential algorithm to generate new solutions. The proposed algorithm constantly monitors the best solution produced in each completed generation and if no significant improvement against best solution of previous generations is observed over a specified number of generations then a shake-off sequence is initiated which slightly changes the position of in solution space. In this way, the search direction of all individual members of the population is changed which results in an increased probability of escaping local minima and finding the optimum solution. During the search, best solution found in any iteration is preserved and reported after the search. Combination of these three above mentioned techniques resulted in a novel algorithm, named DGE+ ( = , = and + = ℎ ), to solve unconstrained and constrained problems of any size and complexity. Each solution is represented with the symbol , where = 1, 2, 3, . . . , and = 1, 2, 3, . . . , denotes generation and iteration respectively. Here and are user parameters which specify the total number of generation to be run and population size respectively. = , where = 1, 2, 3, . . . , .
be solved. The proposed algorithm starts with the initialization of the population with random values of independent variables. Each solution vector is initialized randomly by using the following formula; where and are lower and upper bounds of the particular variable in specified problem and number is generated between 0 and 1. This formula ensures uniform distribution of initial values of variables within upper and lower bounds which results in no need for any repair strategy.

Figure 2. Flowchart for gradient evolution
After initialization, the complete population is evaluated for objective and constraints functions. At this stage, a solution vector is selected which is currently the best solution of this initial population. This initial population is then fed to the main body of the search loops. The new solutions are built using or , the selection of the algorithm to be used is dependent upon the following formula given in Eq. (3). In the following equation the new solution generated by the application of or at ℎ iteration of ℎ generation.
Algorithm selection probability of user parameter is represented by . If differential evolution is to be used for the generation of new solutions then the following formula is used: such that 1 ≠ 2 ≠ 3 ≠ 4 . In case when a new solution is to be generated by the use of gradient evolution following formula is used: In the above expressions, gamma is a gradient evolution user parameter. The newly generated solution is compared with the available solution at ℎ location of the current population, if this solution is found better then this solution is inserted into the population at ℎ location. Additionally, this algorithm allows acceptance of solutions with poorer performance into the main population to maintain diversity. This insertion probability of poorer solution is depended on a user control parameter . A random number is generated between 0 and 1 if this number is less than then the poorer solution is accepted in the main population. To maintain diversity in population, fresh vectors are regularly inserted into the main population. The rate of insertion of a new random vector in population is dependent upon a parameter . After scanning all the members of the population, existing solution vector is compared with the best solution of the current population, if this new best solution is better than then this new solution is selected as and a variable which track changes in is reset to 0. For every failed attempt to update , this variable is incremented by 1 and if its count becomes equal to user control parameter then the value of current is shaken off randomly as per following equations; The above-mentioned cycles are repeated continuously for all generations and in the end, the best solution, which is preserved during the whole search, is reported as the solution to the given optimization problem.

Parameter selection
A wrong selection of algorithm parameters may result in a higher tendency to diverge, pre-mature convergence to a local minimum value, or undesired solutions. Therefore, the following considerations should be taken into account to fine-tune the algorithm parameters.

Population size
Optimization problems of low to medium complexity may require a population size of 30 to 50 individual solutions which are sufficient enough to solve the problem optimally. For the problem with a higher number of dimensions more individual members may be required to maintain diversity and room to explore global solution space. But on the other hand, larger population size results in higher computation time and increased number function evaluations. The benchmark problem set, selected for this study, of constrained and unconstrained problems contain optimization problems from low to high complexity. The experiments on the proposed algorithm show that = 50 is sufficient enough to solve the entire problem set with excellent solution quality and in reasonable computational time.

Number of generations
The number of generations required to solve a problem optimally is directly proportional to the number of independent variables of the optimization problem. A lower value of the produces non-optimal solutions and an unrealistically high value of results in unnecessary high computational cost. The experiments on the proposed algorithm show that for unconstraint problems with up to 10 variables = 6000, up to 20 variables = 12000 and up to 30 variables = 20000 is sufficient to produce optimal results. For constrained problems = 600 is sufficient to solve all the selected Problems with excellent optimal values of objective functions.

Gradient evolution parameter gamma
This parameter is used to control the performance of the gradient evolution part of the proposed algorithm. This number ensures that the value of change in any variable is non-zero; a zero value may lead to stagnation at the same point in solution space. The experiments on the proposed algorithm show that the complexity of the problem does not affect the value of this variable and for the chosen set of constrained and unconstrained problems = 0.4 has produced optimal results.

Differential evolution parameter scale factor
This parameter acts as a control of acceleration of convergence and has the most prominent effect on the performance of the differential evolution algorithm. The value of this parameter is dependent on the complexity of objective and constraint functions, a lower value of , may result in non-optimal solutions due to the slower rate of convergence and conversely a higher value of may cause to jump over optimal solutions in search space. The experiments with the proposed algorithm suggest that for constrained problems = 0.5 and for unconstrained problems = 0.48 0.62 has produced optimal results for all selected benchmark problems.

Differential evolution parameter crossover
rate This parameter controls how much change, produced by should be passed on to the next generations. If the value of this parameter is set to a lower value then the convergence rate of the algorithm drops and vice versa. The value of this parameter should be set at a higher value to pass on the effect of to the next generations. The experiments on the proposed algorithm show that a value of = 0.91 is good enough to produce optimal results for all selected benchmark constrained and unconstrained optimization problems.

Selection probability
The proposed algorithm uses a differential evolution algorithm to explore (global search) and gradient evolution to exploit (local search) the given search space of the optimization problem. The decision when to use or is made by a dynamic probability function. At the start of the search, the probability of usage of is maximum and as the generations go the probability of usage drops and the probability of usage increases. In other words, in the beginning, more resources are utilized to perform a global search and in the end, relatively more computation is performed for local search. This dynamic probability distribution is controlled by the parameter . A un-optimized low value of usually causes less exploitation of local search space which results in poorer solution quality and a un-optimized higher value of causes less exploration of global search space which in turn results in premature convergence to local minima. As both of these scenarios are undesirable therefore the value of this variable should be chosen carefully. The experiments conducted on all the constrained and unconstrained problems shows that = 0.2 is good value to solve the entire set of benchmark problems optimally. This value = 0.2 results in usage probability to increase from 0 to 20%, and consequentially the usage of drops from 100% to 80% during execution.

Sub-optimal solution acceptance rate
All the new solutions which are produced either by or are tested for fitness against the corresponding member of the current population. If this new solution is better than the existing solution in the current population then this member of the population is killed and replaced by the newly generated solution. The proposed algorithm additionally allows for the acceptance of poorer solutions with a probability of . This additional feature of the proposed algorithm maintains diversity in future populations and increases the probability of escaping local minima. The value of this parameter should be chosen carefully, in the case when the value of this parameter is set too high then the quality of search degrade and algorithm does not converge to the optimal values. The experiments on the proposed algorithm suggest that between 0.01 and 0.05 is a good value to produce statistically better results in comparison to = 0 for the given set of constrained and unconstrained problems.

Refresh rate
For all population base algorithms regular supply of new individual solutions is essential to preserve diversity which in turn results in better solution quality. This fresh supply of new random solutions is controlled by . A lower value of this parameter causes the loss of diversity and poorer solution quality and a higher value of this parameter results in loss of better solutions and divergence of the optimization algorithm. The experiments with the proposed algorithm demonstrate that = 0.02 is a decent value to solve the entire benchmark set of constrained and unconstrained problems.

Shake off threshold
As an attempt to escape from local minima this proposed algorithm provides a shake off technique. The algorithm keeps monitoring the best solution of every subsequent generation and if no new improvement is observed then a counter is incremented by one. If the value of this variable becomes equal to shake off threshold then shake off is initiated. A un-optimized high value of this threshold will make this shake off ineffective and in contrast a low value of this parameter will result in poorer solution quality. The experiments conducted on our proposed algorithm indicates that the value of = 500 and = 60 for all unconstrained and constrained problems respectively can provide optimal results.

Constraint handling
Constraint handling of the problem is done as per rules given by Mottos & Coello [49]. The following four rules are used: 3.2.1. Rule 1 Whatever the value of the objective function is any feasible solution will always be preferred over infeasible solutions.

Rule 2
Infeasible solutions having a slight violation of 0.001 are considered as feasible solutions.

Rule 3
If two solutions are feasible then the one with better objective function value will be preferred.

Rule 4
If two solutions are infeasible then the one with less violation of feasibility will be preferred. By incorporating first and fourth rules, the search is guided towards feasible regions rather than wasting resources by exploring infeasible regions of search space, the third rule forces the algorithm to both keep the search within the feasible regions and attempt to find a solution with a better value of objective function [49]. If the optimal solution lies near the boundary of the feasible region then the second rule facilitates the search of boundaries of the feasible region [50]. The algorithm of DGE+ is as follows:

Algorithm: Differential Gradient Evolution Plus
Step 1: Initialize population Step 2: Calculate objective and constraint functions Step 3: Select which is the best solution in the current population Step 4: Check the current generation is equal to if yes then go to step 11. Otherwise, go to step 5 Step 5: Check current iteration is equal to if yes then go to step 9. Otherwise, go to step 6 Step 6: Calculate by using equations 3-8 Step 7: Evaluate if it is acceptable then replace current solution of the population with this new solution Step 8: Go to step 5 Step 9: Check for shake off conditions, if true then change as per equations 9 and10 Step 10: Go to step 4 Step 11: Report the best solution and stop The detail of the idea and the mathematical formulation of the DGE+ algorithm is in the last section, the main steps of the DGE+ algorithm are given below in the form of the self-explanatory flow diagram shown in Figure 3.

Experiments on constrained optimization problems
The comparison of the results produced by each constraint problem has been reported and listed in Table  1 which provided the comparative methods with references.

Experimental setup
The performance of the proposed novel and dynamic algorithm (DGE+) is exhibited by solving several optimization problems that are widely used to test optimization methods and considered as the benchmark problems in the literature. These test cases consist of seven benchmark constraint test problems [33]. All analyses are implemented in Matlab® environment on the computer equipped with the Intel CORE i5 @ 1.8 GHz CPU and 4 GB of RAM. The parameter settings of the proposed algorithm are: Number of runs are 30, population size is 50, generations are 600, gamma value is 0.4, scale factor is 0.5 and cross over is 0.91. In the following subsections, DGE+ is implemented on seven benchmark constraint problems and eight complex practical engineering problems.

Constrained optimization problems 4.2.1. Constrained problem 1
Braken and McCormick [84] originally introduced this problem which is a relatively simple constrained problem of minimization, having two variables and two constraints, one is equality constraint and the other is inequality constraint.  Table 2 demonstrates the comparison of the best solution among the different optimizers and the corresponding design variables. The results obtained by DGE+ are compared with 4 state-of-the-art algorithms that are abbreviated and listed in Table 1. Evolutionary programming violets both the constraints and remaining methods violet first constraint for the final solution but DGE+ satisfies all constraints for the final solution. It is evident from Table 2 that the proposed DGE+ algorithm performed better and superior to all the state-of-the-art methods without any violation. The convergence curve shows the function values versus the number of generations for the constrained problem 1. The 30 trials of the best solution obtained from the DGE+ algorithm are given in Figure 4.
Differential gradient evolution plus algorithm for constraint optimization problems

Constrained problem 2
This problem is taken from [33] which is a relatively simple constrained problem of minimization having two variables and one equality constraint. min ( ) = 1 2 + ( 2 − 1) 2 {ℎ( ) = 2 − 1 2 = 0, −1 ≤ 1 , 2 ≤ 1. Table 3 demonstrates the comparison of the best solution among the different optimizers and the corresponding design variables. CULDE, SAPF, PSO-DE, and MBA violates the constraint but DGE+ satisfies constraint for the final solution. The results obtained by + are also compared with 10 state-of-the-art algorithms that are abbreviated and listed in Table 1. The comparison of statistical results for constrained problem 2 is given in Table 4. It is evident from Tables 3 and 4 that the proposed DGE+ algorithm performed better and superior to all the state-of-the-art methods without any violation.  The convergence curve shows the function values versus the number of generations for the constrained problem 2. The 30 trials of the best solution obtained from the DGE+ algorithm are given in Figure 5.

Constrained problem 3
This problem is taken from [33] which is a relatively simple constrained problem of minimization having two variables and two inequality constraints.    Table 5 that the proposed DGE+ algorithm performed better and superior to all the stateof-the-art methods without any violation.

It is evident from
The convergence curve shows the function values versus the number of generations for the constrained problem 3. The 30 trials of the best solution obtained from the DGE+ algorithm are given in Figure 6.

Constrained problem 4
This problem taken from [33] which is a relatively simple constrained problem of minimization having two variables and two inequality constraints.   Table 6 represents the best solution and the value of corresponding design variables by using the DGE+ algorithm. The results obtained by DGE+ satisfies all constraints for the final solution, also compared with 19 state-of-the-art algorithms which are abbreviated and listed in Table 1. It is evident from Table 7 that the proposed DGE+ algorithm performed better and superior to all the stateof-the-art methods without any violation. The convergence curve shows the function values versus the number of generations for the constrained problem 4. The 30 trials of the best solution obtained from the DGE+ algorithm are given in Figure 7.

Constrained problem 5
This problem is taken from [33] which is a relatively simple constrained problem of minimization having two variables and two inequality constraints.   Table 8 represents the best solution and the value of corresponding design variables by using the DGE+ algorithm. The results obtained by DGE+ satisfies all constraints for the final solution, also compared with 21 state-of-the-art algorithms which are abbreviated and listed in Table 1. It is evident from Table 9 that the proposed DGE+ algorithm performed better and superior to all the stateof-the-art methods without any violation. The convergence curve shows the function values versus the number of generations for the constrained problem 4. The 30 trials of the best solution obtained from the DGE+ algorithm are given in Figure 8.

Constrained problem 7
This problem is taken from [33] which is a relatively complex constrained problem of minimization having five variables and six inequality constraints. Table 12 demonstrates the comparison of the best solution among the different optimizers and the corresponding design variables. The results obtained by DGE+ are compared with 5 state-of-the-art algorithms that are abbreviated and listed in Table 1. CULDE, Harmony search and GA2 violet two constraints and remaining methods violet first constraint for the final solution but DGE+ satisfies all constraints for the final solution.
The results obtained by DGE+ are also compared with 20 state-of-the-art algorithms, the comparison of statistical results for constrained problem 7 is given in Table 13. It is evident from  Figure 10.  Figure 10. Convergence curve and 30 best solutions for constraint problem 7

Conclusions
A new hybrid meta-heuristic has been presented in this paper, called DGE+, for dealing with seven benchmark constraint optimization problems. The main motivation behind the present study is to combine the desirable explorative features of DE with exploitative features of GE algorithms. The proposed method is mainly based on Differential Evolution, Gradient Evolution, and novel jumping technique. The proposed algorithm hybridizes the above-mentioned algorithms with the help of an improvised dynamic probability distribution, additionally provides a new shake off method to avoid premature convergence towards local minima. To evaluate the efficiency and robustness of DGE+ it has been applied on seven benchmark constraint optimization problems, the results of comparison revealed that DGE+ can provide very compact, competitive and promising results. As future works, various research directions can be followed. Based on certain preliminary observations, the parameter values for DGE+ are modified. A full sensitivity analysis on the impact of parameters may, therefore, be a guideline for future research. The implementation of the proposed algorithm to several real-world problems is also extremely valuable. Tabassum