Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
The Evolution of Evolutionary Computation Xin Yao CERCIA, School of Computer Science, University of Birmingham, UK http://www.cercia.ac.uk What Is Evolutionary Computation It is the study of computational systems which use ideas and get inspirations from natural evolution. Evolutionary computation (EC) techniques can be used in optimisation, learning and creative design. EC techniques do not require rich domain knowledge to use. However, domain knowledge can be incorporated into EC techniques. Characteristics of Evolutionary Computation Flexible: applicable to different problems Robust: can deal with noise and uncertainty Adaptive: can deal with dynamic environments Autonomous: without human intervention Decentralised: without a central authority Outline of This Talk Heuristic Optimisation Data Mining and Machine Learning Case Study I: Modelling Discovering `New’ Physical Laws in Astrophysics --- Modelling Radial Brightness Distributions in Elliptical Galaxies Empirical laws are widely used in astrophysics. However, as the observational data increase, some of these laws do not seem to describe the data very well. Can we discover new empirical laws that describe the data better? Monochromatic (Negative) Images of Galaxies disk bulge A typical elliptical galaxy A typical spiral galaxy Current Approach Select a functional form in advance Drawbacks: ad hoc, difficult to determine and may only suit a smaller number of profiles Apply fitting algorithms to find suitable parameters for the function. Usually adopt the non-linear reduced c2 minimization No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo. χ2 = where Iobs(i) is the individual observed profile value, Imodel(i) is the value calculated from the fitting function, υ is the number of degrees of freedom, and δ is the standard deviation of the data. Drawbacks: difficult to set initial values and easily trapped in local minima Our Evolutionary Approach (1) Find functional forms using GP (Genetic Programming) : A data-driven process without assuming a functional form in advance A bottom up process which suits modelling a large number of galaxy profiles without any prior knowledge of them (2) Fit parameters in the form found using FEP (Fast Evolutionary Programming): Not sensitive to initial setting values More likely to find global minima J. Li, X. Yao, C. Frayn, H. G. Khosroshahi, S. Raychaudhury, ``An Evolutionary Approach to Modeling Radial Brightness Distributions in Elliptical Galaxies,'' Proc. of the 8th International Conference on Parallel Problem Solving from Nature (PPSN VIII), Lecture Notes in Computer Science, Vol. 3242, pp.591-601, Springer, September 2004. Case Study in Astrophysics = Real-world Problems? Yet another mad professor? … Case Study II: Modelling Determining Unified Creep Damage Constitutive Equations in Aluminium Alloy Modelling Creep behaviours of different materials are often described by physically based unified creep damage constitutive equations. Such equations are extremely complex. They often contain undecided constants (parameters). Traditional approaches are unable to find good near optima for these parameters. Evolutionary algorithms (EAs) have been shown to be very effective. Example Equations Model with Evolved Parameters by IFEP Evolutionary Parameter Calibration and Optimisation Classical evolutionary programming (CEP), fast EP (FEP) and improved fast EP (IFEP) can be used to find parameters in a complex and nondifferentiable space. B. Li, J. Lin and X. Yao, “A novel evolutionary algorithm for determining unified creep damage constitutive equations,” International Journal of Mechanical Sciences, 44 (2002) 987–1002. Impact Have been used by Corus / Tata Corus since 2001. Constraint Handling Real-world problems have many constraints, e.g., linear, nonlinear, equality, inequality, … An Example Stochastic ranking: is a constraint handling method that can be used with any evolutionary optimisation algorithms T. P. Runarsson and X. Yao, “Stochastic Ranking for Constrained Evolutionary Optimization,” IEEE Transactions on Evolutionary Computation, 4(3):284-294, September 2000. T. Runarsson and X. Yao, “Search Bias in Constrained Evolutionary Optimization,” IEEE Transactions on Systems, Man, and Cybernetics, Part C, 35(2):233-243, May 2005. Impact It’s used so often that people made it a C library so that everyone can use easily: Xinglai Ji 1 and Ying Xu 2, “libSRES: a C library for stochastic ranking evolution strategy for parameter estimation” Bioinformatics, 22(1):124-126, 2006. 1Computational Biology Institute, Oak Ridge National Laboratory Oak Ridge, TN 37831, USA 2Department of Biochemistry and Molecular Biology and Institute of Bioinformatics, University of Georgia Athens, GA 30602-7229, USA Also in civil, mechanical, electrical and electronic engineering. Real World Is Complex Real world is complex and changes all the time. E.g., customers make new orders or cancel existing orders all the time. How can I optimise my objectives? Case Study III: Dynamic Optimisation Gritter Routing Optimisation Problem: - - - - Multiple trucks, multiple depots, different capacities Routing constraints Dynamic H. Handa, L. Chapman and Xin Yao, ``Robust route optimisation for gritting/salting trucks: A CERCIA experience,'' IEEE Computational Intelligence Magazine, 1(1):6-9, February 2006. Optimised Routing Case Study IV: Multi-objective Optimisation Patented Multi-objective Design Patent: X. Yao and T. Schnier, “HARDWARE DESIGN USING EVOLUTION ALGORITHMS,” European Patent EP1388123. Held by Ericsson (formerly Marconi). Papers: T. Schnier, X. Yao and P. Liu, “Digital filter design using multiple pareto fronts,” Soft Computing, 8(5): 332-343, April 2004. S. Salcedo-Sanz, F. Cruz-Rold\'an, C. Heneghan and X. Yao, “Evolutionary Design of Digital Filters with Application to Sub-band Coding and Data Transmission,” IEEE Transactions on Signal Processing, 55(4):1193-1203, April 2007. Not Just Hardware Engineering K. Praditwong, M. Harman and X. Yao, “Software Module Clustering as a MultiObjective Search Problem,” IEEE Transactions on Software Engineering, accepted in August 2009. Z. Wang, K. Tang and X. Yao, “Multi-objective Approaches to Optimal Testing Resource Allocation in Modular Software Systems,” IEEE Transactions on Reliability, 59(3):563-575, September 2010. Outline Adaptive Optimisation Data Mining and Machine Learning Supervised Learning Given a set of historical data, we want to build (learn) the best model that can predict the future for new input data. Challenges: Noise Concept drift over time Multi-objectives (cheap and high-quality) … Links Between EC and Learning Use the whole population as a learner: X. Yao and Y. Liu, “Making use of population information in evolutionary artificial neural networks,” IEEE Trans. on Systems, Man, and Cybernetics, Part B: Cybernetics, 28(3):417-425, June 1998. Case Study V: Ensemble Learning Negative Correlation Learning Negative Correlation Learning is an ensemble learning algorithm: Paper: Y. Liu and X. Yao, ``Ensemble learning via negative correlation,'' Neural Networks, 12(10): 1399-1404, December 1999. Patent: Xin Yao, Gavin Brown, Bernhard Sendhoff and Heiko Wersing, “Exploiting ensemble diversity for automatic feature extraction,” European Patent EP1378855. (Held by Honda). Multi-objective Learning Learning with multi-objectives: H. Chen and X. Yao, ``Multiobjective Neural Network Ensembles based on Regularized Negative Correlation Learning,'' IEEE Transactions on Knowledge and Data Engineering, 22(12):1738-1751, December 2010. A. Chandra and X. Yao, “Ensemble learning using multi-objective evolutionary algorithms,” Journal of Mathematical Modelling and Algorithms, 5(4): 417-445, December 2006. Case Study VI: Online Learning with Concept Drift We Are Getting New Data All the Time … L. L. Minku, A. White and X. Yao, ``The Impact of Diversity on On-line Ensemble Learning in the Presence of Concept Drift,'' IEEE Transactions on Knowledge and Data Engineering, 22(5):730-742, May 2010. F. L. Minku, H. Inoue and X. Yao, ``Negative correlation in incremental learning,'' Natural Computing, 8(2):289-320, June 2009. Many Other Applications What I have described here are a tiny set of applications that we have done or are doing. http://www.cercia.ac.uk Only Applications? Basque Center for Applied Mathematics Some Mathematical Challenges Why, when and how do evolutionary algorithms work? How does an evolutionary algorithm scale? What is the relationship between the computation time and the problem size? Computational Time Complexity Analysis T. Chen, K. Tang, G. Chen and X. Yao, ``Analysis of Computational Time of Simple Estimation of Distribution Algorithms,'' IEEE Transactions on Evolutionary Computation, 14(1):1-22, February 2010. T. Chen, J. He, G. Chen and X. Yao, ``Choosing Selection Pressure for Wide-gap Problems,'' Theoretical Computer Science, 411(6):926-934, February 2010. T. Chen, J. He, G. Sun, G. Chen and X. Yao, ``A New Approach to Analyzing Average Time Complexity of Population-based Evolutionary Algorithms on Unimodal Problems,'' IEEE Transactions on Systems, Man, and Cybernetics: Part B, 39(5):1092-1106, October 2009. Complexity Analysis in One Slide Model an EA using a stochastic process, e.g., a supermartingal, where each state in the space is a population. Use drift analysis to bound the computation time of finding the global optimum J. He and X. Yao, ``Towards an analytic framework for analysing the computation time of evolutionary algorithms,'' Artificial Intelligence, 145(1-2):59-97, April 2003. J. He and X. Yao, ``Drift Analysis and Average Time Complexity of Evolutionary Algorithms,'' Artificial Intelligence, 127(1):57-85, March 2001. Drift Analysis as a General Framework Define a distance function d(x) to measure the distance between a population x and the optimal solution. Estimate the one-step mean drift of population ξ (t) towards the optimal solution: E [ d(ξ(t) - ξ(t+1)) ] Derive some properties of the sequence, e.g., the first hitting time, convergence, convergence rate, etc., through the mean drift. For example, FirstHittingTime = InitialDistance/OneStepDrift Occasional Surprises Large populations might not help! J. He and X. Yao, ``From an Individual to a Population: An Analysis of the First Hitting Time of Population-Based Evolutionary Algorithms,'' IEEE Transactions on Evolutionary Computation, 6(5):495-511, October 2002. T. Chen, K. Tang, G. Chen and X. Yao, “A Large Population Size Can Be Unhelpful in Evolutionary Algorithms,” Theoretical Computer Science, accepted on 8/2/2011. Conclusions Evolutionary computation has both interesting applications and challenging theories. If you have things you want to improve, there might be opportunities for optimisation. If you have lots of data and are unsure of what to do, there might be opportunities for ML/DM.