Crowd Simulation


M
any virtual world applications, such as computer games, often require the real-time simulation of a large number of human characters that can autonomously travel between locations in the virtual world. Steering along a desired path, while avoiding static and dynamic obstacles is a basic, yet surprisingly challenging ability for simulated characters. An agent makes steering decisions based on sensory information, predictions of the motion of dynamic obstacles, predictions of deadlocks, social etiquette, personal experience, situation specific parameters, cognitive goals and desires. The complexity of the problem and its scale requires efficient solutions as well as methods to evaluate and compare them.  Our extensive work towards these problems is encapsulated in the open source software SteerSuite, available at: www.magix.ucla.edu/steersuite.


Selected publications and demos:


  1. 1.Situation Agents: Agent-based Externalized Steering Logic”, Matthew Schuerman, Shawn Singh, Mubbasir Kapadia, Petros Faloutsos, The Journal of Computer Animation and Virtual Worlds, Special Issue CASA 2010, Wiley, pp. 1-10, 2010, in press.

    Abstract:

    We present a simple and intuitive method for encapsulating part of agents’ steering and coordinating abilities into a new class of agents, called situation agents. Situa- tion agents have all the abilities of typical agents. In addition, they can influence the steering decisions of any agent, including other situation agents, within their sphere of influence. Encapsulating steering logic into moving agents is a powerful abstraction which provides more flexibility and efficiency than traditional informed environment approaches, and works with many of the current steering methodologies. We demon- strate our proposed approach in a number of challenging scenarios.

    Video Demo:




  2. 2.Egocentric Affordance Fields in Pedestrian Steering”, Mubbasir Kapadia, Shawn Singh, Billy Hewlett, Petros Faloutsos, ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2009, pp. 215-223, 2009.

    Abstract:

    In this paper we propose a general framework for local path- planning and steering that can be easily extended to perform high- level behaviors. Our framework is based on the concept of affordances – the possible ways an agent can interact with its environment. Each agent perceives the environment through a set of vector and scalar fields that are represented in the agent’s local space. This egocentric property allows us to efficiently compute a local space-time plan. We then use these perception fields to compute a “goodness” measure for every possible action, known as an affordance field. The action that has the optimal value in the affordance field is the agent’s steering decision. Using our framework, we demonstrate completely autonomous virtual pedestrians that per- form steering and path planning in unknown environments along with the emergence of cognitive responses to never seen before situations.

    Video Demo:




  3. 3.SteerBug:An Interactive Framework for Specifying and Detecting Steering Behaviors”, Mubbasir Kapadia, Shawn Singh, Brian Allen, Glenn Reinman, Petros Faloutsos, ACM SIGGRAPH/ Eurographics Symposium on Computer Animation, 2009, pp. 209-216.

    Abstract:

    The size of crowds that modern computer games and urban simulations are capable of handling has given rise to the challenging problem of debugging and testing massive simulations of autonomous agents. In this paper, we propose SteerBug: an interactive framework for specifying and detecting steering behaviors. Our framework computes a set of time-varying metrics for agents and their environment, which characterize steering behaviors. We identify behaviors of interest by applying conditions (rules) or user defined sketches on the associated metrics. The behaviors we can specify and detect include unnatural steering, plainly incorrect results, or application-specific behaviors of interest. Our framework is extensible and independent of the specifics of any steering approach. To our knowledge, this is the first work that aims to provide a computational framework for specifying and detecting crowd behaviors in animation.


Video demo: