Efficient Integration of Road Maps Eliyahu Safra Technion Haifa, Israel safra@technion.ac.il Yaron Kanza University of Toronto Toronto, Canada yaron@cs.toronto.edu Yehoshua Sagiv The Hebrew University Jerusalem, Israel sagiv@cs.huji.aci.il Yerach Doytsher Technion Haifa, Israel doytsher@technion.ac.il ABSTRACT Integration of two road maps is finding a matching between pairs of objects that represent, in the maps, the same real- world road. Several algorithms were proposed in the past for road-map integration; however, these algorithms are not efficient and some of them even require human feedback. Thus, they are not suitable for many important applica- tions (e.g., Web services) where efficiency, in terms of both time and space, is crucial. This paper presents two efficient algorithms for integrating maps in which roads are repre- sented as polylines. The main novelty of these algorithms is in using only the locations of the endpoints of the poly- lines rather than trying to match whole lines. Experiments on real-world data are given, showing that our approach of integration based on matching merely endpoints is efficient and accurate (that is, it provides high recall and precision). Categories and Subject Descriptors: H.2.8 [Database Management]: Database Applications— Spatial databases and GIS General Terms: Algorithms, Experimentation Keywords: Road map, spatial network, integration, match- ing polylines, location-based join, corresponding objects 1. INTRODUCTION Digital road maps represent electronically a network of roads. They can be used in applications such as finding the shortest route between two given locations, providing an es- timation of the time it takes to get from one location to another, etcetera. Such applications may need to use both spatial and non-spatial properties of roads. Integration of two road maps makes it possible for the applications to use properties of a road that are represented in only one of the maps, and at the same time use properties that are repre- sented only in the other map. For example, consider two This author was supported by an NSERC grant. This author was supported by The Israel Science Founda- tion (Grants 96/01 and 893/05). Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ACM-GIS’06, November 10–11, 2006, Arlington, Virginia, USA. Copyright 2006 ACM 1-59593-529-0/06/0011 ...$5.00. road maps of some city. Suppose that only the first road map includes buildings in the city with the roads leading to them while only the second road map includes, for each segment of a road, the direction of the traffic and the speed limit in this segment. An integration is needed for estimat- ing the minimal time it takes to get from a certain building in the city to another building. In many cases, the efficiency of the integration process is crucial. One case is of applications provided by a Web server that should handle many users concurrently. A second ex- ample is of applications that run in devices with a limited processing power, e.g., a hand-held device such as a PDA. In these cases, when called by a person walking or driving a car, the applications should provide the answer immediately (say, within a few seconds). Several methods for integrating road maps were proposed in the past [4, 5, 9]; however, these methods are not efficient. They are designed for finding answers that are as accurate as possible without taking efficiency into consideration. Hence, these methods require a long computation time and they are not suitable for scenarios where efficiency is crucial. In this paper, we consider maps in which roads are repre- sented by polygonal lines (polylines). An integration of two such maps is essentially a matching between pairs of poly- lines that represent the same road in the two maps. The novelty of our approach is in matching roads based merely on locations of endpoints of polylines rather than trying to match whole lines. There are two important advantages to our approach. First, integration can be done efficiently. Secondly, we want our techniques to be general in the sense that they would not require the existence of any particular property of roads, other than endpoint locations. Differently from other properties, locations always exists for objects in spatial databases. Also, locations have the same semantics in different maps, so we can compare them without worrying that we will end up comparing unrelated properties. In par- ticular, we do not even use the topology of the road network. This is because using the topology may increase the com- plexity of the computation. Furthermore, using the topology can be problematic when information is incomplete. For ex- ample, we may need to match an intersection of three roads in one map with an intersection of four roads in a second map, due to the fact that some roads are represented in only one of the maps. It may seem an easy task to match roads using their end- point locations. However, this is not the case for the follow- ing reasons. First, locations are not accurate, so usually two maps represent the same real-world entity in two different