Models and Strategies For Efficiently Optimizing The Vertical Alignment of Roads For Multimaterial
Models and Strategies For Efficiently Optimizing The Vertical Alignment of Roads For Multimaterial
Shahadat Hossain
MASTER OF SCIENCE
in
ii
Preface
Models and strategies for efficiently optimizing the vertical alignment
of roads for single material part of this thesis has been adapted from a
manuscript co-authored with Dr. Warren Hare, Dr. Yves Lucet, and Faisal
Rahman at the University of British Columbia, Okanagan campus. The
manuscript has been submitted for publication to the Journal of Computers
and Operations Research [HHLR13]. The paper included models and tech-
niques for single material only. A US provisional patent was also filed based
on the results contained in the present thesis.
iii
Table of Contents
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Dedication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Chapter 1: Introduction . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Road design problem . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Horizontal alignment . . . . . . . . . . . . . . . . . . . 2
1.2.2 Vertical alignment . . . . . . . . . . . . . . . . . . . . 4
1.2.3 3D alignment . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Our research focus . . . . . . . . . . . . . . . . . . . . . . . . 7
iv
TABLE OF CONTENTS
Chapter 6: Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 55
6.1 Future research . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.1.1 Improvement in the quasi network flow model . . . . . 55
6.1.2 More options for selecting material . . . . . . . . . . . 56
6.1.3 Horizontal alignment . . . . . . . . . . . . . . . . . . . 56
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Appendix A: Tables . . . . . . . . . . . . . . . . . . . . . . . . . . 63
v
List of Tables
vi
List of Figures
vii
LIST OF FIGURES
viii
Acknowledgements
I would like to express my sincere gratitude to my two supervisors, Dr.
Yves Lucet and Dr. Warren Hare, for their continuous help and support in
all stages of this research. I would like to thank them for being open and
encouraging to new ideas, listening to my ideas, and helping me to organize
those in proper way. Their knowledge, guidance, and patience were essential
for this thesis. It was a great privilege to have such friendly supervisors that
helped me to overcome many challenges and enjoy my graduate life.
A very special thanks goes to our industrial partner (Softree Technical
Systems Inc.) for providing us all the help that we need. In particular
David Mills, Craig Speirs, and Alexis Guigue were always very supportive
and helpful to give technical information for this thesis. The week that I
worked with them in Vancouver helped me a lot to organize my thesis.
I would like to thank everyone who directly or indirectly helped me in
my research, course works, and in other activities during my graduate life.
I owe my deepest gratitude to my parents, and family members for their
prayers and support throughout my life. Without their selfless and contin-
uous help I would not be able to come here.
I also like to thank all of my friends who helped me to pass some good
times in Kelowna, took me to camping, and gave me rides to several places.
This research is partially funded by an Collaborative Research and Devel-
opment (CRD) Grants from the Natural Sciences and Engineering Research
Council (NSERC) of Canada, MITACS, and Softree Technical Systems Inc.
ix
Dedication
x
Chapter 1
Introduction
In this chapter, we describe our motivation for research in road design,
define the road design problem, and discuss some previous works in road
design.
1.1 Motivation
The state of the road network system is one of the strongest indica-
tor of a country’s level of development. So every year all countries spend
a significant amount of their budget on construction and maintenance of
roads and highways. For example, the Canadian government in 2011 allo-
cated $32,000,000,000 for roadway transportation [Min12a]. A significant
amount of this budget is spent on building new roads and maintaining ex-
isting roads. The cost of constructing a road without considering the cost of
engineering design or property acquisition, can be in the range of $2,100,000
to $5,000,000 per kilometer for two lanes [Min12b] . As a result, the gov-
ernment and the companies who build and maintain roads and highways
are interested to find a way to minimize the cost of road construction and
maintenance.
While constructing roads and highways, cost minimization is not the
only issue the road and highway engineers have to deal with. Every year
thousands of road collisions and casualties happen. These accidents cost
a lot, not only in terms of money but also in terms of life. So it is very
important to consider safety requirements, rules, and regulations while de-
signing roads to minimize accidents. Furthermore, road engineers also need
to consider the environmental impacts [Jha03] and the socioeconomic effects
[DJ09].
Designing roads or highways to minimize costs during the construction
process while satisfying safety requirements, rules, and regulations consid-
ering all socioeconomic and environmental impacts is a very difficult task.
Thus automating the road design process to the optimal design could save
a lot of money. Unfortunately there is no road design software in existence
today that has an automated and interactive way for computing optimal
1
1.2. Road design problem
2
1.2. Road design problem
factors such as land cost, travel cost, and on the vertical alignment cost dis-
cussed next. A sample horizontal alignment is shown in Figure 1.1. Horizon-
tal alignment optimization is usually done using one of the three techniques:
calculus of variation, dynamic programming, and network optimization.
3
1.2. Road design problem
the cost function. However, this method produces a continuous road, and a
global optimum is guaranteed.
Dynamic programming is a well known method for optimization. Mostly
this technique is used for discrete problems. Few studies ([OEC73], [Tri87b],
[JSJ06]) showed the optimization of a horizontal alignment using a dynamic
programming method. The problem with this approach is that it takes a
long time to solve large problems and the output alignment is non-smooth.
Network optimization method formulate the horizontal alignment prob-
lem as a network problem such as a shortest path problem, a min cost flow
problem, etc. Some early papers [TM70], [Tur78], [Tri87a] used network
optimization methods to optimize a horizontal alignment. This method is
simple and easy to understand, but formulating the cost function for each
edge of the network considering the cost of vertical alignment is hard and
requires significant approximations.
4
1.2. Road design problem
Height (meter)
5
1.2. Road design problem
1.2.3 3D alignment
In the ideal case, designing a three dimensional alignment of roads by
considering the above mentioned horizontal, vertical alignment, and earth-
work sub problems together would be the most efficient strategy. However,
calculating 3D alignment of a road, considering all of these simultaneously,
is a very difficult problem. Most of the researchers use heuristic based algo-
rithms to calculate 3D alignments.
Chew et al. [CGF89] proposed a three dimensional highway alignment
optimization model that determines the horizontal and vertical alignments
simultaneously. They applied the concept of optimal control theory and
used cubic spline polynomial interpolation to build a smooth vertical align-
6
1.3. Our research focus
7
1.3. Our research focus
− Cut and fill at the same section: Cut and fill refers to the excavation
and embankment of materials to make a smooth surface for the road
construction. As the earth is uneven in shape, there could be cut
and fill at the same section of the same material. Section refers to
the smallest unit of a road, and there is no cost for moving materials
within it.
8
1.3. Our research focus
9
Chapter 2
cross-section
𝑢1 𝑢5
Elevation (𝑧)
𝑢2 u3 𝑢4
𝑢0
Ground profile
ℎ1
ℎ2 ℎ4 Road profile (spline)
𝑑0 𝑑2 𝑑4 ℎ5
𝑑1 𝑑3 𝑑5
𝑠0 𝑠1 𝑠2 𝑠3 𝑠4 𝑠5
Station
Figure 2.1: Side view of ground profile and road profile. Here, di is the
effective length of a section, hi is the ground elevation, ui is the offset from
the ground profile towards the road profile. Cross-section areas are given at
each station si .
10
2.1. Model variables and parameters
In order to model the vertical alignment, we split the road into several
sections. Let S = {1, 2, ..., n} be the index set for the sections. Every section
i (∈ S) has a station number si and an effective length di . The difference
between a station and a section is that a station is a point, whereas a
section is a piece of ground stretched by an associated effective length. At
every station, a cross section area of the ground profile is taken. So we can
determine the cross section area of each material at each station point. The
effective length is multiplied with the cross section area to approximate the
volume of materials. A section is associated with the volume of materials,
whereas a station is associated with the cross section areas at a particular
point.
The height of the ground profile of Section i is defined as hi . The decision
variable ui is the vertical offset from the ground profile at Section i. We
assume that throughout the entire length of the section, the road has a fixed
height and a fixed cross section. In reality the heights and cross sections
vary throughout the section, so this provides only an approximate value.
The approximation error can be reduced by decreasing the section length,
i.e., increasing the number of sections. However, if section lengths are small,
the number of section increases and the problem size becomes large.
The entire road profile is represented as a quadratic spline (Figure 2.2).
The sections are grouped into segments. In every segment there may be
several sections, and each segment is associated with a quadratic function.
Let G = {1, 2, . . . , ḡ} be the index set of the segments and Sg = {1, 2, ..., ng }
be the index set of ng sections in spline segment g. The function δ : G ×Sg →
S maps the index in the spline segment to the actual section index, i.e., if
δ(g, j) = i, then si = sδ(g,j) , for all g ∈ G, j ∈ Sg , i ∈ S.
Every two consecutive segments have one common station between them
(Figure 2.2). Therefore, the last station of a spline segment is equal to
the first station of the next spline segment, i.e., sδ(g,ng ) = sδ(g+1,1) , ∀g ∈
{1, . . . , ḡ − 1}. The quadratic function for each segment g ∈ G is defined as
where s is the distance from the current station to the beginning of the road
along the alignment. The derivative of Pg (s) is written
11
2.1. Model variables and parameters
𝑑0 𝑑2 𝑑4 h5 𝑑6
𝑑1 𝑑3 𝑑5
𝑠0 𝑠1 𝑠2 𝑠3 𝑠4 𝑠5 𝑠6
Section
Road profile (spline) Ground profile
Similarly, we will use the notation P 0 (s) to represent the derivative of P (s).
Since every two adjacent sections have one common section between them,
to get a smooth curve, the height and slope of the beginning section of one
segment should be equal to the height and slope of the ending section of the
previous segment.
Remark 2.1. For a long road, the value of s in Pg (s) could be large. Since
Pg (s) has a square term of s, numerical errors can happen for large values
of s. To eliminate these numerical errors from the implementation of the
models, each value of s is calculated with respect to the beginning of its
segment, i.e., s − sδ(g,1) ∀g ∈ G. Since this does not change the models, for
the ease of describing the models, we use s instead of s − sδ(g,1) in Pg (s).
Side-slope refers to the gradual decrease and increase in height from the
12
2.1. Model variables and parameters
road profile to the ground profile of a cut and fill section, respectively. Side-
slopes are very important from the civil engineering point of view because
they help to make the road durable. Therefore, to model the vertical align-
ment problem accurately, we must take side-slopes into consideration. In
Figures 2.3 and 2.4 the cross-section of a road with and without side-slopes
for a cut and a fill are shown, respectively.
Ground profile
Cut Cut
area area
Road profile
Without side-slopes With side-slopes
Figure 2.3: The cross-section of a road with and without side-slopes (for
cut).
Road profile
Fill Fill
area area
Ground profile
Without side-slopes With side-slopes
Figure 2.4: The cross-section of a road with and without side-slopes (for
fill).
Li,5
Li,4 M1
Cut
Li,3 ui M2
area
Li,2 M3
Li,1
To model the side slopes, the approximation can be made with trapezoid
shaped cross-sections with several rectangles (Figure 2.5). We make an
approximation of the volumes of material at different offset levels from the
ground profile. The volumes of material for cut and fill at every section are
13
2.1. Model variables and parameters
Li,1
Li,2
Fill Li,3 ui M1
area Li,4 M2
Li,5
M3
the input data for the model. These volumes are approximated for each
offset level from the ground profile. Suppose for each section i ∈ S, Li =
{1, 2, ..., nl } is the index set for the different offset levels. The parameter
Li,l ∈ R represents the altitude of cut or fill for level l ∈ Li at section
i. Let K = {1, 2, ..., m} be the index set of the material types. Sample
+
input for a section is shown in Table 2.1. Let the parameter Ri,l,m represent
−
the given cut volume and Ri,l,m represent the given fill volume of material,
respectively, for each section i ∈ S, each level l ∈ Li , and for each material
type m ∈ K.
The relation between cut and fill volume with the height of the offset can
be understood clearly from Figure 2.7. For the vertical alignment problem,
we need to find out the optimal offset (ui ) from the ground profile and
+
the corresponding cut and fill volume for that offset. Let the variable Vi,m
−
(i ∈ S, m ∈ K), and Vi,m (i ∈ S, m ∈ K) represent the total cut and fill
volume of material, respectively.
During the construction of a road, some materials may need to be
dumped, and some materials may need to be brought in. Borrow pits
are the external sections from which materials can be borrowed, and waste
pits are the external sections in which materials can be dumped. Suppose
B = {1, 2, ..., nβ } and W = {1, 2, ..., nω } are the two sets of indices that are
14
2.1. Model variables and parameters
300
250
200
Volume
150
(Ri,l ) Cut Volume
100 Fill Volume
50
0
-4 -2 0 2 4
Height of levels (Li,l)
15
2.2. The quadratic model
is removed at time step t, then movement across the block is possible from
the next time step t + 1.
16
2.2. The quadratic model
Similarly, for each j ∈ N the index set N←j which consists of all indices i
such that xij is a permitted move,
i ∈ S ∪ B, if j ∈ S
j
N← = i : ∅ if j ∈ B .
i∈S if j ∈ W
N 2 = {(i, j) : j ∈ N→
i
}
17
2.2. The quadratic model
+ −
where Vi,m (for i ∈ S ∪B, m ∈ K), and Vi,m (for i ∈ S ∪W, m ∈ K) represent
the total cut and fill volume of material respectively.
The total volume of material moved from a section to other sections at
all time steps must be equal to the cut volume of that section (Constraint
(2.1) below). Similarly, the total volume of material moved to a section
from other sections at all time steps must be equal to the fill volume of that
section (Constraint (2.2) below). We call these the balance constraints:
X
+
xijt,m = Vi,m , ∀ i ∈ S ∪ B, m ∈ K. (2.1)
i
j∈N→
t∈T
m∈K
X
−
xjit = Vi,m , ∀ i ∈ S ∪ W, m ∈ K. (2.2)
i
j∈N←
t∈T
m∈K
The offset value ui is the difference between the road profile, which is
represented by the quadratic spline P (si ), and the given ground profile (hi )
(Constraint (2.3)).
P (si ) − hi = ui , ∀i ∈ S (2.3)
There could be a cut and fill of the same material at the same section
according to the input volume table (see Table 2.1). Usually the cut volume
decreases as the height of the offset level Li,l increases (see Table 2.1); and
the fill volume increases along with the height of the offset level. That means
the relationship between volume and offset level is convex. In general, if we
have only a convex relationship for piecewise approximation in linear pro-
gramming and we need minimization, then we can model that relationship
without using binary variables (Constraints (2.4) and (2.5)).
+ +
+ +
Ri,l+1 − Ri,l,m
Vi,m ≥ Ri,l,m + (ui − Li,l ), ∀i ∈ S, l ∈ Li \ {nl }, m ∈ K
Li,l+1 − Li,l
(2.4)
− −
− −
Ri,l+1 − Ri,l,m
Vi,m ≥ Ri,l,m + (ui − Li,l ), ∀i ∈ S, l ∈ Li \ {nl }, m ∈ K.
Li,l+1 − Li,l
(2.5)
18
2.2. The quadratic model
+ +
+ +
Ri,l+1 − Ri,l,m
Vi,m ≤ Ri,l,m + (ui − Li,l ) + M (1 − νi,l ),
Li,l+1 − Li,l
∀i ∈ S, l ∈ Li \ {nl }, m ∈ K, (2.6)
− −
− −
Ri,l+1 − Ri,l,m
Vi,m ≤ Ri,l,m + (ui − Li,l ) + M (1 − νi,l ),
Li,l+1 − Li,l
∀i ∈ S, l ∈ Li \ {nl }, , m ∈ K, (2.7)
19
2.2. The quadratic model
10 m
waste pit
20 m 40 m
𝑢1 = 0 𝑢2 =2 𝑢3 = 0
𝑉1+ ≥ 82.82 𝑉2+ ≥ 5.28 𝑉3+ ≥ 82.82
𝑉1− ≥ 0 𝑉2− ≥ 0.08 𝑉3− ≥ 0
Figure 2.8: Stockpiling scenario when Constraints (2.6) and (2.7) are not
considered.
X
νi,l = 1, ∀i ∈ S. (2.8)
l∈Li \{nl }
20
2.2. The quadratic model
The block removal indicator constraints (2.13, 2.14) ensure that when
the required amount of materials are cut and filled for any section containing
a block, then the block is considered removed from that section.
u
X X
+
xς(k)jt,m + M (1 − yku ) ≥ Vς(k),m , ∀k ∈ I, u ∈ T, m ∈ K,
t=0 j∈N ς(k)
→
(2.13)
u
X X
−
xjς(k)t,m + M (1 − yku ) ≥ Vς(k),m , ∀k ∈ I, u ∈ T, m ∈ K.
t=0 j∈N ς(k)
←
(2.14)
The smoothness constraints (2.17) and (2.18) ensure that the transi-
tions from one spline segment to the next are smooth, i.e., same grade and
elevation (see Figure 2.2).
The maximum allowable speed depends on the grade of the road profile.
The grade constraint (2.19) makes sure that the grade of the spline segments
are within the allowed maximum (GU ) and the minimum (GL ) value, so that
it can maintain the safety parameters.
21
2.2. The quadratic model
Usually, the elevation and the grade of the starting point and the ending
point of a road are defined explicitly. In addition to those points, the road
designer can set the elevation and grade value for some fixed control points
on the road (for example at an intersection). Let H be the index set of
all control points. The fixed point constraints (2.20), (2.21), (2.22) set the
grade and elevation on specific control points including the starting and the
ending point. The parameters yA , yB are the elevations of the starting and
the ending stations. Similarly, ȳA , ȳB are the slopes of the starting and the
ending spline segments. The parameters Hi is the elevation of the station
i ∈ H.
Finally, Constraints (2.23), (2.24), and (2.25) are bound constraints. The
parameter Mi+ , and Mi− are the largest volume possible to be cut and filled
from a section.
22
Chapter 3
23
3.2. Quasi network flow for multimaterial
𝑢 𝑙
𝑓𝑖,𝑖,𝑡,𝑚 Section 𝒊 𝑓𝑖,𝑖,𝑡,𝑚
𝑢
𝑙
𝑓𝑖−1,𝑖,𝑡,𝑚 𝑓𝑖,𝑖+1,𝑡,𝑚
nodes for both directions (Figure 3.1). If materials moved from one section
to another towards the West direction, then the material goes through the
West transit nodes, and this flow of material is referred as West transit flow.
Similarly, the flow towards the East direction goes through East transit
nodes, and is referred as East transit flow. Let the variables fi,i−1,t,m r and
r
fi,i+1,t,m (∀i ∈ S, t ∈ T , m ∈ K) be the flow of materials from one transit
node to the next in the West and East directions, respectively.
To represent the cut and fill volume of materials at each section, unload
and load flows are introduced for each section. Note that, cut and fill can
happen within the same section. The cut materials can be transferred to
the East and West transit nodes, and within the same section. Similarly,
the fill materials can be brought from the East and West transit nodes, and
within the same section. Let the variables fi−1,i,t,m l l
, fi+1,i,t,m l
, and fi,i,t,m
(∀i ∈ S, t ∈ T , m ∈ K) represent the load (fill) flows of materials to the East
and West transit nodes, and within the same section, respectively. Similarly,
u
the variables fi,i−1,t,m u
, fi,i+1,t,m u
, and fi,i,t,m (∀i ∈ S, t ∈ T , m ∈ K) represent
the unload (cut) flows of materials from the West and East transit nodes,
and within the same section, respectively.
The borrow and waste pits are attached to their associated sections.
24
3.2. Quasi network flow for multimaterial
Each borrow pit can only have unload flows to both transit nodes. These un-
load flows represent the cut volume from the borrow pit. The flows from bor-
b
row pits are called borrow flows. Let the variables fj,ϑ(j)−1,t b
and fj,ϑ(j)+1,t,m
(∀j ∈ B, t ∈ T , m ∈ K) be the flows of materials to the West and East
transit nodes, respectively, from the borrow pit. Similarly, for each waste
pit there are load flows from both directions. These load flows represent
the fill volume of the waste pit and are called waste flows. Let the vari-
w
ables fϕ(j)−1,j,t,m w
and fϕ(j)+1,j,t,m (∀j ∈ W, t ∈ T , m ∈ K) be the flows of
materials from the East and West transit nodes to waste pit, respectively.
Borrow pit 𝑓 𝑢 𝑙
𝑖,𝑖,𝑡,𝑚 Section 𝒊 𝑓𝑖,𝑖,𝑡,𝑚 Waste pit
𝜗(𝑗) 𝜑(𝑘)
𝑢
𝑙
𝑓𝑖−1,𝑖,𝑡,𝑚 𝑓𝑖,𝑖+1,𝑡,𝑚
Figure 3.2: A typical section i at time-step t with borrow and waste pit
associated with it (where ϑ(j) = ϕ(k) = i). The function ϑ : B → S maps
a borrow pit index to the section index to which it is attached, and the
function ϕ : W → S maps the same section for a waste pit.
25
3.2. Quasi network flow for multimaterial
Notice that the objective function in this model is more strictly defined
than in the quadratic model described earlier. In particular, the hauling
cost of material must be a linear function of the distance traveled. This is
unrealistic for long distances, but reasonably accurate for short hauls.
The transit nodes are virtual nodes that provide transits for all associated
flows. Therefore, the sum of the flows (demand) coming to a transit node
must be equal to the sum of the flows leaving (supply) the node. The flow
constraints for the East transit node (Constraint (3.1)), and for the West
transit node (Constraint (3.2)) ensure that the supply and demand at both
transit nodes are equal.
X X
r u b r l w
fi−1,i,t,m + fi,i+1,t,m + fj,i+1,t = fi,i+1,t,m + fi−1,i,t,m + fi−1,j,t,m ,
j∈B j∈W
ϑ(j)=i ϑ(j)=i
∀t ∈ T , i ∈ S, m ∈ K, (3.1)
X X
r u b r l w
fi+1,i,t,m +fi,i−1,t,m + fj,i−1,t,m = fi,i−1,t,m +fi+1,i,t,m + fi+1,j,t,m ,
j∈B j∈W
ϑ(j)=i ϑ(j)=i
∀t ∈ T , i ∈ S, m ∈ K. (3.2)
The balance constraints ensure that the total unload flows from a section
is equal to the cut volume of that section (Constraint (3.3)), and the total
load flows to a section is equal to the fill volume (Constraint (3.4)). Borrow
26
3.2. Quasi network flow for multimaterial
(Constraint (3.5)) and waste (Constraint (3.6)) pits constraints are written
similarly.
X
u u u +
fi,i−1,t,m + fi,i+1,t,m + fi,i,t,m = Vi,m , ∀i ∈ S, m ∈ K, (3.3)
t∈T
X
l l l −
fi−1,i,t,m + fi+1,i,t,m + fi,i,t,m = Vi,m , ∀i ∈ S, m ∈ K, (3.4)
t∈T
X
b b +
fj,ϑ(j)−1,t,m + fj,ϑ(j)+1,t,m = Vj,m , ∀j ∈ B, m ∈ K, (3.5)
t∈T
X
w −
fϕ(j)−1,j,t + fϕ(j)+1,j,t,m = Vj,m , ∀j ∈ W, m ∈ K. (3.6)
t∈T
The volume constraints (2.4), (2.5), (2.6), (2.7), (2.8), smoothness con-
straints (2.17), (2.18), grade constraints (2.19) and fixed point constraints
(2.20), (2.21), (2.22) are the same for this quasi network flow model as de-
scribed in the quadratic model.
r
If section i is a block, then for the East transit node equations fi−1,i,t,m =
l r u
fi−1,i,t,m and fi,i+1,t,m = fi,i+1,t,m (∀t ∈ T , m ∈ K) ensure that no material
can transfer across section i to the East direction. Because fi−1,i,t,m r =
l
fi−1,i,t,m implies that when materials are transferred from section i − 1 to
r
section i, all the materials are loaded (filled) to section i. And fi,i+1,t,m =
u
fi,i+1,t,m implies that when materials are transferred from section i to section
i + 1, all the materials are unloaded (cut) from Section i to Section i +
1. Similarly, in the case of West transit nodes, fi+1,i,t,mr l
= fi+1,i,t and
r u
fi,i−1,t,m = fi,i−1,t,m ensure that no material can transfer across Section i to
the West direction.
From the above reasoning, we can ensure that no material movement
can occur over a block to the East direction, until that block is removed by
Constraints (3.7), (3.8), (3.9), and (3.10). Similarly, for the West direction,
Constraints (3.11), (3.12), (3.13), (3.14) ensure no movement over a block.
r l
−(fς(k)−1,ς(k),t,m − fς(k)−1,ς(k),t,m ) ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K,
(3.7)
r l
fς(k)−1,ς(k),t,m − fς(k)−1,ς(k),t,m ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K,
(3.8)
r u
−(fς(k),ς(k)+1,t,m − fς(k),ς(k+1),t,m ) ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K,
(3.9)
r u
fς(k),ς(k)+1,t,m − fς(k),ς(k+1),t,m ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K.
(3.10)
27
3.2. Quasi network flow for multimaterial
r l
−(fς(k)+1,ς(k),t,m − fς(k)+1,ς(k),t,m ) ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K,
(3.11)
r l
fς(k)+1,ς(k),t,m − fς(k)+1,ς(k),t,m ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K,
(3.12)
r u
−(fς(k),ς(k)−1,t,m − fς(k),ς(k)−1,t,m ) ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K,
(3.13)
r u
fς(k),ς(k)−1,t,m − fς(k),ς(k)−1,t,m ≤ M yk,t−1 , ∀k ∈ I, t ∈ T , m ∈ K.
(3.14)
The block constraints must also ensure that no earth movement can
occur among sections, borrow pits, and waste pits: in between two blocks,
before the first block, and after the last block with no access roads, until
blocks are removed. Therefore, there is no transit flow (Constraints (3.15),
(3.16)), borrow flow (Constraints (3.17), (3.18)), or waste flow (Constraints
(3.19), (3.20)) between two blocks with no access roads until one of the
blocks is removed.
r
fi,i+1,t,m ≤ M (yk1 ,t−1 + yk2 ,t−1 ), ∀t ∈ T , (k1 , k2 ) ∈ Ī 2 , m ∈ K,
ς(k1 ) ≤ i, i + 1 ≤ ς(k2 ), (3.15)
r 2
fi+1,i,t,m ≤ M (yk1 ,t−1 + yk2 ,t−1 ), ∀t ∈ T , (k1 , k2 ) ∈ Ī , m ∈ K,
ς(k1 ) ≤ i, i + 1 ≤ ς(k2 ), (3.16)
b 2
fj,ϑ(j)+1,t,m ≤ M (yk1 ,t−1 + yk2 ,t−1 ), ∀t ∈ T , (k1 , k2 ) ∈ Ī , m ∈ K,
ς(k1 ) ≤ ϑ(j) − 1, ϑ(j),
ϑ(j) + 1 ≤ ς(k2 ), (3.17)
b 2
fj,ϑ(j)−1,t,m ≤ M (yk1 ,t−1 + yk2 ,t−1 ), ∀t ∈ T , (k1 , k2 ) ∈ Ī , m ∈ K,
ς(k1 ) ≤ ϑ(j) − 1, ϑ(j),
ϑ(j) + 1 ≤ ς(k2 ), (3.18)
w 2
fϕ(j)+1,j,t,m ≤ M (yk1 ,t−1 + yk2 ,t−1 ), ∀t ∈ T , (k1 , k2 ) ∈ Ī , m ∈ K,
ς(k1 ) ≤ ϕ(j) − 1, ϕ(j),
ϕ(j) + 1 ≤ ς(k2 ), (3.19)
w
fϕ(j)−1,j,t,m ≤ M (yk1 ,t−1 + yk2 ,t−1 ), ∀t ∈ T , (k1 , k2 ) ∈ Ī 2 , m ∈ K,
ς(k1 ) ≤ ϕ(j) − 1, ϕ(j),
ϕ(j) + 1 ≤ ς(k2 ). (3.20)
28
3.2. Quasi network flow for multimaterial
There will also be no transit flow (Constraints (3.21) and (3.22)), borrow
flow (Constraints 3.23 and 3.24), or waste flow (Constraints 3.25 and 3.26)
after the last block with no access road until the block is removed.
r
fi,i+1,t,m ≤ M yk1 ,t−1 , ∀t ∈ T , ς(k) ≤ i, i + 1 ≤ n, k ∈ Ī→ , m ∈ K,
(3.21)
r
fi+1,i,t,m ≤ M yk1 ,t−1 , ∀t ∈ T , ς(k) ≤ i, i + 1 ≤ n, k ∈ Ī→ , m ∈ K
(3.22)
b
fj,ϑ(j)+1,t,m ≤ M yk1 ,t−1 , ∀t ∈ T , ς(k) ≤ ϑ(j) − 1, ϑ(j), ϑ(j) + 1 ≤ n,
k ∈ Ī→ , m ∈ K, (3.23)
b
fj,ϑ(j)−1,t,m ≤ M yk1 ,t−1 , ∀t ∈ T , ς(k) ≤ ϑ(j) − 1, ϑ(j), ϑ(j) + 1 ≤ n,
k ∈ Ī→ , m ∈ K (3.24)
w
fϕ(j)+1,j,t,m ≤ M yk1 ,t−1 , ∀t ∈ T , ς(k) ≤ ϕ(j) − 1, ϕ(j), ϕ(j) + 1 ≤ n,
k ∈ Ī→ , m ∈ K, (3.25)
w
fϕ(j)−1,j,t,m ≤ M yk1 ,t−1 , ∀t ∈ T , ς(k) ≤ ϕ(j) − 1, ϕ(j), ϕ(j) + 1 ≤ n,
k ∈ Ī→ , m ∈ K. (3.26)
29
3.2. Quasi network flow for multimaterial
The block removal indicator constraints ensure that when the required
amount of earth is excavated from or embanked to a section with a block,
then the block is considered removed (Constraints (3.33) and (3.34)).
u
X
u u +
fς(k),ς(k)−1,t,m + fς(k),ς(k)+1,t,m + M (1 − yku ) ≥ Vς(k),m ,
t=0
∀k ∈ I, u ∈ T, m ∈ K, (3.33)
u
X
l l −
fς(k)−1,ς(k),t,m + fς(k)+1,ς(k),t,m + M (1 − yku ) ≥ Vς(k),m ,
t=0
∀k ∈ I, u ∈ T, m ∈ K. (3.34)
In this chapter we have discussed the quasi network flow model for the
vertical alignment of roads. This model reduces the size of the problem
from the quadratic model (see Chapter 2) from quadratic to linear with
respect to the number of sections. However, it has one drawback: the cost
function must be linear with respect to the hauling distance of materials.
And we still need a convex relationship between volumes of materials and
the offset value. In Chapter 4, we discuss some techniques to improve the
solution time for both models and remove the dependency on the convex
relationship between volume and offset levels.
30
Chapter 4
Speedup techniques
One of our goals in this research is to determine methods to solve the
vertical alignment problem in the most efficient manner. The models we
described in the previous two chapters can solve problems according to the
full specification except one limitation, i.e., the volume of each material must
be convex with respect to the height of the offset level. In this chapter we
also remove that limitation of not able to handle non-convexity. To make
an interactive design tools it is necessary to compute the optimal solution
quickly. In this chapter we describe four strategies that we used to decrease
the time to find a solution. In Chapter 5 we numerically test and compare
these methods.
31
4.1. Techniques with offset levels
X
Γi,l ≤ αik , ∀i ∈ S, k ∈ L0 , (4.1)
l∈Bk1
X
Γi,l ≤ (1 − αik ), ∀i ∈ S, k ∈ L0 . (4.2)
l∈Bk0
In applying the above, we also note that Constraint (2.8) is no longer re-
quired because for a given combination of αik (∀k ∈ L0 ), for each section
i ∈ S, only one of the Γi,l (∀l ∈ L) can be one.
Example 4.1. Consider the case of 5 input offset levels. Then we have 4
intervals and the set L0 = {0, 1}. Thus for each section i ∈ S, we get the
32
4.1. Techniques with offset levels
following inequalities:
Γi,1 + Γi,3 ≤ 0,
Γi,0 + Γi,2 ≤ 1,
Γi,2 + Γi,3 ≤ 1,
Γi,0 + Γi,1 ≤ 0.
Now, if we replace the binary variable νi,l with the continuous indicator
variable Γi,l in the volume constraints (2.6, 2.7), and add new constraints
(4.1) and (4.2), then we will get the same result as the original model,
but the binary variables are reduced from n(nl − 1) to ndlog2 (nl − 1)e and n
constraints (2.8) are discarded. However, the number of continuous variables
is increased by n(nl − 1), and 2ndlog2 (nl − 1)e new constraints are added.
33
4.2. Techniques with blocks
between two input offset levels (l and l + 1) that can be calculated by the
weighted sum of the two adjacent input offset heights (Constraint (4.4)).
Similarly, the cut and fill volumes can be calculated using the weighted sum
of input volumes of two adjacent offset levels (Constraints (4.5) and (4.6)).
In this formulation, we do not have to calculate slopes for each interval.
X
λi,l = 1, ∀i ∈ S, (4.3)
l∈Li
X
λi,l Li,l = ui , ∀i ∈ S, (4.4)
l∈Li
X
+
λi,l Ri,l = Vi+ , ∀i ∈ S, (4.5)
l∈Li
X
−
λi,l Ri,l = Vi− , ∀i ∈ S. (4.6)
l∈Li
34
4.2. Techniques with blocks
However we have to rewrite all the block constraints for both basic models
as a summation of γkt instead of just one ykt per constraint. In particular,
the block Constraints (2.9), (2.10), (2.11),(2.12), (2.13), (2.14), and (2.15)
of the quadratic model are rewritten using SOS1 variables as Constraints
(4.7), (4.8), (4.9), (4.10), (4.9), and (4.10).
t−1
X
xijt,m ≤ M γkw , ∀t ∈ T \ {0}, k ∈ I,
w=0
(i, j) ∈ Nbk , m ∈ K, (4.7)
t−1
X
xijt,m ≤ M γkw , ∀t ∈ T \ {0}, k ∈ Ī← ,
w=0
i, j ∈ Nb←,k , m ∈ K, (4.8)
t−1
X
xijt,m ≤ M γkw , ∀t ∈ T \ {0}, k ∈ Ī→ ,
w=0
i, j ∈ Nbk,→ , m ∈ K, (4.9)
t−1
X
xijt,m ≤ M (γk1 ,w + γk2 ,w ) , ∀t ∈ T \ {0}, (k1 , k2 ) ∈ Ī 2 ,
w=0
i, j ∈ Nbk1,k2 , m ∈ K, (4.10)
u u
!
X X X
+
xς(k)jt,m + M 1− γkw ≥ Vς(k) , ∀k ∈ I, u ∈ T, m ∈ K,
t=0 j∈N ς(k) w=0
→
m∈K
(4.11)
u u
!
X X X
−
xjς(k)t + M 1− γkw ≥ Vς(k) , ∀k ∈ I, u ∈ T, m ∈ K.
t=0 j∈N ς(k) w=0
←
m∈K
(4.12)
The block constraints for the basic quasi network flow model are rewrit-
ten in an analogous manner.
35
4.2. Techniques with blocks
where btj ∈ {0, 1}. Define Bt1 = {j : btj = 1} and Bt0 = {j : btj = 0}, for
each t ∈ T . Let T 0 = {0, 1, 2, ..., blog2 nb c} be a set that helps to represent
(nb + 1) number of time steps in binary format. Let vkj (∀j ∈ T 0 , k ∈ I) be
the set of binary variables which represent the time step at which the block
k is removed.
We then introduce extra continuous variables βkt ∈ [0, 1] (for all t ∈
T , k ∈ I) to indicate time step t when the block k is removed. The new
constraints (4.13) and (4.14) ensure that there will always be consecutive
ones in βkt (∀t ∈ T ) for each k ∈ I upto the last time step t. This represents
that once a block is removed it remains removed.
t−1
X X
βku ≤ t (1 − vkj ), ∀k ∈ I, t ∈ T \ {0, nb }, (4.13)
u=0 j∈Bt1
nb blog2 nb c
X X
βku ≥ (nb + 1) − 2j · vkj , ∀k ∈ I. (4.14)
u=0 j=0
Therefore, the monotonicity constraint (2.16) is not needed any more. The
other block constraints for both (quadratic and quasi network flow) models
remain the same. However, one needs to replace the binary variables ykt
with the continuous variables βkt .
Example 4.2. If we have I = {1, 2 . . . , 7} and T = {0, 1, 2 . . . , 7} then for
each k ∈ I we get the following inequalities from the Constraint (4.13):
βk0 ≤ [(1 − vk0 )] · 1,
βk0 + βk1 ≤ [(1 − vk1 )] · 2,
βk0 + βk1 + βk2 ≤ [(1 − vk1 ) + (1 − vk0 )] · 3,
βk0 + βk1 + βk2 + βk3 ≤ [(1 − vk2 )] · 4,
βk0 + βk1 + βk2 + βk3 + βk4 ≤ [(1 − vk2 ) + (1 − vk0 )] · 5,
βk0 + βk1 + βk2 + βk3 + βk4 + βk5 ≤ [(1 − vk2 ) + (1 − vk1 )] · 6,
βk0 + βk1 + βk2 + βk3 + βk4 + βk5 + βk6 ≤ [(1 − vk2 ) + (1 − vk1 ) +
(1 − vk0 )] · 7.
36
4.2. Techniques with blocks
βk0 + βk1 + βk2 + βk3 + βk4 + βk5 + βk6 + βk7 ≥ 8 − [22 vk2 + 2vk1 + vk0 ].
Proof. (Part i): We know, the binary representation of the tth time step
can be given as,
blog2 nb c
X
t= btj · 2j .
j=0
If the tth time step is selected for a block k ∈ I, then we can write t =
Pblog2 nb c
j=0 vkj · 2j . So, btj = vkj for all index j for the tth time step of block
k. Therefore, Bt1 = {j : btj = vkj = 1}. Thus,P in Constraint (4.13), the
P t−1
j∈Bt1 (1 − v kj ) term becomes zero. As a result, i=0 βki = 0. This proves
the first part.
(Part ii): If we have nb blocks, then we know we have nb + 1 time steps
for each block k ∈ I. Also notice, time step starts from 0 and ends at nb . If
Pblog n c
the tth time step is selected for block k, then t = j=02 b vkj · 2j for that
block. In the first part of this theorem, we prove that, the first t continuous
indicator variables (βk0 , βk1 , ..., βk(t−1) ) are zero. From Constraint (4.14), we
know, the sum of all the continuous variables should be at least (nb + 1) − t.
The continuous indicator variable can have value at most 1. So, to make the
sum (nb +1)−t, we need at least (nb +1)−t continuous indicator variables to
be 1. If we rewrite Constraint (4.14), then we get the following expression,
To satisfy the last line, the continuous indicator variables from βkt to βknb
should be one.
37
4.2. Techniques with blocks
where b ∈ {0, 1}. So, to represent time step nb in binary format, we can use
blog2 nb c + 1 binary variables. For each block k ∈ I, we need to have a time
38
4.2. Techniques with blocks
step which will indicate when block k is removed. There are nb number of
blocks that need to be removed, and time steps are ranged from 0 to nb .
Therefore, one can use nb (blog2 nb c + 1) binary variables.
39
Chapter 5
Numerical results
In this chapter we discuss the performance of the models and techniques
that are described in earlier chapters.
40
5.1. Experimental setup
41
5.2. Performance measurement
42
5.3. Experimental results for single material
0.5
0.4
0.3
0.2
0.1
0
0 2 4 6 8 10 12
log2(τ)
43
5.3. Experimental results for single material
1
QBB
QBN
QBS
0.9 QNB
QNN
QNS
QSB
0.8 QSN
QSS
NBB
NBN
0.7 NBS
NNB
NNN
NNS
0.6 NSB
NSN
NSS
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7 8 9 10
log2(τ)
44
5.3. Experimental results for single material
1
QBB
QBN
QBS
0.9 QNB
QNN
QNS
QSB
0.8 QSN
QSS
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7 8 9
log2(τ)
1
QBB
QBN
QBS
0.9 QNB
QNN
QNS
QSB
0.8 QSN
QSS
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7 8
log2(τ)
45
5.3. Experimental results for single material
1
NBB
NBN
NBS
0.9 NNB
NNN
NNS
NSB
0.8 NSN
NSS
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 2 4 6 8 10
log2(τ)
1
NBB
NBN
NBS
0.9 NNB
NNN
NNS
NSB
0.8 NSN
NSS
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7 8 9 10
log2(τ)
46
5.3. Experimental results for single material
– The quadratic model with the basic level and block technique can
solve 17 problems out of 46 test problems taking 1197 seconds.
Whereas the quadratic model with the SOS2 level technique and
the basic block technique can solve those 17 problems in 151
seconds. The improvement in speed is a factor of 8.
47
5.3. Experimental results for single material
1
QB
QN
QS
0.9 NB
NN
NS
0.8
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 2 4 6 8 10 12
log2(τ)
1
QB
QN
QS
0.9 NB
NN
NS
0.8
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 2 4 6 8 10 12
log2(τ)
48
5.3. Experimental results for single material
– The quasi network flow model with the basic level and block tech-
nique can solve 41 test problems taking 1755 seconds. Whereas
the quasi network flow model with the SOS2 level technique and
the basic block technique takes 175 seconds to solve those prob-
lems. In this case the improvement in speed is a factor of 10.
– The improvement from the basic quadratic model to quasi net-
work flow model introduced in [Rah12] with SOS2 level technique
is a factor of 173.
– The basic strategy QBB (quadratic model with basic level and
block technique) takes 785 seconds to solve 9 problems out of
46 problems. Whereas the Strategy QSB takes 50 seconds and
Strategy QSS takes 205 seconds to solve those 9 problems. The
performance improvement in solution time from QBB to QSB is
a factor 16.
– On the other hand, for the quasi network flow model, the basic
strategy NBB takes 2128 seconds to solve 36 problems out of 46.
Whereas the strategy NSS (quasi network flow with SOS2 level
and SOS1 block technique) takes 623 seconds. The improvement
is a factor of 3. The performance improvement from QBB to NSS
is a factor of 142.
For no blocks, the basic quadratic model (QB) with basic level technique
can solve 42% of the problem set using CPLEX and 50% using CBC. Using
both the quadratic (QS) and the quasi network flow model(NS) with SOS2
level technique, we improve this to 100% for both solvers. For problems
without blocks, the performance improvement in solution time for different
strategies are listed below.
− The solution time is improved from basic quasi network flow model
(NB) to quasi network flow model with SOS2 level technique (NS) by
a factor of 94.1.
49
5.3. Experimental results for single material
The precedence of all techniques are shown in Tables 5.3, 5.4 for CPLEX
and CBC respectively in terms of number of problems solved and solution
speed.
Although the performance of the quasi network flow model is better than
the quadratic model, the quasi network flow model cannot have a non linear
cost function with respect to hauling distance. The quadratic model is more
flexible as it can handle a nonlinear cost function.
50
5.4. Experimental results for multimaterial
Table 5.5: List of strategies without blocks for multimaterial test cases
51
5.4. Experimental results for multimaterial
strategy QSS. Among the three strategy QSN is the best method in terms
of number of problem solved. The reason for this kind of performance profile
for the quadratic model is that the problems size grows very fast with the
number of materials and blocks. Since QSN reduces the number of binary
variables, the size of the problem is less than the other two strategies.
Overall, the performance profile with blocks for multimaterial test is
similar to the performance of single material.
1
QSB
QSN
QSS
0.9 NSB
NSN
NSS
0.8
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 1 2 3 4 5 6 7
log2(τ)
Figure 5.9: Performance profile for solver CPLEX for multi-material (with
blocks)
52
5.4. Experimental results for multimaterial
Table 5.6: List of strategies with blocks for multimaterial test cases
1
QS
NS
0.9
0.8
0.7
0.6
ρs(log2(τ))
0.5
0.4
0.3
0.2
0.1
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
log2(τ)
Figure 5.10: Performance profile for solver CPLEX for multi-material (with-
out blocks)
53
5.4. Experimental results for multimaterial
54
Chapter 6
Conclusion
We started this thesis with the practical requirements that need to be
considered for vertical alignment design in Chapter 1. We also discussed the
shortcomings of previous research works. We developed two models based
on the previous works of [Mor09], [HKL11], [Rah12]. The quadratic and
quasi network flow models are an enhancement of the previous work done
in [Rah12] and are described in Chapters 2 and 3. These two models are
capable of considering all requirements for optimal design of the vertical
alignment. Both models incorporate features such as multimaterial, sides
slopes and physical blocks.
We further introduced six potential techniques to improve the solution
speed that are applicable for both models in Chapter 4. Numerical tests
shows that using the best combination of techniques can consistantly gen-
erate major improvements in solution time, regardless of which LP solver
is used. For example, the quasi network flow model introduced in [Rah12]
and further improved by the best speed techniques discussed in this research
improves solution speed from the basic quadratic model by a factor of 173.
The techniques developed in this research have made it possible to solve
a vertical alignment design for a very long road within a reasonable amount
of time. Using these improvement techniques, our industry partner (Softree
Technical Systems Inc.) has developed an interactive road design software.
55
6.1. Future research
distance. However, once the materials are put in a large truck, a long travel-
ing distance does not increase the cost significantly. To accommodate these
two hauls in our quasi network flow model, we can define another pair of
East and West transit flow. Then with appropriate cost values set for the
short and long haul it is probably possible to have a nonlinear cost function.
56
Bibliography
[AAS04] AASHTO, editor. A policy on geometric design of highways and
streets. AASHTO, 5 edition, 2004. → pages 2, 8
57
Bibliography
58
Bibliography
[KL10] V. R. Koch and Y. Lucet. A note on: Spline technique for model-
ing roadway profile to minimize earthwork cost. Journal of Indus-
trial and Management Optimization, 6(2):393 – 400, May 2010.
→ pages 4, 6, 8, 10
59
Bibliography
[LV92] M.G. Lay and J.E. Vance. Ways of the World: A History of the
World’s Roads and of the Vehicles That Used Them. RUTGERS
University Press, 1992. → pages
[MA04] A. A. Moreb and M. S. Aljohani. Quadratic representation for
roadway profile that minimizes earthwork cost. Journal of Systems
Science and Systems Engineering, 13(2):245–252, April 2004. →
pages 4, 5, 10
[Min12a] Minister of Public Works and Government Services. Transporta-
tion in canada 2011 - comprehensive review. Transport Canada,
Cat. No. T1-23A/2011E-PDF:15, 2012. → pages 1
[Min12b] Ministry of Transportation and Infrastructure. Construction and
rehabilitation cost guide, July 2012. → pages 1
[MMM06] A. Martin, M. Mller, and S. Moritz. Mixed integer models for
the stationary case of gas network optimization. Mathematical
Programming, 105:563–582, 2006. → pages 33
[Mor96] A. A. Moreb. Linear programming model for finding optimal road-
way grades that minimize earthwork cost. European Journal of
Operational Research, 93(1):148 – 154, 1996. → pages 4, 5
[Mor09] A. A. Moreb. Spline technique for modeling roadway profile to
minimize earthwork cost. Journal of Industrial and Management
Optimization (JIMO), 5(2):275–283, 2009. → pages 2, 4, 5, 6, 8,
10, 55
[OEC73] OECD. Optimisation of road alignment by the use of computers.
Technical report, Organization of Economic Co-operation and De-
velopment, Paris, 1973. → pages 4
[Rah12] F. Rahman. Optimizing the vertical alignment under earthwork
block removal constraints in road construction. Master’s thesis,
UBC, 2012. → pages 6, 8, 16, 23, 49, 55
[SH81] J. F. B. Shaw and B. E. Howard. Comparison of two integra-
tion methods in transportation routing. Transportation Research
Record, 806:8–13, 1981. → pages 3
[SH82] J. F. B. Shaw and B. E. Howard. Expressway route optimization
by ocp. Transportation Engineering Journal, 108:227–243, 1982.
→ pages 3
60
Bibliography
[TT03] C. W. Tat and F. Tao. Using gis and genetic algorithm in highway
alignment optimization. In Intelligent Transportation Systems,
2003. Proceedings. 2003 IEEE, volume 2, pages 1563 – 1567 vol.2,
oct. 2003. → pages 7
61
Appendix
62
Appendix A
Tables
Table A.1: Solution times for CPLEX with 6 strategies for 14 test problems
without blocks
Test # QB QN QS NB NN NS
1 1.485 NaN 0.032 1.181 NaN 0.021
2 1.134 NaN 0.027 1.119 NaN 0.018
3 NaN NaN 0.028 0.647 NaN 0.023
4 31.377 136.647 0.06 1.005 203.027 0.031
5 NaN NaN 0.065 1.474 NaN 0.035
6 74.593 NaN 0.128 2.514 NaN 0.046
7 NaN NaN 0.122 3.144 NaN 0.05
8 NaN NaN 0.125 4.97 NaN 0.044
9 199.839 NaN 0.176 5.671 NaN 0.056
10 NaN NaN 0.155 4.062 NaN 0.047
11 NaN NaN 1.605 18.932 NaN 0.147
12 NaN NaN 1.312 22.998 NaN 0.189
13 NaN NaN 1.322 12.813 NaN 0.119
14 156.044 NaN 1.479 10.17 86.527 0.138
63
Appendix A. Tables
Table A.2: Solution times for CBC with 6 strategies for 14 test problems
without blocks
Test # QB QN QS NB NN NS
1 45.716 NaN 0.057 101.07 NaN 0.04
2 15.417 NaN 0.034 38.33 NaN 0.03
3 31.591 NaN 0.047 55.593 NaN 0.043
4 12.985 NaN 0.214 36.97 NaN 0.084
5 35.614 NaN 0.181 23.706 NaN 0.091
6 NaN NaN 0.359 NaN NaN 0.115
7 NaN NaN 0.281 112.62 NaN 0.123
8 NaN NaN 0.333 45.162 NaN 0.149
9 160.272 NaN 0.602 15.58 NaN 0.192
10 48.029 NaN 0.541 9.091 NaN 0.164
11 NaN NaN 5.05 NaN NaN 0.664
12 NaN NaN 4.999 NaN NaN 0.8
13 NaN NaN 5.392 161.062 NaN 0.61
14 NaN NaN 5.32 8.943 89.347 0.564
64
Table A.3: Solution time for CPLEX with 18 strategies for 48 test problems with blocks
Test # QBB QBN QBS QNB QNN QNS QSB QSN QSS NBB NBN NBS NNB NNN NNS NSB NSN NSS
1 1.45 3.14 2.45 11.69 16.11 10.95 0.27 0.28 1.23 0.70 0.97 0.94 4.28 12.23 4.77 0.05 0.05 0.08
2 3.03 3.46 3.57 70.85 133.41 123.73 0.40 0.38 1.60 1.62 1.56 1.40 11.50 19.18 9.02 0.05 0.05 0.06
3 9.55 26.27 24.89 NaN NaN NaN 1.46 1.43 9.06 2.26 2.28 1.92 33.45 63.37 52.82 0.11 0.10 0.16
4 NaN NaN NaN NaN NaN NaN 20.88 34.66 223.09 8.91 14.00 52.68 102.79 NaN 207.15 0.37 0.43 0.75
5 43.44 23.92 49.00 NaN NaN NaN 2.53 2.42 18.64 3.48 2.28 4.13 83.02 78.67 240.34 0.18 0.17 0.42
6 54.05 43.39 127.68 NaN NaN NaN 4.05 3.29 42.56 4.53 8.71 4.98 48.24 64.71 41.54 0.16 0.30 0.36
7 89.68 175.70 NaN NaN NaN NaN 14.19 12.39 102.07 17.15 25.66 52.08 NaN NaN NaN 1.41 6.28 10.40
8 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
9 NaN NaN NaN NaN NaN NaN 28.58 20.61 114.49 25.56 17.55 49.82 NaN NaN NaN 1.43 1.34 2.74
10 111.67 NaN NaN NaN NaN NaN 16.52 6.47 75.03 39.76 15.58 21.86 NaN NaN NaN 0.95 0.78 0.90
11 NaN NaN NaN NaN NaN NaN 50.46 78.99 NaN 40.62 46.36 27.03 NaN NaN NaN 1.34 1.18 1.18
12 NaN NaN NaN NaN NaN NaN 78.59 114.20 NaN 77.60 58.30 164.51 NaN NaN NaN 3.84 4.55 1.10
13 57.78 56.80 92.90 NaN NaN NaN 4.54 4.12 23.42 7.96 7.49 13.95 39.06 NaN 91.41 0.30 0.38 0.36
14 43.98 92.03 51.95 NaN NaN NaN 1.15 1.19 6.17 15.62 13.07 14.79 NaN 34.16 130.92 0.28 0.11 0.12
15 60.40 NaN NaN NaN NaN NaN 12.46 11.75 191.66 11.28 22.65 23.36 NaN NaN NaN 0.52 0.42 0.81
16 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
17 NaN NaN NaN NaN NaN NaN 33.28 28.50 132.78 34.84 18.33 34.44 NaN NaN NaN 2.12 1.93 2.17
18 NaN NaN NaN NaN NaN NaN 115.21 101.36 NaN 16.40 22.56 28.85 NaN NaN NaN 2.87 4.89 5.68
19 231.87 NaN NaN NaN NaN NaN 47.39 43.10 NaN 14.62 24.40 13.07 NaN 203.81 NaN 1.36 1.33 1.37
20 NaN NaN NaN NaN NaN NaN 122.71 89.45 NaN 21.00 16.15 65.18 NaN NaN NaN 1.60 1.70 6.48
21 NaN NaN NaN NaN NaN NaN NaN NaN NaN 70.54 100.87 206.28 NaN NaN NaN 23.45 14.16 11.26
22 NaN NaN NaN NaN NaN NaN NaN NaN NaN 210.73 NaN NaN NaN NaN NaN 91.53 225.44 131.60
23 150.65 NaN NaN NaN NaN NaN 25.07 22.78 NaN 7.82 30.89 18.62 NaN NaN NaN 0.36 0.38 1.09
24 27.61 56.59 110.77 NaN NaN NaN 3.76 3.18 50.44 2.20 3.46 3.60 15.62 33.19 37.86 0.13 0.13 0.13
25 NaN NaN NaN NaN NaN NaN 14.62 10.13 NaN 13.57 15.09 45.34 NaN NaN NaN 0.22 0.22 0.41
26 NaN NaN NaN NaN NaN NaN 109.03 NaN NaN 58.77 231.60 220.83 NaN NaN NaN 0.75 0.77 2.48
27 109.58 182.50 NaN NaN NaN NaN 6.57 6.12 68.05 29.95 26.31 40.93 NaN NaN NaN 0.16 0.24 0.20
Appendix A. Tables
28 NaN NaN NaN NaN NaN NaN 10.33 6.37 200.25 39.88 60.48 62.07 NaN NaN NaN 0.20 0.17 0.19
29 70.76 41.68 99.71 NaN NaN NaN 2.25 1.92 24.03 35.54 25.09 35.96 NaN NaN NaN 0.11 0.11 0.20
30 NaN NaN NaN NaN NaN NaN 40.41 27.70 NaN 198.18 20.70 11.30 NaN NaN NaN 0.44 0.64 0.62
31 54.89 127.81 70.25 NaN NaN NaN 6.99 6.77 33.75 28.95 11.31 11.08 NaN NaN NaN 0.16 0.14 0.17
32 NaN NaN NaN NaN NaN NaN 54.91 45.04 NaN 19.65 19.08 27.24 NaN NaN NaN 0.33 0.34 1.10
33 NaN NaN NaN NaN NaN NaN 36.86 21.53 NaN 21.19 26.75 26.01 NaN NaN NaN 0.28 0.29 0.45
34 NaN NaN NaN NaN NaN NaN 51.57 36.25 NaN 33.64 21.29 44.98 NaN NaN NaN 0.64 0.58 2.80
35 NaN NaN NaN NaN NaN NaN 65.12 40.16 NaN 15.32 17.66 20.64 NaN NaN NaN 0.48 0.41 0.58
36 NaN NaN NaN NaN NaN NaN 186.31 209.07 NaN 136.10 50.84 165.77 NaN NaN NaN 1.42 1.54 5.24
37 NaN NaN NaN NaN NaN NaN 212.62 NaN NaN 50.16 155.81 22.39 NaN NaN NaN 2.59 2.50 2.01
38 76.63 76.14 71.28 NaN NaN NaN 1.44 0.59 0.50 9.66 9.27 9.16 NaN NaN NaN 0.66 0.11 0.53
39 NaN NaN NaN NaN NaN NaN 49.95 34.84 NaN 18.57 24.80 27.78 NaN NaN NaN 0.36 0.45 0.76
40 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 7.39 NaN 135.91
41 NaN NaN NaN NaN NaN NaN NaN NaN NaN 170.95 NaN NaN NaN NaN NaN 24.57 22.40 107.02
42 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 216.44 NaN NaN NaN NaN 5.66 7.47 5.07
43 NaN NaN NaN NaN NaN NaN NaN NaN NaN 133.79 65.11 228.36 NaN NaN NaN 4.01 5.28 4.68
44 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 2.75 3.74 5.73
65
45 NaN NaN NaN NaN NaN NaN NaN NaN NaN 95.16 144.01 104.32 NaN NaN NaN 2.36 2.11 2.73
46 NaN NaN NaN NaN NaN NaN NaN NaN NaN 10.64 12.03 13.62 49.16 69.87 49.84 1.23 1.42 2.01
Table A.4: Solution time for CBC with 18 strategies for 48 test problems with blocks
Test # QBB QBN QBS QNB QNN QNS QSB QSN QSS NBB NBN NBS NNB NNN NNS NSB NSN NSS
1 7.94 14.92 12.48 NaN NaN NaN 1.78 5.44 0.53 3.22 4.95 4.57 NaN NaN NaN 0.47 1.61 0.17
2 84.62 29.96 30.63 NaN NaN NaN 0.49 127.72 1.00 21.67 6.74 3.85 NaN NaN 217.71 0.29 10.10 0.25
3 106.41 89.66 108.05 NaN NaN NaN 25.03 NaN 7.28 45.20 58.22 4.96 NaN NaN NaN 3.70 19.47 1.99
4 NaN NaN NaN NaN NaN NaN 199.37 NaN 191.11 102.06 207.69 40.13 NaN NaN NaN 20.91 NaN 2.94
5 NaN NaN NaN NaN NaN NaN 162.16 NaN 17.63 27.07 86.68 59.04 NaN NaN NaN 7.68 27.18 3.84
6 86.93 NaN NaN NaN NaN NaN 5.75 NaN 153.05 15.15 91.81 19.47 NaN NaN NaN 1.26 21.18 0.69
7 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
8 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
9 NaN NaN NaN NaN NaN NaN NaN NaN NaN 74.79 NaN 50.99 NaN NaN NaN 22.06 24.67 38.00
10 NaN NaN NaN NaN NaN NaN 89.99 NaN NaN 44.77 21.55 28.32 NaN NaN NaN 2.32 18.69 9.74
11 NaN NaN NaN NaN NaN NaN NaN NaN NaN 100.17 184.09 149.99 NaN NaN NaN 36.60 59.15 22.68
12 NaN NaN NaN NaN NaN NaN NaN NaN NaN 55.86 231.40 87.56 NaN NaN NaN 80.08 NaN 27.12
13 NaN 167.28 NaN NaN NaN NaN 12.29 NaN 22.33 14.79 11.78 15.24 NaN NaN NaN 2.28 9.18 1.83
14 31.92 59.55 30.01 NaN NaN NaN 1.33 38.83 1.53 40.16 8.86 47.30 NaN NaN NaN 0.74 0.70 0.36
15 NaN NaN NaN NaN NaN NaN NaN NaN NaN 92.78 172.95 19.83 NaN NaN NaN 26.32 30.48 24.78
16 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
17 NaN NaN NaN NaN NaN NaN 17.16 NaN 11.57 107.00 78.94 106.88 NaN NaN NaN 1.71 32.75 0.99
18 NaN NaN NaN NaN NaN NaN NaN NaN NaN 113.88 NaN NaN NaN NaN NaN 62.15 94.80 153.02
19 NaN NaN NaN NaN NaN NaN 25.78 NaN 55.81 139.14 144.08 36.36 NaN NaN NaN 3.61 62.36 1.07
20 NaN NaN NaN NaN NaN NaN 175.26 NaN NaN NaN NaN 121.82 NaN NaN NaN 7.34 58.31 57.15
21 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 222.24 NaN 10.72
22 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
23 NaN NaN NaN NaN NaN NaN 32.30 NaN 26.36 46.26 192.51 86.85 NaN NaN NaN 2.78 49.74 2.46
24 144.72 NaN NaN NaN NaN NaN 4.49 NaN 9.16 8.78 5.43 27.27 228.01 151.99 NaN 0.59 6.39 0.67
25 NaN NaN NaN NaN NaN NaN NaN NaN 112.01 56.22 76.39 52.62 NaN NaN NaN 17.29 37.68 5.51
26 NaN NaN NaN NaN NaN NaN NaN NaN NaN 102.68 NaN 89.12 NaN NaN NaN 97.88 96.15 93.68
27 NaN NaN NaN NaN NaN NaN 24.09 NaN 21.63 37.81 13.90 33.54 NaN NaN NaN 1.81 11.62 1.84
Appendix A. Tables
28 NaN NaN NaN NaN NaN NaN 41.81 NaN 8.86 18.80 107.69 22.53 NaN NaN NaN 0.84 10.58 0.89
29 125.53 129.79 114.93 NaN NaN NaN 4.34 NaN 4.40 23.74 17.82 25.01 NaN NaN NaN 0.47 1.66 0.43
30 NaN NaN NaN NaN NaN NaN NaN NaN NaN 114.71 117.30 25.19 NaN NaN NaN 28.48 45.83 11.26
31 137.33 134.24 178.72 NaN NaN NaN 5.34 NaN 5.97 34.70 17.44 16.66 NaN NaN NaN 0.50 0.50 0.45
32 NaN NaN NaN NaN NaN NaN 35.37 NaN 58.96 44.59 67.66 41.11 NaN NaN NaN 2.64 65.39 3.54
33 NaN NaN NaN NaN NaN NaN NaN NaN 99.76 29.52 19.02 37.11 NaN NaN NaN 14.04 23.46 7.82
34 NaN NaN NaN NaN NaN NaN NaN NaN NaN 216.00 160.99 135.16 NaN NaN NaN 14.73 86.14 27.83
35 NaN NaN NaN NaN NaN NaN NaN NaN NaN 65.16 149.84 80.59 NaN NaN NaN 27.01 56.27 9.78
36 NaN NaN NaN NaN NaN NaN NaN NaN NaN 122.57 NaN NaN NaN NaN NaN 80.26 134.80 96.22
37 NaN NaN NaN NaN NaN NaN NaN NaN NaN 147.59 NaN 230.79 NaN NaN NaN 110.57 NaN 60.43
38 59.80 94.50 81.45 NaN NaN NaN 1.78 1.65 1.77 11.87 17.77 13.85 NaN NaN NaN 1.53 0.44 0.53
39 NaN NaN NaN NaN NaN NaN NaN NaN 93.20 20.81 120.71 50.20 NaN NaN 157.72 20.95 35.08 5.34
40 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
41 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
42 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 127.43 NaN NaN NaN 208.73 NaN 111.51
43 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 101.28 195.48 91.70
44 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 92.31 221.35 21.92
66
45 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 211.04 NaN NaN NaN 15.44 116.83 8.25
46 NaN NaN NaN NaN NaN NaN NaN NaN NaN 28.65 31.34 28.30 47.49 201.13 163.63 5.12 45.18 4.43
Appendix A. Tables
67
Appendix A. Tables
Table A.6: Solution time for CPLEX with two strategies for 16 test problems
without blocks for multimaterial
Test # QS NS
1 0.307 0.16
2 0.685 0.271
3 9.62 4.192
4 0.686 0.301
5 2.63 1.78
6 9.117 1.454
7 25.994 3.433
8 17.785 3.108
9 65.313 7.668
10 16.316 2.54
11 NaN NaN
12 NaN NaN
13 270.647 15.958
14 44.071 1.401
68
Appendix A. Tables
69
Appendix A. Tables
70
Appendix A. Tables
71
Table A.9: Test configuration for 60 test problems with patterns of blocks and access roads associated with sections
Test # Road Offset Levels Access Roads Blocks
1 A 10 1 10;25;37
2 A 10 15;40 10;20;30;43;45
3 A 10 1;10;19;30;50 2;3;7;13;17;24;25;40;41;45
4 A 10 1;3;5;7;9;11;15;17;20;23;26;29;33;35;38;41;43;46;48;50 2;4;6;8;10;12;13;14;16;18;19;21;22;24;27;28;30;31;32;36;40;42;44;47;49
5 A 10 15;30;40;50 4;5;9;10;20;21;22;23;24;35;45;46
6 B 10 1;5;10;15;20;25;30;35;40;50 2;3;7;13;18;23;28;33;34;38;43;44;45;46;49
7 B 10 1;25;30;50 4;5;6;9;12;14;15;16;19;20;21;26;27;33;34;38;40;45;46;47
8 B 10 4;10;15;21;28;36;42;48 1;2;3;5;6;7;8;9;11;12;13;14;16;17;18;19;20;22;23;24;25;26;27;29;30;31;32;33;34;35;37;39;40;41;43;44;45;46;47;49
9 C 10 1;100 20;30;40;41;55;60;70
10 C 10 30;50;80 20;25;40;60;61;70;85;90;
11 C 10 1;10;20;25;30;40;45;50;60;70;80;90;100 5;6;14;15;22;27;33;34;35;43;48;55;56;65;68;73;75;85;96
12 C 10 1;7;14;20;25;30;35;44;50;55;60;66;70;75;80;90;100 4;5;10;11;16;22;23;27;33;38;40;41;48;53;58;64;68;73;78;81;82;94
13 C 10 50 10;20;30;60;70
14 C 10 20;50 10;30;60
15 C 10 10;30;50;80 5;6;17;25;35;40;45;55;60;85;90;95
16 C 10 1;5;10;15;20;25;30;35;45;50;55;60;65;70;75;80;85;90;95;100 2;3;7;8;12;17;23;28;33;36;40;41;42;48;53;54;58;62;63;67;72;73;77;78;83;84;88;92;97;98
17 C 16 5;25;45;65;80 2;10;15;20;30;31;35;50;70;90
18 D 10 20;80;130 10;30;35;40;50;60;70;90;100;110;140;145
19 D 10 1;10;25;35;45;55;89;97;123 7;15;30;39;51;60;70;93;109;120
20 D 10 1;150 20;40;50;55;80;100;120
21 D 10 1;10;15;20;25;30;35;40;50;55;60;70;75;80;85;90;100;105;110;120;125;130;135;140;150 5;6;7;12;17;23;27;34;42;48;53;58;66;67;68;73;78;83;88;93;94;102;107;113;114;123;127;133;137;145
22 D 10 20;40;70;100;120 5;6;10;15;25;30;34;36;45;55;60;80;85;90;95;110;115;125;130;140
23 D 10 1;80;150 10;15;20;30;50;90;100;130
24 D 6 10;40;90;130 5;20;60;100;140
25 E 10 1;20;30;50;70;90;120 10;25;40;41;80;100;130;131;140
26 E 10 1;25;35;45;55;65;75;95;125;135 5;10;15;30;40;43;50;60;70;71;80;81;85;90;100;105;115;130;131;140;141
27 E 10 30;90 10;40;50;70;120
28 E 10 20;50;90;120;130;150 10;25;26;27;70;100;125;140
29 E 10 50 20;40;100
30 E 10 1;30;45;60;70;88;101;123;130;150 10;11;20;40;51;65;78;92;109;110;128;140;141;142;143
31 F 10 1 50;100
32 F 10 1;200 10;20;40;60;100
33 F 10 1;50;100;150 10;20;70;80;120;129;140;160
34 F 10 50;100 10;20;21;22;23;30;31;60;90;130
35 F 10 1;24;44;58;77;98;120;150 9;10;11;30;32;50;60;80;100;130;140;170
36 F 10 1;50;90;140;200 10;20;30;60;70;88;101;120;121;122;130;150;170;189;182
37 F 10 10;20;40;60;80;100;120;140;160;180 5;15;30;31;32;50;55;70;71;90;110;130;131;149;150;170;172;189;190;191
38 F 10 1 100
Appendix A. Tables
39 F 6 1;50;130;200 30;70;90;100;120;150;180
40 G 20 1;13;20;33;40;55;66;77;90;100;120;130;150;160;190;220;240;260;280;290;300;330;340;350;360 7;8;9;16;25;35;50;60;61;70;84;88;95;96;105;110;115;125;135;140;144;155;165;170;180;185;200;210;230;250;270;285;295;310;320;335;345;355;370;380
41 G 10 1;30;70;100;130;150;170;200;230;250;270;290;330;350;370 10;15;20;40;45;55;60;61;62;80;110;120;140;160;180;185;190;198;211;220;225;245;265;280;300;310;320;340;360;380
42 G 10 10;25;40;55;70;85;100;115;140;155;165;175;190;220;250;280;300;330;360;380 4;5;15;30;50;60;65;75;90;105;125;150;160;170;200;210;240;270;290;310;340;370
43 G 10 1;30;60;90;130;160;190;250;300;350 10;15;20;50;80;110;150;170;220;230;240;280;290;330;380
44 G 20 50;100;150;250;330 10;20;70;120;130;170;200;300;310;350
45 G 10 1;50;90;130;160;260;350 10;30;70;100;120;150;200;290;380
46 G 4 1;100;300 50;120;150;200;330
47 A 40 1;5;10;15;20;30;35;40;45;50 X
48 A 30 1 X
49 B 40 1 X
50 C 16 1 X
51 C 24 1 X
52 D 16 1 X
53 D 22 1 X
54 E 24 1 X
55 F 16 1 X
56 F 10 1 X
57 G 16 1 X
58 G 30 1 X
59 G 10 1 X
60 G 4 1 X
72
Table A.10: A sample input table for multi-material
Station X Y h Offset M1-Cut M1-Fill M1-Type M2-Cut M2-Fill M2-Type M3-Cut M3-Fill M3-Type M4-Cut M4-Fill M4-Type
73