Coverage and Mobile Sensor Placement for Vehicles on Predetermined
Routes: A Greedy Heuristic Approach
Junade Ali and Vladimir Dyo
Department of Computer Science and Technology, University of Bedfordshire, Luton, U.K.
Keywords:
Mobile Sensors, Intelligent Transportation Systems, Smart Cities, Optimal Route Selection, Set Cover
Problem.
Abstract:
Road potholes are not only nuisance but can also damage vehicles and pose serious safety risks for drivers.
Recently, a number of approaches have been developed for automatic pothole detection using equipment such
as accelerometers, image sensors or LIDARs. Mounted on vehicles, such as taxis or buses, the sensors can
automatically detect potholes as the vehicles carry out their normal operation. While prior work focused on
improving the performance of a standalone device, it simply assumed that the sensors would be installed on the
entire fleet of vehicles. When the number of sensors is limited it is important to select an optimal set of vehicles
to make sure that they do not cover similar routes in order to maximize the total coverage of roads inspected
by sensors. The paper investigates this problem for vehicles that follow pre-determined routes, formulates it as
a linear optimization problem and proposes a solution based on a greedy heuristic. The proposed approach has
been tested on an official London bus route dataset containing 713 routes and showed up to 78% improvement
compared to a random sensor placement selected as a baseline algorithm.
1 INTRODUCTION
Road surface condition monitoring is essential for
maintaining a safe and efficient public transportation.
Road defects such as potholes cause accidents, dam-
age vehicles and slow down traffic, and for this rea-
son, municipalities invest millions to maintain and re-
pair the roads. However, timely detection of potholes
remains problematic due to very high cost of inspec-
tion vehicles and the massive total length of the roads.
Recently, a number of approaches have been devel-
oped, where mobile wireless sensors deployed on
taxis, buses or utility vehicles, automatically inspect
the road as the vehicles carry their normal operation,
opening a way for a large scale and autonomous road
monitoring. While prior work focused on improv-
ing the sensor detection performance, data collection
and energy efficiency, it was largely assumed that the
set of vehicles on which sensors would be deployed
is either random (in case of taxis), pre-determined
(known) or that the sensors would be deployed on the
entire fleet. The problem arises when a limited num-
ber of sensors needs to be optimally deployed on vehi-
cles that typically follow pre-determined routes, such
as buses or utility vehicles, because placing sensors
on the vehicles that follow similar routes would result
in sub-optimal road coverage.
The problem of coverage for mobile sensors has
been explored in the context of path planning for pa-
trolling applications (Murray, 2016), persistent moni-
toring tasks for autonomous vehicles (Kuhlman et al.,
2014) and data collection (Di Francesco et al., 2011).
In particular, (Kuhlman et al., 2014) investigates the
optimal mobile coverage problem in the context of
unmanned vehicles, and proposes an automated path
planner that minimizes vehicle’s path length whilst
maximizing the information gathered along that path.
The method however was designed for a single un-
manned vehicle and does not scale to multiple vehi-
cles. (Contreras et al., 2016) tackles an optimal sen-
sor placement problem for sensor networks deployed
on highway segments to maximize information col-
lected while minimizing monetary cost. This work is
similar in spirit to the proposed approach but targets
fixed rather than mobile sensors. To the best of our
knowledge, no previous work considers an optimal
placement of mobile sensors on vehicles that follow
pre-determined routes.
In this paper we present a novel approach for an
optimal mobile sensor placement that maximises the
total length of the road inspected by sensors. The ap-
proach starts by representing each vehicle route as a
Ali, J. and Dyo, V.
Coverage and Mobile Sensor Placement for Vehicles on Predetermined Routes: A Greedy Heuristic Approach.
DOI: 10.5220/0006469800830088
In Proceedings of the 14th International Joint Conference on e-Business and Telecommunications (ICETE 2017) - Volume 6: WINSYS, pages 83-88
ISBN: 978-989-758-261-5
Copyright © 2017 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
83
set of road segments, and using set cover theory to
formulate the problem as a linear optimisation prob-
lem that maximises the total number of segments for a
given number of vehicle routes. A greedy heuristic al-
gorithm is then proposed, which solves the problem in
a computationally efficient way. The implementation
of the algorithm is not trivial as it requires an efficient
method for subtracting geographical routes, for which
a simple solution is proposed. The approach has been
implemented in Go programming language, and eval-
uated on the official Transport for London (TfL) bus
dataset. The simulations have been conducted to eval-
uate the algorithm performance for different number
of selected routes. Based on the simulation results,
we found that the proposed approach provides a sig-
nificant improvement over a random route selection
selected as a baseline algorithm.
2 RELATED WORK
The traditional pothole detection relies on manual
road surface inspection or automated inspection using
specialised vehicles. Because of high cost and labour-
intensive process, a typical survey is only done once
in 4 years (Zhang et al., 2014) whereas potholes can
develop quickly, with little or no advance warning.
Recently, the rapid advances in low cost wireless
sensors, open source hardware platforms and sens-
ing technologies has led to a surge of projects on low
cost pothole detection systems in both academia and
industry. A number of such systems have been de-
signed, deployed and evaluated by researchers around
the world (Mohan et al., 2008) (Eriksson et al., 2008).
The majority of low cost systems are vibration-based,
and use an accelerometer to detect a jolt, which hap-
pens when a vehicle drives over a pothole. The de-
tection accuracy depends on multiple factors includ-
ing vehicle type, pothole location, road conditions
and driver behaviour. The approach proposed by
(Eriksson et al., 2008) was able to correctly detect
88.9%-92.4% of potholes in an experiment with hand-
labelled training data and loosely labelled data respec-
tively. It should be noted that the system mounted on
utility vehicles can repetitively check the same road
segment over and over again, so may not require very
high detection rate. This is in contrast to dedicated
pothole monitoring systems, which are designed to re-
liably detect potholes through a single passing of the
road and therefore optimised for high detection accu-
racy. (Hull et al., 2006) introduces a mobile sensor
computing system known as CarTel, this system al-
lows data consumers to issue SQL queries to assess
data from CarTel devices.
Most deployments relied on random deployment
on either taxi cars or on specially selected cars. To
the best of our knowledge, none of the works consid-
ers the problem of mobile sensor placement under the
scenario, where sensors need to be deployed on ve-
hicles that run along specific routes, such as garbage
trucks, buses or other utility vehicles.
At the same, there have been a number of works
on route planning in the public transportation net-
works, such as optimal journey planning depending
on passenger and service preferences (Botea et al.,
2013), trust-oriented trip planning, app-based taxi
pooling (Chen, 2014) and public vehicles tracking
(Zhu et al., 2016). None of these works consid-
ers a problem of optimal route selection for vehi-
cles equipped with mobile sensors. (Contreras et al.,
2016) tackles an optimal sensor placement problem
for sensor networks deployed on highway segments
to maximize information collected while minimizing
the monetary cost. Our work is similar in spirit, but
targets mobile rather than fixed sensors.
Finally, some related work exists in the area
of mobile sensor networks but focuses mostly
on data collection algorithms, energy management
(Di Francesco et al., 2011) and path planning for
patrolling applications (Murray, 2016). The recent
works on mobile video surveillance and ubiquitous
video acquisition are also relevant, but they focus
mostly on improving image quality under constrained
resources, image processing and analysis issues, with-
out considering a problem of optimal sensor place-
ment to maximize the coverage.
3 OPTIMAL ROUTE SELECTION
Figure 1: Road segment representation.
We represent each bus route as a set of road segments,
R
i
= {m
1
, m
2
, m
3
...m
n
}, where each segment m
i
rep-
resents part of the road between two adjacent inter-
sections and which can belong to more than one bus
route. The segments are directed, so a two-way street
would be represented by two segments as shown on
Fig. 1. The problem is formulated as follows: given a
WINSYS 2017 - 14th International Conference on Wireless Networks and Mobile Systems
84
collection of sets S = {R
1
, R
2
, ...R
n
} and an integer k,
find a subset S
0
of S such that the number of covered
elements is maximized, and |S
0
| <= k, i.e. select a
set of k vehicle routes that maximizes the total num-
ber of selected segments. The vehicle route selection
problem can be expressed as an integer program:
maximize
R
i
s.t.
N
routes
i=1
u
i
= k
u
i
= {0, 1}, i = 1, 2, 3...N
routes
Where u
i
is a decision variable showing whether a
route R
i
has been selected, k is the number of routes
to select, N
routes
is the total number of routes.
3.1 Greedy Approximation
The formulated problem is an instance of a known
problem in combinatorics called a maximum cov-
erage problem, which is known to be NP-complete
(Hochbaum, 1997), meaning that an optimal solu-
tion requires analyzing every possible combination
of routes. This can be computationally very hard
for large number of routes. However, a number of
approximations exist, with the best known being in
θ(log n). The greedy algorithm is known as the best-
possible polynomial time algorithm for maximum
coverage problem and works by iteratively selecting
a set R
i
that contains the largest number of elements
(road segments), and then removing selected elements
from all the remaining sets in the collection. The pro-
cess repeats until K sets are selected. The proof of
correctness is not described here, but can be found in
(Hochbaum, 1997).
However, the greedy algorithm’s limitation is that
it assumes that all road segments are of equal length,
resulting in a route with 2 short road segments be-
ing preferred over a route with 1 long road segment.
Overcoming this limitation requires redefining a road
segment as a segment with a unit length, so that the
number of segments is proportional to route distance.
This way, a single long road segment can be repre-
sented as multiple unit length elements, and will be
preferred over shorter road segments without modifi-
cations to an algorithm. The pseudocode based on a
direct translation of a classic greedy algorithm for a
route selection problem is shown in Algorithm 1. The
proposed algorithm is computationally lightweight
and requires O(N
2
) operations.
Data: {R
1
, R
2
, ...R
N
routes
} - a set of bus routes
R
i
= {m
1
, m
2
, ...m
n
i
} - each vehicle route as a
set of road segments
N
routes
- total number of vehicle routes
k - number of routes to select
Result: MaximumRouteSet - a set of route IDs
that maximizes coverage
initialization;
MaximumRouteSet :=
/
0;
repeat
// Route retrieval: select the route that has
the largest number of uncovered elements
i := argmax(U ncoveredLength(R
i
))
MaximumRouteSet := MaximumRouteSet +
i
// Route Exclusion: Subtract the covered road
segments from the remaining routes. Note that
an efficient implementation can simply ’mark’
the covered road segments without actual
’subtraction’
for j RemainingRoutesIDs do
R
j
:= R
j
- R
i
end
until length(MaximumRouteSet) = k;
Algorithm 1: Maximum route coverage.
4 EVALUATION
4.1 Data Set
The algorithm is evaluated on Transport for Lon-
don dataset (TFL, 2016) containing 713 bus routes
in Greater London, released for application devel-
opers to create apps such as locating nearest bus
stops or perform journey planning. The data is
available as a CSV file, where each record speci-
fies the coordinates of a bus stop (Location Easting
and Location Northing), a bus route (Route), the
sequence number along the route (Sequence), the
name and the code for the bus stop (Stop Name and
Bus Stop Code), and the direction of travel (Run).
The dataset contains routes for a total of 19801 dif-
ferent bus stops. The summary of data format is de-
scribed in Table 1. The actual street by street path for
each bus route has been extrapolated from bus stop
coordinates by using Google’s turn-by-turn naviga-
tion API (Wallace et al., 2014). Here, an assump-
tion has been made that a bus moves along the short-
est path between consecutive bus stops, which works
well in most cases.
The processed data set contains GPS coordinates
of the turn-by-turn road segments for each bus route.
The need to run the bus routes through a turn-by-turn
Coverage and Mobile Sensor Placement for Vehicles on Predetermined Routes: A Greedy Heuristic Approach
85
Figure 2: The original dataset contains bus stop locations
only, which is not sufficient for running a route selection
algorithm.
Figure 3: The processed dataset contains a more detailed
route information obtained through turn-by-turn direction
API.
direction API is visualized on Fig. 2 and Fig. 3:
The implementation was done in the Go pro-
gramming language known for its support for con-
current operations (Donovan and Kernighan, 2015).
The script iterates through all bus stops for each bus
route, extracts the coordinates of all road intersections
and saves the data in a KML file as well as MySQL
database. KML was used for visualizing the routes in
Google Earth, while MySQL was used for further pro-
cessing as described in the next subsection. Visualiz-
ing KML data in Google Earth proved to be beneficial
for discovering defects in the data supplied. For ex-
ample, the Ordinance Survey Easting co-ordinate for
a stop on Summit Close contained an error which af-
fected three bus routes. This was reported to TfL, who
corrected the co-ordinate and updated their dataset ac-
cordingly. Whenever an individual bus route was pro-
cessed, it was processed concurrently with other bus
routes. This was advantageous in the fact that larger
bus routes with substantial API calls did not block the
processing of other routes. The script processed 10
routes concurrently on a laptop with a dual-core 2.7
GHz Intel i5 with 8GB RAM, and converted the en-
tire data set in 20 minutes.
4.2 Geographical Route Exclusion
Recall that the optimization algorithm works by itera-
tively repeating longest remaining route retrieval and
route exclusion procedures. Both procedures can be
implemented trivially, if all road segments were repre-
sented as abstract set elements with unique numerical
IDs. The actual data for each bus route comprises a set
of road segments defined by their GPS coordinates as
illustrated on Fig. 4 where white lines indicate several
bus routes going around the same roundabout. Note
that each bus route uses its own set of road segments
(white lines) to describe the same road around the
roundabout, which complicates route exclusion. For
route exclusion to work correctly, removing any bus
route going through the roundabout should automati-
cally remove all nearby road segments that belong to
other bus routes in the same area.
We propose the following simple implementa-
tion for geographical route retrieval and route ex-
clusion. Let A = (longtitude1, latitude1) and B
= (longtitude2, latitude2) be the co-ordinates of
the start and end points of the selected road seg-
ment. The proposed route exclusion algorithm
works by placing a rectangle with AA
0
BB
0
on a
map, where A
0
= (longtitude1, latitude2) and B
0
=
(longtitude2, latitude1), and then removing all road
segments that start and end within the rectangle, as
shown in Fig 5. In the diagram below the white lines
indicate a bus route, with the grey rectangles indicat-
ing the rectangles AA
0
BB
0
, any other route segments
which touch or overlap the red squares will be re-
moved. This allows us to ensure that segments that
run parallel (but would not ordinary overlap), can still
be identified and removed alongside the target seg-
ment.
The distances between each co-ordinate are un-
equal, however in practice as each small turn on the
route creates a new segment, the route segments are
therefore small enough not to cause a problem (no
segment was greater than 100 meters apart). If there
is a particularly long segment running alongside a
road which has another road running parallel along-
side side it at limited proximity, it is possible that a
segment on the other road may be removed. There-
fore, it is vital that segment lengths are kept to a mini-
mum in order to avoid this behaviour. Our implemen-
tation is able to identify long segments in the dataset
and split them into smaller segments by modifying the
end point of a segment, and inserting a new segment.
An alternative method of removing nearby road seg-
ments would have been by identifying points which
are within a given radius of a set of midpoints of the
given segment. However, this approach would require
WINSYS 2017 - 14th International Conference on Wireless Networks and Mobile Systems
86
Figure 4: Charlie Chaplin Walk roundabout.
Figure 5: Route Exclusion problem.
the knowledge of which road a given segment is on to
validate the fact that two segments are indeed on the
same road.
The implementation process starts off by populat-
ing a MySQL database with an entry for each road
segment. The length of each route is calculated dy-
namically as a total length of road segments on that
route. By using a function that calculates the dis-
tance between co-ordinates we can calculate the to-
tal length of the routes and mark all segments of the
largest route as deleted. As we iterate through each
part of the route to mark it as a deleted, we accord-
ingly mark any other route segments on the remain-
ing routes as deleted if the segments’ co-ordinates
are within the start and end points of the route seg-
ment being deleted as described below. As the next
route that is removed depends on the previous route
removed, it was not possible to concurrently process
multiple routes together. We did not however feel that
this was a limiting factor as this step took a matter of
seconds.
5 RESULTS
The goal of the evaluation is to compare the perfor-
mance of the proposed greedy algorithm with a base-
line method, where the routes are selected randomly.
The baseline algorithm was run three times and the
average result was taken, whereas the Greedy algo-
rithm only needs to be run once, as it is deterministic
and always selects the same set of routes regardless of
how many times the simulation is run.
Fig. 6 shows the total route coverage in meters de-
pending on the number of selected routes for both pro-
posed greedy approximation and baseline algorithms.
The total route coverage increases linearly with the
number of selected routes for a baseline approach. It
can be seen that for each number of selected routes,
the proposed algorithm provides higher route cov-
erage. At just 100 selected routes (around 14% of
routes), greedy algorithm covers 25% of the total road
length compared to 14% achieved by a baseline algo-
rithm, which corresponds to 78% improvement. The
greedy algorithm provides a higher coverage because
it attempts to select the longest route each time, and
then excludes the relevant segments from the remain-
ing routes. This improvement in coverage decreases
to 54%, 38% and 12% for 200, 300 and 600 routes re-
spectively. Whilst the improvement reduces with the
number of selected routes, the result clearly demon-
strates that at any point, greedy approximation per-
forms better than a baseline. The results can be par-
ticularly useful to demonstrate an effectiveness of an
approach when not all the vehicles can be equipped
with pothole sensors. This can be the case for de-
ployments in large geographical areas that consist of
thousands of routes.
0 100 200 300 400 500 600 700
0 20 40 60 80 100
Routes removed
Total road length coverage, %
greedy
random
Figure 6: Total route coverage against the number of se-
lected routes.
6 CONCLUSIONS
Low cost mobile sensors provide a promising solution
for a large scale and timely pothole detection. While
a number of solutions have been proposed recently,
most focus on sensor design, signal processing and
Coverage and Mobile Sensor Placement for Vehicles on Predetermined Routes: A Greedy Heuristic Approach
87
data collection ignoring an important question of sen-
sor placements. We have proposed a novel approach
for selecting an optimal set of vehicles that maximizes
the geographical road coverage. We have formalised
the problem as a maximum coverage problem and
proposed a greedy heuristic, which was evaluated on
TfL London bus route data set. The evaluation has
shown up to 78% improvement over a random route
selection selected as a baseline algorithm. Some ap-
plications may find it useful to assign priorities to cer-
tain roads depending on the road traffic or road size.
For a pothole detection application, it may be useful
to have a higher scanning frequency for strategic and
secondary distributor roads and lower frequency for
local access and link roads. This can be modelled as a
weighted maximum coverage problem, the evaluation
of which we leave for future work.
REFERENCES
(2016). London Datastore. Data.london.gov.uk.
https://data.london.gov.uk/dataset/tfl-bus-stop-
locations-and-routes. [Online; accessed 16-Oct-
2016].
Botea, A., Nikolova, E., and Berlingerio, M. (2013). Multi-
modal journey planning in the presence of uncertainty.
Chen, W. (2014). Technical Improvements on Mobile App
Based Taxi Dispatching System. http://www.atlantis-
press.com/php/paper-details.php?id=12704.
Contreras, S., Kachroo, P., and Agarwal, S. (2016). Ob-
servability and sensor placement problem on highway
segments: A traffic dynamics-based approach. IEEE
Transactions on Intelligent Transportation Systems,
17(3):848–858.
Di Francesco, M., Das, S. K., and Anastasi, G. (2011). Data
collection in wireless sensor networks with mobile el-
ements: A survey. ACM Trans. Sen. Netw., 8(1):7:1–
7:31.
Donovan, A. A. and Kernighan, B. W. (2015). The Go Pro-
gramming Language. Addison-Wesley Professional,
1st edition.
Eriksson, J., Girod, L., Hull, B., Newton, R., Madden, S.,
and Balakrishnan, H. (2008). The pothole patrol: Us-
ing a mobile sensor network for road surface monitor-
ing. In Proceedings of the 6th International Confer-
ence on Mobile Systems, Applications, and Services,
MobiSys ’08, pages 29–39, New York, NY, USA.
ACM.
Hochbaum, D. (1997). Approximation algorithms for np-
hard problems, 1st ed. boston. PWS, pages 94–143.
Hull, B., Bychkovsky, V., Zhang, Y., Chen, K., Goraczko,
M., Miu, A., Shih, E., Balakrishnan, H., and Mad-
den, S. (2006). Cartel: A distributed mobile sensor
computing system. In Proceedings of the 4th Inter-
national Conference on Embedded Networked Sensor
Systems, SenSys ’06, pages 125–138, New York, NY,
USA. ACM.
Kuhlman, M. J., vec, P., Kaipa, K. N., Sofge, D., and Gupta,
S. K. (2014). Physics-aware informative coverage
planning for autonomous vehicles. In 2014 IEEE In-
ternational Conference on Robotics and Automation
(ICRA), pages 4741–4746.
Mohan, P., Padmanabhan, V. N., and Ramjee, R. (2008).
Nericell: Rich monitoring of road and traffic condi-
tions using mobile smartphones. In Proceedings of
the 6th ACM Conference on Embedded Network Sen-
sor Systems, SenSys ’08, pages 323–336, New York,
NY, USA. ACM.
Murray, A. T. (2016). Maximal coverage location problem.
International Regional Science Review, 39(1):5–27.
Wallace, B., Goubran, R., and Knoefel, F. (2014). Mea-
surement of signal use and vehicle turns as indication
of driver cognition. In 2014 36th Annual International
Conference of the IEEE Engineering in Medicine and
Biology Society, pages 3747–3750.
Zhang, Z., Ai, X., Chan, C., and Dahnoun, N. (2014). An
efficient algorithm for pothole detection using stereo
vision. In Acoustics, Speech and Signal Processing
(ICASSP), 2014 IEEE International Conference on,
pages 564–568.
Zhu, M., Liu, X. Y., Tang, F., Qiu, M., Shen, R., Shu, W.,
and Wu, M. Y. (2016). Public vehicles for future ur-
ban transportation. IEEE Transactions on Intelligent
Transportation Systems, 17(12):3344–3353.
WINSYS 2017 - 14th International Conference on Wireless Networks and Mobile Systems
88