EN FR
EN FR


Section: Software

IBEX

Participants : Ignacio Araya, Anthony Baire, Gilles Chabert [correspondant] , Rémi Douence, Bertrand Neveu, Gilles Trombettoni.

IBEX (Interval-Based EXplorer) is a C++ library for solving nonlinear constraints over real numbers (25000 lines of source code). The main feature of Ibex is its ability to build solver/paver strategies declaratively through the contractor programming paradigm.

Continuing last year work on the redesign of the architecture of IBEX , the IBEX library has been entirely re-factored from scratch to provide a more clean and easy-to-use interface as well as a more powerful engine.The development started in late 2011, the kernel has been completed in mid-2012 and almost all the functionalities of IBEX integrated in the new architecture. Global optimization and system solving front-end algorithms have been tested on more than 500 benchmarks. Installation scripts for a deployment on multiple platforms have also been done by an engineer of Inria (Anthony Baire). A first web site has been activated, with an on-line installation documentation, a programming tutorial (still under writing), and an API. An alpha release is now available for download. A first training course on IBEX 2.0 has been organized at ENSTA Bretagne , Brest, the 17-18th December with about 25 participants. Similar training courses will also occur in 2013.

An explorative study aimed at showing that the explicit representation of search trees can play a distinguished role in the field of numerical constraints was done this year. The idea was also to define a new high-level language to handle explicit search trees, in the fashion of quadtrees (that one can intersects, etc.). We have developed a prototype in Haskell to validate the approach and have illustrated it over different examples.