[ieee 2011 ieee international multi-disciplinary conference on cognitive methods in situation...

8
Abstract — Modern technology offers the possibility to construct networked monitoring systems from autonomous computing nodes equipped with appropriate sensors. Complementing such a system with actuators yields a cyber-physical system that must be able to cope with uncertainties arising from feedback loops via the physical world. The common property of such systems lies in the high degree of uncertainty in the varying configuration of the system and also in the potentially high amounts of (unstructured) data that can be generated by such a system. In order to tackle these problems and make the distributed monitoring systems more usable the concepts of situational information and hierarchies of situations can be applied in this domain. The problem of high amounts of data can be partially solved by arriving at a higher level of abstraction lower in the processing chain, communicating only data fused into an ontological structure to information consumers. The fusion templates are called situation parameters and values of the fused data items are called situational parameter values in the context of the current article. Situation parameter values must be tagged with situational and temporal validity information in order to cope with the delays and spatial uncertainties that can occur in a distributed monitoring system. The lower level situation parameters can be fused to even higher level situation parameters, projecting the temporal and spatial validity information from the lower level parameters up to the higher level parameters. The article presents the concepts of forming situational information templates and hierarchies based on data available from a distributed monitoring system where the temporal and spatial properties of situational information are taken into account. A case study is presented that shows the feasibility of the concepts in a real world monitoring scenario. Index Terms — cooperative distributed systems, interactive computing, middleware (for subscription and distribution of situational information), situation awareness, validation and verification I. INTRODUCTION Networked systems and systems of systems embedded into the environment are gaining importance in the modern world. The concept of Network Enabled Capabilities, but also solutions for production management and business intelligence, require collecting and organizing potentially vast amounts of information from various sources. In case of all distributed systems that cater for the improvement of situation awareness of users or system components the temporal and spatial aspects of data are of great importance. While in many cases the consideration of temporal and spatial aspects of data have been implicitly embedded into the system design, oftentimes the importance of these aspects has also been neglected. Considering these aspects explicitly will result in more predictable and correct performance of the systems. Using a modified definition of a situation introduced in sociology [3] we can say that a situation is the aggregate of biological, psychological, socio-cultural, and environmental factors acting on an individual or a group of agents to condition their behavioral patterns. An agent in the current context denotes a natural (e.g. humans) or an artificial (e.g. computing systems, or software-intensive agents) agent, and the environment denotes natural or artificial environment. Extending the existing situation awareness concepts and supplementing situational information with temporal and spatial validity information as suggested in the current paper enables the creation of systems that employ hierarchical buildup of situational information. II. SITUATION HIERARCHIES Situation management [14] has been mostly viewed from the perspective of human requirements and processing capabilities. Computers have over time come to aid humans in achieving situation awareness. However it is not beneficial to use the human situational concepts when building up situation hierarchies computed and managed by a distributed system. Instead concepts arising naturally from the lowest level of the processing chain and from fusing these low-level concepts should be used. A hierarchical build-up of situation parameter values can be applied where the lower level parameter values are more or less directly derived from sensor data. A situation parameter reflects a property of a parameter of interest, composing them allows to computing the values of higher level parameters of interest by using the values of lower level parameters and all the other relevant information. In case of an artificial agent the evaluation of situational parameters can be performed if suitable algorithms exist and can be executed. In order to guarantee the validity of the situation assessment, the constraints are specified on the source data that guarantee the coherence and validity of source data. In order to deliver the data that satisfies the specified constraints to the situation parameter computation algorithm, the concept of mediated interaction [12] must be used. The mediator can be compared to the channel function in the Q model [13], as it transmits only data that satisfies the constraints set by the consumer (i.e. the situation evaluation algorithm) to the consumer (the situation evaluation algorithm). The concepts of the validity of situation parameters and the mediator are elaborated further below. We consider a situation and hierarchy of situations in the SITUATION AWARENESS FOR NETWORKED SYSTEMS Jurgo Preden, Leo Motus, Merik Meriste*, Andri Riid Research Lab for Proactive Technologies, Dept. Computer Control, Tallinn University of Technology *also with University of Tartu, Institute of Technology Estonia 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA), Miami Beach, FL 978-1-61284-786-3/11/$26.00 ©2011 IEEE 123

Upload: andri

Post on 27-Feb-2017

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

Abstract — Modern technology offers the possibility to construct

networked monitoring systems from autonomous computing

nodes equipped with appropriate sensors. Complementing such a

system with actuators yields a cyber-physical system that must be

able to cope with uncertainties arising from feedback loops via

the physical world. The common property of such systems lies in

the high degree of uncertainty in the varying configuration of the

system and also in the potentially high amounts of (unstructured)

data that can be generated by such a system. In order to tackle

these problems and make the distributed monitoring systems

more usable the concepts of situational information and

hierarchies of situations can be applied in this domain. The

problem of high amounts of data can be partially solved by

arriving at a higher level of abstraction lower in the processing

chain, communicating only data fused into an ontological

structure to information consumers. The fusion templates are

called situation parameters and values of the fused data items are

called situational parameter values in the context of the current

article. Situation parameter values must be tagged with

situational and temporal validity information in order to cope

with the delays and spatial uncertainties that can occur in a

distributed monitoring system. The lower level situation

parameters can be fused to even higher level situation

parameters, projecting the temporal and spatial validity

information from the lower level parameters up to the higher

level parameters. The article presents the concepts of forming

situational information templates and hierarchies based on data

available from a distributed monitoring system where the

temporal and spatial properties of situational information are

taken into account. A case study is presented that shows the

feasibility of the concepts in a real world monitoring scenario.

Index Terms — cooperative distributed systems, interactive

computing, middleware (for subscription and distribution of

situational information), situation awareness, validation and

verification

I. INTRODUCTION

Networked systems and systems of systems embedded into

the environment are gaining importance in the modern world.

The concept of Network Enabled Capabilities, but also

solutions for production management and business

intelligence, require collecting and organizing potentially vast

amounts of information from various sources. In case of all

distributed systems that cater for the improvement of situation

awareness of users or system components the temporal and

spatial aspects of data are of great importance. While in many

cases the consideration of temporal and spatial aspects of data

have been implicitly embedded into the system design,

oftentimes the importance of these aspects has also been

neglected. Considering these aspects explicitly will result in

more predictable and correct performance of the systems.

Using a modified definition of a situation introduced in

sociology [3] we can say that a situation is the aggregate of

biological, psychological, socio-cultural, and environmental

factors acting on an individual or a group of agents to

condition their behavioral patterns. An agent in the current

context denotes a natural (e.g. humans) or an artificial (e.g.

computing systems, or software-intensive agents) agent, and

the environment denotes natural or artificial environment.

Extending the existing situation awareness concepts and

supplementing situational information with temporal and

spatial validity information as suggested in the current paper

enables the creation of systems that employ hierarchical

buildup of situational information.

II. SITUATION HIERARCHIES

Situation management [14] has been mostly viewed from

the perspective of human requirements and processing

capabilities. Computers have over time come to aid humans in

achieving situation awareness. However it is not beneficial to

use the human situational concepts when building up situation

hierarchies computed and managed by a distributed system.

Instead concepts arising naturally from the lowest level of the

processing chain and from fusing these low-level concepts

should be used.

A hierarchical build-up of situation parameter values can be

applied where the lower level parameter values are more or

less directly derived from sensor data. A situation parameter

reflects a property of a parameter of interest, composing them

allows to computing the values of higher level parameters of

interest by using the values of lower level parameters and all

the other relevant information.

In case of an artificial agent the evaluation of situational

parameters can be performed if suitable algorithms exist and

can be executed. In order to guarantee the validity of the

situation assessment, the constraints are specified on the

source data that guarantee the coherence and validity of source

data. In order to deliver the data that satisfies the specified

constraints to the situation parameter computation algorithm,

the concept of mediated interaction [12] must be used. The

mediator can be compared to the channel function in the Q

model [13], as it transmits only data that satisfies the

constraints set by the consumer (i.e. the situation evaluation

algorithm) to the consumer (the situation evaluation

algorithm). The concepts of the validity of situation

parameters and the mediator are elaborated further below.

We consider a situation and hierarchy of situations in the

SITUATION AWARENESS FOR NETWORKED SYSTEMS

Jurgo Preden, Leo Motus, Merik Meriste*, Andri Riid

Research Lab for Proactive Technologies, Dept. Computer Control,

Tallinn University of Technology

*also with University of Tartu, Institute of Technology

Estonia

2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support(CogSIMA), Miami Beach, FL

978-1-61284-786-3/11/$26.00 ©2011 IEEE 123

Page 2: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

context of a networked pervasive computing system that is

also accessible to a number of involved humans. The basic

situations are introduced at the lowest level (i.e. at the level of

embedded computers, and pre-specified humans) in the form

of situation parameters.

Embedded nodes of networked pervasive computing

systems may possess too limited computing power and are

therefore capable of performing simple sensor reading and

data fusion tasks. The basic situations should be defined in

accordance with the capabilities of network nodes and

information processing capabilities of individual humans.

Hence, the parameter values characterizing the basic

situations should stem from the direct readings of sensors,

direct observations or deductions made by humans, or from

elementary data fusion operations. The set of basic situations

(i.e. their parameters) forms the basis for constructing more

abstract situations whose validity depends on the validity of

basic situations. The concept of hierarchical buildup of

situations inspired by Endsley [4] is visualized on Figure 1,

showing the abstraction level of the information elevated in

the chain of situation parameters.

This article presents the concept of situational information

supplemented by validity information, situation hierarchies

and also two case studies, one of situational information

fusion and the other of utilization of situational information by

mobile autonomous agents.

A. Specifying situation hierarchies

When imposing a suitable hierarchical structure to the

process of specifying situations one can either use a top-down

or a bottom-up approach, correspondingly either starting from

the high-level situations and decomposing them to lower-level

situations or starting from low-level situations and looking for

ways to fuse the low-level situations to higher-level situations.

In any case the (automatically) measurable factors for basic

situations must be specified from which more sophisticated

situations can be constructed, measured and reasoned about,

and then used to build up situational awareness for the end

users (which may be natural or artificial agents). It seems to be

most beneficial to tackle the problem from two ends at the

same time – moving from low-level situations to higher level

situations by selecting appropriate fusing algorithms while

keeping the end objective (specific high-level situations) in

mind.

B. Validity of situation parameters

A critical issue of situation awareness is the validity of

situations – when a situation parameter value is computed or

when a situation is identified, it must be possible to estimate

where and when that situation parameter is valid. This

estimation must be performed based on the validity of the

source data – starting from the raw sensor data a situation

inferred from this sensor data is only valid in the region where

the sensor data is valid and also for the period of time when

the sensor data is valid. So the properties of the situational

parameters (regardless of whether these are parameters of the

physical world or the virtual) that are monitored determine the

validity of the situations inferred based on these parameter

values. An example of this is weather monitoring – for most

regions we are able to predict the dynamics of temperature

change and the area where the temperature is homogeneous

quite well, so based on temperature measured in one spot at

one specific moment in time we can quite well estimate the

temperature for the adjacent regions for some period of time.

The data acquired from each sensor (or other source of

information) forms a data stream, from which the situation

parameter values are derived. The temporal (plus spatial and

other characteristic) properties of each stream element are

unique and determined by the phenomena being measured

and/or monitored, by the requirements and/or constraints on

the situation parameter, and by the constraints set by higher

level situation parameter synthesis algorithms that use the

given situation parameter as an input. Any algorithm

computing parameter values for higher-level situation may use

one or more data streams.

It is intuitively obvious that for each situation its parameter

values are valid only for a certain time interval, and/or in a

specific location. Hence the temporal intervals, spatial areas,

and may be some other attributes must be specified for cross-

checking the integrity of parameter values, and thus assess the

validity of obtained situational information. The temporal

validity interval of the situation parameter specifies the time

for which the situation parameter value is valid – the validity

interval depends on the time when the situation parameter

assessment was made and the known dynamics of the

parameter (the property which state that the parameter

expresses). The spatial validity interval specifies the area

where the situation parameter is valid, which naturally

depends on the spatial origin of the source data used for

deriving the situation parameter value and the properties of the

phenomena that the parameter characterizes. For example a

temperature assessment of warm for a room can be typically

considered to be valid only for that room not for example the

back yard which can be viewed from the window of that room

– the validity area of the temperature assessment may ends at

the wall of a room.

The measured values and the estimates stemming from

observations originate from different network nodes, different

sensors, and from variety of persons and need to be checked

for consistency and validity. This can be done automatically

Figure 1 Hierarchical buildup of situation parameters

124

Page 3: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

only if the measurements and observations are equipped with

attributes that foster the on-line validation procedure.

Every situation parameter value has temporal and spatial

validity values associated with it. The validity values depend

on various aspects, for example the validity area depends on

the location of the agent that acquires the data and on the

properties of the phenomenon being observed, while the

temporal validity interval depends both on the properties of

the environment where the agent is located and on the

phenomenon being observed. The consumer of the situation

parameter values verifies that the validity values of the

parameters do match the constraints set on the incoming data.

The output of the situation assessment algorithm is the

situation parameter value accompanied with the metadata.

C. Formalizing situation parameters

Situation parameter is a three-tuple S ={Sp, St, Sa} where Sp

is the situation parameter value, St is the situation property’s

validity period and Sa is the situation property’s validity area.

The situation parameter value reflects the state of a virtual or

physical property of interest while the validity period and

validity area are metadata on the situation parameter

assessment – what is the period for when and what is the area

for which the situation parameter value holds. For some

situation parameters there is no metadata while for others there

may be more metadata than just the location and time.

A situation parameter value is computed from other

situation parameters or sensor data, both of which must be

associated with metadata Sa =f (S1, S2,…, Sn) . The situation

parameter values used for computing a higher-level situation

parameter value may arrive at different times and at different

rates. A specification of an algorithm that computes the

situation parameter value must contain the type of input data –

the incoming situation parameters. If a sensor reading is used

to evaluate the situation it is expressed as follows: Sb =f (s1)

which should be interpreted that the reading of sensor s1 is

used to compute the value for situation parameter Sb.

D. Situation awareness of a team

In many practical systems a loosely interacting team of

humans and computers has to manage situations composed

from a variety of spatio-temporally distributed natural and

artificial components. Each entity in such a system can be

viewed as an agent on a certain level of abstraction. Situation

awareness of an agent, in the current context, comprises the

confidence in the available situational information and the

ability to use that information in the decision-making process

of the agent. In a realistic system it can be assumed that global

situations are defined for the whole system whereas each agent

may have derived its own situations, departing from its own

goals.

The existence of several types and levels of situations may

be confusing, unless they are (at least partially) harmonized

and prioritized. This leads us to the notion of “team situation

awareness” (also called “distributed situation awareness”);

see, for instance [2]. Formation of team situation awareness

needs specific tools, especially when dealing with a mixed

team of humans and machines. The complexity here lies also

in the fact that situation awareness can be viewed as an

emergent property of collaborative systems, a phenomenon

that resides in the interaction between elements of the system

and not in the individual components of the system [15]. The

first step is to harmonize models of “individual situation

awareness” of team members, followed by harmonization of

individual decision-making procedures. Typically this process

requires negotiations between decisive team members and can

be remarkably accelerated by a suitable negotiation medium,

such as a specially designed middleware for communication.

However, in some cases each agent (component of a

system) may define its own (additional) situations of interest.

This leads us to the notion of “team situation awareness” (also

called “distributed situation awareness”); see for instance [2].

Formation of team situation awareness needs specific tools,

especially if we have a mixed team of humans and machines.

The first step is to harmonize models of “individual situation

awareness” of team members, followed by harmonization of

individual decision-making procedures. Typically this process

requires negotiations between decisive team members and can

be remarkably accelerated by a suitable negotiation medium,

such as a specially designed middleware for communication.

The above definition matches with seminal interpretation,

given by Endsley [5], of situation awareness as a product

resulting from a process of acquiring situational information

and its assessment.

III. MIDDLEWARE FOR SITUATION AWARENESS

In [6] we proposed the concept of middleware as an

active mediator of situational information. In order to make

better use of the situational information (i.e. situation

parameter values) collected by agents in a multi-agent system

the situation parameter values need to be exchanged between

agents. Two aspects make the exchange of such information

complex. Firstly the amount of situational information

available in a complex system containing many agents is

potentially huge. Secondly the configuration of the multi-

agent system is not known before the system starts operating

and the configuration may change at runtime unexpectedly.

The latter means that the sources and consumers of situational

information are established at runtime, making special

requirements on the control of the interaction between the

agents. Since a specific agent requires information that

satisfies the constraints set by that agent there needs to be a

mechanism for locating the required information and

providing it to the agent in a deterministic way.

The term middleware is usually used for a specific software

layer in computing system that connects applications, or

software components and provides functionality that allows

multiple processes that run on one or more system nodes to

interact across a network. We view the middleware as an

active “mediator” of situational information that provides

services for forming team situation awareness. Here the team

is formed by agents who can be humans, computers, smart

sensors, and/or software-intensive devices.

125

Page 4: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

A. Concept of the middleware as active mediator

The middleware is the mediator that supports formation of

the situation awareness and especially team situation

awareness within a team of autonomous interacting agents.

Conceptually, the middleware is a smart communication

environment that provides services for filtering, partial

validation, and distribution of information according to

personal access rights of agents, and in preferable message

formats for individual agents.

A mediator is required already in case of a single agent

which collects its situational data from a set of sensors (that

can be interfaced directly to the agent) for determining

situation parameter values. It is preferable that the situational

data is tagged with validity information, which enabled cross-

checking of data and validity assessment of its value. The

middleware can validate the consistency and integrity before

the data reaches the agent – this simplifies the substitution of

the agent, or modification of its algorithms. Sensor readings

can be tagged with validity information within a sensor or at

the entry point to the mediator. The validity checks are

performed by the mediator based on the constraints and

requirements provided by the agent that subscribes to the data.

In the case of distributed peers-agents the mediation problem

is more complex since the mediator operates on multiple

simultaneous streams of computation so as each of the

interacting autonomous agents is trying to form its individual

situation awareness, and after that harmonize it with the team

situation awareness.

B. Architecture of the middleware

The middleware is realized by a collection of services at

each computing node. The services are interfaced to an active

mediator that implements the middleware features at each

node. Thus the middleware is formed by the information

mediators and services at individual nodes that interact with

each other. A service-oriented architecture for the middleware

enables easy, self-adjusting communication between dynamic

collections of interacting autonomous agents – those

interactions are required to form individual situation

awareness of agents and to develop the team situation

awareness. The interactions may be divided into multiple

groups depending on tasks and goals of interacting partners –

for instance, the middleware caters for communication

required for sensor fusion, communication between clusters of

software intensive devices to coordinate activities,

communication to reach decisions between human-human, and

human-machine groups and others.

Examples of application-oriented services provided by

middleware are:

• validation of information acquired from different

sources, assigning tags to data items if necessary

• transformation (and compression) of validated (and

fused, or otherwise processed) information into the

interim format defined by the middleware, in our case

linking the information with an interactive digital map

• tracking the position of agents that are linked to the

middleware, and storing their position in the interim

format,

• keeping track of the access rights of all the agents linked

to the middleware and checking the rights during any

transaction

• remembering the preferred formats of messages, specific

subscriptions for information from the agents, and

processing capabilities of each involved agent

• delivering the subscribed information and satisfying all

the constraints and requirements imposed by the agents

Another set of services in the middleware is for intrinsic use

(for handling the interim data format), these services are

required to create, maintain, update, and partition according to

the subscriptions from, and position of the agents. In this

paper we use interactive digital map as an interim data

structure (see map server in Figure 2). This set of services is

organized as a multi-agent system. Dedicated agents compose

and decompose the designated area in a digital map into

respective parts, extract specific layers from parts of the map,

add and delete application oriented icons in the map as

required, search and link background data about the objects

and icons on the map, update the positions of mobile icons,

etc. See section IV of this paper for more details.

The peculiarity of this middleware is in its autonomous and

smart operation that pays attention to individual properties and

requirements of the clients, and in (situation sensitive) on-line

validation of the outcome of its services. This becomes

possible due to application of the “mediated interaction”

concept (see [6]). This concept is built on a situation-aware

interactive model of computation [7] and on a well-established

message exchange paradigm where consumer has to subscribe

to a message. During the subscription process the subscriber

specifies the properties to be guaranteed in the message (e.g.

time of computing the contents of the message, position of the

message sender, validity time of the message, etc).

IV. PILOT STUDIES AND TESTS

This section discusses case studies and experiments that

have been carried out on situational information fusion and

utilization by mobile agents. The devised systems can be

potentially applied in a system comprising only machines but

also in a mixed team of humans and machines. The case

studies presented in this section are:

Figure 2 Middleware for forming team situation awareness of agents

126

Page 5: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

• Distributed detection, identification and tracking of

mobile objects

• Utilization of situational information by autonomous

mobile agents

The overviews of the case studies presented in the paper

describe the simulations while the physical implementations

involving embedded computing nodes directly interfaced to

the physical world and exchanging data between each other

are currently being developed.

A. Distributed detection & identification

1) Application scenario

In the first case study friendly vehicles operating in a

non-familiar environment opposing static and mobile

adversaries are considered. The friendly vehicles move on a

pre-specified path (a road) which may also have some

obstacles on it.

The exchange and utilization of situational information

by mobile entities is proposed with local and global

information being explicitly separated. Instead of situational

information being directly exchanged by the mobile platform

agents, each platform has a situation information mediator that

provides the situational information relevant to the given

mobile platform to the control layer of the mobile platform

when the mobile platform requires it. The architecture for

exchanging situational information is similar to the approach

presented in [6]. However instead of the approach suggested

in there the mediators do not interact with each other directly

but instead there is a central data store to which all the

mediators provide information and form where the mediators

fetch the information required by the mobile platform they

represent. The central data store was used to simplify the

implementation of the simulation, replacing the central data

store with direct communication links between the mediators

does not change the operation of individual mediators. All the

situational data generated by a mobile platform agent is

written to the data out data store of the agent. The mediator

selects the situational data relevant to other mobile agents and

writes that to the central situational data store from where

other mediators can fetch the data. In the same manner the

mediator fetches only the data relevant to the mobile platform

agent that it represents and writes data to the data in data store

from where the agent is able to read the data and select the

optimum output action in the current situation. The relation

between the agent and the mediator is depicted on Figure 3.

The constraints of the information required by a mobile

platform agent depend on the type of the mobile vehicle, the

state of the vehicle and the current location of the vehicle so

the mediator fetches only the information relevant to the

mobile platform at the current time.

2) Simulation scenario

The approach outlined above was validated in a

simulation involving autonomous collaborating vehicles. In

the simulation scenario several vehicles have to follow a road

to reach their objective – a destination specified by the user.

The terrain type on the path changes and if the terrain type is

unfavourable (e.g. loose sand or mud) the vehicle is slowed

down by the environment when the vehicle enters the

unfavourable terrain at a medium speed. If the vehicle enters

the unfavourable terrain at high speed it is not slowed down

but there are penalties introduced by the high speed in terms of

vehicle detectability. To reduce the probability of being

detected the normal speed of movement for the vehicles is

medium. In the scenario the information on the unfavourable

terrain is not known to vehicles before the simulation is started

so a vehicle that enters the unfavourable terrain at the normal

speed of movement (medium) is slowed down. However when

a vehicle detects the unfavourable terrain, it can share that

situational information with other vehicles. If the vehicle

obtains the information on the terrain type from another

vehicle it is able to speed up before entering the unfavourable

terrain and thereby avoid the slowdown.

The simulation is further complicated by adversaries in

the area, which may be mobile or non-mobile. If a vehicle is in

the proximity of an adversary and the speed of the mobile

agent is above a certain threshold (above medium) the

adversary “notices” the mobile agent and “kills it”. The

situational information regarding the adversaries can be shared

as well between the vehicles, giving the vehicles a chance to

slow down before approaching the adversary.

3) Simulation components

Every vehicle in the simulation is implemented as an

agent interfaced to a mediator as depicted on Figure 4. The

agent is responsible for the decision-making and the agent

mediator is responsible for the information exchange between

the agent and the external world. The agent in turn is

interfaced to the lower-level control functionality of the

vehicle, setting the control parameters for the vehicle, such as

immediate destination and speed.

To reduce the complexity of the implementation the

Figure 4 Screenshot of simulation scenario

Figure 3 Agent and mediator structure

127

Page 6: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

situational information generated by the agents is propagated

to a central situational data store by the agent mediators as

depicted on Figure 5. Each agent mediator can then select the

data that is of interest to the agent it represents based on the

type and validity information of the situational data.

The agent notifies the mediator what data it requires (what are

the constraints on the validity intervals of the data) and the

mediator is responsible for acquiring the data to the agent.

Once the required data has been acquired it is placed in to the

data in data store from where the agent can fetch the data for

processing. In the same manner the situational data generated

by the agent is placed into the data out data store from where

the agent mediator can fetch the data and provide it to

mediators of other agents via the central situational data store

if such data has been requested.

Clearly the use of a central situational data store is a

simplification but it does not affect the behaviour of the

individual mediators much. If no central data store would be

used a mediator would have to interact directly with the other

mediators and check if the other mediators are able to provide

the data of interest.

4) Simulation implementation

The simulation is a combined Mathworks Matlab

Simulink / Stateflow simulation with a visual user interface for

validating the simulation results. A common coordinate

system is used in the simulation which allows identifying

objects by coordinates (among other parameters) and also

reconstructing the path of the vehicles from the coordinate log.

The following situation parameters are used in the

simulation i.e. the mobile agents detect, store and use the

following situation parameter values:

• unfavourable terrain start and end

• static enemy

• mobile enemy

The coordinates of the situational data and the timestamp

for the time when the value for situation parameter was

computed are stored for all the situational information items.

Each mediator selects the situational data based on the spatial

and temporal properties (where and when the parameter value

was valid) of the data. In this simulation also the validity

period of the data is evaluated by the consumer of the data, i.e.

the agent mediator discards the situational data record if the

timestamp of the record is too old.

The information stored for different types of situational

data varies depending on the data type. For example for the

unfavourable terrain type both the start and end coordinates of

the unfavourable terrain must be recorded in addition to the

timestamp. For an adversary the coordinates of the adversary,

the type of the adversary and the timestamp should be

recorded. Since the coordinates of the adversary can’t be

determined by a vehicle in the current scenario, the

coordinates of the vehicle that detected the adversary are

recorded at the time instant when the adversary was detected

(which is usually the time instance when the friendly vehicle

was “killed”). Of course the information must be interpreted

accordingly as the indirect information on the location of the

adversary adds uncertainty

5) Results

The simulations showed that the exchange of situational

information can improve the performance of the autonomous

vehicles. The concept of situational information mediator

showed to carry potential since it allows reducing the amount

of information presented to the vehicle agent. Vehicle agents

were able to make decisions based on situational information

collected by other vehicle agents and thereby improve the

probability of mission success – to reach the desired

destination.

A. Utilization of situational information by autonomous

mobile agents

The solution presented in this section was motivated by the

potential to apply it in the field of Wireless Sensor Networks.

Wireless sensor networks (WSN) are built up of autonomous

computing nodes with limited computational power and a

wireless communication interface. As the name suggests,

wireless sensor nodes are equipped with sensors which allow

them to sense physical phenomenon.

Typically, most WSN applications are built using a

centralized architecture where (preprocessed) data collected

by the WSN nodes is collected to one central point for

processing [9, 10]. The centralized approach offers in many

cases higher fidelity than the decentralized approach [10] but

it has also some drawbacks as is not very beneficial because of

high requirements on communication bandwidth as all data

required by the processing algorithms must be transported to

that central point. In addition the centralized approach has a

single point of failure which is not acceptable in some

applications.

An alternative would be to process the data in a distributed

manner, thereby spreading the computational load among the

computing nodes (which can be viewed as agents in such a

scenario) and decreasing the bandwidth requirements. The

decentralized approach has other drawbacks related to the

complexity of distributing the computation. The algorithm

used for data processing must be suitable for partitioning and

the computational algorithm must be able to handle the

inherent uncertainties present in a WSN network – the number

and location of computing nodes is not known before the

Figure 5 Exchange of situational information

128

Page 7: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

computation is started so it is not possible to fix these

properties beforehand either at the time of design or at the

time of system deployment. This in turn means that the

relations between the fragments of the algorithm used cannot

be fixed but the interactions between algorithm fragments are

generated dynamically. The limited computational resources

available at WSN nodes pose another constraint as this limits

the complexities of the algorithms that can be applied.

1) Proposed detection scheme

The proposed detection and tracking scheme described in

this section separates the identification and tracking tasks. The

tracking algorithm uses the situation parameter values

computed by the identification algorithm (i.e. the object

classification) to improve the fidelity of the tracking task.

The proposed distributed tracking and identification system

consists of up to M sensing and computing agents where one

agent can assume the role of a super-agent handling the

processing of the results of the identification task generated by

other agents (Figure 6). Each agent is able to compute the

situation parameter values that indicate the presence of a pre-

specified object. The agents continuously monitor the

environment and perform the object identification task locally,

computing situation parameter values that reflect the

correlation of the signature of the detected object to known

object classes. The identification is performed by analyzing

the sound signal acquired via a microphone interfaced to the

agent. Fast Fourier transform is performed on acquired data

samples of predetermined length and sampling frequency.

Situation parameter values (the correlation coefficients) are

computed of this transform in respect to previously recorded

data samples of different objects of interest stored at the agent.

The situation parameter values vi = [c1i, c2i, …, cNi] (where

i is the number of the agent and N is the number of

distinguished classes) computed by individual agents are

passed to the selected super-agent where the situation

parameter values from several agents can be combined for

computing a higher level situation parameter value – an

identification of the observed object with the spatial validity

information associated with the situation parameters. Although

it may seem that the described approach employs a central

computing node this is true only to a certain extent – the

computations required for identification and localization of the

observed object need to performed by some node in the

system (making use of the data generated by the other nodes)

and distributing these computations is clearly inefficient.

However the sensor data is processed to a higher level of

abstraction at each individual node making the evaluation of

the situation distributed.

In order to ensure correctness of the object identification the

temporal consistency of the data items must be observed by

taking into account the temporal validity information of the

situation parameter values. At the super-agent, the object class

that has the highest correlation score is chosen typically and

the resulting decision (situation parameter value) is returned

back to the agents. The situation parameter value reflecting the

detected object type has a higher confidentiality value

associated with it as it combines observation results from

several agents. Based on the identification result (which can

be made locally or remotely) each agent then computes a

distance estimate based on signal energy/distance curve

specific to the given object class. In the case where the super-

agent is involved, the distance estimation information is

passed back to the super-agent. If there are at least three

independent distance estimates available at the super-agent,

with overlapping temporal validity intervals it is possible to

give an estimation of the location of the detected object using

the hyperbolic multilateration algorithm [11].

2) Practical experiment setup and acquired data

Practical experiments were carried out to validate the

approach outlined above. The approach was validated using a

PC and Mathworks MATLAB for data processing.

The equipment used in the experiments included three

Shure SM58 microphones connected to the Roland Edirol UA-

25EX audio interface attached to a PC. The maximum

bandwidth of the audio interface is 24 bits at 96 kHz so the

sampling rate and bit width (44.1 kHz and 16 bits) used for

recording sound samples in .wav format during the

experiments were well within the capabilities of the hardware.

The sound samples were recorded on a number of trial runs

with three mobile objects (forming three object classes) that

all moved at different speeds in the laboratory environment.

At this stage, the audio stream data is imported into

MATLAB and analyzed offline, using MATLAB built-in

functions (e.g. the implementation of fast Fourier transform)

as well as a number of user-written scripts.

The duration of the samples used for detection and

identification as well as for comparison was 0.1 seconds

(frequency resolution is thus 10Hz and the length of spectral

vectors is 2205). The same figure determines the minimum

interval at what coordinate determination of the object is

possible.

For object classification, fast Fourier transform is applied

to the measured signal. The resulting spectral vector p0 is

inserted into the matrix X = [p0, p1, …, pN], where pi, i = 1,

…, N are the spectral vectors of comparison samples.

The vector of correlation coefficients vi are obtained as

the first row (minus the first element) of the correlation matrix

R, whose (i, j)-th element is

central unit

agent 1 agent M

class

determination

correlation

coefficients distance

estimation

location

determination

c11, c21, ..., cN1

class

d1

c1M, c2M, ..., cNM

dM

xe

ye

Fig. 6 Distributed object identification and tracking system

129

Page 8: [IEEE 2011 IEEE International Multi-Disciplinary Conference on Cognitive Methods in Situation Awareness and Decision Support (CogSIMA 2011) - Miami Beach, FL, USA (2011.02.22-2011.02.24)]

.

jjii

ij

ijCC

C

⋅=ρ ,

where C is the (i, j)-th element of the covariation matrix of X.

It follows that the maximum element of Σvi points to the

most likely class for the unknown object (alternatively, if its

value is below a certain threshold, no class can be assigned).

Distance estimations to detected objects were computed

based on the amplitude of the received signal and the known

characteristics of the signal. The well known hyperbolic

multilateration positioning algorithm which performs quite

well if the distance estimations are correct [11] was used for

computing the position of the detected object.

3) Results of practical experiments

In the experiments, the objects were run on straight

trajectories. In the experiments, the estimated trajectory was

derived using a polynomial fitting function for a cluster of

estimated coordinates. Because the objects were run in straight

lines, the fitting polynomial is of the first order. The

classification accuracy for the tracked objects when the

situation parameter values computed by several agents were

combined was quite high, with some misclassified samples

only for class 3.

The work presented in this section shows that the

approach of distributed classification and positioning based on

audio signal analysis is feasible and can be used for object

identification and tracking. The accuracy of positioning still

needs improvement and is a subject for future research.

V. CONCLUSION

Achieving and maintaining situation awareness in a

distributed system containing both machines and humans is a

non-trivial task. The situational information generated by

individual agents that form the system must be synchronized

and the system design must ensure that the situation

parameters used by several or all system participants have

coherent values across the system. The paper presented the

principle of supplementing each situation parameter with

(temporal and spatial) validity information at the point where

the information is generated and using situational information

mediator coupled to each system agent for exchanging

situational information is an approach for achieving the

abovementioned objectives. The mediators coupled to

individual agents form a middleware that caters for the

exchange of situational information in a distributed system.

This paper also presented two case studies that implemented

some of the concepts presented in the paper. The first case

study showed how exchange of situational information is

beneficial in a mobile vehicle scenario and the second case

study presented a distributed detection and identification

scheme.

However many practical and theoretical problems must be

solved to implement such systems successfully, some of these

problems being closely related to the application domains. For

example the propagation and calculation of constraint and

validity information of situation parameter values; also the

description, validation and verification of systems’ behaviour

using situational information remains an unsolved task.

VI. ACKNOWLEDGMENTS

The work presented in this paper was partially supported

by Innovative Manufacturing Engineering Systems

Competence Centre IMECC that is co-financed by Enterprise

Estonia and European Union Regional Development Fund

(project EU30006).

REFERENCES

[1] H. Artman, C. Garbis. “Situation Awareness as Distributed Cognition”, in Proceedings of ECCE (European Conference on Cognitive

Ergonomics), Limerick, 1998, pp.?

[2] P. Salmon, N.A. Stanton, D.P. Jenkins, G.H. Walker, M.M.S. Young, A. Aujla. “What is really going on? Review, Critique and Extension of

Situation Awareness Theory”, in Engineering Psychology and Cognitive

Ergonomics, D. Harris, Ed., HCII2007, LNAI 4562, 2007, pp.407-416. [3] http://dictionary.reference.com/browse/situation, last visited 15.04.2009

[4] M. Endsley, G. Daniel, "Situation awareness analysis and

measurement", London : Lawrence Erlbum Associates, 2000 [5] Endsley M. R. Design and evaluation for situation awareness

enhancement, Proceedings of the Human Factors Society 32nd Annual

Meeting Vol. 1. - Santa Monica, CA : Human Factors Society, 1988. - pp. 97 - 101.

[6] Motus, L.; Meriste, M.; Preden, J. (2009). Towards Middleware Based

Situation Awareness. In: Military Communications Conference - 2009. MILCOM 2009, 18-21 Oct. 2009 : 5th IEEE Workshop on Situation

Management (SIMA 2009), Boston, 19-21 October. Boston, USA: IEEE

Operations Center, 2009, 1 - 7. [7] L. Motus, M. Meriste, W. Dosch “Time-awareness and Proactivity in

Models of Interactive Computation” Electronic Notes in Theoretical

Computer Science, vol. 141, (2005), 69-95, www.elsevier.com/locate/entcs

[8] L. Motus “Modeling metric time”, in B. Selic, L. Lavagno, G. Martin

(Eds), UML for Real: Design of Embedded Real-time Systems, Kluwer Academic Publ., Norwell, 2003, 205-220

[9] R. Viswanathan and P.K. Varshney, “Distributed detection with multiple sensors: Part I—fundamentals,” Proc. IEEE, vol. 85, no. 1, pp. 54–63,

Jan. 1997.

[10] J.-F. Chamberland, V.V Veeravalli, “Wireless Sensors in Distributed Detection Applications”, Signal Processing Magazine, IEEE, vol 24, no

3, pp 16-25, May 2007

[11] H.B. Lee, “Accuracy Limitations of Hyperbolic Multilateration Systems”, IEEE Transactions on Aerospace and Electronic Systems, vol

AES-11, no 1, pp 16-29, January 1975

[12] Ramage, J.; Sanz-Aranguez, P.; Campbell, J.; Cimen, T.; Crovella, L.; Dinc, M.; Kramer, I.; Martin, S.; Motus, L.; Preden, J.; Ravat, C.;

Robinson, M. (2010). “Design Considerations and Technologies for Air

Defence Systems”. NATO RTO Publications, SCI-181, 1 - 260. [13] Motus, L.; Michael G. R., “Timing Analysis of Real-Time Software”

Oxford : Elsevier, 1994. - ISBN 0080420257.

[14] Jakobson, G.; Buford, J.; Lewis, L.; "Situation Management: Basic Concepts and Approaches", Information Fusion and Geographic

Information Systems In Information Fusion and Geographic Information

Systems (2007), pp. 18-33. [15] Salmon, P. M.; Stanton, N. A.; Walker, G. H.; Jenkins, D. P., (2009)

“Distributed Situation Awareness Theory, Measurement and Application

to Teamwork", ISBN: 978-0-7546-7058-2, Ashgate Publishing

130