📝 Original Info
- Title: A Global Optimisation Toolbox for Massively Parallel Engineering Optimisation
- ArXiv ID: 1004.3824
- Date: 2010-04-23
- Authors: Researchers from original ArXiv paper
📝 Abstract
A software platform for global optimisation, called PaGMO, has been developed within the Advanced Concepts Team (ACT) at the European Space Agency, and was recently released as an open-source project. PaGMO is built to tackle high-dimensional global optimisation problems, and it has been successfully used to find solutions to real-life engineering problems among which the preliminary design of interplanetary spacecraft trajectories - both chemical (including multiple flybys and deep-space maneuvers) and low-thrust (limited, at the moment, to single phase trajectories), the inverse design of nano-structured radiators and the design of non-reactive controllers for planetary rovers. Featuring an arsenal of global and local optimisation algorithms (including genetic algorithms, differential evolution, simulated annealing, particle swarm optimisation, compass search, improved harmony search, and various interfaces to libraries for local optimisation such as SNOPT, IPOPT, GSL and NLopt), PaGMO is at its core a C++ library which employs an object-oriented architecture providing a clean and easily-extensible optimisation framework. Adoption of multi-threaded programming ensures the efficient exploitation of modern multi-core architectures and allows for a straightforward implementation of the island model paradigm, in which multiple populations of candidate solutions asynchronously exchange information in order to speed-up and improve the optimisation process. In addition to the C++ interface, PaGMO's capabilities are exposed to the high-level language Python, so that it is possible to easily use PaGMO in an interactive session and take advantage of the numerous scientific Python libraries available.
💡 Deep Analysis
Deep Dive into A Global Optimisation Toolbox for Massively Parallel Engineering Optimisation.
A software platform for global optimisation, called PaGMO, has been developed within the Advanced Concepts Team (ACT) at the European Space Agency, and was recently released as an open-source project. PaGMO is built to tackle high-dimensional global optimisation problems, and it has been successfully used to find solutions to real-life engineering problems among which the preliminary design of interplanetary spacecraft trajectories - both chemical (including multiple flybys and deep-space maneuvers) and low-thrust (limited, at the moment, to single phase trajectories), the inverse design of nano-structured radiators and the design of non-reactive controllers for planetary rovers. Featuring an arsenal of global and local optimisation algorithms (including genetic algorithms, differential evolution, simulated annealing, particle swarm optimisation, compass search, improved harmony search, and various interfaces to libraries for local optimisation such as SNOPT, IPOPT, GSL and NLopt), PaG
📄 Full Content
A Global Optimisation Toolbox for Massively Parallel Engineering
Optimisation
Francesco Biscani∗, Dario Izzo†, and Chit Hong Yam‡
European Space Agency – Advanced Concepts Team
European Space Research and Technology Centre (ESTEC)
October 22, 2018
Abstract
A software platform for global optimisation,
called PaGMO, has been developed within the Ad-
vanced Concepts Team (ACT) at the European
Space Agency, and was recently released as an
open-source project.
PaGMO is built to tackle high-dimensional
global optimisation problems, and it has been suc-
cessfully used to find solutions to real-life engi-
neering problems among which the preliminary de-
sign of interplanetary spacecraft trajectories - both
chemical (including multiple flybys and deep-space
maneuvers) and low-thrust (limited, at the mo-
ment, to single phase trajectories), the inverse de-
sign of nano-structured radiators and the design of
non-reactive controllers for planetary rovers.
Featuring an arsenal of global and local opti-
misation algorithms (including genetic algorithms,
differential evolution, simulated annealing, parti-
cle swarm optimisation, compass search, improved
harmony search, and various interfaces to libraries
for local optimisation such as SNOPT, IPOPT,
GSL and NLopt), PaGMO is at its core a C++
library which employs an object-oriented architec-
ture providing a clean and easily-extensible opti-
misation framework. Adoption of multi-threaded
programming ensures the efficient exploitation of
modern multi-core architectures and allows for
a straightforward implementation of the island
∗bluescarni@gmail.com
†dario.izzo@esa.int
‡chit.hong.yam@esa.int
model paradigm, in which multiple populations of
candidate solutions asynchronously exchange infor-
mation in order to speed-up and improve the op-
timisation process.
In addition to the C++ in-
terface, PaGMO’s capabilities are exposed to the
high-level language Python, so that it is possible
to easily use PaGMO in an interactive session and
take advantage of the numerous scientific Python
libraries available.
1
Introduction
With the introduction of mass-produced multi-core ar-
chitectures, personal computers are becoming increas-
ingly capable of performing parallel computations. Yet,
the effort to parallelize algorithms is time consuming
and often not attractive, especially in scientific com-
puting where software reuse is not as spread a prac-
tice as in other fields of computing.
The open-source
project PaGMO, (Parallel Global Multiobjective Op-
timiser), aims at filling this gap for optimisation al-
gorithms providing, through a generalization of the so
called island model (i.e. a coarse grained approach to
parallelization of genetic algorithms) to all types of algo-
rithms (population based and not), a simple experiment-
ing platform that allows scientists to easily code algo-
rithms and problems without having to care at all about
the underlying parallelization that is provided ‘for free’
by the PaGMO infrastructure . The resulting software
platform, participating to the Google initiative Summer
1
arXiv:1004.3824v1 [cs.DC] 22 Apr 2010
of Code 2010, is described in this paper together with
application examples to real life engineering problems of
interest to aerospace engineers.
Recent results in global optimisation algorithms ap-
plied to the design of chemically-propelled interplane-
tary trajectories have shown how a straightforward ap-
plication of off-the-shelf optimisation algorithms does
not suffice to find satisfactory solutions for the most
complex cases such as the Messenger trajectory or the
Cassini or the TandEM trajectory [15].
While a wise
use of the algorithms still provides useful information
also in these most complex cases, the final optimal so-
lutions need a substantial amount of engineering knowl-
edge to be found. In this paper we show how the use of
PaGMO allows different algorithms to cooperate to the
solution of the same interplanetary trajectory problem,
allowing to find solutions also in the most difficult cases
in a reasonable time. In particular, we demonstrate a
fully automated search of the solution space based on
the use of Differential Evolution, Simulated Annealing
and local search in a cooperative fashion. Information
is exchanged asynchronously between the solvers oper-
ating in parallel CPUs via the implementation of a gen-
eralized migration operator offered by PaGMO. We test
this search strategy in the case of the Cassini, TandEM
and Messenger trajectories as defined in the European
Space Agency Global Trajectory optimisation Problems
database (GTOP) [17, 44]. We show that the algorithms
are able to locate interesting regions of the search space
and in particular to find the possible resonances.
In
the case of TandEM and Cassini, an automatic pruning
strategy is able to successfully identify the best known
solutions.
In the case of Messenger, the automated
search locates a large number of possible solution clus-
ters (due to the possible resonances at Mercury)
…(Full text truncated)…
Reference
This content is AI-processed based on ArXiv data.