Steering Behaviors

27
Steering Behaviors What are Steering Behaviors means of locomotion for autonomous agents and robots. largely independent can be combined improvisational and reactive

description

Steering Behaviors. What are Steering Behaviors means of locomotion for autonomous agents and robots. largely independent can be combined improvisational and reactive. Steering Behaviors. What Steering Behaviors are NOT action plan searching puzzle-solving - PowerPoint PPT Presentation

Transcript of Steering Behaviors

Page 1: Steering Behaviors

Steering Behaviors

● What are Steering Behaviors means of locomotion for autonomous agents

and robots. largely independent can be combined improvisational and reactive

Page 2: Steering Behaviors

Steering Behaviors

● What Steering Behaviors are NOT action plan searching puzzle-solving anything needed global information

Page 3: Steering Behaviors

Steering Behaviors

primarily based on: Steering Behaviors For Autonomous Characters

by: Craig Reynolds

Presented by: Kevin M. Kelly

Page 4: Steering Behaviors

Steering Behaviors

Page 5: Steering Behaviors

Flocking

● Designed for Computer Animation (Reynolds '87)

Page 6: Steering Behaviors

Flocking

● Steering behaviors grew from “Flocking”● Craig Reynolds “Boids”

Three separate steering behaviors combined● Separation● Cohesion● Alignment

Combined by simple vector addition● Flocking Demo:

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

Page 7: Steering Behaviors

Current Uses

● Now used for many purposes Computer animation in movies Video games Simulations Robotics

Page 8: Steering Behaviors

Steering Behaviors

● Architecture from theInternational GameDevelopers Association

Page 9: Steering Behaviors

Parts of the Steering Architecture

● Steering World Interface provides information about the world

● Steering Behaviors the behaviors themselves – each output

independent steering goals● Arbitrator

combine the steering goals (this is very difficult)● Actuator

Actual movement code – specific to the application

Page 10: Steering Behaviors

Arbitrator

● The arbitrator is the most difficult part of using steering behaviors

● Flocking used the simplest form of arbitrator simple combination

● Other types of arbitration Prioritized (much like Brooks's actuated control) Heuristic

● application dependent Reverse

● select best one of each Round Robin

● each gets a turn

Page 11: Steering Behaviors

Vehicle Model

● Simple Vehicle Model (could be 2D or 3D) a “Mass Point” Has the following attributes

● mass● position● velocity● max_force● max_speed● orientation

updated at each time step

Page 12: Steering Behaviors

Vehicle Model

● Steering behaviors give a force or acceleration vector

● Could extrapolate to more complex vehicles

Page 13: Steering Behaviors

Examples (single behavior)

● Seek● Flee● Evasion● Pursuit● Wander● Arrival● Obstacle Avoidance● Containment● Wall Following● Path Following

Page 14: Steering Behaviors

Seek and Flee

● http://www.red3d.com/cwr/steer/SeekFlee.html

Page 15: Steering Behaviors

Pursue and Evade

● http://www.red3d.com/cwr/steer/PursueEvade.html

Page 16: Steering Behaviors

Wander

● http://www.red3d.com/cwr/steer/Wander.html

Page 17: Steering Behaviors

Arrival

● http://www.red3d.com/cwr/steer/Arrival.html

Page 18: Steering Behaviors

Obstacle Avoidance

● http://www.red3d.com/cwr/steer/Obstacle.html

Page 19: Steering Behaviors

Containment and Wall Following

● http://www.red3d.com/cwr/steer/Containment.html

● http://www.red3d.com/cwr/steer/Wall.html

Page 20: Steering Behaviors

Path Following

● http://www.red3d.com/cwr/steer/PathFollow.html

Page 21: Steering Behaviors

Examples (combined behaviors)

● Crowd Path Following● Leader Following● Unaligned collision avoidance● Queuing● Flocking

Page 22: Steering Behaviors

Crowd Path Following

● Weighted Combination of Path Following Separation

● http://www.red3d.com/cwr/steer/CrowdPath.html

Path Following

Separation

Page 23: Steering Behaviors

Leader Following

● Combination of Separation Arrival (point slightly behind the leader)

● http://www.red3d.com/cwr/steer/LeaderFollow.html

Arrival

Separation

Page 24: Steering Behaviors

Unaligned Collision Avoidance

● Combination of Containment Unaligned Collision Avoidance

● http://www.red3d.com/cwr/steer/Unaligned.html

Containment

Unaligned Collision Avoidance

Page 25: Steering Behaviors

Queuing

● Combination of Seek Containment Separation

● http://www.red3d.com/cwr/steer/Doorway.html

Containment

SeparationSeek

Page 26: Steering Behaviors

Flocking

● Combination of Alignment Cohesion Separation

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

Cohesion

SeparationAlignment

Page 27: Steering Behaviors

Conclusions

● Simple behaviors can create realistic looking effects

● Looks more natural than fully planned● Easy combination created for Flocking does not

work with everything