Friday, December 11, 2015


Documentation:
Part A:
For this assignment, we extended and evaluated our previous work in SteerLite. We leveraged our previously made social force AI modules into a crowd simulation tool and subjected the program to a series of test cases. We then used the given performance rater script to measure the efficiency of our algorithms and compare our benchmarks to the rest of the class

To do this, we adjusted our social forces AI module from a past project and combined it with A* planning to form a crowd simulator with path finding capabilities. Social forces were initially comprised of a goal force, proximity force, agent repulsion force, and wall repulsion force. Our A* implementation, which calculates the shortest path to a goal using the Manhattan distance heuristic.
For Social Forces, we enhanced out previous project by adding calculations for a sliding friction force in both our Agent Repulsion Forces and out Wall Repulsion forces. Our idea behind this was to simulated pushing and shoving of members of a crowd. Consider the example of Black Friday shopping. Often shoppers congregate outside of closed stores waiting for the doors to open, forming what amounts to a bottleneck when they do. In this situation, people are pushed forward and backwards by other shoppers, up and down walls.

Adding A* to our social forces allows our agents to plan their paths, moving around obstacles that would previously block a straight forward approach to their goal. This mimics actual crowd behavior in the way that crowds are comprised of individual rational agents. Rational agents want to use the shortest path paths to their goal, thus so should all agents of the crowd.

Below are some test cases showcasing our crowd simulator:
maze 1:



office complex 1:


plane egress 1:


plane ingress 1:

wall squeeze 1:


doorway two way 1:


double squeeze 1:


hallway four way roundabout 1:


hallway two way 1:


bottleneck squeeze 1:

Part B
Here we were tasked with making a creative Steerlite crowd animation. We decided to use this as an opportunity to tell a story with the agents. The story is depicted is as follows:

In a world, a great wall separates the population. But after having separated the land for thousands of years, parts of the wall have collapsed creating three corridors. Though some groups, the cyan, wish not to change their way of life and act as if the corridors do not exist, others from both sides of the wall seek adventure and discovery. The red group ventures forward through the first corridor, but seeing the passing purple group, decide to make a hasty retreat west so as to avoid confrontation with the new strangers .The purple group pays no notice to the red, instead racing against the yellow group, with whom they had a long historic rivalry, to reach the other side of the second corridor. They push and shove each other before parting ways at the exit, desperate to claim their own territory. Meanwhile, a peaceful green group traverses the third corridor, then heads east to find their own home, not noticing the yellow group trailing behind.

No comments:

Post a Comment