Interval Constraints

Interval constraints is a new approach to solving numerical problems.

Why?

Why interval constraints? We are concerned with a problem so old that we are so used to it that hardly anybody still sees it as a problem. Namely this: numerical problems are not solved in any well-defined sense by computer.

Every numerical analyst can tell you many examples where the computed result is nowhere near the solution. Computers are used for numerical computation because such situations are rare. But in such a rare case, the result looks just as trustworthy as they usually do: there is no warning. (Experts can tease out warnings, but not always.)

That is one problem. The other problem is that conventional numerical analysis can only find local minima in optimization problems. In problems with an unknown and possibly large number of local minima it is not known how the local minima that are found relate to the global minimum.

The first step towards a solution to the problems of conventional numerical computation is interval arithmetic . This approach is especially interesting for global optimization .

What?

What do we mean by interval constraints? In interval arithmetic one finds a sound way of evaluating expressions. There is more to numerical computation than evaluating expressions. For example, solving equations. With interval constraints one tackles a generalization of systems of equations in the same sound way. This suggests more generally sound numerics .

The equality in an equation is only one of several useful constraints. The numerical variables in an equation are only one type of useful variable: variables can be integer, boolean, or range over other domains. Thus, systems of equations are generalized to constraint systems .

In the special case where the variables are numeric, the sets of their possible values are given by intervals. In that case the constraints include equality, less-than-or-equal, and various arithmetic constraints. Then we have interval constraints .

How?

How does one solve interval constraints systems? Several programs exist. Here are the ones I know about. The above are all proprietary. Tim Hickey has a version of Prolog that serves as front end to an interval constraint system.

Constraint processing offers new opportunities for massive parallelism.

The role of Open Source

At the moment I only know of Tim Hickey's interval constraint software at SourceForge. It is worth keeping an eye on IBM's COmputational INfrastructure for Operations Research (COINS) project for an open source framework for optimization, even though at the moment it does need seem to have anything based on interval constraints. Its DFO (Derivative-Free Optimization) project aims at the same class of problems as interval constraints. The answer to one of its FAQs sums up the limitations very nicely:

Q: Will DFO find me a global minimum?
A: Maybe, but the algorithm is designed only to find local minima. In any case the user should run it from a variety of starting points. Because of the general approach the method has a tendency not to converge to "poor" local optima.

Exactly. To get a lower bound for the global minimum, when derivatives are not available, one needs interval methods.

When?

A historical note.

Who?

Frederic Benhamou ... Frederic Goualard ... Luc Jaulin ... Tim Hickey

Where?

(To be added.)

Modified December 26, 2002

Home Page