Voronoi tessellation, also known as Voronoi diagram, is an important computational geometry technique that has applications in various scientific disciplines. It involves dividing a given space into regions based on the proximity to a set of points. Autodifferentiation is a powerful tool for solving optimization tasks. Autodifferentiation assumes constructing a computational graph that allows to compute gradients using backpropagation algorithm. However, often the Voronoi tessellation remains the only non-differentiable part of a pipeline, prohibiting end-to-end differentiation. We present the method for autodifferentiation of the 2D Voronoi tessellation. The method allows one to construct the Voronoi tessellation and pass gradients, making the construction end-to-end differentiable. We provide the implementation details and present several important applications. To the best of our knowledge this is the first autodifferentiable realization of the Voronoi tessellation providing full set of Voronoi geometrical parameters in a differentiable way.
翻译:Voronoi 镶嵌(又称Voronoi图)是一种重要的计算几何技术,在多个科学学科中具有应用价值。它通过基于到一组点的邻近度将给定空间划分为若干区域。自动微分是解决优化问题的强大工具,其核心在于构建计算图以利用反向传播算法计算梯度。然而,Voronoi 镶嵌常常成为流水线中唯一的不可微分环节,从而阻碍端到端的微分计算。我们提出了一种针对二维Voronoi 镶嵌的自动微分方法。该方法允许构建Voronoi 镶嵌并传递梯度,使其构建过程实现端到端可微分。我们提供了实现细节,并展示了多项重要应用。据我们所知,这是首个以可微分方式提供完整Voronoi几何参数集的自动微分Voronoi 镶嵌实现。