Traffic Based Pathway Optimization
Michael LeGoreTJHSST CSL
Purpose
To create an algorithm to find an optimal path using the heuristic of time.
To train the algorithm to avoid traffic hotspots at peak hours.
To use traffic data to estimate travel time on roads.
To optimize algorithm based on results of analysis.
Background
Path finding algorithms principally use distance as a heuristic.
Many consumers are concerned only with travel time.
Traffic patterns in certain area at certain times can be used to accurately predict travel times.
Background: A* Search
Algorithm to find the optimal path. Searches through current node and adds each
segment to search space. Iterates over search space until the minimum
pathway returned is at the destination. Uses Heuristic to estimate distance to
destination.
Traffic Based Algorithm
Instead of dealing with distance, algorithm finds path based on travel time
Travel Time is estimated from data VDOT Estimate can take into account contexts such
as weather, time of day, and other traffic fluctuations.
Implementation
Ruby for programming A* Search with a modified heuristic to find path Use VDOT traffic data to model the average
speed. Feed this data into A* Search Use it to find the optimal path Tweak algorithm based on results.
Development
Search Algorithm Algorithm is an A* search with a modified
heuristic. Interpreting of Traffic Data
Needed to provide a heuristic for travel time Provides data to estimate the speed of cars. Speed used to find the time spent on each
road segment.
VDOT data
Gives three main factors: AAWT – Average Annual Daily Traffic AAWDT – Average Annual Weekday Traffic K Factor – The ratio of AAWT to design (peak)
hour traffic Ratio of AAWT to AAWDT K value used to factor in Rush-Hour effects
Limitations of VDOT Data
Only provides data over time Does not model based on time of day Gives peak hour traffic concentration but not
time of peak hour(s). Only gives concentrations of traffic Does not correlate with the TIGER data used
for the road shapes
Demonstration
Input Addresses Input time of day Returns optimal path for that time of day.
Original Implementation/Plan
Traffic Simulation Use traffic simulation to feed data back into the
algorithm Keep track of travel times of agents Unfeasible given time and computing
constraints TIGER data not adequate for an agent based
model.
Possible Extensions
Find more complete data for estimating travel time
Integrate more factors into the heuristic Weather Holidays More?
Distributed Approach to data collection Integrated into GPS devices iPhone app?
Things I learned
Data collection as a single person is not possible
Writing a sophisticated traffic simulator to model 1 Million+ agents is not at all feasible in the current state of computing
Data for traffic can be very fragmented and not standardized
Conclusion
Time can be a good heuristic for finding a path An A* search is easily modifiable to
accommodate many types of heuristics with different effects
Proper data is necessary for such an algorithm to work
Questions?