12 - More Steering. from Milligan, "Artificial Intelligence for Games", Morgan Kaufman, 2006
|
|
- Martin Campbell
- 5 years ago
- Views:
Transcription
1 12 - More Steering from Milligan, "Artificial Intelligence for Games", Morgan Kaufman, 2006
2 Separation commonly used in crowds, when all characters moving in roughly the same direction (repulsion steering) not good for crossing paths, use collision avoidance for that mostly has zero output, unless another character closer than some threshold distances similar to evade, but strength is related to distance inverse linear law strength = maxacceleration * (threshold - distance) / threshold inverse square law strength = min ( k * distance * distance, maxacceleration ) for multiple other characters, calculate each steering output and sum O(n) for simple list of characters O(log n) for a tree-based spatial index used in combination with other behaviors
3 Collision Avoidance with lots of characters in the same space with crossing trajectories, need constant collision avoidance a simple approach : use a variation of Evade or Separation, but only engage if target is within a code in front of the character if multiple characters in cone: find their average and evade that OR, find the closest and evade it simple approach doesn't consider if collision will occur, just evades anything nearby simple approach also misses when two characters are mutually out-of-cone until the moment of impact ignored character to avoid half-angle of the cone in-cone, but no collision out -of-cone, but colliding
4 Collision Avoidance a better approach: check if characters will collide at current velocities find point of closest approach test if distance to closest approach within threshold closest approach not necessarily where paths cross, as velocities may differ t_closest = time of closest approach = (dp * dv) / dv 2 dp = relative position = target.position - character.position dv = relative velocity = target.velocity - character.velocity if t_closest < 0: already moving away, no action needed else: find position at time of closest approach: p_char_closest = character.position + character.velocity * t_closest p_target_closest = target.position + target.velocity * t_closest use these to drive Evade for groups, best to use for closest target only
5 Obstacle and Wall Avoidance Can use collision avoidance to avoid obstacles by assuming they are spherical stay outside of sphere's radius okay for small objects, no good for walls. Better: Cast one or more finite-length rays from character, find intersection with wall Use the intersection point and wall normal to compute a target location at a fixed distance from the surface, and Seek it. target
6 Collision detection problems single ray-cast usually not good, triple rays better configurations: parallel side rays central ray with short whiskers whiskers only single only
7 The Corner Trap can occur near corners of objects, esp. if acute angle first one ray detects collision, turns character away then the other ray is colliding, turning character the other way result: character homes-in on corner and gets stuck there possible solution: use a wider fan of collision rays and adaptive fan angles. If moving successfully without collision, narrow the fan angle (move through tight passages) If collide, widen the fan angle. If many collisions, widening fan will tend to avoid corner trap. best but expensive solution: test for collisions with the volume swept out by character on predicted path compromise that mostly works: use adaptive fan angles with one long ray and two shorter whiskers
8 Family Tree of Steering Behaviors Align LookWhereYoureGoing Face Wander Seek/ Flee Pursue/Evade Path Following Obscacle Avoidance VelocityMatch Arrive ForceField Separation
9 Combining Steering Behaviors Higher level tools like pathfinding can select final goal. With more than one steering behavior active at once, we can simultaneously: reach goal avoid collisions with other characters tend towards safety avoid bumping into walls grab powerups etc
10 Blending and Arbitration keep a portfolio of steering behaviors execute them all blending: combine with weights or priorities arbitration: select one or more steering behaviors to have complete control in practice, combine both
11 Weighted Blending simple ex) rioting crowd: blend of "Arrive at center of mob" and "maintain Separation from nearby rioters" assign a weight to each behavior evaluate each in isolation compute weighted linear sum of results clamp to maximum acceleration. sum = (0,0) for i in behaviors: sum := weight[i] * steeringoutput[i] if length(sum) > maxacceleration: clamp picking weights is tricky guesswork, or can use neural nets, genetic algorithms, etc can create "flocking" behavior, as in Craig Reynold's "boids" (see Millington's example program): separation - move away from boids that are too close alignment and velocity matching - match direction and velocity of neighbors cohesion - move toward the center of the flock
12 Problems with blended steering getting stuck - esp in cluttered environments equilibrium - two behaviors cancel each other out: no motion (trapped at an equilibrium point) unstable equilibrium - small errors accumulate to break equilibrium stable equilibrium - a "basin of attraction" pulls character into equilibrium with no escape enemy Flee enemy Flee enemy Seek target Seek target enemy target Flee enemy target basin of attraction enemy
13 Problems with blended steering constrained environments blending works best in open environments 3d motion outdoors has fewest contraints indoors, cluttered is problematic can't simultaneously avoid obstacle and chase can miss narrow doorways resulting acceleration collision ray route of character result wall Pursue Pursued enemy wall avoidance Pursued enemy
14 Problems with blended steering nearsightedness "greedy" nature of steering algorithms no way to augment steering, will always miss problems beyond its "horizon" best to integrate pathfinding into steering collision ray route of character Pursued enemy
15 Priorities Some behaviors don't always produce an acceleration (Arrive, CollisionAvoidance, Separation) Some always do (Seek, Evade) When blended, some can dilute the effects of others. Consider blending Seek and CollisionAvoidance: Seek is always at maximum acceleration if blended with CollisionAvoidance, the avoidance behavior is never more than 50% of total may not be enough to escape trouble
16 Priorities Replace weights with priorities: divide steering behaviors into groups of blended steering behaviors assign a priority to each group consider each group in priority order if group's output less than a threshold, skip it, and consider next highest priority group when a group with output above threshold is found, use it as steering behavior.
17 Priorities Ex) Groups in prority order: collision and wall avoidance group, separation group, pursuit group when near a collision, collision group's output is strong and is used, taking over to avoid collision. when no collisions, try to keep separate from neighbors if in the clear, no collision or separation output, use Pursue output Can add a Wander as lowest priority group to avoid some equilibria, but can still be caught in large basins
Graphs, Search, Pathfinding (behavior involving where to go) Steering, Flocking, Formations (behavior involving how to go)
Graphs, Search, Pathfinding (behavior involving where to go) Steering, Flocking, Formations (behavior involving how to go) Class N-2 1. What are some benefits of path networks? 2. Cons of path networks?
More informationCS 387/680: GAME AI MOVEMENT
CS 387/680: GAME AI MOVEMENT 4/5/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Reminders Check Blackboard site for
More informationDM842 Computer Game Programming: AI. Lecture 2. Movement Behaviors. Marco Chiarandini
DM842 Computer Game Programming: AI Lecture 2 Movement Behaviors Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. Pursue and Evade Face Looking
More informationCS 480: GAME AI STEERING BEHAVIORS. 4/12/2012 Santiago Ontañón
CS 480: GAME AI STEERING BEHAVIORS 4/12/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course regularly Also:
More informationTraffic/Flocking/Crowd AI. Gregory Miranda
Traffic/Flocking/Crowd AI Gregory Miranda Introduction What is Flocking? Coordinated animal motion such as bird flocks and fish schools Initially described by Craig Reynolds Created boids in 1986, generic
More informationSteering 1. from Millington, "Artificial Intelligence for Games", MKP 2006.
Steering 1 from Millington, "Artificial Intelligence for Games", MKP 2006. Movement Algorithms kinematic movement computes a velocity for the object based on current position no acceleration dynamic movement
More informationDM842 Computer Game Programming: AI. Lecture 3. Movement Behaviors. Marco Chiarandini
DM842 Computer Game Programming: AI Lecture 3 Movement Behaviors Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Combined Steering Blending Priorities
More informationCS 387/680: GAME AI MOVEMENT
CS 387/680: GAME AI MOVEMENT 4/7/2014 Instructor: Santiago Ontañón santi@cs.drexel.edu TA: Alberto Uriarte office hours: Tuesday 4-6pm, Cyber Learning Center Class website: https://www.cs.drexel.edu/~santi/teaching/2014/cs387-680/intro.html
More informationUnder the Guidance of
Presented by Linga Venkatesh (10305085) Deepak Jayanth (10305913) Under the Guidance of Prof. Parag Chaudhuri Flocking/Swarming/Schooling Nature Phenomenon Collective Behaviour by animals of same size
More informationSTEERING BEHAVIORS MOTIVATION REQUIREMENTS FOR MOTION CONTROL MOTIVATION BOIDS & FLOCKING MODEL STEERING BEHAVIORS - BASICS
Přednáška byla podpořena v rámci projektu OPPA CZ.2.17/3.1.00/33274 financovaného Evropským sociálním fondem a rozpočtem hlavního města Prahy. Evropský sociální fond Praha & EU: investujeme do Vaší budoucnosti
More informationSTEERING BEHAVIORS. Markéta Popelová, marketa.popelova [zavináč] matfyz.cz. 2012, Umělé Bytosti, MFF UK
STEERING BEHAVIORS Markéta Popelová, marketa.popelova [zavináč] matfyz.cz 2012, Umělé Bytosti, MFF UK MOTIVATION MOTIVATION REQUIREMENTS FOR MOTION CONTROL Responding to dynamic environment Avoiding obstacles
More informationParticle Systems. Typical Time Step. Particle Generation. Controlling Groups of Objects: Particle Systems. Flocks and Schools
Particle Systems Controlling Groups of Objects: Particle Systems Flocks and Schools A complex, fuzzy system represented by a large collection of individual elements. Each element has simple behavior and
More informationCollision Avoidance with Unity3d
Collision Avoidance with Unity3d Jassiem Ifill September 12, 2013 Abstract The primary goal of the research presented in this paper is to achieve natural crowd simulation and collision avoidance within
More informationSwarm Intelligence Particle Swarm Optimization. Erick Luerken 13.Feb.2006 CS 790R, University of Nevada, Reno
Swarm Intelligence Particle Swarm Optimization Erick Luerken 13.Feb.2006 CS 790R, University of Nevada, Reno Motivation Discuss assigned literature in terms of complexity leading to actual applications
More informationEfficient Crowd Simulation for Mobile Games
24 Efficient Crowd Simulation for Mobile Games Graham Pentheny 24.1 Introduction 24.2 Grid 24.3 Flow Field 24.4 Generating the Flow Field 24.5 Units 24.6 Adjusting Unit Movement Values 24.7 Mobile Limitations
More informationCS 378: Computer Game Technology
CS 378: Computer Game Technology Dynamic Path Planning, Flocking Spring 2012 University of Texas at Austin CS 378 Game Technology Don Fussell Dynamic Path Planning! What happens when the environment changes
More informationCrowd simulation. Taku Komura
Crowd simulation Taku Komura Animating Crowds We have been going through methods to simulate individual characters What if we want to simulate the movement of crowds? Pedestrians in the streets Flock of
More informationLECTURE 16: SWARM INTELLIGENCE 2 / PARTICLE SWARM OPTIMIZATION 2
15-382 COLLECTIVE INTELLIGENCE - S18 LECTURE 16: SWARM INTELLIGENCE 2 / PARTICLE SWARM OPTIMIZATION 2 INSTRUCTOR: GIANNI A. DI CARO BACKGROUND: REYNOLDS BOIDS Reynolds created a model of coordinated animal
More informationPARTICLE SWARM OPTIMIZATION (PSO)
PARTICLE SWARM OPTIMIZATION (PSO) J. Kennedy and R. Eberhart, Particle Swarm Optimization. Proceedings of the Fourth IEEE Int. Conference on Neural Networks, 1995. A population based optimization technique
More informationFormations in flow fields
Formations in flow fields Rick van Meer June 11, 2015 1 Introduction Pathfinding and formations (i.e. an arrangement of agents) are both a part of artificial intelligence and can be used in games. However,
More informationthe gamedesigninitiative at cornell university Lecture 20 Pathfinding
Lecture 20 Take way for Today What are primary goals for pathfinding? Identify advantages/disadvantages of * In what situations does * fail (or look bad)? What can we do to fix se problems? Why combine
More informationRobotic Behaviors. Potential Field Methods
Robotic Behaviors Potential field techniques - trajectory generation - closed feedback-loop control Design of variety of behaviors - motivated by potential field based approach steering behaviors Closed
More informationCS 231. Crowd Simulation. Outline. Introduction to Crowd Simulation. Flocking Social Forces 2D Cellular Automaton Continuum Crowds
CS 231 Crowd Simulation Outline Introduction to Crowd Simulation Fields of Study & Applications Visualization vs. Realism Microscopic vs. Macroscopic Flocking Social Forces 2D Cellular Automaton Continuum
More informationFlowmap Generator Reference
Flowmap Generator Reference Table of Contents Flowmap Overview... 3 What is a flowmap?... 3 Using a flowmap in a shader... 4 Performance... 4 Creating flowmaps by hand... 4 Creating flowmaps using Flowmap
More informationCS 354 R Game Technology
CS 354 R Game Technology Particles and Flocking Behavior Fall 2017 Particle Effects 2 General Particle Systems Objects are considered point masses with orientation Simple rules control how the particles
More informationComplex behavior emergent from simpler ones
Reactive Paradigm: Basics Based on ethology Vertical decomposition, as opposed to horizontal decomposition of hierarchical model Primitive behaviors at bottom Higher behaviors at top Each layer has independent
More informationProgramming Game Al by Example
Programming Game Al by Example Mat Buckland Wordware Publishing, Inc. Contents Foreword Acknowledgments Introduction xiii xvii xix Chapter 7 A Math and Physics Primer 1 Mathematics 1 Cartesian Coordinates
More information6.141: Robotics systems and science Lecture 10: Implementing Motion Planning
6.141: Robotics systems and science Lecture 10: Implementing Motion Planning Lecture Notes Prepared by N. Roy and D. Rus EECS/MIT Spring 2011 Reading: Chapter 3, and Craig: Robotics http://courses.csail.mit.edu/6.141/!
More informationMovement in 3D Path Finding
DM842 Computer Game Programming: AI Lecture 4 Movement in 3D Path Finding Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Movement in 3D 2. Pathfinding
More informationCognitive Robotics Robot Motion Planning Matteo Matteucci
Cognitive Robotics Robot Motion Planning Robot Motion Planning eminently necessary since, by definition, a robot accomplishes tasks by moving in the real world. J.-C. Latombe (1991) Robot Motion Planning
More informationGame Programming. Bing-Yu Chen National Taiwan University
Game Programming Bing-Yu Chen National Taiwan University Game AI Search Path Finding Finite State Machines Steering Behavior 1 Search Blind search Breadth-first search Depth-first search Heuristic search
More information403 Poyntz Avenue, Suite B Manhattan, KS USA Technical Reference
403 Poyntz Avenue, Suite B Manhattan, KS 66502 USA +1.785.770.8511 www.thunderheadeng.com Technical Reference Pathfinder 2014 Disclaimer Thunderhead Engineering makes no warranty, expressed or implied,
More informationStable Trajectory Design for Highly Constrained Environments using Receding Horizon Control
Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control Yoshiaki Kuwata and Jonathan P. How Space Systems Laboratory Massachusetts Institute of Technology {kuwata,jhow}@mit.edu
More informationRobot Motion Control Matteo Matteucci
Robot Motion Control Open loop control A mobile robot is meant to move from one place to another Pre-compute a smooth trajectory based on motion segments (e.g., line and circle segments) from start to
More informationConfiguration Space of a Robot
Robot Path Planning Overview: 1. Visibility Graphs 2. Voronoi Graphs 3. Potential Fields 4. Sampling-Based Planners PRM: Probabilistic Roadmap Methods RRTs: Rapidly-exploring Random Trees Configuration
More informationAnnouncements. Written Assignment2 is out, due March 8 Graded Programming Assignment2 next Tuesday
Announcements Written Assignment2 is out, due March 8 Graded Programming Assignment2 next Tuesday 1 Spatial Data Structures Hierarchical Bounding Volumes Grids Octrees BSP Trees 11/7/02 Speeding Up Computations
More informationMaster s Thesis. Animal Stampede Simulation
Master s Thesis Animal Stampede Simulation Akila Lakshminarayanan Brian Tran MSc Computer Animation and Visual Effects, NCCA 2011-2012 Abstract Large crowd scenes with humans and animals are abundant in
More informationHuman Augmentation in Teleoperation of Arm Manipulators in an Environment with Obstacles
Human Augmentation in Teleoperation of Arm Manipulators in an Environment with Obstacles I. Ivanisevic and V. Lumelsky Robotics Lab, University of Wisconsin-Madison Madison, Wisconsin 53706, USA iigor@cs.wisc.edu
More informationz θ 1 l 2 θ 2 l 1 l 3 θ 3 θ 4 θ 5 θ 6
Human Augmentation in Teleoperation of Arm Manipulators in an Environment with Obstacles Λ I. Ivanisevic and V. Lumelsky Robotics Lab, University of Wisconsin-Madison Madison, Wisconsin 53706, USA iigor@cs.wisc.edu
More informationIntroduction. Autonomous Movement. Outline. Craig Reynolds Website: The Steering Model. The Steering Model Example 3/31/2016
Introduction Autonomous Movement IMGD 4000 With material from: Millington and Funge, Artificial Intelligence for Games, Morgan Kaufmann 2009 (Chapter 3), Buckland, Programming Game AI by Example, Wordware
More informationSimulating Group Formations Using RVO
Simulating Group Formations Using RVO Martin Funkquist martinfu@kth.se Supervisor: Christopher Peters Staffan Sandberg stsand@kth.se May 25, 2016 Figure 1: From left to right. First figure displays a real
More informationFast Local Planner for Autonomous Helicopter
Fast Local Planner for Autonomous Helicopter Alexander Washburn talexan@seas.upenn.edu Faculty advisor: Maxim Likhachev April 22, 2008 Abstract: One challenge of autonomous flight is creating a system
More informationHierarchical Clustering 4/5/17
Hierarchical Clustering 4/5/17 Hypothesis Space Continuous inputs Output is a binary tree with data points as leaves. Useful for explaining the training data. Not useful for making new predictions. Direction
More information11 Behavioural Animation. Chapter 11. Behavioural Animation. Department of Computer Science and Engineering 11-1
Chapter 11 Behavioural Animation 11-1 Behavioral Animation Knowing the environment Aggregate behavior Primitive behavior Intelligent behavior Crowd management 11-2 Behavioral Animation 11-3 Knowing the
More informationSimulation: Particle Systems
Simulation: Particle Systems Course web page: http://goo.gl/eb3aa February 28, 2012 Lecture 5 Particle Systems Definition: Simulation of a set of similar, moving agents in a larger environment Scale usually
More informationNon-Homogeneous Swarms vs. MDP s A Comparison of Path Finding Under Uncertainty
Non-Homogeneous Swarms vs. MDP s A Comparison of Path Finding Under Uncertainty Michael Comstock December 6, 2012 1 Introduction This paper presents a comparison of two different machine learning systems
More informationLesson 1: Introduction to Pro/MECHANICA Motion
Lesson 1: Introduction to Pro/MECHANICA Motion 1.1 Overview of the Lesson The purpose of this lesson is to provide you with a brief overview of Pro/MECHANICA Motion, also called Motion in this book. Motion
More informationHierarchical Impostors for the Flocking Algorithm in 3D
Volume 21 (2002), number 4 pp. 723 731 COMPUTER GRAPHICS forum Hierarchical Impostors for the Flocking Algorithm in 3D Noel O Hara Fruition Technologies Ltd, Dublin, Ireland Abstract The availability of
More informationARTIFICIAL INTELLIGENCE: SITUATIONAL AWARENESS
ARTIFICIAL INTELLIGENCE: SITUATIONAL AWARENESS So first of all before we start, we have to ask our self: What s is situational awareness exactly. A Quick google search reveals that: WHAT IS SITUATIONAL
More informationAI for Games Movement Behaviors
DM842 Computer Game Programming: AI Lecture 1 AI for Games Movement Behaviors Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 3. 4. Seeking Wandering
More informationClustering Color/Intensity. Group together pixels of similar color/intensity.
Clustering Color/Intensity Group together pixels of similar color/intensity. Agglomerative Clustering Cluster = connected pixels with similar color. Optimal decomposition may be hard. For example, find
More informationCharacter AI: Sensing & Perception
Lecture 22 Character AI: Take Away for Today Sensing as primary bottleneck Why is sensing so problematic? What types of things can we do to improve it? Optimized sense computation Can we improve sense
More informationPath Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:
Marcello Restelli Dipartimento di Elettronica e Informazione Politecnico di Milano email: restelli@elet.polimi.it tel: 02 2399 3470 Path Planning Robotica for Computer Engineering students A.A. 2006/2007
More informationVehicle Localization. Hannah Rae Kerner 21 April 2015
Vehicle Localization Hannah Rae Kerner 21 April 2015 Spotted in Mtn View: Google Car Why precision localization? in order for a robot to follow a road, it needs to know where the road is to stay in a particular
More informationIntelligent Control System for Collection, Survival, and Mapping
Intelligent Control System for Collection, Survival, and Mapping Michael Silverman Department of Computer Science University of Rochester msilver3@mail.rochester.edu March 10, 2006 Abstract To implement
More informationAdvanced Robotics Path Planning & Navigation
Advanced Robotics Path Planning & Navigation 1 Agenda Motivation Basic Definitions Configuration Space Global Planning Local Planning Obstacle Avoidance ROS Navigation Stack 2 Literature Choset, Lynch,
More informationSuper Assembling Arms
Super Assembling Arms Yun Jiang, Nan Xiao, and Hanpin Yan {yj229, nx27, hy95}@cornell.edu Abstract Although there are more and more things personal robots can do for us at home, they are unable to accomplish
More informationimproving raytracing speed
ray tracing II computer graphics ray tracing II 2006 fabio pellacini 1 improving raytracing speed computer graphics ray tracing II 2006 fabio pellacini 2 raytracing computational complexity ray-scene intersection
More informationMath for Gameplay / AI. John O Brien Senior Gameplay Programmer Insomniac Games, Inc
Math for Gameplay / AI John O Brien Senior Gameplay Programmer Insomniac Games, Inc jobrien@insomniacgames.com jobrien@nc.rr.com Overview Basic Object Intersection Tests Real gameplay example(s) AI-specific
More informationPathfinding. Artificial Intelligence for gaming
Pathfinding Artificial Intelligence for gaming Pathfinding Group AI Execution Management Strategy World Inter face Character AI Decision Making Movement Pathfinding Animation Physics Pathfinding Graphs
More informationRapid Simultaneous Learning of Multiple Behaviours with a Mobile Robot
Rapid Simultaneous Learning of Multiple Behaviours with a Mobile Robot Koren Ward School of Information Technology and Computer Science University of Wollongong koren@uow.edu.au www.uow.edu.au/~koren Abstract
More informationCluster Subgraphs Example, With Tile Graphs. Alternatives. Cluster Subgraphs. Cluster Subgraphs Example, With Tile Graphs
Alternatives Cluster Subgraphs Example, With Tile Graphs Replace a cluster with a small subgraph instead of a single node. e.g. represent entry/exit points run path-finding on the abstract graph to find
More informationCS248. Game Mechanics
CS248 Game Mechanics INTRODUCTION TOM WANG 2007 BS/MS CS KEY GAME MECHANICS * * * * * WORLD BUILDING CONTROLS CAMERA AI PERFORMANCE WORLD BUILDING WORLD BUILDING Set the atmosphere and tone of the game.
More informationWhen using Flocking with network rendering (LWSN, for instance) you must bake your Flocking results.
Flocking About Flocking LightWave s flocking system is based on 3D computer models of coordinated animal motion, things like flocks of birds, herds of animals or schools of fish. It can be used with LightWave
More informationIntersection Acceleration
Advanced Computer Graphics Intersection Acceleration Matthias Teschner Computer Science Department University of Freiburg Outline introduction bounding volume hierarchies uniform grids kd-trees octrees
More informationAlgorithms. Algorithms GEOMETRIC APPLICATIONS OF BSTS. 1d range search line segment intersection kd trees interval search trees rectangle intersection
Algorithms ROBERT SEDGEWICK KEVIN WAYNE GEOMETRIC APPLICATIONS OF BSTS Algorithms F O U R T H E D I T I O N ROBERT SEDGEWICK KEVIN WAYNE 1d range search line segment intersection kd trees interval search
More informationAlgorithms. Algorithms GEOMETRIC APPLICATIONS OF BSTS. 1d range search line segment intersection kd trees interval search trees rectangle intersection
Algorithms ROBERT SEDGEWICK KEVIN WAYNE GEOMETRIC APPLICATIONS OF BSTS Algorithms F O U R T H E D I T I O N ROBERT SEDGEWICK KEVIN WAYNE 1d range search line segment intersection kd trees interval search
More informationAlgorithms. Algorithms GEOMETRIC APPLICATIONS OF BSTS. 1d range search line segment intersection kd trees interval search trees rectangle intersection
Algorithms ROBERT SEDGEWICK KEVIN WAYNE GEOMETRIC APPLICATIONS OF BSTS Algorithms F O U R T H E D I T I O N ROBERT SEDGEWICK KEVIN WAYNE 1d range search line segment intersection kd trees interval search
More informationAdvancED ActionScript 3.0 Animation
AdvancED ActionScript 3.0 Animation Keith Peters an Apress* company About the Author About the Technical Reviewer About the Cover Image Designer Acknowledgments xiii xv xvii xix Chapter 1 Advanced Collision
More informationSketch-based Interface for Crowd Animation
Sketch-based Interface for Crowd Animation Masaki Oshita 1, Yusuke Ogiwara 1 1 Kyushu Institute of Technology 680-4 Kawazu, Iizuka, Fukuoka, 820-8502, Japan oshita@ces.kyutech.ac.p ogiwara@cg.ces.kyutech.ac.p
More informationGame AI: The set of algorithms, representations, tools, and tricks that support the creation and management of real-time digital experiences
Game AI: The set of algorithms, representations, tools, and tricks that support the creation and management of real-time digital experiences : A rule of thumb, simplification, or educated guess that reduces
More informationTopic 10: Scene Management, Particle Systems and Normal Mapping. CITS4242: Game Design and Multimedia
CITS4242: Game Design and Multimedia Topic 10: Scene Management, Particle Systems and Normal Mapping Scene Management Scene management means keeping track of all objects in a scene. - In particular, keeping
More informationAmbien Occlusion. Lighting: Ambient Light Sources. Lighting: Ambient Light Sources. Summary
Summary Ambien Occlusion Kadi Bouatouch IRISA Email: kadi@irisa.fr 1. Lighting 2. Definition 3. Computing the ambient occlusion 4. Ambient occlusion fields 5. Dynamic ambient occlusion 1 2 Lighting: Ambient
More informationECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space
ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space Lecturer: Nikolay Atanasov: natanasov@ucsd.edu Teaching Assistants: Tianyu Wang: tiw161@eng.ucsd.edu Yongxi Lu: yol070@eng.ucsd.edu
More informationCS188 Fall 2018 Section 2: Graph Search + CSPs
CS88 Fall 08 Section : Graph Search + CSPs Search and Heuristics Imagine a car-like agent wishes to exit a maze like the one shown below: The agent is directional and at all times faces some direction
More informationSpatial Data Structures
15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) April 1, 2003 [Angel 9.10] Frank Pfenning Carnegie
More informationSafe Prediction-Based Local Path Planning using Obstacle Probability Sections
Slide 1 Safe Prediction-Based Local Path Planning using Obstacle Probability Sections Tanja Hebecker and Frank Ortmeier Chair of Software Engineering, Otto-von-Guericke University of Magdeburg, Germany
More information6.141: Robotics systems and science Lecture 10: Motion Planning III
6.141: Robotics systems and science Lecture 10: Motion Planning III Lecture Notes Prepared by N. Roy and D. Rus EECS/MIT Spring 2012 Reading: Chapter 3, and Craig: Robotics http://courses.csail.mit.edu/6.141/!
More informationMotion Planning. Howie CHoset
Motion Planning Howie CHoset What is Motion Planning? What is Motion Planning? Determining where to go Overview The Basics Motion Planning Statement The World and Robot Configuration Space Metrics Algorithms
More informationNavigation Mesh based Pathfinding for large crowds
Navigation Mesh based Pathfinding for large crowds Robert Lindner Introduction This paper is about methods that can be used to get as much performance as possible while simulating the pathfinding of large
More informationObstacle Avoidance Project: Final Report
ERTS: Embedded & Real Time System Version: 0.0.1 Date: December 19, 2008 Purpose: A report on P545 project: Obstacle Avoidance. This document serves as report for P545 class project on obstacle avoidance
More informationCylinder Collision. Reddy Sambavaram 9/07/2007
Cylinder Collision Reddy Sambavaram 9/07/2007 Cylinder Collision PART 1: collision algorithms. PART 2: What did it mean to add a new collision primitive to the engine and tools? What had to change? What
More informationSpatial Data Structures
15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) March 28, 2002 [Angel 8.9] Frank Pfenning Carnegie
More informationCollision processing
Collision processing Different types of collisions Collision of a simulated deformable structure with a kinematic structure (easier) Collision with a rigid moving object, the ground, etc. Collision object
More informationCCGPS UNIT 2 Semester 1 ANALYTIC GEOMETRY Page 1 of 15. Right Triangle Geometry Name:
GPS UNIT 2 Semester 1 ANALYTI GEOMETRY Page 1 of 15 Right Triangle Geometry Name: Date: Define trigonometric ratios and solve problems involving right triangles. M9-12.G.SRT.6 Understand that by similarity,
More informationSampling-Based Motion Planning
Sampling-Based Motion Planning Pieter Abbeel UC Berkeley EECS Many images from Lavalle, Planning Algorithms Motion Planning Problem Given start state x S, goal state x G Asked for: a sequence of control
More informationSpatial Data Structures
Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) [Angel 9.10] Outline Ray tracing review what rays matter? Ray tracing speedup faster
More informationLocal Search Methods. CS 188: Artificial Intelligence Fall Announcements. Hill Climbing. Hill Climbing Diagram. Today
CS 188: Artificial Intelligence Fall 2006 Lecture 5: Robot Motion Planning 9/14/2006 Local Search Methods Queue-based algorithms keep fallback options (backtracking) Local search: improve what you have
More informationEfficient Block Based Motion Estimation
Efficient Block Based Motion Estimation Deepak Turaga Mohamed Alkanhal Tsuhan Chen Overview of Talk Motion Estimation Sub-Optimal Search Strategies Hierarchical Search Methods Spatial Correlation Based
More informationIntegrating Physics into a Modern Game Engine. Object Collision. Various types of collision for an object:
Integrating Physics into a Modern Game Engine Object Collision Various types of collision for an object: Sphere Bounding box Convex hull based on rendered model List of convex hull(s) based on special
More informationEverything You Always Wanted To Know About Programming Behaviors But Were Afraid To Ask
Everything You Always Wanted To Know About Programming Behaviors But Were Afraid To Ask By Kevin Harrelson Machine Intelligence Lab University of Florida Spring, 1995 Overview Programming multiple behaviors
More informationAlgorithms. Algorithms GEOMETRIC APPLICATIONS OF BSTS. 1d range search kd trees line segment intersection interval search trees rectangle intersection
KdTree Next Assignment due /26 (Tuesday after Spring Break) This Thursday, precept will cover the assignment in detail using a great worksheet (thanks Maia!). Due two days after Spring break ends. Second
More informationSpatial Data Structures
CSCI 420 Computer Graphics Lecture 17 Spatial Data Structures Jernej Barbic University of Southern California Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees [Angel Ch. 8] 1 Ray Tracing Acceleration
More informationArtificial Intelligence
Artificial Intelligence Lecture 06 Sensor Systems Edirlei Soares de Lima Game AI Model Pathfinding Steering behaviours Finite state machines Automated planning Behaviour trees
More informationSteerFit: Automated Parameter Fitting for Steering Algorithms Supplementary Document
Eurographics/ ACM SIGGRAPH Symposium on Computer Animation (2014) Vladlen Koltun and Eftychios Sifakis (Editors) SteerFit: Automated Parameter Fitting for Steering Algorithms Supplementary Document Glen
More informationReview implementation of Stable Matching Survey of common running times. Turn in completed problem sets. Jan 18, 2019 Sprenkle - CSCI211
Objectives Review implementation of Stable Matching Survey of common running times Turn in completed problem sets Jan 18, 2019 Sprenkle - CSCI211 1 Review: Asymptotic Analysis of Gale-Shapley Alg Not explicitly
More informationFind the maximum value and minimum values of f(x) for x in [0, 4]. Graph f(x) to check your answers. ( answer)
Exercises 6.1 Ex 6.1.1 Let f(x) = { 1 + 4x x2 (x + 5)/2 for x 3 for x > 3 Find the maximum value and minimum values of f(x) for x in [0, 4]. Graph f(x) to check your answers. max at (2, 5), min at (0,
More informationSpatial Data Structures
CSCI 480 Computer Graphics Lecture 7 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids BSP Trees [Ch. 0.] March 8, 0 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s/
More informationProbabilistic Methods for Kinodynamic Path Planning
16.412/6.834J Cognitive Robotics February 7 th, 2005 Probabilistic Methods for Kinodynamic Path Planning Based on Past Student Lectures by: Paul Elliott, Aisha Walcott, Nathan Ickes and Stanislav Funiak
More informationMidterm Exam CS 184: Foundations of Computer Graphics page 1 of 11
Midterm Exam CS 184: Foundations of Computer Graphics page 1 of 11 Student Name: Class Account Username: Instructions: Read them carefully! The exam begins at 2:40pm and ends at 4:00pm. You must turn your
More information