A NALYSIS OF THE MODEL USING G ENERAL E VOLUTIONARY A LGORITHM

The study aims to solve the universality of evolutionary computation for solving different optimization problems, avoid the repeating design, and share codes, so as to improve the application efficiency of the algorithms. To achieve this, the authors put forward a general evolutionary model based on object-oriented programming language (C# language) in this paper. This model divides the problem domain, the fitness function, the algorithm and the parameter control into different classes, which are encapsulated into different objects so as to enhance the independence of each module. By utilizing the model, it is convenient to develop, reuse, extend and modify software while guaranteeing the universality of the algorithm at the same time.


Introduction
Genetic algorithm which plays a key role in the evolutionary computation is a global optimization algorithm for simulating natural selection and natural genetic mechanism in the process of biological evolution.According to Darwin's theory of evolution and Mendel's theory of heredity, John Holland of Michigan University in America proposed genetic algorithm in 1975, which has been developed rapidly after being studied for more than forty years (Holland, 1975).This has been proved that it is a very effective method and has been widely applied in various fields such as neural networks, function optimization, image processing, system identification and expert systems due to its high efficiency and practicality (Fogel, Owens, & Walsh, 1966;Koza, 1994;Koza & Koza, 1992;Schwefel, 1995).In fact, the essence of traditional genetic algorithms is to constantly evolve a population using population search technique based on the principle of "survival of the fittest" and finally to obtain the optimal solution.The specific realization method is as follows: 1.The feasible regions are determined according to specific problems and their solutions can be expressed by a coding scheme; 2. Each solution needs to be measured according to a measurement basis, which is generally signified by a nonnegative function, that is, fitness function; 3. The evolutionary parameters, namely, the population size (N), the crossover probability (P c ), the mutation probability (P m ) and the end conditions of evolution, are determined; 4. An initial population containing a number of individuals is generated, and each individual is a feasible solution to problems; 5. The fitness values of each individual in the population are calculated; 6.If the optimal solution is obtained, the loop stops; The system shares the methods and attributes of classes based on the inheritance mechanism, while the communication among objects is realized by delivering information.The objects mainly consist of two parts, namely, attributes and methods, and there into, the former is used to describe the interior structures of objects, while the latter shows the behaviors of objects.The principal-agent mechanism provided by C# language can effectively realize the polymorphism of classes so as to reuse the code and improve the development efficiency of software.

Division of basic functions of evolutionary algorithm
Through analyzing the evolutionary algorithm, it is found that evolutionary algorithm can be divided into different modules, such as the problem domain, the fitness function, the evolutionary algorithm and the parameter control.Among them, the evolutionary algorithm is composed of some genetic operators    Window class, as the entrance of whole system, is used to sends all information including the parameter setting, the selection of problems, the calculation rules of fitness values, the selection of genetic operators, and the start or stop of the algorithm.( ) ( )

, n.
Result: There are total 18 optimal solutions with the best value being -186.73.

Conclusion
Based on the object-oriented characteristic of C# language, the modules including the problem domain, the fitness value of individuals, the population, the evolutionary operators and the parameters are further divided into different classes.The purpose is to strengthen the independence of all modules so that make it convenient to develop, reuse, extend and modify software.The experiment illustrates that the algorithm is effective in improving the efficiency of software and shows relatively high universality.

Figure 1 .
Figure 1.The functions of the system

Figure 2 .
Figure 2. The home page of the user interface

Figure 3 .
Figure 3.The classes of the evolutionary algorithm

C
# language program is composed of the classes.On the basis of the designed class diagram, algorithms are designed and codes are programmed for each method in the classes.Due to the limitation of length of the paper, the authors only list a few main methods.In Fit class, many Compute methods are reloaded to calculate the fitness values of individuals.The mathematical model corresponding to problems in the algorithm is without constraints.The following algorithm is to solve multi-Hu | IJEAT 1(2); 84-93 IJEAT © 2018 www.Inter-Journal.nusaputra.ac.id/IJEAT 91 objective optimization problems according to the weights.When a problem just has one objective, the value of problem.cause[0].length is set as 1.Here, the algorithm is converted to that for solving the optimization problem with a signal objective.P u b l i c d o u b l e c o m p u t e ( ) { P r o b l e m p r o b l e m = n e w P r o b l e m ( ) ; d o u b l e f i t ; f o r ( i n t i = 0 ; i < p r o b l e m .c a u s e [ 0 ] .l e n g t h ; i + + ) f i t + = w * p r o b l e m .c a u s e [ 0 ] [ ] ; f o r ( i n t i = 0 ; i < p r o b l e m .c a u s e [ 1 ] .l e n g t h ; i + + ) i f ( p r o b l e m .c a u s e [ 1 ] [ i ] > 0 ) f i t + = M a t h .A b s ( p r o b l e m .c a u s e [ 1 ] [ i ] ) ; r e t u r n f i t ; } Arithmetic1 method and other methods of Evolve class are sued for genetic operations such as hybridization and mutation.Each method can be reloaded by using a same function name, and can be extended or modified as well.The algorithm is: P u b l i c v o i d A r i t h m e t i c 1 ( ) { P r o b l e m p r o b l e m = n e w P r o b l e m ( ) ; f o r ( i n t i = 0 ; i < v a r i a b l e _ n u m ; i + + ) n e w p [ i ] = u * x [ i ] + ( 1 -u ) y [ i ] ; } 3 EXPERIMENTAL ANALYSIS In this paper, the authors select some examples to test, and the results show that the algorithm has favorable universality.Example 1: ,0.0517 and -0.051799.Hu | IJEAT 1(2); 84-93 IJEAT © 2018 www.Inter-Journal.nusaputra.ac.id/