Direction des Relations Européennes et Internationales (DREI)

Programme INRIA "Equipes Associées"

 

I. DEFINITION

EQUIPE ASSOCIEE

GENEPI
sélectionnée en
2004

Projet INRIA : GEOMETRICA Organisme étranger partenaire 1 : Polytechnic University Brooklyn Organisme étranger partenaire 2 : New York University
Unité de recherche INRIA : Sophia Antipolis
Thème INRIA : Sym B
Pays : États-Unis Pays : États-Unis
 
 
Coordinateur français
Coordinateur étranger 1
Coordinateur étranger 2
Nom, prénom Pion, Sylvain Brönnimann, Hervé Yap, Chee
Grade/statut Chargé de recherche Assistant professor Professor
Organisme d'appartenance
INRIA Sophia Antipolis, Projet GEOMETRICA Polytechnic University Brooklyn, Computer and Information Science Department Courant Institute of Mathematical Sciences, New York University
Adresse postale 2004 Route des Lucioles - BP 93 FR-06902 Sophia Antipolis 6 MetroTech Center Brooklyn, NY 11201, New York, USA 251 Mercer Street, New York, NY 10012, New York, USA
URL http://www-sop.inria.fr/geometrica/collaborations/genepi/ http://geometry.poly.edu/genepi/ http://www.cs.nyu.edu/cs/faculty/yap/
Téléphone +33 4 92 38 50 25 +01 (718) 260 3538 +01 (212) 998 3115
Télécopie +33 4 92 38 76 43 +01 (718) 260 3609 +01 (212) 995 4121
Courriel Sylvain.Pion@sophia.inria.fr hbr@poly.edu yap@cs.nyu.edu


La proposition en bref

Mots-clés : Generic geometric algorithms, generic interfaces to graph data structures, geometric kernels, curved objects, non-robustness issues, CGAL

Thématique de la collaboration : Our work is centered on various problems that arise during the implementation of computational geometric algorithms : the genericity aspects of algorithms, and the robustness aspects. These research themes are heavily connected to the work on CGAL.

Generic programming of geometric algorithms : interfaces to the geometry and to the data structures. (collaboration mostly with H. Brönnimann) The first kind of problems is linked to the definition of interfaces (APIs) between the combinatorial and central parts of algorithms and the geometric objects that they manipulate. In order to have generic and re-usable implementations of such algorithms, we parameterize them by kernels which provide the geometry part. The problems that we work on are the definitions of the mathematical concepts corresponding to the different categories of geometry that each algorithm can handle. The goals here are to try to maximize the usability of generic algorithms, and to introduce concepts that facilitate their documentation.
The other aspect of genericity is the interface between the concrete memory storage of the data structures (such as polyhedral surfaces, triangulations...), and the algorithms that manipulate them (point location, meshers...). The idea here is to be able to apply generic algorithms on different concrete data structures providing a common interface. We plan to extend the work done by H. Brönnimann on the Halfedge Data Structure and in the Boost Graph Library to the structures of interest to CGAL, namely the 2D-3D triangulations and simplicial complexes.

Robust handling of curved objects. (collaboration mostly with C. Yap) The second aspect of the work concerns the non-robustness issues that are well-known to cause problems to computational geometry algorithms. In the past, we have developed several methods to handle these issues, and we plan to extend them to curved objects, beginning with low degree algebraic objects. More specifically, we plan to investigate the use of algebraic techniques introduced in the CORE library, and interface it with the CGAL curved kernel currently under development. A somewhat new direction in our collaboration is to address the numerical/parametric view of algebraic curves and surfaces. Until now, researchers in computational geometry have emphasized the purely algebraic view of curves and surfaces. But in practice, the numerical/parametric view is dominant. However the robustness issues here are mostly open. A new paper by one of the participants (Yap) has started to open up this line of investigation.

 

Présentation de l'Équipe Associée

1. Présentation du coordinateur étranger

Hervé Brönnimann is Assistant Professor at the Polytechnic University Brooklyn, New York, USA. He has published several papers on all aspects of geometric computing in international journals, including on theoretical topics such as derandomization of geometric algorithms (the topic of his Ph.D. thesis) and practical topics as arithmetic filters for geometric computing. He graduated from École Normale Supérieure of Paris before completing his Ph.D. in Computer Science at Princeton University in 1995. He held a permanent research position in the PRISME project at INRIA from 1995 to 1998. His research interests include analysis and design of algorithms, with a focus on geometric algorithms. At INRIA, he was a collaborator in CGAL, where he was involved with maintaining a large portion of the geometry kernel. At Poly, he spearheaded the effort that led to the Boost Interval Arithmetic Library. More recently, he became interested in applying results in deterministic sampling and data stream techniques to data mining and network forensics. Again, he is interested there in theoretically efficient yet highly practical algorithms, and their implementation.

Chee Keng Yap is Professor of Computer Science at the Courant Institute of Mathematical Sciences, New York University. He has published over 130 papers in major conferences and journals, in the area of algorithms and complexity. His research interests include computational geometry, visualization problems, computer algebra, and algorithmic robotics. Since 1993, he has been interested in numerical non-robustness, especially issues at the interface between numerical, algebraic and topological computation. A current project called the Core Library aims to bring robust computation out of the research realm and make it widely accessible to all programmers. Yap was born in Singapore and educated in the Boys' Wing, Royal Military College in Malaysia. He received a double S.B. degree (Math and Comp.Sci.) from MIT in 1975 and a Ph.D. (Comp.Sci.) from Yale in 1980. He served on the editorial boards of SIAM J. of Computing (1985-2002), J. of Symbolic Computation (1988--2003), J. of Computer and System Sciences (1986--), Computational Geometry: Theory and Applications (1990--), Int'l J. of Comp. Geometry and Applications (1990--), and Algorithmica (1992--). His two books are the edited volume Advances in Robotics: Algorithmic and Geometric Issues (Lawrence Erlbaum Associates, Inc, 1987) (co-edited with Jack Schwartz) and Fundamental Problems in Algorithmic Algebra (Oxford University Press, 2000).

2. Historique de la collaboration

3. Impact :



II. BILAN 2004

The assessment of this first year of the associated team is overall positive. We have performed almost all planned exchanges, with the exception of no student sent to New York, and shorter stays than planned. The budget showing only 55% of use, is mostly due to the unexpectedly cheap accomodations that we found in New York ($30 per night instead of 110€ planned). We also note an unbalanced situation between the exchanges from and to INRIA, since our partner's team is less numerous. For the following years, we plan to improve the situation by including C. Yap's group (New York University) within the associated team (this was not an option for the first year since he was on sabbatical).


Rapport scientifique pour l'année 2004

In june, we have organized a mini-workshop in Poly, around the themes of GENEPI, with 3 senior INRIA researchers attending. Twelve people attended this workshop, which was conveniently co-located with the ACM conference SoCG (also organized by H. Brönnimann). At this workshop, we decided to first focus on the work around concepts of geometry, that is, the link between generic geometric algorithms, and the different sets of geometric primitives they can use. This work is now converging towards a contribution to CGAL. More details on the topics discussed at the workshop can be found on this dedicated web page.

In august, we have invited C. Yap at INRIA, to start a collaboration around curved objects, with M. Teillaud. One of the main goals of this collaboration is to allow the interfacing between the CORE library of algebraic numbers and the CGAL curved kernel. C. Yap gave two seminars during his stay at INRIA : "Complete Subdivision Algorithm for Intersecting Bezier Curves" and "Shortest Path amidst Disc Obstacles is Computable".

Finally, in october, H. Brönnimann and his student J. Lenchner visited INRIA. Hervé gave a seminar entitled "Algorithm Engineering for Geometric Algorithms". We worked on several topics during their stays :


Bilan des échanges effectués en 2004


1. Seniors

Nom
statut
provenance
destination
objet
durée (en semaines)
Pion CR INRIA Sophia Polytechnic U. Brooklyn Conference, workshop, visit 3
Teillaud CR INRIA Sophia Polytechnic U. Brooklyn Conference, workshop 2
Yvinec CR INRIA Sophia Polytechnic U. Brooklyn Conference, workshop 2
Yap Professor NYU (via MPI, Saarbücken) INRIA Sophia Visit 1
Brönnimann Assistant professor Polytechnic U. Brooklyn INRIA Sophia Visit 1

Total des durées en semaines
9


2. Juniors

Nom
statut
provenance
destination
objet
durée (en mois)
Lenchner Ph.D student Polytechnic U. Brooklyn INRIA Sophia Visit 0.25
Melquiond Ph.D Student ENS Lyon, INRIA Arenaire INRIA Sophia Visit 0.25

Total des durées en mois
0.5

 



III. PREVISIONS 2005

Programme de travail

The long term view is that our work is centered on the various problems that arise during the implementation of computational geometric algorithms, especially from the non-robustness point of view, and in the generic programming setting, such as the one found in CGAL. We plan to make significant contributions to CGAL. The two main topics are described in the introduction of this associated team. The planned work for 2005 continues what was begun in 2004 for some parts, and extends it with the collaboration with C. Yap.

Generic programming of geometric algorithms. We will continue the work concerning the concepts of geometries used by the various algorithms in CGAL. The impact of this work is the ability to broaden the applicability of existing algorithms, both within CGAL (promoting internal reuse) and to more application domains.
From the implementation point of view, we have introduced concept checkers in CGAL, which are a way to statically check the validity of template parameters against the requirements expressed as concepts. These enforce requirements on parameter classes and make the code both more robust (errors are detected immediately) and easier to design (since documentation concepts now translate into code entities). Currently, concept checking is provided for several key packages (kernel, triangulations). We will continue to extend concept checking to all of CGAL, and work on unifying concepts and eliminating functional duplication between packages.
One example we plan on zooming in is triangulation data structures. Those structures, also known as simplicial complexes, are currently present in at least three forms in CGAL. We plan on unifying those through a separate simplicial complex library. We are also going to work on generic interfaces for the operations on simplicial complexes, together with our students A. Mebarki and J. Lenchner. The idea is to devise an interface that decouples the algorithms acting on such complexes. Currently, the algorithms are part of the triangulation class and hence not easily reusable. Extracting them as stand-alone algorithms would allow their independent reuse and provide more genericity in CGAL. The challenge is to design the interface so that this can be done.
Another goal of this work is to allow several representations of these data structures in memory, which is part of A. Mebarki's thesis subject, with the algorithms operating generically on every single one of them (again promoting internal code reuse). Along with straightforward applications to CGAL, we are targeting specific applications of simplicial complexes.

Robust handling of curved objects. Our work goes towards answering the growing need for the robust and efficient manipulation of curved objects in numerous applications. The CGAL kernel currently provides several functionalities which are, however, mostly restricted to linear objects. We would like to continue the work on the extension to curved objects. More specifically, we would like to interface it with the CORE library developped by C. Yap's team, which provides algebraic primitives. First target applications are the implementations of the predicates necessary to compute arrangements of conic arcs, and possibly Voronoi diagram of complex objects involving conic arcs. The work involved here concerns the efficient and exact handling of algebraic numbers and systems.
Most practical techniques in curves and surfaces are parametric curves and surfaces (e.g. Bezier patches). Here, the current techniques are numerically-based and they suffer from inexactness and nonrobustness. To solve this problem from the exact geometric computation (EGC) viewpoint, we need to understand root bounds and to apply them carefully in our algorithms. This work has begun in a new paper of one of the participants (Yap), but it is clear that many issues remain.

 

Budget prévisionnel 2005

1. Co-financement

Financing information removed.

2. Echanges

Planned visits from New York to Sophia Antipolis :

Planned visits from Sophia Antipolis to New York :

 

 

© INRIA - mise à jour le 19/11/2004