Better Group Behaviors in Complex Environments using Global Roadmaps O. Burchan Bayazit, Jyh-Ming Lien and Nancy M. Amato Presented by Mohammad Irfan Rafiq 3/2/04 Using slides from Andreas Edlund(2003)
Motivation ● In previous techniques behavior only depended on the local environment ● resulted in simplistic navigation and planning capabilities
Goal and Approach ● More sophisticated flocking behaviors that supports global navigation and planning ● Integrated roadmap-based path planning with flocking techniques – provides global information in complex environments – adaptive roadmaps enable communication between agents – Associating rules with roadmap nodes and edges enables customization of behaviors
Introduction ● Flocks and crowds. ● Craig Raynolds' “boids”, SIGGRAPH'87 – Presented a distributed approach to simulate flocks of individuals.
So what's it used for? ● Artificial life. – Explores how various lifeforms behave in larger groups. ● Animation. – Used in movies and computer games. – Tim Burton's film “Batman Returns” used a modified version of Raynolds' boids to simulate a swarm of bats and a flock of penguins. – Stampede.mpeg Stampede.mpeg
This paper ● Behaviour: – Homing Behaviour. – Goal Searching Behaviour. – Narrow Passage Behaviour. – Shepherding Behaviour. ● Approaches: – Basic potential field. – Grid based A*. – Rule based roadmap.
Boids ● Individuals use “boid”-behaviour. – Avoid collision with flockmates. – Match velocity with flockmates. – Stay close to flockmates. Separation Alignment Cohesion
Global behaviour ● Global behaviour is simulated using a potential field. Two force vectors used: – Towards the goal. – Away from obstacles. Goal Boid
Various approaches ● Problem with local minima. ● Two methods to solve this problem: – Grid based A* search. ● Finds shortest paths and is relatively fast. ● However, we need to recompute a new path every time we have a new goal. – Roadmap. ● Precompute a roadmap for the environment and use it for all the queries.
Homing Behaviour ● Search the roadmap to find a path to the goal. ● Each node on this path is considered a subgoal. ● The flock is attracted to the next subgoal instead of the final goal.
Goal Searching Behaviour ● Environment is known, the goal is not. ● Objective is to find the goal and get everyone to it. ● Tries to duplicate ant behaviour.
Goal Searching Behaviour ● Achieve this behavior using a roadmap graph with adaptive edge weights ● Each individual member behaves independently and uses the roadmap to wander around ● probabilistically choose a roadmap edge to follow based on the weight of the edge ● edge weights represent preferences for the current task
Algorithm for Goal Searching for (each flock member) if (goal found) increase edge weights on path to goal
Algorithm for Goal Searching for (each flock member) if (goal found) increase edge weights on path to goal else if (dead end found) pop stack until a new branch is found decrease weight of edge corr. to popped node
Algorithm for Goal Searching for (each flock member) if (goal found) increase edge weights on path to goal else if (dead end found) pop stack until a new branch is found decrease weight of edge corr. to popped node else select a neighboring node of the current node push this node onto the stack endif endfor
Goal Searching Behaviour Ants Goal
Goal Searching Behaviour
Narrow Passage Behaviour ● A naive way is to simply use the homing behaviour. ● 2 goal nodes – one at the entrance and the other at the exit from the passage
Narrow Passage Behaviour ● Will result in congestion ● It would be better if the ants formed some kind of queue.
Narrow Passage Behaviour ● The paper proposes a “follow-the-leader” strategy: – Move to the passage using the homing behaviour. – The node at the entrance of the passage will have a rule e.g : WAIT FOR THE OTHERS, SELECT A LEADER FOLLOW THE LEADER – At the entrance node select the ant closest to the entrance and designate that ant the “leader”. The other ants are “followers”. – The leader's subgoal is the next node in the narrow path. – The other ants line up behind each other and uses the ant in front of him as his subgoal.
Narrow Passage Behaviour
● Select a leader.
Narrow Passage Behaviour ● Select the first follower.
Narrow Passage Behaviour ● Select the the next follower.
Narrow Passage Behaviour ● And so on...
Shepherding Behaviour ● The sheep have boid behaviour. ● The sheep dog repels the sheep by a certain amount of force. Goal Sheep Dog
Shepherding Behaviour ● The herd is continuously grouped into subgroups based on the sheep's positions. Subgroup Another subgroup
Shepherding Behaviour ● Dog always herds the subgroup that is the farthest away from the subgoal. Subgoal
Experimental Results ● Homing behaviour: – Basic versus grid based A* versus MAPRM. – 301 random obstacles. – 30 s runtime.
Experimental Results ● Homing behaviour:
Experimental Results ● Goal Searching behaviour: – 16 obstacles occupies 24 % of the environment. – 50 flock members. – Sensory radius: 5 m. – 80 x 100 m environment.
Experimental Results ● Narrow passage behaviour: – Naive homing behaviour versus follow-the-leader. – 50 flock members. – One narrow passage between two mountains.
Experimental Results ● Narrow passage behaviour:
Experimental Results ● Shepherd behaviour: – Grid based A* versus roadmap. – 30 sheep.
Experimental Results ● Shepherd behaviour: – Comparison between different strength of the sheep dog's repulsive force.
Conclusions and Criticisms ● Roadmap is better than basic and A* – Faster and few local minima. – Can be used in more complex environments ● Criticisms: – Algorithms poorly described.
Videos ● 2D – Homing 2D – Homing ● 3D – Homing 3D – Homing ● Goal Searching Goal Searching ● Narrow Passage Narrow Passage ● Shepherding Shepherding