{"title":"Robust algorithms in a program library for geometric computation","authors":"Peter Schorn","doi":"10.3929/ETHZ-A-000604568","DOIUrl":"https://doi.org/10.3929/ETHZ-A-000604568","url":null,"abstract":"Computational geometry, dealing with the efficient algoritiimic solution of geometric problems, has developed many algorithms and techniques. This dissertation deals with me question of how to produce good software for geometric computation. Using 2-dimensional problems, we present three novel techniques for coping with the problem of robustness, i.e. how to create algoritiims that correctly process even degenerate input data. In the axiomatic approach we implement die geometric primitives using rounded arithmetic such diat the essential properties needed to maintain an algorithm's invariant are preserved. In the method of explicitly detecting nearly degenerate configurations we treat diose configurations as exact degeneracies, often resulting in a provably robust implemen¬ tation. A topological argument reduces the precision requirements for an exact result in certain plane sweep algorithms. We describe the design and implementation of the XYZ GeoBench (experimental geometrY Zurich), a workbench for geometric computation. The GeoBench is a programming environment, implemented in an object oriented language, for the rapid prototyping of geometric software and a testbed for experiments. Algorithm animation is used for demonstration purposes and debugging. As an answer to the problem of robust geometric software we offer die XYZ Library which is based on the GeoBench and has been tested in various experiments.","PeriodicalId":148053,"journal":{"name":"Informatik-Dissertationen ETH Zürich","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132210332","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}