Animations and Demonstrations: An Introductory Note
This Animations/Demos page presents several illustrations of our
dynamical approach to agent steering.
These animations contain
three kinds of agents: actors that
autonomously navigate; obstacles that actors avoid;
and targets that represent actors' goals.
This page consists of the following:
This page is intended as an overview of my animation work, but
it is not exhaustive. The Supplementary
Material section contains links to pages with information
and animations that are not included on this page.
MATLAB-Generated Crowd Simulations
I implemented our dynamical approach to agent steering in
MATLAB. As illustrations of the approach, I here present a few
simple, demo crowd simulations. All agents are represented as
circles: Actors are blue, obstacles are brown, and targets are
a light, off-white color.
-
In these similar-looking animations, (AVI, size: 5.5M) and (AVI, size: 5.0M), a dispersed group of
72 actors converge on a target. Actors autonomously avoid
collisions with obstacles and with each other, and they
autonomously guide themselves to their target. Each actor is an
independent instantiation of the general navigation system. All
actors are effectively identical, in the sense that their
initial parameter settings are identical (except for position,
of course) and all actors evolve according to identical
procedures.
-
In this animation (AVI, size:
2.5M), three squadrons of 24 actors each converge on the
target in the same world of obstacles/targets as above. As before, all
actors are effectively identical, and all properties of target
achievement and obstacle avoidance are autonomous.
In addition, no special formation-control guidance was given.
When it occurred, formation-maintenance was emergent from more
general parameter settings.
Do those parameter settings really matter? Definitely,
yes. The code for this animation (AVI, size:4.9M) is only very
slightly different from the code for the preceding one --
roughly ten settings were nudged a bit, but all else is
identical. The crowd's behavior, however, is significantly
different! Some of these actors have a remarkable, bull-headed
capacity for running through each other. Like formation
control, that is an emergent behavior (bug, feature,
whatever...). Note also the sense of drama at the end of the
animation, as a few stray actors tease us into wondering if
they would ever make it to the target. This, too, is emergent;
no dramatic coaching was given. The moral of their little
drama: Be sure you've hand-tuned your parameters properly
before you demo your work!
I am currently creating a verifier for reachability properties
in MATLAB. In addition, I am writing a MATLAB implementation of
the High-Level Dynamicist Pathfinding system (see below)
initially implemented in CHARON. Demos of these projects will soon appear
on this page.
Multi-Agent Animations Generated from Hybrid System Models
In this section are a few representative demos of our work
using the general-purpose hybrid systems modeling tool CHARON.
A Note about Simulation Size
Using CHARON had two significant virtues:
- It made explicit the
automata-theoretic hybrid system models underlying our
animations;
- It facilitated our initial explorations in verification.
CHARON did, however, impose a significant constraint: Because
of the particular way that the CHARON programming/modeling
language was interpreted into JAVA, we were severely restricted
as to the number of animated actors we could represent in a
single animation. Therefore, even though the dynamical systems
for agent navigation are essentially the same in our CHARON
simulations as in our MATLAB simulations, the CHARON
simulations could not contain as many actors.
High-Level Dynamicist Pathfinding
We are developing a hybrid dynamical system approach to high-level
pathfinding (e.g., street selection) for intelligent
characters. Characters have their own individual mental maps
and subjective perceptions of their surroundings. Characters
have subjective, hence imperfect, knowledge. Their cognitive
attributes change over time in dynamic worlds. Their decision
making is modeled by a hybrid system. The result is believable,
creative navigation behavior.
I intend this brief section not as a full explanation of the
model, which would go far beyond the scope of this page, but
as an introduction to this animation (MPEG, size: 5.5M) in which three
children walk around a virtual city. Please
note that this animation is merely an excerpt from a demo.
The children's initial and target points are specified by the
animator, but their paths are autonomously determined. For
example, two of the children take different, equally plausible
paths from the same starting point to the same goal position.
The only difference between the children is their subjective
perceptions of the world, and how their cognitive models
evolve. Their rules for decision-making are identical.
The children's low-level behavior (e.g., obstacle avoidance) is
the hybrid system model used in the crowd simulation below.
Thus, the entirety of their navigation behavior --low- and
high-level together-- is specified as a single, united hybrid
dynamical system.
A somewhat more complete explanation and a more complex
demonstration of the high-level navigation is available in the
supplementary material for
the systems-oriented paper Hybrid System Models of
Navigation Strategies for Games and Animations.
Crowd Simulation
Using CHARON, we created a simple crowd simulation animation as
something of a proof of concept: This crowd simulation is similar to
other animations used to demonstrate multi-agent low-level navigation
systems, suggesting that a hybrid system approach is comparably
expressive to standard methods. In this animation
(QT, size: 33.9M)
(MPEG, size: 2.6M), a crowd of mice move from the
bottom of the screen to their mouse hole (home) at the top, navigating
around a crowd of mice simultaneously crossing from the top of the
screen to their home at the bottom.
Mode Switching and Selective Repeller Response
More demos, including some regarding navigation mode
switching and selective repeller response, are
presented and explained in the context of the supplementary material for the paper A Hybrid
Dynamical Systems Approach to Intelligent Low-Level
Navigation.
Supplementary Material for Selected Publications
Some of the above animations are also presented in the context of supplementary
material for selected publications:
-
Supplementary material for
A Hybrid Dynamical Systems Approach to
Intelligent Low-Level Navigation.
E. Aaron, H. Sun, F. Ivancic, and D. Metaxas.
Proceedings of Computer Animation 2002, 154-163, 2002.
-
Supplementary material for
Hybrid System Models of Navigation Strategies
for Games and Animations.
E. Aaron, F. Ivancic, and D. Metaxas.
Proceedings of Hybrid Systems: Computation and Control, LNCS 2289, 7-20, 2002.
-
Supplementary material for
A Framework for Reasoning about Animation Systems.
E. Aaron, D. Metaxas, F. Ivancic, and O. Sokolsky.
Proceedings of the Third International Workshop on Intelligent
Virtual Agents, LNAI 2190, 47-60, 2001.
Supplementary materials often include CHARON output and other
information as well as animations.
Acknowledgment
I would like to thank Harold Sun for his assistance in rendering.
Back to Eric Aaron's home page
Eric Aaron, eaaron@cs.rutgers.edu