Rutes: Network analysis and identification of the optimal route
This program determines the optimum routes between a set of origin
locations and a set of possible destination locations. The optimum route
between a pair of origin-destination locations will be the that which
minimizes the movement necessary to go from the origin to the destination,
whether this be in time, distance or through the numerical field defined by
the user that represents any other other variable that calculates the cost
of the movement.
The origin locations and the possible destination locations should be
connected to the network that defines the set of possible routes. This means
that they correspond to nodes of the MiraMon arch/node topology. The type of
location is determined by the values of a field of the node database
(*N.dbf) that the user must create and fill out (if this information is in a
point layer the latter can be transferred to the node layer using the
PNT->NOD of the module AtriTop). The values
accepted in this field are:
- "O", for the origin nodes.
- "D", for the destination nodes.
- "A", in both cases, in other words, for the origin and
destination nodes at the same time.
- "", blank for the nodes that neither origin nor
destination.
On the other hand, the arches determine the direct connections between
nodes and their database (*A.dbf) must include fields that define the costs
associated with each connection (e.g. if one wished to apply time
optimization, one would need a field that defines the speed at each stage).
Regarding distance, the topological field of ellipsoid longitude will be
used provided that it exists and the user does not specify an alternative
field. If it does not exist, the topological field of planimetric longitude
will be used (both are default created by generating line vectors). If, on
the other hand, the user provides his/her own field, the validity of its
values (numerical values and values above zero) will be verified. If
non-valid values are detected, the program will interrupt execution.
The resulting file is a table in DBF format which allows the user
to establish a relationship between each origin node and a destination node
that optimizes its path (provided there is at least one succession of arches
that connects the origin node with the destination node and its accumulated
cost is less than the maximum cost specified in the command line). One
should bear in mind that the same destination node may be the end of several
optimum routes or of none.
The costs of each optimum route found are displayed on the screen and are
saved to the DBF table that has been specified. The resulting values are
expressed in the same units as the fields involved (e.g. when a speed field
is used in km/h the accumulated distances are given in km and
the accumulated times in hours. In order to be able to carry out the
calculations correctly, the fields involved should have the units described
in the metadata and they should be recognized by MiraMon. If the user wishes
to use units which are not recognized by MiraMon, s/he should contact the
programming team.
Syntax:
Rutes 1 FileArches BDResults NodeTypeField
MaximumDistance=[/CAMP_LONG=AlternativeLongField]
Rutes 2 FileArches BDResults NodeTypeField MaximumTime FieldTime
Rutes 3 FileArches BDResults NodeTypeField MaximumDistance SpeedField
[/CAMP_LONG=AlternativeLongField]
[/MAX_TEMPS=MaximumTime]
Rutes 4 FileArches BDResults NodeTypeField MaximumCost CostField
- Optimization criteria
- 1: For minimum accumulated distance
- 2: For minimum accumulated time
- 3: For minimum accumulated time, each stage is obtained as a
quotient between longitude and speed
- 4: For minimum accumulated cost, the cost is defined by the user
by a field that measures the movement effort.
- FileArches is the name of the structured arch file that contains the
network of paths
- BDResults is the name of the DBF file that establishes the
relationship between origin nodes and destination nodes and collects the
accumulated values of distance and/or time
- NodeTypeField is the alphanumerical field of the database of the
node file of FileArches that indicates if a node is origin (value
"O"), destination (value "D"), or both at the same
time (value "A")
- For options 1 and 3
- MaximumDistance: represents the maximum threshold (in meters)
which ensures that the routes that exceed it in longitude are
discarded
- /CAMP_LONG=AlternativeLongField: if this is specified, it
indicates the field of the FileArches database that contains the
longitudes of each arch used instead of the topological values that
appear by default in the database.
- For option 2
- MaximumTime: compulsory in this option, it represents the
maximum threshold (in the same temporal units as FieldTime) which
ensures that the routes that exceed it in longitude at
discarded.
- FieldTime is the field of the FileArches database that contains
the route times associated with each arch. The values should be
defined in seconds, minutes or hours.
- For option 3
- SpeedField is the field of the FileArches database that contains
the speeds associated with each arch. These are necessary for
calculating the route time of each route. The units of time should
be defined in seconds, minutes or in hours
- /MAX_TEMPS=MaximumTime: if specified, this represents the
maximum threshold (in the same temporal units as SpeedField) which
ensures that the routes that exceed it in route time at
discarded
- For option 4
- MaximumCost: represents the maximum threshold which ensures that
the routes that exceed it in accumulated cost are discarded
- CostField is the field of the FileArches database that will be
used to calculate the cost of each route. It is not necessary for
the field to have any associated unit of measurement.
- /NO_VINCULAR: this parameter eliminates the default behavior
that links the resulting DBF table to the associated database of
the origin node file.