3,341 research outputs found
Evolutionary algorithm-based analysis of gravitational microlensing lightcurves
A new algorithm developed to perform autonomous fitting of gravitational
microlensing lightcurves is presented. The new algorithm is conceptually
simple, versatile and robust, and parallelises trivially; it combines features
of extant evolutionary algorithms with some novel ones, and fares well on the
problem of fitting binary-lens microlensing lightcurves, as well as on a number
of other difficult optimisation problems. Success rates in excess of 90% are
achieved when fitting synthetic though noisy binary-lens lightcurves, allowing
no more than 20 minutes per fit on a desktop computer; this success rate is
shown to compare very favourably with that of both a conventional (iterated
simplex) algorithm, and a more state-of-the-art, artificial neural
network-based approach. As such, this work provides proof of concept for the
use of an evolutionary algorithm as the basis for real-time, autonomous
modelling of microlensing events. Further work is required to investigate how
the algorithm will fare when faced with more complex and realistic microlensing
modelling problems; it is, however, argued here that the use of parallel
computing platforms, such as inexpensive graphics processing units, should
allow fitting times to be constrained to under an hour, even when dealing with
complicated microlensing models. In any event, it is hoped that this work might
stimulate some interest in evolutionary algorithms, and that the algorithm
described here might prove useful for solving microlensing and/or more general
model-fitting problems.Comment: 14 pages, 3 figures; accepted for publication in MNRA
Algorithm Portfolio for Individual-based Surrogate-Assisted Evolutionary Algorithms
Surrogate-assisted evolutionary algorithms (SAEAs) are powerful optimisation
tools for computationally expensive problems (CEPs). However, a randomly
selected algorithm may fail in solving unknown problems due to no free lunch
theorems, and it will cause more computational resource if we re-run the
algorithm or try other algorithms to get a much solution, which is more serious
in CEPs. In this paper, we consider an algorithm portfolio for SAEAs to reduce
the risk of choosing an inappropriate algorithm for CEPs. We propose two
portfolio frameworks for very expensive problems in which the maximal number of
fitness evaluations is only 5 times of the problem's dimension. One framework
named Par-IBSAEA runs all algorithm candidates in parallel and a more
sophisticated framework named UCB-IBSAEA employs the Upper Confidence Bound
(UCB) policy from reinforcement learning to help select the most appropriate
algorithm at each iteration. An effective reward definition is proposed for the
UCB policy. We consider three state-of-the-art individual-based SAEAs on
different problems and compare them to the portfolios built from their
instances on several benchmark problems given limited computation budgets. Our
experimental studies demonstrate that our proposed portfolio frameworks
significantly outperform any single algorithm on the set of benchmark problems
Evolutionary improvement of programs
Most applications of genetic programming (GP) involve the creation of an entirely new function, program or expression to solve a specific problem. In this paper, we propose a new approach that applies GP to improve existing software by optimizing its non-functional properties such as execution time, memory usage, or power consumption. In general, satisfying non-functional requirements is a difficult task and often achieved in part by optimizing compilers. However, modern compilers are in general not always able to produce semantically equivalent alternatives that optimize non-functional properties, even if such alternatives are known to exist: this is usually due to the limited local nature of such optimizations. In this paper, we discuss how best to combine and extend the existing evolutionary methods of GP, multiobjective optimization, and coevolution in order to improve existing software. Given as input the implementation of a function, we attempt to evolve a semantically equivalent version, in this case optimized to reduce execution time subject to a given probability distribution of inputs. We demonstrate that our framework is able to produce non-obvious optimizations that compilers are not yet able to generate on eight example functions. We employ a coevolved population of test cases to encourage the preservation of the function's semantics. We exploit the original program both through seeding of the population in order to focus the search, and as an oracle for testing purposes. As well as discussing the issues that arise when attempting to improve software, we employ rigorous experimental method to provide interesting and practical insights to suggest how to address these issues
Half a billion simulations: evolutionary algorithms and distributed computing for calibrating the SimpopLocal geographical model
Multi-agent geographical models integrate very large numbers of spatial
interactions. In order to validate those models large amount of computing is
necessary for their simulation and calibration. Here a new data processing
chain including an automated calibration procedure is experimented on a
computational grid using evolutionary algorithms. This is applied for the first
time to a geographical model designed to simulate the evolution of an early
urban settlement system. The method enables us to reduce the computing time and
provides robust results. Using this method, we identify several parameter
settings that minimise three objective functions that quantify how closely the
model results match a reference pattern. As the values of each parameter in
different settings are very close, this estimation considerably reduces the
initial possible domain of variation of the parameters. The model is thus a
useful tool for further multiple applications on empirical historical
situations
A service oriented architecture for engineering design
Decision making in engineering design can be effectively addressed by using genetic algorithms to solve multi-objective problems. These multi-objective genetic algorithms
(MOGAs) are well suited to implementation in a Service Oriented Architecture. Often the evaluation process of the MOGA is compute-intensive due to the use of a complex computer model to represent the real-world system. The emerging paradigm of Grid Computing offers
a potential solution to the compute-intensive nature of this objective function evaluation, by
allowing access to large amounts of compute resources in a distributed manner. This paper presents a grid-enabled framework for multi-objective optimisation using genetic algorithms (MOGA-G) to aid decision making in engineering design
A Neuroevolutionary Approach to Stochastic Inventory Control in Multi-Echelon Systems
Stochastic inventory control in multi-echelon systems poses hard problems in optimisation under uncertainty. Stochastic programming can solve small instances optimally, and approximately solve larger instances via scenario reduction techniques, but it cannot handle arbitrary nonlinear constraints or other non-standard features. Simulation optimisation is an alternative approach that has recently been applied to such problems, using policies that require only a few decision variables to be determined. However, to find optimal or near-optimal solutions we must consider exponentially large scenario trees with a corresponding number of decision variables. We propose instead a neuroevolutionary approach: using an artificial neural network to compactly represent the scenario tree, and training the network by a simulation-based evolutionary algorithm. We show experimentally that this method can quickly find high-quality plans using networks of a very simple form
- …