<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Anomaly Detection in Vessel Tracks using Bayesian networks</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Steven Mascaro</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ann E. Nicholson</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Kevin B. Korb</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Bayesian Intelligence Pty Ltd</institution>
          ,
          <addr-line>www.bayesian-intelligence.com</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Clayton School of IT, Monash University</institution>
          ,
          <country country="AU">Australia</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2010</year>
      </pub-date>
      <abstract>
        <p>In recent years, electronic tracking has provided voluminous data on vessel movements, leading researchers to try various data mining techniques to nd patterns and, especially, deviations from patterns, i.e., for anomaly detection. Here we tackle anomaly detection with Bayesian Networks, learning them from real world Automated Identi cation System (AIS) data, and from supplementary data, producing both dynamic and static Bayesian network models. We nd that the learned networks are quite easy to examine and verify despite incorporating a large number of variables. Combining the mined models improves performance in a variety of cases, demonstrating that learning Bayesian Networks from track data is a promising approach to anomaly detection.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>
        A wealth of information on vessel movements has
become available to authorities through the use of the
Automated Identi cation System (AIS). Much of this
data has even ltered through to the general public via
the Internet. Surveillance authorities are interested in
using this data to uncover threats to security, illegal
tra cking or other risks. While in the past,
surveillance has su ered from a lack of solid data, electronic
tracking has transformed the problem into one of
overabundance, leading to a need for automated analysis.
The main goal of vessel behaviour analysis is to
identify anomalies. This requires the development of a
model representing normal behaviour, with
anomalous behaviour being then identi ed by the extent of
a vessel's deviation from normality. A common
approach is to cluster the data around a set of points in
a multi-dimensional feature space, where the features
of the track are items such as longitude and latitude,
speed and course (Laxhammar, 2008). Tracks that
are within or near one of these clusters may be
considered normal, while the remainder are agged as
potential anomalies. Researchers use many di erent
machine learning techniques to generate normality
models from vessel movement data (typically AIS data),
and the models are commonly speci ed in the language
of Gaussian mixture models (Laxhammar, 2008),
support vector machines
        <xref ref-type="bibr" rid="ref9">(Li et al., 2006)</xref>
        , neural networks
and others. A disadvantage of these approaches is that
they do not provide a causal model that a human user,
such as a surveillance o cer, can understand, interact
with and explore.
      </p>
      <p>
        Here, we explore the use of Bayesian Networks (BNs)
        <xref ref-type="bibr" rid="ref10 ref11 ref13">(Pearl, 1988; Korb and Nicholson, 2010)</xref>
        for analysing
vessel behaviour and detecting anomalies. While BNs
have been widely applied for surveillance and anomaly
detection
        <xref ref-type="bibr" rid="ref10 ref17 ref18 ref2">(e.g., Wong et al., 2003; Cansado and Soto,
2008; Wang et al., 2008; Loy et al., 2010)</xref>
        , to date
there have been only a few preliminary applications
of BNs to maritime anomaly detection. As noted by
        <xref ref-type="bibr" rid="ref8">Johansson and Falkman (2007)</xref>
        , however, BNs
potentially have two substantial advantages in this domain
over other types of models: 1) BN models are
easily understood by non-specialists and 2) they allow for
the straightforward incorporation of expert knowledge.
They can also represent causal relations directly and,
in that case, have the advantage of being more easily
veri ed and validated, as we show in Section 3.
        <xref ref-type="bibr" rid="ref8">Johansson and Falkman (2007)</xref>
        used the
constraintbased PC algorithm
        <xref ref-type="bibr" rid="ref14">(Spirtes et al., 1993)</xref>
        to learn
BNs from simulated data representing normal vessel
behaviour. While they claimed their approach
identi es a \reasonable proportion" of anomalous tracks,
while missing others, no speci cs such as false (or true)
positive rates were given, nor did they examine how
their parameters a ect anomaly detection.
        <xref ref-type="bibr" rid="ref6">Helldin
and Riveiro (2009)</xref>
        also looked at the use of BNs in
anomaly detection with AIS data, but focused speci
cally on how the reasoning capabilities of a BN can
assist surveillance system operators, such as by agging
potential anomalies, but they did not look at learning
BNs from the data.
      </p>
      <p>
        Outside of the maritime domain,
        <xref ref-type="bibr" rid="ref18">Wong et al. (2003)</xref>
        use BNs to detect disease outbreaks by detecting
anomalous patterns in health care data, such as an
upswing in the number of people with u or an
unusual decrease in the number of people buying
decongestants. Wong et al. use a method called WSARE
(What's Strange About Recent Events) to detect when
a temporal stream of such data begins deviating from
its own baseline pro le. This di ers from our approach
here in that we are concerned with tracks as a whole,
rather than trying to identify if and when a track has
begun deviating from a normal baseline.
      </p>
      <p>
        In our study here we data mined AIS data supplied by
the Australian Defence Science and Technology
Organisation (DSTO). Since many factors can contribute to
the (ab)normality of a vessel's behaviour, in this study
we also enhanced that data set by adding information
such as weather and time, as well as vessel interactions.
We used a metric BN learner, CaMML
        <xref ref-type="bibr" rid="ref16">(Wallace and
Korb, 1999)</xref>
        , that exibly allows various kinds of
structural priors (e.g., directed arcs and tiers), aiding the
learning of sensible models.
      </p>
      <p>
        We investigated two approaches to model learning.
First, we trained a model on the track data in its
original time series form. For variables related to motion,
we added new variables to represent the motion at
both step k and k + 1, e ectively making the data
represent a dynamic Bayesian network (DBN), which
have been used successfully for other kinds of anomaly
detection
        <xref ref-type="bibr" rid="ref10">(e.g., Loy et al., 2010)</xref>
        . Second, we also
created single summary records of each track and learned
static models from them. Summary data included
average speed and course, number of stops, major
stopping points and percentage of time travelling straight.
To assess the value of the networks in anomaly
detection we took the common approach of using a
measure for how probable a given track is according to the
learned models of normality. This measure was applied
to data sets representing both normal and anomalous
tracks. In addition, we also mutated the presumed
normal tracks to help us see how the network's
probability estimates change. This led to a very interesting
understanding of both the network's behaviour and the
nature of the normal data set.
      </p>
      <p>Next we describe our approach to the main
components of this study, including details of the time
series and track summary methods, the variables used
by the BNs and the learning algorithms. We analyse
interesting aspects of the learned BNs, then present
experimental results in Section 3, which demonstrate
the value of Bayesian networks for anomaly detection.
2</p>
    </sec>
    <sec id="sec-2">
      <title>APPROACH</title>
      <p>While our basic approach is well known | applying a
BN learner to produce normality models to be used in
assessing degrees of anomaly | in practice the
experimental work ow was complex, as shown in Figure 1.
We used AIS data from May 1st to July 31st, 2009 for
a section of the NSW coast framing Sydney harbour
(see Figure 2). The raw data initially contained just
under 9.2 million rows and each row consisted of seven
elds: the vessel's MMSI (a nine digit numerical vessel
identi er), a timestamp, the latitude and longitude of
the vessel, and its reported speed, course and heading
(see Table 1). We did not use the MMSI directly in
learning, but did use it in pre-processing and to locate
additional information about the vessel.</p>
      <p>The AIS data was cleaned and separated into `tracks',
rst by assigning each record to a separate track based
on the MMSI. We then cleaned the data in each track
by rounding (and interpolating) each row to the
nearest 10 second interval and eliminating duplicate data.
However, since the raw data contained many cases in
which a single vessel transmits for much of the three
month period of the data, further track splitting was
required. We split a track record into multiple records
when the vessel was stopped or not transmitting for 6
hours or more.1 This yielded 2,473 tracks across 544
unique MMSIs averaging 1,995 rows each.</p>
      <p>
        Vessel track anomaly detection models have been
lim1We note, however, that since such stops may
themselves indicate an anomaly, deciding what constitutes a
track warrants future investigation.
ited to kinematic variables, such as location, speed and
course, coupled with the type of the vessel
        <xref ref-type="bibr" rid="ref4 ref7 ref8">(e.g.,
Johansson and Falkman, 2007)</xref>
        . One aim of our study
was to investigate the possible advantages of
considering additional factors. We added variables related to
the ship itself (including type, dimensions and weight),
the weather (such as temperature, cloud cover and
wind speed), natural temporal factors (including hour
of day and time since dawn or dusk), kinematic DBN
nodes and elementary information on vessel
interactions for both the time series and track summary
models. Information about each ship was obtained from
three locations: the public websites marinetraffic.com
and digital-seas.com and also from the DSTO.
Coverage was generally excellent; for example, only 13 of
the 544 vessels lacked ship type information. On the
few occasions in which data was missing, we used a
\missing" value. Weather information for the period
was retrieved from the Australian Bureau of
Meteorology website, based on observation stations around
Sydney harbour
        <xref ref-type="bibr" rid="ref1">(Bureau of Meteorology, 2010)</xref>
        .
2.2
      </p>
      <sec id="sec-2-1">
        <title>THE MODELS</title>
        <p>We investigated two kinds of model based on two
different forms of the training data. The rst, the time
series model, uses the data in its original time series
form. Each timestep in a track was associated with a
set of variables, such as latitude, longitude, speed and
so on, that have corresponding nodes in the BN. This
approach, of course, has the advantage that learned
models can be used in online analysis, but it may miss
patterns at a broader time scale.</p>
        <p>
          The second model, the track summary model, was
based on summaries of each track | e.g., identifying
for a given track the number of times the vessel stops,
the main stopping locations, etc. While track
summaries cannot be used as easily in real-time
surveillance, they can capture patterns that occur at the time
scale of the track as a whole. For example, if a
vessel heads straight out to sea, turns around at a
constant rate, then returns directly home, each timestep
in the track may appear perfectly normal to any time
series-based normality model. However, the behaviour
embodied by the track as a whole may be anomalous
and worthy of attention. The variables for each type
of model are in Figure 3
          <xref ref-type="bibr" rid="ref11">(see Mascaro et al., 2010)</xref>
          .
2.3
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>CLASSIFICATION AND</title>
      </sec>
      <sec id="sec-2-3">
        <title>DISCRETIZATION</title>
        <p>
          We were interested in whether the pre-processing
summarization might help us directly to identify types
of tracks and anomalies. To test this, we classi ed
the summary tracks using Snob
          <xref ref-type="bibr" rid="ref15">(Wallace and
Freeman, 1992)</xref>
          , an unsupervised clustering tool
comparable to AutoClass
          <xref ref-type="bibr" rid="ref3">(Cheeseman et al., 1988)</xref>
          , producing
a class variable for each track (see `Class' node in
Figure 3(b)).
        </p>
        <p>
          Discretization of variables in the data set was needed
for technical reasons: (1) the version of CaMML that
allows structural priors requires discrete data and (2)
we used Netica, which also requires discrete variables.
To perform discretization, we again used Snob to
classify each continuous variable in one dimension, with
each discovered class becoming a state. Using Snob
in this way allowed us to recover any hidden
regularities and is similar to the attribute clustering
approach taken by
          <xref ref-type="bibr" rid="ref9">Li et al. (2006)</xref>
          . This can often lead
to nodes with uneven distributions. For example, the
`Speed' node in Figure 3a contains lower probability
states wedged amongst higher probability states. One
might expect to see a more even distribution, however
Snob has identi ed 12 underlying classes
corresponding to these 12 states | some of which are much more
frequent than their neighbours.
2.4
        </p>
      </sec>
      <sec id="sec-2-4">
        <title>THE CaMML BN LEARNER</title>
        <p>
          In this work, we make use of the CaMML BN learner
          <xref ref-type="bibr" rid="ref16">(Wallace and Korb, 1999)</xref>
          . CaMML (Causal
discovery via MML) learns causal BNs from data using a
stochastic search (MCMC) and score approach. After
learning the structure, we parameterized the model
with a standard counting-based procedure
          <xref ref-type="bibr" rid="ref5">(Heckerman, 1998)</xref>
          , as did
          <xref ref-type="bibr" rid="ref8">Johansson and Falkman (2007)</xref>
          .
CaMML allows one to specify di erent types of
expert priors
          <xref ref-type="bibr" rid="ref12">(ODonnell et al., 2006)</xref>
          . These can be hard
priors (e.g., an arc must be present or absent) or soft
priors that specify the probability of certain arcs
connecting pairs of variables; other soft priors for more
indirect dependencies can also be speci ed. Here, we
used some simple hard priors in the time series model
to guarantee that the right DBN relationships held
across time steps. We also speci ed priors in the form
of \temporal tiers", putting a temporal partial order
over variables and so indicating which variables could
not be ancestors of which others (Table 2).
After pre-processing the data, we ran experiments
using CaMML. We divided the data randomly (both
time series and track summaries) into 80% (or 1,978
tracks) for training and 20% for testing. As is common
with anomaly detection models
          <xref ref-type="bibr" rid="ref4 ref4 ref7 ref7 ref8 ref8">(e.g. Das and
Schneider, 2007; Johansson and Falkman, 2007)</xref>
          , the training
data consisted of un ltered real or `normal' data in
order to produce a model of normality against which we
could assess deviations. We did a set of 10 runs of
CaMML, using di erent seeds, taking CaMML's
reported \best" (highest posterior) network each time,
from which we derived the reported results.
3
3.1
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>EVALUATION</title>
      <sec id="sec-3-1">
        <title>INTERPRETING THE LEARNED</title>
      </sec>
      <sec id="sec-3-2">
        <title>MODELS</title>
        <p>Figure 3(a) shows an example BN produced by
CaMML from the time series data, while Figure 3(b)
shows an example learned from the track summary
data. It is clear that few arcs in the learned networks
represent intuitive direct causal relations, other than
the DBN arcs (given as hard priors) and the weather
variables. Many of the other variables are
simultaneous properties of the vessel, which will be correlated
by hidden common ancestors. For example, while we
would expect a ship's speed, size and course to be
related, it isn't obvious what the underlying causes
might be. They may be such things as the business
the vessel belongs to, the purpose of its trip or the
nature of its crew and contents. Some of these hidden
causes will be partly captured by the ShipType, e.g.,
the purpose of a trip employing a cargo ship is almost
always transport. This explains why that variable is
the common cause of so many others in the time series
models. In the track summary network this common
cause role is assumed by the `Class' variable instead.
Causal discovery relying on joint sample data very
often gets arc directions wrong, in the anti-causal
direction, because it is dependent upon sparse information
about any uncovered collisions (where two parents of
a child node are not themselves directly connected) to
infer all arc directions. For example, Figure 3(a) shows
ShipType!Weather, for a variety of weather variables.
Of course, ship type cannot a ect the weather. A
plausible interpretation of this result is that weather
conditions do a ect which types of ship put to sea, so,
if anything, the arc directions here are reversed. The
simplest and very e ective method of dealing with this
problem is to introduce extra prior constraints, such
as putting some weather variables into a zeroeth Tier.
Exploring Bayesian networks is very easy and natural
and here turned up many points of interest. In
conrming the reasonableness of the time series model,
we found that entering `Tug' or `Pilot Vessel' into the
`ShipType' variable signi cantly increases the chance
of another vessel being nearby. Cargo ships, on the
other hand, travel mostly solo and tankers almost
exclusively so. Ship sizes (i.e., the `ShipSize'
variable) are also highly correlated with position (the `Lat'
and `Lon' variables) via the `ShipType' variable, with
larger vessels tending to appear in a restricted set of
locations. The track summary model shows that cargo
ships and tankers spend most of their time travelling
straight, while tug directions are much more variable.
Tugs also tend to stop in di erent locations from cargo
ships, and they tend to be stopped for longer periods
than cargo ships.
3.2</p>
      </sec>
      <sec id="sec-3-3">
        <title>ANOMALY SCORES</title>
        <p>
          There is no generally accepted method for
detecting anomalies from BN models.
          <xref ref-type="bibr" rid="ref7">Jensen and Nielsen
(2007)</xref>
          proposed a \con ict measure" to detect possible
incoherence in evidence E = fE1 = e1; : : : ; Em = emg:
C(E) = log
        </p>
        <p>P (E1 = e1)</p>
        <p>
          P (Em = em)
: : :
P (E)
Jensen and Nielsen use this to identify when a power
plant begins behaving abnormally. Unfortunately, this
will only catch cases where each attribute is
independently common but jointly uncommon. Here, we're
interested in any kind of joint uncommonness, even
when variables are independently uncommon, which
simply comes down to a di erence in requirements.
In other approaches
          <xref ref-type="bibr" rid="ref10">Loy et al. (2010)</xref>
          used learned
DBNs to calculate log-likelihoods and compare them
against thresholds selected to maximize the accuracy,
extended to detecting abnormal correlations between
multiple objects.
          <xref ref-type="bibr" rid="ref2">Cansado and Soto (2008)</xref>
          simply
assumed that records with low probabilities given the
learned BN are anomalies.
        </p>
        <p>We started from the same assumption as Cansado and
Soto, however we think choosing any particular
threshold for deciding when tracks are anomalous would be
arbitrary. In real applications a speci c threshold may
present itself as most suitable, but in general we feel it
is better to present the probability itself to surveillance
operators, albeit in a more convenient form.
Thus, for track summary data, we rst computed each
track's prior probability given the normality model.
Since these probabilities are usually very low (around
the order of 1 10) we took the negative log (base 2) to
produce an \anomaly score" (i.e., the number of bits
required to describe the data, given the model). Put
simply, the higher the anomaly score, the less probable
the track.</p>
        <p>
          For time series networks we took a similar approach,
but instead fed each timestep of the track into the
network to yield a probability estimate for that timestep.
We then took the average probability over all timesteps
to generate a negative log anomaly score. For time
series data it is possible, of course, to base anomaly
criteria upon changes in the track over time.
          <xref ref-type="bibr" rid="ref8">Johansson
and Falkman (2007)</xref>
          , for example, used sliding
windows across a track, looking for any anomalous
windows. For this study, however, we focused on criteria
for assessing the tracks as wholes, leaving this kind of
alternative for future investigation.
        </p>
        <p>Calculating anomaly scores for all the tracks in our
data set and plotting the distribution of the results
(using a Gaussian Kernel Density Estimator [KDE]),
we obtained Figure 4. These show a fair amount of
diversity among anomaly scores, i.e. they do not
simply clump around the lowest possible score. Note that
the scores produced by the time series model are quite
distinct from those of the track summary model. One
likely reason is that the track summary scores are
simply based on more variables, making each instance
more speci c and less probable. There is a
surprisingly small correlation between the two sets of scores
(r =0.159; p &lt; 0:001).2 The two models look at di
erent aspects of each track, and, as we see below,
reinforce each other when performing anomaly detection.
3.3</p>
      </sec>
      <sec id="sec-3-4">
        <title>RESULTS ON ANOMALOUS DATA</title>
        <p>
          Unfortunately, we did not have any access to known
anomalous tracks nor are there any standardised or
publicly available vessel track data sets containing
anomalies (or otherwise). Nevertheless, there are
many ways to create anomalous data.
          <xref ref-type="bibr" rid="ref2">Cansado and
Soto (2008)</xref>
          generated anomalies by modifying
selected attributes to random values within their ranges.
          <xref ref-type="bibr" rid="ref8">Johansson and Falkman (2007)</xref>
          generated anomalous
data using anomalous models.3 Here, we tried three
approaches, partly inspired by these previous
methods: modifying instances by swapping incorrect ship
type information, splicing tracks together, and
drawing anomalous tracks.
3.3.1
        </p>
      </sec>
      <sec id="sec-3-5">
        <title>The False Ship E ect</title>
        <p>For each track in the training set, the ship type
information was swapped with that of another randomly
selected ship of a di erent type, leaving the track data
alone. Figure 5(a) shows how this a ected the anomaly
score. In most cases this false ship e ect is positive,
increasing the anomaly score. The false ship e ect for
the time series model is positive in around 87.2% of
the cases as opposed to 69.4% of cases for the track
summary model. Sometimes, however, tracks have
become more probable given incorrect ship information,
which itself seems anomalous! To be sure, many of the
ship types are in fact quite similar (e.g., there are
several sub-categories of cargo ship) so switching between
these may randomly produce a more likely track.
However, this does not account for all the cases. A closer
look at these showed that many are highly improbable
(i.e., have high anomaly scores), suggesting that
either they have been mislabelled or, more intriguingly,
that they do indeed behave anomalously according to
their type. This suggests a new criterion for
anomalousness based not merely upon the probability of the
given track but on what alterations might explain the
track better. This has some of the spirit of Jensen and
Nielsen's con ict measure, though is clearly quite
different; we leave this possibility for future exploration.
Figures 5(b) and 5(c) show scatter plots of the anomaly
score versus the false ship e ect. With the time series
model, we can see that as the anomaly score grows, the
2Earlier iterations with cruder discretizations and more
variables in common showed a stronger correlation |
however, as models grew more detailed, the correlation shrank.</p>
        <p>
          3
          <xref ref-type="bibr" rid="ref17">Wang et al. (2008)</xref>
          , without known anomalous data,
simply weakened their threshold to nd \anomalies",
whether they were there are not!
y
it
s
enD .003
● ●
● ● ● ●●●●● ●●●●●●●●●●●● ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ●● ● ●●●●●●●●● ● ●●● ● ●
● ● ●
● ●
40
60
140
        </p>
        <p>160
80 100 120
Anomaly score</p>
        <p>(c)
False ship effect for all data
false ship e ect falls (r =-0.70, p 0:01). This also
occurs with the track summary model, to a smaller
extent (r =-0.31, p 0:01).
We also created anomalous tracks by splicing random
tracks together. This allowed us to test our models
for their ability to detect discontinuities as well as
major changes in behaviour. Speci cally, we selected 140
tracks at random and replaced their tails with those of
other tracks (retaining the times and types of the
original track). We spliced half of the tracks with those
created by ships of a di erent type and we spliced the
other half with tracks created by ships of the same
type. When assessing these tracks using the track
summary model, tracks forged from di erent types yield
an average anomaly score of 121.3 while those forged
from the same type yield an anomaly score of 115.4
(p 0:01). Both scores are signi cantly di erent from
the average anomaly score for all data of 89.0.
With the spliced tracks, as we expected the track
summary model performed slightly better than the time
series approach, because the time series model is not able
to detect unusual behaviour across the whole track.
Tracks put together from ships of di erent types
produced an average score of 48.9 while those spliced from
same types had a score of 45.6; while a small di
erence, this was statistically signi cant (p &lt; 0:01). In
addition, while the higher score was signi cantly
different (p &lt; 0:01) from the average of the full data set
(43.8), the lower score was not (p 0:01). Here we
can see the advantage of the higher level view of the
track summaries.
3.3.3</p>
      </sec>
      <sec id="sec-3-6">
        <title>Manually drawn anomalies</title>
        <p>Finally, we tested models using anomalous tracks
drawn with a mouse over a map, where the mouse
location and speed generated the vessel location and speed
respectively. Other factors were created randomly,
including the time and duration, noise in the data, vessel
details and maximum speed. This allowed us to
compare the performance of both models across several
di erent categories of anomalous behaviour, thereby
shedding light on the strengths and weaknesses of each
model. Anomalous behaviour in these tracks included
very noisy data, close interactions with many other
vessels, vessels that circle in unusual patterns, vessels
travelling over land, overly short tracks in the middle
of the sea and vessels behaving against their type. In
all, 107 such tracks were created.</p>
        <p>When combined with the normal track test data, and
scored using the two models both independently and
combined, the ROC (receiver operating characteristic)
curves of Figure 6 are the result. The ROC curves
demonstrate the tradeo s that can be made (if we
were to settle on speci c thresholds for anomalies)
between false positives and true positives; the greater</p>
        <sec id="sec-3-6-1">
          <title>Time series ROC curve</title>
        </sec>
        <sec id="sec-3-6-2">
          <title>Track summary ROC curve</title>
        </sec>
        <sec id="sec-3-6-3">
          <title>Combined ROC curve</title>
          <p>0.4 0.6</p>
          <p>False positive rate
the area under the curve (AUC), the less severe the
tradeo needs to be. We can see that the track
summary model (with an AUC of 0.780) performs better
than the time series model (AUC 0.712). Adding the
anomaly scores from the two models together (in e ect,
creating a combined model with equal weight given to
each individual model) performs better again (AUC
0.809). Table 3 shows the average scores each model
yielded for various kinds of anomalous tracks. We can
see that both models easily detected the tracks
containing too many close interactions (average scores of
139.9 and 75.8, against the test averages of 90.8 and
45.7, giving Deltas of +49.1 and +30.1 for track
summary and time series models, respectively). The time
series model detected overly short tracks best (track
summary: +4.7; time series: +17), while the track
summary model substantially outperformed the time
series model for tracks containing unusual stops, as
would be expected (track summary: +28.3; time
series: +2.9). In most cases, the track summary model
outperformed the time series model.
3.3.4</p>
        </sec>
      </sec>
      <sec id="sec-3-7">
        <title>Testing on Johansson &amp; Falkman's simulated data</title>
        <p>
          We also applied our methods to the simulated data
used by
          <xref ref-type="bibr" rid="ref8">Johansson and Falkman (2007)</xref>
          , both normal
and anomalous. Our models, while not well suited
to the simulated data, performed reasonably well. In
particular, with the track summary model, anomalous
tracks received an average anomaly score of 22, while
normal tracks averaged 17; while in the time series
model, anomalous tracks received an average score of
29, with normal tracks averaging 25. When we
calculated the ROC curves, we found that the time
series model performed better with this data set with an
AUC of 0.691, over the track summary AUC of 0.652.
This was likely due to a lack of extended ship type
information. The combined model (whose ROC curve
is shown in Figure 7) again performs better than both
individually, with an AUC of 0.727.
e
t
rvae .06
iit
s
peuo .04
r
T
        </p>
        <p>We also examined what happens when the ship type
of the tracks is altered. Interestingly, the only cases in
which this change created a notable negative false ship
e ect (i.e., increased the probability of the track) again
involved high anomaly scores. These scores were 25
and above for the track summaries and 36 and above
for the time series | both much higher than the
respective average scores for the anomalous tracks.4
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>CONCLUSION</title>
      <p>
        We have demonstrated Bayesian Networks are a
promising tool for detecting anomalies in vessel tracks.
By using a BN learner on AIS data supplemented
by additional real world data, we produced both
dynamic and static networks, which demonstrated
distinct and complementary strengths in identifying
anomalies. Thus, we were able to improve anomaly
detection by combining their assessments. This
sug4For further details of our comparison with Johansson
&amp; Falkman's work, see
        <xref ref-type="bibr" rid="ref11">Mascaro et al. (2010)</xref>
        .
gests that learning networks at still additional time
scales, intermediate between the full track and each
AIS snapshot, may improve anomaly detection even
further. Such approaches may well generalize to other
kinds of anomaly detection and can be extended to
work with other kinds of track, such as those created
by cars, planes and humans.
      </p>
      <sec id="sec-4-1">
        <title>Acknowledgements</title>
        <p>The authors would like to thank the DSTO for
supporting this work, Goran Falkman and especially
Fredrik Johansson for providing access to their data
and generously answering many questions about their
approach, and SAAB Microwave Systems for
permitting us the use of their simulated data.
90.8
102.4
101.7
95.5
119.1
139.9
126.2
122.2
103.5
135.2
113.7
126.9</p>
        <p>Delta
Laxhammar, R. (2008). Anomaly detection for sea
surveillance. In The 11th Int. Conf. on Information Fusion,
pp. 55{62.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Bureau of Meteorology</surname>
          </string-name>
          (
          <year>2010</year>
          ).
          <article-title>Daily weather observations</article-title>
          ,
          <source>May { July</source>
          <year>2009</year>
          . http://www.bom.gov.au/climate/ dwo/IDCJDW2124.latest.shtml.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Cansado</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>A</given-names>
            .
            <surname>Soto</surname>
          </string-name>
          (
          <year>2008</year>
          ).
          <article-title>Unsupervised anomaly detection in large databases using Bayesian networks</article-title>
          .
          <source>Applied Arti cial Intelligence</source>
          <volume>22</volume>
          (
          <issue>4</issue>
          ),
          <volume>309</volume>
          {
          <fpage>330</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Cheeseman</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          , J. Stutz,
          <string-name>
            <given-names>M.</given-names>
            <surname>Self</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Kelly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Taylor</surname>
          </string-name>
          , and D.
          <string-name>
            <surname>Freeman</surname>
          </string-name>
          (
          <year>1988</year>
          ,
          <article-title>August)</article-title>
          .
          <article-title>Bayesian classi cation</article-title>
          .
          <source>In AAAI 88</source>
          , pp.
          <volume>607</volume>
          {
          <fpage>611</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Das</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>J</given-names>
            .
            <surname>Schneider</surname>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>Detecting anomalous records in categorical datasets</article-title>
          .
          <source>In Proceedings of the 13th ACM SIGKDD international conference on Knowledge discovery and data mining</source>
          , pp.
          <volume>220</volume>
          {
          <fpage>229</fpage>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Heckerman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>1998</year>
          ).
          <article-title>A tutorial on learning with Bayesian networks</article-title>
          . In M.
          <string-name>
            <surname>Jordan</surname>
          </string-name>
          (Ed.),
          <source>Learning in Graphical Models</source>
          , pp.
          <volume>301</volume>
          {
          <fpage>354</fpage>
          . MIT.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Helldin</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          and
          <string-name>
            <surname>M. Riveiro</surname>
          </string-name>
          (
          <year>2009</year>
          ).
          <article-title>Explanation methods for Bayesian networks: Review and application to a maritime scenario</article-title>
          .
          <source>In Proc. of the 3rd Annual Skovde Workshop on Information Fusion Topics (SWIFT</source>
          <year>2009</year>
          ), pp.
          <volume>11</volume>
          {
          <fpage>16</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Jensen</surname>
            ,
            <given-names>F. V.</given-names>
          </string-name>
          and
          <string-name>
            <surname>T. D. Nielsen</surname>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>Bayesian networks and decision graphs (2nd ed</article-title>
          .). New York: Springer Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Johansson</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>G.</given-names>
            <surname>Falkman</surname>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>Detection of vessel anomalies | a Bayesian network approach</article-title>
          .
          <source>In Int.</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          , J. Han, and
          <string-name>
            <given-names>S.</given-names>
            <surname>Kim</surname>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>Motion-Alert: Automatic anomaly detection in massive moving objects</article-title>
          .
          <source>In Proc. of the 2006 IEEE Intelligence and Security Informatics Conference (ISI</source>
          <year>2006</year>
          ), Berlin, pp.
          <volume>166</volume>
          {
          <fpage>177</fpage>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Loy</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Xiang</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Gong</surname>
          </string-name>
          (
          <year>2010</year>
          ).
          <article-title>Detecting and discriminating behavioural anomalies</article-title>
          .
          <source>Pattern Recognition.</source>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>Mascaro</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>K. B. Korb</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A. E.</given-names>
            <surname>Nicholson</surname>
          </string-name>
          (
          <year>2010</year>
          ).
          <article-title>Learning normal vessel behaviour from AIS data with Bayesian networks at two time scales</article-title>
          .
          <source>Technical Report TR</source>
          <year>2010</year>
          /, Bayesian Intelligence.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>ODonnell</surname>
            , R.,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Nicholson</surname>
            , B. Han,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Korb</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Alam</surname>
          </string-name>
          , and L.
          <string-name>
            <surname>Hope</surname>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>Causal discovery with prior information</article-title>
          .
          <source>In A. Sattar and B</source>
          .
          <string-name>
            <surname>-H. Kang</surname>
          </string-name>
          (Eds.),
          <source>AI</source>
          <year>2006</year>
          , Volume
          <volume>4304</volume>
          <source>of LNCS</source>
          , pp.
          <volume>1162</volume>
          {
          <fpage>1167</fpage>
          . Berlin: Springer.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Pearl</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1988</year>
          ).
          <article-title>Probabilistic Reasoning in Intelligent Systems</article-title>
          . San Mateo, CA: Morgan Kaufmann.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <surname>Spirtes</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Glymour</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Scheines</surname>
          </string-name>
          (
          <year>1993</year>
          ). Causation, Prediction and Search. Springer Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>Wallace</surname>
            ,
            <given-names>C. S.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>P. R.</given-names>
            <surname>Freeman</surname>
          </string-name>
          (
          <year>1992</year>
          ).
          <article-title>Single factor estimation by MML</article-title>
          .
          <source>Journal of the Royal Statistical Society B</source>
          <volume>54</volume>
          (
          <issue>1</issue>
          ),
          <volume>195</volume>
          {
          <fpage>209</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <surname>Wallace</surname>
            ,
            <given-names>C. S.</given-names>
          </string-name>
          <article-title>and</article-title>
          <string-name>
            <surname>K. B. Korb</surname>
          </string-name>
          (
          <year>1999</year>
          ).
          <article-title>Learning linear causal models by MML sampling</article-title>
          . In A. Gammerman (Ed.),
          <source>Causal Models and Intelligent Data Management</source>
          , pp.
          <volume>89</volume>
          {
          <fpage>111</fpage>
          . Heidelberg: Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Lizier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Obst</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Prokopenko</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Wang</surname>
          </string-name>
          (
          <year>2008</year>
          ).
          <article-title>Spatiotemporal anomaly detection in gas monitoring sensor networks</article-title>
          .
          <source>Wireless Sensor Networks</source>
          ,
          <volume>90</volume>
          {
          <fpage>105</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <string-name>
            <surname>Wong</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Moore</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Cooper</surname>
          </string-name>
          , and M.
          <string-name>
            <surname>Wagner</surname>
          </string-name>
          (
          <year>2003</year>
          ).
          <article-title>Bayesian network anomaly pattern detection for disease outbreaks</article-title>
          .
          <source>In Int. Conf. on Machine Learning</source>
          , Volume
          <volume>20</volume>
          , pp.
          <fpage>808</fpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>