METSlib is an object-oriented metaheuristics framework in C++ designed to make implementing or adapting models easy. The model is modular: all the implemented search algorithms can be applied to the same model. METSlib implements the basics of some metaheuristics algorithms, such as Random Restart Local Search, Variable Neighborhood Search, Iterated Local Search, Simulated Annealing, and Tabu Search. For each algorithm, you must implement an objective function, a neighborhood (move manager), and some moves. Tabu Search is one of the fastest ways to generate near-optimal solutions to a wide range of hard combinatorial optimization problems.
|Tags||Scientific/Engineering Artificial Intelligence Software Development Libraries Scheduling|
|Licenses||GPL GPLv2 GPLv3 Common Public|
|Operating Systems||Mac OS X OS Independent POSIX BSD Linux Cygwin|
Release Notes: This release fixes many bugs.
Release Notes: This version breaks compatibility with version 0.4.x, but migration should not be too hard. The apply/unapply move mechanism has been replaced by a more natural evaluate/apply. complex_moves are no longer possible, but search performance can be improved for a wide range of problems. Other changes include the introduction of a permutation problem base class that can be used to easily model QAP, TSP, and a wide range of assignment problems.
Release Notes: This release replaces the mets::feasible_solution assignment operator with a virtual copy_from method that improves copy operations. The autoconf and config.h system have been improved. The library and the examples can now build successfully on Ubuntu 8.04 and 9.04, Debian Lenny, OpenSolaris 2009.06, Windows/Cygwin 1.7beta, and Visual C++ Express 2008. Most Linux distributions should build with no problems.
Release Notes: This version fixes a nasty bug in the simple_tabu_list implementation and adds a new QAP sample.
No changes have been submitted for this release.