Computational geometry · Parallel algorithms · GIS

W. Randolph
Franklin.

I develop fast, exact, parallel algorithms for large geometric datasets, from 3-D meshes to the terrain beneath our feet.

Emeritus Professor, Rensselaer Polytechnic Institute

President & Managing Director, Quantum Geometry℠ LLC

W. Randolph Franklin
W. Randolph FranklinTroy, New York

01 / Research

Simple structures. Large problems.

Research overview ↗
Intersecting geometric structures An illustrative wireframe of two overlapping polyhedra, in blue and rust. This is a conceptual drawing, not a research result.
01 / Mesh intersectionConceptual illustration

Featured implementation

Exact geometry,
at computational scale.

3D-EPUG-OVERLAY computes intersections between large triangular meshes, including geometric degeneracies. Applications span CAD/CAM, GIS, and additive manufacturing.

Exact arithmetic. Local structure.
Parallel computation.

01

Geometric computing

Simple representations of polygons and polyhedra; robust intersection and point-location algorithms.

Geometry research ↗

02

Parallel algorithms

Efficient data structures and algorithms for multicore processors and NVIDIA GPUs.

Parallel computation ↗

03

Terrain & visibility

Terrain modeling, viewsheds, hydrography, and the siting of observers and radio transmitters.

Terrain research ↗

02 / Selected publications

Papers & ideas.

All publications ↗

Implementing Simulation of Simplicity for geometric degeneracies

Abstract & BibTeX

We describe how to implement Simulation of Simplicity (SoS). SoS removes geometric degeneracies in point-in-polygon queries, polyhedron intersection, map overlay, and other 2D and 3D geometric and spatial algorithms by determining the effect of adding non-Archimedian infinitesimals of different orders to the coordinates. Then it modifies the geometric predicates to emulate that, and evaluates them in the usual arithmetic. A geometric degeneracy is a coincidence, such as a vertex of one polygon on an edge of another polygon, that would have probability approaching zero if the objects were distributed i.i.d. uniformly. However, in real data, they can occur often. Especially in 3D, there are too many types of degeneracies to reliably enumerate. But, if they are not handled, then predicates evaluate wrong, and the output topology may be wrong. We describe the theory of SoS, and how several algorithms and programs were successfully modified, including volume of the union of many cubes, point location in a 3D mesh, and intersecting 3D meshes.

@inproceedings{implementing-sos-2022,
      author = "Franklin, W. Randolph and de Magalhães, Salles Viana Gomes",
      title = "Implementing Simulation of Simplicity for geometric degeneracies",
      year = "2022",
      month = "1 Nov",
      booktitle = "4th {ACM SIGSPATIAL} International Workshop on Spatial Gems ({SpatialGems} 2022)",
      location = "Seattle, Washington"
  }

Fast parallel evaluation of exact geometric predicates on GPUs

Abstract & BibTeX

This paper presents a technique for employing high-performance computing for accelerating the exact evaluation of geometric predicates. Arithmetic filters are implemented using interval arithmetic to reduce the necessity of exact arithmetic while ensuring the results of the predicates are still exact. Furthermore, the computation with interval arithmetic is offloaded to a CUDA-enabled GPU. If the GPU detects that some results cannot be trusted, the corresponding predicates are re-evaluated in parallel on the CPU using arbitrary-precision rational numbers. As a case study, a red-blue 3D triangle intersection algorithm has been implemented. Since the intervals are implemented using floating-point numbers, the parallel computing power of GPUs for processing these numbers led to a speedup of up to 1936 times (when compared against a similar sequential implementation) in the evaluation of these predicates (and up to 414 times if the entire runnning-time of the algorithm is considered). The excellent performance associated to the exactness makes this technique suitable for accelerating geometric operations in fields such as CAD, GIS and 3D modeling.

@article{marcelo-gpu-predicates-2021,
      author = "de Matos Menezes, Marcelo and Magalhães, Salles Viana Gomes and de Oliveira, Matheus Aguilar and Franklin, W. Randolph and de Oliveira Bauer Chichorro, Rodrigo Eduardo",
      editor = "Peiro, Joaquim and Shontz, Suzanne and Viertel, Ryan",
      title = "Fast parallel evaluation of exact geometric predicates on {GPU}s",
      month = "September",
      year = "2022",
      number = "103285",
      journal = "J. Computer Aided Design",
      doi = "https://doi.org/10.1016/j.cad.2022.103285"
  }

Siting thousands of radio transmitter towers on terrains with billions of points

Abstract & BibTeX

This paper presents a system that sites (finds optimal locations for) thousands of radio transmitter towers on terrains of up to two billion elevation posts. Applications include cellphone towers, camera systems, or even mitigating environmental visual nuisances. The transmitters and receivers may be situated above the terrain. The system has been parallelized with OpenMP to run on a multicore CPU.

@misc{siting-thousands-2020,
      author = "Franklin, W. Randolph and de Magalhães, Salles Viana Gomes and Li, Wenli",
      title = "Siting thousands of radio transmitter towers on terrains with billions of points",
      year = "2020",
      eprint = "2006.16783",
      archivePrefix = "arXiv",
      primaryClass = "eess.SP"
  }

03 / Research software

Algorithms you can use.

Software archive ↗

POINT IN POLYGON / C

PNPOLY

A point-in-polygon test in eight lines of executable C, with extensive notes on its use.

Code & documentation ↗

MESH INTERSECTION

3D-EPUG-OVERLAY

Exact, parallel intersection of large triangular meshes for geometric applications.

Code & documentation ↗

3-D POINT LOCATION

PinMesh

Fast preprocessing and point-location queries in large multi-material polyhedral meshes.

Code & documentation ↗

04 / About

A career in geometry.
A community of people.

After 45 years on the RPI faculty, I retired in June 2023 and continue as an Emeritus Professor. At Quantum Geometry LLC, we design and implement parallel algorithms for computational geometry, CAD, and computational cartography.

The accomplishments of my former students are my proudest achievement.

Teaching

Quantum computer
programming.

ECSE-4964/6964 · Course archive · Fall 2022

I created this course around my interests and skills, and taught it through Fall 2022. The material is now somewhat dated, but remains available for nonprofit research and education. I welcome a note if you find it useful.

Supporting the community

Making room for
the next generation.

Since 2022, I have privately sponsored GIS and geometry conferences that I have enjoyed and benefited from over the decades, including student travel support and GIS Cup awards.

Earlier sponsorships, 2022–2024

Thoughts on sponsoring a spatial computing contest (PDF) ↗

Beyond the office

A different kind of
spatial exploration.

In September 2023, we drove our Tesla Model Y from Albany to San Diego on a sightseeing route. The literal highlight was driving up Pikes Peak.

Map of the September 2023 drive from Albany to San Diego, showing the cross-country route and charging stops
Albany → San Diego · September 2023
17days on the road
4,183miles traveled
55charging stops
Travel photos ↗

Get in touch

Email is best.

For research, software, teaching, or a conversation about geometry.