Upload
ronaldo
View
215
Download
1
Embed Size (px)
Citation preview
Autonomous Algorithms for Terrain Coverage
Metrics, Classification and Evaluation
Jonathan Mason, Ronaldo Menezes
Abstract—Terrain coverage algorithms are quite common inthe computer science literature and for a good reason: theyare able to deal with a diverse set of problems we face. FromWeb crawling to automated harvesting, from spell checking toarea reconnaissance by Unmanned Aerial Vehicles (UAVs), agood terrain coverage algorithm lies at the core of a successfulapproach to these and other problems. Despite the popularityof terrain coverage, none of the works in the field addressesthe important issue of classification and evaluation of thesealgorithms. It is easy to think that all algorithms (since they areall called terrain coverage) deal with the same problem but thisis a fallacy that this paper tries to correct. This paper presents asummary of many algorithms in the field, classifies them basedon their goals, introduces metrics to evaluate them, and finallyperforms the evaluation.
I. INTRODUCTION
THE term terrain coverage refers to the idea of using a set
of agents to explore a terrain. This area of research has
applications where agents are required to: perform tasks such
as vacuuming or harvesting, perform searches for targets, or
simply, explore a particular terrain.
There are numerous algorithms describing methods for
covering a given terrain. However, descriptions of metrics on
how well these algorithms perform is currently lacking. In
particular, there are few metrics that can be used to compare
algorithms against each other and to determine how well
they perform in different situations. Accordingly, claims of
performance should be taken with a grain of salt since very few
proposals go beyond a comparison with one other approach
in the field.
This paper tries to remedy this situation by describing mech-
anisms for comparing these algorithms. In order to achieve
this, the paper: (i) proposes metrics for evaluation of terrain
coverage algorithms, and (ii) perform extensive experiments
that show how well the different algorithms perform according
to the proposed metrics.
But what is a terrain? From the point of view of this
paper a terrain is seen as a two-dimensional lattice where
each cell has exactly 8 neighbors. The choice for this is not
arbitrary and relates to the visualization of the algorithms and
the fact that real terrains are generally two-dimensional. We
have implemented an elaborate simulator for these algorithms
and a two-dimensional lattice does provide the best form of
visualization (see Figure 3). However, it should be noticed
J. Mason is with the Department of Computer Science, FloridaInstitute of Technology, Melbourne, FL 32901, USA (email: [email protected]).
R. Menezes (IEEE Member) is with the Department of Computer Sciences,Laboratory for Bio-Inspired Computing, Florida Institute of Technology,Melbourne, FL 32901, USA (e-mail: [email protected]).
the metrics proposed here have no direct relation to the
representation of the terrain. If necessary, terrains could be
represented as a graph, or any N-dimensional lattice. In fact,
any graph representation could be trivially transformed into a
lattice representation.
Before delving into the evaluation of terrain coverage algo-
rithms we must discuss a few differences between the types
of algorithms that deal with terrain coverage. They can be
seen as belonging to three classes: centralized, distributed
and autonomous. Here, we deal with the last class but the
introduction of the classificaiton below helps the understanding
the class of algorithms we deal with in this paper.
Centralized control refers to cases where a centralized
decision maker or a planner controls the agents. This class
of algorithms is similar to planning algorithms [1], [2]. The
second approach is also similar to planning but the algorithms
are distributed. In distributed control, we have a set of dis-
tributed agents which are in charge of making the decisions.
Normally they are aware of the entire terrain (global planning)
causing them to be very efficient. However, as the terrain
size increases and the characteristics of the terrain changes
from uniform to non-uniform terrains [3], planning becomes
more complex and costly. The last type of algorithm for
terrain coverage is called autonomous because each agent in
the terrain coverage answers only to its own decisions which
are taken in response to local information available to each
agent. This paper concentrates on these kinds of algorithms
evaluating them on diverse metrics.
In addition to the types above, the goal of terrain cover-
age algorithms could be classified according to their tempo-
ral/spatial properties. In Bullen and Menezes [4] we introduced
the concept of temporal terrain coverage and showed why it is
different from spatial coverage. Some of the metrics described
in Section III consider the temporal characteristics of the
algorithms (for more information about spatial vs. temporal
coverage refer to [4]).
Last, but certainly no less important, is the distinction of
terrain coverage algorithms and target location algorithms.
While the former refers to the task of using agents to traverse
the entire extension of the terrain, the latter focuses on locating
a target within the terrain. Note that target location is not
interested whether the coverage of the terrain is good. In
this paper we study some algorithms originally proposed for
target location but with a modification: the target does not
exist. Without the target, agents are forced to maximize terrain
coverage in an (futile) attempt to locate the target. With this
modification, we were able to implement more algorithms in
our simulator (described in Section IV).
1641
978-1-4244-1823-7/08/$25.00 c©2008 IEEE
II. ALGORITHMS
Random Walk [4] is a naıve approach to terrain coverage,
but one that can be used as basis for comparison with others.
As most brute-force approaches, random walk works on any
terrain (although not efficiently). The approach consists of
agents randomly choosing a direction and moving one step in
that direction covering that cell. This process is repeated until
the goal is reached (e.g., cover all the cells in the terrain). It is
expected that each of the other algorithms will perform better
than this one, because this algorithm does nothing to try and
optimize the behavior of the agents.
The node-counting algorithm [5] takes a deterministic ap-
proach to terrain coverage since the choice of place to move
always considers the cell with the fewest number of visits.
At each time step, each agent moves from its current location
(cell) in the terrain to one of the adjacent cells. The adjacent
cell chosen to be visited is the one with the fewest number
of visits by all agents. In the case where several cells tie for
the fewest number of visits, any one of the cells from this set
may be chosen at random.
Recency [6] is an algorithm where each agent bases its
choice of movement on the time since each adjacent cell has
been visited. It was proposed as a means of comparison for
other approaches to terrain coverage. It is similar to node
counting, but the count is in time units rather than number
of visits. Thus the neighboring cell that has been visited
least recently would be the best choice for an agent’s next
location, regardless of how many times it has been visited.
This algorithm is also deterministic.
Alarm [7] is an algorithm based on Ant Colony Opti-
mization (ACO) [8]. ACO is a heuristic where each agent
is able to choose its next location by evaluating the amount
of pheromone in the neighboring cells. They choose the
next location to move to proportional to the concentration
of pheromone in that location. Each agent will also leave
some pheromone in each cell that it visits. This pheromone
may be affected by environmental factors such as evaporation.
The Alarm approach to terrain coverage uses the presence of
pheromone as a repellent to agents. Thus with this algorithm,
an agent’s choice is to move to cells with less pheromone, or
away from the source of the alarm. Alarm is a probabilistic
approach meaning that the pheromone in each cell represents
a chance of that cell (not) being chosen as the next cell to
move to.
LRTA* [9] is a deterministic target location algorithm that
updates the amount of pheromone1 for the current cell location
during each step. In this algorithm, the pheromone acts as a
repellent for each agent. As each agent moves, it will update
the value of the current cell by taking the minimum amount
of pheromone of the neighboring cells and incrementing it
by the distance from the current cell to the neighboring cell.
1Note that the pheromone in LRTA*, OMA and Wagner represents someinformation left on the terrain but not necessarily pheromones as understoodby Swarm-based algorithms. The reason for using the term relates to the factthat in the simulator, all information left on the environment is referred to aspheromone.
Therefore, over time, cells that have not been visited will have
the pheromone evaporate, and thus be more attractive to the
agents. After a cell has been visited, the agent will recalculate
the amount of pheromone for the cell before moving. The
difference between this algorithm and Alarm is that the amount
of pheromone deposited in a cell is not uniform, but rather
depends on the amount of pheromone in neighboring cells.
OMA [6] is a deterministic terrain coverage algorithm that
is similar to LRTA*, except that there is a guarantee that the
pheromone will be incremented for each visited cell during
each step. In the case that neighboring cells have much lower
pheromone levels, the level of pheromone in the current cell
will still be increased, which is not always the case with
LRTA*. With LRTA*, there is the possibility that if the
neighbors have lower pheromone levels, the current cell can
have its pheromone level lowered. This will not happen using
OMA, which causes it to exhibit behaviors of both Node
Counting and LRTA*.
Wagner [10] is a deterministic terrain coverage algorithm
that updates the pheromone level in the current cell only if it
is less than that of the neighboring cell to which the agent is
moving. In the event the current cell has a higher pheromone
level than the cell to which the agent is moving to, no update to
the current pheromone level will occur. This algorithm is quite
similar to both the LRTA* and the OMA algorithms, except
that the update is conditional, and will not always occur.
III. METRICS
This section describes the metrics used in measuring the
performance of terrain coverage algorithms. For these algo-
rithms, it is assumed that during each unit of time, each agent
moves from one cell location in the terrain to an adjacent one.
A. Time to Full Coverage
The time required for each section of terrain to be visited
at least once by an agent is the most common measurement
of how well a terrain coverage algorithm performs. Whereas,
algorithms that cover all of the terrain for a given problem
can be considered to perform equally well in the spatial sense,
moving the algorithm to the temporal case and using a time
constraint gives a way to compare algorithms to determine
which ones can cover a given terrain in less time.
This metric is useful for measuring how well an algorithm
is at automating a task such as vacuuming, painting, or
harvesting. In general this metric applies to any application
where all of the terrain needs to be visited at least once, and
multiple visits do not produce negative consequences.
B. Sensitivity to the Number of Agents
This metric measures the scalability of the algorithms with
regards to the number of agents. When physical constraints are
assumed (e.g. two agents cannot occupy the same space), the
increase on the number of agents may not translate directly
into gain in terrain coverage; it may be possible that a terrain
with too many agents cannot be covered as efficiently since
agents are not able to visit/move to certain locations. Similarly,
1642 2008 IEEE Congress on Evolutionary Computation (CEC 2008)
algorithms that were developed for working with few agents
may not perform well in environments with too many agents.
C. Sensitivity to the Terrain
Like the previous approach, scalability can also be measured
in terms of the size of the environment. Some algorithms may
perform better in large environments while others perform
better in smaller terrains. In our experiments we have used 2D
lattices of sizes from 20×20 cells and 50×50 cells. In addition
to the size (which is very similar to the metric in Section
III-B above), the configuration of the terrain has an effect on
the performance. In this paper we measure three approaches.
First we assume non-obstructed terrains which are standard
in most algorithms. Second, we use obstructed terrains where
some barriers are placed on the environment. Finally, we want
to find out the ability of the algorithms to handle complicated
special features which may require the agents to move through
narrow paths.
(a) Non-Obstructed (b) Obstructed (c) Special Feature
Fig. 1. Three types of terrain used in our experiments. In (a) we have anopen terrain, in (b) a terrain obstructed by some walls, and in (c) we have aterrain with a special feature representing a hard-to-access location.
Figure 1 shows the three scenarios used. Note that Figure
1(c) has a very narrow corridor to be covered. In some terrain
coverage algorithms, this feature may be hard to be covered
given the limitation in the number of neighbors the positions
have. That is, cells inside the corridor have 2 neighbors as
opposed to 8 neighbors of other cells in the terrain.
These terrains were not chosen at random, they are repre-
sentations of realistic cases in the real world. For instance,
the non-obstructed represents an open space, the obstructured
represent an well divided area such as an building and the last
one tackles the problem of special feature in these terrains;
some hard to find location in the terrain.
D. Percentage Covered
The inverse metric to the time required to cover a given
amount of terrain, is to determine how much terrain is covered
in a given amount of time. This measurement will answer
the question: How long until a given amount of the terrain is
covered? This metric is useful for applications that operate
with a time constraint being more important than the full
coverage. Using this metric, an algorithm that can cover 95%
of the terrain quickly, but may never reach full coverage could
outperform an algorithm that does eventually cover the entire
terrain. Thus, when an algorithm reaches a point where the
rate of convergence begins to decrease, it could be stopped.
Graphing the number of cells that are visited over time
would be a useful metric for determining models of how
the algorithm covers terrain. Does the algorithm cover the
terrain linearly over time? Exponentially? Logarithmically?
This metric will allow us to create models for predicting future
outcomes. It allows for determining how many agents are
needed for a particular application.
E. Measuring Revisits
Measuring how many and how often cells are revisited
is another way to compare the effectiveness of algorithms.
Measuring the percentage of terrain that is revisited (more
than a given number of times), the area of terrain with the
maximum number of visits, and the standard deviation of visits
between cells will show the level of redundancy built in to the
algorithms. A histogram could be created based on the number
of visits to each cell to determine what areas are visited
most. By measuring the standard deviations of visits among
all cells (unit area of terrain), we can obtain a measure of the
uniformity of the revisits to cells. By looking at the number of
times each individual cell was visited, it can be determined if
there are large areas (or paths) that are continuously revisited
or need to be revisited, or if there are smaller areas that are
continuously revisited.
This metric is a measure of quality for a given algorithm
and those with fewer revisits or lower standard deviations in
number of visits would be considered to perform better. This
would be a useful metric for applications such as painting,
where the time required to reach full coverage is less important
than the idea that the area is covered uniformly, thereby
receiving the same number of coats of paint.
Although standard deviation is a good approach for mea-
suring uniformity of visits, it is worth noticing that it may be
inappropriate for measuring redundancy of work (doing more
work than necessary). Consider the following two situations.
First, a few cells are visited much more frequently while
the algorithm uniformly covers the remainder of the given
terrain. This algorithm would have a high standard deviation,
due to the fact that most cells were visited uniformly, but a
couple of cells were visited much more frequently. Second,
if the algorithm explores the entire terrain uniformly, then
there could be quite a bit of redundancy before the entire
terrain is covered. However, this second situation would have
a low standard deviation in the number of visits. However, it is
possible that the amount of redundancy in the second situation
is more than the amount from the first situation. This is
illustrated in Figure 2. Note that the number of redundant visits
(shaded) in the right picture (22) is larger than the number in
the left picture (14) even though the standard deviation is lower
on the right picture.
F. Time Between Visits
Measuring the time between visits is a metric that can be
used to measure the effectiveness of an algorithm in temporal
coverage. This measurement is useful for applications such
as security and surveillance. In these applications it is not
2008 IEEE Congress on Evolutionary Computation (CEC 2008) 1643
Redundant Work
CELLS CELLS
# O
F V
ISIT
S
# O
F V
ISIT
S
Redundant Work
Fig. 2. Standard Deviation Cost Example
sufficient to visit an area once, but rather it is necessary toperiodically revisit an area. By measuring the time betweenvisits and taking the standard deviations of these times, it canbe determined how uniformly often the cells are visited. Also,by measuring the number of visits to a particular area of terrainduring a given time, it can be determined how likely the cellis to be visited during other periods of time.
This measure is useful for security applications such aspolice patrol. How long will it be between the times a policepatrols a particular city block or street? Police could use thisknowledge to know where additional presence is most likelyto be needed. This problem is even more interesting from theopposite side. If criminals know how likely a police officer islikely to patrol a given area, that knowledge could be used totarget areas where there is a low probability of police presence.
G. Exploratory Nature of the Agents
This measurement determines how often agents return to agiven cell. It could also be viewed as a count of revisits fromthe perspective of the agents. How many times does an agentrevisit the same cell? Is the agent exploratory and does notrevisit the same cell? Or is the agent local and revisits thesame cells repeatedly? Using this metric, it would be possibleto provide estimates for how many agents are required to coverterrain using a particular algorithm. Therefore, if cost of agentsis a concern, perhaps an algorithm that works better with fewerbut more exploratory agents should be employed. However, ifthe cost of agents is low, then an algorithm that performs betterwith more but possibly less exploratory agents would be moreappropriate.
H. Spatial Distribution of Agents
Lastly, we define a metric for the starting location of theagents. Studying the spatial distribution of the agents in thebeginning of the simulator can provide an interesting way tocompare the algorithms. Does a particular algorithm workbetter if the agents are started at random locations in theterrain, or if the agents all start from the same location? Whenall agents start from the same location (similar to a nest forants in nature), do different starting locations perform betterthan others?
IV. SIMULATOR
The simulator used for implementing these algorithms andcollecting results for them was written using NetLogo [11].We have run nearly 100000 experiments on the three differentterrains shown in Figure 1. All the results shown were areperformed on terrains of 20 × 20 and 50 × 50. We believethese sizes are realistic and represent a good size terrain;for instance, the in the 50 × 50, if we assume each squareas having 1m2, we would have a terrain that is larger thanhalf an acre. Furthermore, 1m2 is relatively small and inrealistic environoments is not unusual for each “location” tobe considered based on the visibility of the agents which canbe on the tens of meters. Figure 3 shows the Graphical UserInterface (GUI) of our simulator. The result of each run isstored in a SQL database that can later be queried to gatherthe experimental results described in the following section.
The simulator has several modifiable parameters amongwhich we can emphasize:
• The number of agents used in the coverage algorithms.• The size of the terrain can be changed to any number.• The type of terrain allows us to run simulations on one
of the terrain topologies described in Figure 1.• Physical constraints can be set to true or false. In this
paper, the results are always assumed to be under physicalconstraints. This means that only one agent can be ata given cell at any point during the execution of thesimulations.
• Some algorithms for terrain coverage use pheromonesto indicate visited locations. The simulator can set theevaporation rate of the pheromones.
• The simulator provides a drop-down menu to choose thealgorithm to be run.
• The starting location of the agents can be configuredsince it may determine the performance of the algorithms.The simulator allows starting points to be randomlyspread in the environment or at various locations suchas south, north, center, among others.
• The algorithms can be configured to cover the terrainmultiple times. That is, how many times each cell shouldbe covered.
V. EXPERIMENTS
Before going into the experiments, it is important to talk alittle about the setup used in the execution of the experiments.NetLogo is implemented in many platforms including Win-dows, Mac, and Linux. Since our metrics do not deal with theconcept of a real clock, we have used various machines usingdifferent operating systems. Note that the time described in theexperiments relates to the number of steps in the simulatorwhich has no relation to a real clock. We have used fastmachines only because the experiments take a long time tofinish due the sheer number of experiments we executed; inexcess of 100000 runs on various configurations.
Most algorithms finish quickly except for the Random Walk.Here it is worth noticing that Random Walk was implemented
1644 2008 IEEE Congress on Evolutionary Computation (CEC 2008)
Fig. 3. Screenshot of a execution in the developed simulator. The picture shows an example of an obstructed terrain with a center start for all agents.
as a brute-force approach to gauge the performance of all the
other algorithms. However, we have decided to only include
the results in the first experiment. The goal is to show how
inefficient Random Walk is compared to the other algorithms.
Also, by removing Random Walk, the results of the other
algorithms become more visible in the graphs.
The first metric to be discussed is the Time To Reach Full
Coverage. For the 20× 20 case, the results for all algorithms
are displayed. Due to the inefficiency of Random Walk, it will
only be displayed for this 20×20 case. This will allow a closer
comparison of the other algorithms. Random Walk performs
on average for the 20×20 terrain, worse than the worst case of
any of the other algorithms on the 50×50 terrain. The results
shown in Figure 4 do not take into account the starting location
or the number of agents. Therefore the values shown have a
wide range that take into account all of the starting locations
and various different numbers of agents (1, 2, 25, 50, 100, 200).
The results are grouped by terrain types. Each type of terrain
is further subdivided into the algorithms. This will allow
comparison of all the algorithms for a particular type of terrain.
Node Counting performs the best. This algorithm is followed
by Recency, LRTA*, Wagner, OMA, and Alarm which all
perform comparably. On average, they are within about 100
time ticks of each other, excluding Node Counting.
For the 50×50 case, the time to full coverage was calculated
and graphed using a combination of all starting locations
and various numbers of agents (25, 50, 100, 200). The results
shown in Figure 5 are grouped by terrains. Each type of terrain
is then subdivided into algorithms so that the algorithms may
be compared to each other for each type of terrain. The results
for the 50×50 case were similar to those for the 20×20 case.
One important thing to notice is that the Recency algorithm
did not perform as well on the 50 × 50 case as it did on the
20× 20, when compared to the other algorithms. The concept
of the Recency algorithm is to minimize the time between
visits of cells. Therefore, this algorithm is designed not to
reach a minimum coverage time, but to keep a minimum time
between visits. As such, it does not seem unreasonable that it
does not scale well to larger terrains when measuring time to
Fig. 4. Results displaying the amount of time required to achieve fullcoverage for 20×20 terrain. The results here show the inefficiency of RandomWalk.
reach full coverage.
Note that the gap between the algorithms has increased
slightly to about 120 time ticks, excluding Node Counting.
At first it may look strange the fact that the algorithms appear
running faster on the 50 × 50 than in the 20 × 20 but this
is only due to the fact that in the 20 × 20 we have included
experiments with only 1 and 2 agents in the environment.
Another issue to observe in Figures 4 and 5 is that they
seem quite insentitive to the type of terrain. However there are
differences and a close inspection will show that algorithms
perform best in Non-Obstructed terrains followed by Obsc-
tructed and then Special Feature. Preliminary results indicate
that these differences are more visible in larger terrains.
For measuring the Sensitivity to the Number of Agents, the
results were calculated using a 50 × 50 terrain. Also, all of
the starting locations were combined in the values displayed
in Figure 6. This figure groups the results by algorithms. Each
algorithm is then further subdivided into the number of agents
used (25, 50, 100, 200). This allows an easy comparison of
how the number of agents affects each algorithm. The results
2008 IEEE Congress on Evolutionary Computation (CEC 2008) 1645
Fig. 5. Results displaying the amount of time required to achieve fullcoverage for 50 × 50 terrain.
show that increasing the number of agents from 25 to 50
provides a coverage time that is about 55 − 65% of the time
required for 25 agents. Doubling to 100 agents provides a
coverage time that is about 60 − 75% of the time required
for 25 agents. Doubling to 200 agents provides a coverage
time that is about 75 − 85% of the time required for 25
agents. Therefore, doubling from 25 to 50 agents almost cuts
the coverage time in half. However, continuing to double
the number of agents does not provide the same amount of
increase in coverage speed. Up to this point, the increase in
number of agents continues to improve the coverage time, but
with decreasing amounts. This is due in part to the fact that
the more agents in a terrain, the more likely that they will not
be able to move due to being blocked by agents occupying
neighboring cells.
Fig. 6. Result of how long it takes to achieve full coverage for 50 × 50
terrain using various numbers of agents. Note that within each group we seea negative exponentially distributed time to cover the terrain.
For measuring the number of revisits (redundancy), the
results were calculated a 50×50 terrain. All starting locations
and various numbers of agents (25, 50, 100, 200) were included
in the results shown in Figure 7. The results are grouped by
algorithms, with each algorithm being subdivided into terrain
types to allow comparison of how each algorithm is affected
by terrain types. For all algorithms, as the terrain changed
and became more obstructed, the number of revisits increased.
There is about a 35−44% increase in the number of revisits on
Obstructed Terrain when compared to Non-Obstructed terrain.
But the increase in number of revisits from Obstructed to
Special Feature was only about 6−12%. This experiment also
demonstrates that OMA is quite robust and insensitive to the
configuration of the terrain although it is not the absolute best
algorithm for the task. Note that we are not arguing that OMA
is the best algorithm but just that it is the least sensitive to
changes in the enviroment. OMA (as well as Wagner) tend to
spread out the pheronome levels more evenly in the terrain
which helps the algorithms perform well regardless of the
obstructions in the terrain.
Fig. 7. Number of revisits for each algorithm, terrain type combination ona 50 × 50 size terrain.
For measuring the time between visits, the standard devi-
ation of time between visits for each experiment was used.
All starting locations and number of agents were considered
in the results shown in Figure 8. This figure has the results
grouped by algorithm, with each algorithm being subdivided
by terrain types. This will show how the type of terrain
affects the time between visits for each algorithm. Obstructed
terrain showed a significant increase of about 40− 60% when
comparing to Non-Obstructed terrain. LRTA*, Alarm, and
Recency showed the largest increases of about 55 − 60%,
whereas Node Counting, OMA, and Wagner showed smaller
increases. Also, the time to cover Special Feature as compared
to Obstructed only showed an increase of 5 − 9%.
The results shown in Figure 9 are the same results from
Figure 8, only rearranged to show the comparison of each
algorithm for a specified type of terrain. When comparing
the algorithms using this metric, LRTA*, WAGNER, and
OMA performed the best. Then Recency and Node Counting,
followed by Alarm. However, using this metric, Alarm per-
1646 2008 IEEE Congress on Evolutionary Computation (CEC 2008)
Fig. 8. Standard Deviation of time between visits for each algorithm, terraintype combination grouped by algorithms on a 50 × 50 size terrain.
formed more comparably to the other algorithms than when
we consider other metrics. Note that Alarm is a probabilistic
algorithm and considering this fact it actually does really
well compared to all others (deterministic) approaches. We
believe Alarm would be more suitable to dynamic, constantly-
changing environments.
Fig. 9. Standard Deviation of time between visits for each algorithm, terraintype combination grouped by terrain types on a 50 × 50 size terrain.
For measuring the percentage covered, experiments were
stopped when 50%, 75%, 95%, and 100% of the total coverage
was reached. Experiments used all start locations and various
numbers of agents (25, 50, 100, 200) on a 50×50 terrain. The
results shown in Figure 10 are divided based on algorithm.
Each algorithm is subdivided into the percentages covered.
This will show how the time to cover increases as the
percentage covered increases. Each algorithm seemed to get
exponentially slower as time progressed. That is, each one
quickly reached the 50% mark, then required generally more
than half that time to reach the 75% mark. If the algorithms
increased linearly, which would be the ideal case, only half of
the time would be required to reach 75%. To go from 75%
to 95% coverage, an even longer time period was required.
Roughly speaking, it took about the same amount of time to
cover this 20% (from 75% to 95%), as it did to cover the
first 50%. Finally, it took almost as long to cover the last 5%
(from 95% to 100%), as it did to cover the first 75%, with the
exception of node counting.
Fig. 10. Time to reach specified percentage of coverage for each algorithm,terrain type combination on a 50 × 50 size terrain.
For measuring the sensitivity to start locations, experiments
were conducted on a 50 × 50 terrain. All terrain types
are combined and various numbers of agents were used
(25, 50, 100, 200). The results shown in Figure 11 are grouped
by start locations. Each start location is then subdivided into
algorithms. This will show how each algorithm performs
for a specified starting location. For each starting location,
the results are the same as for the Time to Full Coverage
metric as far as how the algorithms perform compared to each
other. However, when comparing start locations to each other,
Random Start performed the best. This is due to the fact that
the agents begin by being placed in random locations in the
terrain. Thus they begin spreading out throughout the terrain.
Compared to all agents starting from a single location as in
all of the other starting locations, this provides a significant
improvement in coverage time. Next the Center start location
performed the best. This is probably due to the fact that the
center provides the best start location for the special feature by
starting the agents in the hardest to reach location (nodes with
the fewest number of connected neighbors). Thus the hard to
reach locations are covered from the start. Another point of
interest is that the North East start location performed worse
than the North and East start locations. This is due to the
fact that when starting in the North East, the agents tend to
get blocked into the upper right quadrant (see Figure 1). Note
that other locations (e.g. South) were not tested due to the
symmetry of the terrain; the South result would be the same
as the North.
Last, for measuring the exploratory nature of the agents,
each agent keeps track of the number of cells it revisited.
2008 IEEE Congress on Evolutionary Computation (CEC 2008) 1647
Fig. 11. Time to reach full coverage for each algorithm, terrain typecombination grouped according to start locations on a 50 × 50 size terrain.
Then the standard deviation for all agents is stored for each
experiment. These standard deviations are shown in Figure 12.
This figure shows the results from experiments on a 50 × 50
terrain. All start locations and various numbers of agents
were used (25, 50, 100, 200). The results are divided based on
algorithm so the exploratory nature of each algorithm can be
compared. Node Counting has the least exploratory agents, all
agents seem to cover a much closer amount of terrain than the
other algorithms. The Wagner and OMA algorithms, are the
next least exploratory. Then LRTA* and Recency are more
exploratory, with Alarm being the most exploratory. This is
due to Alarm being a probabilistic algorithm, whereas the
others are deterministic.
Fig. 12. Results displaying the exploratory nature of each algorithm on a50 × 50 size terrain.
VI. CONCLUSION AND FUTURE WORK
This paper has presented a number of ways that algorithms
can be classified: temporal or spatial, terrain coverage or target
location, centralized, distributed, or autonomous control. It
also proposes a number of metrics that can be collected for
each algorithm and then uses those metrics to compare the
algorithms to each other. It is hoped that these metrics will
be used to compare newly developed algorithms to existing
algorithms as a way to measure improvements as they are
developed.
The modularity of the simulator introduced in this paper
makes it easy to plug in new algorithms. This will aid in
comparing new algorithms to the existing ones using all of the
same metrics that have been discussed in this paper. Therefore,
as new algorithms are developed, they can be easily added to
this simulator.
In the future we would like to classify algorithms based:
exploratory or local. When this is done, it would be interesting
to employ the concept of teams of algorithms. That is, to allow
agents to use an exploratory algorithm until some obstacle
is discovered, and then have it switch to a more localized
algorithm.
Another area of future work would be to measure the per-
formance of algorithms in a constantly-changing environment.
It is expected that the Alarm algorithm would perform better
in a dynamic environment due to its swarm-like characteristics
which help it to adapt to changes; whereas the deterministic
algorithms may perform less optimally in a dynamic environ-
ment.
REFERENCES
[1] P. Graglia and A. Meystel, “Minimum cost path planning for autonomousrobot in the random traversability space,” in Proceedings of the 1st
international conference on Industrial and engineering applications of
artificial intelligence and expert systems. New York, NY, USA: ACM,1988, pp. 1089–1096.
[2] M. G. Lagoudakis, E. Markakis, D. Kempe, P. Keskinocak, A. Kley-wegt, S. Koenig, C. Tovey, A. Meyerson, and S. Jain, “Auction-basedmulti-robot routing,” in Proceedings of Robotics: Science and Systems,Cambridge, USA, June 2005.
[3] X. Zheng and S. Koenig, “Robot coverage of terrain with non-uniformtraversability,” in Proceedings of the IEEE International Conference on
Intelligent Robots and Systems. San Diego, CA, USA: IEEE Press,Oct. 2007.
[4] H. Bullen and R. Menezes, “Models for temporal and spatial terraincoverage,” in First International Symposium on Intelligent and Dis-
tributed Computing, ser. Studies in Computational Intelligence. Craiova,Romania: Springer-Verlag, Oct. 2007, pp. 239–244.
[5] S. Koenig and Y. Liu, “Terrain coverage with ant robots: A simulationstudy,” in AGENTS ’01: Proceedings of the fifth international conference
on Autonomous agents. New York, NY, USA: ACM Press, 2001, pp.600–607.
[6] S. Thrun, “A probabilistic on-line mapping algorithm for teams ofmobile robots,” International Journal of Robotics Research, vol. 20,no. 5, pp. 335–363, 2001.
[7] R. Menezes, F. Martins, F. E. Vieira, R. Silva, and M. Braga, “A modelfor terrain coverage inspired by ant’s alarm pheronome,” in SAC ’07:
Proceedings of the 2007 ACM Symposium on Applied Computing. NewYork, NY, USA: ACM Press, 2007, pp. 728–732.
[8] M. Dorigo and T. Stutzle, Ant Colony Optimization. MIT Press, 2004.[9] R. Korf, “Real-time heuristic search,” Artificial Intelligence, vol. 42, no.
2-3, pp. 189–211, 1990.[10] S. Koenig and B. Szymanski, “Value-update rules for real-time search,”
in Proceedings of the 16th national conference on Artificial Intelligence
and the 11th Innovative applications of artificial intelligence conference.AAAI, 1999, pp. 718–724.
[11] U. Wilensky, “Netlogo,” Center for Connected Learning andComputer-Based Modeling, Northwestern University, Tech. Rep., 1999,http://ccl.northwestern.edu/netlogo.
1648 2008 IEEE Congress on Evolutionary Computation (CEC 2008)