Archived from groups: comp.ai.games (
More info?)
Jon wrote:
> Hey there, thanks a bunch. Googling "modelling crowd behavior" gave a ton of
> papers to refer to. Just about what I need.
Make sure you google "modeling" as well as "modelling", because we US
folks sometimes spell things in odd ways
.
>
> Now, I'm just wondering - What would be a suitable (not too technically
> difficult) framework for my research. The basics of it are:
> 1. Crowd behavior in a battle environment
> 2. Some variables allowed to be changed of the agents for "individualism"
> 3. A 3D engine to show the behaviors
I haven't done crowd modeling specifically myself, but this looks about
right. I figure you want to start by examining exactly what the 3D
engine provides you in terms of control over each entity's movement, and
the sensory/terrain information you are able to query. This will give
you the basic input and output parameter space for the model. Then you
have to decide for yourself what types of "individualism" parameters you
want, but it will only make sense to use parameters that ultimately be
expressed in changes in behavior. And they will certainly depend on
whatever "flocking" (or whatever) model you ultimately decide to use.
If you are working in a battle environment, it might make sense to
implement cultural and emotional factors. Also, depending on what
you're looking for, you might want some representation of motivation
and/or goals. Why is each member of the crowd there in the first place?
That might have a lot to say about whether an individual will run
away, react angrily, etc.
>
> The rough idea I have in mind is:
> Research on a suitable AI method. Define agents rules and behavior. Create
> 3d models and animate according to predetermined movements/behaviors.
> Integrate models into 3D engine and program AI agents. Implementing AI
> "engine" with 3D engine. Other aspects like pathfinding and rendering should
> be taken care of by the 3D engine.
>
> Did I miss out anything? Again, thanks!
Sounds like a reasonable approach. As with any AI-oriented behavior,
I'd start with a specific (reasonably sized) scenario and set of
behaviors in mind, implement those (along with the basic interfaces,
etc.) and refine from there.