Path Planning Algorithms Under the Link-Distance Metric

Total Page:16

File Type:pdf, Size:1020Kb

Path Planning Algorithms Under the Link-Distance Metric Dartmouth College Dartmouth Digital Commons Dartmouth College Ph.D Dissertations Theses and Dissertations 2-1-2006 Path Planning Algorithms under the Link-Distance Metric David Phillip Wagner Dartmouth College Follow this and additional works at: https://digitalcommons.dartmouth.edu/dissertations Part of the Computer Sciences Commons Recommended Citation Wagner, David Phillip, "Path Planning Algorithms under the Link-Distance Metric" (2006). Dartmouth College Ph.D Dissertations. 16. https://digitalcommons.dartmouth.edu/dissertations/16 This Thesis (Ph.D.) is brought to you for free and open access by the Theses and Dissertations at Dartmouth Digital Commons. It has been accepted for inclusion in Dartmouth College Ph.D Dissertations by an authorized administrator of Dartmouth Digital Commons. For more information, please contact [email protected]. Path Planning Algorithms under the Link-Distance Metric A Thesis Submitted to the Faculty in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science by David Phillip Wagner DARTMOUTH COLLEGE Hanover, New Hampshire February, 2006 Examining Committee: (co-chair) Robert L. (Scot) Drysdale III (co-chair) Clifford Stein Amit Chakrabarti Joseph S. B. Mitchell Charles K. Barlowe Dean of Graduate Studies c Copyright by David Phillip Wagner 2006 Abstract of the Dissertation Path Planning Algorithms under the Link-Distance Metric by David Phillip Wagner Doctor of Philosophy in Computer Science Dartmouth College, Hanover, NH February 2006 Professor Robert Scot Drysdale, Co-Chair Professor Clifford Stein, Co-Chair The Traveling Salesman Problem and the Shortest Path Problem are famous problems in computer science which have been well studied when the objective is measured using the Euclidean distance. Here we examine these geometric problems under a different set of optimization criteria. Rather than considering the total distance traversed by a path, this thesis looks at reducing the number of times a turn is made along that path, or equivalently, at reducing the number of straight lines in the path. Minimizing this objective value, known as the link-distance, is useful in situations where continuing in a given direction is cheap, while turning is a relatively expensive op- eration. Applications exist in VLSI, robotics, wireless communications, space travel, and other fields where it is desirable to reduce the number of turns. This thesis examines rectilinear and non-rectilinear variants of the Traveling Salesman Problem under this metric. The objective of these problems is to find a path visiting a set of points which has the smallest number of bends. A 2-approximation algorithm is given for the rectilinear problem, while for the non-rectilinear problem, an O(log n)-approximation algorithm is given. The latter problem is also shown to be NP-Complete. ii Next, the Rectilinear Minimum Link-Distance Problem, also known as the Minimum Bends Path Problem, is considered. Here the objective is to find a rectilinear path between two points among rectilinear obstacles which has the minimum number of bends, while avoiding passing through any of the obstacles. The problem has been well studied in two dimensions, but is relatively unexplored in higher dimensions. A main result of this thesis is an O(n5=2 log n) time algorithm solving this problem in three dimensions. Previously known algorithms have had worst-case running times of Ω(n3). This algorithm requires a data structure that supports efficient operations on pointsets within rectangular regions of the Euclidean plane. We design a new data structure, which is a variation on the segment tree, in order to support these operations. Finally, an implementation of the data structure and of the algorithm solving the Min- imum Link-Distance Problem demonstrates their experimental running times and ease of implementation. iii Biographical Sketch David Phillip Wagner was born in Aberdeen, Maryland on February 5, 1971. At the age of three his family moved to Bloomfield, Connecticut where he lived until the age of eighteen. In August 1989 he left home to attend Colgate University in Hamilton, NY. At Colgate he earned a Bachelor of Arts degree with a dual concentration in Computer Science and Mathematics, working under advisors Phil Mulry in Computer Science and Tom Tucker in Mathematics, in May 1993. From there he went on to pursue a Master of Science degree in Computer Science at the State University of New York at Stony Brook, working under advisor Steven Skiena, and graduating in May 1995. After finishing his Master's degree he worked for three years in New York City. The first six months of these were spent working at Wanderlust Interactive in SoHo, and the remainder was spent working downtown in the financial district for JYACC/Prolifics. In September 1998 he returned to the academia to pursue a Doctorate in Computer Science at Dartmouth College, under co-advisors Clifford Stein and Robert Scot Drysdale. It is perhaps interesting to note that although Colgate calls itself a liberal arts college, it retains the title of “University” due to a small graduate program which awards about ten Master's degrees each year. And, although Dartmouth has an active graduate program including schools of business, medicine, engineering, and dozens of fields in the arts and sciences, it retains the title of “College” due to the outcome of an 1818 Supreme Court case where a state run Dartmouth University was prevented from replacing Dartmouth College. iv Acknowledgments I would like to extend my heartfelt thanks to my thesis committee for their advice and the time they have spent considering this dissertation, and for the many fruitful discussions they have provided. I would especially like to thank my co-advisor Robert Scot Drysdale whose fastidious attention to the details of my work have proven invaluable, especially in Chapters 4 and 5, and my co-advisor Clifford Stein who inspired me to pursue this line of research in a moment of creativity and who advised me throughout the writing of Chapter 3. I must also thank Neal Young, who guided me through the very earliest incarnations of this research, especially that appearing in Sections 3.3 and 3.4.1. Along the way, many talented researchers have given their time and advice to further the results in this thesis. These include Michel X. Goemans (Section 3.4.1), Takeshi Tokuyama (Section 4.4.2), David R. Karger (Chapter 2), Jon L. Bentley (Section 7.2.1), Gunter¨ Rote (Section 7.2.1), Tatsuo Ohtsuki (Section 1.1), Joseph S. B. Mitchell (Sections 1.1, 3.6.5, and 7.2.4), Valentin Polishchuk (Section 1.1), and Robert Fitch (Chapters 2 and 4). I am grateful for their advice which illuminated many deficiencies, and allowed many further results within this work. I am deeply indebted to numerous faculty who have encouraged, enlightened, and in- spired me through the years, and who have taught me to appreciate a lifelong pursuit of learning. I would especially thank Prasad Jayanti, Javed Aslam, Amit Chakrabarti, and Kenneth Bogart from Dartmouth, Steven Skiena and Joseph Mitchell from SUNY Stony v Brook, and Laura Sanchis, Phil Mulry, Tom Tucker, and Dan Saracino from Colgate. It would not be an exaggeration to say that every one of these people has substantially changed my life for the better. I am very grateful to the NSF Summer Institute Program, for their sponsorship of re- search summers at IBM Tokyo Research Laboratory in Yamato, Japan, and at Korea Ad- vanced Institute of Science and Technology (KAIST) in Taejon, Korea. The memories I have from these trips will undoubtedly last a lifetime. I consider myself incredibly fortunate to have met many researchers abroad who were kind enough to invite me into their labo- ratories in order to broaden my understanding of how research is done, including Takao Nishizeki from Tohoku University, Takeshi Tokuyama from Tohoku University, Satoru Iwata from Tokyo University, Tetsuo Asano from JAIST, Kyung-Yong Chwa from KAIST, Kyunsoo Park from Seoul National Universtiy, Mordecai Golin from HKUST, Tak-Wah Lam from Hong Kong Universtiy, and Der-Tsai Lee from Academia Sincia. Additionally, the faculty of the Department of Japanese at Dartmouth and at Stony Brook have been very gracious in repeatedly permitting me to audit their classes. I am grateful especially to Mayumi Ishida, Ikuko Watanabe, Dennis Washburn, and James Dorsey. Without their help I surely would have forgotten a fascinating and beautiful language. Many clubs and organizations I have participated in while at Dartmouth have made my time here rich and enjoyable. I am fortunate to have been involved with the Handel So- ciety, the Dartmouth Japan Society, the Dartmouth Argentine Tango Society, Pound Bang Slash Intramural Hockey Team, Korean Miniversity, UFX Ultimate Frisbee, MEaD, and the Dartmouth Bridge Club, among others. Thanks to Bhavnesh at the India Queen, Ken and the uvScene, the Tabard, the Hop, and the Lebanon Opera House for providing many ways to warm up those cold New Hampshire nights. My friends at Dartmouth have undoubtedly made this a more memorable place. Ed, Chilann, Marina, You-Shan, Luma, my two years in North Park were some of the best of vi my life. LeeAnn, Ming, Kazuhiro, Zhengyi, this department has been a richer place thanks to you. Guanling, Tony, Clint, Mark, Lea, Song, I'm fortunate to have had such wonderful officemates. Ji Yeon, James, Kim, thanks for many helpful language lessons. George, Sue Mei, Helen, and all of DJS, I hope we can meet at another karaoke bar someday. Wendy, Ashley, Yulie, I'll miss seeing you at those medieval feasts. Liya, Katie, Brian, Barry, Karen, Daisy, good luck with the Argentine Tango club. I especially want to thank some friends I've made outside of Dartmouth. Robyn, Lau- ren, and everyone at the Center for Cartoon Studies in White River Junction, I hope you and your fledgling school will be a great success.
Recommended publications
  • A New Approach to the Minimum Cut Problem
    A New Approach to the Minimum Cut Problem DAVID R. KARGER Massachusetts Institute of Technology, Cambridge, Massachusetts AND CLIFFORD STEIN Dartmouth College, Hanover, New Hampshire Abstract. This paper presents a new approach to finding minimum cuts in undirected graphs. The fundamental principle is simple: the edges in a graph’s minimum cut form an extremely small fraction of the graph’s edges. Using this idea, we give a randomized, strongly polynomial algorithm that finds the minimum cut in an arbitrarily weighted undirected graph with high probability. The algorithm runs in O(n2log3n) time, a significant improvement over the previous O˜(mn) time bounds based on maximum flows. It is simple and intuitive and uses no complex data structures. Our algorithm can be parallelized to run in 51# with n2 processors; this gives the first proof that the minimum cut problem can be solved in 51#. The algorithm does more than find a single minimum cut; it finds all of them. With minor modifications, our algorithm solves two other problems of interest. Our algorithm finds all cuts with value within a multiplicative factor of a of the minimum cut’s in expected O˜(n2a) time, or in 51# with n2a processors. The problem of finding a minimum multiway cut of a graph into r pieces is solved in expected O˜(n2(r21)) time, or in 51# with n2(r21) processors. The “trace” of the algorithm’s execution on these two problems forms a new compact data structure for representing all small cuts and all multiway cuts in a graph. This data structure can be efficiently transformed into the more standard cactus representation for minimum cuts.
    [Show full text]
  • Introduction to Algorithms, 3Rd
    Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest Clifford Stein Introduction to Algorithms Third Edition The MIT Press Cambridge, Massachusetts London, England c 2009 Massachusetts Institute of Technology All rights reserved. No part of this book may be reproduced in any form or by any electronic or mechanical means (including photocopying, recording, or information storage and retrieval) without permission in writing from the publisher. For information about special quantity discounts, please email special [email protected]. This book was set in Times Roman and Mathtime Pro 2 by the authors. Printed and bound in the United States of America. Library of Congress Cataloging-in-Publication Data Introduction to algorithms / Thomas H. Cormen ...[etal.].—3rded. p. cm. Includes bibliographical references and index. ISBN 978-0-262-03384-8 (hardcover : alk. paper)—ISBN 978-0-262-53305-8 (pbk. : alk. paper) 1. Computer programming. 2. Computer algorithms. I. Cormen, Thomas H. QA76.6.I5858 2009 005.1—dc22 2009008593 10987654321 Index This index uses the following conventions. Numbers are alphabetized as if spelled out; for example, “2-3-4 tree” is indexed as if it were “two-three-four tree.” When an entry refers to a place other than the main text, the page number is followed by a tag: ex. for exercise, pr. for problem, fig. for figure, and n. for footnote. A tagged page number often indicates the first page of an exercise or problem, which is not necessarily the page on which the reference actually appears. ˛.n/, 574 (set difference), 1159 (golden ratio), 59, 108 pr. jj y (conjugate of the golden ratio), 59 (flow value), 710 .n/ (Euler’s phi function), 943 (length of a string), 986 .n/-approximation algorithm, 1106, 1123 (set cardinality), 1161 o-notation, 50–51, 64 O-notation, 45 fig., 47–48, 64 (Cartesian product), 1162 O0-notation, 62 pr.
    [Show full text]
  • DISCRETE MATHEMATICS for COMPUTER SCIENTISTS This Page Intentionally Left Blank DISCRETE MATHEMATICS for COMPUTER SCIENTISTS
    DISCRETE MATHEMATICS FOR COMPUTER SCIENTISTS This page intentionally left blank DISCRETE MATHEMATICS FOR COMPUTER SCIENTISTS Clifford Stein Columbia University Robert L. Drysdale Dartmouth College Kenneth Bogart Addison-Wesley Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montreal Toronto Delhi Mexico City Sao Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo Editor in Chief: Michael Hirsch Editorial Assistant: Stephanie Sellinger Director of Marketing: Margaret Whaples Marketing Coordinator: Kathryn Ferranti Managing Editor: Jeffrey Holcomb Production Project Manager: Heather McNally Senior Manufacturing Buyer: Carol Melville Media Manufacturing Buyer: Ginny Michaud Art Director: Linda Knowles Cover Designer: Elena Sidorova Cover Art: Veer Media Project Manager: Katelyn Boller Full-Service Project Management: Bruce Hobart, Laserwords Composition: Laserwords Credits and acknowledgments borrowed from other sources and reproduced, with permission, in this textbook appear on appropriate page within text. The programs and applications presented in this book have been included for their instructional value. They have been tested with care, but are not guaranteed for any particular purpose. The publisher does not offer any warranties or representations, nor does it accept any liabilities with respect to the programs or applications. Copyright © 2011. Pearson Education, Inc., publishing as Addison-Wesley, 501 Boylston Street, Suite 900, Boston, Massachusetts 02116. All rights reserved. Manufactured in the United States of America. This publication is protected by Copyright, and permission should be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise.
    [Show full text]
  • Thomas H. Cormen Current Position Research Interests Education Honors and Awards
    Thomas H. Cormen Department of Computer Science 6211 Sudikoff Laboratory Dartmouth College Hanover, NH 03755-3510 (603) 646-2417 [email protected] http://www.cs.dartmouth.edu/thc/ Current Position Professor of Computer Science. Research Interests Algorithm engineering, parallel computing, speeding up computations with high latency, Gray codes. Education Massachusetts Institute of Technology, Cambridge, Massachusetts Ph.D. in Electrical Engineering and Computer Science, February 1993. Thesis: “Virtual Memory for Data-Parallel Computing.” Advisor: Charles E. Leiserson. Minor: Engineering management and entrepreneurship. S.M. in Electrical Engineering and Computer Science, May 1986. Thesis: “Concentrator Switches for Routing Messages in Parallel Computers.” Advisor: Charles E. Leiserson. Princeton University, Princeton, New Jersey B.S.E. summa cum laude in Electrical Engineering and Computer Science, June 1978. Honors and Awards ACM Distinguished Educator, 2009. McLane Family Fellow, Dartmouth College, 2004–2005. Jacobus Family Fellow, Dartmouth College, 1998–1999. Dartmouth College Class of 1962 Faculty Fellowship, 1995–1996. Adopted Member, Dartmouth College Class of 1962, 2015. Professional and Scholarly Publishing Award in Computer Science and Data Processing, Association of American Publishers, 1990. Distinguished Presentation Award, 1987 International Conference on Parallel Processing, St. Charles, Illinois. Best Presentation Award, 1986 International Conference on Parallel Processing, St. Charles, Illinois. National Science Foundation Fellowship. Elected to Phi Beta Kappa, Tau Beta Pi, Eta Kappa Nu. Prepared on March 28, 2020. 1 Professional Experience Dartmouth College, Hanover, New Hampshire Chair, Department of Computer Science, July 2009–July 2015. Professor, Department of Computer Science, July 2004–present. Director of the Dartmouth Institute for Writing and Rhetoric, July 2007–June 2008.
    [Show full text]
  • Education Professional Appointments Publications
    Philip N. Klein Professor Department of Computer Science January 2010 Education • Ph.D. in Computer Science, Massachusetts Institute of Technology, 1988. Dissertation title: Efficient Parallel Algorithms for Planar, Chordal, and Interval Graphs, supervised by Professor David Shmoys. Minor in Numerical Analysis. • S.M. in Computer Science, Massachusetts Institute of Technology, 1986. Thesis title: An Effi- cient Parallel Algorithm for Planarity, supervised by Professor David Shmoys. • A.B., summa cum laude in Applied Mathematics, Harvard College, 1984. Thesis title: Parallel Recognition of Context-Free Languages, supervised by Professor John Reif. Professional Appointments • 2000—: Professor, Brown University • 2008: Visiting Scientist, MIT CSAIL • 2007—: Research Affiliate, MIT CSAIL • 1994–2000: Associate Professor, Brown University • 1989–1994: Assistant Professor, Brown University • 1993: Visiting Scientist, Princeton University • 1992-93: Visiting Scholar, MIT Mathematics Department • 1992-94: Consultant, NEC Research Institute • 1990: Consultant, Xerox Palo Alto Research Center • 1988-89: Postdoctoral fellow, Harvard University • Summer 1987: AT&T Bell Labs, visitor Publications Conference Articles • “Node-weighted Steiner tree and group Steiner tree in planar graphs,” Erik D. Demaine, Mo- hammadTaghi Hajiaghayi and Philip Klein, Proceedings of the 36th International Colloquium on Automata, Languages and Programming, (2009). • “Shortest paths in directed planar graphs with negative lengths: a linear-space O(n log2 n)-time algorithm,” with
    [Show full text]
  • EXACT and APPROXIMATION ALGORITHMS for NETWORK FLOW and DISJOINT-PATH PROBLEMS a Thesis Submitted to the Faculty
    EXACT AND APPROXIMATION ALGORITHMS FOR NETWORK FLOW AND DISJOINT-PATH PROBLEMS A Thesis Submitted to the Faculty in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science by Stavros G. Kolliopoulos DARTMOUTH COLLEGE Hanover, New Hampshire August 31, 1998 Examining Committee: (chair) Clifford Stein Prasad Jayanti Fillia Makedon Aravind Srinivasan Neal E. Young Roger D. Sloboda Dean of Graduate Studies Copyright by Stavros G. Kolliopoulos 1998 ii Abstract Network flow problems form a core area of Combinatorial Optimization. Their signif- icance arises both from their very large number of applications and their theoretical importance. This thesis focuses on efficient exact algorithms for network flow prob- lems in P and on approximation algorithms for NP -hard variants such as disjoint paths and unsplittable flow. Given an n-vertex, m-edge directed network G with real costs on the edges we give new algorithms to compute single-source shortest paths and the minimum mean cycle. Our algorithm is deterministic with O(n2 log n) expected running time over a large class of input distributions. This is the first strongly polynomial algorithm in over 35 years to improve upon some aspect of the O(nm) running time of the Bellman-Ford shortest-path algorithm. In the single-source unsplittable flow problem, we are given a network G, a source vertex s and k commodities with sinks t and real-valued demands ρ , 1 i k. i i ≤ ≤ We seek to route the demand ρi of each commodity i along a single s-ti flow path, so that the total flow routed across any edge e is bounded by the edge capacity ue.
    [Show full text]
  • Data Structures
    Data structures PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Thu, 17 Nov 2011 20:55:22 UTC Contents Articles Introduction 1 Data structure 1 Linked data structure 3 Succinct data structure 5 Implicit data structure 7 Compressed data structure 8 Search data structure 9 Persistent data structure 11 Concurrent data structure 15 Abstract data types 18 Abstract data type 18 List 26 Stack 29 Queue 57 Deque 60 Priority queue 63 Map 67 Bidirectional map 70 Multimap 71 Set 72 Tree 76 Arrays 79 Array data structure 79 Row-major order 84 Dope vector 86 Iliffe vector 87 Dynamic array 88 Hashed array tree 91 Gap buffer 92 Circular buffer 94 Sparse array 109 Bit array 110 Bitboard 115 Parallel array 119 Lookup table 121 Lists 127 Linked list 127 XOR linked list 143 Unrolled linked list 145 VList 147 Skip list 149 Self-organizing list 154 Binary trees 158 Binary tree 158 Binary search tree 166 Self-balancing binary search tree 176 Tree rotation 178 Weight-balanced tree 181 Threaded binary tree 182 AVL tree 188 Red-black tree 192 AA tree 207 Scapegoat tree 212 Splay tree 216 T-tree 230 Rope 233 Top Trees 238 Tango Trees 242 van Emde Boas tree 264 Cartesian tree 268 Treap 273 B-trees 276 B-tree 276 B+ tree 287 Dancing tree 291 2-3 tree 292 2-3-4 tree 293 Queaps 295 Fusion tree 299 Bx-tree 299 Heaps 303 Heap 303 Binary heap 305 Binomial heap 311 Fibonacci heap 316 2-3 heap 321 Pairing heap 321 Beap 324 Leftist tree 325 Skew heap 328 Soft heap 331 d-ary heap 333 Tries 335 Trie
    [Show full text]
  • Fundamental Data Structures
    Fundamental Data Structures PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Thu, 17 Nov 2011 21:36:24 UTC Contents Articles Introduction 1 Abstract data type 1 Data structure 9 Analysis of algorithms 11 Amortized analysis 16 Accounting method 18 Potential method 20 Sequences 22 Array data type 22 Array data structure 26 Dynamic array 31 Linked list 34 Doubly linked list 50 Stack (abstract data type) 54 Queue (abstract data type) 82 Double-ended queue 85 Circular buffer 88 Dictionaries 103 Associative array 103 Association list 106 Hash table 107 Linear probing 120 Quadratic probing 121 Double hashing 125 Cuckoo hashing 126 Hopscotch hashing 130 Hash function 131 Perfect hash function 140 Universal hashing 141 K-independent hashing 146 Tabulation hashing 147 Cryptographic hash function 150 Sets 157 Set (abstract data type) 157 Bit array 161 Bloom filter 166 MinHash 176 Disjoint-set data structure 179 Partition refinement 183 Priority queues 185 Priority queue 185 Heap (data structure) 190 Binary heap 192 d-ary heap 198 Binomial heap 200 Fibonacci heap 205 Pairing heap 210 Double-ended priority queue 213 Soft heap 218 Successors and neighbors 221 Binary search algorithm 221 Binary search tree 228 Random binary tree 238 Tree rotation 241 Self-balancing binary search tree 244 Treap 246 AVL tree 249 Red–black tree 253 Scapegoat tree 268 Splay tree 272 Tango tree 286 Skip list 308 B-tree 314 B+ tree 325 Integer and string searching 330 Trie 330 Radix tree 337 Directed acyclic word graph 339 Suffix tree 341 Suffix array 346 van Emde Boas tree 349 Fusion tree 353 References Article Sources and Contributors 354 Image Sources, Licenses and Contributors 359 Article Licenses License 362 1 Introduction Abstract data type In computing, an abstract data type (ADT) is a mathematical model for a certain class of data structures that have similar behavior; or for certain data types of one or more programming languages that have similar semantics.
    [Show full text]
  • Introduction to Algorithms.Pdf
    Instructor’s Manual by Thomas H. Cormen to Accompany Introduction to Algorithms Third Edition by Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest Clifford Stein The MIT Press Cambridge, Massachusetts London, England Instructor’s Manual to Accompany Introduction to Algorithms, Third Edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein Published by the MIT Press. Copyright c 2009 by The Massachusetts Institute of Technology. All rights reserved. No part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written consent of The MIT Press, including, but not limited to, network or other electronic storage or transmission, or broadcast for distance learning. Contents Revision History R-1 Preface P-1 Chapter 2: Getting Started Lecture Notes 2-1 Solutions 2-17 Chapter 3: Growth of Functions Lecture Notes 3-1 Solutions 3-7 Chapter 4: Divide-and-Conquer Lecture Notes 4-1 Solutions 4-17 Chapter 5: Probabilistic Analysis and Randomized Algorithms Lecture Notes 5-1 Solutions 5-9 Chapter 6: Heapsort Lecture Notes 6-1 Solutions 6-10 Chapter 7: Quicksort Lecture Notes 7-1 Solutions 7-9 Chapter 8: Sorting in Linear Time Lecture Notes 8-1 Solutions 8-10 Chapter 9: Medians and Order Statistics Lecture Notes 9-1 Solutions 9-10 Chapter 11: Hash Tables Lecture Notes 11-1 Solutions 11-16 Chapter 12: Binary Search Trees Lecture Notes 12-1 Solutions 12-15 Chapter 13: Red-Black Trees Lecture Notes 13-1 Solutions 13-13 Chapter 14:
    [Show full text]
  • Introduction to Algorithms Second Edition by Thomas H
    Instructor’s Manual by Thomas H. Cormen Clara Lee Erica Lin to Accompany Introduction to Algorithms Second Edition by Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest Clifford Stein The MIT Press Cambridge, Massachusetts London, England McGraw-Hill Book Company Boston Burr Ridge, IL Dubuque, IA Madison, WI New York San Francisco St. Louis Montr´eal Toronto Instructor’s Manual by Thomas H. Cormen, Clara Lee, and Erica Lin to Accompany Introduction to Algorithms, Second Edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein Published by The MIT Press and McGraw-Hill Higher Education, an imprint of The McGraw-Hill Companies, Inc., 1221 Avenue of the Americas, New York, NY 10020. Copyright c 2002 by The Massachusetts Institute of Technology and The McGraw-Hill Companies, Inc. All rights reserved. No part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written consent of The MIT Press or The McGraw-Hill Companies, Inc., in- cluding, but not limited to, network or other electronic storage or transmission, or broadcast for distance learning. Contents Revision History R-1 Preface P-1 Chapter 2: Getting Started Lecture Notes 2-1 Solutions 2-16 Chapter 3: Growth of Functions Lecture Notes 3-1 Solutions 3-7 Chapter 4: Recurrences Lecture Notes 4-1 Solutions 4-8 Chapter 5: Probabilistic Analysis and Randomized Algorithms Lecture Notes 5-1 Solutions 5-8 Chapter 6: Heapsort Lecture Notes 6-1 Solutions 6-10 Chapter 7:
    [Show full text]
  • IEOR Faculty Profiles 2011-2012
    IEOR Faculty Profiles 2011-2012 Daniel Bienstock Professor Director of Doctoral Programs, IEOR Director of Computational Optimization Research Center [email protected] Professor Daniel Bienstock first joined Columbia University's Industrial Engineering and Operations Research Department in 1989. Professor Bienstock teaches courses on integer programming and optimization. Before joining Columbia University, Professor Bienstock was involved in Combinatorics and Optimization Research at Bellcore. He has also participated in collaborative research with Bell Laboratories (Lucent), AT&T Laboratories, Tellium, Inc. and Lincoln Laboratory on various network design problems. Professor Bienstock's teaching and research interests include combinatorial optimization and integer programming, parallel computing and applications to networking. Professor Bienstock has published in journals such as Math Programming, SIAM and Math of OR. Jose Blanchet Assistant Professor [email protected] Professor Jose Blanchet joined the IEOR Department in Spring 2008. His research interests include applied probability, computational finance, MCMC, queueing theory, rare-event analysis, simulation methodology, and risk theory. Professor Blanchet received his bachelor degree from Instituto Tecnológico Autónomo de México for Applied Mathematics and Actuarial Science and his masters and Ph.D. from Stanford University for Operations Research. Previously he has taught at Harvard University. Amongst other distinguished awards and honors, Professor Blanchet won the Presidential Early Career Award for Scientists and Engineers (PECASE) in 2010, the highest honor that any young scientist or engineer can receive from the United States government. Mark Broadie Professor of Business [email protected] Professor Mark Broadie joined Columbia University's Industrial Engineering and Operations Research Department in 1983. His main research areas include the pricing of derivative securities, risk management, and portfolio optimization.
    [Show full text]
  • Ph.D. Dissertation
    Parallel Algorithms and Dynamic Data Structures on the Graphics Processing Unit: a warp-centric approach By SAMAN ASHKIANI DISSERTATION Submitted in partial satisfaction of the requirements for the degree of DOCTOR OF PHILOSOPHY in Electrical and Computer Engineering in the OFFICE OF GRADUATE STUDIES of the UNIVERSITY OF CALIFORNIA DAVIS Approved: Chair John D. Owens Nina Amenta Venkatesh Akella Committee in Charge 2017 -i- To my parents, Mina and Farshad; and my brother, Soheil. -ii- CONTENTS List of Figures viii List of Tables ix Abstract.........................................x Acknowledgments.................................... xii 1 Introduction1 1.1 Overview.....................................1 1.1.1 Our contributions:............................6 1.2 Preliminaries: the Graphics Processing Unit...................8 1.2.1 CUDA Terminology...........................8 1.2.2 GPU Memory Hierarchy.........................9 1.2.3 Warp-wide communications....................... 10 1.2.4 CUDA Built-in intrinsics......................... 11 2 Parallel Approaches to the String Matching Problem on the GPU 12 2.1 Introduction.................................... 12 2.2 Prior work..................................... 15 2.3 Preliminaries................................... 16 2.3.1 Serial Rabin-Karp............................ 16 2.3.2 Cooperative Rabin-Karp......................... 17 2.4 Divide-and-Conquer Strategy........................... 19 2.4.1 Theoretical analysis with finite processors................ 20 2.4.2 Theoretical Conclusions........................
    [Show full text]