Steering Behaviors What are Steering Behaviors means of
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 anything needed global information
Steering Behaviors primarily based on: Steering Behaviors For Autonomous Characters by: Craig Reynolds Presented by: Kevin M. Kelly
Steering Behaviors
Flocking ● Designed for Computer Animation (Reynolds '87)
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. red 3 d. com/cwr/boids/
Current Uses ● Now used for many purposes Computer animation in movies Video games Simulations Robotics
Steering Behaviors ● Architecture from the International Game Developers Association
Parts of the Steering Architecture ● Steering World Interface ● Steering Behaviors ● the behaviors themselves – each output independent steering goals Arbitrator ● provides information about the world combine the steering goals (this is very difficult) Actuator Actual movement code – specific to the application
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 ● Reverse ● application dependent select best one of each Round Robin ● each gets a turn
Vehicle Model ● Simple Vehicle Model (could be 2 D or 3 D) a “Mass Point” Has the following attributes ● ● ● mass position velocity max_force max_speed orientation updated at each time step
Vehicle Model ● ● Steering behaviors give a force or acceleration vector Could extrapolate to more complex vehicles
Examples (single behavior) ● ● ● ● ● Seek Flee Evasion Pursuit Wander Arrival Obstacle Avoidance Containment Wall Following Path Following
Seek and Flee ● http: //www. red 3 d. com/cwr/steer/Seek. Flee. html
Pursue and Evade ● http: //www. red 3 d. com/cwr/steer/Pursue. Evade. html
Wander ● http: //www. red 3 d. com/cwr/steer/Wander. html
Arrival ● http: //www. red 3 d. com/cwr/steer/Arrival. html
Obstacle Avoidance ● http: //www. red 3 d. com/cwr/steer/Obstacle. htm l
Containment and Wall Following ● ● http: //www. red 3 d. com/cwr/steer/Containment. html http: //www. red 3 d. com/cwr/steer/Wall. html
Path Following ● http: //www. red 3 d. com/cwr/steer/Path. Follow. h tml
Examples (combined behaviors) ● ● ● Crowd Path Following Leader Following Unaligned collision avoidance Queuing Flocking
Crowd Path Following ● Weighted Combination of ● Path Following Separation http: //www. red 3 d. com/cwr/steer/Crowd. Path. html Path Following Separation
Leader Following ● Combination of ● Separation Arrival (point slightly behind the leader) http: //www. red 3 d. com/cwr/steer/Leader. Follow. html Arrival Separation
Unaligned Collision Avoidance ● Combination of ● Containment Unaligned Collision Avoidance http: //www. red 3 d. com/cwr/steer/Unaligned. html Containment Unaligned Collision Avoidance
Queuing ● Combination of ● Seek Containment Separation http: //www. red 3 d. com/cwr/steer/Doorway. html Seek Separation Containment
Flocking ● Combination of ● Alignment Cohesion Separation http: //www. red 3 d. com/cwr/boids/ Separation Alignment Cohesion
Conclusions ● ● ● Simple behaviors can create realistic looking effects Looks more natural than fully planned Easy combination created for Flocking does not work with everything
- Slides: 27