94 research outputs found
Подход к решению взаимосвязанных задач геометрического моделирования
В статье рассматривается один подход к решению некоторых задач вычислительной геометрии. Этот
подход позволяет путем сведения задач вычислительной геометрии к задаче построения диаграммы
Вороного разработать параллельно-рекурсивный алгоритм их решения. В основе идеи алгоритма
лежит схема «разделяй и властвуй».У роботі розглядається один підхід розв’язання деяких задач обчислювальної геометрії. Цей підхід
дозволяє шляхом зведення задач близькості та опуклої оболонки до діаграми Вороного розробити
паралельно-рекурсивний алгоритм їх розв’язання. В основі ідеї алгоритму лежить техніка
«розподіляй та пануй». Враховуючи те, що перший етап алгоритму спільний для усіх задач, то в
роботі завершальний етап алгоритму продемонстровано на прикладі задачі «усі найближчі сусіди».In the paper one approach to solution of some problems of computational geometry is considered. This
approach allows us to develop a parallel-recursive algorithm for solving the problem of proximity and the
problem of the convex hull, reducing them to Voronoi diagram. The algorithm bases on the «divide-andconquer
» technique. The first, «divide», stage is common for all problems so for a problem «all nearest
neighbors» the procedure of merge is offered
Computational Geometry Applications
Computational geometry is an integral part of mathematics and computer science deals with the algorithmic solution of geometry problems. From the beginning to today, computer geometry links different areas of science and techniques, such as the theory of algorithms, combinatorial and Euclidean geometry, but including data structures and optimization. Today, computational geometry has a great deal of application in computer graphics, geometric modeling, computer vision, and geodesic path, motion planning and parallel computing. The complex calculations and theories in the field of geometry are long time studied and developed, but from the aspect of application in modern information technologies they still are in the beginning. In this research is given the applications of computational geometry in polygon triangulation, manufacturing of objects with molds, point location, and robot motion planning
The projector algorithm: a simple parallel algorithm for computing Voronoi diagrams and Delaunay graphs
The Voronoi diagram is a certain geometric data structure which has numerous
applications in various scientific and technological fields. The theory of
algorithms for computing 2D Euclidean Voronoi diagrams of point sites is rich
and useful, with several different and important algorithms. However, this
theory has been quite steady during the last few decades in the sense that no
essentially new algorithms have entered the game. In addition, most of the
known algorithms are serial in nature and hence cast inherent difficulties on
the possibility to compute the diagram in parallel. In this paper we present
the projector algorithm: a new and simple algorithm which enables the
(combinatorial) computation of 2D Voronoi diagrams. The algorithm is
significantly different from previous ones and some of the involved concepts in
it are in the spirit of linear programming and optics. Parallel implementation
is naturally supported since each Voronoi cell can be computed independently of
the other cells. A new combinatorial structure for representing the cells (and
any convex polytope) is described along the way and the computation of the
induced Delaunay graph is obtained almost automatically.Comment: This is a major revision; re-organization and better presentation of
some parts; correction of several inaccuracies; improvement of some proofs
and figures; added references; modification of the title; the paper is long
but more than half of it is composed of proofs and references: it is
sufficient to look at pages 5, 7--11 in order to understand the algorith
Parallelization of Plane Sweep Based Voronoi Construction with Compiler Directives
Voronoi diagram construction is a common and fundamental problem in computational geometry and spatial computing. Numerous sequential and parallel algorithms for Voronoi diagram construction exists in literature. This paper presents a multi-threaded approach where we augment an existing sequential implementation of Fortune\u27s planesweep algorithm with compiler directives. The novelty of our fine-grained parallel algorithm lies in exploiting the concurrency available at each event point encountered during the algorithm. On the Intel Xeon E5 CPU, our shared-memory parallelization with OpenMP achieves around 2x speedup compared to the sequential implementation using datasets containing 2k-128k sites
OpenACC Based GPU Parallelization of Plane Sweep Algorithm for Geometric Intersection
Line segment intersection is one of the elementary operations in computational geometry. Complex problems in Geographic Information Systems (GIS) like finding map overlays or spatial joins using polygonal data require solving segment intersections. Plane sweep paradigm is used for finding geometric intersection in an efficient manner. However, it is difficult to parallelize due to its in-order processing of spatial events. We present a new fine-grained parallel algorithm for geometric intersection and its CPU and GPU implementation using OpenMP and OpenACC. To the best of our knowledge, this is the first work demonstrating an effective parallelization of plane sweep on GPUs.
We chose compiler directive based approach for implementation because of its simplicity to parallelize sequential code. Using Nvidia Tesla P100 GPU, our implementation achieves around 40X speedup for line segment intersection problem on 40K and 80K data sets compared to sequential CGAL library
Load-Balancing for Parallel Delaunay Triangulations
Computing the Delaunay triangulation (DT) of a given point set in
is one of the fundamental operations in computational geometry.
Recently, Funke and Sanders (2017) presented a divide-and-conquer DT algorithm
that merges two partial triangulations by re-triangulating a small subset of
their vertices - the border vertices - and combining the three triangulations
efficiently via parallel hash table lookups. The input point division should
therefore yield roughly equal-sized partitions for good load-balancing and also
result in a small number of border vertices for fast merging. In this paper, we
present a novel divide-step based on partitioning the triangulation of a small
sample of the input points. In experiments on synthetic and real-world data
sets, we achieve nearly perfectly balanced partitions and small border
triangulations. This almost cuts running time in half compared to
non-data-sensitive division schemes on inputs exhibiting an exploitable
underlying structure.Comment: Short version submitted to EuroPar 201
Algorithms for Stable Matching and Clustering in a Grid
We study a discrete version of a geometric stable marriage problem originally
proposed in a continuous setting by Hoffman, Holroyd, and Peres, in which
points in the plane are stably matched to cluster centers, as prioritized by
their distances, so that each cluster center is apportioned a set of points of
equal area. We show that, for a discretization of the problem to an
grid of pixels with centers, the problem can be solved in time , and we experiment with two slower but more practical algorithms and
a hybrid method that switches from one of these algorithms to the other to gain
greater efficiency than either algorithm alone. We also show how to combine
geometric stable matchings with a -means clustering algorithm, so as to
provide a geometric political-districting algorithm that views distance in
economic terms, and we experiment with weighted versions of stable -means in
order to improve the connectivity of the resulting clusters.Comment: 23 pages, 12 figures. To appear (without the appendices) at the 18th
International Workshop on Combinatorial Image Analysis, June 19-21, 2017,
Plovdiv, Bulgari
- …