Databases for Robotics Applications Thomas Young Presentation Outline Introduction Database Solutions Spatio Temporal Databases TinyDB Introduction Various types of Database Applications Bipedal Robot Research Obstacle Database Sensor Networks Moving Objects Database Bipedal Robot Research Training a bipedal robot to walk Bipedal Robot Research Bipedal Robot Research Components Servo Motors Sensors PD Motor Control Neural Net Database Bipedal Robot Research Learning Process Obstacle Database Database of natural obstacles CFIT Problem in Aviation Terrain Awareness System Obstacle Database Obstacle Database eTAWS Database of man made obstacles including bridges, towers, overpasses, hydro lines, buildings Obstacle Database Standard relational database Spatial representations stored as vectors or rasters using an extended spatial type Uses SQL queries Sensor Networks Networks of either homogeneous or heterogenous sensor types Sensors characterized by power, computation, communications Networks characterized by configuration, types of sensors Harvard Motes Smart Dust Sensor Networks Homogeneous Sensor Network Moving Objects Database Database of objects that change position in time and space Tracking of vehicles, assets, people, animals Fleet tracking Scientific research Surveillance Moving Objects Database Vehicular Traffic Moving Objects Database Firefighting Assets Moving Objects Database Ground Forces Database Solutions NOSQL TinyDB Spatio Temporal Databases NOSQL No ACID guarantee Distributed fault tolerant architecture Do not follow a fixed schema Performance and scalability TinyDB Sensor Networks with nodes running TinyOS Runs TinySQL (subset of SQL) Extensible framework for attributes, commands, and aggregates Interacts with sensor network as a whole Multiple concurrent queries Entire sensor network is infinitely long table Tuples consist of individual sensor and attributes TinyDB Energy Cost of a query that selects 100 tuples is less than the cost of a single packet transmission Spatio Temporal Databases Objects that move in space and time Handle queries that index by an object, time or time interval, physical location t t y y x x (a) a moving point (b) a moving and shrinking region Spatio Temporal Databases Query Examples Find all objects in a given area at a given time Find all objects in a given area between these times Find which object was closest to position X at time T How many objects passed through area A at time T Given spatio-temporal relationships R1 and R2, find out which pairs intersected between T1 and T2 Spatio Temporal Databases R Trees Spatio Temporal Databases Historical R Tree y o1 x o3 o2 t1 t2 t3 t4 Query region Q tnow t Spatio Temporal Databases How to store “now”? Use a large value… Long lived objects will have very long MBRs, difficult to cluster Extensive overlap and empty space bad query performance for specific queries Use partiallly persistent R-tree Multi-version Binary Tree applied to R-tree Spatio Temporal Databases Trees at consecutive timestamps may share branches to save space Spatio Temporal Databases Trees at consecutive timestamps may share branches to save space. Spatio Temporal Databases HR-trees answer timestamp queries very efficiently. A timestamp query degenerates into a spatial window query handled by the corresponding R-tree at the query timestamp. Not quite efficient: Expensive space consumption. A node needs to be duplicated even when only one object moves. Interval query processing is inefficient. Although redundancy (from duplication) is necessary to maintain good timestamp query performance, it is excessive in HR-trees Spatio Temporal Databases What if you want to track only one object? Use artificial deletes to get rid of others Approximate the object using many small MBRs This uses more space Instead split the areas into minimum number of MBRs that contain the objects that move the most If object has constant velocity then equidistant splits Given x splits the best splits can be determined in O(xlogn) time THE END THANK YOU References TinyDB Design Code and Implementations, Prakash Achutaramaiah Implementation and Research Issues in Query Processing for Wireless Sensor Networks, Wei Hong, Sam Madden An On-Line Biped Mini-Robot Motion Learning Using Neural Network and Database Management, Shih Fen Cheng, 2011 Seventh International Conference on Natural Computing Towards Sensor Database Systems, Bonnet Phillipe, Gehrke Johannes, Seshadri Praveen Distributed Sensor Databases for Multi-robot Teams, Cowley Anthony, Hwa-Chow Hsu, Camillo J, Taylor Future Robotics Database Management System Alonw With Cloud TPS, Vijaykumar S, Sarvanakumar S G, International Journal on Cloud Computing: Services and Architecture (IJCCSA), Vol 1, No.3, Novermber 2011 [Tao & Papadias 01]:MV3R-Tree: A Spatio-Temporal Access Method for Timestamp and Interval Queries. VLDB 2001: 431-440