274 research outputs found

    The three-dimensional art gallery problem and its solutions

    Get PDF
    This thesis addressed the three-dimensional Art Gallery Problem (3D-AGP), a version of the art gallery problem, which aims to determine the number of guards required to cover the interior of a pseudo-polyhedron as well as the placement of these guards. This study exclusively focused on the version of the 3D-AGP in which the art gallery is modelled by an orthogonal pseudo-polyhedron, instead of a pseudo-polyhedron. An orthogonal pseudopolyhedron provides a simple yet effective model for an art gallery because of the fact that most real-life buildings and art galleries are largely orthogonal in shape. Thus far, the existing solutions to the 3D-AGP employ mobile guards, in which each mobile guard is allowed to roam over an entire interior face or edge of a simple orthogonal polyhedron. In many realword applications including the monitoring an art gallery, mobile guards are not always adequate. For instance, surveillance cameras are usually installed at fixed locations. The guard placement method proposed in this thesis addresses such limitations. It uses fixedpoint guards inside an orthogonal pseudo-polyhedron. This formulation of the art gallery problem is closer to that of the classical art gallery problem. The use of fixed-point guards also makes our method applicable to wider application areas. Furthermore, unlike the existing solutions which are only applicable to simple orthogonal polyhedra, our solution applies to orthogonal pseudo-polyhedra, which is a super-class of simple orthogonal polyhedron. In this thesis, a general solution to the guard placement problem for 3D-AGP on any orthogonal pseudo-polyhedron has been presented. This method is the first solution known so far to fixed-point guard placement for orthogonal pseudo-polyhedron. Furthermore, it has been shown that the upper bound for the number of fixed-point guards required for covering any orthogonal polyhedron having n vertices is (n3/2), which is the lowest upper bound known so far for the number of fixed-point guards for any orthogonal polyhedron. This thesis also provides a new way to characterise the type of a vertex in any orthogonal pseudo-polyhedron and has conjectured a quantitative relationship between the numbers of vertices with different vertex configurations in any orthogonal pseudo-polyhedron. This conjecture, if proved to be true, will be useful for gaining insight into the structure of any orthogonal pseudo-polyhedron involved in many 3-dimensional computational geometrical problems. Finally the thesis has also described a new method for splitting orthogonal polygon iv using a polyline and a new method for splitting an orthogonal polyhedron using a polyplane. These algorithms are useful in applications such as metal fabrication

    Algorithms for fat objects : decompositions and applications

    Get PDF
    Computational geometry is the branch of theoretical computer science that deals with algorithms and data structures for geometric objects. The most basic geometric objects include points, lines, polygons, and polyhedra. Computational geometry has applications in many areas of computer science, including computer graphics, robotics, and geographic information systems. In many computational-geometry problems, the theoretical worst case is achieved by input that is in some way "unrealistic". This causes situations where the theoretical running time is not a good predictor of the running time in practice. In addition, algorithms must also be designed with the worst-case examples in mind, which causes them to be needlessly complicated. In recent years, realistic input models have been proposed in an attempt to deal with this problem. The usual form such solutions take is to limit some geometric property of the input to a constant. We examine a specific realistic input model in this thesis: the model where objects are restricted to be fat. Intuitively, objects that are more like a ball are more fat, and objects that are more like a long pole are less fat. We look at fat objects in the context of five different problems—two related to decompositions of input objects and three problems suggested by computer graphics. Decompositions of geometric objects are important because they are often used as a preliminary step in other algorithms, since many algorithms can only handle geometric objects that are convex and preferably of low complexity. The two main issues in developing decomposition algorithms are to keep the number of pieces produced by the decomposition small and to compute the decomposition quickly. The main question we address is the following: is it possible to obtain better decompositions for fat objects than for general objects, and/or is it possible to obtain decompositions quickly? These questions are also interesting because most research into fat objects has concerned objects that are convex. We begin by triangulating fat polygons. The problem of triangulating polygons—that is, partitioning them into triangles without adding any vertices—has been solved already, but the only linear-time algorithm is so complicated that it has never been implemented. We propose two algorithms for triangulating fat polygons in linear time that are much simpler. They make use of the observation that a small set of guards placed at points inside a (certain type of) fat polygon is sufficient to see the boundary of such a polygon. We then look at decompositions of fat polyhedra in three dimensions. We show that polyhedra can be decomposed into a linear number of convex pieces if certain fatness restrictions aremet. We also show that if these restrictions are notmet, a quadratic number of pieces may be needed. We also show that if we wish the output to be fat and convex, the restrictions must be much tighter. We then study three computational-geometry problems inspired by computer graphics. First, we study ray-shooting amidst fat objects from two perspectives. This is the problem of preprocessing data into a data structure that can answer which object is first hit by a query ray in a given direction from a given point. We present a new data structure for answering vertical ray-shooting queries—that is, queries where the ray’s direction is fixed—as well as a data structure for answering ray-shooting queries for rays with arbitrary direction. Both structures improve the best known results on these problems. Another problem that is studied in the field of computer graphics is the depth-order problem. We study it in the context of computational geometry. This is the problem of finding an ordering of the objects in the scene from "top" to "bottom", where one object is above the other if they share a point in the projection to the xy-plane and the first object has a higher z-value at that point. We give an algorithm for finding the depth order of a group of fat objects and an algorithm for verifying if a depth order of a group of fat objects is correct. The latter algorithm is useful because the former can return an incorrect order if the objects do not have a depth order (this can happen if the above/below relationship has a cycle in it). The first algorithm improves on the results previously known for fat objects; the second is the first algorithm for verifying depth orders of fat objects. The final problem that we study is the hidden-surface removal problem. In this problem, we wish to find and report the visible portions of a scene from a given viewpoint—this is called the visibility map. The main difficulty in this problem is to find an algorithm whose running time depends in part on the complexity of the output. For example, if all but one of the objects in the input scene are hidden behind one large object, then our algorithm should have a faster running time than if all of the objects are visible and have borders that overlap. We give such an algorithm that improves on the running time of previous algorithms for fat objects. Furthermore, our algorithm is able to handle curved objects and situations where the objects do not have a depth order—two features missing from most other algorithms that perform hidden surface removal

    Quasiconvex Programming

    Full text link
    We define quasiconvex programming, a form of generalized linear programming in which one seeks the point minimizing the pointwise maximum of a collection of quasiconvex functions. We survey algorithms for solving quasiconvex programs either numerically or via generalizations of the dual simplex method from linear programming, and describe varied applications of this geometric optimization technique in meshing, scientific computation, information visualization, automated algorithm analysis, and robust statistics.Comment: 33 pages, 14 figure

    Minkowski Sum Construction and other Applications of Arrangements of Geodesic Arcs on the Sphere

    Full text link
    We present two exact implementations of efficient output-sensitive algorithms that compute Minkowski sums of two convex polyhedra in 3D. We do not assume general position. Namely, we handle degenerate input, and produce exact results. We provide a tight bound on the exact maximum complexity of Minkowski sums of polytopes in 3D in terms of the number of facets of the summand polytopes. The algorithms employ variants of a data structure that represents arrangements embedded on two-dimensional parametric surfaces in 3D, and they make use of many operations applied to arrangements in these representations. We have developed software components that support the arrangement data-structure variants and the operations applied to them. These software components are generic, as they can be instantiated with any number type. However, our algorithms require only (exact) rational arithmetic. These software components together with exact rational-arithmetic enable a robust, efficient, and elegant implementation of the Minkowski-sum constructions and the related applications. These software components are provided through a package of the Computational Geometry Algorithm Library (CGAL) called Arrangement_on_surface_2. We also present exact implementations of other applications that exploit arrangements of arcs of great circles embedded on the sphere. We use them as basic blocks in an exact implementation of an efficient algorithm that partitions an assembly of polyhedra in 3D with two hands using infinite translations. This application distinctly shows the importance of exact computation, as imprecise computation might result with dismissal of valid partitioning-motions.Comment: A Ph.D. thesis carried out at the Tel-Aviv university. 134 pages long. The advisor was Prof. Dan Halperi

    Courbure discrète : théorie et applications

    Get PDF
    International audienceThe present volume contains the proceedings of the 2013 Meeting on discrete curvature, held at CIRM, Luminy, France. The aim of this meeting was to bring together researchers from various backgrounds, ranging from mathematics to computer science, with a focus on both theory and applications. With 27 invited talks and 8 posters, the conference attracted 70 researchers from all over the world. The challenge of finding a common ground on the topic of discrete curvature was met with success, and these proceedings are a testimony of this wor

    Boolean operations on 3D selective Nef complexes : data structure, algorithms, optimized implementation, experiments and applications

    Get PDF
    Nef polyhedra in d-dimensional space are the closure of half-spaces under boolean set operations. Consequently, they can represent non-manifold situations, open and closed sets, mixed-dimensional complexes, and they are closed under all boolean and topological operations, such as complement and boundary. The generality of Nef complexes is essential for some applications. In this thesis, we present a new data structure for the boundary representation of three-dimensional Nef polyhedra and efficient algorithms for boolean operations. We use exact arithmetic to avoid well known problems with floating-point arithmetic and handle all degeneracies. Furthermore, we present important optimizations for the algorithms, and evaluate this optimized implementation with extensive experiments. The experiments supplement the theoretical runtime analysisNef-Polyeder sind d-dimensionale Punktmengen, die durch eine endliche Anzahl boolescher Operationen über Halbräumen generiert werden. Sie sind abgeschlossen hinsichtlich boolescher und topologischer Operationen. Als Konsequenz daraus können sie nicht-mannigfaltige Situationen, offene und geschlossene Mengen und gemischt-dimensionale Komplexe darstellen. Die Allgemeinheit von Nef-Komplexen ist unentbehrlich für einige Anwendungen. In dieser Doktorarbeit stellen wir eine neue Datenstruktur vor, die eine Randdarstellung von dreidimensionalen Nef-polyedern und Algorithmen für boolesche Operationen realisiert. Wir benutzen exakte Arithmetik um die bekannten Probleme mit Gleitkommaarithmetik und Degeneriertheiten zu vermeiden. Außerdem präsentieren wir wichtige Optimierungen der Algorithmen und bewerten die optimierte Implementierung an Hand umfassender Experimente. Weitere Experimente belegen die theoretische Laufzeitanalyse und vergleichen unsere Implementation mit dem kommerziellen CAD kernel ACIS. ACIS is meistens bis zu sechs mal schneller, aber es gibt auch Beispiele bei denen ACIS scheitert. Nef-Polyeder können bei einer Vielzahl von Anwendungen eingesetzt werden. Wir präsentieren einfache Implementationen zweier Anwendungen - von der visuellen Hülle und von der Minkowski-Summe zwei abgeschlossener Nef-Polyeder

    The Star Unfolding from a Geodesic Curve

    Get PDF
    An unfolding of a polyhedron P is obtained by `cutting' the surface of P in such a way that it can be flattened into the plane into a single polygon. For most practical and theoretic applications, it is desirable for an algorithm to produce an unfolding which is simple, that is, non-overlapping. Currently, two methods for unfolding which guarantee non-overlap for convex polyhedra are known, the source unfolding, and the star}unfolding. Both methods involve computing shortest paths from a single source point on the polyhedron's surface. In this thesis, we attempt to prove non-overlap of a variant called the geodesic star unfolding. This unfolding, much like the star unfolding, is computed by cutting shortest paths from each vertex to λ, a geodesic curve on the surface of a convex polyhedron P, and also cutting λ itself. Non-overlap of this case was conjectured by Demaine and Lubiw (2011). We are unsuccessful in completely proving non-overlap, though we present a number of partial results, and discuss some areas for future study. We first develop a new proof for non-overlap of the star unfolding from a point. The original proof of non-overlap was given by Aronov and O'Rourke (2009). This new proof uses a partitioning of the unfolding around the ridge tree. Each edge of the ridge tree serves as a base edge to a pair of congruent triangles; in this way, the whole unfolding is decomposed into these pairs which are called kites. We prove non-overlap by showing that pairwise, no two kites in the unfolding overlap each other, by a method which bounds the surface angle of the source images to either side of any path through the ridge tree. In addition to its simplicity compared to the previous proof, this new method easily generalizes to prove non-overlap for some cases of the star unfolding from geodesic curves. Specifically, we show non-overlap for two classes of geodesic curves, geodesic loops, and fully-extended S-shaped geodesics, by showing that the surface angle of the source images in those two cases are bounded. We also investigate a class of curves called fully-extended C-shaped geodesics for which the proof cannot hold directly. We show some specific cases where we are able to create a supplementary proof to show non-overlap, though non-overlap for the class as a whole remains unproven

    Lattice cleaving: a multimaterial tetrahedral meshing algorithm with guarantees

    Get PDF
    pre-printWe introduce a new algorithm for generating tetrahedral meshes that conform to physical boundaries in volumetric domains consisting of multiple materials. The proposed method allows for an arbitrary number of materials, produces high-quality tetrahedral meshes with upper and lower bounds on dihedral angles, and guarantees geometric fidelity. Moreover, the method is combinatoric so its implementation enables rapid mesh construction. These meshes are structured in a way that also allows grading, to reduce element counts in regions of homogeneity. Additionally, we provide proofs showing that both element quality and geometric fidelity are bounded using this approach

    Fundamental Computational Geometry on the GPU

    Get PDF
    Ph.DDOCTOR OF PHILOSOPH
    corecore