A STACKED NODES METHOD TO MULTIPLE TARGET ACCESS PROBLEMS
by
Christopher A. Shuma
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
APPROVED BY SUPERVISORY COMMITTEE:
___________________________________________
Dr. Denis J. Dean, Chair
___________________________________________
Dr. Fang Qiu
___________________________________________
Dr. Yongwan Chun
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Copyright 2014
Christopher A. Shuma
All Rights Reserved
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
A STACKED NODES METHOD TO MULTIPLE TARGET ACCESS PROBLEMS
by
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
CHRISTOPHER A. SHUMA, BS
THESIS
Presented to the Faculty of
The University of Texas at Dallas
in Partial Fulfillment
of the Requirements
for the Degree of
MASTER OF SCIENCE IN
GEOSPATIAL INFORMATION SCIENCES
THE UNIVERSITY OF TEXAS AT DALLAS
August 2014
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
UMI Number: 1565607
All rights reserved
INFORMATION TO ALL USERS
The quality of this reproduction is dependent upon the quality of the copy submitted.
In the unlikely event that the author did not send a complete manuscript
and there are missing pages, these will be noted. Also, if material had to be removed,
a note will indicate the deletion.
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
UMI 1565607
Published by ProQuest LLC (2014). Copyright in the Dissertation held by the Author.
Microform Edition © ProQuest LLC.
All rights reserved. This work is protected against
unauthorized copying under Title 17, United States Code
ProQuest LLC.
789 East Eisenhower Parkway
P.O. Box 1346
Ann Arbor, MI 48106 - 1346
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
ACKNOWLEDGMENTS
I would like to thank my advisor Dr. Denis J. Dean for all his contributions and hard work to
help me finish this thesis and explore a fascinating topic with real significance. Also, I want to
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
thank my family and friends for supporting me through my move to Dallas and completing the
Geospatial Information Science Master’s program at University of Texas at Dallas.
May 2014
iv
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
A STACKED NODES METHOD TO MULTIPLE TARGET ACCESS PROBLEMS
Publication No. ___________________
Christopher A. Shuma, MS
The University of Texas at Dallas, 2014
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
ABSTRACT
Supervising Professor: Denis J. Dean
The following research develops a possible solution to multiple target access problems (MTAPs)
through spatial optimization. The MTAP is a problem where a network of arcs, each with
quantified impedance, connects many nodes to one another. The optimal solution path begins at
the source node(s) and must reach all indicated target nodes. MTAPs are commonly used in the
forestry industry to effectively build access roads to multiple timber stands. A complex
branching network is necessary while trying to limit the building cost of these roads. An optimal
solution to these problems results in the more profitable path. Previous MTAP solutions include
heuristics using variations of Dijkstra’s algorithm which are not always efficient. This thesis
reviews the feasibility of a stacked node method developed to solve MTAPs using binary integer
programming.
v
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
TABLE OF CONTENTS
ACKNOWLEDGMENTS ............................................................................................................. iv
ABSTRACT .....................................................................................................................................v
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
LIST OF FIGURES ...................................................................................................................... vii
CHAPTER 1 INTRODUCTION ...................................................................................................1
CHAPTER 2 METHODOLOGY ..................................................................................................7
CHAPTER 3 ANALYSIS ............................................................................................................13
CHAPTER 4 FUTURE WORK ...................................................................................................15
REFERENCES ..............................................................................................................................20
VITA
vi
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
LIST OF FIGURES
Figure 1.1 Single Target Access Problem........................................................................................2
Figure 1.2 Single Target Access Problem Constraints ....................................................................4
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 1.3 Single Target Access Problem Solution .........................................................................5
Figure 1.4 Single Target Access Problem Results ...........................................................................6
Figure 2.1 Stacked Node Example...................................................................................................7
Figure 2.2 Multiple Target Access Problem ....................................................................................8
Figure 2.3 Multiple Target Access Problem Constraints .................................................................9
Figure 2.4 Multiple Target Access Problem Solution ...................................................................12
Figure 2.5 Multiple Target Access Problem Results .....................................................................12
Figure 3.1 Pseudo Source Nodes ...................................................................................................14
Figure 4.1 Integer Programming Problem .....................................................................................15
Figure 4.2 Integer Programming Constraints.................................................................................16
Figure 4.3 Integer Programming Solution .....................................................................................18
Figure 4.4 Integer Programming Results .......................................................................................19
vii
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
CHAPTER 1
INTRODUCTION
Multiple target access problems can be defined as finding the minimum cost locations for all new
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
roadways needed to connect N targets to the existing road network (Dean 1997). These roadways
and targets can be thought of within three physical spaces; continuous, raster, and graph theories
which were all discussed at length by Picard (2006). This research will not touch on continuous
space approaches as they require a different and more difficult mathematical treatment. Dean
used raster theory which is space made of many pixels, each with cost variable to traverse, where
the path must travel from the center of one pixel to another. These concepts to solve the MTAP
can still be applied to this research as graph theory is another discrete type of space. The graph
theory structure of networks consist of three node types; source, intermediate, and target. These
nodes are connected to one another by arcs which each have a set impedance to traverse that arc
distance. Think of the arcs as individual roads and the nodes as intersections where roadways
cross and a path or car can turn and change course. The goal is to create a network connecting
the source nodes to all target nodes while accruing the minimum cost.
Before discussing the exact methods to solve MTAPs it requires knowledge of how to
solve a single target access problem (STAP). A common method of solving these problems is by
using variations of a heuristic named Dijkstra’s algorithm. It is very effective, but as a heuristic it
only approximates the solution and does not guarantee the optimal solution to any network.
Dijkstra (1959) explains his method of finding the minimum path length between two nodes by
1
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
2
comparing the total accrued length after each individual arc. By beginning at the source node and
following each possible arc one by one, those paths with a higher length to reach identical nodes
are eliminated. This continues until the target node is reached and the least cost path is
determined. This method does not require searching through the entire network of arcs and nodes
making it a quick solution that gives good results. Another method to solve STAP is through a
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 1.1. Single Target Access Problem.
special case of integer programming called Binary Integer Programming (BIP).
To set up a BIP problem, it requires an objective function and several constraints. The
objective function is the minimum sum of each and every arc in the network multiplied by its
corresponding impedance. These are called decision variables and are notated
for an arc from
node to . Each decision variable is a binary variable which means it can only be one of two
values, 0 or 1. A value of 1 indicates that the variable is used in the optimal path while a value of
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
3
0 indicates it is not. Therefore, each decision variable with a value of 1 would be multiplied by
its own impedance and added to one another to equal the total cost of the optimal path.
The constraints within a BIP problem can be separated into two categories; flow and
force. The force constraint is what forces the solution to begin, as it requires that all decision
variables out of the source node must equal 1. This assures one path from the source node is
included in the optimal path and leads into the flow constraints. There is one flow constraint
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
created for each intermediate node in the network. The constraint simply adds all decision
variables entering node and sets them equal to all decision variables exiting node . This makes
the path flow node to node until the target node is reached with the least accrued impedance.
Reaching the target is the only way for the problem to end as there are no force or flow
constraints at the target, which allows the path to stop. An example network is shown in Figure
1.1 and the necessary objective function and constraints are included in Figure 1.2. The solution
to the discussed example and resulting variable values are included in Figures 1.3 and 1.4.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
4
The mathematical process that solves BIP is a Branch and Bound procedure. It is a type
of recursive thinking where the initial problem is continually divided into two smaller
subproblems (Bastarrica 1998). These subproblems are the two possible outcomes for each
decision variable, 1 or 0. At every step the highest and lowest possible impedance is calculated
and compared to the other subproblems. If one branch’s best possible outcome is worse than the
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 1.2. Single Target Access Problem Constraints.
worst possible outcome of another branch, the first branch is eliminated. This process continues
to branch until one branch is left which will provide the decision variable values necessary for
the optimal path. Branch and Bound is heuristic in deciding how to branch, so it may not solve
the solution in the most time efficient method every time. However; unlike Dijkstra’s method, it
is an exact solution method making it a guarantee to find the optimal solution.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
5
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 1.3. Single Target Access Problem Solution.
With that thought in mind, previously proven solution methods to MTAPs are discussed
at length by Dean and Picard. The fully independent path method is the simplest MTAP solution
which treats each target as a STAP. Applying reduction to this method removes any redundant
segments, turning overlapping arc paths into a single path and single impedance. Theoretically,
any new method should never produce worse results than the fully independent path method. The
method developed by Dean in his paper was termed branch evaluation. Branch evaluation takes
into account every possible branching pattern to connect the source to the targets. The lowest
cost path for each possibility is calculated and the best branching pattern is chosen. This method
is effective with very few targets but becomes inefficient with a larger network due to the
number of possible branches. Picard identifies several methods, one being the source-to-closesttarget method. An improvement on independent paths, this method still solves each target one by
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
6
one. The target closest or of least cost to the source is connected as such, and the node and
resulting path become part of the new source. The next closest target to the new source is
connected and this process is repeated until all targets are reached. The source-to-closest-target
method was concluded by Picard to be the best solution method of all he studied when
considering results and computing time for large MTAPs.
Both Dean and Picard used a Monte Carlo experimental plan to randomly generate
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
MTAP networks to test the various solution methods. Some of the variables in the networks
Figure 1.4. Single Target Access Problem Results.
included the number of total nodes, target nodes, and source nodes. This same process will go
into effect in this research project to test and compare the stacked node method. In addition, there
will be a variable to determine the maximum and minimum connections from each node in the
networks.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
CHAPTER 2
METHODOLOGY
The first step in performing the stacked nodes methodological study on MTAPs is producing the
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
networks which will be used to test the performance. A program was created using Visual Basic
to produce these networks and set up the constraints necessary to solve these problems. An x/y
grid is setup for each network so that the arcs between nodes can have a numerical distance to
serve as the impedance. Impedance values are not very important in this study as the focus is on
the solution method. There are many studies of real world application MTAPs where several
different variables go into making the impedance between nodes. In this case, after using a
random number generator to place nodes on the grid, the program uses the Pythagorean Theorem
to calculate distance of the arcs to each node. The program user can select the total number of
Figure 2.1. Stacked Node Example.
7
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
8
nodes and the amount of target nodes within the network. In addition, a connectivity range is set
where each node must have at least x and no more than y arcs exiting each node. Finally, the
program can be told the number of iterations with the identified settings it should run.
The next major step once the network is created is setting up the objective function and
constraints for the stacked nodes method. Before identifying the decision variables, the network
must be setup with the stacked nodes. For every single node, create coincident stacked nodes
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
equal to the number of exit arcs minus one. Think of this as adding vertical (Z) levels to the
network with the nodes stacked on top of each other. The total number of levels is equal to the
Figure 2.2. Multiple Target Access Problem.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
9
total number of exit arcs from that specific node. Next, create arcs connecting the initial node,
base node, to the corresponding stacked nodes called transition arcs. These will have an
impedance of zero as they are simply a decision variable necessary to transition from level to
level. Finally, the base node’s exit arcs are replicated at each level for each stacked node while
retaining the initial impedance from level one. There is a visual representation of this process
with a single additional stacked node in Figure 2.1.
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
The reason behind creating the stacked nodes in the first place was to attempt to tighten
Figure 2.3. Multiple Target Access Problem Constraints.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
10
the MTAP constraints. The meaning tighten constraints refers to the constraints used in solving
STAPs where the values are absolute. The decision variables are set equal to a single value
instead of a range of values. In order to do this there could only be one output from each base
node, which was seemingly resolved by creating additional nodes and levels. The idea assumed
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 2.3 Continued
these stacked nodes were still in the same physical space as the original node but mathematically
created an option to branch while keeping the constraints tight.
The MTAP constraints are similar in concept to those solving STAPs, but become
complicated as the number of decision variables increases greatly. For the force constraint, the
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
11
number of exit arcs from the base source node on Z level 1 must be equal to one. This still allows
a branch to occur from the source but assures that at least one exit arc is used to begin the
solution path. Similarly, for each target node, the number of all entering arcs must equal one as
each target must be reached. For the intermediate nodes, there are three separate flow constraints
to account for the added stacked nodes. First is all entering arcs must equal the number of exiting
arcs not counting the transition arcs moving up the stacked nodes. This forces the optimal path to
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
use the stacked nodes when at a branching node as only one exit arc can occur on the first level.
Second, each transition arc has to equal the exit arcs of the destination stacked node’s Z level.
This assures that the correct level arcs are used with the correct transition arc. Third, those same
transition arcs must be less than or equal to the arcs entering the base node to assure the
additional Z level arcs are only used when the base node has been entered. The last step is
identifying all decision variables as binary integers and then the model can be solved using
LINGO optimization software.
An example problem with corresponding objective function and constraints is shown in
Figures 2.2 & 2.3. There are two different formats of decision variables shown. The first is for all
arcs between non-coincident nodes. The arc traverses from ( ) one node to ( ) another at a
specific Z level (
). The other format is for all transition arcs between coincident nodes. The arc
is centered on one node (
) and transitions from one Z level (
) to another Z level ( ). The
solution to this problem is included in Figure 2.4. The resulting decision variables are shown in
Figure 2.5 while those not listed were not in the optimal path and thus have a value of 0.
When perfected, this model would be run many times to test performance with different
inputs. In addition, other solution methods will be prepared to compare the resulting impedance
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
12
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 2.4. Multiple Target Access Problem Solution.
and computation time. Eventually, the concept would be applied to a real world application to
determine the efficiency in the field. At this time there is a significant conceptual flaw preventing
the completion of these tasks.
Figure 2.5. Multiple Target Access Problem Results.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
CHAPTER 3
ANALYSIS
At this moment of time, significant results worth analyzing could not be obtained. During
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
execution of these models, large network problems would often encounter an issue. In cases
where the source was far away from a target, a closed circuit would create pseudo source nodes
near the target. The current constraints assure that a path exits the source and enters all targets.
This guarantees a path from the source reaching at least a single target. However, in cases where
two intermediate nodes have exit arcs to one another, that closed loop does not break a
constraint. This allows either node to then use a stacked node to reach a target without ever being
connected to the source node. This concept is pictured in Figure 3.1. Nodes A and B each have
one exit and one entering arc on Z level 1. Meanwhile, since node A has an incoming arc it
allows the stacked node to be used and creates an output on Z level 2 to the nearby target node C.
This problem is occurring whenever the path to node C from the source costs more than the path
pictured.
The mathematical dilemma is that in STAPs the constraints are tight, inputs equal outputs
with no exceptions. If this same loop occurred in an STAP, there would be no opportunity to
have a second output to the target node. In MTAPs the constraints are loose as there must be an
opportunity to branch at a node. This branching results the node output to be greater than the
node input. Introducing the stacked nodes appeared to solve the problem as there is an equal
input and output of non-coincident arcs on the base level. However, the transition arc is in
13
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
14
essence a second output despite being a coincident arc. In addition, while in human application
the solution would be thought of as one arc leading into another step by step, the math does not
act that way. All arcs or variables are mathematically acted on at the same time, causing these
loops to form.
An initial solution to this issue was to eliminate the possibility of this closed loop
between two nodes. While possible, it does not entirely avoid the conceptual problem. In cases
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
where it is still more efficient, a circuit would be created with three nodes instead of two, still
satisfying the constraints. And if that was eliminated, a circuit would be created with four nodes
and so on. Loops like this are addressed in other spatial optimization problems and more research
into those issues may help this case.
With small networks the stacked nodes method did at times produce acceptable results
that were an improvement over the independent path method. This does not change the identified
issues with this method; they are just a handful of cases where there was no improvement by
creating a pseudo source. It does however suggest that the method still has some validity and
with some fixes could still be useful.
Figure 3.1. Pseudo Source Nodes.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
CHAPTER 4
FUTURE WORK
The mathematical problem that must be addressed is the loose flow constraints creating pseudo
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
source nodes. In an effort to force the constraints to be tight equalities, a completely new solution
method has been formed. The optimal path was initially thought of as a single path with many
branches to reach all targets. This meant that decision variables were binary as a variable was
either on the optimal path or not. Another way to approach this is as multiple optimal paths, one
Figure 4.1. Integer Programming Problem.
15
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
16
for every target, similar to an STAP. Now positive integer variables must be introduced as a
decision variable may be along multiple optimal paths. This change allows tight constraints as all
paths entering a node will equal all paths out of a node, may that be 1 or 100.
With this change, a problem arose as each overlapping path would add unwanted
impedance costs to the objective function. This can be avoided with another conceptual change
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 4.2. Integer Programming Constraints.
from the Stacked Nodes method. Instead of associating a single arc with a single decision
variable, a second variable can be formed called the flow variable. These two variables can be
linked through a series of constraints allowing the decision variables, which are used in the
objective function, to remain binary. The flow variables are the integer variables which allow as
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
17
many paths to flow through the arc as there are targets. Dummy variables are used to assure that
if any optimal paths use the arc, the binary decision variable is given a value of 1.
An example of this new integer programming method is included in Figure 4.1. The
necessary objective function and constraints are listed in Figure 4.2. There are three types of
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 4.2 Continued
variables represented; decision, flow, and dummy variables. The decision variables (
) are
binary and what make up the objective function used to calculate impendence. The flow
variables (
) are integer and ensure the multiple optimal paths reach their targets. The source
constraint is the major difference from previous MTAP methods as the arcs leaving the source
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
18
node must equal the number of targets, 3 in this case. The decision and flow variables are related
to each other through link constraints that use binary dummy variables (
). By setting each
decision variable greater than or equal to the corresponding dummy variables, it assures the
impedance is accounted for. All variables are arcs from one node ( ) to another ( ) with a
network consisting of one source ( ) and three target (
variable
nodes. The dummy nodes use the
to mathematically separate themselves from one another. The solution to this problem
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
is included in Figure 4.3. The resulting decision and flow variable values are in Figure 4.4 and
those variables not listed were not in the optimal paths and thus have a value of 0.
Figure 4.3. Integer Programming Solution.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
19
If this new method proves valid, the next step in is to compare the performance to other
MTAP solution methods. The computation time and total impedance are the most important
factors with any solution method. Using IP should produce optimal solutions more efficiently
than the methods presented by Dean and Picard that use Dijkstra’s algorithm. If true, this will
prove to be a significant step in spatial optimization and the real world applications.
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Figure 4.4. Integer Programming Results.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
REFERENCES
Dean, Denis J. "Finding Optimal Routes for Networks of Harvest Site Access Roads Using GISbased Techniques." Canadian Journal of Forest Research 27.1997 (1997): 11-22. Web.
Picard, N. "Finding Optimal Routes for Harvesting Tree Access." International Journal of
Forest Engineering 17.2006 (2006): 35-48. Web.
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
Clark, Mark M. "A Three-Stage Heuristic for Harvest Scheduling with Access Road Network
Development." Forest Science 46.2 (2000): 204-218. Web.
Eugenio, Arima Y. "Loggers and Forest Fragmentation: Behavioral Models of Road Building in
the Amazon Basin." Annals of the Association of American Geographers 95.3 (2005):
525-541. Web.
Liu, Kevin. "Preliminary Planning of Road Systems Using Digital Terrain Models." Journal of
Forest Engineering (1993): 27-32. Web.
Shirasawa, Hiroaki. “A comparative study of heuristic algorithms for the multiple target access
problem.” The Japanese Forest Society (2013). Web.
Bastarrica, M. C. “A Binary Integer Programming Model for Optimal Object Distribution.” 20th
Int’l. Conf. on Principles of Distributed Systems (1998). Web.
Dijkstra, E. W. “A Note on Two Problems in Connextion with Graphs.” Numerische Mathematik
1.1959 (1959): 269-271. Web.
20
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬
VITA
Christopher Andrew Shuma was born in Dallas, Texas. In 1997 his family moved to Chicago,
Illinois where he went on to graduate from Waubonsie Valley High School in 2007. Christopher
‫ﻣ‬
‫ﺘ‬
‫ﻠ‬
‫ﺐ‬
‫ﺳ‬
‫ﺎ‬
‫ﯾ‬
‫ﺖ‬
m
o
c
.
e
t
i
S
b
a
l
t
a
M
was accepted into Valparaiso University and earned a Bachelor of Science in 2011 majoring in
Meteorology. After a year of work he moved back to Dallas and entered the Graduate School of
The University of Texas at Dallas.
MatlabSite.com ‫ﻣﺘﻠﺐ ﺳﺎﯾﺖ‬