DOES ANYONE SEE THAT WHITE VAN? – A VEHICLE COUNTING WITHOUT DISRUPTIONJie Wu, Paul Sabatino, Jennifer Tsan, and Zhen Jiang
OUTLINE Problem Challenges Solution Implementation issues Experimental results Conclusion
PROBLEM Count/check a certain type of vehicles in the
highly dynamic traffic, without any disruption.
Scenario 1: The Beltway sniper-attacks in October 2002. Early tips included reports of a white box truck. Police were pulling over white vans and trucks,
but missed the suspects. Later evidence shows that had this search been
a few minute closer, the shooter would have been caught, saving more lives.
Scenario 2: Hurricane/disaster evacuation Determine how many cars in the affected area. Decide the level or scale of evacuation.
Scenario 3: Settle down a new car dealer (e.g., BMW) Determine how many BMW running in
neighborhood vs. the total vehicle population. Decide whether it is worth to do.
CHALLENGES Unpredictable vehicle trajectory, direction,
and speed No disruption (w/o any force to change the
above) Without global control
Scale & cost Availability
Distributed counting scheme Delay & inconsistence Timing
Too early = double-counting Too late = miscounting
Synchronization! ?X
Double-counting?
miscounting?
SOLUTION Two node network
Start!counting Initial status
Receiving
X
No other source
XReceived!
Total # of vehicles in the entire network!
Traffic flow
Three node network (B≤C)
•Initial + counted volume• w other source • B in 1• w/o other source
•Initiated + counted volume• A in 2, A&B in 3,• B in 5, C in 5&6
•When to count?
Starting from A Reaching B B -> C then C->B/C->A
A->C then C->A,C->B, B reaching C
A->C then C<->BReaching C (from A)
AC and BC are
independent
CB and BC are
independent
Complete solution Seed crossing
Initiate all segments, counting inbound traffic Any segment without outbound traffic -> waiting Any segment with outbound traffic -> first vehicle
carries out the “counted” token Any uninitiated crossing + counted traffic coming
along one direction/segment Initiate all segments Any segment without outbound traffic -> waiting Any segment with outbound traffic -> first vehicle
carries out the “counted” token Block that incoming direction to avoid double-counting
Any initiated crossing + counted traffic coming along one direction/segment Confirm the completeness of counting along that
segment Clean up the “counted” token Block that incoming direction to avoid double-counting
Counting (all vehicles or one target kind of vehicles) When that crossing and the corresponding segments
are initiated (either waiting for outbound traffic), and before that incoming direction is blocked.
IMPLEMENTATION ISSUES Network model
Each crossing is a checkpoint and has a roadside unit (RSU) installed to detect the traffic from any direction.
The vehicle has built-in equipment to exchange information with RSU and a limited storage to carry that one-bit “counted” information.
Each RSU has a counter for inbound traffic from any direction.
For safety reason, each vehicle does not have any private information exposed, i.e., no identical information.
IMPLEMENTATION ISSUES Counting result collection
Results are distributed in the entire network at different checkpoints.
After one segment finishes the counting in both directions, the counter will be broadcasted.
Such a broadcast is pipelined with counting process. Whenever the first site receives the counting results
from all other sites, the total result at the global view can form.
Whenever every site receives all the others, each site will have a consistent view of the counting results. The counting can end now in the closed system.
For the open system, the counting will continue unless there is no new vehicle entering the area.
Since that time, no miscounting!
IMPLEMENTATION ISSUES Extension to real road system
The vehicle has built-in equipment to exchange information with vehicles with V2V communication.
When the vehicle carrying the “counted” token was passed by another vehicle If that passing vehicle is uncounted→ switch token &
counter ++ (if it is also in transfer) If that passing vehicle is counted → switch token
When the vehicle carrying the “counted” token passes another → counter ++ (if it is in transfer too)
EXPERIMENTAL RESULTS Map
Closed system 10~100% daily traffic volume 1~10 initiating seeds randomly distributed in
the networks Average speed 15 mph (can be upgraded to
25 mph) 2.2x1.8 square mile area in NYC
max min
Time (8-18 min) for all vehicles being counted (but the # is distributed in the entire network)
max min
Time (8-18 min) for the target type of vehicles all being counted (but the # is distributed in the entire network)
Time (9-23 min) for forming the counting information at the global level
Time (20-45 min) for forming the global counting information at each site
58.16% speedup for counting 58.14% speedup for achieving a global information
57.51% speedup to end the entire process
After 66.67% enhancement of driving speed
Open system, through traffic 10~100% daily traffic volume 1~10 initiating seeds Average speed 15 mph 2.2x1.8 square mile area in NYC
Time (9-23 min) to achieve a global counting information (at one of the checkpoint distributed in the entire network)
Time (20-45 min) to ensure each site have a synchronized, consistent view
Miscounting in the above preparation phase
30~40% speedup for counting 30~40% speedup for achieving consistent views
After 66.67% enhancement of driving speed
20~30% speedup for counting 20~30% speedup for achieving consistent views
After 50% reduction of counting area
CONCLUSION The results are consistent vs. the traffic
throughput and the number of initiating seeds.
No difference between counting all vehicles and counting a subset of vehicles.
The effect of vehicle speed and counting area size is considerable and acceptable.
The difference between open system and closed system is ignorable.
The speedup caused by introducing more initiating seeds is limited.
Comments and Questions? Thank you!