Section: Research Program
Interval analysis
We are interested in real-valued system solving
(
Solutions are searched within a finite domain (called a box) which may be either continuous or mixed (i.e. for which some variables must belong to a continuous range while other variables may only have values within a discrete set). An important point is that we aim at finding all the solutions within the domain whenever the computer arithmetic will allow it: in other words we are looking for certified solutions. For example, for 0-dimensional system solving, we will provide a box that contains one, and only one, solution together with a numerical approximation of this solution. This solution may further be refined at will using multi-precision.
The core of our methods is the use of interval analysis that
allows one to manipulate mathematical expressions whose unknowns have interval
values. A basic component of interval analysis is the interval
evaluation of an expression. Given an analytical expression
In other words the interval evaluation provides a lower bound of the
minimum of
For example if
The interval evaluation of an expression has interesting properties:
-
it can be implemented in such a way that the results are guaranteed with respect to round-off errors i.e. property 1 is still valid in spite of numerical errors induced by the use of floating point numbers
-
if
or , then no values of the unknowns in their respective ranges can cancel -
if
( ), then is positive (negative) for any value of the unknowns in their respective ranges
A major drawback of the interval evaluation is that
Fortunately there are methods that allow one to reduce the
overestimation and the overestimation amount decreases with the width of
the ranges. The latter remark leads to the use of a branch-and-bound
strategy in which for a given box a variable range will be bisected,
thereby creating two new boxes that are stored in a list and
processed later
on. The algorithm is complete if all boxes in the list
have been processed, or if during the process a box generates an answer
to the problem at hand (e.g. if we want to prove that
A generic interval analysis algorithm involves the following steps on the current box [1] , [8] , [5] :
-
exclusion operators: these operators determine that there is no solution to the problem within a given box. An important issue here is the extensive and smart use of the monotonicity of the functions
-
filters: these operators may reduce the size of the box i.e. decrease the width of the allowed ranges for the variables
-
existence operators: they allow one to determine the existence of a unique solution within a given box and are usually associated with a numerical scheme that allows for the computation of this solution in a safe way
-
bisection: choose one of the variable and bisect its range for creating two new boxes
The scope of the HEPHAISTOS project is to address all these steps in order to find the most efficient procedures. Our efforts focus on mathematical developments (adapting classical theorems to interval analysis, proving interval analysis theorems), the use of symbolic computation and formal proofs (a symbolic pre-processing allows one to automatically adapt the solver to the structure of the problem), software implementation and experimental tests (for validation purposes).
Important note: We have insisted on interval analysis because this is a major componant or our robotics activity. Our theoretical work in robotics is an analysis of the robotic environment in order to exhibit proofs on the behavior of the system that may be qualitative (e.g. the proof that a cable-driven parallel robot with more than 6 non-deformable cables will have at most 6 cables under tension simultaneously) or quantitative. In the quantitative case as we are dealing with realistic and not toy examples (including our own prototypes that are developed whenever no equivalent hardware is available or to very our assumptions) we have to manage problems that are so complex that analytical solutions are probably out of reach (e.g. the direct kinematics of parallel robots) and we have to resort to algorithms and numerical analysis. We are aware of different approaches in numerical analysis (e.g. some team members were previously involved in teams devoted to computational geometry and algebraic geometry) but interval analysis provides us another approach with high flexibility, the possibility of managing non algebraic problems (e.g. the kinematics of cable-driven parallel robots with sagging cables, that involves inverse hyperbolic functions) and to address various types of issues (system solving, optimization, proof of existence ...).