Project : coprin
Section: New Results
Linearisation and global filtering for numerical constraint systems
Keywords : safe linearisations, constraint programming, interval analysis, numerical robustness, systems solving, constraint satisfaction problems (CSP).
The purpose of our research is to introduce and to study a new branch and bound algorithm called QuadSolver. The essential feature of this algorithm is a global constraint (called Quad) that works on a tight and safe linear relaxation of the polynomial relations of the constraint systems. More precisely, QuadSolver is a branch and prune algorithm that combines Quad, local consistencies and interval methods .
QuadSolver has been evaluated on a variety of benchmarks from kinematics, mechanics and robotics. On these benchmarks, it outperforms classical interval methods as well as CSP solvers and it compares well with state-of-the-art optimization solvers.
The relaxation of nonlinear terms is adapted from the classical the ``Reformulation-Linearisation Technique (RLT)'' linearisation method. The simplex algorithm is used to narrow the domain of each variable with respect to the subset of the linear set of constraints generated by the relaxation process. The coefficients of these linear constraints are updated with the new values of the bounds of the domains and the process is restarted until no more significant reduction can be done. We have demonstrated that the Quad algorithm yields a more effective pruning of the domains than local consistency filtering algorithms (e.g., 2B-consistency or box-consistency). Indeed, the drawback of classical local consistencies comes from the fact that the constraints are handled independently and in a blind way. For example, when dealing with quadratic constraints, classical local consistencies do not exploit the semantic of quadratic term; for reducing the domains of the variables. Conversely, linear programming techniques do capture most of the semantics of nonlinear terms (e.g., convex and concave envelopes of these particular terms). The extension of Quad for handling any polynomial constraint system requires to replace non-quadratic terms by new variables and to add the corresponding identities to the initial constraint system. However, a complete quadrification would generate a huge number of linear constraints. We have introduced a heuristics based on a good trade-off between a tight approximation of the non linear terms and the size of the generated constraint system.
A safe rounding process is a key issue for the Quad framework. The simplex algorithm is used to narrow the domain of each variable with respect to the subset of the linear set of constraints generated by the relaxation process but most implementations of the simplex algorithm are numerically unsafe. Moreover, the coefficients of the generated linear constraints are computed with floating point numbers. So, two problems may occur in the Quad-filtering process:
the whole linearisation may become incorrect due to rounding errors when computing the coefficients of the generated linear constraints ;
some solutions may be lost when computing the bounds of the domains of the variables with the simplex algorithm.
We propose a safe procedure for computing the coefficients of the generated linear constraints. The second problem has recently been addressed by Neumaier and Shcherbina  which have proposed a simple and cheap procedure to get a rigorous upper bound of the objective function. The incorporation of these procedures in the Quad-filtering process allows us to call the simplex algorithm without worrying about possible lost solutions due to numerical round-off errors.
A global filtering for solving distance constraints
Keywords : distance equations, local constraints, semantic properties.
Most of the methods for solving constraints on variables with interval domains are based on a branch and prune technique; basically a combination of local consistencies and bisection. We propose a global pruning method and a strategy for splitting the domains of the variables :
In , we have introduced a global filtering algorithm for handling systems of distance relations. This new method, named QuadDist is derived from Quad, a global filtering algorithm for handling systems of quadratic equations and inequalities. Quad computes a tight linear relaxation of the terms of the quadratic equations and uses the simplex algorithm to reduce the domains of the variables. We propose a new linear approximation for handling distance relations. The key point of this new method is that the approximations are not generated for each quadratic terms but for each distance constraint. Thus, QuadDist defines a tighter approximation than Quad without the need to generate any additional variables. Experimental results are very promising.
In , we proposed a strategy, named SDD (Semantic Domain Decomposition), for choosing splitting points in the domains of the variables. These choices are defined by the monotonicity and convexity properties of the distance constraints and by the topology of the local solution spaces. Experimental results show that this heuristic improves the performances of the classical branching algorithm.