The main scientific objective of the VEGAS research team is to contribute to the development of an effective geometric computing dedicated to non-trivial geometric objects. Included among its main tasks are the study and development of new algorithms for the manipulation of geometric objects, the experimentation of algorithms, the production of high-quality software, and the application of such algorithms and implementations to research domains that deal with a large amount of geometric data, notably solid modeling and computer graphics.
Computational geometry has traditionally treated linear objects like line segments and polygons in the plane, and point sets and polytopes in three-dimensional space, occasionally (and more recently) venturing into the world of non-linear curves such as circles and ellipses. The methodological experience and the know-how accumulated over the last thirty years have been enormous.
For many applications, particularly in the fields of computer graphics and solid modeling, it is necessary to manipulate more general objects such as curves and surfaces given in either implicit or parametric form. Typically such objects are handled by approximating them by simple objects such as triangles. This approach is extremely important and it has been used in almost all of the usable software existing in industry today. It does, however, have some disadvantages. Using a tessellated form in place of its exact geometry may introduce spurious numerical errors (the famous gap between the wing and the body of the aircraft), not to mention that thousands if not hundreds of thousands of triangles could be needed to adequately represent the object. Moreover, the curved objects that we consider are not necessarily everyday three-dimensional objects, but also abstract mathematical objects that are not linear, that may live in high-dimensional space, and whose geometry we do not control. For example, the set of lines in 3D (at the core of visibility issues) that are tangent to three polyhedra span a piecewise ruled quadratic surface, and the lines tangent to a sphere correspond, in projective five-dimensional space, to the intersection of two quadratic hypersurfaces.
Effectiveness is a key word of our research project. By requiring our algorithms to be effective, we imply that the algorithms should be robust, efficient, and versatile. By robust we mean algorithms that do not crash on degenerate inputs and always output topologically consistent data. By efficient we mean algorithms that run reasonably quickly on realistic data where performance is ascertained both experimentally and theoretically. Finally, by versatile we mean algorithms that work for classes of objects that are general enough to cover realistic situations and that account for the exact geometry of the objects, in particular when they are curved.
We are interested in the application of our work to virtual prototyping, which refers to the many steps required for the creation of a realistic virtual representation from a CAD/CAM model.
When designing an automobile, detailed physical mockups of the interior are built to study the design and evaluate human factors and ergonomic issues. These hand-made prototypes are costly, time consuming, and difficult to modify. To shorten the design cycle and improve interactivity and reliability, realistic rendering and immersive virtual reality provide an effective alternative. A virtual prototype can replace a physical mockup for the analysis of such design aspects as visibility of instruments and mirrors, reachability and accessibility, and aesthetics and appeal.
Virtual prototyping encompasses most of our work on effective geometric computing. In particular, our work on 3D visibility should have fruitful applications in this domain. As already explained, meshing objects of the scene along the main discontinuities of the visibility function can have a dramatic impact on the realism of the simulations.
Solid modeling, i.e., the computer representation and manipulation of 3D shapes, has historically developed somewhat in parallel to computational geometry. Both communities are concerned with geometric algorithms and deal with many of the same issues. But while the computational geometry community has been mathematically inclined and essentially concerned with linear objects, solid modeling has traditionally had closer ties to industry and has been more concerned with curved surfaces.
Clearly, there is considerable potential for interaction between the two fields. Standing somewhere in the middle, our project has a lot to offer. Among the geometric questions related to solid modeling that are of interest to us, let us mention: the description of geometric shapes, the representation of solids, the conversion between different representations, data structures for graphical rendering of models and robustness of geometric computations.
QI stands for “Quadrics Intersection”. QI is the first exact, robust, efficient and usable implementation of an algorithm for parameterizing the intersection of two arbitrary quadrics, given in implicit form, with integer coefficients. This implementation is based on the parameterization method described in and represents the first complete and robust solution to what is perhaps the most basic problem of solid modeling by implicit curved surfaces.
QI is written in C++ and builds upon the LiDIA computational number theory library bundled with the GMP multi-precision integer arithmetic . QI can routinely compute parameterizations of quadrics having coefficients with up to 50 digits in less than 100 milliseconds on an average PC; see for detailed benchmarks.
Our implementation consists of roughly 18,000 lines of source code. QI has being registered at the Agence pour la Protection des Programmes (APP). It is distributed under a free for non-commercial use Inria license and will be distributed under the QPL license in the next release. The implementation can also be queried via a web interface .
Since its official first release in June 2004, QI has been downloaded six times a month on average and it has been included in the geometric library EXACUS developed at the Max-Planck-Institut für Informatik (Saarbrücken, Germany). QI is also used in a broad range of applications; for instance, it is used in photochemistry for studying the interactions between potential energy surfaces, in computer vision for computing the image of conics seen by a catadioptric camera with a paraboloidal mirror, and in mathematics for computing flows of hypersurfaces of revolution based on constant-volume average curvature.
Isotop is a Maple software for computing the topology of an algebraic plane curve, that is, for computing an arrangement of polylines isotopic to the input curve. This problem is a necessary key step for computing arrangements of algebraic curves and has also applications for curve plotting. This software has been developed since 2007 in collaboration with F. Rouillier from Inria Paris - Rocquencourt. It is based on the method described in which incorporates several improvements over previous methods. In particular, our approach does not require generic position.
Isotop is registered at the APP (June 15th 2011). This version is competitive with other implementations (such as AlciX and Insulate developed at MPII Saarbrücken, Germany and top developed at Santander Univ., Spain). It performs similarly for small-degree curves and performs significantly better for higher degrees, in particular when the curves are not in generic position.
We are currently working on an improved version integrating our new bivariate polynomial solver.
Born as a European project, CGAL (http://
In computational geometry, many problems lead to standard, though difficult, algebraic questions such as computing the real roots of a system of equations, computing the sign of a polynomial at the roots of a system, or determining the dimension of a set of solutions. We want to make state-of-the-art algebraic software more accessible to the computational geometry community, in particular, through the computational geometric library CGAL. On this line, we contributed a model of the Univariate Algebraic Kernel concept for algebraic computations (see Sections 8.2.2 and 8.4). This CGAL package improves, for instance, the efficiency of the computation of arrangements of polynomial functions in CGAL . We are currently developing a model of the Bivariate Algebraic Kernel based on a new bivariate polynomial solver.
The library fast_polynomial
This software is focused on fast online computation, multivariate evaluation, modularity, and efficiency.
Fast online computation. The library is optimized for the evaluation of a polynomial on several point arguments given one after the other. The main motivation is numerical path tracking of algebraic curves, where a given polynomial criterion must be evaluated several thousands of times on different values arising along the path.
Multivariate evaluation. The library provides specialized fast evaluation of multivariate polynomials with several schemes, specialized for different types such as mpz big ints, boost intervals with hardware precision, mpfi intervals with any given precision, etc.
Modularity. The evaluation scheme can be easily changed and adapted to the user needs. Moreover, the code is designed to easily extend the library with specialization over new C++ objects.
Efficiency. The library uses several tools and methods to provide high efficiency. First, the
code uses templates, such that after the compilation of a polynomial for a specific type, the
evaluation performance is equivalent to low-level evaluation. Locality is also taken into account:
the memory footprint is minimized, such that an evaluation using the classical Hörner scheme will
use
In the context of our algorithm Isotop for computing the topology of plane algebraic curves , we work on the problem of solving a system of two bivariate polynomials. We focus on the problem of computing a Rational Univariate Representation (RUR) of the solutions, that is, roughly speaking, a univariate polynomial and two rational functions which map the roots of the polynomial to the two coordinates of the solutions of the system. The PhD thesis of Yacine Bouzidi presented several results on this theme obtained during the past three years.
Separating linear forms.
We addressed the problem of computing a linear separating form of a system of two
bivariate polynomials with integer coefficients, that is a linear combination of
the variables that takes different values when evaluated at the distinct
solutions of the system. The computation of such linear forms is at the core of
most algorithms that solve algebraic systems by computing rational
parameterizations of the solutions and this is the bottleneck of these
algorithms in terms of worst-case bit complexity. We presented for this problem a
new algorithm of worst-case bit complexity
Solving bivariate systems & RURs. Given such a
separating linear form, we presented an algorithm for computing a RUR with
worst-case bit complexity in
This work is done in collaboration with Fabrice Rouillier (project-team Ouragan at Inria Paris-Rocquencourt).
Let
We addressed the problem of finding the reflection point on quadric
mirror surfaces, especially ellipsoid, paraboloid or hyperboloid of two
sheets, of a light ray emanating from a 3D point
source
We studied the geometry of the solutions of the 3-RPS parallel manipulator. In particular, a parallel manipulator usually has several solutions to the Direct Kinematic Problem. These solutions correspond to different assembly modes. A challenge is to find non-singular trajectories connecting different assembly modes. In the literature, this is done by encircling locally a cusp point of the discriminant variety in the joint space. In this work, we used tools from computer algebra to compute a partition of the work space in uniqueness domains. This allowed us to find global singularity-free trajectories reaching up to three assembly modes , .
We studied from a probabilistic point of view the size of the silhouette of a
polyhedron. While the silhouette size of a polyhedron with
We say that a simplicial complex is shrinkable if there exists a sequence of admissible edge contractions that reduces the complex to a single vertex. We prove that it is NP-complete to decide whether a (three-dimensional) simplicial complex is shrinkable. Along the way, we describe examples of contractible complexes which are not shrinkable. This work was done in collaboration with Dominique Attali (CNRS, Grenoble), Olivier Devillers and Marc Glisse (Inria Geometrica).
A set of points is said universal if it supports a crossing-free drawing of any planar graph. For a planar graph with
The white ANR grant PRESAGE brings together computational geometers (from the VEGAS and GEOMETRICA projects of Inria) and probabilistic geometers (from Universities of Rouen, Orléans and Poitiers) to tackle new probabilistic geometry problems arising from the design and analysis of geometric algorithms and data structures. We focus on properties of discrete structures induced by or underlying random continuous geometric objects.
This is a four year project, with a total budget of 400kE, that started on Dec. 31st, 2011. It is coordinated by Xavier Goaoc who moved from the Vegas team to Marne-la-Vallée university in 2013.
The objective of the young-researcher ANR grant SingCAST is to intertwine further symbolic/numeric approaches to compute efficiently solution sets of polynomial systems with topological and geometrical guarantees in singular cases. We focus on two applications: the visualization of algebraic curves and surfaces and the mechanical design of robots.
After identifying classes of problems with restricted types of singularities, we plan to develop dedicated symbolic-numerical methods that take advantage of the structure of the associated polynomial systems that cannot be handled by purely symbolic or numeric methods. Thus we plan to extend the class of manipulators that can be analyzed, and the class of algebraic curves and surfaces that can be visualized with certification.
This is a 3.5 years project, with a total budget of 100kE, that started on March 1st 2014, coordinated by Guillaume Moroz.
In 2014, the project funded 6 months of internship for Olive Chakraborty and the beginning of the postdoc position of Rémi Imbach. We also organized the first meeting on subdivision methods for singular systems in Nantes in December, see the project website SingCAST.
Subject: Numerical algorithms for certified topological and geometrical description of singular curves.
Date: Jun-Dec 2014.
Institution: IIT Pilani, India.
Sylvain Lazard organized with S. Whitesides (Victoria
University) the 13th Inria - McGill - Victoria Workshop on Computational
Geometry
Marc Pouget and Guillaume Moroz organized the first
ANR-SingCAST meeting on subdivision methods for singular systems in Nantes in
December.
Guillaume Moroz co-organizes the Journées Nationales de Calcul Formel 2015 (JNCF).
Monique Teillaud is a member of the program committee of the 2015 Symposium on Computational Geometry SoCG'15.
All members of the team are regular reviewers for the conferences of our field, namely the Symposium on Computational Geometry (SoCG) and the International Symposium on Symbolic and Algebraic Computation (ISSAC) and also SODA, CCCG, EuroCG.
Olivier Devillers is a member of the Editorial Board of Graphical Models.
Monique Teillaud is a member of the Editorial Boards of CGTA, Computational Geometry: Theory and Applications, and of IJCGA, International Journal of Computational Geometry and Applications.
Marc Pouget and Monique Teillaud are members of the CGAL editorial board.
All members of the team are regular reviewers for the journals of our field, namely Discrete and Computational Geometry (DCG), Computational Geometry. Theory and Applications (CGTA), Journal of Computational Geometry (JoCG), International Journal on Computational Geometry and Applications (IJCGA), Journal on Symbolic Computations (JSC), SIAM Journal on Computing (SICOMP), Mathematics in Computer Science (MCS), etc.
Monique Teillaud is a member of the Steering Committee of the European Symposium on Algorithms (ESA).
Monique Teillaud has been a member of the Scientific Board of the Société Informatique de France (SIF) since November.
Laurent Dupont is a member of “Commission Pédagogique Nationale” (CPN) Information-Communication / Métiers du Multimédia et de l'Internet.
M. Teillaud is maintaining the Computational Geometry Web Pages
http://
G. Moroz is maintaining the ANR Presage website
http://
M. Pouget is maintaining the ANR SingCAST website
https://
Master : O. Devillers,
Synthèse, image et géométrie
, 12h (academic year 2014-15), IPAC-R, Université de Lorraine.
http://
Master: Marc Pouget, Introduction à la géométrie algorithmique, 10.5h, M2, École Nationale Supérieure de Géologie, France.
Master: Guillaume Moroz, Introduction à la résolution réelle de systèmes bivariés et topologie de courbes, 20h (April 2014), Université de Ziguinchor, Sénégal.
Licence: Laurent Dupont, Systèmes de Gestion de Bases de Données Avancé, 40h, L3, Université de Lorraine (IUT Charlemagne).
Licence: Laurent Dupont, Concepts et Outils Internet, 70h, L1, Université de Lorraine (IUT Charlemagne).
Licence: Laurent Dupont, Programmation Objet et Évènementielle, 50h, L2, Université de Lorraine (IUT Charlemagne).
Licence: Laurent Dupont, Programmation de Sites Web Dynamiques, 70h, L2, Université de Lorraine (IUT Charlemagne).
Licence: Laurent Dupont, Algorithmique, 30h, L1, Université de Lorraine (IUT Charlemagne)
Licence: Sylvain Lazard, Algorithms and Complexity, 25h, L3, Université de Lorraine.
Licence: Yacine Bouzidi, Programmation orientée objet, 46h, L2, Université de Lorraine.
Master: Yacine Bouzidi, Java avancé, 20h, M1, Université de Lorraine.
PhD in progress : Rémy Thomasse, Smoothed complexity of geometric structures and algorithms, started December 1st 2012, Olivier Devillers. (The student is hosted in EPI geometrica but supervised by O. Devillers).
PhD in progress : Ranjan Jha, Étude de l’espace de travail des mécanismes à boucles fermées, started in Oct. 2013, supervised by Damien Chablat, Fabrice Rouillier and Guillaume Moroz.
PhD in progress : Sény Diatta, Complexité du calcul de la topologie d'une courbe dans l'espace et d'une surface, started in Nov. 2014, supervised by Daouda Niang Diatta, Marie-Françoise Roy and Guillaume Moroz.
PhD: Yacine Bouzidi, Solving bivariate algebraic systems and topology of plane curves, defended in March 2014, supervised by Sylvain Lazard and Marc Pouget.
Postdoc: Rémy Imbach, Topology and geometry of singular surfaces with numerical algorithms, supervised by Guillaume Moroz and Marc Pouget.
Postdoc: Laurent Veysseire, Probabilistic analysis of geometric structures, supervised by Olivier Devillers.
O. Devillers was a member (advisor) of the PhD defense committee of Ross Hemsley (Univ. Nice - Sophia Antipolis).
M. Pouget and S. Lazard were member (adivisors) of the PhD defense committee of Yacine Bouzidi (Univ. Lorraine).
G. Moroz was a member (external examiner) of the PhD defense committee of Esmaeil Mehrabi (Univ. of Western Ontario)
Guillaume Moroz is a member of the organizing committee of the Olympiades académiques de mathématiques.