The Full Wiki

Game artificial intelligence: Wikis

Advertisements
  
  
  

Note: Many of our articles have direct quotes from sources you can cite, within the Wikipedia article! This article doesn't yet, but we're working on it! See more info or our list of citable articles.

Encyclopedia

From Wikipedia, the free encyclopedia

Game artificial intelligence refers to techniques used in computer and video games to produce the illusion of intelligence in the behavior of non-player characters (NPCs). The techniques used typically draw upon existing methods from the field of artificial intelligence (AI). However, the term game AI is often used to refer to a broad set of algorithms that also include techniques from control theory, robotics, computer graphics and computer science in general.

Since game AI is centered on appearance of intelligence and good gameplay, its approach is very different from that of traditional AI; hacks and cheats are acceptable and, in many cases, the computer abilities must be toned down to give human players a sense of fairness. This, for example, is true in first-person shooter games, where NPC's otherwise perfect movement and aiming would be beyond human skill.

Contents

History

Game playing was an area of research in AI from its inception. In 1951, using the Ferranti Mark 1 machine of the University of Manchester, Christopher Strachey wrote a checkers program and Dietrich Prinz wrote one for chess.[1] These were among the first computer programs ever written. Arthur Samuel's checkers program, developed in the middle 50s and early 60s, eventually achieved sufficient skill to challenge a respectable amateur.[2] Work on checkers and chess would culminate in the defeat of Garry Kasparov by IBM's Deep Blue computer in 1997.[3]

The first video games developed in the 1960s and early 1970s, like Spacewar!, Pong and Gotcha (1973), were games implemented on discrete logic and strictly based on the competition of two players, without AI.

Games that featured a single player mode with enemies started appearing in the 1970s. The first notable ones for the arcade included the 1974 Atari games Qwak (duck hunting) and Pursuit (fighter aircraft dogfighting simulator). Two text-based computer games from 1972, Hunt the Wumpus and Star Trek, also had enemies. Enemy movement was based on stored patterns. The incorporation of microprocessors would allow more computation and random elements overlaid into movement patterns.

Light cycle characters compete to be the last one riding, in GLtron.

The idea was used by Space Invaders (1978), sporting an increasing difficulty level, distinct movement patterns, and in-game events dependent on hash functions based on the player's input. Galaxian (1979) added more complex and varied enemy movements.

Pac-Man (1980) applied these patterns to maze games, with the added quirk of different personalities for each enemy, and Karate Champ (1984) to fighting games, although the poor AI prompted the release of a second version.

Games like Madden Football, Earl Weaver Baseball and Tony La Russa Baseball all based their AI on an attempt to duplicate on the computer the coaching or managerial style of the selected celebrity. Madden, Weaver and La Russa all did extensive work with these game development teams to maximize the accuracy of the games. Later sports titles allowed users to "tune" variables in the AI to produce a player-defined managerial or coaching strategy.

The emergence of new game genres in the 1990s prompted the use of formal AI tools like finite state machines. Real-Time Strategy games taxed the AI with many objects, incomplete information, pathfinding problems, real-time decisions and economic planning, among other things.[4] The first games of the genre had notorious problems. Herzog Zwei, for example, had almost broken pathfinding and very basic three-state state machines for unit control, and Dune II attacked the players' base in a beeline and used numerous cheats.[5] Later games in the genre exhibited much better AI.

Later games have used bottom-up AI methods, ranging from the first use of neural networks in a videogame in Battlecruiser 3000AD (1996), to the emergent behaviour and evaluation of player actions in games like Creatures or Black & White.

GoldenEye 007 (1997) was one of the first FPSs to use AI that would react to players' movements and actions as well as taking cover, performing rolls to avoid being shot and throwing grenades at the appropriate time. Its creators later expanded on this in the title Perfect Dark, with enemies running for dead team mates' weapons if the player shot the weapon out of the hand. The only unfairness during the course of both games was that enemies knew where the player was, even if no one saw where the player hid.

Half-Life (1998) featured enemies that worked together to look for the player. They also lobbed grenades from behind cover, ran and hid from the player when injured and patrolled areas without breaking the pattern.

Halo (2001) featured AI that could use vehicles and some basic team actions. The AI could recognize threats such as grenades and incoming vehicles and move out of danger accordingly.

Far Cry (2004) exhibited very advanced AI for its time, although this made minor glitches more apparent. The enemies would react to the player's playing style and try to surround him when possible. They would also use real life military tactics to try and beat the player. The enemies did not have "cheating" AI, in the sense that they did not always know exactly where the player is all the time. They would remember his last known position and work from there.

"F.E.A.R." (2005) introduced advanced character AI that used real time cover, tactics and team coordination against the player. AI characters worked as a team, knowing where other AI team mates are and made tactical decisions off of that. The AI would be able to recognize when out gunned and even hide from the player, to later attack from behind. F.E.A.R AI was praised by critics as a major benchmark in game AI.

The Elder Scrolls IV: Oblivion (2006) uses very complex AI. NPC's in the game have a 24/7 schedule and pursue their goals in their own ways. They don't stand in one place all the time. They eat, sleep, and go do their jobs everyday. Events happening in the game can also change their daily routine. They can grow from nice townsfolk to deadly assassins.

Left 4 Dead (2008) uses a new artificial intelligence technology dubbed The Director[6]. The Director is used to procedurally generate a different experience for the players each time the game is played. The games developers calls the way the Director is working "Procedural narrative" because instead of having a difficulty level which just ramps up to a constant level, the A.I. analyze how the players fared in the game so far, and try to add subsequent events that would give them a sense of narrative.[7][8]

Project Natal, an add-on peripheral for the Xbox 360 unveiled at E3 2009, June 1, was shown to include a technical demo called "Milo", developed by Lionhead Studios. It lets players interact with an incredibly sophisticated AI called Milo, showcasing voice recognition (and, in turn, full conversation) and the ability to pass real-life items "through" the screen and into virtual items.

AI has continued to improve, with aims set on a player being unable to tell the difference between computer and human players.

Views

Some game programmers consider any technique that is used to help create the illusion of intelligence to be part of a game's AI. This view is controversial because it includes techniques that are also widely used outside of a game's AI engine. For example, information about potential future collisions is an important input to algorithms that help create characters that are clever enough to avoid bumping into things. But the same collision detection techniques are also commonly needed to implement a game's physics. Similarly, line of sight test results are usually important inputs to AI targeting decisions, but are also widely used inside the rendering engine. Another example is scripting, which can be a convenient tool for all aspects of game development, but is often closely associated with controlling NPCs' behavior.

Purists complain that the "AI" in the term "game AI" overstates its worth, as game AI is not about intelligence, and shares few of the objectives of the academic field of AI. Whereas "real" AI addresses fields of machine learning, decision making based on arbitrary data input, and even the ultimate goal of strong AI that can reason, "game AI" often consists of a half-dozen rules of thumb, or heuristics, that are just enough to give a good gameplay experience.

Game developers' increasing awareness of academic AI and a growing interest in computer games by the academic community is causing the definition of what counts as AI in a game to become less idiosyncratic. Nevertheless, significant differences between different application domains of AI mean that game AI can still be viewed as a distinct subfield of AI. In particular, the ability to legitimately solve some AI problems in games by cheating creates an important distinction. For example, inferring the position of an unseen object from past observations can be a difficult problem when AI is applied to robotics, but in a computer game an NPC can simply look up the position in the game's scene graph. Such cheating can lead to unrealistic behavior and so is not always desirable. But its possibility serves to distinguish game AI and leads to new problems to solve, such as when and how to use cheating.

Usage

Game AI/heuristic algorithms are used in a wide variety of quite disparate fields inside a game. The most obvious is in the control of any NPCs in the game, although scripting is currently the most common means of control. Pathfinding is another common use for AI, widely seen in real-time strategy games. Pathfinding is the method for determining how to get an NPC from one point on a map to another, taking into consideration the terrain, obstacles and possibly "fog of war". Game AI is also involved with dynamic game difficulty balancing, which consists in adjusting the difficulty in a video game in real-time based on the player's ability.

The concept of emergent AI has recently been explored in games such as Creatures, Black & White and Nintendogs and toys such as Tamagotchi. The "pets" in these games are able to "learn" from actions taken by the player and their behavior is modified accordingly. While these choices are taken from a limited pool, it does often give the desired illusion of an intelligence on the other side of the screen.

Advertisements

Video Game Combat AI

The majority of video games in contemporary society fall under the category of action, first person shooter, or adventure. In most of these types of games there is some level of combat that takes place. Recently there have been similar elements in games, and that is the AI's ability to be efficient in combat. A common goal today is make the AI more human, or at least appear so.

One of the more positive and efficient features found in modern day video game AI is the ability to hunt. AI originally reacted in a very black and white manner. If the player was in a specific area then the AI would react in either a complete offensive manner or be entirely defensive. However the idea of "hunting" was introduced there have been significant developments in how it functions. In this hunting state the AI would look for realistic markers that would act as sensor to help locate the player. For example sounds made by the character or footprints left behind.[9] These developments ultimately allow for a more complex form of play. With this feature, the player can actually consider how to approach or avoid an enemy. This is a feature that is prevalent in games such as Metal Gear Solid.

Another development in recent game AI has been the a development of "survival instinct". In game computers can recognize different objects in an environment and determine whether it is beneficial or detrimental to its survival. Like the user who would look for cover in a firefight to reload or to prevent from taking damage the AI will do the same. There can be set markers that tell it when to react in a certain way. For example if the AI is given a command to check its health throughout a game then further commands can be set so that it reacts a specific way at a certain percentage of health. If the health is below 20% then maybe the AI can be set to run away from the player and avoid it until another function is triggered. Another example could be if the AI notices it is out of bullets, it will find a cover object and hide behind it until it has reloaded. Actions like these make the AI seem more human. However, there is still a need for improvement in this area. Unlike a human player the AI must be programmed for all the possible scenarios. This severely limits its ability to surprise the player.[9]

Cheating AI

NBA Hangtime's rubber band AI option

Cheating AI (also called Rubberband AI) is a term used to describe the situation where the AI has bonuses over the players, such as having more hit-points, driving faster, or ignoring fog of war. The use of cheating in AI shows the limitations of the "intelligence" achievable artificially; generally speaking, in games where strategic creativity is important, humans could easily beat the AI after a minimum of trial and error if it were not for the bonuses.[10] In the context of AI programming, cheating refers only to any privilege given specifically to the AI; this does not include the inhuman swiftness and precision natural to a computer, although a player might call that "cheating".[10]

One common example of cheating AI is found in many racing games. If an AI opponent falls far enough behind the rest of the drivers it receives a boost in speed or other attributes, enabling it to catch up and/or again become competitive. This technique is known as "rubber banding" because it allows the AI character to quickly snap back into a competitive position. A similar method is also used in sports games such as the Madden NFL series. In more advanced games, NPC competitiveness may be achieved through dynamic game difficulty balancing, which can be considered fairer though still technically a cheat, since the AI characters still get a boost, even though they respect the virtual world's rules.

See also

References

  1. ^ See "A Brief History of Computing" at AlanTuring.net.
  2. ^ Schaeffer, Jonathan. One Jump Ahead:: Challenging Human Supremacy in Checkers, 1997,2009, Springer, ISBN 978-0-387-76575-4. Chapter 6.
  3. ^ McCorduck, Pamela (2004), Machines Who Think (2nd ed.), Natick, MA: A. K. Peters, Ltd., ISBN 1-56881-205-1, http://www.pamelamc.com/html/machines_who_think.html  , p. 480-483
  4. ^ Schwab, 2004, p. 97-112
  5. ^ Schwab, 2004, p.107
  6. ^ "Left 4 Dead". Valve Corporation. http://www.l4d.com/info.html.  
  7. ^ "Left 4 Dead Hands-on Preview". Left 4 Dead 411. http://www.left4dead411.com/left-4-dead-preview-pg2.  
  8. ^ Newell, Gabe (2008-11-21). "Gabe Newell Writes for Edge". edge-online.com. http://www.edge-online.com/blogs/gabe-newell-writes-edge. Retrieved 2008-11-22. "The events are trying to give them a sense of narrative. We look at sequences of events and try to take what their actions are to generate new sequences. If they’ve been particularly challenged by one kind of creature then we can use that information to make decisions about how we use that creature in subsequent encounters. This is what makes procedural narrative more of a story-telling device than, say, a simple difficulty mechanism. "  
  9. ^ a b Schreiner, Tim. "Artificial Intelligence in Game Design." Artificial Intelligence Depot. Web. 19 November 2009. AI-depot.com
  10. ^ a b Scott, Bob (2002). "The Illusion of Intelligence". in Rabin, Steve. AI Game Programming Wisdom. Charles River Media. pp. 19–20.  

Bibliography

External links


Game artificial intelligence refers to techniques used in computer and video games to produce the illusion of intelligence in the behavior of non-player characters (NPCs). The techniques used typically draw upon existing methods from the field of artificial intelligence (AI). However, the term game AI is often used to refer to a broad set of algorithms that also include techniques from control theory, robotics, computer graphics and computer science in general.

Since game AI is centered on appearance of intelligence and good gameplay, its approach is very different from that of traditional AI; hacks and cheats are acceptable and, in many cases, the computer abilities must be toned down to give human players a sense of fairness. This, for example, is true in first-person shooter games, where NPC's otherwise perfect aiming would be beyond human skill.

Contents

History

Game playing was an area of research in AI from its inception. In 1951, using the Ferranti Mark 1 machine of the University of Manchester, Christopher Strachey wrote a checkers program and Dietrich Prinz wrote one for chess.[1] These were among the first computer programs ever written. Arthur Samuel's checkers program, developed in the middle 50s and early 60s, eventually achieved sufficient skill to challenge a respectable amateur.[2] Work on checkers and chess would culminate in the defeat of Garry Kasparov by IBM's Deep Blue computer in 1997.[3]

The first video games developed in the 1960s and early 1970s, like Spacewar!, Pong and Gotcha (1973), were games implemented on discrete logic and strictly based on the competition of two players, without AI.

Games that featured a single player mode with enemies started appearing in the 1970s. The first notable ones for the arcade included the 1974 Atari games Qwak (duck hunting) and Pursuit (fighter aircraft dogfighting simulator). Two text-based computer games from 1972, Hunt the Wumpus and Star Trek, also had enemies. Enemy movement was based on stored patterns. The incorporation of microprocessors would allow more computation and random elements overlaid into movement patterns.

[[File:|thumb|left|Light cycle characters compete to be the last one riding, in GLtron.]]

The idea was used by Space Invaders (1978), sporting an increasing difficulty level, distinct movement patterns, and in-game events dependent on hash functions based on the player's input. Galaxian (1979) added more complex and varied enemy movements.

Pac-Man (1980) applied these patterns to maze games, with the added quirk of different personalities for each enemy, and Karate Champ (1984) to fighting games, although the poor AI prompted the release of a second version.

Games like Madden Football, Earl Weaver Baseball and Tony La Russa Baseball all based their AI on an attempt to duplicate on the computer the coaching or managerial style of the selected celebrity. Madden, Weaver and La Russa all did extensive work with these game development teams to maximize the accuracy of the games.[citation needed] Later sports titles allowed users to "tune" variables in the AI to produce a player-defined managerial or coaching strategy.

The emergence of new game genres in the 1990s prompted the use of formal AI tools like finite state machines. Real-time strategy games taxed the AI with many objects, incomplete information, pathfinding problems, real-time decisions and economic planning, among other things.[4] The first games of the genre had notorious problems. Herzog Zwei (1989), for example, had almost broken pathfinding and very basic three-state state machines for unit control, and Dune II (1992) attacked the players' base in a beeline and used numerous cheats.[5] Later games in the genre exhibited more sophisticated AI.

Later games have used bottom-up AI methods, ranging from the first use of neural networks in a videogame in Battlecruiser 3000AD (1996)[citation needed], to the emergent behaviour and evaluation of player actions in games like Creatures or Black & White. Façade (interactive story) was released in 2005 and used interacitve multiple way dialogs and AI as the main aspect of game.

Views

Purists complain that the "AI" in the term "game AI" overstates its worth, as game AI is not about intelligence, and shares few of the objectives of the academic field of AI. Whereas "real" AI addresses fields of machine learning, decision making based on arbitrary data input, and even the ultimate goal of strong AI that can reason, "game AI" often consists of a half-dozen rules of thumb, or heuristics, that are just enough to give a good gameplay experience.[citation needed]

Game developers' increasing awareness of academic AI and a growing interest in computer games by the academic community is causing the definition of what counts as AI in a game to become less idiosyncratic. Nevertheless, significant differences between different application domains of AI mean that game AI can still be viewed as a distinct subfield of AI. In particular, the ability to legitimately solve some AI problems in games by cheating creates an important distinction. For example, inferring the position of an unseen object from past observations can be a difficult problem when AI is applied to robotics, but in a computer game an NPC can simply look up the position in the game's scene graph. Such cheating can lead to unrealistic behavior and so is not always desirable. But its possibility serves to distinguish game AI and leads to new problems to solve, such as when and how to use cheating.[citation needed]

Usage

Game AI/heuristic algorithms are used in a wide variety of quite disparate fields inside a game. The most obvious is in the control of any NPCs in the game, although scripting is currently the most common means of control. Pathfinding is another common use for AI, widely seen in real-time strategy games. Pathfinding is the method for determining how to get an NPC from one point on a map to another, taking into consideration the terrain, obstacles and possibly "fog of war". Game AI is also involved with dynamic game difficulty balancing, which consists in adjusting the difficulty in a video game in real-time based on the player's ability.

The concept of emergent AI has recently been explored in games such as Creatures, Black & White and Nintendogs and toys such as Tamagotchi. The "pets" in these games are able to "learn" from actions taken by the player and their behavior is modified accordingly. While these choices are taken from a limited pool, it does often give the desired illusion of an intelligence on the other side of the screen.

Video Game Combat AI

The many contemporary video games fall under the category of action, first person shooter, or adventure. In most of these types of games there is some level of combat that takes place. The AI's ability to be efficient in combat is important in these genres. A common goal today is to make the AI more human, or at least appear so.

One of the more positive and efficient features found in modern day video game AI is the ability to hunt. AI originally reacted in a very black and white manner. If the player was in a specific area then the AI would react in either a complete offensive manner or be entirely defensive. In recent years, the idea of "hunting" has been introduced; in this 'hunting' state the AI will look for realistic markers, such as sounds made by the character or footprints they may have left behind.[6] These developments ultimately allow for a more complex form of play. With this feature, the player can actually consider how to approach or avoid an enemy. This is a feature that is particularly prevalent in the stealth genre.

Another development in recent game AI has been the development of "survival instinct". In-game computers can recognize different objects in an environment and determine whether it is beneficial or detrimental to its survival. Like a user, the AI can "look" for cover in a firefight before taking actions that would leave it otherwise vulnerable, such as reloading a weapon or throwing a grenade. There can be set markers that tell it when to react in a certain way. For example, if the AI is given a command to check its health throughout a game then further commands can be set so that it reacts a specific way at a certain percentage of health. If the health is below a certain threshold then the AI can be set to run away from the player and avoid it until another function is triggered. Another example could be if the AI notices it is out of bullets, it will find a cover object and hide behind it until it has reloaded. Actions like these make the AI seem more human. However, there is still a need for improvement in this area. Unlike a human player the AI must be programmed for all the possible scenarios. This severely limits its ability to surprise the player.[6]

Another side-effect of combat AI occurs when two AI-controlled characters encounter each other; first noticed in the iD Software game DOOM, so-called 'monster infighting' can break out in certain situations. Specifically, AI agents that are programmed to respond to hostile attacks will sometimes attack each other if their cohort's attacks land too close to them.[citation needed]

Cheating AI

In the context of artificial intelligence in video games, cheating refers to the programmer giving agents access to information that would be unavailable to the player in the same situation.[7] In a simple example, if the agents want to know if the player is nearby they can either be given complex, human-like sensors (seeing, hearing, etc.), or they can cheat by simply asking the game engine for the player's position. The use of cheating in AI shows the limitations of the "intelligence" achievable artificially; generally speaking, in games where strategic creativity is important, humans could easily beat the AI after a minimum of trial and error if it were not for this advantage. Cheating is often implemented for performance reasons where in many cases it may be considered acceptable as long as the effect is not obvious to the player. While cheating refers only to privileges given specifically to the AI—it does not include the inhuman swiftness and precision natural to a computer—a player might call the computer's inherent advantages "cheating" if they result in the agent acting unlike a human player.[7]

Cheating AI are a well-known aspect of Sid Meyer's Civilization series; in those games, the player must build his empire from scratch, while the computer's empire receives additional units at no cost and is freed from most resource restrictions.[citation needed]

See also

File:Animation2.gif Artificial intelligence portal

References

  1. ^ See "A Brief History of Computing" at AlanTuring.net.
  2. ^ Schaeffer, Jonathan. One Jump Ahead:: Challenging Human Supremacy in Checkers, 1997,2009, Springer, ISBN 978-0-387-76575-4. Chapter 6.
  3. ^ McCorduck, Pamela (2004), Machines Who Think (2nd ed.), Natick, MA: A. K. Peters, Ltd., ISBN 1-56881-205-1, http://www.pamelamc.com/html/machines_who_think.html , p. 480-483
  4. ^ Schwab, 2004, p. 97-112
  5. ^ Schwab, 2004, p.107
  6. ^ a b Schreiner, Tim. "Artificial Intelligence in Game Design." Artificial Intelligence Depot. Web. 19 November 2009. AI-depot.com
  7. ^ a b Scott, Bob (2002). "The Illusion of Intelligence". In Rabin, Steve. AI Game Programming Wisdom. Charles River Media. pp. 19–20. 

Bibliography

External links


Advertisements






Got something to say? Make a comment.
Your name
Your email address
Message