MIDACO - A Fortran Implementation of an Ant Colony Optimization Algorithm
for General Optimization
Version 2.0 (2011)
Purpose:
MIDACO is a black-box optimizer, specially developed for mixed integer
nonlinear programs (MINLPs). As the class of MINLPs covers purely continuous
and purely combinatorial optimization problems, MIDACO can be employed on a
wide range of optimization problems. Its usage is particularly intended for
global optimization problems, where the problem formulation is unknown (true
black-box) or invokes critical properties like non-convexity,
discontinuities, flat spots or stochastic distortions.
Numerical Method:
The underlying algorithm is based on a stochastic Gauss
approximation technique (also known as Ant Colony Optimization) and its
combination with the oracle penalty method. It's development was focused
especially on constrained mixed integer nonlinear programming (MINLP) problems,
but due to the generality of this problem class, the software is well applicable
on many different kind of optimization problems. MIDACO is constructed as a
derivative free black-box solver, handling all its parameter by itself.
Program Organization:
Originally, MIDACO is a double precision Fortran subroutine where all
parameters are passed through subroutine arguments. Problem functions
and gradients must be provided by the user by reverse communication.
Special Features:
reverse communication
full documentation
Matlab, Fortran,
C/C++ versions available
features massive
parallelization options for various computer architectures like multicore
CPUs, HPC or GPU (CUDA, FERMI)
selects all
parameters by autopilot mode, which also includes automatic internal
restarts to escape from local solutions or to refine the solution quality
Applications:
MIDACO has been used for
example on various space applications (interplanetary missions, vehicel
launch maneuvers, heat shield protection systems) and distillation column
sequencing.
Reference:
M. Schlueter, M. Gerdts,
The oracle penalty method, Journal of Global Optimization, Vol. 47, 293-325 (2010)