1v.net.steiner(1)              Grass User's Manual             v.net.steiner(1)
2
3
4

NAME

6       v.net.steiner   -  Create Steiner tree for the network and given termi‐
7       nals
8       Note that 'Minimum Steiner Tree' problem is NP-hard and heuristic algo‐
9       rithm is used in this module so the result may be sub optimal
10

KEYWORDS

12       vector, networking
13

SYNOPSIS

15       v.net.steiner
16       v.net.steiner help
17       v.net.steiner  [-g]  input=name output=name  [type=string[,string,...]]
18       [alayer=integer]    [nlayer=integer]    [acolumn=string]    tcats=range
19       [nsp=integer]   [--overwrite]  [--verbose]  [--quiet]
20
21   Flags:
22       -g
23           Use geodesic calculation for longitude-latitude locations
24
25       --overwrite
26           Allow output files to overwrite existing files
27
28       --verbose
29           Verbose module output
30
31       --quiet
32           Quiet module output
33
34   Parameters:
35       input=name
36           Name of input vector map
37
38       output=name
39           Name for output vector map
40
41       type=string[,string,...]
42           Type
43           Arc type
44           Options: line,boundary
45           Default: line,boundary
46
47       alayer=integer
48           Layer number
49           Arc layer
50           Default: 1
51
52       nlayer=integer
53           Layer number
54           Node layer (used for terminals)
55           Default: 2
56
57       acolumn=string
58           Arcs' cost column (for both directions)
59
60       tcats=range
61           Category values
62           Categories of points on terminals (layer is specified by nlayer)
63
64       nsp=integer
65           Number of steiner poins (-1 for all possible)
66           Default: -1
67

DESCRIPTION

69       v.net.steiner  calculates  the  optimal connection of nodes on a vector
70       network.
71
72       A Steiner tree is used to calculate  the  minimum-cost  vector  network
73       connecting  some number of end nodes in a network framework.  For exam‐
74       ple it could be used to find the path following  a  road  system  which
75       will  minimize  the  amount  of  fibre  optic cable needed to connect a
76       series of satellite offices.
77

EXAMPLE

79       Steiner tree for for 6 digitized nodes (Spearfish):
80       g.copy vect=roads,myroads
81       v.db.addcol myroads col="cost double precision"
82       # define traveling costs as inverse of speed limit:
83       v.db.update myroads col=cost val=1/50
84       v.db.update myroads col=cost val=1/75 where="label='interstate'"
85       v.db.update myroads col=cost val=1/5 where="label='unimproved road'"
86       v.db.update myroads col=cost  val=1/25  where="label='light-duty  road,
87       improved surface'"
88       v.db.select myroads
89       # we have 6 locations to allocate
90       echo "1|601653.5|4922869.2|a
91       2|608284|4923776.6|b
92       3|601845|4914981.9|c
93       4|596270|4917456.3|d
94       5|593330.8|4924096.6|e
95       6|598005.5|4921439.2|f" | v.in.ascii cat=1 x=2 y=3 out=centers col="cat
96       integer, \
97                                east double precision, north double precision,
98       label varchar(43)"
99       v.db.select centers
100       v.category centers op=report
101       # type       count        min        max
102       # point          6          1          6
103       #create lines map connecting points to network (on layer 2)
104       v.net myroads points=centers out=myroads_net op=connect thresh=500
105       v.category myroads_net op=report
106       # Layer / table: 1 / myroads_net
107       # type       count        min        max
108       # line         837          1          5
109       #
110       # Layer: 2
111       # type       count        min        max
112       # point          6          1          5
113       # The network is now prepared.
114       g.region vect=myroads_net
115       d.mon x0
116       d.vect myroads_net
117       d.vect -c centers icon=basic/triangle
118       d.font verdana
119       d.vect centers col=red disp=attr attrcol=label lsize=12
120       v.net.steiner myroads_net acol=cost tcats=1-6 out=mysteiner
121       d.vect mysteiner col=blue width=2
122
123

SEE ALSO

125       d.path, v.net, v.net.alloc, v.net.iso, v.net.path, v.net.salesman
126

AUTHOR

128       Radim Blazek, ITC-Irst, Trento, Italy
129       Documentation: Markus Neteler
130
131       Last changed: $Date: 2007-12-17 14:53:55 +0100 (Mon, 17 Dec 2007) $
132
133       Full index
134
135       © 2003-2008 GRASS Development Team
136
137
138
139GRASS 6.3.0                                                   v.net.steiner(1)
Impressum