A Global Optimisation Toolbox for Massively Parallel Engineering Optimisation

Reading time: 6 minute
...

📝 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.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut