GTOPX - Space Mission Benchmarks

 

Here you can download some real-world interplanetary space mission trajectory design benchmark problems. The GTOPX library is an extension of the well-known but no longer maintained GTOP database published in 2005 by ESA (European Space Agency). GTOPX consists of ten benchmark instances, whereas the last three (Cassini1-MINLP, Cassini1-MO and Cassini1-MO-MINLP) are newly introduced, featuring mixed-integer and multi-objective properties. All problem objective functions are to be minimized, all constraints are feasible if greater or equal to zero. Lower and upper bounds for the search space of each problem are defined in the below main file. Note that the GTOPX problems are generally considered to be  difficult  to solve, with possible exception of the Cassini1 and Sagas instances, which are rather easy to medium. Therefore researchers should not be discouraged if struggling to solve these benchmarks. Instead, the GTOPX library aims at senior researchers wishing to put advanced algorithms to the test. A paper describing the benchmarks is available here.

 

 GTOPX Benchmarks

No. Benchmark Name Ref Objectives Variables Constraints Solution  f(x)

Landscape

Analysis

1 Cassini1 NASA 1 6  4 4.9307
2 Cassini2 Wiki 1  22  0 8.3830
3 Messenger (reduced) NASA 1  18  0 8.6299
4 Messenger (full) Wiki 1  26  0 1.9579
5 GTOC1 Turin 1  8  6 -1581950.0
6 Rosetta ESA 1  22  0  1.3433
7 Sagas ESA 1  12  2  18.1877
8 Cassini1-MINLP Paper 1  10  4 3.5007
9 Cassini1-MO Paper 2  6  5

paretofront.txt

na

10 Cassini1-MO-MINLP Paper 2  10  5

paretofront.txt

na

 

GTOPX source code / library

C main.c gtopx.cpp makefile
C++ main.cpp

gtopx.cpp

makefile

 

Python

 

main.py.txt

 

gtopx.dll   ( Windows 32bit )

gtopx.dll   ( Windows 64bit )

gtopx.so   ( Linux 32bit )

gtopx.so   ( Linux 64bit )

gtopx.so   ( Mac 32bit )

gtopx.so   ( Mac 64bit )

 

Matlab

main.m

gtopxmex.cpp

 

GTOPX is published under a GPL license

 

 

Usage Instruction

 

C/C++

 

Step 1 Download main and gtopx source code file
Step 2 Compile and execute (e.g. using the makefile)
Note

The gtopx.cpp file differs for C and C++ usage, as for C usage

the gtopx.cpp includes an  extern "C"  statement in Line 555

 

Python

 

Step 1 Download main file together with gtopx library file
Step 2 Remove ".txt" name extension from main.py file
Step 3 Execute by entering command "python main"
Note

Linux and Mac users might need to have g++ installed

to match dependencies of the gtopx.so library

 

Matlab

 

Step 1 Download main file together with gtopxmex.cpp file
Step 2 Open Matlab and set the  Current Directory  to the above files
Step 3

Execute  "mex gtopxmex.cpp"  in the Command Window,

this command will create a mex library file on your system.

Step 4 Run the main program (e.g. type "main" and press Enter)
Note The mex command needs to be performed only once.

 

MIDACO Record Solutions

MIDACO holds the best known record solutions on the Cassini2, GTOC1 and Messenger (full) benchmarks. Note that the Messenger (full) benchmark is considered the most difficult instance and it's putative global solution required well  over 5 years  to be reached (see paper for details).

 

Publications

Author(s) Title Journal / Reference

File

Schlueter M. Mehdi N., Mohamed W., Masaharu M., Wagner M. GTOPX Space Mission Benchmarks

SoftwareX (Elsevier), Volume 14 (2021)

https://doi.org/10.1016/j.softx.2021.100666

Paper

Schlueter M. MIDACO Software Performance on Interplanetary Trajectory Benchmarks Advances in Space Research (Elsevier), Vol 54, Issue 4, Pages 744 - 754 (2014)

Preprint

Schlueter M., Munetomo M. A Mixed-Integer Extension for ESA's Cassini1 Space Mission Benchmark

Proceedings of the IEEE Congress on Evolutionary Computation (CEC2019), Wellington, New Zealand, Jun 10-13, DOI: 10.1109/CEC.2019.8790045 (2019)

Preprint
Schlueter M., Wahib M., Munetomo M. New state-of-the-art results on ESA’s Messenger Space Mission Benchmark
Advances in Parallel & Distributed Processing, and Applications, Pages 669-681 (Springer) 2021 Preprint

 

See  here  for more publications.