Simulating Crowds


I have decided to code up a simulator for crowd action and reactions.

So far I have started with the concept of creating a stereotype.  Then I will model the event trigger and exposure.

Crowd Attractors:

  • Interest
  • Urgency
  • Relatability
    • This is really part of interest, but interest seems more of an active sense, where as Relatability is more passive.
  • Desire
    • Including Value
  • Flexibility
    • Including how easily the person is distracted
  • Boldness
  • Mobility
    • This isn’t just wheelchairs and cars, but if the place is already crowded, will they be able to squeeze in?
  • Alertness
  • Age
    • Of the people

Crowd Detractors

  • Interest
    • In other things
  • Urgency
    • In other things
  • Desire
    • In other things
  • Focus
    • In other things
    • Similar to desire, but like flexibility, this is more of a sharpening of desire than a drive like desire
  • Fear
    • Cowardliness
    • Self preservation
  • Anti-mobility
    • Not immobility, but more of the idea of not being in an area where you have to put effort into being easily mobile. Me taking 8 flights of stares rather than an elevator.
  • Alertness
    • Age of the people

Event Trigger

  • Advertised
  • Scale Physical
    • Macys Sale
    • Earth Quake
    • Little Johnny’s birthday
    • A guy tripping on the sidewalk
  • Risk Appearance
  • Commonality
    • Breaking this into two parts.
      • Unique talent that has regular shows is not unique in frequency, but in source. So this is more in frequency.
      • Part 2 is Uniqueness below.
  • Uniqueness
    • This is the commonality of the item itself
      • Bananas for sale
      • Eminen Concert

After listing these items, it really seems that what I need is a weighted tag system.


  • Person [John Doe: 100]
  • Popularity [General:80, Country Music: 80]
  • Culture [Country Music: 100]
  • Location [Burger Thing: 100]
  • Advertised [Disguised: 40]
  • Activity [Eating Lunch: 100]
  • Duration [Starts at: 0, Peaks at: 100, Ends at: 10, Time Laps: 20 mins]

So this event has a popular Country Music Personality by the name of John Doe, eating at Burger Thing, while disguised for about 20 mins, no buildup and no post even cool off.

So the crowd sample [a person in this case] would look something like:


  • General Interests [Food: 0, Music: 60, Rock Music 50, Jazz Music 50]
  • Cultural Interest [Racial: 5, Age: 80, Gender: 50, Indie Music: 40, Rock Music: 50, Country Music: 5]
  • Immediate Interests [Food: 100]
  • Location [Burger Thing: 100]
  • Alertness [General: 40, Menu Board: 100, Cashier: 80, Cell Phone: 30, Friends: 40]
  • Duration [Starts at: 10, Peaks at: 80, Ends at: 20, Time Laps: 35 mins]

So this person generally doesn’t care much of what they eat. But they probably keep music on all the time, which will either be Rock or Jazz.

Their peer group that they hang out with is a melting pot from many racial backgrounds, but all near the same age. Their friends are nearly evenly distributed between male and female. Most of them listen to similar music, but one of their friends likes country.

Currently this person is hungry, and is at Burger thing, trying to figure out what to order, while responding to the occasional text message.

Because of the distractions of phone and friends it takes them a while of start and wrap up their lunch.

What are the chances that this person will notice the singer?

  • Well, there is only one John Doe here, so he is unique 100.
  • While the crowd sample may not have interest in country, they have a friend who have enough interest to hit cap of 5.
  • They are at the same location 100
  • But the crowd is distracted, even if they were looking for John Doe, he is disguised, so 40.
  • Since the crowd is there longer than John Doe, their time is parsed out between eating and socializing, mentally somewhere else. 80.

Other factors

  • Is the place crowded? 80
  • Is the place well lit? 100
  • Is it noisy? 80
  • Are there ambient distractions, loud paintings, baby crying, angry customer, construction work outside? 10
  • Smell? Good and bad. 0

Lest assume crowded, well lit, noisy, place.


  • Crowd: 100+5+100+40+80 = 325, not looking good for John Doe to keep hidden.
  • Other Factors: 80+100+80+10=270, Deduct from crowd for a total of 55.

So what this means is that if she sits there long enough, between crowd and their friends, John Doe will be identified, but that doesn’t directly equate to intercepting. That would get into: How approachable is this person? How motivated is this crowd? How easy is it to get to this person? How much of a risk is it to get to this person?

So you can see here that they issue is multipart.

  1. Recognition
  2. Valuation
  3. Mobility

One of the changes that I think I will do in developing this, is use Fibonacci numbers 0 – some upper limit, for the weights. Avoid negative values, but rather have other interests deduct from core interests.

I will also need to account for the sheeple effect. Also known as Herd Mentality. Then you also have Doppler effect, of the crowd is just that dense in a point where you get dragged along.

Also there are cultural norms like self queuing vs crowding. Politeness vs aggressiveness.

Lastly there would need to be an assumption of casual activity, vs event activity. Casual is like work and shopping, vs event is the premier of a new brand of pre-toasted toast.

Mind you, I’m not doing this to create a whole AI simulation, or even predictive patterns, but in reality, I would like to consider this as a concept model for possibly a new game, or maybe event management training.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.