Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Steering Behaviors●What are Steering Behaviorsmeans of locomotion for autonomous agentsand robots.largely independentcan be combinedimprovisational and reactiveSteering Behaviors●What Steering Behaviors are NOTaction plansearchingpuzzle-solvinganything needed global informationSteering Behaviorsprimarily based on: Steering Behaviors For Autonomous Charactersby: Craig ReynoldsPresented by: Kevin M. KellySteering BehaviorsFlocking●Designed for Computer Animation (Reynolds '87)Flocking●Steering behaviors grew from “Flocking”●Craig Reynolds “Boids”Three separate steering behaviors combined●Separation●Cohesion●AlignmentCombined by simple vector addition●Flocking Demo: http://www.red3d.com/cwr/boids/Current Uses●Now used for many purposesComputer animation in moviesVideo gamesSimulationsRoboticsSteering Behaviors●Architecture from theInternational GameDevelopers AssociationParts of the Steering Architecture●Steering World Interfaceprovides information about the world●Steering Behaviorsthe behaviors themselves – each output independent steering goals●Arbitratorcombine the steering goals (this is very difficult)●ActuatorActual movement code – specific to the applicationArbitrator●The arbitrator is the most difficult part of using steering behaviors●Flocking used the simplest form of arbitratorsimple combination●Other types of arbitrationPrioritized (much like Brooks's actuated control)Heuristic●application dependentReverse●select best one of eachRound Robin●each gets a turnVehicle Model●Simple Vehicle Model (could be 2D or 3D)a “Mass Point”Has the following attributes●mass●position●velocity●max_force●max_speed●orientationupdated at each time stepVehicle Model●Steering behaviors give a force or acceleration vector●Could extrapolate to more complex vehiclesExamples (single behavior)●Seek●Flee●Evasion●Pursuit●Wander●Arrival●Obstacle Avoidance●Containment●Wall Following●Path FollowingSeek and Flee●http://www.red3d.com/cwr/steer/SeekFlee.htmlPursue and Evade●http://www.red3d.com/cwr/steer/PursueEvade.htmlWander●http://www.red3d.com/cwr/steer/Wander.htmlArrival●http://www.red3d.com/cwr/steer/Arrival.htmlObstacle Avoidance●http://www.red3d.com/cwr/steer/Obstacle.htmlContainment and Wall Following●http://www.red3d.com/cwr/steer/Containment.html●http://www.red3d.com/cwr/steer/Wall.htmlPath Following●http://www.red3d.com/cwr/steer/PathFollow.htmlExamples (combined behaviors)●Crowd Path Following●Leader Following●Unaligned collision avoidance●Queuing●FlockingCrowd Path Following●Weighted Combination ofPath FollowingSeparation●http://www.red3d.com/cwr/steer/CrowdPath.htmlPath FollowingSeparationLeader Following●Combination ofSeparationArrival (point slightly behind the leader)●http://www.red3d.com/cwr/steer/LeaderFollow.htmlArrivalSeparationUnaligned Collision Avoidance●Combination ofContainmentUnaligned Collision Avoidance●http://www.red3d.com/cwr/steer/Unaligned.htmlContainmentUnaligned Collision AvoidanceQueuing●Combination ofSeekContainmentSeparation●http://www.red3d.com/cwr/steer/Doorway.htmlContainmentSeparationSeekFlocking●Combination ofAlignmentCohesionSeparation●http://www.red3d.com/cwr/boids/CohesionSeparationAlignmentConclusions●Simple behaviors can create realistic looking effects●Looks more natural than fully planned●Easy combination created for Flocking does not work with
View Full Document