By Austin Borden, Qihan Long, and Jim Pratt Racing Game A.I.

Slides:



Advertisements
Similar presentations
Transport Modelling Traffic Flow Theory 2.
Advertisements

Swarm-Based Traffic Simulation
Racing Vehicle Control
Assessing and Managing Risk
Driving In Urban Traffic
CHAPTER 6 BASIC MANEUVERS.
Managing Time and Space Vehicle Positioning. USE ANY OF THESE VISUAL TECHNIQUES 1.IPDE 2.The Smith System 3.Zone Control.
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
CSE 380 – Computer Game Programming Pathfinding AI
Chapter 14: Driving in City Traffic
Generated Waypoint Efficiency: The efficiency considered here is defined as follows: As can be seen from the graph, for the obstruction radius values (200,
Artificial Intelligence in Game Design Intelligent Decision Making and Decision Trees.
Artificial Intelligence in Game Design Introduction to Learning.
1 Reactive Pedestrian Path Following from Examples Ronald A. Metoyer Jessica K. Hodgins Presented by Stephen Allen.
Everyday Driving Skills
Chapter 9 Driving in Urban Traffic
Chapter 12 Driving in Adverse Conditions
DAMN : A Distributed Architecture for Mobile Navigation Julio K. Rosenblatt Presented By: Chris Miles.
Tactical AI in Real Time Supervisor: Aleks Jakulin Crew: Damir Arh, Matija Jekovec, Mitja Luštrek Gregor Leban, Martin Žnidaršič, Uroš Čibej Translation:
By Emily Cohen. Hit the Track! The first video racing game is said to be by Atari back in 1974 called Grand Track 10 Then: Now:
AI Architecture for Racing Vehicle Control November 3, 2004 Upmanyu Misra.
Expressway Driving. Characteristics of Expressway Driving Roadway Speed Interchanges No cross traffic Median Tollbooths Entrance/exit ramps Limited access.
Natural Laws and Driving
Chapter 1 Basic Car Control.
Execution Control with If/Else and Boolean Functions
Jorge Munoz, German Gutierrez, Araceli Sanchis Presented by: Itay Bittan.
Flow Fields Hao Li and Howard Hamilton. Motivation for Flow Fields Multiple AI algorithms in a computer game can produce conflicting results. The AI must.
lesson 3.3 STARTING, STOPPING, STEERING, AND TARGETING
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
Z-Town Technical Details Ben Trivett, Drew Switzer, Cameron Jett, Ryan Southard Department of Computer Science and Engineering The Ohio State University.
Speed Limits, Speed Control and Stopping Regulations.
MODULE 5 Objectives: Students will learn to recognize moderate risk environments, establish vehicle speed, manage intersections, hills, and passing maneuvers.
ARTIFICIAL CITY A TRAFFIC SIMULATION. INSPIRATION SimCity 4 CitiesXL
1 © 2006 Nokia pullola_ ppt / Extending Base Station Active Radio Link Set for Improved Uplink Scheduling Esa-Pekka Pullola Supervisor:
Limited Access Highways Driver Risk Prevention Curriculum State of New Hampshire Departments of Education and Safety Division of Program Support State.
Artificial Intelligence in Game Design Dynamic Path Planning Algorithms.
Artificial Intelligence in Game Design Content Generation.
Jumping, Climbing, and Tactical Reasoning Section 2.5 Tom Schaible CSE 497 – AI & Game Programming.
Games Development 2 Entity Update & Rendering CO3301 Week 2, Part 1.
Behavior Control of Virtual Vehicle
Lesson 3.3 STARTING, STOPPING, STEERING, AND TARGETING It takes considerable skill and practice to develop habits that will allow you to move the vehicle.
Driving in City Traffic.  This chapter discusses the skills necessary to navigate driving situations in city traffic.
 Introduction  What is Driverless Car ?  History  Component  Action  Technology  Advantages  Disadvantages  Conclusion  Reference.
ExitTOC TIMSNT Introduction 2003-Part 3 1 Introduction to TIMSNT-Part 3 Part 3: Menu Items Runs, Driver Directions, Stops, Routes and Options Use the buttons.
Artificial Intelligence in Game Design Lecture 8: Complex Steering Behaviors and Combining Behaviors.
Artificial Intelligence in Game Design Lecture 20: Hill Climbing and N-Grams.
CS320n –Visual Programming Execution Control with If / Else and Boolean Functions (Slides 6-2-1) Thanks to Wanda Dann, Steve Cooper, and Susan Rodger for.
ANASOFT VIATUS. Challenges Supply chain optimization is necessary for achieving competitive price of final products Synchronization and utilization of.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 1 Chapter 12 Path Planning.
Basic Maneuvers Chapter Six. Moving into Traffic Visibility: check oncoming traffic and the road. Notice others Time: is there enough time to move into.
Mafia II Bringing city to life Martin Brandstätter Jan Kratochvíl.
Section 3 Basic Maneuvering Tasks: Low ,
Adjusting to Urban Traffic Following & Meeting Traffic Managing Space in Urban Traffic Special Urban Situations.
Unit 5 VEHICLE HANDLING SAFE VEHICLE CONTROL
Using Unity as an Animator and Simulator for PaypyrusRT Models
Chapter 12 Driving in Adverse Conditions
Chasing Cars How to play Players are in pairs – “cars”
Performing Basic Vehicle Maneuvers
Unit 4: Vision and Space Management
Driving in City Traffic
Routing and Logistics Arc Routing 2018/11/19.
CIS 488/588 Bruce R. Maxim UM-Dearborn
Technical Implementations
Managing Time and Space Vehicle Positioning
CIS 488/588 Bruce R. Maxim UM-Dearborn
Information Processing:
Basic Driving Maneuvers Entering Traffic, Lane Changes, and Turning
Managing Time and Space Vehicle Positioning
Performing Basic Vehicle Maneuvers
Presentation transcript:

By Austin Borden, Qihan Long, and Jim Pratt Racing Game A.I.

Defining the Racetrack Sectors Define on-track areas Interfaces Leading and trailing edges of a sector

Interfaces Right/left edge Driving line nodes: Racing line Overtaking line

Overtaking When the A.I. car gets close to an opponent, it will change its driving line from racing to overtaking Multiple overtaking lines possible Burnout 1:15 Burnout

Sectors Stores its distance from start, to finish line, and to other vehicles. Path types Terrain types Walls Hairpin turns Brake-Throttle

Path Types Defines the type of route ahead Normal Shortcut Long route Weapon pick-up route Winding road Drag strip A.I. chooses route depending on current situation

Terrain Types Adds another variable for A.I. to deal with Rugged terrain Slick If a route is a shortcut and also rugged, only vehicles capable of traversing will choose this route Terrain Traversing

Racetrack Definition Conclusion The more information we provide, the less complex the A.I. system has to be

Racing A.I. Logic Vehicles do not follow driving lines exactly, only guided by them A.I. is supposed to emulate human input Done by creating an A.I. controller

Basic A.I. Framework Finite State Machines Allows decision making Fixed Time-Step Ensures that AI reacts quickly always Controls float dx; //-1.0 to 1.0 for left to right steering float dy;//-1.0 to 1.0 for max brake to max acceleration

Looking Ahead Cars look ahead for obstacles and turns The faster its moving, the further it looks to smooth path

Wall Avoidance Position is predicted by using the current velocity and scaled by how far in the future we are predicting (seconds) Correction amount is then applied to steering depending on which wall car is closest to If predicted position is outside of sector, brakes are applied

Hairpin Turns Looking too far ahead during a sharp turn will cause A.I. to cut corners To fix this, car looks for hairpin flags and shortens the look ahead distance if flags are found

Under/Over-Steer With simple physics cars can spin out due to over steering Cars can also miss turns due to under steering Based on sideways velocities of wheels

Steer Correction Depending on over or under-steering, a correction value is added to the current steer value Overcorrection is prevented by the understeer/oversteer range Colin McRae Dirt 2

Catch-Up Logic If A.I. is winning… Limit A.I.s top speed in proportion to distance leading Brake early for corners, accelerate slowly out of turns Take long routes/ unstable terrain routes Get worse weapons/ only target other A.I. Opposite can be used if A.I. is trailing Good way of making a race challenging for all skill levels Diddy Kong Racing 1:45 Diddy Kong Racing Shadows of the Empire 5:50 Shadows of the Empire

Catch Up Logic Case Study: Pure

The Rubber Band System

Racing Grouping in Pure

Difficulty Regulation Powerful itemsitems Intelligence modification Similar Placing

Tuning the Car Handling If each car has different characteristics, tuning the code can be time consuming.

Adjusting the Parameters Assign each parameter with a minimum and maximum value. Modify the parameter depending on whether the lap time decreases or increases. Time for this process can be reduced by running the game as fast as possible.

Real Time Editing Real Time Track Modification An important tool in AI creation is the ability the change the track in real time. Allows problems in the track to be quickly modified and tested. User Control Overriding AI Allows tester to take control when AI becomes stuck or incapable of navigating a certain part of the track. Can be used to test the AI on specific parts of the track.

Layer Behavior Reactionary system Modular approach makes it easy Multiple inputs for one output Output contention system ultimately determines output Layer Interactions: Overriding Internal states Altering input for other layers

Example of Layers

Path Following Layer Turning and speed dealt with separately Attempt to keep car on line Cornering regulation monitors speed Corners and apex determined Formulate max speed and braking zone distance Dynamic according to current speed Braking, cruise, full throttle

Tactical Racing Layer Makes competitive racing choices (driver into a racer) Analyzes situation and races accordingly Find optimum road position Generates new paths Safe guards in place

Visual Perception 8 eyes, 4 pairs Determines speed and position of cars and environment Determines desirability of current position based on environment and position of other cars

Fine Grain Avoidance Layer Priority Needed when cars want to occupy same space Relative car position determines who yields Prevents collisions by overriding For passing, steering is moderated For linear, speed is moderated

Determining Racing Lines Problems with user made content Track detail hard to take into account Lines of minimum curvature are limiting, boring Midway points across track Forces used to smooth out sharp turns Safe guards

Competitive AI Racing Under Open Street Conditions Allows an AI controlled vehicle to traverse an random network of roads. Finding the correct route to destination. Calculating steering brake and throttle values.

Library Interface RegisterRoute Interface Holds a list of intersections and roads Registers the path through the map Called when entering a new route DriveRoute Interface Used on a lower level than the RegisterRoute interface Calculates steering, throttle, and brakes Used for driving forward, backing up, colliding, and stopping.

Navigating the City Find the current location Update the road cache When a road is fully traversed, loads a new road into the cache. Emulate all possible routes Finds possible routes through the road

Avoiding obstacles Check for obstacles after the route is calculated.

References Champandard, Alex J. "Paris Game AI Conference '09: Highlights, Photos & Slides." Game AI for Developers. Web. 24 Mar "Gamasutra - Features - The Pure Advantage: Advanced Racing Game AI." Gamasutra - The Art & Business of Making Games. Web. 24 Mar "Mario Kart Wii: Those Damn Powerups." GamerBunny Speaks. Web. 24 Mar Rabin, Steve. AI Game Programming Wisdom 2. Hingham, MA: Charles River Media, Print. Rabin, Steve. AI Game Programming Wisdom. Hingham, Mass.: Charles River Media, Print. Youtube. Web. 24 Mar

Questions?