Sylvain Pion
47
Documents
Présentation
My research is focused around the development of methods to achieve practical scalability of fundamental geometric algorithms. It spans the following domains : Exact Geometric Computation (arithmetic issues such as control of floating-point round-off errors, and exact arithmetic), generic programming and C++, compiler optimizations, efficiency of implementations, parallel algorithms (multi-core). All this work was initially motivated by and applied in CGAL, the Computational Geometry Algorithms Library (<http://www.cgal.org/>), a large C++ Open Source and commercial project.
POSITIONS HELD
• Dec. 2017-present : Research scientist at INRIA Bordeaux, France.
• Apr. 2013-Jan. 2017 : Senior Software Engineer at Apple in Cupertino, CA, USA.
• Jan. 2011-Mar. 2013 : Software Engineer at Google in Mountain View, CA, USA.
• Oct. 2003-Dec. 2010 : Research scientist at INRIA Sophia Antipolis, France.
• Oct. 2002-Sep. 2003 : Post-doc at the Max Planck Institut für Informatik, Saarbrücken, Germany.
• Apr. 2002-Sep. 2002 : Post-doc at New York University, USA.
• Oct. 2000-Mar. 2002 : Post-doc at INRIA Sophia Antipolis, France.
• Dec. 1999-Sep. 2000 : Military service as scientific programmer.
EDUCATION
• 1996-1999 : Ph.D. at INRIA Sophia Antipolis directed by J.-D. Boissonnat : From computational geometry to geometric computing. Diploma delivered by the University of Nice-Sophia Antipolis.
• 1995-1996 : Master (DEA/Magistère) at University Paris 7, in Computer Science (majors in computational geometry and cryptology).
• 1994-1998 : École Normale Supérieure de Paris.
PROFESSIONNAL EXPERIENCE
• Since Mar. 2020 : At INRIA Bordeaux, I am a standalone researcher, working on issues connected to certified arithmetics and compilers/languages.
• Dec. 2017-Feb. 2020 : At INRIA Bordeaux, I joined the new team Auctus with a research focus on collaborative robots, that is the cognitive and physical interaction of robots with humans.
• Apr. 2013-Jan 2017 : At Apple, I worked on various processing stages of maps vector data, mainly the buildings footprints data (mostly polygons with height information, sometimes more refined geometry or other attributes). I was partly responsible for importing data from a few providers, as well as inferring attributes from other sources like GPS/iPhone probe data. Most importantly, I designed and implemented geometric processing algorithms to fix overlapping issues with the road network, in a semi-automatic way. I focused on 2 algorithms, the first fixed mis-alignment issues between several data sets coming from different providers (overall shifts). The second one was more in line with geometry processing and improved over the first. This involved leveraging mostly several C++ libraries like CGAL, but also some Java/Scala programming, in the context of parallel processing using Hadoop. Since January 2014, I shared the technical responsibility for the team handling the processing pipeline of building footprints data : a system allowing manual data editing as well as a number of automatic processing phases, and I helped transitioning our system to a new, more general, platform.
• Jan. 2011-Mar. 2013 : At Google, I worked in the [Maps Ground Truth](https://www.youtube.com/watch?v=FsbLEtS0uls) project which goal was to assemble Google’s own base map vector data, country by country. I implemented maps data processing, mostly in Java, in a parallel setting. A lot of data fixing was done, on the geometry aspect as well as other attributes like names. I was responsible for “importing” data for 5 countries, which have been successfully launched (meaning that the data is now live on maps.google.com).
• 1997-2010 : At INRIA and during my post-docs at NYU and MPI, I did research in the field of Computational Geometry, focusing on robust and scalable implementations of geometric algorithms in the realm of Delaunay triangulations and mesh generation. Most of my work was in connection to the CGAL library ([www.cgal.org](https://www.cgal.org/)) : I developed, optimized and maintained several key packages for triangulations and mesh generation, as well as the kernel of basic geometric routines, especially the numerical robustness and efficiency aspects. I also worked on parallel algorithms, mostly a concurrent Delaunay triangulation for multi-core. I took project-wide responsibilities within the CGAL Editorial Board (responsible for reviews and all technical decisions). CGAL is now a mature project supported mostly commercially and an international success.
See e.g. : [http://doc.cgal.org/latest/Triangulation\_3/](http://doc.cgal.org/latest/Triangulation_3/) (source code is available)
• 2005-2010 : C++ standardization within the ISO WG21 committee. I co-authored several proposals around [interval arithmetic](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2137.pdf), [directed rounding arithmetic operations](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2899.pdf) and [multi-valued logic](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2136.pdf). I also co-authored the [Boost.Interval](https://www.boost.org/doc/libs/1_73_0/libs/numeric/interval/doc/interval.htm) library.
TEACHING EXPERIENCE :
• 2007-2009 : Member of the selection board of the entrance examination of the Écoles Normales Supérieures.
• 2006-2007 : Master level courses at the Université de Bourgogne in Dijon, France.
ONLINE VIDEOS :
• [CGAL - The Open Source Computational Geometry Algorithms Library](https://www.youtube.com/watch?v=3DLfkWWw_Tg), Google Tech Talk, March 2008
• [La Bibliothèque CGAL](https://www.college-de-france.fr/site/jean-daniel-boissonnat/seminar-2017-04-26-18h00.htm), Séminaire au Collège de France, Avril 2017
• [The Arithmetic Toolbox in CGAL](https://www.youtube.com/watch?v=7cz7RNYoWow), Mini-Workshop on iRRAM/MPFR-MPC, Dagstuhl, Germany, April 19, 2018
PARTICIPATION IN COMMITTEES :
• 2006-2010 : Chair of the Editorial Board of the CGAL project.
• Conference program committees : SoCG 2006, ESA 2010, SoCG Multimedia/Video 2009.
(SoCG is the Symposium on Computational Geometry, the main conference of the domain)
(ESA is the European Symposium on Algorithms)
• Standardization committees : C++ (ISO/JTC1/SC22/WG21), interval arithmetic (IEEE 1788).
HOBBIES : Cycling, flying (paragliding, autogyros), piano, chess
Publications
|
Improved polytope volume calculations based on Hamiltonian Monte Carlo with boundary reflections and sweet arithmeticsJournal of Computational Geometry, inPress, ⟨10.20382/jocg.v13i1a3⟩
Article dans une revue
hal-03048725v4
|
|
A Generic Lazy Evaluation Scheme for Exact Geometric ComputationsScience of Computer Programming, 2011, Special issue on library-centric software design (LCSD 2006), 76 (4), pp.307-323. ⟨10.1016/j.scico.2010.09.003⟩
Article dans une revue
inria-00562300v1
|
|
Parallel Geometric Algorithms for Multi-Core ComputersComputational Geometry, 2010, Special Issue on the 25th Annual Symposium on Computational Geometry (SoCG'09), 43 (8), pp.663-677. ⟨10.1016/j.comgeo.2010.04.008⟩
Article dans une revue
inria-00488961v1
|
|
Classroom examples of robustness problems in geometric computationsComputational Geometry, 2008, 40 (1), pp.61-78. ⟨10.1016/j.comgeo.2007.06.003⟩
Article dans une revue
inria-00344310v1
|
|
Formally Certified Floating-Point Filters For Homogeneous Geometric PredicatesRAIRO - Theoretical Informatics and Applications (RAIRO: ITA), 2007, 41, pp.57-69. ⟨10.1051/ita:2007005⟩
Article dans une revue
inria-00071232v2
|
|
An Adaptable and Extensible Geometry KernelComputational Geometry, 2007, Special Issue on CGAL, 38 (1-2), pp.16-36. ⟨10.1016/j.comgeo.2006.11.004⟩
Article dans une revue
inria-00344363v1
|
|
The design of the Boost interval arithmetic libraryTheoretical Computer Science, 2006, Real Numbers and Computers, 351 (1), pp.111-118. ⟨10.1016/j.tcs.2005.09.062⟩
Article dans une revue
inria-00344412v1
|
Des arithmétiques pour la géométrieInterstices, 2006
Article dans une revue
inria-00096418v1
|
|
|
Constructive root bound for k-ary rational input numbersTheoretical Computer Science, 2006, 369 (1-3), pp.361-376. ⟨10.1016/j.tcs.2006.09.010⟩
Article dans une revue
inria-00344349v1
|
|
Recent progress in exact geometric computationJournal of Logic and Algebraic Programming, 2005, Practical development of exact real number computation, 64 (1), pp.85-111. ⟨10.1016/j.jlap.2004.07.006⟩
Article dans une revue
inria-00344355v1
|
|
Triangulations in CGALComputational Geometry, 2002, 22, pp.5-19. ⟨10.1016/S0925-7721(01)00054-2⟩
Article dans une revue
inria-00167199v1
|
|
Walking in a TriangulationInternational Journal of Foundations of Computer Science, 2002, 13, pp.181--199. ⟨10.1142/S0129054102001047⟩
Article dans une revue
inria-00102194v1
|
|
Interval Arithmetic Yields Efficient Dynamic Filters for Computational GeometryDiscrete Applied Mathematics, 2001, 109, pp.25-47
Article dans une revue
inria-00344281v1
|
|
Sign Determination in Residue Number SystemsTheoretical Computer Science, 1999, Special issue on Real Numbers and Computers, 210, pp.173-197
Article dans une revue
inria-00344324v1
|
|
The Design of Core 2: A Library for Exact Numeric Computation in Geometry and AlgebraThird International Congress on Mathematical Software, Sep 2010, Kobe, Japan
Communication dans un congrès
inria-00519591v1
|
|
Parallel Geometric Algorithms for Multi-Core ComputersACM Symposium on Computational Geometry, Jun 2009, Aarhus, Denmark. pp.217-226
Communication dans un congrès
inria-00409051v1
|
|
FPG: A code generator for fast and certified geometric predicatesReal Numbers and Computers, Jun 2008, Santiago de Compostela, Spain. pp.47-60
Communication dans un congrès
inria-00344297v1
|
|
Robust Construction of the Three-Dimensional Flow ComplexACM Symposium on Computational Geometry (SCG), Jun 2008, Washington, United States
Communication dans un congrès
inria-00344962v1
|
|
Exact and efficient computations on circles in CGAL23rd European Workshop on Computational Geometry, 2007, Graz, Austria
Communication dans un congrès
hal-02196933v1
|
|
A Generic Lazy Evaluation Scheme for Exact Geometric ComputationsLibrary Centric Software Design (LCSD), Oct 2006, Portland, Oregon, United States
Communication dans un congrès
inria-00344960v1
|
|
Formal certification of arithmetic filters for geometric predicates17th IMACS World Congress, 2005, Paris, France
Communication dans un congrès
inria-00344518v1
|
|
Towards an Open Curved KernelACM Symposium on Computational Geometry, Jun 2004, New York, United States. pp.438-446
Communication dans un congrès
inria-00344433v1
|
|
Classroom Examples of Robustness Problems in Geometric ComputationsEuropean Symposium on Algorithms (ESA), Sep 2004, Bergen, Norway. pp.702-713
Communication dans un congrès
inria-00344515v1
|
|
Constructive Root Bound for k-Ary Rational Input Numbers19th Annual ACM Symposium on Computational Geometry (SCG), Jun 2003, San Diego, California, United States. pp.256-263
Communication dans un congrès
inria-00348715v1
|
|
The Boost Interval Arithmetic LibraryReal Numbers and Computers, 2003, Lyon, France. pp.65-80
Communication dans un congrès
inria-00348711v1
|
|
Efficient Exact Geometric Predicates for Delaunay TriangulationsProceedings of the 5th Workshop on Algorithm Engineering and Experiments, Jan 2003, Baltimore, Maryland, United States. pp.37-44
Communication dans un congrès
inria-00344517v1
|
|
An Adaptable and Extensible Geometry KernelWorkshop on Algorithm Engineering, Aug 2001, Aarhus, Denmark. pp.79-90, ⟨10.1007/3-540-44688-5⟩
Communication dans un congrès
inria-00344964v1
|
|
Walking in a TriangulationProceedings of the 17th Annual Symposium on Computational Geometry, Jun 2001, Boston, United States. pp.106-114, ⟨10.1145/378583.378643⟩
Communication dans un congrès
inria-00344519v1
|
|
Interval Arithmetic: an efficient implementation and an application to computational geometryWorkshop on Applications of Interval Analysis to systems and Control (MISC), Feb 1999, Girona, Spain
Communication dans un congrès
inria-00344513v1
|
|
Programming with CGAL: the example of triangulations8th Annual Video Review of Computational Geometry, 15th ACM Symposium on Computational Geometry (SCG), Jun 1999, Miami Beach, Florida, United States
Communication dans un congrès
inria-00348713v1
|
|
Interval Arithmetic Yields Efficient Dynamic Filters for Computational Geometry14th Annual ACM Symposium on Computational Geometry (SCG), Jun 1998, Minneapolis, United States. pp.165-174
Communication dans un congrès
inria-00344516v1
|
|
Exact rounding for geometric constructionsScientific Computing, Computer Arithmetic and Validated Numerics (SCAN), 1997, Lyon, France
Communication dans un congrès
inria-00344403v1
|
|
Computing exact geometric predicates using modular arithmetic with single precisionACM Symposium on Computational Geometry (SCG), Jun 1997, Nice, France. pp.174-182
Communication dans un congrès
inria-00344963v1
|
|
De la géométrie algorithmique au calcul géométriqueModélisation et simulation. Université Nice Sophia Antipolis, 1999. Français. ⟨NNT : ⟩
Thèse
tel-00011258v1
|