AI GFX Topic Genre All
 
Real-Time Strategy
Adventure /
Role-Playing Games

Action /
First-Person Shooters

Racing Games
Sports Games
Board Games
AI Game Programming Wisdom
AI Game Programming Wisdom 2
Game Programming Gems
Game Programming Gems 2
Game Programming Gems 3
Game Programming Gems 4
GDC Proceedings
Game Developer Magazine
Gamasutra


Home    By Topic    By Genre    All Articles    Contact
Racing Games


Intelligent Steering Using PID Controllers

Euan Forrester (Electronic Arts Black Box)
AI Game Programming Wisdom 2, 2003.
Topics: Movement; Genres: Racing
Abstract: In order to achieve the realism demanded by many of today's games, physics simulations have become more complex and accurate. Although realistic physics simulations are often rewarding for human players to control, they can be frustrating from an AI programmer's perspective. As these simulations become more complex, the effects of a given input to the system become less clear, and it becomes more difficult to write a simple if...then...else logic tree to cope with every possible circumstance. Thus, new methods of controlling objects operating under these rules must be developed.

In the context of game AI, the primary use for such control is in the steering of objects operating under the constraints of a physics system. The article will detail a solution to this problem by applying an engineering algorithm known as a Proportional-Integral-Derivative (PID) Controller that has been used for over 50 years. The article comes with full source code to a demo that let's you interactively play with the PID variables that control a rocket steering toward a moving target.

Racing Vehicle Control using Insect Intelligence
Alex Darby (FreeStyleGames Ltd.)
AI Game Programming Wisdom 2, 2003.
Topics: A-Life; Genres: Racing
Abstract: Despite their simplicity and inability to adapt by learning, insects and other simple animals manage to survive and navigate in the complex and unpredictable real world very well. Since evolution tends to find very efficient solutions to the problems faced by living creatures a lot of the mechanisms used by simple animals are relatively efficient, and in addition often have a potential for behavioral richness far beyond the extra processing power it takes to model them.

This article presents a robust and extensible system architecture which is based around emergent behaviors, and several techniques which utilize principles derived from the results of academic AI research into modeling insect level intelligence - in particular vision based steering behavior utilizing simple compound eye-like sensors.

Fast and Efficient Approximation of Racing Lines

John Manslow
AI Game Programming Wisdom 2, 2003.
Topics: General; Genres: Racing
Abstract: Racing game AI has developed to the point where it is able to challenge even the best players. To do this, an AI usually relies heavily on information stored along the length of a track, which provides it with instructions on how it should approach upcoming sections. Critically, this information is derived during a game's development, almost always from the way in which human players drive each track, and will therefore not be available for random or player created tracks. This prevents random track generators and track editors being shipped with many racing games, because it would not also be possible to provide a challenging AI that could compete against the player on all the resulting tracks. This article presents an algorithm that can be used to quickly and efficiently derive approximations to racing lines, thus providing information vital to an AI. A demonstration implementation of the algorithm in C++ is included with the article.

The Art of Surviving a Simulation Title
Dr. Brett Laming (Argonaut Sheffield)
AI Game Programming Wisdom 2, 2003.
Topics: General; Genres: Racing
Abstract: This article aims to simplify the task of writing simulation AI by providing a number of guidelines. These were adopted after working on the space simulation, "Independence War 2" (I-War 2) and continue to bring success to the futuristic racing game, "Powerdrome". The guidelines cover many aspects from higher-level design and keeping it simple to diagnostic support and impressing the user. While they far from guarantee a successful and stress free implementation, they at least put the developer on the right path.

Representing a Race Track for the AI
Gari Biasillo (Electronic Arts Canada)
AI Game Programming Wisdom, 2002.
Topics: Driving; Genres: Racing
Abstract: This article is the first in a series of three racing AI articles and describes a practical representation of a racetrack for an AI system. The representation includes defining sectors, interfaces, the driving lines (racing line, overtaking line), path type, terrain type, walls, hairpin turns, and brake/throttle points. Methods for determining the current sector and the distance along a sector are also discussed.

Racing AI Logic
Gari Biasillo (Electronic Arts Canada)
AI Game Programming Wisdom, 2002.
Topics: Driving; Genres: Racing
Abstract: This is the second article in a series of three racing AI articles that describes how to implement an AI capable of racing a car around a track. Although the AI will follow predefined driving lines, it will not rigidly follow the track like a train on rails, but merely use these lines as a guide. This goal is to have the AI produce an output that emulates human input; specifically joystick and/or key presses. Using this method, the game engine only needs to gather input from the AI controller instead of a human input device. The article will cover the basic AI framework (FSM, fixed-time step, controlling the car, simplifying with 2D), traversing sectors (anticipating the road ahead, hairpin turns), driving to a target, overtaking, handling under-steer and over-steer (detecting the car's stability, testing for stability, correcting the car), wall avoidance, other states (airborne, off the track), and catch-up logic.

Training an AI to Race
Gari Biasillo (Electronic Arts Canada)
AI Game Programming Wisdom, 2002.
Topics: Driving, Learning; Genres: Racing
Abstract: This is the final article of the three article series, and shows ways to train the AI to race optimally around a racetrack. Issues covered include tuning the car handling (adjusting parameters, converging on optimum values, modifying parameter values, modifying the range, training at high simulation speeds) and real-time editing (real-time track modification, user control overriding AI).

Competitive AI Racing under Open Street Conditions
Joseph C. Adzima (Motocentric)
AI Game Programming Wisdom, 2002.
Topics: Driving; Genres: Racing
Abstract:

Camera AI for Replays
Sandeep V. Kharkar (Microsoft)
AI Game Programming Wisdom, 2002.
Topics: Camera AI, Replay AI; Genres: Racing, Sports
Abstract:

AI Madness: Using AI to Bring Open City Racing to Life
Joe Adzima (Motocentric)
Game Developer Magazine, December 2000.
Available Online at Gamasutra, 2000.
Topics: Driving; Genres: Racing
Abstract:

 
Survey of best prices
Survey of best prices
AI Game Programming Wisdom

AI Game Programming Wisdom 2

Game
Programming
Gems


Game
Programming
Gems 2


Game
Programming
Gems 3


Game
Programming
Gems 4



Home