COPRIN is a joint project between Certis (École des Ponts et Chaussées) and INRIA.
COPRIN is a joint project between Certis (École des Ponts et Chaussées) and INRIA. Until January 1st, 2006 COPRIN was also a joint project with I3S (UNSA) but one of the project members, M. Rueher, decided to leave COPRIN and to create a new team devoted to constraint programming at I3S. Although the scientific objectives and the application domains of the new team are rather different from those of COPRIN, I3S decided to withdraw from COPRIN (but apart of M. Rueher all the other UNSA staff members of COPRIN decided to remain in the project).
Its scientific objective is to develop and implement systems solving algorithms based on constraints propagation methods, interval analysis and symbolic computation, with interval arithmetic as the primary tool.
We are interested in real-valued system solving (
f(
X) = 0,
f(
X)
0), in optimization problems, and in the proof of the existence of properties
(for example it exists
Xsuch that
f(
X) = 0or it exists two values
X1,
X2such that
f(
X1)>0and
f(
X2)<0).
Solutions will be 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 to find all the solutions within the domain as soon as the computer arithmetic will allow it: in other words we are looking for certifiedsolutions. For example, for 0-dimensional system solving, we will provide a domain that includes one, and only one, solution together with a numerical approximation of this solution, that may further be refined at will using multi-precision.
Our research aims to develop algorithms that can be used for any problem or are specific to a given class of problem, especially problems that are issued from application domains for which we have an internal expertise (such as mechanism theory and software engineering).
Implementation of the algorithms will be performed within the framework of the generic software tool IcosAlias, currently under development, whose purpose is to allow one to design and test solving algorithms obtained as the combination of various software modules. IcosAliaswill be based on the already existing libraries ICOSand ALIAS, that are still being developed.
As a theoretical complexity analysis of the solving algorithms is usually extremely difficult, the efficiency of the algorithm will be experimentally evaluated through IcosAliasor ALIASon various realistic test examples.
Dissemination is also an essential component of our activity as interval analysis based methods are not sufficiently known in the engineering and academic communities.
The scientific objective of the COPRIN project is to develop and implement systems solving and optimization algorithms based on constraints propagation methods, interval analysis and symbolic computation, with interval arithmetic as the primary tool (hence solutions will be searched within a finite domain (called a box)) .
The results obtained with these algorithms are certified in the sense that no solution can be missed and that, for 0-dimensional system solving, solutions can be calculated with an arbitrary accuracy. Furthermore some of our algorithms will allow us to deal with systems involving uncertain coefficients.
A system will be constituted by a set of relations that may use all the usual mathematical operators and functions (hence we may deal, for example, with the relation
sin(
x+
y) + log(cos(
e
x) +
y
2)
0) and we are interested in
certified solutionsof real-valued system solving problems (
f(
X) = 0,
f(
X)
0), of optimization problems and in the proof of the existence of properties (for
example it exists
Xsuch that
f(
X) = 0or it exists two values
X1,
X2such that
f(
X1)>0and
f(
X2)<0).
Our approach is to develop various operators that will be applied in sequence on a box:
exclusion operators: these operators determine that there is no solution to the problem within a given box
contractors: 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 that there is a unique solution within a given box and are usually associated to a numerical scheme that enable to compute this solution in a safe way
If a given box is not rejected by the exclusion operators and is not modified by the other operators, then we will bisect one of the variables in order to create two new boxes that will be processed later on. Methods for choosing the bisected variable are also clearly within the scope of the project.
Our research aims to develop operators that can be used for any problem or are specific to a given class of problem, especially problems that are issued from application domains for which we have we have internally an expertise (such as mechanism theory and software engineering). Furthermore we will study symbolic computation based methods:
to develop an user-friendly interface that will automatically generate an executable program, run it, and return the result to the interface
to analyze the semantic and syntax of the relations involved in a problem, in order to generate automatically specific operators, or to obtain a better interval evaluation of the expressions (as the evaluation of an expression using interval arithmetic is very sensitive to the expression syntax)
to allow for the calculation of the solutions with an arbitrary accuracy. For this purpose two approaches are currently being used:
certified interval solutions are obtained through a compiled solving program and then a symbolic computation procedure will be used to calculate the solutions up to the desired accuracy
a multi-precision interval arithmetic package is used within a symbolic-numeric solving program and allows one to obtain the solutions with an arbitrary accuracy
The first approach is usually much faster than the second one (by a factor of approximately 1000 to 10000) but may fail to determine solutions if the system is numerically badly conditioned, while the second approach will always find the solutions.
While the methods developed in the project may be used for a very broad set of application domains (for example we have an activity in control theory and in quantum mechanics), it is clear that the size of the project does not allow all of them to be addressed. Hence we have decided to focus our applicative activities on mechanism theory(including robotics). In this domain our research focuses on optimal designand geometrical modeling of mechanisms, especially for the machine-tool industry, automotive suspensions, virtual reality and medical robotics, which all involve the management of geometric constraints. As other domains may exhibit equivalent problems as mechanism theory (e.g. molecular chemistry), they may also be addressed, without constituting a major research axis of the project.
Note that until 2006 we have also addressed problems related to uncertainty management in software engineering. Since the departure of M. Rueher this is no more a research activity for COPRIN.
Software is an essential part of the research within COPRIN as our researches may be only experimentally validated. Software developments are addressed along various axes:
interval arithmetic: although our purpose is not work in this very specialized area (we generally rely on existing packages) interval arithmetic is an important part of our interval analysis algorithms and we may have to extend the existing packages especially for dealing with multi-precision and arithmetic extensions
interval analysis libraries: we daily use two libraries that have been designed in the project and are still under development. A long term work is to develop a generic programming framework that allows for modularity and flexibility, with the objective of being able to test easily new functionalities and to build specific solvers by a simple juxtaposition of existing modules
interface to interval analysis: in our opinion interval analysis software must be available within general purpose scientific software (such as Maple, Mathematica, Scilab) and not only as a stand-alone tool. Indeed most end-users will be reluctant to learn a new programming language just to deal with solving problems that are only small elements of a more general problem context. Furthermore interval analysis efficiency may benefit from the functionalities available in the general purpose scientific software.
We propose an efficient C package to extend the interval arithmetic to generalized intervals. Together with the concept of modal intervals, this arithmetic allows one to use universally quantified variables where the classical interval arithmetic deals with only existential quantification. The structure of the code is similar and compatible with the well known BIAS/Profillibrary. This software has been used to solve a robot kinematic problem and appears to be efficient for determining an inner approximation of interval systems , , , see section .
The ALIASlibrary ( Algorithms Library of Interval Analysis for Systems) is a collection of procedures based on interval analysis for systems solving and optimization. Its development has started in 1998.
ALIASis constituted of two parts:
ALIAS-C++: the C++ library (96 000 code lines) which is the core of the algorithms
ALIAS-Maple: the Mapleinterface for ALIAS-C++(48 000 code lines). This interface allows one to specify a solving problem within Mapleand to get the results within the same Maplesession. The role of this interface is not only to generate automatically the C++ code, but also to perform an analysis of the problem in order to improve the efficiency of the solver. Furthermore, a distributed implementation of the algorithms is available directly within the interface.
Our effort this year has focused on linear algebra aspects:
improved calculation of the determinant of interval matrices (i.e. matrices whose elements have interval values)
calculation of the spectral radius of an interval matrix and of its characteristic polynomial
regularity test of interval matrices and of parametric interval matrices (see section ).
The current version of the ALIASlibrary is available through the Web page http://www-sop.inria.fr/coprin/logiciels/ALIAS.
The IcosAliassoftware is an interval-based constraint solver, that is being tested and used by different members of COPRIN. The purpose of this software is to offer a highly modular constraint solver platform allowing the rapid prototyping of new ideas, filters and solving strategies.
As mentioned in the introduction we believe that one of the major restrictions to the use of interval analysis in engineering is the lack of interface with classical scientific software. ALIAShas already an interface for Mapleand our aim is to provide a similar interface for Mathematicaand Scilab.
We are implementing a Mathematica interface to the ALIASlibrary, as well as a set of interval analysis algorithms.
We aim to provide to the community of Mathematica users a transparent access to the functionalities of ALIASfor extending the dissemination of our library. But our main goal is to get an high-level modular interface to ALIASfor prototyping, and testing easily and quickly new combinations of interval analysis algorithms, with the benefit of using a computational environment including an arbitrary precision interval arithmetic, and symbolic computation skills as well.
As it is already the case with the Maple interface for ALIAS-C++, this interface will also perform an analysis of the problem in order to improve the efficiency of the solver.
We have decided to provide an interval analysis interface to Scilabwith the support of INRIA, that has funded the Associated Engineer Raphaël Pereira for that purpose.
The purpose of this interface is first to to offer a simple syntax for using intervals as any other data types, and to allow to easily prototype interval-based algorithms. Then a Scilabtoolbox will be proposed that will include initially basic modules (interval arithmetics, linear algebra, polynomials) and ultimately most of COPRIN algorithms. The role of R. Pereira will be to develop a stable toolbox with the help of the project members, to provide a documentation and a support to the end-users.
The core of our activity in robotics and mechanism theory is the optimal design of mechanisms and the analysis of parallel robots , . We have addressed this year:
the certified solving of the direct kinematics of parallel robot with modeling uncertainties
the singularity analysis of parallel robots with modeling uncertainties
the worst-case accuracy analysis of parallel robots over a given workspace
the workspace analysis of wire-driven parallel robots
self-collision test for parallel robots.
This year we have also started the hardware development of our wire-driven parallel robot prototype that will constitute our experimental platform for the next 4 to 8 years.
We have designed a method that allows one to take into account the uncertainties due to measurement and manufacturing when solving the direct kinematics of a specific type of parallel robot, called the 3-2-1 . This method mixes an algebraic approach and constraint programming techniques designed specifically for distance equations (see section ). It has allowed us to certify the result of the measurement device CATRASYS(Cassino Tracking System) in the framework of an informal collaboration with Cassino University (Italy).
Singularity analysis is a recurrent research domain for the project. The purpose is to design algorithms allowing to determine if a given workspace for a parallel robot is singularity-free (we remind that in a singular pose the robot cannot be controlled and that the force/torque in its legs may go to infinity, leading to a breakdown of the robot). Checking for singularity amounts to determine if a matrix, the inverse Jacobian of the robot, may become singular at a pose within the workspace. In the past years we have already presented an interval analysis based algorithm that was able to perform this check as soon as an analytical form of the matrix determinant was available. But if uncertainties on the robot modeling are taken into account and are kept as unknowns in the matrix, then the determinant size increases drastically and symbolic tools are no more able to calculate it. Using our work on the regularity of parametric interval matrices (see section ) we have designed a very efficient singularity check algorithm that allows to certify that a given workspace is singularity-free even if there are large uncertainties in the robot modeling .
Errors
in the measurements of the sensors that are used to control a parallel robot result in errors
Xon the platform positioning. Both types of error are linearly related through the pose dependent Jacobian matrix
J(
X)of the robot as
X=
J(
X)
. Unfortunately for closed-loop chains usually only the inverse
Jacobian matrix is known in closed-form. Accuracy analysis consists in assuming that the sensor errors are bounded (without lack of generality we may assume that all sensor errors satisfy
|
i|
1) and verifying that the platform positioning errors over a given workspace
are lower than a given threshold. In other words we have to check that all solutions in
Xof the set of linear systems
J-1(
X)
X=
satisfy the threshold constraint. This is a classical problem in
interval analysis
but the usual methods (such as the Gaussian
elimination scheme) does not take into account that the elements of
J-1are not independent (they are functions of the same unknowns) and consequently they provide a large overestimation of the enclosure of the solutions for given ranges for
X. We have shown that computing the derivatives of the elements of
J-1with respect to
Xand propagating these derivatives in the Gaussian elimination scheme to improve the interval evaluation of the elements appearing in the scheme was sufficient to largely reduce the
overestimation of the enclosure of the solution set, leading to a very efficient accuracy algorithm
.
The mobile platform of a parallel wire-driven robot is connected to a base by extensible wires. Since wires can only pull and not push on the mobile platform, the relationship between the pose and the feasible wrenches at the mobile platform is an important issue for parallel wire-driven robots which can be addressed in terms of workspace.
Recently, in the case of planar parallel robots with three degrees of freedom, we have proposed an efficient geometric method
that allows to determine the workspace,
called the wrench-closure workspace (WCW), in which the platform can be fully constrained by the cables (i.e. all wrenches may be imposed on the platform if no limits are assumed on the wire
tensions). Since many applications require robots having more than three degrees of freedom (d.o.f.), we have extended the method to the determination of three dimensional cross sections of
the WCW of six-d.o.f. wire-driven robots
, by using the
ALIASlibrary. However the WCW does not take into account the physical constraints
tminttmaxon the tensions
tin the cables (
tmin>0) and geometric methods are limited to three dimensional workspaces. We have developed a method based on interval analysis that overcomes these limitations. It allows the
determination of the wrench-feasible workspace of any
n-d.o.f. parallel robot driven by
mncables (generally
n=3 or
n=6). This method constitutes a necessary basis of the optimal design methodology proposed by the COPRIN project.
In the past we have investigated the influence of leg interference on the workspace of parallel robots by using a geometrical approach. We have extended the problem in the case where elements linked either to the base or to the platform may interfere with each other or with the legs. Assuming that each element that may potential interfere are finite cylinders we have designed an interval analysis based algorithm that allows one to check if a given 6D workspace is collision-free . This study was motivated by the development of our wire-driven robot (for which it will be necessary to check such interference) and by an industrial contract (see section ).
The development of our new wire-driven robot has been delayed due to unexpected events related to the funding. With the help of a grant of the Conseil Général des Alpes-Maritimes and our own financial resources we have started the development of this wire robot but with a hardware that will allow only planar motions and with limited possibilities regarding force-feedback. A DREAM engineer has started the integration of the components in October 2006 and we expect to be able to realize the first experiments at the end of the first semester of 2007. We remind that this robot will feature a high mechanical modularity (the location of the wire system may be changed at will and various maximal length changes will be possible) and a very high speed. Using devoted algorithms it will be possible to determine what is the best geometry for a given task and we intend to use this robot in very diverse applications ranging from service robotics (windows washing robot) to medical robotics (e.g. rehabilitation within the 3+3 Med action, see section ).
Checking the regularity of interval matrices is a well known problem in interval analysis for which there are well known algorithms (Rohn test
, numerical pre-conditioning,
...). But in many applications (see for example section
) interval matrices appear only because we have to
consider a matrix whose elements are functions of unknowns which have interval values and we call this type of matrix
parametric interval matrix. Let
Xbe a set of unknowns with known interval values and
J(
X)be a parametric matrix. Instantiating each variable with all its possible values in its range will lead to a set
Jpof scalar matrices. By substituting in
Jthe variables by their ranges and interval evaluating each element of the matrix we get an interval matrix
Ji, i.e. a set of scalar matrices. It is clear that
and that
Jpmay be much more smaller than
Jiif they are strong dependencies between the elements of
Jwith respect to
X. Hence checking the regularity of
Jiin place of
Jpas done by the algorithm of interval analysis is overkill and we have therefore investigated regularity test methods that allow to better take into account the dependency problem. Our
approach is twofold:
either we determine an interval matrix
Jmthat verify
and apply classical interval analysis regularity test,
or we specialize regularity test theorems for the case of specific parametric matrices.
For the first approach we have shown that the efficiency of conditioning may be drastically improved by using a symbolic pre-processing. Both the conditioning matrix
Kand the parametric matrix
Jare kept symbolic and their products
KJ,
JKare computed symbolically. Then a symbolic procedure tries to decrease the number of multiple occurrences of the elements of
Xin
KJ,
JK. The results are two conditioned matrices that will be used during the regularity test to produce two interval matrices by substituting the interval values for
Xand the scalar values for the elements of
K. Classical interval analysis regularity tests are then applied on these interval matrices. Such method has proven to be very efficient in the case of the application described in
section
, leading to a decrease in computation time of more than
10000 compared to classical numerical conditioning
.
As for the second approach, we have specialized Rohn method for parametric matrices whose rows (or columns) include elements which are linearly dependent with respect to a subset
Yof
X. Rohn proves that for an interval matrix if a given set of extremal matrices (i.e. scalar matrices whose elements are the lower or upper bound of the ranges of the interval matrix)
have a determinant of same sign, then the interval matrix is regular. We have established that a similar result holds if instead of considering the bound of the intervals we fix the element
of
Yto their minimum or maximum value
. For example if a parametric matrix has a row
written as
(
x,
x)with
xin the range [-1,1], then the extremal matrices considered in Rohn test will have rows
(1, 1), (-1, 1), (1, -1), (-1, -1)while our test will involve only matrices with rows
(1, 1), (-1, -1).
For many problems it is interesting to prove properties related to the eigenvalues of real matrices, such as minimal and maximal values. For example in control theory the stability of a closed-loop system may be proven if the real part of all eigenvalues is negative and in robotics the eigenvalues of the product of the inverse Jacobian by its transpose is used to measure the amplification factor between the sensor errors and the end-effector positioning errors (see section ). In many cases we have to consider not only one matrix but a set of matrices: this may occur if they are uncertainties in the system parameters and/or if we have to prove the property over some state space (for example in robotics over a given workspace for the end-effector). For such cases we have designed an algorithm based on generalized interval arithmetics and on regularity test (see previous section) that allows one to determine bounds for the real eigenvalues. We are currently investigating its extension to complex eigenvalues. We have also designed an algorithm that allows to calculate the interval coefficients of the characteristic polynomial of an interval matrix, that is used in a procedure that finds a bound for the spectral radius of this matrix.
Interval analysis algorithms are often partially based on linear programming. For example global filters for equations system solving may be based on a linearization of the equations associated to the simplex method for reducing the search space. To preserve the certification properties associated with interval analysis, rounding errors have to be considered when applying linear programming methods.
We have started a step by step study of linear programming methods used in interval analysis in order to propose a certified version (i.e. taking into account round-off errors) of these methods.
One of the fundamental problem of interval analysis is the determination of the solution set of a linear system
Ax=
b, where
Aand
bmay be any instance in an interval matrix
[
A]and an interval vector
[
b]. Usually a solution
xis said to satisfy
[
A]
x= [
b]if
A
[
A]) (
b
[
b])
A
x=
b.
. But we may be interested in other problems e.g. looking for all
xsuch that
The set of points satisfying such relations are called AE-solution sets. Since the shape of such sets can be very complicated, our objective is to approximate them by interval vectors either outwardly (outer approximation) or inwardly (inner approximation).
We have investigated different approaches to compute outer and inner approximation, inspired from classical interval analysis. Our contributions have been:
an extension of the Hansen-Bliek method to right-quantified systems (
[
A]remains existentially quantified) for computing an optimal outer approximation of preconditioned systems
,
a generalized interval LU decomposition for computing inner and outer approximations ,
an improvement of the generalized Gauss-Seidel scheme for calculating outer approximation, that includes the management of the division of generalized intervals by a domain that includes 0 ,
a new programming language for modeling AE-solution sets using generalized intervals. We propose a slight change from the state of the art which allows to unify frameworks of AE-solution sets and classical solution sets ,
a test platform with a branch & prunesolver of parameterized non-linear problems. Inside a domain splitting loop, the system is linearized and tackled with one of the above methods.
Determining the zero set of an interval polynomial is necessary for many applications (see for example section
). We have designed a localization method based on
Gershgorin circles which improves the classical Cauchy or Knuth bounds for ``non-uncertain'' polynomials (i.e. polynomials with real or complex coefficients) at the price of solving
optimization problems with
d-1real variables (
dbeing the degree of the polynomial). We also shown that for determining bounds for the zero set of interval polynomials it is sufficient to determine the roots of some
extremal polynomials (i.e. polynomials with real coefficients that are upper or lower bounds of the interval coefficients). It can indeed be shown that the set of real solutions of an
interval polynomial is the union of intervals whose boundaries are solutions of some extremal polynomials. Although similar results exist for complex solutions, our experiments have shown
that they were not efficient for the practical determination of the complex zeros. We intend to investigate more deeply this direction.
If interval coefficients are obtained for a polynomial because these coefficients are analytical functions of parameters with interval values, an algorithmic approach has allowed us to further reduce the size of the set of real solutions. This is an important result as such structured interval polynomials occur frequently in applications.
A distance equations system describes that the Euclidean distance between points in a
n-dimensional space is supposed to be known and solving a distance equations system consists in determining the coordinates of the points that are not known. This is a
major research axis of the project as this problem appears frequently in various application domains such as robotics (e.g. for determining the pose of a parallel robot), molecular biology
(for determining the conformations of a molecular structure) or aeronautics (for object localization), among others.
One of the aim of our research is to solve systems of distance equations where the distances are uncertain (e.g. because they are obtained as measurements). The solutions of this problem are no more isolated points but a continuum of solutions. Because this continuum can be very difficult to express, it is natural to try to approximate it. An approximation of particular interest is one that include all solutions, i.e., an enclosure of the set of solutions of the problem.
Our objective is to approximate this set (that may be constituted of distinct regions called solution subset) as precisely as possible, keeping useful information about the different solution subsets and inner and outer zones.
Classical strategies for solving this problem consist in algebraic or numerical techniques based in interval analysis for computing outer approximations. We have developed two strategies to calculate an inner approximation (i.e. a zone containing only solutions):
an algorithm based on generalized interval evaluation.
The two algorithms have been compared , and we have shown that generalized interval evaluation is more efficient.
As a very accurate paving of the solution subsets is not always necessary (in particular when only the number of disconnected subsets is needed), we have studied another approach for computing a rough approximation of each solution subset . It combines a filtering phase with a conditional bisection phase in order to split boxes only when they generate independent solution subsets. Moreover, if inner approximations are required for each solution subset, we have developed a technique, called generalized interval projection, for extending consistent domains .
An application of this work has been the calculation of the direct kinematic of a parallel robot (see section ) in which the distances are measured by a wire system .
When a constraint system is decomposable (this feature often appears in CAD where rigid subparts can be computed and assembled), it is interesting to use this decomposition when solving the system, as it greatly simplifies the solving.
Inter-block backtracking (
IBB) computes all the solutions of sparse decomposable systems of non-linear equations over the reals. This algorithm, introduced in
, handles a system of equations previously
decomposed into a set of (small)
k×
ksub-systems, called blocks. Partial solutions are computed in the different blocks and combined together to obtain the set of global solutions.
When solutions inside blocks are computed with interval-based techniques, IBBcan be viewed as a new interval-based algorithm for solving decomposed equation systems. Our previous implementations were based on Ilog Solverand its IlcNumlibrary but the lack of knowledge on the behavior of this software induces several strong limitations. We have implemented a new version of IBBbased on the interval-based library IcosAliasdeveloped by G. Chabert. This new version allows IBBto become reliable (no solution is lost) while allowing gaining several orders of magnitude in term of computation time compared to the solving of the whole system . We compared several variants of IBBon a sample of benchmarks, in order to better understand the behavior of IBB. The main conclusion is that the use of an interval Newton operator inside blocks has the most positive impact on the robustness and performance of IBB. Inter block filtering strategies can also sometimes become useful for replacing intelligent backtracking schemes.
Shaving and constructive disjunction are two main refutation principles used in constraint programming. The shaving principle allows us to compute the singleton arc-consistency (SAC) of finite-domain constraints solving problems (CSP) and the 3B-consistency of numerical CSPs. Considering the domains as unary disjunctive constraints, one can adapt the constructive disjunction, proposed by Van Hentenryck in the nineties, to provide another general-purpose refutation operator. One advantage over the shaving is that the partial consistency performed to refute values in the domains is not entirely lost.
We propose a new filtering operator for numerical CSPs, called CID(Constructive Interval Disjunction), based on constructive disjunction , and a hybrid algorithm, called 3BCD, mixing shaving and constructive disjunction. Experiments have been performed on 20 benchmarks. Adding CIDto bisection, hull or box consistency, and interval Newton, produces a gain in performance of 1, 2 or 3 orders of magnitude on various benchmarks. 3BCDand adaptive CIDfiltering algorithms with no additional parameters compare advantageously to the 3B-consistency operator. Finally, the CIDprinciple has led us to design a new splitting strategy.
The 2D strip packing problem is a variant of the well-known combinatorial bin packing problem. It consists in placing predefined rectangles in a 2D strip such that no two rectangles overlap, while minimizing the height of the strip.
We have selected this challenging problem to work in collaboration with Maria-Cristina Riff and Xavier Bonnaire from the University of Santa Maria in Valparaiso (Chile). This collaboration has obtained a financial support from INRIA and CONYCIT (Chile).
The strip packing problem is challenging both for complete and incomplete methods. All the best algorithms use a heuristic method (e.g., Bottom-left fit, Best-fit) to add the rectangles on the strip one by one while maintaining a so-called bottom-left (BL) property. The main drawback is that these heuristics are not really incremental, so that it is difficult to maintain the BL property when one rectangle is removed. This explains, at least partially, the poor results obtained by complete methods (that must remove a rectangle at a given position to put it elsewhere) and by meta-heuristics (that must move a rectangle from a position to another).
We have designed a new property, called ``maximal-hole'' property, that maintains the full set of rectangle holes of maximal size (a rectangle must be placed in such a hole). As opposed to the BL property, the maximal-hole property can be maintained at a low cost when a rectangle is added (by a heuristic or a complete method), but also when a rectangle is removed.
We have applied this approach for designing metaheuristics with more incremental moves. The first implementation of these metaheuristics inside our INCOP library for incomplete optimization is promising.
This activity is the main part of a long-term ongoing collaboration with Airbus whose goal is to directly translate the work of aeronautics engineers into digital simulators to accelerate aircraft design. This project already has applications in the aircraft maker development departments.
Modeling and simulation processes usually begin with using scientific theories for describing physical features with formulae and computation algorithms. Based on these models, numerical codes are then implemented for simulation and visualization of these features. In an industrial context, the large number of parameters and equations involved in models make the whole process very long, complex and expensive, especially as reliable and safe codes are required.
Our previous work led to a model edition environment, based on symbolic computation tools, that makes it possible to enter the formulae and the algorithms of the models and to validate them numerically on a reduced set of data. We then worked on how to use these models to generate fully automatically the numerical real-time simulation engines to be plugged in the flight simulator, as well as the technical documentation associated with such simulations, which is indispensable for corporate memory.
In 2004 and 2005 we developed a prototype of C code generation for real time simulation, and we extended its functionalities to automatic evaluation scheduling, generic models, and optimization of the generated code. In 2006, we improved this prototype into a really powerful, robust and complete tool, accepting a wide class of models as inputs, and a lot of constraints on the generated C code. This tool has been tested with the complete model of the landing gear of the next generation of Airbus aircraft.
Theoretical work is in progress on automatizing the initialization of the values of the status parameters of a simulation. Our long term objective is to be able to introduce uncertainties in the parameters for obtaining reliable results that may be used for the optimal design of the system.
To improve the production of numerical (flight) simulators from models of aerodynamics, Airbus France is interested in methods and tools like those described in .
In 2003, a two-years long contract had been set up for prototyping some code generation features. In 2005, this contract has been extended for another two years period. For confidentiality reasons, no further details can be given here.
Paulstra designs exhaust lines for automotive and is currently proposing a flexible connection between the motor and underbelly exhaust line. For designing this part is is necessary to measure the motor vibration in various operating conditions in order to be able to then replay such vibrations on a vibration line for extensive test of the part. The automotive manufacturer provides a new car and a test circuit to Paulstra which has at most one day to perform the measurements. For these measurements Paulstra was looking for a 6 d.o.f. measurement device that should be easy to insert within the reduced space available in the underbelly of a car. We have proposed them the use of a passive parallel robot using extensible wires as legs. Being given the maximal motion range and the desired measurement accuracy we have started the dimensional synthesis of the device. But it has been necessary to develop a specific self-collision algorithm as the exhaust pipe is located inside the interior of the robot. We have used interval analysis to design a general purpose self-collision test that allows one to test intersection between cylinders which may be either fixed on the base, the platform or associated to the legs . The algorithm is able to detect that a collision occurs within a given workspace or on a given trajectory.
We have obtained an INRIA grant for a collaborative work with Cassino University, Monastir engineer school and University of Oran for a preliminary work on the development of a wire-driven parallel robot for rehabilitation. Such robot will allow for an objective monitoring of the patient progress (i.e. measuring the range of motion of the injured member during the therapy) and to be able to exert safely a force-controlled rehabilitation protocol with the advantages of being a low-cost platform that is furthermore minimally intrusive for the patient. We have already established what should be the motion measurement ranges for various types of injuries (lower and upper members) together with the amplitude of the desired forces that should be exerted.
D. Daney participated to EuComes (European Conf. on Mechanism), Obergurgl, February 21-26 and to IntCP'06, Nantes, France, September 25th, 2006.
G. Chabert participated to NMA'06 - 6th Int. Conf. on Numerical Methods and Applications, Borovets, Bulgaria (August 2006) and SCAN'06 - 12th Int. Symposium on Scientific Computing, Computer Arithmetic and Validated Numerics, Duisburg, Germany (September 2006).
M. Gouttefarde presented a paper at the Advances in Robot Kinematics (ARK) Conf. held in Ljubljana, Slovenia, June 2006.
J-P. Merlet participated to EuComes (European Conf. on Mechanism), Obergurgl, February 21-26, Advances in Robot Kinematics (ARK) Conf., Ljubljana, Slovenia, June 2006, IEEE ICRA in Orlando (May 2006), Chemnitz Parallel Kinematic Seminar (April 2006) and gave an invited talk to the 12th Int. Conf. on Principles and Practice of Constraint Programming (CP 2006), Nantes (September 2006). He was invited to the Gigolag semester on global optimization at the Schrödinger Institute, Vienna (November and December 2006).
B. Neveu and G. Trombettoni visited the research team of Maria-Cristina Riff Rojas at Federico Santa Maria University in Valparaiso, Chile, during 3 weeks, in May 2006, within the INRIA-CONYCIT cooperation project. Maria-Cristina Riff and Xavier Bonnaire visited in return the COPRIN team in July 2006, during 3 weeks. B. Neveu has presented a paper at the 12th Int. Conf. on Principles and Practice of Constraint Programming (CP 2006), Nantes, France (25-29 September).
Y. Papegay attended the 8th Int. Mathematica Symposium (IMS'2006), Avignon, June, where his ongoing work on generation of simulators has been presented by his Airbus partner. He also attended the Wolfram 2006 Technology Conf. in October at Urbana Champaign, (Illinois, USA) and gave a talk on C code generation.
G. Trombettoni participated at the 12th Int. Conf. on Principles and Practice of Constraint Programming (CP 2006), Nantes, France (25-29 September).
The "Conseil Général" has allocated a grant of 10 000 euros for the development of the wire robot that we are currently developing for service robotics (see section ).
J-P. Merlet hold the position of CISC (Advisor for Science Information and Communication) of INRIA Sophia and is an elected member of the INRIA Evaluation Board. He was a member of the jury of the competition for hiring junior researcher at INRIA Grenoble
D. Daney is member of the CUMIR (Comité des Utilisateurs des Moyens Informatiques, Recherche).
Our proposal ARESfor a STREP "Adventure" has been accepted by the EU. The partners of this project are: Scuola Superiore Sant'Anna, Pisa (coordinator), ETH Zürich, Universitat de Barcelona, Centre de Recerca en Bioelectrònica i Nanobiociència.
The purpose of this project is to conceptually investigate and develop a prototype of a system for endoluminal surgery, based on a fleet of modular micro-robots that may be connected to form a reconfigurable mechanism. The project will primarily focus on critical theoretical and technological issues for implementing the concept, including the kinematic analysis of the reconfigurable internal mechanisms, locking/unlocking systems, control and communication, design, fabrication and integration of prototype sensing and actuation modules. AREShas started at the beginning of 2006 and COPRIN is in charge of the reconfigurable strategies of the robots so that it will satisfy given performance criteria in spite of the unavoidable mechanical uncertainties.
D. Daney was member of the program committee of IntCP'06.
J-P. Merlet is suppleant member of the "commission de spécialistes" (61th section) of Nice University and is Chairman of the French section of IFToMM. He is associate editor of the Mechanism and Machine Theory journal, member of the Eucomes (European Conf. on Mechanisms) scientific Committee, of the Scientific Committee of the robotics GDR proposed to CNRS. He is a member of the Ensembleworking group that promotes the use of interval analysis in the field of Control Theory.
He has been reviewer for ASME J. of Mechanical Design, Int. J. of Robotics Research, IEEE Trans. on Systems, Man and Cybernetics, IEEE Trans. on Robotics, IEEE/ASME Trans. on Mechatronics.
J-P. Merlet was a member of LIRMM evaluation board and IEEE ICRA Scientific Committee.
B. Neveu was member of the Program Committee of ``Journées Francophones de programmation par contraintes'' (JFPC 2006) and reviewer for conferences CPAIOR 2006, CP 2006, AAAI 2006, ECAI 2006, CARI 2006, IJCAI 2007
Y. Papegay has been Chair of the Program Committee of the 8th Int. Mathematica Symposium (IMS'2006). He is member of the "commission de spécialistes" (4th section) of the University of French Polynesia.
Odile Pourtallier has been member of the Organizing Committee and of the Program Committee of the 12th Int. Symposium on Dynamic Games and Application, held in Sophia Antipolis, July 3,6th. She is secretary of the Int. Society of Dynamic Games.
Gilles Trombettoni has been member of the Program Committee of the CPAIOR 2006 conference (constraint programming, artificial intelligence, operational research). He has reviewed papers for the SAC conference, for the journals AIEDAM and IJCGA.
We have produced this year a dissemination movie for undergraduate students that illustrates graphically the basic principle of interval analysis for solving a system of two non-linear equations in two unknowns. It is available on the project Web page and on a CD-ROM with a French and English version. It has been especially well received in the community and is used as an introduction for teaching in various Universities. In the future we intend to realize a version for graduate students that illustrate more advanced concepts and a version for engineers where other possible applications of interval analysis will be presented.
D. Daney gave course in Medical robotics, DESS Génie Bio-médical, Univ. Nice Sophia Antipolis (15h). .
G. Chabert gave TD's at EPU Polytech'Nice engineering school (1st and 2nd year), in C and Java programming.
J-P. Merlet taught 6 hours of robotics at ISIA
B. Neveu and G. Trombettoni gave lectures on constraint programming in the Computer Science Master at UNSA (20 h) and in EPU at UNSA (20h).
O. Pourtallier taught 6 hours on game theory to master OSE, at École des Mines de Paris, Sophia Antipolis and 6 hours on optimization, to DESS IMAFA at UNSA.
G. Trombettoni is an assistant professor in computer science at IUT R&T (networks and telecoms) of Sophia Antipolis.
J-P. Merlet was a jury member of 1 PhD and 1 HDR defenses
B. Neveu was reviewer and jury member of 2 PhD defenses.
Current PhD thesis:
G. Chabert, Langage de pilotage et de paramétrage d'algorithmes de résolution de contraintes par intervalles, University of Nice-Sophia Antipolis (to be defended in December).
C. Grandón, Résolution de systèmes d'équations avec incertitudes, University of Nice-Sophia Antipolis.