Abstract

A new kind of optimization technique, namely, continuous genetic algorithm, is presented in this paper for numerically approximating the solutions of Troesch’s and Bratu’s problems. The underlying idea of the method is to convert the two differential problems into discrete versions by replacing each of the second derivatives by an appropriate difference quotient approximation. The new method has the following characteristics. First, it should not resort to more advanced mathematical tools; that is, the algorithm should be simple to understand and implement and should be thus easily accepted in the mathematical and physical application fields. Second, the algorithm is of global nature in terms of the solutions obtained as well as its ability to solve other mathematical and physical problems. Third, the proposed methodology has an implicit parallel nature which points to its implementation on parallel machines. The algorithm is tested on different versions of Troesch’s and Bratu’s problems. Experimental results show that the proposed algorithm is effective, straightforward, and simple.

1. Introduction

Nonlinear phenomena are of fundamental importance in various fields of science and engineering and other disciplines, since most phenomena in our world are essentially nonlinear and are described by nonlinear equations. On the other hand, most models of real-life problems are still very difficult to solve analytically. Therefore, approximate and numerical solutions were introduced.

Numerical methods are methods for solving problems on computers by numerical calculations, often giving a table of numbers and/or graphical representations or figures. Numerical methods tend to emphasize the implementation of algorithms. The aim of numerical methods is therefore to provide systematic methods for solving problems in a numerical form. The process of solving problems generally involves starting from an initial data, using high precision digital computers, following the steps in the algorithms, and finally obtaining the results. Often the numerical data and the methods used are approximate ones.

The goal of this paper is to give an effective optimization approach for solving two certain nonlinear second-order, two-point boundary value problems (BVPs) based on the use of the continuous genetic algorithm (GA) as an alternative to existing methods. The present technique can avoid any sensitivity of the problems and can be applied without any limitation on the number of mesh points. On the other aspect as well, the new technique is accurate, needs less effort to achieve the results, and is developed especially for nonlinear case. More specifically, we consider the following two problems.

Problem 1. Troesch’s problem, which is covered by the ordinary differential equation: subject to the boundary conditions

Problem 2. Bratu’s problem, which is covered by the ordinary differential equation: subject to the boundary conditions

The closed form solution of Troesch’s problem in terms of the Jacobian elliptic function has been given in [1] as, where in which the constant being the solution of the transcendental equation such that is the Jacobi function defined by , where , , and are related by the integral . It was noticed that a pole of occurs at a pole of . It was also noticed in [1] that the pole occurs at , which implies that the singularity lies within the integration range if . The closed form solution of Bratu’s problem has been given in [2] as , where is the solution of the transcendental equation . In fact, this equation has two, one, or no solution when , , or , respectively, in which the critical value satisfies the equation . It was evaluated in [2] that the critical value of equals .

Troesch’s problem was first described and solved by Weibel [3]. Troesch’s equation comes from the investigation of the confinement of a plasma column under radiation pressure and also in the theory of gas porous electrodes [46]. Bratu’s problem was first studied and solved by Bratu [7]. Bratu’s equation is used in a large variety of applications such as the model of thermal reaction process, the Chandrasekhar model of the expansion of the universe, chemical reaction theory, nanotechnology, and radiative heat transfer [810].

In general, nonlinear BVPs do not always have solutions which we can obtain using analytical methods. In fact, many of real physical phenomena encountered are almost impossible to solve by this technique. Due to this, some authors have proposed numerical methods to approximate the solutions of Troesch’s and Bratu's problems. To mention a few, the Laplace transform decomposition method has been applied to solve Troesch’s and Bratu’s problems as described in [11, 12]. In [13] also, the author has provided the decomposition method to further investigate to Troesch’s and Bratu’s equations. Furthermore, the homotopy perturbation method is carried out in [14] for solving (1) and (2). The variational iteration method has been used to solve (1) and (2) as presented in [15]. In [16], the authors have developed the B-spline method to solve Problem 2. Recently, Lie-group shooting method for solving Problem 2 is proposed in [17].

The organization of the remainder of this paper is as follows. In Section 2, we present a short preface to optimization technique. In Section 3, we formulate the fitness function in order to solve Problems 1 and 2 using continuous GA. Section 4 covers the description of continuous GA in detail. Simulation results are given in Section 5 in order to verify the mathematical results of the proposed method. Statistical and convergence analysis are provided by the results of numerical simulation in Section 6. Finally, in Section 7 a brief summery is presented.

2. Overview of Optimization Technique

Optimization is the process of making something better. An engineer or scientist conjures up a new idea and optimization improves on that idea. Optimization consists in trying variations on an initial concept and using the information gained to improve on the idea. A computer is the perfect tool for optimization as long as the idea or variable influencing the idea can be input in electronic format. Feed the computer some data and out comes the solution.

The terminology “best” solution implies that there is more than one solution and the solutions are not of equal value. The definition of best is relative to the problem at hand, its method of solution, and the tolerances allowed. Thus the optimal solution depends on the person formulating the problem. Education, opinions, bribes, and amount of sleep are factors influencing the definition of best. Optimization plays a crucial role in various disciplines in sciences, industry, engineering, and almost in every aspect of the daily life. Optimization problems are encountered, for example, in communication systems [18], antenna design [19], semiconductors manufacturing [20], aerodynamics [21], transportation and traffic [22], nuclear reactor design [23], medicine [24], and economics [25].

Optimization occupies a fundamental position in engineering design and applications, since the classical function of the engineer is to design new, better, or more efficient and less expensive systems as well as to advise planes and procedures for the improved operation of exiting systems [26]. The application of optimization methods to engineering problems requires the selection of the problem decision variables that are adequate to characterize the possible candidate designs or operating conditions of the system, the definition of the objective function on the basis of which candidates will be ranked to determine the best solution, and the definition of a model that describes the manner in which the problem variables are related and the way in which the performance criterion is influenced by the variables. The problem's model normally includes a set of equality constraints, inequality constrains, and some bounds for the variables. In its most general case, the optimization problem involves the determination of the optimal set decision variables of a given objective function in the presence of some constraints. In the context of optimization, the “best” will always mean the candidate system with either the minimum or maximum value of the objective function.

Optimization problems can be divided into two categories depending on whether the solution is continuous or discrete. An optimization problem with discrete solution is known as a conventional optimization problem, while the continuous version is known as a continuous optimization problem. Numerical continuous optimization is the study of how to get the global numerical solution (value or point) for continuous mathematical and physical problems. The importance of numerical continuous optimization has been arisen in lots of research fields, such as science, engineering, and business [2729].

3. Formulation of the Fitness Function

In this section, Troesch’s and Bratu’s problems of ordinary types are first formulated as optimization problems by the direct minimization of the overall individual residual error subject to the given constraints boundary conditions and are then solved using continuous GA.

To approximate the solutions of Troesch’s and Bratu’s problems, we make the stipulation that the mesh points are equally distributed through the interval . This condition is ensured by setting , , where . Thus, at the interior mesh points, , , the equation to be approximated is given as subject to the boundary conditions where , , for Troesch’s problem and , , for Bratu’s problem.

The finite difference approximations for derivatives are one of the simplest and of the oldest methods to solve differential equations. This method consists of approximating the differential operator by replacing the derivatives in the equation using difference quotients. In this work, we will employ this technique to approximate the solutions of Troesch’s and Bratu’s problems numerically using continuous GA. Anyhow, the difference quotients approximation formulas, which closely approximate , , when is small using 5 points at the interior mesh points with error of order, are given as follows: where , , and are forward, central, and backward differences, respectively, and are given as

To complete the formulation substituting the difference approximation formulas of , , into (5), the discretized form of this equation is obtained. The resulting algebraic equations will be a function of , and . On the other hand, using formulas in (7), the discrete equations to be optimized will take the following form:

In order to construct the fitness function, we first define the residual of the general interior node, , as

As the second step in the construction, we define the overall individual residual function,, in norm to be a function of the residuals of all interior nodes. This function may be stated as

For the final step, we define the fitness function,, as

A mapping of the overall individual residual function into a fitness function is required in the algorithm in order to convert the minimization problem of into a maximization problem of . In fact, we do this to facilitate the calculations and planning graphics. The value of individual fitness is improved if a decrease in the value of the Oir is achieved. The optimal solution of the problem, nodal values, will be achieved when Oir approaches zero and Fit approaches unity.

4. Outline of the Genetic Algorithm

The GA is an optimization and search technique based on the principles of genetics and natural selection. The GA allows a population composed of many individuals to evolve under specified selection rules to a state that maximizes the fitness function. In this section, a general review of the GA is presented. After that, a detailed description of the continuous GA is given. As will be shown later, the efficiency and performance of continuous GA depend on several factors, including the design of the continuous GA operators and the settings of the system parameters.

GA, initiated in [30] as stochastic search technique based on the mechanism of natural selection and natural genetics, has received a great deal of attention regarding its potential as optimization technique for solving discrete optimization problems or other hard optimization problems. GA start with an initial population of individuals generated at random. Each individual in the population represents a potential solution to the problem under consideration. The individuals evolve through successive iterations, called generations. During each generation, each individual in the population is evaluated using some measure of fitness. Then, the population of the next generation is created through genetic operators. The procedure continues until the termination conditions are satisfied. GA is nature-inspired optimization method that can be advantageously used for many optimization problems. GA imitates basic principles of life and applies genetic operators like mutation, crossover, or selection to a sequence of alleles. The sequence of alleles is the equivalent of a chromosome in nature and is constructed by a representation which assigns a string of symbols to every possible solution of the optimization problem.

GA is an evolutionary computation technique, developed for optimization of nonlinear, constrained and unconstrained, nondifferentiable multimodal functions. Here, we introduce some of the advantages of GA [31]; first, it optimizes with continuous or discrete variables; second, simultaneously searches from a wide sampling of the cost surface; third, it deals with a large number of variables; fourth, it is well suited for parallel computers; fifth, it optimizes variables with extremely complex cost surfaces (they can jump out of a local minimum); sixth, it provides a list of optimum variables, not just a single solution; seventh, it may encode the variables so that the optimization is done with the encoded variables; eighth, it works with numerically generated data, experimental data, or analytical functions.

Remark 3. The term continuous in “continuous GA” is used to emphasize the continuous nature of the optimization problem and the continuity of the resulting solution curves.

Continuous GA was developed as an efficient method for the solution of optimization problems in which the parameters to be optimized are correlated with each other or the smoothness of the solution curve must be achieved [32]. It has been successfully applied in the motion planning of robot manipulators, which is a highly nonlinear, coupled problem [33, 34], in the solution of collision-free path planning problem for robot manipulators [35], in the numerical solution of second-order, two-point BVPs [36], in the solution of optimal control problems [37], in the solution of second-order, two-point singular BVPs [38], and in the solution of systems of second-order regular BVPs [39]. Their novel development has opened the doors for wide applications of the algorithm in the fields of mathematics and physics. It has been also applied in the solution of fuzzy differential equations [40]. On the other hand, the numerical solvability of other versions of differential equations and other related equations can be found in [4148] and references therein. The reader is asked to refer to [3240] in order to know more details about continuous GA, including its history, its justification for use, its applications, its characteristics, and its operators and control parameters.

The use of continuous GA with coupled parameters and/or smooth curves needs some justification [32, 36]. First, the discrete initialization version of the initial population means that neighbouring parameters might have opposite extreme values that make the probability of valuable information in this population very limited and correspondingly the fitness will be very low. This problem is overcome by the use of continuous curves that eliminate the possibility of highly oscillating values among the neighbouring parameters and result in a valuable initial population. Second, the traditional crossover operator results in a jump in the value of the parameter in which the crossover point lies while keeping the other parameters the same or exchanged between the two parents. This discontinuity results in a very slow converging process. On the other hand, the continuous GA results in smooth transition in the parameter values during the crossover process. Third, the conventional version of the mutation process changes only the value of the parameter in which the mutation occurs, while it is necessary to make some global mutations which affect a group of neighbouring parameters since either the parameters are coupled with each other or curve should be smooth. To summarize, the operators of the continuous GA are of global nature and applied at the individual level, while the operators of the traditional GA are of local nature and applied at the parameter level. As a result, the operators of the traditional GA result in a step-function-like jump in the parameter values, while those of continuous GA result in smooth transitions.

Continuous GA has several advantages over conventional one when it is applied to problems with coupled parameters and/or smooth solution curves [32, 36] as follows.(1)There are no encoding/decoding processes in continuous GA. This means that the execution time will be smaller in continuous GA case if both GA versions converge in the same number of generations.(2)The memory requirements of conventional GA are higher than those of continuous GA because the former uses genotype and phenotype representations of the population's individuals, while the later utilizes only the phenotype data. This makes continuous GA more suitable for problems with larger number of parameters.(3)In conventional GA, the actual range of the parameter values should lie within the fed range during the evolution process; otherwise, the optimal solution will not be reached. This is because the encoding/decoding processes in conventional GA require the range of values within which the solution should lie. To overcome this problem in conventional GA, a wide range of the parameter values should be provided or some adaptive range value scheme should be used. However, this problem is not encountered in continuous GA due to the fact that there are no encoding/decoding processes.(4)The conventional GA fails to find the optimal solution in such problems. It might reach a near-optimal solution; as a result, it cannot be used in applications where the optimal solution is required. The deficiency of the conventional GA is emphasized when the dimension of the optimization problem increases or the coupling effect is accentuated.

However, when using GA in optimization problems, one should pay attention to two points: first, whether the parameters to be optimized are correlated with each other or not; second, whether there is some restriction on the smoothness of the resulting solution curve or not. In case of uncorrelated parameters or nonsmooth solution curves, the conventional GA will perform well. On the other hand, if the parameters are correlated with each other or smoothness of the solution curve is a must, then the continuous GA is preferable in this case [3240].

To summarize the evolution process in continuous GA for solving Troesch’s and Bratu’s problems, an individual is a candidate solution that consists of 1 curve of nodal values. The population of individuals undergoes the selection process, which results in a mating pool among which pairs of individuals are crossed over with probability . This process results in an offspring generation where every child undergoes mutation with probability . After that, the next generation is produced according to the replacement strategy applied. The complete process is repeated till the convergence criterion is met where the parameters of the best individual are the required nodal values. The final goal of discovering the required nodal values is translated into finding the fittest individual in genetic terms. The flowchart of the algorithm is given in Figure 1.

5. Simulation Results

To validate the integrity of continuous GA and to investigate the errors of the modeling and measurements, we carried out two experiments. In fact, simulation results are carried out in order to verify the mathematical results and the theoretical statements for the optimized solutions. The results obtained by the continuous GA are compared with the analytical solution of each problem. The effects of various continuous GA operators and control parameters on the convergence speed of the proposed algorithm are also investigated in this section. The analysis includes the effect of various initialization methods on the convergence speed of the algorithm in addition to an analysis of the effect of selection schemes, the vector norm used, the crossover and mutation probabilities, the population size, and the step size.

Remark 4. The convergence speed of the algorithm, whenever used, means the average number of generations required for convergence.

The continuous GA produces one population after another. This can be done in an infinite loop. When the user specifies a fitness value to be reached, the procedure can be stopped as soon as at least one individual has a higher fitness than the desired one. Often, the user does not exactly know how big the fitness value of an acceptable solution should be. Therefore, one would like to stop the continuous GA when he cannot expect to obtain much better solutions anymore. From the experience with traditional optimization algorithms one might be tempted do observe convergence and to stop the continuous GA when the maximum fitness remains more or less constant over some populations. However, the continuous GA is stopped when one of the following conditions is met:(1)the fitness of the best individual of the population reaches a value of 0.999999;(2)the maximum nodal residual of the best individual of the population is less than or equal to 0.00000001;(3)a maximum number of 3000 generations is reached;(4)the improvement in the fitness value of the best individual in the population over 500 generations is less than 0.001.

It is to be noted that the first two conditions indicate a successful termination process (optimal solution is found), while the last two conditions point to a partially successful end depending on the fitness of the best individual in the population (near-optimal solution is reached) [3240].

The continuous GA proposed in this work is used to solve the given Troesch’s and Bratu’s problems. The input data to the algorithm is divided into two parts: the continuous GA related parameters and the problems related parameters. The continuous GA related parameters include the population size, , the individual crossover probability, , the individual mutation probability, , the rank-based ratio, , the initialization method, the selection scheme used, the replacement method, the immigration threshold value and the corresponding number of generations, and finally the termination criteria. The problem related parameters include the governing Troesch’s and Bratu’s equations, the independent interval , and the number of nodes, .

Consider Troesch’s problems (1) and (2), when and . Using continuous GA technique, taking , with the fitness function (12) and the previous termination conditions, the numerical results of approximating , when and at , , , , , and are tabulated in Tables 1 and 2, respectively.

Consider Bratu’s problems (3) and (4), when and . Using continuous GA technique, taking , with the fitness function (12) and the previous termination conditions, the numerical results of approximating , when and at , , , , , and are tabulated in Tables 3 and 4, respectively.

Numerical comparisons for Troesch’s and Bratu’s problems are studied next. The conventional numerical methods that are used for comparison of Troesch’s problem with continuous GA include the Laplace transform decomposition method [11], decomposition method [13], homotopy perturbation method [14], and variational iteration method [15], while on the other hand, the conventional numerical methods that are used for comparison of Bratu’s problem with continuous GA include the Laplace transform decomposition method [12], decomposition method [13], B-spline method [16], and Lie-group shooting method [17]. Tables 5 and 6 show a comparison between the absolute errors of our method together with other aforementioned methods for Troesch’s problem, while Tables 7 and 8 show a comparison for Bratu’s problem.

As it is evident from the comparison results, it was found that our method in comparison with the mentioned methods is much better with a view to accuracy and utilization. Also, from the tables, it can be seen that the continuous GA method is consistent with the accurate approximate solutions.

6. Statistical and Convergence Analysis

Throughout this paper, we will try to give the results of Troesch’s and Bratu’s problems; however, in some cases we will switch between the results obtained for the problems in order not to increase the length of the paper without the loss of generality for the remaining cases and results.

Due to the stochastic nature of continuous GA, twelve different runs were made for every result obtained in this work using a different random number generator seed; results are the average values of these runs. This means that each run of the continuous GA will result in a slight different result from the other runs [3240]. However, the convergence data of Troesch’s and Bratu’s problems are given in Table 9.

The evolutionary progress plots of the best-fitness individual of Troesch’s and Bratu’s problems are shown in Figures 2 and 3, respectively. It is to be noted from the evolutionary plots that the best-fitness function approaches one very fast in the first stage of computations after that the best-fitness function reaches steady-state values and no further improvement in the fitness value. This means that the approximate of continuous GA converges to the actual solution very fast in the first stage of computations.

The way in which the nodal values evolve is studied next. Figure 4 shows the evolution of the first, , middle, , and ninth, , nodal values for Troesch’s problem, while Figure 5 shows the evolution of the same nodal values for Bratu’s problem.

It is observed from the evolutionary plots that the convergence process is divided into two stages: the coarse-tuning stage and the fine-tuning stage, where the coarse-tuning stage is the initial stage in which oscillations in the evolutionary plots occur, while the fine-tuning stage is the final stage in which the evolutionary plots reach steady-state values and do not have oscillations by usual inspection. In other words, evolution has initial oscillatory nature for all nodes, in the same problem. As a result, all nodes, in the same problem, reach the near-optimal solution together.

The effect of the different types of initialization methods on the convergence speed of the algorithm is discussed next. Three initialization methods are investigated in this paper; the first method uses the modified normal Gaussian function (MNGF), the second uses the modified tangent hyperbolic function (MTHF), and the third is the mixed-type initialization method that initializes the first half of the population using the MNGF and the second half of the population using the MTHF [3240]. Table 10 shows that the use of the initialization method has a minor effect on the convergence speed because usually the effect of the initial population dies after few tens of generations and the convergence speed after that is governed by the selection mechanism, crossover, and mutation operators [3240]. For Troesch’s problem, the MTHF results in the fastest convergence speed while for Bratu’s problem, the MNGF results in the fastest convergence speed. However, for a specific problem, the initialization method with the highest convergence speed is the one that provides initial solution curves which are close to the optimal solution of that problem; that is, the optimal solution of Troesch’s problem is close to the MTHF and the optimal solution of Bratu’s problem is close to the MNGF. However, since the optimal solution of any given problem is not assumed to be known, it is better to have a diverse initial population by the use of the mixed-type initialization method. As a result, the mixed-type initialization method is used as the algorithm default method [3240]. The reader is asked to refer to [3240] in order to know more details about the initialization methods used in continuous GA, including their kinds and types and their justification and conditions for use.

The effect of the vector norm used in the fitness evaluation is studied here. Two vector norms are used: norm and norm. The norm is governed by the equation while norm is governed by (11). Figure 6 shows the evolutionary progress plots for the best-of-generation individual for Troesch’s problem when and Bratu’s problem when using and norms, while Table 11 gives the convergence speed for Troesch’s and Bratu’s problems for two different cases. Two observations are made in this regard. First, the evolutionary progress plots of both norms show that norm has higher fitness values than those of norm throughout the evolution process. Second, norm converges a little bit faster than norm. The key factor behind these observations is the square power appearing in norm. Regarding the first observation, it is known that for a given set of nodal residuals with values less than 1, norm results in a higher value than norm and correspondingly the fitness value using norm will be higher than that using norm. Regarding the second observation, norm tries to select individual solutions, vectors, with distributed nodal residuals among the nodes rather than lumped nodal residuals where one nodal residual is high and the remaining nodal residuals are relatively small. This distributed selection scheme results in closer solutions to the optimal one than the lumped selection scheme. In addition to that, the crossover operator will be more effective in the former case than in the latter one. These two points result in the faster convergence speed in norm as compared with norm. Furthermore, it is observed that norm is less sensitive to variations in the genetic related parameters and problem related parameters. As a result, norm is preferred over norm and it is used as the algorithm’s default norm [3240].

The particular settings of several continuous GA tuning parameters including the probabilities of applying crossover operator and mutation operator are investigated now. These tuning parameters are typically problem dependent and have to be determined experimentally. They play a non negligible role in the improvement of the efficiency of the algorithm. Figure 7 shows the effect of the crossover probability, , and the mutation probability, , on the convergence speed of the algorithm for Troesch’s problem when . It is clear from Figure 7 that when the probabilities values and are increasing gradually, the average number of generation required for convergence is decreasing as well. Also, it is noted that the best performance of the algorithm is achieved when and . As a result, these values are set as the algorithm default values [3240].

The influence of the population size on the convergence speed, the average fitness, and the corresponding errors of continuous GA is studied next for Troesch’s problem when as shown in Figure 8. Small population sizes suffer from larger number of generations required for convergence and the probability of being trapped in local minima, while large population sizes suffer from larger number of fitness evaluations that means larger execution time. However, it is noted that the improvement in the convergence speed becomes almost negligible after a population size of .

Now, the effect of the number of nodes on the convergence speed, the average fitness, and the corresponding errors is explored. Table 12 gives the relevant data for Bratu’s problems when . It is observed that the reduction in the step size results in a reduction in the error and correspondingly an improvement in the accuracy of the obtained solution. This goes in agreement with the known fact about finite difference schemes where more accurate solutions are achieved using a reduction in the step size. On the other hand, the cost to be paid while going in this direction is the rapid increase in the number of generations required for convergence. For instance, while increasing the number of nodes from 5 to 10 to 20, the required number of generations for convergence jumps from almost to to 2400, that is, to multiplication factor.

Finally, the effect of the most commonly used selection schemes by GA community of the performance on the continuous GA is investigated. Table 13 represents the effect of selection schemes on the convergence speed, the average fitness, and the corresponding errors for Bratu’s problem when . It is clear from Table 13 that the rank-based selection scheme [49] has the faster convergence speed. The tournament selection with replacement [49] and tournament selection without replacement [50] approaches come in the second place with almost similar convergence speeds. It is obvious that the roulette wheel [30], stochastic universal [50], and half biased selection [51] schemes have slower convergence speed of the rest of the methods. The half biased selection scheme has the slowest convergence speed. The reader is kindly requested to go through [3240] for more details about the selection scheme used in the algorithm.

7. Summery

This paper has introduced a new optimization technique based on the use of continuous GA where two smooth solution curves are used for representing the required nodal values. The continuous GA was found to be accurate in which the boundary conditions of the problems are satisfied. Simulation results are carried out in order to verify the mathematical results and the theoretical statements for the optimized solutions. The applicability and efficiency of the proposed algorithm for the solution of different cases of Troesch’s and Bratu’s problems are investigated. On the other aspect as well, the effect of different parameters, including the evolution of nodal values, the initialization method, the selection method, the vector norm used, the crossover and mutation probabilities, the population size, and the step size, is studied.

Conflicts of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

The authors would like to express their thanks to unknown referees for their careful reading and helpful comments.