Sylvain Pion
47
Documents
Presentation
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, In press, ⟨10.20382/jocg.v13i1a3⟩
Journal articles
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⟩
Journal articles
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⟩
Journal articles
inria-00488961v1
|
|
Classroom examples of robustness problems in geometric computationsComputational Geometry, 2008, 40 (1), pp.61-78. ⟨10.1016/j.comgeo.2007.06.003⟩
Journal articles
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⟩
Journal articles
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⟩
Journal articles
inria-00344363v1
|
|
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⟩
Journal articles
inria-00344349v1
|
|
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⟩
Journal articles
inria-00344412v1
|
Des arithmétiques pour la géométrieInterstices, 2006
Journal articles
inria-00096418v1
|
|
|
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⟩
Journal articles
inria-00344355v1
|
|
Triangulations in CGALComputational Geometry, 2002, 22, pp.5-19. ⟨10.1016/S0925-7721(01)00054-2⟩
Journal articles
inria-00167199v1
|
|
Walking in a TriangulationInternational Journal of Foundations of Computer Science, 2002, 13, pp.181--199. ⟨10.1142/S0129054102001047⟩
Journal articles
inria-00102194v1
|
|
Interval Arithmetic Yields Efficient Dynamic Filters for Computational GeometryDiscrete Applied Mathematics, 2001, 109, pp.25-47
Journal articles
inria-00344281v1
|
|
Sign Determination in Residue Number SystemsTheoretical Computer Science, 1999, Special issue on Real Numbers and Computers, 210, pp.173-197
Journal articles
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
Conference papers
inria-00519591v1
|
|
Parallel Geometric Algorithms for Multi-Core ComputersACM Symposium on Computational Geometry, Jun 2009, Aarhus, Denmark. pp.217-226
Conference papers
inria-00409051v1
|
|
Robust Construction of the Three-Dimensional Flow ComplexACM Symposium on Computational Geometry (SCG), Jun 2008, Washington, United States
Conference papers
inria-00344962v1
|
|
FPG: A code generator for fast and certified geometric predicatesReal Numbers and Computers, Jun 2008, Santiago de Compostela, Spain. pp.47-60
Conference papers
inria-00344297v1
|
|
Exact and efficient computations on circles in CGAL23rd European Workshop on Computational Geometry, 2007, Graz, Austria
Conference papers
hal-02196933v1
|
|
A Generic Lazy Evaluation Scheme for Exact Geometric ComputationsLibrary Centric Software Design (LCSD), Oct 2006, Portland, Oregon, United States
Conference papers
inria-00344960v1
|
|
Formal certification of arithmetic filters for geometric predicates17th IMACS World Congress, 2005, Paris, France
Conference papers
inria-00344518v1
|
|
Towards an Open Curved KernelACM Symposium on Computational Geometry, Jun 2004, New York, United States. pp.438-446
Conference papers
inria-00344433v1
|
|
Classroom Examples of Robustness Problems in Geometric ComputationsEuropean Symposium on Algorithms (ESA), Sep 2004, Bergen, Norway. pp.702-713
Conference papers
inria-00344515v1
|
|
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
Conference papers
inria-00344517v1
|
|
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
Conference papers
inria-00348715v1
|
|
The Boost Interval Arithmetic LibraryReal Numbers and Computers, 2003, Lyon, France. pp.65-80
Conference papers
inria-00348711v1
|
|
Walking in a TriangulationProceedings of the 17th Annual Symposium on Computational Geometry, Jun 2001, Boston, United States. pp.106-114, ⟨10.1145/378583.378643⟩
Conference papers
inria-00344519v1
|
|
An Adaptable and Extensible Geometry KernelWorkshop on Algorithm Engineering, Aug 2001, Aarhus, Denmark. pp.79-90, ⟨10.1007/3-540-44688-5⟩
Conference papers
inria-00344964v1
|
|
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
Conference papers
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
Conference papers
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
Conference papers
inria-00344516v1
|
|
Exact rounding for geometric constructionsScientific Computing, Computer Arithmetic and Validated Numerics (SCAN), 1997, Lyon, France
Conference papers
inria-00344403v1
|
|
Computing exact geometric predicates using modular arithmetic with single precisionACM Symposium on Computational Geometry (SCG), Jun 1997, Nice, France. pp.174-182
Conference papers
inria-00344963v1
|
|
De la géométrie algorithmique au calcul géométriqueModélisation et simulation. Université Nice Sophia Antipolis, 1999. Français. ⟨NNT : ⟩
Theses
tel-00011258v1
|