Contextualized Robot Navigation David Vincent Lu Washington University in St
Total Page:16
File Type:pdf, Size:1020Kb
Washington University in St. Louis Washington University Open Scholarship Engineering and Applied Science Theses & McKelvey School of Engineering Dissertations Winter 12-15-2014 Contextualized Robot Navigation David Vincent Lu Washington University in St. Louis Follow this and additional works at: https://openscholarship.wustl.edu/eng_etds Part of the Engineering Commons Recommended Citation Lu, David Vincent, "Contextualized Robot Navigation" (2014). Engineering and Applied Science Theses & Dissertations. 62. https://openscholarship.wustl.edu/eng_etds/62 This Dissertation is brought to you for free and open access by the McKelvey School of Engineering at Washington University Open Scholarship. It has been accepted for inclusion in Engineering and Applied Science Theses & Dissertations by an authorized administrator of Washington University Open Scholarship. For more information, please contact [email protected]. WASHINGTON UNIVERSITY IN ST. LOUIS School of Engineering and Applied Science Department of Computer Science and Engineering Thesis Examination Committee: William D. Smart, Co-Chair Robert Pless, Co-Chair Chris Gill Caitlin Kelleher Bilge Mutlu Annamaria Pileggi Contextualized Robot Navigation by David V. Lu A dissertation presented to the Graduate School of Arts & Sciences of Washington University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY December 2014 Saint Louis, Missouri c 2014, David V. Lu Contents List of Figures :::::::::::::::::::::::::::::::::::::: v List of Tables ::::::::::::::::::::::::::::::::::::::: vii Acknowledgments :::::::::::::::::::::::::::::::::::: viii Abstract :::::::::::::::::::::::::::::::::::::::::: x 1 Problem Statement ::::::::::::::::::::::::::::::::: 1 1.1 The Difficulty of Human-Robot Interaction . .1 1.2 \Robotic Motion" . .5 1.2.1 Prior Work . .6 1.3 Creating a Theory of Mind with Acting . .7 1.4 Robot Platforms . .9 1.4.1 The Robot Operating System - ROS . .9 1.4.2 Robots . 11 1.4.3 Navigation . 12 2 Robots in Theatre :::::::::::::::::::::::::::::::::: 14 2.1 Robot Theatre Work . 14 2.2 Physical Action . 16 2.3 The Chinese Room and The Stage . 17 2.4 The Ontology of Robot Theatre . 20 2.5 Practical Crossover . 23 3 Theatre as an Implicit Model ::::::::::::::::::::::::::: 26 3.1 Non-contextual Movement . 27 3.1.1 Viewpoints: A Definition . 27 3.1.2 The Robot Acting Partner . 30 3.1.3 Robots and Viewpoints . 31 3.1.4 Transition . 33 3.2 Contextualized Movement . 34 3.2.1 Composition of Forgiveness . 34 3.2.2 Performance . 37 3.2.3 Lessons . 38 3.3 Theatre as a Structure . 39 3.3.1 Three Act Structure for Navigation . 41 ii 3.4 Conclusions from Theatre . 43 3.4.1 Collaboration . 44 4 The State of Contextualized Navigation :::::::::::::::::::: 45 4.1 ROS Navigation . 46 4.1.1 Why ROS Navigation . 46 4.1.2 Algorithmic Design . 46 4.2 Navigation in Practice . 48 4.3 Related Work . 51 5 Towards More Efficient Navigation for Robots and Humans :::::::: 54 5.1 Improving Navigation Interactions . 54 5.2 System Implementation . 57 5.2.1 Lasers for People Detection . 57 5.2.2 Gaze Behavior . 57 5.2.3 Socially Aware Costmaps . 58 5.3 Experimental Design . 60 5.3.1 Procedure . 60 5.3.2 Hypotheses . 63 5.4 Results . 64 5.4.1 Statistical Analysis . 66 5.5 Discussion . 67 6 Tuning Cost Functions for Social Navigation ::::::::::::::::: 71 6.1 Problem Statement . 71 6.2 Mathematical Properties of Gaussian Obstacles . 73 6.2.1 Theory . 74 6.3 Results from Simulation . 76 6.4 Results using ROS Navigation . 78 6.5 Tuning in Two Dimensions . 79 6.6 Discussion . 80 7 Layered Costmaps for Context-Sensitive Navigation :::::::::::: 83 7.1 The Monolithic Costmap . 83 7.2 Layered Costmaps Data Structure and Update Algorithm . 86 7.3 Benefits . 89 7.4 Implementation . 90 7.4.1 Problems with the Previous Implementation . 91 7.4.2 Layered Costmap Implementation . 93 7.5 Discussion . 94 8 Layers in the Costmap ::::::::::::::::::::::::::::::: 96 8.1 Standard Layers . 96 iii 8.2 New Functionality . 100 8.3 Human-Robot Interaction Layers . 102 8.4 What There Are Not Layers For . 104 9 Engineering the Costmap ::::::::::::::::::::::::::::: 105 9.1 General Requirements . 105 9.1.1 What is a costmap? . 105 9.1.2 Data Sources . 108 9.2 Starting Point . 111 9.2.1 Original ROS Implementation . 111 9.2.2 Limitations of Implementation . 114 9.2.3 Extending the Approach . 116 9.3 Convergence on Layered Costmaps . 117 9.3.1 How the Values Change . 117 9.3.2 Which Values Change . 118 9.4 The Layered Costmap Pattern . 118 9.4.1 Implementation Changes . 119 10 Contextualized Navigation ::::::::::::::::::::::::::::: 121 References ::::::::::::::::::::::::::::::::::::::::: 123 Appendix A Debugging the Local Planner ::::::::::::::::::: 132 A.1 Related Work . 133 A.2 Local Planning . 133 A.2.1 DWA Planner . 134 A.3 Discontinuities . 136 A.3.1 Continuous Obstacle Checking Problem . 136 A.3.2 The End Path Problem . 137 A.4 Wrap Up . 139 iv List of Figures 1.1 The Uncanny Valley . .3 1.2 Primary Robot Platforms . 12 2.1 The Ontology of Robot Theatre . 21 3.1 Performances with Human Actors and Robot Actor . 37 4.1 Structure of Dual Costmap Navigation Algorithm . 47 4.2 Dual Costmap Algorithm in Practice . 49 4.3 Inflation Cost Function . 50 5.1 An Example of Standard vs. Social Navigation . 56 5.2 Three Paths with Three Different Costmaps . 59 5.3 Map of office where experiment was held. Experimenter sat in Room A, and participants traveled from Room A to Room C. The robot moved along the hall, occasionally stopping at Room B. The hallway is 17 meters long and approximately 1.5 meters wide. 61 5.4 Human Speed in User Study . 65 5.5 Relative Speeds in User Study . 65 6.1 Types of Paths Around Gaussian Obstacles . 73 6.2 Relative Cost of Paths for Different P=A ratios . 76 (a) P=A = pπ=2e ............................... 76 (b) P=A = 0:57 ................................. 76 (c) P=A < 0:57 ................................. 76 (d) P =0 .................................... 76 6.3 Heatmaps for Path Distances . 77 6.4 Results using ROS Navigation . 79 6.5 Tuning Costmaps in Confined Spaces . 81 7.1 Overlapping Costmap Costs . 85 7.2 Layered Costmap Update Algorithm . 87 8.1 Static Map Layer . 97 8.2 Obstacles Layer . ..