Sign in to follow this  

Crowd modelling

This topic is 3462 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Dear Friends, I am just starting to explore the movement of crowd. I am using VB.Net to simulate the crowd movement. One problem i am facing is how to simulate the crossing movement of crowd. How can i represent two groups of crowd in two opposite direction and then simulate simultaneously using VB.Net? I have been able to simulate basic movement for one direction only and for two-way movement i do not know how can i represent it in VB.Net? As i am not from computer science/engineering field, may be i am missing some advance knowledge? Any suggestion would be highly appreciated. Thank you.

Share this post


Link to post
Share on other sites
First of all, you've already got some basic movement in one direction, that's a great start, so making them move the other direction would be a simple step. I'm guessing what you want to implement is some sort of intelligent collision avoidance, a good link i've found for that would be

http://www.red3d.com/cwr/boids/

it includes flocking behaviors, which you could use for making the individual people within the crowds move in the same general direction and try to maintain cohesion. It also has some links to collision avoidance methods.

Keep in mind that with opposing crowds, they need to work co-operatively to make space for each other, or one direction will need to have priority over the other, to force the other direction to make way.

Another article worth reading is

http://www.gamasutra.com/features/game_design/19990122/movement_01.htm

which discusses unit movement, pathfinding and collision avoidance again.

The representation will be basically the same amongst different languages, find what data structures are used, they will be basically the same, and then you can use whatever drawing methods VB.Net has available for you. I'd first try to get your head around the different algorithms before worrying about implementation.

Hope that's useful

Share this post


Link to post
Share on other sites
You don't necessarily need flocking (i.e. the boids link) unless you need the respective groups to specifically stay together. However, there are other links on Craig Reynolds site that deal directly with steering behaviors. The one you will want to focus on is this - Unalligned Collision Avoidance.

Share this post


Link to post
Share on other sites
Thank you very much guys for your insight. Yes, like you have said, different authors have used different methods for collision avoidance (inter-personal distance based, vision-based, Potential field etc.). I am familiar with some of those techniques. The worrying factor for me is if VB.NET (am familiar with VB.NET only) can perform simultaneous simulation or not which is needed for crossing movement of people. I need to perform such simulations for my postgraduate study which is related to crowd management.

Cheers

Share this post


Link to post
Share on other sites
Quote:
Original post by Ninji
The worrying factor for me is if VB.NET (am familiar with VB.NET only) can perform simultaneous simulation or not which is needed for crossing movement of people. I need to perform such simulations for my postgraduate study which is related to crowd management.


I have NO idea what your are talking about. Unless you are wanting to multi-thread (which is not necessary here), there is no such thing as "simultaneous simulation" in either C++, VB or anything .NET for that matter. You iterate through the agents and process them based on what they "see" and think at the time... then you update the frame.

Share this post


Link to post
Share on other sites
Quote:
Original post by InnocuousFox
First off, the language has very little to do with the logic. Second, crowds don't move; people move. Think about it that way for a bit.


I wonder though if there isn't something to be gleaned from statistical mechanics with regards to the crowd. While it's the fundamental particles (people) that move, there are macro properties of physical systems that explain their behaviour at the macro level. I vaguely recall reading some research a long time ago looking at the statistical mechanical properties of crowds... but I don't recall any specifics about it unfortunately. I know from my own personal experiences working as a crowd controller (security guard) at concerts (while working my way through university) that there arises a 'crowd mind' when people congregate together for non-trivial period of time. I wonder whether crowds in the street do the same!?

Sorry if this is a bit off-topic. 8)

Cheers,

Timkin

Share this post


Link to post
Share on other sites
I would chalk that up to two things...

One, the emergent properties of cellular automata. That much is what I meant and what Craig Reynolds is dealing with. It's what drives boids, etc. However, we perceive a group movement rather than individual movements.

Two, there is something to be said for the "crowd mind" - but only in the sense that there are expected standard behaviors. With that in mind, any one agent has a good idea of what the other agents are likely to do. Likewise, they do things in a certain way because they know that others are expecting them to. They achieve a kind of Nash equilibrium in that everyone is doing what is best for the crowd as a whole by following a specific set of generalized rules. That's one step beyond the independent agent model in that everyone isn't just following their own perceptions and selfishly making up their own minds.

Share this post


Link to post
Share on other sites

This topic is 3462 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this