Improving Parking Garage Efficiency
using
Reservation Optimization Techniques
By Arjun Rao
Advisor :
Dr. Ivan Marsic
Committee Members :
Dr. Joseph Wilder
Dr. Manish Parashar
INTRODUCTION
 Problems with Parking Garages
•
No reservation policy
– Only display of rates and location
– No reservation of parking spots
• Ambiguity of information
– Display of number of parking spots
available creates ambiguity
• Environmental concerns
– 40% of total traffic (1)
– 47000 gallons of gas was used up in
a year in a business district of LA(1)
•
Lack of revenue management
2
OUTLINE
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
3
GOALS
Improve parking garage operation efficiency
1. Track car position for real-time
monitoring
2. Improve reservation efficiency in
garages using reservation
defragmentation techniques
3. Improving revenue for parking
garages using revenue
management techniques
4
OUTLINE
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
5
PROPOSED SOLUTIONS
 What is Tracking of a car in a parking garage?
• Knowing real-time position from
entrance up to parking.
• Obtaining knowledge of which
parking spot has the car been
actually parked in
• Tracking is simulated based on
real-world parameters
6
PROPOSED SOLUTIONS
 What is Reservation Defragmentation?
Parking Slots
• Aim to free parking spots so
as to accommodate more
parking reservations
Time Slots
1
• Re-arrangement of reservations
to increase efficiency
•Similar to disk defragmentation
in principle.
2
3
4
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1
5
2
3
4
5
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
After
Compaction
Reservations
Swapped
Reservations moved due to defragmentation
Reservations not moved even after
defragmentation
7
PROPOSED SOLUTIONS
 What is Revenue Management?
• Implemented Types:
-Booking Limits:
Classifying parking spots in
garage based on fare to
increase revenue
Corporate
Class
Leisure
Class
Booking Limits
-Overbooking:
Permitting reservations
beyond capacity of parking
garage to account for noshows
i.
Spoilage Costs
ii. Denied Parking
Overbooking
8
OUTLINE
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
9
RESEARCH QUESTIONS
A) Tracking
•
•
What method can be used to track cars?
What metrics should be selected to show effectiveness of
these algorithms?
B) Reservation Defragmentation
•
•
What methods can be used for packing more number of
reservations into the garage?
What metrics should be chosen to demonstrate efficiency of
such algorithms?
C) Revenue Management
•
•
What techniques can be used for revenue management?
Can these techniques from other industries be directly be
ported over to the parking garages?
10
OUTLINE
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
11
SYSTEM ARCHITECTURE
 Overall System
Tracking
Sub-System
Reservation
Defragmentation
Sub-System
Parking Garage Entrance Console
Database
Remote Client
Revenue Management
Sub-System
12
SYSTEM ARCHITECTURE
 Tracking System
Parking Lot Functions
______________
Simulator
______________
-Mark entry
-Track
-Park
- Provide new spot
-Determine accuracy
-Arrival Thread
-Sensor detection
-Path vectors
- Modified spot
generation
Database (MySQL)
SYSTEM ARCHITECTURE
 Reservation Defragmentation
Parking Lot Functions
______________
-Make reservation
-Defragmentation
-Update reservations
Simulator
______________
-Reservation
thread
-Bitmap/Vector
allocation
-Defragmentation
thread
Database (MySQL)
14
SYSTEM ARCHITECTURE
 Revenue Management
Database
-Decide
Parameters
-Run Booking
Limit Algorithm
-Decide
Parameters
-Run Overbooking
Algorithm
Set Booking Limits
Set Overbooking
capacity
OUTLINE
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
16
ALGORITHMS
I. Tracking
 Sensor details
•
Sensor action is simulated
using real-world commercially
available sensor data (cost and
accuracy).
Ultrasonic Sensor
Prototype(2)
•
Ultrasonic sensors used for car
detection (motion and
occupancy)
•
Sensors are used for interfloor and intra-floor motion
detection
•
All sensors are ceiling
mounted
Wiring up ultrasonic
sensors(2)
Example of a parking garage with ultrasonic sensors
ALGORITHMS
Tracking
Floor
Exit
Floor
Floor
ExitSensor
Sensor
23.5 ft
•
Features included
– Track car path
– Dynamic allocation
23.5 ft
Forward
Algorithm tracks car
based on sensor
crossed
23.5 ft
Floor Sensor
Floor Sensor
Sensor
Floor Entry
Floor
Entry
•
Forward
High Accuracy/High
cost
23.5 ft
•
23.5 ft
9 ft
Forward
More sensors used
18 ft
200 ft
•
18 ft
23.5 ft
a) Algorithm T1
202 ft
Forward
I.
18
ALGORITHMS
Tracking
Floor
Exit
FloorExit
Sensor
Floor
Sensor
23.5 ft
•
Features included
– Track car path
– Dynamic allocation
23.5 ft
Row
Sensor
Row
Sensor
Row
Sensor
Forward
Algorithm tracks car
based on sensor
crossed
23.5 ft
Row
Sensor
Floor Sensor
FloorFloor
EntrySensor
Sensor
Floor
Entry
•
Forward
Low Accuracy/Low cost
23.5 ft
23.5 ft
•
18 ft
9 ft
Forward
Fewer sensors used
200 ft
•
18 ft
23.5 ft
b) Algorithm T2
202 ft
Forward
I.
19
ALGORITHMS
I.
Tracking
c)
Performance metrics
•
Inaccurate Tracking
- Fail to detect occupancy
sensor
OR
- Fail to achieve the
tolerance limit
(10%,50%,75% )
•
Example of 50% tolerance
Number of sensor points
Example of 75% tolerance
ALGORITHMS
II. Reservation Defragmentation
 Usage of bitmap
Parking Spot Index
1
2
3
4
5
. . 500
...
0000 1
1
1
0
0
0
0
0030 0
0
1
1
1
1
1
0100 0
0
0
0
0
1
0
0
0
0
1
1
1
• It is a matrix of 1’s and 0’s
having ‘m’ rows each indicating
‘30 minutes’ of time and ‘n’
columns indicating parking spot
index.
• ‘1’
indicates
‘Reservation
made’ and ‘0’ indicates ‘Free
space’.
Time (hours)
• Bitmap indicates if reservation
is made for that spot and time.
:
:
:
2330 0
Bitmap matrix
21
ALGORITHMS
II. Reservation Defragmentation
 Bitmap Terminology
Current Time
Contiguous
Free Time Slot
for Spot 4
Time
Free Space
Current
Time
Time
Slot Index
Reservation
Made
0
1
2
3
4
5
6
7
8
9
Contiguous
Free Time Slot
for Spot 4
0
1 Before Defragmentation
2
3
Parking Spot Index
4
After Defragmentation
ALGORITHMS
II. Reservation Defragmentation
 Types of reservations used
1. Next Day Reservations
2. Current Day Reservations
23
ALGORITHMS
II. Reservation Defragmentation

Basic Components
First Fit
Algorithm
Defragmentation
Algorithm
24
ALGORITHMS
II. Reservation Defragmentation
Parking Spot Index
a) First Fit Algorithm(3)
•
•
•
Attempts to place the
reservation in the first
parking spot that can
accommodate the
reservation.
Easy to implement.
1
1
2
2
3
4
5
6
5
11
6
2
8
3
10
4
3
5
9
Fast allocation
Inefficient allocation
1
0
Time slot Index
•
0
6
7
4
12
7
ALGORITHMS
II. Reservation Defragmentation

Implemented Algorithms
1.
• Algorithm R1
• Interval Scheduling
2.
• Algorithm R2
• Recursive First Fit
3.
• Algorithm R3
• Free Space Vector
26
ALGORITHMS
II. Reservation Defragmentation
b) Algorithm R2: Recursive First Fit Decreasing(5)
Sort
Arrange
• Sort reservations according to
decreasing reservation duration
• Re-arrange compatible reservations
using first-fit algorithm.
27
28
ALGORITHMS
II. Reservation Defragmentation
•
Algorithm R2: Example
Reservations sorted according to durations
Sort
8
7
12
1
4
11
2
10
9
5
3
28
ALGORITHMS
II. Reservation Defragmentation
•
Algorithm R2: Example->Current Day
Parking Spot Index
0
1
2
3
4
5
Parking Spot Index
6
7
Current
Time
0
1
2
3
4
5
1
3
8
4
3
5
9
6
11
11
Time slot
Time Slot Index
6
7
4
10
12
2
1
6
2
1
PostDefrag
3
8
10
7
12
4
3
4
9
5
6
Time Slot Index
2
5
5
2
7
0
0
1
6
ALGORITHMS
II.
•
Reservation Defragmentation
Algorithm R3: Example-> Current Day
Parking Spot Index
Parking Spot Index
Current
Time
0
1
2
3
4
5
6
7
0
0
4
3
5
9
7
4
10
12
PostDefrag
11
Time slot
8
6
2
1
3
6
11
Time slot
Time Slot Index
2
6
2
1
5
1
8
3
9
7
4
10
2
3
4
12
5
6
Time Slot Index
5
1
ALGORITHMS
II. Reservation Defragmentation
•
Algorithm R1: Example->Next Day
Parking Spot Index
0
1
2
3
4
5
Parking Spot Index
6
7
Current
Time
0
1
2
3
4
5
6
7
0
11
5
5
8
10
4
3
5
9
6
7
4
6
2
2
3
11
1
6
2
Time slot
Time Slot Index
1
PostDefrag
8
10
3
12
12
9
7
4
Time Slot Index
1
ALGORITHMS
II. Reservation Defragmentation
 Performance Metrics
• Percentage Reduction in Free time slots =
Number of empty time slots (Pre-defrag)-Number of empty time slots(Post-defrag)
Number of empty time slots (Pre-Defrag)
100
• Percentage Decrease in Occupied Parking spots =
Number of empty parking spots (Pre-defrag)-Number of empty parking spots(Post-defrag)
Number of empty time slots (Pre-Defrag)
100
ALGORITHMS
II. Reservation Defragmentation
 Performance Metrics
• Reduction in mean length of contiguous free time slot (say Mx) :
– Calculate total number of free time slots per parking spot (say FTM)
– Calculate number of sets of contiguous time slots per parking spot
(say S)
Mx = FTM / S
• Percentage Increase in garage capacity =
Total number of cars in garage( Post-defrag) - Total number of cars in garage (pre-defrag)
Total number of cars in garage (Pre-defrag)
100
ALGORITHMS
III. Revenue Management
a) Booking Limits Algorithm(7)
• Booking Limit = C – Q*
Where
C = Capacity of garage
Q* = Optimal Protection level
• Calculate F(Q) where
F(Q) is the cumulative probability of
demand for the spot at the corporate
class cost given that Q is the
protection level. Traditionally, derived
from historical data but in our case
derived from simulation based on
real- world values
500 parking slots
• Two fare class model (Leisure class and
Corporate class
Q+1 slots protected
(protection level)
Customer wants this slot at lower
price
500-Q-1 slots sold at a lower price
(booking limit)
34
ALGORITHMS
III. Revenue Management
a) Booking Limits Algorithm
•Mathematical decision:
If we protect Q+1 spots for the
corporate class, then we should
lower the protection to ‘Q’ as
long as:
(1 – F(Q)) (Rh) <= Rl ;
F(Q) = Cumulative Probability
Rh = Corporate class fare
Rl = Leisure class fare
Lower
Protection
Level from Q+1
to Q
Yes
Revenue = Leisure Class Price
No
Probability = F(Q)
Revenue = 0
No
Is Protected
Slot sold before
end of day?
Yes
Probability = 1-F(Q)
Revenue = Corporate Class Price
35
ALGORITHMS
III. Revenue Management
b) Overbooking Algorithm: Probabilistic/Risk Model(8)
• Probability equation decides
amount of overbooking to be done.
• Overbooking (AU) on a garage
[capacity (CAP)] such that we
have a minimum number of
customers denied parking.
Basic Equation
AU × (1-NSR)* = CAP
Overbooking
•Gaussian no-show rate (NSR)
for reservations.
36
ALGORITHMS
III. Revenue Management
c)
Overbooking Algorithm: Probabilistic/Risk Model
• Difference between airline
and garage overbooking
• Overbooking
amount
calculated
prior
reservations being made.
is
to
•Overbooking done on entire
garage capacity.
Formula
AU = _______CAP_______
(1-NSR + 1.645*STD)
Where,
AU = Total Overbooked Capacity
(in 30 minute slots)
CAP = Garage Capacity
(in hours)
NSR = No-show rate
STD = Std. Deviation of NSR 37
Outline
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
38
RESULTS
I. Tracking
 Simulation Parameters
Sr. No.
Parameter
Value
Garage
Operator
Parameters
1.
Sensor failure
2%,5%,10%,20%,50%
Yes
2.
Speed Limit
Max. limit of 30.23mph
Yes
3.
Arrival Distribution
Poisson Distribution
Yes
4.
Customer Arrival
Rate
100 cars per hour
Yes
5.
Garage Capacity
500 parking spots
Yes
6.
Performance
Metric
10%, 50% and 75%
tolerance
Yes
39
RESULTS
Tracking
Percentage inaccurate trackings for given
tolerance
100
90
Percentage Inaccurate Trackings
I.
80
70
60
Algo. T1 : 75%
50
Algo. T2 : 75%
40
Algo. T1 : 10%
30
Algo. T2 : 10%
20
10
0
2
5
10
20
Sensor Failure Rate(in %)
Capacity of garage = 500 spots
50
40
RESULTS
Tracking
Average number of sensor points per car
12
Number of sensors whose data is recorded
I.
10
8
6
Algorithm 1
Algorithm 2
4
2
0
2%
5%
10%
Sensor Failure Rate
20%
50%
41
RESULTS
I. Tracking
 Conclusions
•
With increase in sensor failure
rate, increase in inaccurate tracking
is exponential
•
Algorithm T2 is more inaccurate
than Algorithm T1 due to usage
of fewer sensors
•
Higher the failure tolerance,
lesser are the inaccurate readings
Sensor
Failure
Rate
Failure
Tolerance
Inaccurate
tracking
Inaccuracies
observed
RESULTS
I. Tracking
 Conclusions
•
Information Provided
3
Algorithm T1
•
Algorithm T2
11
Implementation Costs
Algorithm T1
Algorithm T2
RESULTS
II. Reservation Defragmentation
 Simulation Parameters
Sr. No.
Parameter
Value
1.
Garage Capacity
500 parking spots
2.
Period of observation
24 hours
3.
Duration of reservations
30 minutes to 22 hours
4.
No-show rate
15%
5.
Type of reservations
Next-day reservations
6.
Performance Metric 1
Time slots freed
Performance Metric 2
Parking spots freed
Performance Metric 3
Length of contiguous free time slots
44
RESULTS
II. Reservation Defragmentation
Decrease in fragmented free time slots after 15%
random cancellation
% decrease in fragmented free time slots
70
60
50
40
Algorithm R1
30
Algorithm R2
Algorithm R3
20
10
0
200
500
1000
Number of reservations made for the day
1750 Reservations
95% of maximum capacity
1750
RESULTS
II. Reservation Defragmentation
Decrease in occupied parking spots after 15%
random cancellation
20
% increase in free parking spots
18
16
14
12
Algorithm R1
10
Algorithm R2
8
Algorithm R3
6
4
2
0
200
500
1000
Number of reservations made in the day
1750 Reservations
1750
95% of maximum capacity
46
RESULTS
II. Reservation Defragmentation
Mean length of contiguous free time slots
(Before Defragmentation)
50
48 time slots (max. number of free time slots per parking spot)
40
30
20
---- Pre-Defrag
10
0
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310
320
330
340
350
360
370
380
390
400
410
420
430
440
450
460
470
480
490
Mean Length of number of free time slots
60
Parking Spot Index
47
RESULTS
Mean Length of number of free time slots
II. Reservation Defragmentation
48 time slots (max. number of free time slots per parking spot)
48
For 1750 reservations
RESULTS
II. Reservation Defragmentation Conclusions (Next day)
• Increase in number of reservations causes increase in percentage
defragmentation
• Algorithm R2 provides best defragmentation in terms of metrics
when random cancellation is carried out.
• Algorithm R3 provides improved parking garage spot occupancy
when block cancellation is carried out.
• Std. deviation for R2 is lesser than R1 and R3 indicating more
predictability of algorithm R2.
49
RESULTS
II. Reservation Defragmentation
 Simulation Parameters
Sr. No.
Parameter
Value
1.
Garage Capacity
500 parking spots
2.
Period of observation
24 hours
3.
Duration of reservations
30 min to 22 hrs (exp. dist.)
4.
No-show rate
15%
5.
Type of reservations
Current-day reservations
6.
Performance Metric
Increase in garage capacity
50
RESULTS
II. Reservation Defragmentation
Percentage increase in maximum occupancy
of parking garage
6.00%
Percentage Increase
5.00%
4.00%
Algorithm R1
3.00%
Algorithm R2
Algorithm R3
2.00%
1.00%
0.00%
51
RESULTS
III. Revenue Management
 Simulation Parameters
Sr. No.
Parameter
Value
1.
Garage Capacity
500 parking spots
2.
Fare classes
Leisure Class and Corporate class
3.
Leisure Fare/Corporate Fare
0.166-0.75 (based on airlines)
4.
Corporate Customer
Arrival Distribution
Poisson Distribution
5.
Corporate Customer
Arrival Rate
5 cars/hour to 500 cars/hour
6.
Performance Metric
Protection level and Booking Limit
52
RESULTS
III. Revenue Management
Protection level for Poisson distribution
Percentage of parking spots reserved for
corporate booking
100
90
80
70
Rl/Rh
60
0.166
0.23
50
0.33
40
0.5
30
0.667
20
0.75
10
0
5
10
25
50
100
150
250
Corporate Arrivals (Cars per hour)
Parking Garage Capacity = 500 spots
400
500
53
RESULTS
III. Revenue Management
 Simulation Parameters
Sr. No.
Parameter
Value
1.
Garage Capacity
500 parking spots
2.
Fare classes
Leisure Class and Corporate class
3.
Leisure Fare/Corporate Fare
0.166-0.75 (based on airlines)
4.
Corporate customer arrival
distribution
Binomial Distribution (used for heavy
traffic with uniform distribution)
5.
Corporate customer arrival
Probability
10% - 90%
6.
Performance Metric
Protection level and Booking Limit
54
RESULTS
III. Revenue Management
Booking Limits for Binomial Distribution
100
90
Percentage of spots reserved for
Corporate Booking
80
Rl/Rh
70
60
0.166
50
0.23
0.33
40
0.5
0.666
30
0.75
20
10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Probability of customer entering to be a corporate customer
Parking Garage Capacity = 500 spots
0.9
55
RESULTS
III. Revenue Management

Conclusions
•
With Poisson arrival distribution, increase in corporate customer arrival
rate and rate ratio leads to an exponential increase in protection level
•
For Poisson distribution, increase in arrival rate of corporate customers
causes more proportional increase in protection level as compared with
increase in ratio of leisure class to corporate class fare.
•
With Binomial distribution, as the probability of an entering customer to be
a corporate customer increases, with increasing rate ratio, protection level
increases almost linearly.
•
Hence, for optimum protection level, irrespective of arrival distribution, the
parking garage should have a high corporate customer arrival and high
Rl/Rh ratio.
RESULTS
III. Revenue Management

Simulation Parameters
Sr. No.
Parameter
Value
1.
Garage Capacity
500 parking spots
2.
No-show distribution
Gaussian
3.
No-show rate
10% - 50%
4.
Std. Dev. Of No-show rate
0.01 - 0.5
4.
Customer Arrival Distribution
Poisson
5.
Performance Metric
Overbooking Capacity
57
RESULTS
III. Revenue Management
250
Overbooking limits for Probabilistic/Risk Model
Total % of overbooking (AU)
200
NSR
150
0.1
0.2
0.3
100
0.4
0.5
50
0
0.01
0.02
0.05
0.08
0.1
0.25
Standard Deviation for Gaussian Distribution of No-shows
0.5
58
RESULTS
III. Revenue Management

Conclusions
• For low values of standard deviation of no-show rate, overbooking is
useful since we can afford to book more reservations than the
maximum capacity of parking garage.
• For high values of standard deviation of no-show rate, overbooking
is futile since we are not even able to reach capacity booking
• For high values of no-show rate, we see higher values of
overbooking as compared with low values of no-show rate.
.
59
Outline
• Goals
• Proposed Solutions
• Research Questions
• System Architecture
• Algorithms
• Results
• Conclusions and Future Work
60
CONCLUSIONS
I.
Discussion of Research Questions
•
A suitable tracking metric was
developed
Duration
[Tolerance]
Tracking
Metric
Accuracy
[Inaccurate
trackings]
Total
Freed
parking
spots
Total
Freed
time slots
Defrag
Metric
Increase
in
capacity
of garage
Contiguous
free time
slots
•
A suitable reservation
defragmentation
metric was
developed
61
CONCLUSIONS
I.
Discussion of Research Questions
Existing
formulae
•
Suitable modifications were
made to obtain booking limits
for parking garages.
Booking
Limits for
Parking
Garages
Suitable
Parking
distributions
Airline
[Airline Seats]
Overbooking
Parking Garage
[Hours of Parking]
•
Modification of overbooking
for parking garage led to a
suitable metric
62
FUTURE WORK
• Usage of a prediction model which would give some prior
knowledge about the future usage of system which would enable
allocating spots to users in a more efficient manner.
• Explore feasibility of n-fare booking limits for parking garage
• Perform overbooking only on certain booking classes
• Look into implementation of overbooking with reservation
defragmentation
63
REFERENCES
(1)
Shoup D. (2007), “Cruising for parking,” Access, vol. 30, 16–22.
(2) Lee, S.; Yoon, D.; Ghosh, A.; , "Intelligent parking lot application using wireless sensor networks," Collaborative
Technologies and Systems, 2008. CTS 2008. International Symposium on , vol., no., pp.48-57, 19-23 May 2008
doi: 10.1109/CTS.2008.4543911
(3) Robson J.M. (1977), ‘Worst case fragmentation of first fit and best bit storage allocation strategies’, ACM Computer
Journal, 20(3), 242-244.
(4) Kleinberg J., Tardos E. (2005), ‘Algorithm Design’, Pearson-Addison Wesley 2005, 3-8
(5) Lodi A., Marro G., Martello S., Toth P. (1996), ‘Algorithms for Two-Dimensional Bin Packing and Assignment
Problems’, Universitµa Degli Studi Di Bologna, 46-60
(6) Jensen C. (1994), Fragmentation: The Condition, the Cause, the Cure, Executive Software International (ISBN 09640049-0-9).
(7) Netessine S. and Shumsky R. (2002), Introduction to the Theory and Practice of Yield Management, INFORMS
Transactions on Education, 3, 34-44.
(8) Belobaba, P.P. (1987), ‘Survey Paper--Airline Yield Management: An Overview of Seat Inventory Control’,
Transportation Science 1987 21, 63-73
64
Thank You!