Experimenting with Hierarchical Wayfinding - CiteSeerX

1 downloads 0 Views 71KB Size Report
and George Taylor. 1. 1Department of Geomatics, University of Newcastle,. Newcastle upon Tyne NE1 7RU, United Kingdom. [email protected] ...
Experimenting with Hierarchical Wayfinding

Technical report 011999 Dept. of Geomatics, University of Newcastle upon Tyne

Adrijana Car1, Henny Mehner2 and George Taylor1 1 Department of Geomatics, University of Newcastle, Newcastle upon Tyne NE1 7RU, United Kingdom [email protected] [email protected] 2 Department of Photogrammetry and Remote Sensing, Technical University of Dresden, D-01062 Dresden, Germany [email protected]

Abstract. Hierarchical wayfinding algorithms are becoming important tools in querying the shortest paths in spatial graph databases, which is particularly important for advanced applications like Geographic Information Systems (GIS). Although proven useful, these algorithms become inefficient due to the growing size of graphs. Thus, there is a need to modify the existing strategies or develop new ones to overcome this deficiency. It challenges the selection of relevant data further used by people and, in turn, by computers for a particular analytical purpose. This paper investigates a graph-subgraph structural hierarchy as a mechanism imposed on an input data set, allowing a human or computer to access only a subset of the data necessary for a task like path retrieval. Consideration of the main principles for the design of such hierarchies raises a number of theoretical and practical research questions related to spatial information, in particular hierarchization parameters for networks and the notion of satisficing results produced by hierarchical wayfinding algorithms.

Keywords: hierarchical wayfinding, hierarchical spatial reasoning, graph-subgraph, structural hierarchy, satisficing results, abstraction, hierarchy

1

1 Introduction The shortest path problem arises in various disciplines, and therefore, has received a lot of attention in the literature (see [2] for a review and analysis). Many of the developed algorithms have been used for querying spatial graph databases [10] in advanced applications such as geographic information systems (GIS) and timecritical Intelligent Transportation Systems (ITS) [6]. Although proven useful, these algorithms are often inefficient due to the growing size of graphs. This is where the need for modifying the existing strategies or developing new ones to improve performance of these algorithms emerged from. In this paper we discus the use of hierarchy to overcome this problem. In path finding and navigation, hierarchy has been used for a subdivision of the underlying network into smaller ones (a hierarchical graph) speeding up path computation. Nevertheless, the resulting paths are not always guaranteed to be optimal [19]. Our approach considers hierarchy as a method humans use for selecting relevant data in spatial tasks like wayfinding. To design a conceptual model for hierarchical wayfinding, we used the hierarchical spatial reasoning method to combine human knowledge and experience in wayfinding with standard shortest path algorithms. Detailed discussion of the theoretical background and the concept can be found in [3]. We have been developing a computational model for hierarchical wayfinding using the formal specification of the concept as a guideline. The model has two main components: a hierarchical graph contains a set of subgraphs, each of which is formed according to some criteria like road classes, travel speed, scenery, or a combination thereof; a hierarchical wayfinding algorithm consists of a generalpurpose shortest path algorithm (in our case the Dijkstra algorithm) and a set of reasoning rules for path retrieval in the hierarchical graph. The basic idea of the hierarchical wayfinding is the stepwise reduction of the original graph causing the general-purpose shortest path algorithm to operate on a subgraph. This idea follows the assumption that hierarchical wayfinding occurs in a subgraph with higherspeed/time segments [5]. Hence, hierarchy is used to reduce the graph size and so significantly decreases the path retrieval time, but at loss of optimality. The computational model is used for testing of hierarchical wayfinding in different kinds of synthetic networks. We expect the test results to allow for deriving hierarchization parameters for spatial networks and to examine the notion of satisficing results. Consideration of the main principles for the design of such hierarchies raises a number of theoretical and practical research questions related to spatial information in general, and spatial hierarchical reasoning in particular. Our long-term goal is to build a tool for network-hierarchy simulations of real-world networks [4]. This paper is structured as follows: after an overview of relevant work w/r to hierarchical path search (section 2), we briefly describe the concept of hierarchical wayfinding (section 3), discuss the preliminary experiment results (section 4), and

2

finish with a summary of the presented work, conclusions and an agenda for future work (section 5).

2 Related work: Hierarchical Path Query Theory and database communities introduced numerous methods and strategies to improve performance of the algorithms through optimising the use of storage and cost of computation. Precomputation of paths is often used to speed up path retrieval [1]. Queries are then efficiently answered by simply doing lookups on the precomputed paths producing an optimal path. This approach is a trade-off between computing paths on-the-fly and precomputing all paths. An important aspect of shortest path determination deals with selection of relevant data. Best-first search or heuristics1, e.g. in A* algorithm, are used to eliminate nodes which do not satisfy some heuristic measure like a distance or cost, or some rule of thumb. A* is considered to be significantly important to the research of path finding problems in ITS due to its good performance [21]. Another approach applies hierarchy mainly to partition a base graph into smaller graphs, and so save storage and decrease computing time. Two groups of hierarchical algorithms emerge: the one guarantees optimality of path retrieval [14, 20] while the other does not [19, 13]. In all suggested solutions precomputed paths in a two-level graph are used, except for Huang et al. [13] who propose a multi-level graph which classifies edges according to road types with preference of high-speed roads. Jung and Pramanik [16] propose another hierarchical multi-graph model for representing topographic maps, which is based on the assumption that humans usually read maps in an increasing scale order. The path retrieval is faster due to precomputed paths, but the optimality is not discussed. The authors touch an important modelling aspect relevant also for our study: consideration of human factors in solutions for the shortest path problem. This is in line with research by Elliot and Lesk [9] on algorithmic solutions producing optimal results which are non-satisfactory for humans. Their problem on giving driving directions combining a street map and yellow pages, involves both human factors (choice of the best kind of route) and algorithmic problems (choice of a good shortest path algorithm). The investigation shows that humans combine different search methods, suggesting hierarchical search as the right answer, “…as it shares many elements with what people do, and is reasonably comparable with computer requirements” (p. 261). Our model computes paths on-the-fly in a graph-subgraph hierarchical structure with multiple levels. Hierarchization is based on the assumptions that people divide graphs in smaller subgraphs according to some classification criteria like speed or 1

“Heuristics are criteria, methods, or principles for deciding which among several alternative courses of action promises to be the most effective in order to achieve some goal. They represent compromises between two requirements: the need to make such criteria simple and, at the same time, the desire to see them discriminate correctly between good and bad choices” [17, p.3].

3

travel time. In such a case wayfinding occurs in smaller but relevant dataset. The basics of our model are briefly discussed in the following section.

3 Hierarchical Wayfinding - Basic Concepts The conceptual model of hierarchical wayfinding, based on the theory of hierarchical spatial reasoning, describes the hierarchical structure of a road network and explains how the reasoning process progresses on such a structure. The modelling process follows the requirements of hierarchical reasoning with structural hierarchies. 1. A model for the non-hierarchical case is designed containing a single-level model of a road network and a general-purpose shortest path algorithm. 2. A hierarchical structure is introduced, and a set of rules is given stating how to form subgraphs, when to change levels, and how to turn single-level partial paths into a final result. 3. The results achieved by the hierarchical algorithm are compared and analysed to the results achieved by the non-hierarchical algorithm. 4. The performance of the hierarchical algorithm is analysed and compared to the performance of the non-hierarchical algorithm. The requirements 3 and 4 represent quality control for reasoning with structural hierarchies. The comparison of the results is necessary because the errors produced in hierarchically organised systems approximate the ones observed in humans performing similar operations (e.g. Reno-San Diego case [23]). Hence, hierarchical spatial reasoning follows patterns of human cognition, as it computes approximations either to compensate for missing information or to simplify reasoning by selecting only necessary information [11]. Therefore, hierarchical algorithms producing sub-optimal solutions are also of interest. The rising question then is “What is a good enough result?” rather than “What is the optimal solution?” This is similar to the economics’ term satisficing, related to discovering any qualified object with as little search effort as possible [22]. [24] address this issue showing that hierarchical spatial reasoning can compute increasingly better results and stops the computation when the good-enough result is achieved. In the next subsections we briefly discuss the graph structure and algorithms for both cases. A formal specification of the model is available as program code written in the functional programming language Gofer, and its full version can be found in [3].

4

3.1 Graph-Subgraph Structural Hierarchy The ontology2 for the non-hierarchical case contains nodes, edges and a graph, all being on a single level. The graph (1) is embedded in Euclidean space allowing for edge length computation; (2) is planar excluding the cases like underpasses and overpasses; (3) is bidirectional allowing for traversing edges in both directions; and (4) has edges with assigned weights. This graph is abstracted from any further detail that a road network may have, in order to preserve the simplicity of the model. The ontology of the hierarchical case contains the ontology of the nonhierarchical case enriched by hierarchical levels. The flat-case ontology must be included so that the flat algorithm can be applied to each level independently. The “bottom-up” hierarchization method creates a graph-subgraph structural hierarchy where, given a set of objects on level i, only a subset of these objects is selected for the higher level i-1 (i-Li+1..L-1). In a single level two groups of nodes can be distinguished: (nv)i – number of effectively visited nodes, and (nnv)i - number of notvisited nodes. We are looking for a number of nodes which are effectively visited by the HWA. Hence, we write: n = Σ ni, i=0..L-1 ni = (nv)i + (nnv)i,

=>

(nv)i = ni - (nnv)i

A number of visited nodes in a level (nv)i seems to cover the local neighbourhood3 of its current start node, and is significantly smaller than the total number of nodes in a graph. This is achieved through an additional condition which terminates the NHWA search each time a node with access to a higher level is reached. Thus, for a 2 2 subgraph of level i ((nv)i) is expected to be constant, c=((nv)i) . Theoretically, if Dijkstra runs in O(c) per level, then HWA achieves linear complexity time O(L*c).

3

“Local neighborhood” of a node in this context contains its neighboring nodes at the same level and with no access to the higher ones.

6

4 Evaluation of Experimental Results We implemented the hierarchical graph structure and the wayfinding algorithm in C++ (Microsoft Visual Studio). All calculations are conducted on a PC - Pentium 233MHz, physically on the same machine under the same circumstances. Different kinds of synthetic graphs are used in the experiment in order to derive parameters for spatial hierarchization in networks (Table 1). We assume that the size and form of a graph, number of levels, and level ratio are the good candidates for quality control of hierarchical reasoning in graphs. We expect the preliminary results to confirm this assumption. We use three forms of graphs: random graphs have no particular form, e.g. a countryside road network; radial graphs have a centre node whose outgoing edges are usually the more important roads, e.g. the Viennese road network; Manhattan graph whose roads form a perpendicular and often regular grid, e.g. road networks in numerous US cities. The graphs G11 and G41 are smaller versions of G12 and G42 respectively. The edges in each graph can be classified according to the average travel speeds: 50:80:130 km/h, 50:100:130 km/h, 1:10:100 km/h, which are used as a hierarchization criterion. The speeds correspond to the ratios of 1:1.6:1.6, 1:2:1.3 and 1:10:10 between the levels in a 3-level hierarchy. Table 1. Synthetic graphs used in the experiment.

Graph Form No. Id Nodes G11 random 41 G12 random 101 G2 random 97 G3 radial 207 G41 Manhattan 280 G42 Manhattan 351

No. Edges 81 177 204 393 445 574

No. Levels 3 3 3 3 3 3

Dist. 1.414 1.0 1.0 1.0 1.0 1.0

Min. edge R1 (h) R2 (h) R3 (h) 0.0350 0.028 0.067 0.0125 0.010 0.022 0.0125 0.010 0.060 0.0125 0.010 0.020 0.0076 0.0076 0.010 0.0076 0.0076 0.010

The evaluation of the results follows the third and the fourth HSR requirement (see section 3). First we analyse paths computed by HWA and NHWA w/r to their total weight and sequence of nodes in a resulting path. In our case a total path weight represents average travel time. Level ratios influence the path weight, and therefore, are implicitly included in the evaluation. We then compare the path search times of HWA and NHWA. This evaluation is performed for each graph w/r to its size and number of levels. We use the following terms: “hierarchical path” for a path produced by HWA and “flat path” for a path produced by NHWA; R1, R3, R3 for level ratios “1:1.6”, “1:2”, “1:10” respectively; “node sequence” for a sequence of nodes in a resulting path.

7

4.1 Analysis of the resulting paths The experiment has shown that our approach does not guarantee path optimality, which is expressed through the differences between path weights produced by HWA and NHWA. However, its sub-optimality rate (SOR) can be measured. Let WNHij be the weight of the optimal path between the nodes i and j, and WHij be the weight of a path retrieved by HWA, then the difference between these paths is: SOR = |WHij - WNHij| / WNHij * 100% We randomly select 10 pairs of start-goal nodes with intention to spatially cover the graph space, and to use all possible pairs of levels. Then we run HWA and NHWA to compute the resulting paths, and do this for the same pairs of nodes. For each path we calculate its SOR by comparing the hierarchical path weight against the optimal (non-hierarchical) path weight. Figure 1a shows the experimental results of average SORs per graph. HWA behaves very similar in each graph allowing us to focus on relevant generalised summary. Fig. 1. (a) Sub-optimality rate for graphs; (b) Satisficing results?

Path weight differece / minimal edge

Sub-optimality rate / level ratio 50:80:130

50:100:130

50:80:130

1:10:100

70

50:100:130

1:10:100

20.00

60 50

15.00

40 10.00

30 20

5.00

10 0

0.00 G11

G12

G2

G3

G raphs

G41

G42

G11

G12

G2

G3

G raphs

G41

G42

Total path weight. HWA produces on average 50% longer paths than NHWA for ratios R1 and R2, but only 2% longer paths for the ratio R3. For R3 both paths have the same length and contain the same sequence of nodes in most cases. The lowest average SOR is found for the radial graph (47%, 45% and 0% for R1, R2 and R3 respectively). Otherwise, it appears similar for the random and Manhattan graphs (50%-60% for R1 and R2, and 4% for R3). Total path weight w/r to a graph size (tested on G11, G12 and G41, G42). HWA finds identical paths independently of the graph size. The only difference is in the total path weight due to different ratios. Node sequence (hierarchical vs. flat path). Cases in which HWA and NHWA produce identical paths for R1 and R2 are rare. However, an identical path found for R1 also appears for R2 and R3. In identical paths the start and goal node are at the same level, mostly “0-0”. The “1-1” case is found once in G11, where both nodes

8

also have access to the root level. The “2-2” case appears only in G3, where nodes are close to the centre, and do not necessarily have access to the higher level. The number of identical paths significantly changes for R3 becoming the majority, e.g. in G11 10 out of 10, in G3 10 out of 13, and in G42 4 out of 10. Node sequence (hierarchical path w/r to level ratios). In every graph, the majority of hierarchical paths contains the same node sequence independently of the level ratio. Small differences are noticed for the random (G3) and Manhattan graph (G41, G42) where the hierarchical path preserves the general direction, but nodes in a local neighbourhood of the start/goal node are slightly mismatched. A possible reason for it lays in the Dijkstra’s search mechanism. Satisficing results? We compared the average path weight differences dW=|WH-WNH| to the minimal edge weight per graph and per ratio (Figure 1b). The results show that the average path weight difference is 2 to 18 times longer than the shortest edge in a graph across the ratios. The order of magnitude increases with the size of a graph. E.g., given the minimum edge weight of 0.6 minutes (0.01h for R2 in G3, Figure 1b), the hierarchical path takes between 1.2 to 10.8 minutes longer than the corresponding flat path. In G3 for R2 a hierarchical path takes on average 26 minutes and a flat path 18 minutes translating this order of magnitude to 6 minutes of time difference. Hence, we consider this time as a satisficing result. These quality measures will become tangible when using real-world networks.

4.2 Path Search Time We compare the performance of HWA to the performance of NHWA, measured as CPU time in seconds. Let CPUHij be the CPU time for a path computed by HWA between the nodes i and j, and CPUNHij be the CPU time for a path computed by NHWA between the same nodes, then the difference between these times is: dCPUij = | CPUNHij - CPUHij | / CPUHij * 100% We chose to build dCPUij with CPUHij to get positive differences because CPUHij