If you find this document usefull, please consider ordering a printed hardcopy!


Subsections


1 Network analysis

In general, network analyses are based on vector topology. Various network analysis modules are available because GRASS is a topological GIS which has been supplemented by DGLib (Directed Graph Library):

As an example the optimization of hospital catchment areas is explained in chapter 12.

1 Shortest-Path-Analysis

The shortest distance between two given points can be determined in two different ways. By default, the length of the vectors is used as cost source. Other attributes of the vectors like information about the speed limit on the road or information about the road status can be used for calculating a path. Cost information can also be assigned to both vector directions. Attributes of the nodes (e.g. cycle times of the traffic lights at a crossroad) can also be considered. d.path d.path directly calculates the shortest distance between two given points on the GRASS monitor. During this process the module is controlled via the mouse and directly displays the result on the current vector map displayed on screen.

This module has only been designed for the entry of two points - the start and end point. If additional points are supposed to be used and/or the resulting map is supposed to be saved, the module v.net.path must be used. v.net.path v.net.path works similarly to d.path but needs more parameters. Another difference is that it generates a new vector map containing the results. Thus, this module allows the user to save the generated pathes separately in vector datasets.

A possible application of this module is the calculation of the shortest paths based on a roadnet. The free FRIDA-dataset (17) of the city of Osnabrueck is available as a sample dataset. The following command will find the shortest path between point 40 and point 71.

echo "1 40 71" | v.net.path mygraph out=mypath

For the use of driving-directions the attribute columns ''forward'' and ''backwards'' can be included in the calculation.
The map mypath is created as the output map which contains the shortest path between the given points.

2 Subnets within a vector network

The module v.net.alloc can calculate subnetworks within a given vector network. For example, this can be used to to calculate the scope of several police stations within a city. This kind of information could then be used to adapt them to a particular situation. This application is also explained in detail in chapter 12.

3 Minimum-Steiner-Tree-Problem

The Minimum Steiner Tree describes the optimal connection of nodes within a network (star). The following example should help to make this clear:

Lets say: Several hospitals distributed in a city need new network cables for telemedicine services. The target is to lay the necessary cable as good as possible along the available roads so that only few cable is needed and all hospitals are connected to the new cable network. The GRASS module v.net.steiner is available for these tasks.

4 Travelling-Salesman-Problem

This question contains the determination of a perfect route between different points (excursion). For instance, the hospitals distributed in a city which are supposed to be visited by a pharmarceutical company representative. The GRASS module v.net.salesman calculates the perfect path for the traveler - which could be either the shortest path by distance or time.

v.net.salesman in=hospital_net out=pharmarepresentative ccats=40-215

5 Cost analysis

The GRASS module v.net.iso creates cost analysis on a vector network. This means a calculation of iso-distances which can be considered as a calculation of concentrical distances around a point. Thus, "run-length" (e.g. for sewage channel systems) can be calculated based on the vector length or other attributes.


If you find this document usefull, please consider ordering a printed hardcopy!


© 2005, GDF Hannover bR - Solutions for spatial data analysis and remote sensing
Last modified: 29-08-2005