The irace Package: Iterated Race for Automatic Algorithm Configuration

CRAN Status CRAN Downloads


The irace package implements the iterated racing procedure, which is an extension of the Iterated F-race procedure. Its main purpose is to automatically configure optimization algorithms by finding the most appropriate settings given a set of instances of an optimization problem. It builds upon the race package by Birattari and it is implemented in R.

Keywords: automatic configuration, offline tuning, parameter tuning, racing, F-race.

Relevant literature:

Manuel López-Ibáñez, Jérémie Dubois-Lacoste, Leslie Pérez Cáceres, Thomas Stützle, and Mauro Birattari. The irace package: Iterated Racing for Automatic Algorithm Configuration. Operations Research Perspectives, 3:43–58, 2016.
[ bibtex | doi: 10.1016/j.orp.2016.09.002 ]
Manuel López-Ibáñez, Jérémie Dubois-Lacoste, Thomas Stützle, and Mauro Birattari. The irace package, Iterated Race for Automatic Algorithm Configuration. Technical Report TR/IRIDIA/2011-004, IRIDIA, Université libre de Bruxelles, Belgium, 2011.
[ bibtex | PDF ]
Manuel López-Ibáñez. The irace software package: A tutorial. COMEX Workshop on Practical Automatic Algorithm Configuration, 2014.
[ workshop webpage | PDF ]


Maintainers: Manuel López-Ibáñez and Leslie Pérez Cáceres.

Contributors: Jérémie Dubois-Lacoste, Thomas Stützle, Mauro Birattari, Eric Yuan and Prasanna Balaprakash.


This software is Copyright (C) 2011-2016 Manuel López-Ibáñez and Jérémie Dubois-Lacoste.

This program is free software (software libre); you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

IMPORTANT NOTE: Please be aware that the fact that this program is released as Free Software does not excuse you from scientific propriety, which obligates you to give appropriate credit! If you write a scientific paper describing research that made substantive use of this program, it is your obligation as a scientist to (a) mention the fashion in which this software was used in the Methods section; (b) mention the algorithm in the References section. The appropriate citation is:

Moreover, as a personal note, we would appreciate if you would email with citations of papers referencing this work.

The race package is Copyright (C) 2003 Mauro Birattari, used under the GPL.


Scenario Training instances Testing instances Comments
ACOTSP 200 random euclidean TSP instances (2000 cities) 200 random euclidean TSP instances (2000 cities) This scenario requires to download and compile the ACOTSP software.
The irace configuration files required to set up this tuning scenario are included in the package sources at inst/examples/acotsp/. Once the package is installed, the files can be found by invoking file.path(system.file(package="irace"), "examples","acotsp") within R.


NOTE: After installation, the package can be used from within R or as a command-line tool. See the README file for more information.

The software is provided as an R package available from CRAN. This means that it can be installed by invoking R:

   $ R
   > install.packages("irace")

Or it can also be installed by downloading the package and invoking at the command-line:

   $ R CMD INSTALL <package>

where <package> is one of the three versions available: .tar.gz (Unix/BSD/GNU/Linux), .tgz (MacOS X), or .zip (Windows).

See the README file in case you have troubles.

[ README ] [ Download irace package from CRAN ] [ User Guide (PDF) ]


For any question or suggestion please contact us in the irace package google group.