No Slide Title
Download
Report
Transcript No Slide Title
Recognizing Teamwork Activity in
Observations of Embodied Agents
Linus J. Luotsinen
School of Electrical Engineering and Computer Science
University of Central Florida
B. Sc. University of Dalarna, Sweden, 2002
M. Sc. University of Central Florida, 2004
Ph.D. Dissertation Defense
November 06, 2007
Committee Members
School of Electrical Engineering and Computer Science
– Dr. Ladislau Bölöni
– Dr. Avelino Gonzalez
– Dr. Kenneth Stanley
Department of Statistics and Actuarial Science
– Dr. Liqiang Ni
Outline
Introduction
Covered in candidacy
Data Acquisition and Knowledge Engineering
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Introduction
Recognize teamwork activity in a stream of positional agent
traces, and annotate them with the recognized actions
Video demonstration
Team merge (t=0)
Convoy (t=100)
Goal (t=200)
Applications
Surveillance
– Recognize multi-agent activity in surveillance video feeds
Training
– Identify discrepancies and deviations from the actions
performed by an expert team
Smarter agents
– Model the opponent team to imitate or countermeasure its
actions
Automated annotation
– Automatically index large databases for fast content retrieval
After Action Review
Digital Video Recorder
Challenges
Observation noise
– Position traces can be distorted by inaccuracies in sensors and
localization algorithms
Alignment problems
– Movement performed at different location and orientation
Scaling problems
– Movement performed at different physical scale
Temporal scaling
– Movement happens slower or faster in time
Terrain distortion
– Movement distorted because of adaptation to the terrain
Challenges
Movement variants
– Movement in alternative ways that map to the same label
Uncertainty regarding the role of the agents in the team
Role count variants
– Movement with different number of agents in the team
Agents changing their roles during the team action
Outline
Introduction
Data Acquisition and Knowledge Engineering
– Software tools we developed
– Datasets we acquired, segmented and labeled
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Software Tools we Developed
Teamwork Scenario Editor (TSE)
– Interactive knowledge engineering tool
– Video editor interface
– Visualize large datasets and geographical areas
All knowledge engineering work in this thesis was
performed using the TSE
Acquire the datasets
Find teamwork activities
Label the activities
Datasets we Acquired, Segmented and
Labeled
Real-world warfare exercise
Recorded over a three days
Data collected from hundreds of soldiers and tanks
equipped with GPS devices, laser range finders and laser
range detectors
Datasets we Acquired, Segmented and
Labeled
Military Operations in Urban Terrain (MOUT)
Mini-MOUT
OTBSAF
Military Movement
We extract military movement patterns from the warfare databases
In the military domain the movement techniques and formations are
selected based on the situational awareness of the team
Traveling
– Enemy contact not expected
– Fast movement speed
Traveling overwatch
– Enemy contact possible
– Medium movement speed
– Characterized by continuous movement of lead unit and alternating advancement
of rear units
Bounding overwatch
– Enemy contact expected
– Slow movement speed
– Alternating or successive bounds
Military Movement
Formations are used in combination with movement techniques
Formation is selected based on visibility needs, firepower focus
and so on
Column
– Leader followed by rear units
– Fire power in all directions (flanks, front and rear)
Line
– Fire power in the front
Wedge
– Fire power in the front and in the flanks
Echelon
– Enemy contact expected in the front or in the echeloned flanks
– Used when one flanks are secured by obstacles
Outline
Introduction
Data Acquisition and Knowledge Engineering
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Teamwork Activity Recognition using
Hidden Markov Models
A spatio-temporal pattern recognition problem
– Recognize teamwork from X and Y coordinates over time for
multiple agents
Why Hidden Markov Models?
– Mathematically sound
– Temporal by nature
– Successfully applied in the past (e.g. speech recognition)
Ways of encoding teamwork activity in HMMs
– Knowledge engineering
– Learn from a set of representative examples
Workflow Overview
Teamwork Activity
Recognition
Teamwork Scenario Editor
External
database
Import
Visualization
Teamwork
Database
Learning
Export
Identification
Representative
Examples
Teamwork Activity
Models
Classification
Real-time
data stream
Annotated
Teamwork
Behavior
The Hidden Markov Model
The HMM consists of a number hidden states
Transition probabilities
–
Emission probabilities
–
– Gaussian PDF
Initial probabilities
–
HMM with 3 hidden states
The Hidden Markov Model
Learning algorithms
– Baum-Welch
Optimize
by maximizing
– Segmental K-means
Optimize by maximizing
, where is the optimum hidden
sequence given by the Viterbi decoding algorithm
Classification
– Determine the probability that the input sequence was generated
by the HMM
– Forward evaluation algorithm
Baseline Input Format for the HMM + Basic
Preprocessing
The input is a vector of the agent positions
– VT = {v1, v2, v3,…, vt}
– vt = {x1, y1, x2, y2, x3, y3, …, xn, yn}
It is very unlikely that the team action will be repeated in the
same location and position!
We perform a pre-processing of the input data which allows
us to recognize team actions happening at arbitrary
locations and orientation:
– Translation
Align with team centroid
– Rotation
Align with x-axis
This is not sufficient, many other distorting factors can
happen: scaling, terrain distortion, different ordering of the
agents – we are dealing with these later in this presentation
Experimental Setup
Test problem
– Real-world military warfare exercise
Train and test data
– Six activities (extracted using TSE)
– Artificial activities added for testing
Results: Recognition Accuracy
Classification accuracy is 82%
Matches the performance of the knowledge engineering
approach
As presented at the AAMAS-07 conference
Results: Real-Time Analysis
HMM with 4 states and 6 classes ~9.4ms
Hidden States
Mean Time (ms)
1
2.543
2
4.743
3
7.02
4
9.394
5
12.06
Shortcomings: A Lot of Assumptions!
We assumed that the teamwork activities were performed at the same
scale
We assumed that there is no interaction with the environment
Observation input is of fixed arrangement, hence, we assumed that
recognition is performed on the same team the HMM was trained for
We assumed that all activities can be modeled using the same number of
hidden states in the HMMs
Dimensionality and state space for larger teams will quickly grow out of
control
We do not recognize the roles of the agents in the teamwork activity
– Who is the leader and who is the follower?
The recognizer is not practical!
Outline
Introduction
Data Acquisition and Knowledge Engineering
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Team-Oriented Feature Extraction
Improve recognition accuracy and robustness by replacing the “vector of
positions” input with a collection of team-oriented features
– The features are extracted through pre-processing
– Some of the features replace the existing input vector
– Some of the features are the input of the role recognizer (and there is some
overlap)
– It requires a more complex recognition workflow (which will be shown later,
together with the role recognition module)
Extract semantically rich features from the agent position traces
Discretization process
– Intuitive descriptions of teamwork activities
– For classifiers using discrete input
Three feature function classes
– Agent-oriented features
– Environment-oriented features
– Team-oriented features
Calculated over a sliding window in time
Features are matched with the ways humans would understand the scene
Agent-Oriented Feature Functions
Focus on individual agents
Enhance performance of teamwork recognition
Used to recognize (likely) roles
Curvature
The rate at which a curve changes direction
Finite difference approximation
with central difference
Environment-Oriented Feature Functions
Agent and team interactions with environment
Environmental objects
– Physical or virtual
– Static or dynamic
Domain specific examples
– Frontline in war
– Offside line in soccer
– Line-of-scrimmage in football
Angle
Orientation
LOS
A1
Path
t=2
t=1
t=0
Team-Oriented Feature Functions
Extract features relative to the team
Specifically designed for teamwork activity recognition
Centroid-Relative Position Vector (CRPV)
Positions are calculated relative the
centroid position and orientation
Dimensionality is reduced (compared to
previous approach)
Translation, rotation and scale invariant
An evolution is the Role-Relative
Position Vector (RRPV)
– Privileged agent
CRPV Discretization
Cohesion
Measures the bonding together of the team
– Derived from the Principal Component Analysis
– PCA: Dimensionality is reduced by restricting attention to the
directions along the scatter cloud that are the greatest
Calculate eigenvalues and eigenvectors from the position-based
scatter matrix
– In the 2D case there are two eigenvalues and two eigenvectors
Cohesion is the maximum eigenvalue
CohesionDirection is the direction of the eigenvector with
maximum eigenvalue
CohesionGradient is the change in cohesion over a sliding
window
Cohesion
Position-based scatter matrix
Team-Oriented Feature Functions
Agent-oriented features can be used by replacing the team
with a virtual agent following the team centroid
Outline
Introduction
Data Acquisition and Knowledge Engineering
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Role-Based Teamwork Activity Recognition
The goal is to improve robustness of the teamwork recognizer
What are the role assignments in the team?
The baseline HMM input we presented previously is a fixed
arrangement
– {1, 2, 3, 4} not the same as {2, 3, 4, 1}
Brute force solution
– Inefficient: One HMM for each permutation
Role recognition module
– Represent teamwork activity based on roles, rather than by agents
Extended Workflow Overview
Teamwork Scenario Editor
Import
Teamwork
Data Format
Visualization
Identification
Representative
Examples
External
database
Teamwork Activity Recognition Framework
Learning
Export
Teamwork Activity
Models
Role-Oriented Feature
Extraction
Role
Recognition
Role
Models
Recognition
Team-Oriented Feature
Extraction
Assignment
Classification
Mapping
Real-time
data stream
Annotated
Teamwork
Activity
Learning Role Models
Role models are represented by decision trees
– Trained from observations with ID3 algorithm
– Pruned to minimize effects of overfitting
– Intuitive (white-box)
– Visualizes the exact features which were used in classification
Follow leader uses CRPV
Feature functions for role recognition:
– Agent-oriented feature functions
– CRPV feature (assuming that bystander agents are filtered out)
Role Recognition
Calculate the role assignment probability Pr( ai , rj )
– The probability that agent ai plays role rj
Extract observation sequences from the movement trace of
each agent
Input each observation in the sequence to the decision tree
classifier
The output is a sequence of class frequency vectors
Role assignment probability:
CRPV
NorthWest
SouthWest
f={2, 4, 0, 0}
f={0, 0, 25, 0}
SouthEast
NorthEast
f={0, 0, 17, 0}
f={4, 6, 0, 0}
South
North
Velocity
f={0, 0, 277, 319}
Low
High
f={66, 113, 0, 0}
Acceleration
Decelerating
f={107, 80, 0, 0}
Constant
f={34, 7, 0, 0}
Accelerating
f={106, 109, 0, 0}
Role Assignment and Mapping
Identify the best match of role to agent assignments by
searching the role assignment probabilities
– Re-map the team-oriented feature vectors
Multiple role assignment
– Each agent can play multiple roles
Role Assignment and Mapping
Unique role assignment
– Each agent can play one role
Experimental Setup
Warfare exercise dataset
– Same as used previously
– Extended with seven activities
– Four agents and four roles
Teamwork Activity Recognizer
Activity
Sequences
Observations
Traveling column
29
319
Traveling line
30
330
Traveling box
33
363
Bounding overwatch
9
189
Wedge
17
187
Team split
15
192
Team merge
15
177
– Gaussian Mixture Model (GMM)
– Multiple internal HMMs for each activity to accommodate for complexity variations
in teamwork activities
GPS readings are not always available (e.g. positions from opponents)
Simulate noisy observations
– Offset position with a randomly generated number following the Gaussian
distribution multiplied with a noise magnitude
Mean accuracy and standard deviation was calculated using stratified 10fold cross-validation
Results: Creating the Idealized Team Actions
Assume perfect role recognition
Best parameter configuration
– Four hidden states
– Three mixture components
Results: Performance Evaluation with
Unknown Team-Organization
Shuffled input
Results: Performance Evaluation with
Unknown Team-Organization
Accuracy with noise and unknown team-organization
– 92.62% with standard deviation 5.53%
– Previous accuracy was 82% (without noise)
Role recognition improves robustness
Team-oriented feature functions improves accuracy
Outline
Introduction
Data Acquisition and Knowledge Engineering
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Tuning the Performance of Teamwork
Activity Recognition
Many components in the recognizer’s workflow are
customizable
– HMM: Number of hidden states and choice of emission
probability representation
– Feature extraction: Width of sliding window and discretization
thresholds
– Role recognition module: Choice of features, parameters in the
ID3 learning algorithm and the choice of learning algorithm
The probability density function (PDF) has a significant
impact on the accuracy and robustness of the recognizer
Implementation Choice
Multi-modal
Continuous
Parameters
Simple HMM
Yes
No
States (n), Clusters (k)
HMM with Gaussian
No
Yes
States (n)
HMM with GMM
Yes
Yes
States (n), Components (C)
Simple Hidden Markov Model
Discrete (histogram-based) probability density function
Inputs are sequences of discrete values
Vector quantization
– Compress observations
– Training of a codebook
– Cluster assignment
Advantages
– Multi-modal distribution
Disadvantages
– Extra cluster parameter to train codebook
– Can not estimate unseen observations
– Requires more training data
Hidden Markov Model with Gaussian PDF
Used in the initial recognizer
Advantages
– Continuous
– Can estimate unseen observations
Disadvantages
– Unimodal distribution
– Example: How to model U-turn to the left and right in the same
HMM?
– Matrix inversion of covariance matrix can be problematic
Reduce expressiveness by enforcing diagonal covariance matrices
Hidden Markov Model with GMM PDF
Used in the extended recognizer
Advantages
– Continuous
– Can estimate unseen observations
– Multi-modal distribution
Disadvantages
– Extra parameter to determine number of mixture components
– Parameter estimation is computationally expensive
Results: Simple HMM
Best recognition accuracy
– 60 clusters with 18 hidden
states
– Accuracy is 75.05% ± 14.89%
Difficulties with
– Bounding overwatch
– Team split
– Team merge
Results: HMM with Gaussian PDF
Best recognition accuracy
– 3 hidden states
– Accuracy is 91.29% ± 6.69%
Fails when using more than three
states (not enough training data)
– Bounding overwatch
– Team split
– Team merge
Reduce expressiveness of the PDF
Results: HMM with GMM PDF
Best recognition accuracy
– 3 hidden states
– 2 mixture components
– Accuracy is 93.90% ± 4.68%
Summary
Simple HMM
– Performed poorly
– Filters out too much information
HMM with Gaussian PDF
– Fails when using the general covariance matrix when n > 3
HMM with Gaussian Mixture Model PDF
– Best choice
– Least sensitive to changes in parameter configurations
Implementation Choice
Mean
Max
Min
Std. dev.
Simple HMM
62.91%
75.05%
44.52%
5.44%
HMM with Gaussian
83.27%
91.28%
77.76%
4.29%
HMM with GMM
88.30%
93.90%
83.19%
2.17%
Outline
Introduction
Data Acquisition and Knowledge Engineering
Teamwork Activity Recognition using Hidden Markov Models
Team-Oriented Feature Extraction
Role-Based Teamwork Activity Recognition
Tuning the Performance of Teamwork Activity Recognition
Conclusions
Conclusions
We developed a knowledge engineering tool for visualization,
identification and extraction of teamwork datasets
We developed a teamwork activity recognizer capable of
encoding teamwork activity models from representative
observations
We improved accuracy of the recognizer using team-oriented
feature functions
The robustness of the recognizer was enhanced by integrating
a role-recognition module in the recognition workflow
We studied the importance of probability density function
choices in our recognizer
Contributions
Teamwork Scenario Editor
Corpus of labeled teamwork activity
Team-oriented feature extraction
Learning teamwork activity from observation
Role-based teamwork recognition
Performance tuning of the teamwork recognizer
Future Work
Team membership assignment
Larger teams with 100 or more agents
Preliminary studies
– Kalman filter
Noise reduction of observation data
Fusing information from multiple (uncertain) sources
Applied to estimate life-expectancy in a disaster response simulation
– Genetic programming approach to learn agent strategies
Applied to a simple foraging game in the single agent domain
Publications
Teamwork Recognition of Embodied Agents with hidden Markov models. L. J.
Luotsinen, H. Fernlund and L. Bölöni, IEEE 3rd International Conference on Intelligent
Computer Communication and Processing (ICCP07), September 6-8, 2007.
Automatic Annotation of Team Actions in Observations of Embodied Agents. L. J.
Luotsinen and H. Fernlund and L. Bölöni, Sixth International Conference on Autonomous
Agents and Multiagent Systems (AAMAS-2007), May, 2007, Honolulu, Hawaii.
A Study of the Robustness of Agent Performance in Nine Popular Agent
Implementation Paradigms. L. J. Luotsinen, M. A. Khan and L. Bölöni, IEEE 3rd
International Conference on Intelligent Computer Communication and Processing (ICCP07),
September 6-8, 2007.
A Comparison Study of Twelve Paradigms for Developing Embodied Agents. Ladislau
Bölöni, L. J. Luotsinen, Joakim N. Ekblad, T. Ryan Fitz-Gibbon, Charles Houchin, Justin
Key, Majid Ali Khan, Jin Lyu, Johann Nguyen, Rex Oleson, Gary Stein, Scott Vander Welde,
and Viet Trinh. Software: Practice and Experience, 2007.
Comparing Apples with Oranges: Evaluating Twelve Paradigms of Agency (Book
chapter), L. J. Luotsinen, J. N. Ekblad, T. R. F. Gibbon, C. Houchin, J. Key, M. A. Khan, J.
Lyu, J. Nguyen, R. Oleson, G. Stein, S. V. Weide, V. Trinh and L. Bölöni, ProMAS-2006,
Fourth International Workshop on Programming Multi-Agent Systems, LNAI 4411, pp. 95114, 2007.
Comparing Apples with Oranges: Evaluating Twelve Paradigms of Agency. L. J.
Luotsinen, Joakim N. Ekblad, T. Ryan Fitz Gibbon, Charles Houchin, Justin Key, Majid Ali
Khan, Jin Lyu, Johann Nguyen, Rex Oleson, Gary Stein, Scott Vander Weide, Viet Trinh
and Ladislau Bölöni, ProMAS-2006, Fourth International Workshop on Programming MultiAgent Systems, Hakodate, Japan, May, 2006.
A Two-Stage Genetic Programming Approach for Non-Player Characters. L. J.
Luotsinen, Joakim N. Ekblad, Annie S. Wu, Avelino J. Gonzalez and Ladislau Bölöni,
FuturePlay, The International Academic Conference on the Future of Game Design and
Technology, East Lansing, Michigan, October, 2005.
Collaborative UAV Exploration of Hostile Environments. L. J. Luotsinen, Avelino J.
Gonzalez and Ladislau Bölöni, 24th Army Science Conference, Orlando, Florida, December,
2004.
Publications (Pending)
Role-Based Teamwork Activity Recognition in Observations of Embodied Agent
Actions. L. J. Luotsinen and L. Bölöni, Submitted to: Seventh International Conference on
Autonomous Agents and Multi-Agent Systems (AAMAS-2008), May, 2008, Estoril, Portugal.
A Robust Method for Estimating Noisy Measurements Applied to Disaster Response
Operations. L. J. Luotsinen, M. A. Khan and L. Bölöni, 2008.
Building a World Model under Communication Constraints for Disaster Response
Applications. M. A. Khan, L. J. Luotsinen and L. Bölöni, 2008.
Questions?