Marina Mooring Optimization 15066j System Optimization and Analysis Summer 2003

advertisement
Marina Mooring
Optimization
15066j System Optimization and Analysis
Summer 2003
Professor Stephen C. Graves
Team Members:
Brian Siefering
Amber Mazooji
Kevin McKenney
Paul Mingardi
Vikram Sahney
Kaz Maruyama
Introduction
Each summer, boat owners flock to marinas to sign up for a mooring spot to tie up their
boats. A mooring is a buoy that is anchored to the ocean floor for the purpose of securing
a boat for storage. A picture of a mooring is shown in Figure 1. Figure 2 is a diagram of
a mooring buoy and anchor line. A typical marina is shown in Figure 3, where moorings
are positioned in a grid like pattern.
(Photo removed for publication.)
Figure 1. Picture of Boat on a Mooring.
Mooring Buoy
Mooring Line
Line Secured to Bedrock
Figure 2. Diagram of Mooring Buoy and Anchor Line.
(Photo removed for publication.)
Figure 3. Typical Marina Mooring Layout.
Each summer, many marina customers are put on waiting lists because the
mooring supply cannot always meet the demand. Whether or not a customer gets a
mooring and where the mooring is located is based strictly on seniority. As customers
with optimal mooring locations leave the marina, their moorings are handed down to the
customers who have been with the marina the longest. Mooring that are freed up are then
released to customers on the waiting list.
2
Additionally, the same moorings are placed in the same grid locations from year
to year. Boats are then assigned on a first come first serve basis as previously described
without taking into account variables which distinguish between boats. This propagates
the sub-optimal usage of the marina water space. By instead taking into account
variables such as boat length, hull depth, and mooring location, a marina can optimize
their revenues while maximizing the number of satisfied customers.
Problem Description
The goal of this optimization program is to maximize revenue for the assignment
of boat moorings at a marina. The model was based on the marina shown in Figure 4.
The marina is modeled as a rectangular harbor as shown in Figure 5 with a manifest of
boats of different lengths and hull depths. The black dots represent the boat locations
while the dotted circles represent the circle that the boat swings through under varying
tide and wind conditions. The depth of the water in the marina increases as y increases
from the dock to the channel. The costs of mooring positions in the harbor are based on
the vicinity to both the dock and to the ocean channel. In other words, customers desire
their boats to be close to the dock so that it takes less time to row out to their boat.
Additionally, if the boat is closer to the marina exit, it will take less time for the customer
to exit the harbor. Mooring costs are dependent on the swing radius that the boat
occupies as well as the depth of the water the boat requires.
Dock
Channel
Figure 4. Green Pond Harbor.
3
Marina
Top View
Exit
Cross Section
8’
Channel
Depth, z
y
(xi,yi)
x
Dock
(0,0)
4’
Figure 5. Marina Model.
4
Notation
The following is a summary of the variables and notation used in the model calculations
and discussion.
i
xi
= Index distinguishing between boats in model
= x location of boat i [ft]
yi
= y location of boat i [ft]
Dmin
= Minimum depth of marina at low tide[ft]
Dmax
= Maximum depth of marina at low tide[ft]
Xmin
= Minimum X coordinate for marina [ft]
Xmax
= Maximum X coordinate for marina [ft]
Ymin
= Minimum Y coordinate for marina [ft]
Ymax
T
B
= Maximum Y coordinate for marina [ft]
= Tide change for marina [ft]
= Minimum buffer distance between adjacent boats [ft]
Index distinguishing between boat length categories, (j=1: 15-20',
=
j=2L 20-30', j=3: 30-40')
= Length of boat i [ft]
= Integer variable, 1 if boat i is in length range j, 0 otherwise
j
Li
Li,j
Di
Hull Depth of boat I [ft]
Di,k
= Integer variable, 1 if boat I is in hull depth range k, 0 otherwise
θ1
= Angle of mooring line to vertical during high tide (fixed)
θ2,i
= Angle of mooring line to vertical during low tide for boat i
hi
= Mooring line length for boat i [ft]
r1,i
= Mooring sweep radius at low tide for boat i [ft]
r2,i
= Total boat sweep radius at low tide for boat i [ft]
zi
= Harbor depth at low tide for boat i location [ft]
Pk
= Price for boats in hull depth range k[$]
Pj
= Price for boats in length range j [$]
PD
= Variable Price associated with location in vicinity of the dock [$]
PC
=
PD,max
Variable Price associated with location in vicinity of the channel
entrance [$]
= Maximum Price for Dock Proximity
PC,max = Maximum Price for Harbor Channel Entrance Proximity
PD,min = Minimum Price for Dock Proximity
PC,min = Minimum Price for Harbor Channel Entrance Proximity
DT
= Diagonal Distance (Greatest Distance) in Harbor
5
Assumptions
1) The bottom of the marina is linear, sloping down in the +y direction. This
relationship was chosen in order to impose a realistic constraint on the mooring
placement problem. Harbor bottoms are generally non-uniform and, in addition,
may be non-linear. The problem can quite easily be adapted to any new harbor
ocean floor equation.
2) Moorings can be precisely placed. Mooring anchors are placed by divers and
may not be placed exactly in the desired location. This model contains a buffer
term which will be introduced later and which will accommodate for some
uncertainty. For the most part, however, this model ignores such variability.
3) Mooring lines are weightless. In reality, mooring cables have a mass which cause
the line to sag in the water, decreasing the overall distance from the anchor to the
mooring. The model assumes that the cables can be stretched out straight, which
accommodates for the longest cable length and as a result, the worst case
scenario.
4) Moorings can and will be moved every year. This is a reasonable assumption for
moorings in the northeast as they are removed each winter to protect them from
the elements. In a tropical environment, this assumption may not be valid
because the moorings are left in the water year in and year out.
5) Tide change is 2 feet or less. This is based on actual data for the harbor chosen,
however this constraint can vary quite significantly between geographic locations
and even between nearby harbors.
6) At high tide, the mooring line angle is 30o. When a boat is attached to a mooring
and subjected to a horizontal force (either wind or tide), the mooring will be
pulled to one side causing the mooring line to settle at some angle from vertical.
If the line is too short, the buoy will be pulled under water and the line will be
subjected to unnecessarily high tension. This can be alleviated by providing slack
in the line. We have assumed in this model that an angle of 300 from the vertical
is sufficient for uninhibited mooring operation.
7) Boats are between 15’ and 40’ in length. These boats were then bundled into
three groups: 15’-20’, 20’-30’, and 30’-40’. This is a reasonable assumption
because boats under 15’ do not usually require moorings. Boats that are greater
than 40’ generally are docked at the more expensive slips.
8) The minimum separation needed between boat sweeps is five feet. This is
essentially a buffer space. In other words, in the worst case scenario, when
adjacent boats swing in opposite directions, they will come no closer than a
distance of five feet.
9) Boats will be able to leave moorings without specified lanes designated in a
marina. This is a reasonable assumption to a certain degree. Because boats will
tend to drift in the same direction due to the wind and tide directions, as shown in
Figure 3, there will be a natural gap between moored boats though which moving
boats may maneuver. There may however be governmental regulations on the
spacing that we have not accounted for.
10) Boats are classified into two categories based on their hull depth: boats with hull
depths less than 4’ and boats with hull depths between 4’ and 8’. Sailboats and
6
long boats tend to have larger hull depth (draft), but typically not greater than 8’
for the given boat length assumed in the model.
11) The bow line length is negligible. The bow line connects the boat to the mooring.
The distance is typically on the order of 2-6 feet, however it does not connect to
the tip of the boat. As a result, boats tips tend to hang directly over the mooring,
simplifying the calculation.
7
Input Matrix
The model will allow the user to input up to eighteen different boats as well as several
marina characteristics. The number of boats allowed is limited by the number of
constraints that can be handled by Excel’s premium solver (250 non-linear constraints).
An add-on module would increase this number significantly. The boat and marina inputs
are as follows:
1. Boat Length – length of boat from bow to stern in feet.
2. Boat Hull Depth – the amount of water the boat needs to operate.
3. Hull depth categories – shallow (<4 ft) or deep draft (4-8 ft).
4. Hull depth cost – amount the marina will charge for each hull depth category.
5. Length categories – short (15-20 ft), medium (20-30 ft), or long (30-40 ft).
6. Length cost – amount the marina will charge for each boat length category.
7. Theta high – minimum angle to vertical seen by mooring line at high tide.
8. Tide change – difference between high and low tide in feet.
9. Harbor boundary – Minimum and maximum X and Y coordinates (in feet)
indicating the harbor boundary.
10. Buffer – minimum distance between adjacent boats at worst case sweeps.
Table 1. List of Input Parameters.
Boat Characteristics
Di,k=1
= 4 ft
Di,k=2
= 8 ft
Li,j=1
= 20 ft
Li,j=2
= 30 ft
Li,j=3
= 40 ft
Price Characteristics
Pj=1
= $30
Pj=2
= $80
Pj=3
= $150
PD,min = $20
PD,max = $500
PC,min = $20
PC,max = $200
Marina Characteristics
Dmin
= 4 ft
Dmax
= 12 ft
Xmin
= 0 ft
Xmax
= 550 ft
Ymin
= 0 ft
Ymax
= 550 ft
Anchoring Characteristics
θ1
= 0.524
T
= 2 ft
B
= 2.5 ft
8
Decision Variables
For each boat entered into the optimization, the decision variables will be the X and Y
coordinates relative to the marina boundaries which position the designated mooring.
These variables are listed below.
D.V . = ( xi , yi ) ∀i
(1)
A sample boat input matrix is listed below. The decision variables are shaded. The
integer variables categorize the boats in terms of length and hull depth.
Table 2. Sample Boat Input Matrix
Boat i
xi
Decision
Variables
yi
Li,1
Li,2
Boat
L
Characteristic i,3
Di,1
Di,2
1
513
118
1
0
0
1
0
2
501
319
0
1
0
0
1
9
3
371
84
0
1
0
1
0
4
399
329
0
0
1
0
1
5
279
51
0
0
1
1
0
Constraints & Calculations
Harbor Depth
The first calculation incorporated in this model involves the assignment of water depth to
a given location in the harbor. Because it has been assumed that the harbor water depth
increases linearly as y increases, the depth (zi ) for each boat i is given by the following
equation,
⎡ (D − Dmin )⎤
zi = Dmin + ⎢ max
⎥ yi
y max
⎦
⎣
for y min < yi < y max
(2)
Boat Sweep Radius
The next calculation relates the boat sweep radius (r2,i ) to the harbor depth, the tide
variation (T ) , the minimum mooring line angle (θ1 ) , the length of the boat (L ) , and the
buffer length (B ) as shown in the following equation which is based on the variables
illustrated in Figure 6,
hi =
zi + T
cos θ1
(3)
r1,i = zi tan θ 2
(4)
⎡
⎛ z ⎞⎤
r2,i = zi tan ⎢arccos⎜ ⎟⎥ + Li + B
⎝ h ⎠⎦
⎣
(5)
Swing Radius, r2
Buoy
r1
Boat
Length, L
Buffer, B
Sea level with high tide
Tide, T
Sea level with low tide
Depth, z
θ1
h
θ2
h
Figure 6. Mooring Line Swing Radius Diagram.
10
Boat Hull Depth Interference
The minimum water depth necessary to prevent the boat hull from colliding with the
harbor sea floor must be maintained through the boat’s entire swing radius. In other
words, at the shallowest point of the boats swing radius, there must be enough water for
the boat to float. This constraint is shown in the equation below,
⎛ D − Dmin ⎞
⎟⎟( yi − r2,i ) − Di > 0
Dmin + ⎜⎜ max
Y
max
⎠
⎝
Mooring Location Boundary
In order to ensure that all boats are placed in a region within the marina, all xi and yi
must be bounded by the maximum and minimum X and Y coordinates as shown in the
following equations,
xi + r2,i < X max
∀i
(6)
xi − r2,i < X min
∀i
(7)
yi + r2,i < Ymax
∀i
(8)
yi − r2,i < Ymin ∀i
(9)
Mooring Sweep Radius Interference Prevention
The following constraint prevents each boat from colliding with any other boat in the
marina by insisting that the distance between mooring locations accommodates for the
boat sweep radius for each boat. This is accomplished using the following equation,
(xi − xk )2 + ( yi − y k )2
> r2,i + rk
∀i , k ≠ i
( 10 )
Implementing this set of constraints will result in a triangular matrix because of the
redundancy associated with testing for interference between boats one and two and
between two and one.
Dock and Harbor Channel Proximity Price
The desirability of mooring location is a function of the proximity to the dock as well as
to the harbor channel exit. It is desirable for the mooring to be located near the dock
because customers will have less distance to row from the dock to their respective boats.
Additionally, it is desirable for the mooring to be located near the harbor channel exit
because customers will have less distance to travel at no wake speed to exit the harbor.
In essence, this is a convenience charge. The model takes this into account by assigning
a linear cost function associated with distance from the dock and distance from the harbor
channel exit. The model takes the minimum and maximum prices charged for both
harbor and exit proximity and calculates a price rate. These price rate calculations are
shown below:
11
PD =
PC =
PD ,max − PD ,min
( 11 )
DT
PC ,max − PC ,min
DT
( 12 )
where,
DT =
( X max − X min )2 + (Ymax − Ymin )2
( 13 )
Channel Proximity Pricing
Entrance
Channel
(Xmax,Ymax)
PC,max
Decreasing
Price Gradient
Iso-Price
Lines
y
x
(Xmin,Ymin)
Dock
Figure 8. As the mooring placement moves farther from the dock, the desirability to the
customer decrease as well as the proximity fee associated with this location. Likewise, as
the mooring placement moves farther from the harbor channel exit, the desirability to the
customer will decrease as well as the proximity fee associated with this location. The
iso-pricing lines are circular lines representing regions of constant mooring proximity
price. Figure 9 shows the combined proximity pricing for both dock and harbor channel
exit. The optimal region for the customer as well as the highest fee generation region is
along a straight line connecting the dock and the harbor channel exit.
12
Dock Proximity Pricing
Entrance
Channel
(Xmax,Ymax)
Iso-Price
Lines
y
Decreasing
Price Gradient
x
(Xmin,Ymin)
Dock
Figure 7. Dock Proximity Pricing.
Channel Proximity Pricing
Entrance
Channel
(Xmax,Ymax)
PC,max
Decreasing
Price Gradient
Iso-Price
Lines
y
x
(Xmin,Ymin)
Dock
Figure 8. Channel Proximity Pricing.
13
PD,max
Combined Proximity Pricing
Entrance
Channel
(Xmax,Ymax)
Optimal
Price Region
y
x
(Xmin,Ymin)
Dock
Figure 9. Combined Proximity Pricing.
14
Objective Function
The objective function for this model is based on optimizing the marina revenue from
mooring fees. These fees are based on three criteria as follows:
1. Length of Boat. There is a flat fee for boats in each of the three length categories.
LF = Length Fee = ∑∑ Pj
Li, j
j
( 14 )
i
2. Depth of Boat. There is a fee for boats requiring eight feet of water depth.
DF = Depth Fee = ∑ PH 1 Di + PH 2 (1 − Di )
( 15 )
i
3. Proximity to Dock and Channel Exit. There is a variable fee that is a function of
how close the mooring location is to the dock.
DPF = Dock Pr oximity Fee = ∑ PD ,max − PD
( X max − xi )2 + (Ymin − yi )2
( 16 )
i
4. Proximity to Harbor Channel Exit. There is a variable fee that is a function of
how close the mooring location is to the harbor channel exit.
CPF = Channel Pr oximity Fee = ∑ PC ,max − PC
(Ymax − yi )2 + ( X min − xi )2
( 17 )
i
The objective function is to maximize the sum of these individual fees:
Mooring Fee = LF + DF + DPF + CPF
( 18 )
Model
The model was set up in Excel as a non-linear program. The maximum number of boats
that could be solved for using Excel’s premium solver was 18 due to the high number of
constraints. The problem was solved using the multi-start option. Additionally, it was
run several times with many different seeds in order to ensure convergence on a more
global optimum.
As a realistic check on the model, several test runs were performed using only a fraction
of the constraints. Some of these trial runs are described below and are consistent with
engineering intuition.
15
Test Run 1 – Constant Harbor Depth and No Channel Exit Fee
In the first test run, the harbor depth was fixed at 12 feet. This would provide no location
preference for large or small boats. Additionally, the mooring swing radius (r1 ) would be
a constant and the boat swing radius (r2 ) would only be a function of boat length (Li ) .
This would provide a fairly uniform spacing between mooring. Additionally, the price
associated with the harbor channel exit fee (PC ) was excluded. This would cause the
boats to accumulate in the vicinity of the dock. Figure 10 plots the results of running the
optimization for this test model. As expected, the optimization has clustered the
moorings near the dock. The total revenue due to mooring fees recognized by the marina
was maximized to $7,337.73.
Test 1 - Fixed water depth, no harbor exit fee
500
Y Coordinate
424, 417
303, 405
400
209, 336
489, 320
373, 312
300
281, 257
188, 231
358, 217
200
277, 149
383, 134
162, 128
509, 225
434, 210
489, 130
100
327, 55
231, 46
423, 46
509, 36
0
0
100
200
300
400
500
X Coordinate
Figure 10. Test 1 - Fixed Water Depth, No Harbor Exit Fee.
16
Test Run 2 – Constant Harbor Depth and No Dock Fee
In the second test run, the harbor depth was again fixed at 12 feet, providing no location
preference for large or small boats and the boat swing radius (r2 ) would only be a
function of boat length (Li ) , providing a fairly uniform spacing between mooring. This
time, the price associated with the dock proximity fee (PD ) was excluded. This would
cause the boats to accumulate in the vicinity of the harbor channel exit. Figure 11 plots
the results of running the optimization for this test model. As expected, the optimization
has clustered the moorings near the harbor channel exit. The total revenue due to
mooring fees recognized by the marina was maximized to $7,323.70. Because test two
replaces one constraint with another very similar constraint, this revenue of the two tests
are roughly equivalent.
Test 2 - Fixed water depth, no dock fee
41, 509
500
252, 489
135, 489
369, 488
41, 433
400
108, 396
310, 399
204, 383
408, 357
Y Coordinate
43, 356
125, 311
300
308, 303
215, 277
51, 249
200
396, 241
287, 198
144, 197
216, 119
100
0
0
100
200
300
400
500
X Coordinate
Figure 11. Test 2 - Fixed Water Depth, No Dock Fee.
17
Test Run 3 – Fixed Harbor Depth, Equal Proximity Pricing
In the third test run, the harbor depth was again fixed at 12 feet, providing no location
preference for large or small boats and the boat swing radius (r2 ) would only be a
function of boat length (Li ) , providing a fairly uniform spacing between mooring. This
time, the price associated with the dock proximity fee (PD ) and harbor exit proximity fee
were weighted equally. This would cause the boats to accumulate along the line
connecting the two locations. Figure 12 plots the results of running the optimization for
this test model. As expected, the optimization has clustered the moorings in a football
shaped line connecting the dock with the harbor exit. The mooring locations are fairly
symmetric about this line. The total revenue due to mooring fees recognized by the
marina was maximized to $7,057.58. This is slightly smaller than test runs 1 and 2
because we have added an additional constraint.
Test 3 - Fixed water depth, equal dock and
harbor channel exit fee
500
51, 499
144, 474
259, 439
76, 406
400
Y Coordinate
169, 381
98, 301
300
351, 367
269, 316
194, 298
428, 280
332, 272
263, 239
173, 203
200
366, 193
471, 171
272, 143
100
392, 99
489, 56
0
0
100
200
300
400
500
X Coordinate
Figure 12. Test 3 - Fixed Water Depth, Equal Proximity Pricing.
18
Test Run 4 – Variable water depth
In the fourth test run, the harbor depth was assigned a very gradual slope, providing only
a small section of the harbor near the channel in which the deep hulled boat could be
placed. Additionally, the price associated with the harbor exit proximity fee (PC ) was
eliminated. Figure 13 plots the results of running the optimization for this test model. As
expected, the optimization has clustered the short boats near the dock and placed the deep
boats out near the channel where the water is deep enough to accommodate them. The
total revenue due to mooring fees recognized by the marina was maximized to $6,902.05.
Because such a strict constraint was placed on the deep hulled boats the revenue was
much less than test runs 1 and 2.
Test 4 - Variable water depth, no exit proximity fee
600
307, 565
410, 552
196, 542
500
125, 454
329, 454
227, 444
441, 454
Y Coordinate
400
300
392, 274
296, 217
200
375, 207
462, 274
453, 196
290, 139
376, 118
100
292, 51
378, 31
464, 118
454, 41
0
0
100
200
300
400
500
X Coordinate
Figure 13. Test 4 – Slightly Variable Harbor Floor, no harbor exit fee.
19
Results and Analysis
In order to evaluate the mooring optimization results, a baseline model of a typical
marina mooring layout was created. The mooring placement is such that all the moorings
take into account the worst case scenario so that any boat can be placed in any mooring
location. The moorings are laid out in a grid as shown in Figure 14. Although very
simple to implement, this layout is extremely inefficient. Only 16 of the 18 boats could
be placed in the harbor under these constraints and the marina revenue was only
$5,523.56.
Typical Marina with Grid Moorings
500
Y Coordinate
400
300
139, 411
256, 411
373, 411
489, 411
139, 294
256, 294
373, 294
489, 294
139, 177
256, 177
373, 177
489, 177
139, 61
256, 61
373, 61
489, 61
200
100
0
0
100
200
300
400
500
X Coordinate
Figure 14. Typical Marina with Grid Moorings.
After confirming the validity of the model using the intuition gained from the test results,
the overall system parameters were input and the model optimization was solved. The
results are shown in Figure 15. The main differences between this model and the test
models are that this model accounts for a realistic variable representing water depth and
contains a proximity fee weighted more heavily towards the dock. The latter assumption
is based on the fact that if customers were given the choice, they would rather have less
distance to row out to their boat and sacrifice being closer to the harbor exit.
20
Marina Mooring Optimization with 18 Boats
500
343, 427
470, 417
Y Coordinate
400
174, 329
287, 329
399, 329
501, 319
300
469, 244
330, 237
255, 206
200
512, 188
410, 176
311, 149
513, 118
100
371, 84
449, 96
279, 51
504, 41
428, 31
0
0
100
200
300
400
500
X Coordinate
Figure 15. Marian Mooring Optimization with 18 Boats.
As expected, the optimization has placed the boats in the vicinity of the dock with a slight
bias towards deeper water so as to accommodate the deeper hulled boats. It can also be
seen from the figure that the swing radii nearest the dock are shorter than those farther
out towards the channel. This is due to two factors. The first is that the mooring line
length is shorter in shallower water. As the tide goes out, this results in a shorter swing
radius variation than for moorings in deeper water. Additionally, the optimization has
made an effort to place the shorter length boats near the dock because the more it can
squeeze in, the higher the revenue will be. From strictly a revenue standpoint, this is a
good strategy, however, in reality, owners of larger and longer boats tend to have the
deepest pockets and overwhelming desires for convenience and superiority. In a future
version of the model, it is recommended that there be separate proximity price schemes
for each of the boat length categories. In other words, in order to satisfy the customers
and to allow the larger boats spots near the dock, the associated proximity fees should be
appropriately penalized.
The results of the optimization are quite impressive. The revenue of $6,703.93 is 21.4%
greater than the revenue recognized with the standard marina mooring layout.
Additionally, the optimization has only used a fraction of the harbor area to place the 18
boats, freeing up space to accommodate additional boats which would only increase
revenues. Unfortunately, under the constraint limitations of the Excel Premium Solver
the model was unable to add more boats in order to assign a value to the true revenue
increases. Add on modules that would increase the number of allowable constraints that
are available.
As a last recommendation for the implementation of this mooring placement
optimization, it would be convenient to have a boat adding algorithm that attempted to
21
include the next boat on the waiting list before settling on an optimum. In other words,
after solving for 18 boats, the model would then attempt to include a nineteenth boat and
so on until no more boats would fit into the harbor. In this fashion, the model could
potentially optimize not only the marina revenue, but also the number of boats in the
harbor, and the number of satisfied customers.
22
Download