Variable Size Population NSGA-II VPNSGA-II Technical Report Giovanni Rappa Queensland University of Technology (QUT), Brisbane, Australia 2014

Similar documents
Department of Mechanical Engineering, Khon Kaen University, THAILAND, 40002

Smart Grid Reconfiguration Using Genetic Algorithm and NSGA-II

Multi-objective Optimization Inspired by Nature

Achieving Desirable Gameplay Objectives by Niched Evolution of Game Parameters

Robust Fitness Landscape based Multi-Objective Optimisation

Multilayer Perceptron: NSGA II for a New Multi-Objective Learning Method for Training and Model Complexity

Reducing the Computational Cost in Multi-objective Evolutionary Algorithms by Filtering Worthless Individuals

Available online at ScienceDirect. Procedia CIRP 17 (2014 ) 82 87

EVOLUTIONARY ALGORITHMS FOR MULTIOBJECTIVE OPTIMIZATION

Available online at ScienceDirect. Procedia Computer Science 24 (2013 ) 66 75

An Improved NSGA-II and its Application for Reconfigurable Pixel Antenna Design

Design and Development of an Optimized Fuzzy Proportional-Integral-Derivative Controller using Genetic Algorithm

Wire Layer Geometry Optimization using Stochastic Wire Sampling

TABLE OF CONTENTS CHAPTER NO. TITLE PAGE NO. LIST OF TABLES LIST OF FIGURES LIST OF SYMBOLS AND ABBREVIATIONS

Optimization of Time of Day Plan Scheduling Using a Multi-Objective Evolutionary Algorithm

COMMONS GAME Made More Exciting by an Intelligent Utilization of the Two Evolutionary Algorithms

The Genetic Algorithm

State assignment for Sequential Circuits using Multi- Objective Genetic Algorithm

Optimal Allocation of SVC for Minimization of Power Loss and Voltage Deviation using NSGA-II

Evolutionary Multi-Objective Optimisation with a Hybrid Representation

An Optimized Performance Amplifier

THE area of multi-objective optimization has developed. Pareto or Non-Pareto: Bi-Criterion Evolution in Multi-Objective Optimization

Multiobjective Plan Selection Optimization for Traffic Responsive Control

Annual Conference of the IEEE Industrial Electronics Society - IECON(39.,2013, Vienna, Áustria

INTEGRATED CIRCUIT CHANNEL ROUTING USING A PARETO-OPTIMAL GENETIC ALGORITHM

Load frequency control in two area multi units Interconnected Power System using Multi objective Genetic Algorithm

2 M.W. LIU, Y. OEDA and T. SUMI Many of the past research effort were conducted to examine various signal timing optimization methods with different s

A Genetic Algorithm for Solving Beehive Hidato Puzzles

SECTOR SYNTHESIS OF ANTENNA ARRAY USING GENETIC ALGORITHM

Keywords- DC motor, Genetic algorithm, Crossover, Mutation, PID controller.

Evolutionary Multiobjective Optimization Algorithms For Induction Motor Design A Study

Multiobjective Optimization Using Genetic Algorithm

Economic optimisation of an ore processing plant with a constrained multi-objective evolutionary algorithm

NUMERICAL SIMULATION OF SELF-STRUCTURING ANTENNAS BASED ON A GENETIC ALGORITHM OPTIMIZATION SCHEME

Frequency Domain Design of Fractional Order PID Controller for AVR System Using Chaotic Multi-objective Optimization

Applying Mechanism of Crowd in Evolutionary MAS for Multiobjective Optimisation

A serious game for understanding artificial intelligence in production optimization

Economic Design of Control Chart Using Differential Evolution

Vesselin K. Vassilev South Bank University London Dominic Job Napier University Edinburgh Julian F. Miller The University of Birmingham Birmingham

A comparison of a genetic algorithm and a depth first search algorithm applied to Japanese nonograms

A Genetic Algorithm-Based Controller for Decentralized Multi-Agent Robotic Systems

Introduction. APPLICATION NOTE 3981 HFTA-15.0 Thermistor Networks and Genetics. By: Craig K. Lyon, Strategic Applications Engineer

Optimal Power Flow Using Differential Evolution Algorithm With Conventional Weighted Sum Method

Chapter 5 OPTIMIZATION OF BOW TIE ANTENNA USING GENETIC ALGORITHM

Research Article Single- versus Multiobjective Optimization for Evolution of Neural Controllers in Ms. Pac-Man

Niched-Pareto Genetic Algorithm for Aircraft Technology Selection Process. Chirag B. Patel Dr. Michelle R. Kirby Prof. Dimitri N.

Solving Assembly Line Balancing Problem using Genetic Algorithm with Heuristics- Treated Initial Population

Optimal Allocation of TCSC Using Heuristic Optimization Technique

Genetic Algorithms: Basic notions and some advanced topics

Shuffled Complex Evolution

Autonomous Controller Design for Unmanned Aerial Vehicles using Multi-objective Genetic Programming

Temporal Evolution of Design Principles in Engineering Systems: Analogies with Human Evolution

Planning and Optimization of Broadband Power Line Communications Access Networks: Analysis, Modeling and Solution

BIEB 143 Spring 2018 Weeks 8-10 Game Theory Lab

A Novel approach for Optimizing Cross Layer among Physical Layer and MAC Layer of Infrastructure Based Wireless Network using Genetic Algorithm

Position Control of Servo Systems using PID Controller Tuning with Soft Computing Optimization Techniques

Power Systems Optimal Placement And Sizing Of STATCOM in Multi-Objective Optimization Approach And Using NSGA-II Algorithm

Research Article Multi-objective PID Optimization for Speed Control of an Isolated Steam Turbine using Gentic Algorithm

MANY real-world optimization problems can be summarized. Push and Pull Search for Solving Constrained Multi-objective Optimization Problems

GA Optimization for RFID Broadband Antenna Applications. Stefanie Alki Delichatsios MAS.862 May 22, 2006

arxiv: v1 [cs.ne] 25 Apr 2014

STIMULATIVE MECHANISM FOR CREATIVE THINKING

LANDSCAPE SMOOTHING OF NUMERICAL PERMUTATION SPACES IN GENETIC ALGORITHMS

Determination of the PID Controller Parameters by Modified Genetic Algorithm for Improved Performance

GENETIC PROGRAMMING. In artificial intelligence, genetic programming (GP) is an evolutionary algorithmbased

A Factorial Representation of Permutations and Its Application to Flow-Shop Scheduling

A Graph Grammar Based Approach to Automated Multi-Objective Analog Circuit Design

ARRANGING WEEKLY WORK PLANS IN CONCRETE ELEMENT PREFABRICATION USING GENETIC ALGORITHMS

LOG-PERIODIC DIPOLE ARRAY OPTIMIZATION. Y. C. Chung and R. Haupt

Pareto Evolution and Co-Evolution in Cognitive Neural Agents Synthesis for Tic-Tac-Toe

A Review on Genetic Algorithm and Its Applications

MULTI OBJECTIVE ECONOMIC DISPATCH USING PARETO FRONTIER DIFFERENTIAL EVOLUTION

Population Adaptation for Genetic Algorithm-based Cognitive Radios

NAVIGATION OF MOBILE ROBOT USING THE PSO PARTICLE SWARM OPTIMIZATION

Digital Filter Design Using Multiple Pareto Fronts

Enhancement of Voltage Stability by SVC and TCSC Using Genetic Algorithm

IMPROVING POWER SYSTEM STABILITY USING REAL-CODED GENETIC ALGORITHM BASED PI CONTROLLER FOR STATCOM

CS 441/541 Artificial Intelligence Fall, Homework 6: Genetic Algorithms. Due Monday Nov. 24.

Evolutionary robotics Jørgen Nordmoen

PID Controller Tuning using Soft Computing Methodologies for Industrial Process- A Comparative Approach

Creating autonomous agents for playing Super Mario Bros game by means of evolutionary finite state machines

Genetic Algorithms in MATLAB A Selection of Classic Repeated Games from Chicken to the Battle of the Sexes

FOUR TOTAL TRANSFER CAPABILITY. 4.1 Total transfer capability CHAPTER

Application of Evolutionary Algorithms for Multi-objective Optimization in VLSI and Embedded Systems

Evolutionary Approach to Approximate Digital Circuits Design

Available online at ScienceDirect. Procedia Computer Science 24 (2013 )

Yet Another Organized Move towards Solving Sudoku Puzzle

An evolutionary algorithm approach to simultaneous multi-mission radar waveform design

An Improved Epsilon Constraint Handling Method Embedded in MOEA/D for Constrained Multi-objective Optimization Problems

Performance Evaluation of Qos Parameters in Cognitive Radio Using Genetic Algorithm

Evolutionary Optimization for the Channel Assignment Problem in Wireless Mobile Network

Applying Copeland Voting to Design an Agent-Based Hyper-Heuristic

Localized Distributed Sensor Deployment via Coevolutionary Computation

Differential Evolution for RFID Antenna Design: A Comparison with Ant Colony Optimisation

Mehrdad Amirghasemi a* Reza Zamani a

A DISTRIBUTED POOL ARCHITECTURE FOR GENETIC ALGORITHMS. A Thesis GAUTAM SAMARENDRA N ROY

DISTRIBUTION NETWORK RECONFIGURATION FOR LOSS MINIMISATION USING DIFFERENTIAL EVOLUTION ALGORITHM

Algorithms for Genetics: Basics of Wright Fisher Model and Coalescent Theory

Genetic Programming Approach to Benelearn 99: II

FREQUENCY ESTIMATION OF UNDAMPED EXPONENTIAL SIGNALS USING GENETIC ALGORITHMS

Transcription:

Variable Size Population NSGA-II VPNSGA-II Technical Report Giovanni Rappa Queensland University of Technology (QUT), Brisbane, Australia 2014 1. Introduction Multi objective optimization is an active field of research [1 8] with broad applicability in aeronautics [6, 7, and 8]. This report details a variant of the original NSGA II software aimed to improve the performances of such a widely used Genetic Algorithm in finding the optimal Pareto front of a Multi Objective optimization problem for the use of UAV and aircraft design and optimsaiton. Original NSGA II works on a population of predetermined constant size and its computational cost to evaluate one generation is, being m the number of objective functions and n the population size ([1]). The basic idea encouraging this work is that of reduce the computational cost of the NSGA II algorithm by making it work on a population of variable size, in order to obtain better convergence towards the Pareto front in less time. In this work some test functions will be tested with both original NSGA II and VPNSGA II algorithms; each test will be timed in order to get a measure of the computational cost of each trial and the results will be compared. The rest of this report is organized as follows: in Section 2 the original NSGA II software is briefly described; in Section 3 the software used in this work is presented, pointing out how the demographic growth was implemented; Sections 4 describes the objective functions tested here and finally in Sections 5 and 6 the results of the runnings and the conclusions are shown. 2. NSGA II NSGA II is an elitist Multi Objective Genetic Algorithm based on the well known NSGA algorithm able to produce Pareto optimal nondominated solutions. The operations carried on by the NSGA II software may be arranged into 7 logical steps ([2], [3]): a) the main evolutionary parameters (i.e. population size and maximum number of generations) are given and the objective functions are defined in terms of number of fitness functions, number of decision variables and bounds of decision variables; b) the population is randomly initialized; all objective functions are evaluated for each individual and data are stored in the chromosome variable; c) the population is sorted into fronts based on non domination: a rank is assigned to each individual so that individuals having rank dominate all individuals having rank and are dominated by all individuals having rank. Then, within each front, all 1

individuals are classed depending on their crowding distance, that is a measure of how close an individual is to its neighbours; in order to better preserve diversity in the population, individuals with higher crowding distance must be more suitable than the ones with lower crowding distance; d) a mating pool (half of the entire population) is picked by means of a binary tournament selection based on individual rank and crowding distance: taken two random individuals, the individual having smallest rank (or greatest crowding distance, if the rank is the same) is selected; e) generic operator on the mating pool is done to generate an offspring population; the evolution consists either in a Simulated Binary Crossover or in a genetic mutation based on polynomial mutation; the crossover occurs with a probability of 90% and generates two children from a couple of parents, while mutation (occurring in the remaining 10% of cases) produces one child from a single parent. How well spread the children the children will be from their parents is determined by the distribution indices and ([3]); f) the intermediate population resulting from the previous step, which includes both parents and offspring, is in turn sorted based on the same criteria of nondomination and crowding distance; g) finally, a natural selection of the population is performed, i.e. only the individuals belonging to the first fronts survive while the others are discarded: this is accomplished by filling a new population starting from the individuals having rank 1, then rank 2 and so on; if including a full front would make the new population exceed the initial population size, only the individuals of that front with greater crowding distance are included in the new population. The number of generations is used as the stopping criterion, so steps 4, 5, 6, and 7 are cyclically run until the maximum number of generations is achieved. 3. The VPNSGA II software The following results are obtained by using a modified version of the original NSGA II Matlab functions described by Seshadri in [2]: some changes were done in the original code in order to make the software run faster. Here it is a brief description of the changes: a) launcher.m. A launcher M file was created; this file calls the VPnsgaII.m function with different parameters and receive as an output from it the time elapsed to accomplish each evolution test. It also automatically adds legends to all the plots. b) VPnsgaII.m. Four inputs (final_pop, exponent, problem, conditions) and one output (elaps_time) were added to the original functions in order to make the launcher work correctly. The first part of the function was not modified, but lines 31, 32 and 40 were written exnovo in order to allow the evolution to occur with a variable population size (i.e. a kind of 2

demographic growth was implemented). In accordance with the input variable exponent, the population may be increased from the initial_pop value to the final_pop value either linearly (if exponent is 1) or exponentially while generations succeed. In the tests conducted, when a variable population size was used, the exponent was set to 70, so that the majority of the evolution occurs with a low population size (thus providing a very fast evolution), and only in the last part of the evolutionary process the population rapidly arises to the final value (so that a well spread representation of the Pareto front is eventually obtained). This technique allowed to reach interesting results in terms of obtained Pareto fronts and of time elapsed to run the evolutions. There are no other laws of population size change tried in this work, but it seems a feasible way to obtain a faster convergence for MOEAs. No other remarkable changes to the original NSGA II were conducted: the tic/toc Matlab functions were used at lines 38 and 65 to estimate the computational cost of the algorithm, the name of the text file where chromosome is saved was changed (in order to rapidly recognise which simulation each text file refers to) and some final lines were added to tune the resulting plots. Other minor changes were conducted to the other functions to make them correctly work when called by the launcher.m software. 4. Objective functions In the software used in this work the user is not asked to specify the number and the characteristics of the objective functions from the Matlab workspace, but he/she has to choose which one of the predefined functions he/she wants to test; the main characteristics of the chosen problem (number of objectives, number of decision variables, minimum and maximum values for each decision variable) are stored in the variable fun_param. In the file listed in Appendix A the lines necessary to ask the user to make his choice are commented, since the problems to test are already chosen in launcher.m. All the available functions tested here are the same proposed by Deb, Pratap, Agarwal and Meyarivan in [1], so in this work the same abbreviations are used to name them. The functions to minimize are always two and they are named and ; in addition, the ZDTs problems (first proposed by Zitzler, Deb and Thiele in [3]) have the peculiarity that the function only depends on the first decision variable, while the second objective function is a combination of the first function and an intermediate function g, dependent on all the other decision variables. It was noticed that ZDT6 function is proposed differently by different authors ([1], [2] and [3]), so all their proposed versions are tested in this work. The functions, the number n of variables on which they depend and the respective variable bounds are shown in Table 1. 3

PROBLEM OBJECTIVE FUNCTIONS n VARIABLE BOUNDS SCH FON POL 2 1exp 1 3 1exp 1 3 1 3 1 0.5sin12cos1sin21.5cos2 1.5sin1cos12sin20.5cos2 0.5sin 2cos sin 1.5 cos 1.5sin cos 2sin 0.5 cos 1 10,10 3 4,4 2, KUR ZDT1 10 exp 0.2. 5sin 19. 1 1 Table 1. Objective functions tested 3 5,5 30 0,1 PROBLEM OBJECTIVE FUNCTIONS n VARIABLE BOUNDS ZDT2 19. 1 1 30 0,1 4

ZDT3 19. 1 1 sin10 30 0,1 ZDT4 1101 10cos4 1 10 0,1 5,5 if 1 if 1 ZDT6 from [4] ZDT6 From [1] ZDT6 From [3] 19. 1exp4 sin6 1 19. 1 1exp4 sin4 1 19 4. 1exp4 sin6 1 Table 1. Objective functions tested [continued] 10 0,1 10 0,1 6 0,1 5. Results The following results are obtained considering both distribution indices and equal to 10; although in [1] and are set to 20, values of 10 produced satisfactory results for ZDTs functions. The VPNSGA II algorithm was run in Matlab on a 1.61GHz AMD Turion 64 x2 TL 50 CPU PC with 2GB of RAM. 5.1 SCH, FON, POL and KUR functions results 5

Evaluations of the first four functions (SCH, FON, POL and KUR) were carried on with a constant population size of 100 individuals and 100 generations. Although no other results are reported here, it was found that a smaller population could have been sufficient to obtain the same Pareto fronts. Figure 1. Pareto front of SCH function (Population size: 100; Generations: 100) Figure 2. Pareto front of FON function. (Population size: 100; Generations: 100) 5.2 ZDTs functions results The following plots are related to the ZDTs functions. Finding the Pareto front for these functions was significantly more difficult than for the previous functions, but it is not surprising at all, since the ZDTs functions were created on the purpose of introducing difficulties in the evolutionary process, in particular in converging to the Pareto optimal front ([4]). 6

Figure 3. Pareto front of POL function. (Population size: 100; Generations: 100) Figure 4. Pareto front of KUR function. (Population size: 100; Generations: 100) Each function was analysed performing evolutions of populations of different size and for different number of generations. Each plot shows a comparison between two pairs of results: the first pair (blue circles and red crosses) is related to constant size populations, while the second pair (green stars and magenta diamonds) is obtained with growing populations; the legends of each diagram show the parameters used and the time required to perform the evolution. In particular: 1. blue lines are related to parameters suggested in [1,2]; 7

2. red lines are related to evolutions performed with smaller populations, which generally leads to a higher Pareto front obtained in less time; 3. green lines are related to evaluations performed with a variable population size from the value used for red plots to the value used for the blue ones; generally, the green results are qualitatively comparable to the blue ones but they are obtained in less time; 4. magenta lines, finally, are the results obtained performing a tuning of values used for population size and generations run, in order to obtain in most cases better results in less time. The most remarkable exceptions is the plot of the results for ZDT4 (Figure 8), in which the magenta line is the highest one. Maybe this unusual behaviour is due to the fact that NSGA II algorithm could not be suitable to find the Pareto front for such a function. Since the ZDT4 function has 21 different local Pareto fronts, NSGA II algorithm often gets stuck in one of them, thus not converging anymore towards the true global Pareto front ([1]). On the contrary, the NSGA II algorithm works very well with the ZDT6 function, as shown in the last four plots (from Figure 9 to Figure 11): all the lines are always practically overlapped, meaning that NSGA II algorithm is able to easily find the true Pareto front for such a function. Figure 5. Results for ZDT1 obtained with different population sizes and population growths 6. Conclusions This report presented the application of a modified version of the NSGA II software as a mean to find the Pareto optimal solution of a Multi Objective optimization problem: this customized variant of the original NSGA II, called VPNSGA II, works on a population whose size must not be necessarily held constant, but a law of variation of the population size may be implemented. In particular, in the present work the effects of an exponential demographic 8

growth were investigated. The advantages of using such a law of variation, are just given by the dependence of the computational costs of the NSGA II algorithm on the second power of the population size, so that the majority of the evolutionary process occurs on a small sized population, while only a marginal number of evolutions is performed on an increased population. Both the original NSGA II and VPNSGA II algorithm were applied to the same test functions and the results were compared by plotting on the same chart the final populations obtained; the time required in each case to accomplish the whole evolutionary process was taken. It was seen that VPNSGA II always seems to be able to produce better results than NSGA II, (i.e. lower Pareto fronts found in less time). An exception was observed when ZDT4 function was evaluated: those anomalous results are due to the presence of an extraordinary number of local Pareto fronts in the problem, so that both NSGA II and VPNSGA II systematically got stuck in one of them and did not converge anymore towards the global Pareto front. According to what was observed in this work, VPNSGA II turned out to be a valid alternative to the original NSGA II algorithm: future works could be targeted to try different variation laws for the population size, in order to obtain a faster and more efficient evolutionary algorithm. Figure 6. Results for ZDT2 obtained with different population sizes and population growths 9

Figure 7. Results for ZDT3 obtained with different population sizes and population growths Figure 8. Results for ZDT4 obtained with different population sizes and population growths 10

Figure 9. Results for ZDT6 (from [4]) obtained with different population sizes and population growths Figure 10. Results for ZDT6 (from [1]) obtained with different population sizes and population growths 11

Figure 11. Results for ZDT6 (from [3]) obtained with different population sizes and population growths References 1. Deb, K., Pratap,A. Agarwal, S. and Meyarivan, T. A Fast and Elitist Multi Objective Genetic Algorith: NSGA II, KanGAL Report No. 200001, Kanpur: Indian Institute of Technology, Kanpur Genetica Algorithms Laboratory. (2000) 2. Seshadri, A Fast Elitist Multiobjective Genetic Algorithm: NSGA II. 3. Zitzler, K. Deb and L. Thiele, Comparison of Multiobjective Evolutionary Algorithms: Empirical Results, TIK Report No. 70, ETH Zürich: Institut für Technische Informatik und Kommunikationsnetze. (1999) 4. Lee, D. S., Gonzalez, L. F. Periaux, J. and Srinivas, K. Evolutionary Optimization Methods with Uncertainty for Modern Multidisciplinary Design in Aerospace Engineering (100 Volumes of Notes on Numerical Fluid Mechanics ). Heidelberg, Germany: Springer, 2009, ch. 3, pp. 271 284. 5. Lee, D.S., Periaux, J., Gonzalez, L.F., Onate, E., Qin, N., Active Transonic Aerofoil Design OptimizationUsing Robust Multi objective Evolutionary Algorithms. AIAA Journal of Aircraft. DOI: 10.2514/1.C031237 (2011) 6. Gonzalez, L. F. Robust evolutionary methods for multi objective and multidisciplinary design optimization in aeronautics. Ph.D dissertation, School Aerospace, Mechanic. Mechatronics Engineering., University of Sydney, Sydney, Australia, 2005. 7. Lee, D. Gonzalez, L.F., Periaux, J., Srinivas, K. and Onate, E. Hybrid game strategies for multi objective design optimizatio in engineering, Computers & Fluids, vol. 47, pp. 189 204, 2011. 8. Gonzalez, L.F., Lee, D. S., Perlaux, J. UAS Mission Path Planning Systems (MPPS) Using Hybrid Game Coupled to Multi Objective Optimizer, Journal of Dynamic Systems, Measurements, and Control, July 2010, Vol. 132. 12