IEEE Spectrum Surveys Current Games' AI Technology
orac2 writes " IEEE Spectrum has an article on the AI technologies used in the current crop of video games. State machines, learning algorithms, cheating, smart terrain, etc are discussed. Game developers interviewed include Richard Evans, of Black and White fame, who talks about Lionhead's upcoming Dmitri project and Soren Johnson who created Civ III's AI."
Image a beowolf cluster of AI video games...
All these illustrious game designers are wasting their time. Until 2025, home computers won't be sufficiently advanced to do accurate AI. Until then, these "AI" programmers are just programming a complex system of input and output.
And I still have trouble beating some games that are a decade old.
I am the poster of the post that is the first. And you all suck compared to me!
OMFG! I have won the firest post! I am so much cooler th an all of you godamned losers! :) I hate you all please just die! Nothing would make me happier than slashdot melting! Thank god none of you fucktards will ever breed!
AI technology surveys YOU!
The page located at http://www.cs.berkeley.edu/~russell/ai.html#search contains wonderful links about coding A.I. into your games, programs, etc.
If you celebrate Xmas, befriend me (538
I always win.
**unplugs computer**
And the trolls, they come in the niiiiiiiiiiiiiiiiiiiiiiiiiight!
Fuck you Taco
In Soviet Russia, Dmitri discusses Richard Evans!
Troll? Moderators shouldn't moderate on Saturday nights, as they are apparently drunks.
JIC we get a /. effect
The war was going well. City after city had fallen before my advancing army. Although I had been forced to commit nearly all my military units, I was now within striking distance of the enemy capital. Suddenly, disaster! A transport ship had sneaked past my naval blockade and was unloading a division of tanks onto the shore beside my own capital. The city was far from the front, and I had thought it safe, but now I watched in horror as the enemy easily overpowered my troops and occupied the metropolis, plunging my nation into chaos.
I had just been outwitted by an artificial intelligence (AI).
The video game in which this AI was embedded was Civilization III [see screenshot [mindf1.html]]. The creation of Firaxis Games (Hunt Valley, Md.), Civilization III sets the player and various computer opponents to fighting military, economic, and cultural battles across a randomly generated set of continents and oceans. While game AIs are most visible when they take on the role of an opponent to a human player, they can also be used to work in the game's background, making sure the digital environment runs smoothly, and even on the player's behalf in roles like tutors or wingmen.
An increasing number of other games are taking advantage of changes in computer architecture and the growth in processing power to become smarter than ever before. Although most of these games use relatively unsubtle AI techniques, a few pioneers are even showing the academic AI community a trick or two.
While AI originated in the laboratory, it has now been co-opted by designers of video games, and work is under way on increasing the learning powers of a video game's cast of characters and refining their social interactions with one another and with human players, too. At this point, even cinematographers and the military are showing interest in possible applications.
Substance over style?
Video games are big business. In 2001, U.S. sales of 225 million units generated US $6.35 billion, according to Interactive Digital Software Association (IDSA, Washington, D.C.), a trade organization for the industry.
Traditionally, the heaviest emphasis in creating a video game has been on strong visual images, not least to entice people looking at screenshots in a magazine review or on a product box. Ultimately, this emphasis on the visual advanced not just the software used by the games, but the hardware available as well [see "The Wizardry of Id," IEEE Spectrum, August, pp. 42-47].
Now, though, as realistic and detailed three-dimensional graphics become commonplace, "you've got to find something else to make your game stand out," explains Steven M. Woodcock. The editor of GameAI.com, a Web site devoted to the small but growing game AI community, Woodcock noticed a growing interest in building better game AI in the mid-1990s, when talks on the subject started drawing packed crowds at the industry's premiere gathering, the annual Game Developers Conference (GDC). By 1998 developers "were trying just everything they could think of...there was a lot of touting that this AI is going to be the last AI you'll ever play," says Woodcock. "That didn't work out."
At the time PCs and video game consoles still lacked the computational horsepower to deliver on the promise of AI. In addition many techniques in vogue, such as neural networks, were ill chosen or misapplied by game programmers. "Most game programmers...don't know how to take techniques from academic AI research and make them work in a practical way," says Steve Rabin, editor of the book, AI Game Programming Wisdom. "Typically, academic work goes into games only when someone with a master's or a Ph.D. moves to a game company and brings their experience with them."
Fortunately, most graphics processing had by then moved onto dedicated graphics cards, and CPU resources and memory--already increasing dramatically, thanks to Moore's law--were being freed up for computationally intensive and hitherto impractical tasks, such as better AI.
Quite a difference
Game and academic AI development are different, agrees Soren Johnson, who works at Firaxis and was responsible for the AI in Civilization III. In games "it's like this big loop: build a little bit of AI, see how it does, make it better, see how it does, continually and continually testing," he says, "whereas in the academic community, there is no real reason to do any sort of iterative process. The important thing there is that your AI is as close as possible to the model that you're trying to study." Academic AIs have a related advantage over their game cousins--they do not have to be shipped on time as an integrated component of a polished product.
"The hardest thing in game AI is just making sure that the game never looks dumb. You'd be better off having an AI that was just above average all the time, rather than one that was brilliant 98 percent of the time and stupid 2 percent of the time," points out editor Rabin. Neural networks and genetic algorithms might seem to be useful (the former attempts to model how neurons behave in the brain, and the latter uses digital evolution and selection to develop a solution to a problem by trial and error). But when "something misbehaves with one of these technologies, it's not easy to fix. You can't exclude the one thing that's broken without destroying all of the other beautiful things in there. It's all or nothing, which is a very difficult situation when deadlines approach," he concludes.
Currently the mood of the game industry is pragmatic. Rather than rush to new technologies at the 2002 Game Developers Conference, "developers were mostly focused on digesting what they had," Woodcock told Spectrum. Two tried and true technologies dominate game AI today: finite-state machines and scripting.
Finite intelligence
Non-player characters (NPCs), or agents, such as monsters, enemy guards, or friendly wingmen, can be controlled by a finite-state machine. In this AI model, a limited number of behaviors, or states, are pre-defined by the game designer. The actual state that the NPC is in is made to switch with seeming intelligence, depending on criteria also pre-defined by the designer. These could include such things as whether the NPC can see the player or how much ammunition it has left. To add an element of unpredictability to NPCs, many designers incorporate fuzzy logic or random weighting into the decision-making process.
Consider a simple finite-state machine for a hostile, sword-carrying monster guard [see illustration [mindf2.html]]. The monster begins in the Wait state, in 100 percent health, and stays put until the player comes into view. It then enters a Charge state and charges toward the player, until it's within striking range, when Charge changes to Attack and the monster tries to kill the player with its sword. If it succeeds, it will perform a Victory Dance. Game over.
If at any time the player's counterattack reduces the monster's health to less than 20 percent, the monster will shift to a Flee state and run away from the player. Flee lasts until either the monster is dead or it can no longer see the player, at which point it shifts back into the Wait state.
Scripting is a technique in which the control of game events and NPCs is not hard coded into the game, but defined using a high-level language. Scripting allows game designers--who set the overall goals and playing methods of the game--to work semi-independently of the programmers, who work on the nuts and bolts implementation of the games, shortening the development process.
To allow scripting, the game engine, which maintains and updates the data structure that defines the game environment, usually has an interface that understands a collection of primitive commands and queries that change the position of an NPC, use one kind of animation or another, determine what key the player is pressing, and so on. Feeding the engine different scripts produces different behaviors. In this way, a game company can even use the same game engine to produce two completely different games by designing different scripts.
Scripts can vary widely. As the name implies, they can be a fixed, linear sequence of actions and are often used as such to direct so-called cut scenes, where some piece of exposition is presented to the player--for example, having a wizard NPC explain what a magic item does. Or they can be complex programs in themselves, even implementing finite-state machines or more exotic types of AI.
Scripts can be written in a special-purpose language created for a specific game, or in standard general-purpose languages such as Perl or Java. For the sake of efficiency, the high-level script is not interpreted while the game is running. Instead, the script is pre-compiled into a stream of low-level codes corresponding to the various primitive commands understood by the game engine.
If you can't beat 'em, cheat 'em
Game AIs also have two big advantages over their academic counterparts--they can cheat, and they can get a lot of help from the world they find themselves in.
AIs cheat by having some of the constraints the player must face removed from them. To build a tank in a military strategy game, for instance, the computer may need to gather only half as many resources as the player.
"It's OK to cheat, so long as the player never knows you're cheating, or you tell them up front that the game cheats in order to be a worthwhile opponent," says Rabin. Woodcock agrees: if you don't tell them and then they "figure out that it cheats, it really frustrates the players and makes them mad. You see it in letters to the editor of the game magazines."
Also unlike academic AIs, which are built with a view to coping with the real world's messy lack of clues, game AIs operate in the much neater and simpler realm of the game designers' creation. Clues and commands can be built into these worlds. Imagine the problem of moving a patrolling guard through a number of rooms in a castle. The designer can sidestep the problem of teaching the guard how to work out the best path between rooms by simply drawing an invisible track for the guard to follow through the castle.
The ability to cross the traditional division between an AI and its environment allowed Will Wright at Maxis, a division of Electronic Arts Inc. (Redwood City, Calif.), to turn the concept of an AI inside out. In Wright's game, The Sims [see screenshot [mindf3.html]] one of the most popular of all time, players run a modern version of an ant farm by overseeing the lives of a number of autonomous simulated people known as Sims. The players can build houses for their Sims and fill them with objects such as television sets and pets to keep them occupied. New objects can be created and shared over the Internet. "You download a beach ball and your Sims will start playing with it," says Woodcock.
But the intelligence to interact with any of these objects is not built into the Sims themselves. Rather, they are equipped with a few basic needs, for food, say, or entertainment. Objects within the game advertise their ability to satisfy some of these needs to any Sims who wander nearby. Wright calls it "smart terrain. A Sim is looking around for fun and spots the beach ball...and all the instructions about how to bounce the ball are there as part of the ball's code," he continues.
Well done is more fun
It is strategy and open-ended games like The Sims, where game play soon goes beyond any developer's capacity to pre-program situations, that have the greatest need for advanced AI technologies. "Open-ended games are becoming fashionable because they're just more fun," says Richard Evans of Lionhead Studios (Guildford, UK). "Instead of restricting you to a linear path, they just simulate a world and enable you to emerge with whatever behavior you want." Evans notes that "people [publish on the Internet] the little stories they've experienced in these games because they're unique." Lionhead Studios is best known for its AI-based game Black and White, in which the player takes on the role of either a vengeful or benevolent god watching over its followers and competing with rival deities for complete control [see screenshot [mindf4.html]].
Two other genres stand to benefit from improved game AI: the increasingly popular massively multiplayer role-playing games (MMRPGs) and so-called first-person shooters. In the first, players take on the personas of adventurers in a persistent Internet world (meaning one that exists independently of the players' presence or absence). The first-person shooters typically pit players against each other in kill-or-be-killed shootouts.
Woodcock explains why a world filled with human players would benefit from better AI. "Everyone wants to be the hero, the Captain Kirk character. No one wants to be the guy in the red shirt who's killed right away....That means you need supporting characters." A current MMRPG likeUltima Online does supply supporting characters such as shopkeepers for its medieval fantasy world, but the presence of human-controlled (albeit graphically identical) characters side by side with the AI-based supporting cast makes the limited AI of those agents conspicuous. Dealing with the agents is a "jarring experience...so the human players congregate together and ignore all the hard work the developers did to make a believable village," says Woodcock.
Adaptive technologies, such as neural networks, which learn from experience, may after all play a role here. They will allow agents to respond to players and accommodate changes in their behavior without the need for the MMRPG's designer to explicitly program every possibility into the agent.
First-person shooter games such as Duke Nukem 3D and Quake had their beginnings as single-player games, but soon latched onto the appeal of multiplayer gaming. "There was a phase where developers were going, 'Hah, we don't need a good AI because players are going to play with other people,'" says Woodcock.
They were wrong. Players often can't get a fast enough Internet connection to compete, and even when they can, "people want a good single-player experience to practice before they go on-line because they feel stupid when they get their butt kicked by a 12-year-old in Ohio," laughs Michael Zarozinski.
Zarozinski is the founder of Louder Than A Bomb! Software (Gardner, Mass.), which sells a relatively new product--AI middleware. Ideally, AI middleware would provide game developers with a ready-made AI that they could easily customize and drop into their game to control agents. Middleware like Zarozinski's Spark! software may become a vital tool in managing the complexities of creating modern games.
Building the pipeline
Middleware "hides all the ugly nasty little details" of implementing an AI, explains Zarozinski. Developers "can have Spark! running alongside the game...and tweak the rules in real time and see the impact of the changes without having to stop and recompile," as they would with an AI built directly into the game. For example, the precise noise threshold that activates a guard's attack pattern can be tuned so that a player can open a door and creep up on the guard without alerting it, whereas firing a weapon nearby will give the player away. Middleware allows the developer to do this tuning without having to reprogram the AI directly.
One of Zarozinski's biggest challenges in selling his middleware has not been technical, but psychological. "There is a huge not-invented-here syndrome in the game industry. People do not want to buy middleware, they want to write it themselves," he told Spectrum. In the last couple of years, though, the situation has improved, thanks to the example of commercially available third-party graphics middleware such as the Quake or Unreal engines.
Still, there are those who are skeptical that generic AI middleware will become ubiquitous. "It's a noble pursuit," says Rabin, but "AI relies so heavily on a game's data structures, it's difficult to create efficient middleware in the absence of well- established standards for those structures in the industry."
AI.implant is an AI middleware product sold by BioGraphic Technologies (Montreal). Its president, Paul Kruszewki, acknowledges that his software cannot be used in every type of game. "For example, sports games are extremely specific, there's so many hacks" needed to reproduce all the rules of the particular sport, he said, noting that because AI.implant is centered on controlling relatively sophisticated individual agents, it's also not suited for real-time strategy games in which many simple, identical units must be managed. "But we are excellent at things like racing games or action/adventure games," says Kruszewki.
Although initially targeted at game developers, Kruszewki adds, AI.implant is finding applications outside games. Two large studios in California have recently signed on to use the software to generate special effects, such as large crowd scenes in movies. "The film people want intelligent extras," he explained.
There has also been interest from the military in using it in training simulations. "We have serious enquiries from the U.S. Marine Corps," says Kruszewki [see "Games Soldiers Play," Spectrum, March 2002, pp. 32-37].
Better, smarter, faster
The next big challenge for game AI may be getting a game's cast of characters better at learning and social interaction. Here, Richard Evans at Lionhead Studios is leading the charge. Lionhead's Black and White god game broke new ground by giving the player an in-game representative, a Creature. The player's Creature acts autonomously, but it can be trained by a system of punishments and rewards. Most notably, it watches the player's actions and attempts to divine the intent behind them, a technique called empathic learning. Suppose you throw fireballs against another tribe's village; then the Creature will guess that you don't like foreign tribes and spontaneously try to trample foreigners. Later it can be taught the difference between hostile and friendly foreigners and to trample only the former. Rabin notes that he's seen recent academic presentations on AI learning that have only "a fraction of what Richard's done with Black and White."
For a project code-named Dmitri, Evans is now focused on improving the ability of AI to interact socially. Agents' behavior will be controlled by their membership in overlapping social groups. Each group will have its own set of needs and attitudes toward other groups. Its members reduce demands on memory and processing power by sharing information among themselves, and because they belong to multiple groups to varying degrees, the agents are individualized. Evans expects to release a working game in two or three years.
Another attempt at good AI on a large scale is being pioneered by Majorem Ltd. (Midreshet Sde Boker, Israel). Majorem is developing an Internet-based massively multiplayer strategy game called Ballerium. Strategy games, which operate in real time (as opposed to a game in which the computer and player take turns, such as Civilization III), are the most computationally demanding of all AI-based games. While most multiplayer online games use the connected players' client software just to render graphics and transmit commands, Ballerium's ambition is to harness the power of the computers of logged-in players. Difficult problems, such as periodically evaluating a tactical position, will be farmed out to client computers in a novel example of distributed computing.
But finally, the value of all game AI technologies is measured against one simple standard. "Players want to feel like they were almost beat and then triumphed," says Rabin. "Players don't really care about AI itself, only about whether a game is any fun."
SEE TO PROBE FURTHER [/WEBONLY/resource/dec02/prob.html]
ARTWORK: BRYAN CHRISTIE
Hold up, wait a minute, let me put some pimpin in it
Real stupidity beats artificial intelligence any day!
X(7): A program for managing terminal windows. See also screen(1).
Lick my left nut
Can a computer get discusted by this
I have a 56k modem, and no chance of getting broadband, so while massive online fragfests might seem like fun, they're not really accessible to me (RTCW was bearable till PunkBuster slowed it to shit).
Unfortunately, the games industry seems to have focused on turning out hundreds of online fragfest games that bring in the $$ but leave little to the imagination. Even 'The Sims' are at it.
AI doesn't necessarily have to be 100% realistic for a rewarding offline game. But even the bots in UT2003 aren't that hot, so it's clear AI and single player games are taking a backseat to the online money spinners.
Hopefully some big breakthroughs in AI will turn the tide, but with the games industry already ignoring AI, I'm not optimistic for AI's future in games.. since everyone would rather play their dumb neighbor anyway.
mogorific carpentry experiments
link
You think it's hard to play with a dial up connection? Try sattilite sometime (*dodge*, *dodge*, *fire*... 3 seconds pass... "Wow, I missed... imagine that!").
I'd really like to see a decent AI for games like Baldur's Gate or Neverwinter Nights. The henchman have roughly the IQ of a very dumb dog. On more than one occasion, I've had a henchman walk directly into a fireball on the basis that an opponent was nearby. Mmm... toasty.
I'm a lawyer, but not yours. I wouldn't represent someone who thinks taking legal advice from Slashdot is a good idea.
I just found an interesting web site which is dedicated to the topic of Artificial Intelligence (AI) in games. Check it out.
Not until a bot calls me a "c4mp1ng n00b" by its own volition has AI come far enough.
I'll form my OWN solar system! With blackjack! And hookers!
That is so true. I tried playing a multiplayer game at work a few years ago... and I was absolutely destroyed in seconds. I wanted to get better at the game, but there was no other beginners to play with, and the single-player mode sucked.
Sex - Find It
Namely, what happens if some researched finally stumbles across an application that passes the Turing test? One that for all intents and purposes appears to be a conscious life form?
The resulting ethical problems will be myriad:
- Will the AI life form be the property of the person or corporation that developed it?
- Will the AI life form be copyrightable?
- Will the creator of the AI life form be obligated to keep it "alive" (i.e. keep the power running, etc.) as long as possible?
- Will the AI life form have the same rights as an ordinary human being?
- Will distributing the souce code for the AI life form be regulated under anti-cloning statutes?
- Will the AI life form be allowed to earn money as a result of its efforts in controlling entities in videogames?
- Will the AI life form be entitled to royalties as a participant in the creator of the videogame?
As a libertarian I am torn between my concerns about keeping markets free and unregulated, and my concerns for the freedoms and rights of potential AI life forms. Interesting times...QUOTE: For a project code-named Dmitri, Evans is now focused on improving the ability of AI to interact socially. Agents' behavior will be controlled by their membership in overlapping social groups.
----
So how long until the AI gets good enough that we don't need it to be truly multiplayer and can all play on our local machines with AI characters that can chat with us about our real lives instead of just the game?
-
but I find that the AI in Hitman II is quite exceptional. I havn't seen AI this good since Turok2 Dinosaur hunter!
I have yet to find an FPS where I felt the bots had really believable AI.
In most FPS games, the bots simply have really good "aim" and really good "dodging ability" in the higher difficulty levels, coupled with the fact that the computer technically knows where you are all the time. Even so, a player will usually develop reflexes that will allow them to outgun the bots.
Players without the "reflexes" to beat the bots' super aim can still beat them, as the bots will repeatedly fall for the same tricks over and over.
To have realistic bots, they need to be able to learn from their mistakes. Bots fail to learn things such as the following:
1) The player's favorite weapons.
A common technique in games like Quake is to "control" the weapons. If you are playing against someone who is great with the rocket launcher, but not so hot with the other weapons, you can try to limit their access to that weapon. Bots don't pick up that you use the RL all the time, and thus don't really do a great job of stopping you from getting it.
2) The player's techniques.
Obviously, if a player likes to re-use certain techniques (circle strafing, etc.) too much, other players will pick up on it. Bots, however, don't really anticipate what the player might do in this fashion.
3) Mistakes.
At the same time, the bots will often reuse the same techniques as well. However, the human player will pick up on it. Bots need to learn what tactics it has used that have failed, and try something else.
"You spoony bard!" -Tellah
I have been playing Morrowind for quite a while and the AI of the characters is simply breathtaking. I must admit it has been the only game that had me talking to people "And suddenly this big whale like creature jumps out at me so I run as fast as I can to a house and hide inside" ... "So I goes outside and the coast looks clear.. the monster is only hiding *behind* the house peaking out and then charges for me"
;)
Morrowind, if you have not played it, you must. But make sure you have a fast processor 1ghz+
Given that this is the IEEE, it was somewhat disappointing to read the following.
Fortunately, most graphics processing had by then moved onto dedicated graphics cards, and CPU resources and memory--already increasing dramatically, thanks to Moore's law--were being freed up for computationally intensive and hitherto impractical tasks, such as better AI.
They make Moore's Law sound as if it is something more than just an observation.
To me it seemed as though the article didnt really have much to say. Or rather, I didnt get much out of the article besides reading about all of the stuff I already know; that AI exists and that it is advancing. I wish it would have been something more in depth about the future of AI and computers taking over the world!
What, there's something beside A*?
Supposedly both D3 and Q4 will be shifting the focus back to single-player (great news for narrowband nerds like myself). But then again neither will mark a vast improvement in AI.
:(
id's focus is on graphics and physics (game engines) not providing strong heuristic bots (resource intensive entities)
"The number of Unix installations has grown to ten, with more expected." (Unix Programmer's Manual, 2nd ed.; june 1972)
was it tomi? I hate that bastard. he deserves to fry...
Looking for Book Reviews? Check out Literary Escapism.
"people want a good single-player experience to practice before they go on-line because they feel stupid when they get their butt kicked by a 12-year-old in Ohio," laughs Michael Zarozinski.
...AI studies people!
Read the headline too quickly again. I thought someone had found a way to get AI out of a ZX Spectrum. It's coffee time.
> If you're referring to simulating human thought, computers will *never* be that advanced.
Says who (besides you?). Can you back that up buddy? I think a hell of a lot of AI researchers will have a bone with what you said. And I don't just mean Kurzweil (http://www.kurzweilai.net/), though that's a good start.
> At least not if we continue down the path we've been on, and engineering techniques make that unlikely.
Once again, a vague statement thrown out of nowhere. Care to elaborate? Sounds to me like you're just gushing out your personal bias.
> Artificial sentience (Sci-fi AI) is a design problem, not a speed problem.
With enough speed the brain can be simulated (even though that's not really the goal of AI), because i)the brain is a physical device, ii)physics is computational, and therefore a computer can simulate it. If you simulate the brain fully, then sentience is there (and don't give me crap like the zombie arguments and other nonsense of David Chalmers et al)
> I think it's possible, but not on your PC.
He didn't claim there would be sentient AI on his PC.
PS: the original post didn't make all that much sense either, like where did he get that exact number (2025).
"Politicians and diapers must be changed often, and for the same reason."
1) The player's favorite weapons.
A common technique in games like Quake is to "control" the weapons. If you are playing against someone who is great with the rocket launcher, but not so hot with the other weapons, you can try to limit their access to that weapon. Bots don't pick up that you use the RL all the time, and thus don't really do a great job of stopping you from getting it.
In my experience human players are no different in Q3A, UT2k3 or BF1492 in those 32+player servers. I mean there are so many players like "3l33t-b0rg" or "lick my pu$$y"(no joke), that the focus is more on "I killed 'BFGFucker9000'!" than strategy that requires both team-work and (gasp) thinking.
Now if you're talking about clan games or one-on-one matches, then yes, humans move to a higher level of strategic thinking to block resources that give opponents advantages.
For an AI subsystem to perform this type of thinking requires lots of dynamic("oh shit he has a rocket launcher...time to sniper") and static analysis("grab rocket launcher so he doesn't kick my ass and own me").
Lack of good AI is perfect for the Doom zombies I think. And when you're confronted with a horde of mindless zombies, the fact remains that there's a horde of 'em, no matter how mindless they are. That's what made the original Doom such a chillingly great game.
N4st0r, trixx0r h0bb1tz0rz! Th3y st0l3 0ur pr3c10uzz!
way OT: but, if you really want to play MOVE. If it matters to you, do something about it, if not, stop whining. Shit, stop complaining about something you can change. I moved to get good cable, and it's surely not just about games. The whole net works kinda well. Try it. I still smile (like the feeling of having a child) at the speed/always on for the same price as modem+line.
Half-life had to be the best AI I have everplayed, so far still my favorite game and probably best AI i have used, besides maybe some RTS
After observing a large number of games, the major problem with game AIs is that the developer puts very little effort into the AI itself. While there are a few good/excellent AI systems out there, these are the exception and not the rule.
Naturally, the AI has the shortest time frame in the software engineering, but there is no reason it should remain stagnent across the future patches. From these patches, the developers can identify the shortfalls of the old AI, and correct them. This is very rarly done, and is only performed across versions.
It's also very difficult to find a game with a decent or challenging AI, since mose formal reviews ignore that portion of the review entirly. Most people will look for the 9/10 IGN Review award as opposed to the real deal in the message boards (the AI in the game is a cheating piece of c***).
places limitations on algebraic systems. One of the things that it does *not* do is place limits on understanding because it imposes no limits on * the number of algebraic systems* you can devise.
If a theorem cannot be expressed in one system you simply make another where it can.
One of the fascinating things about the human mind is its ability to go *beyond* single logical structures and fully understand an infinite number of incompatible algebras.
The problem with developing AI isn't so much that we don't understand the human mind, it's that we *do* understand it to be something well beyond a simple algebraic computer, which at the moment is all computers are. They are *computational* devices with a preprogramed logic. *That* logic is subject to Godel.
Your computer is a giant abacus. Nothing more, nothing less. This says nothing about the possibilities of developing machines that are *not* simply a bank of bistable switches.
Nor is there any axiom which states that intelligence must be *human* in form.
That last point is outrageously important to all sorts of fields.
KFG
President Bush recently signed Congress' "Moore's Law." It mandates that processor speed will continue to double every 18 months under penalty of law. AMD and Intel better not crack under the pressure!
Not long before Lara Croft rejects me like a real woman would.
Table-ized A.I.
"The hardest thing in game AI is just making sure that the game never looks dumb. You'd be better off having an AI that was just above average all the time, rather than one that was brilliant 98 percent of the time and stupid 2 percent of the time..."
Why not? Don't they want to model a typical geek, or did they find that hurts sales?
Table-ized A.I.
Here is one of the sites we used for new ideas in my CS class at cmu
http://www.seanet.com/~brucemo/topics/topics.htm
Here is another one
Enjoy
"1) The player's favorite weapons....
2) The player's techniques....
3) Mistakes...."
In most games these are problems, however, while it's not a FPS, the AI's in Oni are fairly good.
The AI's will learn what wepons(attackes) you use and will learn to counter. Furthor more the AI's modify their attacks based on how well you defend yourself.
The AI's couldn't be confused as humon players(even if the game had a multiplayer), however they are skilled and adaptive enugh to be chalanging and can't be beten with any one stratagy
Don't save your orgasms for Heaven; Heaven knows we need them here.
The major problem in AI is the Attention Problem - what features should be paid attention to in order to make a decision and how to ignore the huge ammount of irrelevant information (without explicitly examining that information to determine that it is irrelevant).
Game engines often present a very small "world view" (in terms of feature space) to AI agents because for every simulation cycle each agent has to check facts in its world view to guide its action, and the more complicated the world view the more CPU cycles are used by each agent.
For example, an agent might be exposed to the same fact in 3 ways: The first uses a hard-coded definition of what near means (that can be precomputed by the engine), the second allows the agent to use its own definition of nearness, while the third allows the agent to decide what distance means (if it has access to map information).
While the 3rd definition is the most flexible, it is also the most computationally expensive particularly when this computation may be run every simulation cycle.
So, what I was trying to say is that much of the flexiblity possible to an AI agent is limited by the feature space it has access to, and this feature space is usually very limited for efficiency purposes.
To improve the behavior of an AI agent, script tweaking may help some, but what is often needed is for the underlying physical engine to expose slightly more information. For example, the above "near" might be split into "sortof-near" and "really-near".
How are they supposed to learn if you keep killing them?
Give the bots a chance.
Keep your packets off my GNU/Girlfriend!
AI is a euphemism for "behavior." When I hear people complaining about how games aren't using the latest in AI research, I want to respond "that's because games don't really use AI" at least not what people think of as AI. AI in a typical game is just a list of weighted rules, such as "if the player has a more powerful weapon than character X, make character X run away." When you have lots of such rules and you twiddle with them a lot, then you get so-called AI.
Putting in random factors makes things much harder to pin down. Maybe when a character spots you, there will be a 50% "run or attack" decision. If the decision to run, then you think "Ha, ha, ha, he's running scared!" If the decision is to attack, and he gets you, then you think "Wow, that guy was good." If he attacks and you get him, then you feel like you're doing well.
To a great extent AI is psychological. You read into things what you want.
This is a good overview, but Gamasutra tends to have the meaty tech.
Who knew pathfinding was such a drag?
Keep your packets off my GNU/Girlfriend!
Err... I should have mentioned that I was talking about GOOD players, not average players who think that the fact their parents bought them a GeForce 4 Ti 4600 for their birthday makes them God's gift to FPS games.
"You spoony bard!" -Tellah
a) any computer civilization gets a technology advance
1) all AI civs suddenly have that technology by the end of the turn
b) a human civilization is in the lead
1) all AI civs suddenly declare war on the human civ
c) a human city builds a tank
1) tank is destroyed by AI's archer
d) human player wants basic features that were in civilization 1 v1.0
1) charge human $30 for an "expansion pack"
2) ???
2) profit!
Some time after getting Unreal Tournament 2003, I set out to appraise its AI. I decided to set up a game in which it couldn't cheat; I made a one-on-one game, on the map DM-Gael (a small, open map, so while the bot may always know the player's location, also vise versa), and with rocket launchers only (so that the bot couldn't do some simple trig to always hit). I set the bot to its highest difficulty, and played.
The bot had some notable weaknesses (it kept getting killed going for the powerup in the center, or while coming up a lift, and never seemed to learn from these mistakes), but did fairly well overall. In the end I won with a substantial, but not overwhelming, margin.
So, I said, the AI had failed the test: given a fair match, on its most difficult settings, it lost. But then I realized, I had a lot of fun administering it. Then I realized that the point of an AI isn't to beat the player, but to be fun to play against; whether it wins or loses really doesn't matter.
Current Games' AI Surveys IEEE Spectrum!
in its infancy. It's scope is restricted. It can never be a "jack of all trades". AI, to a large level, still seems to be hardcoded. But soon, I guess you have an AI module, to which a physical model is assigned, and then it is "trained". That module could be taught how to drive a car, or how to duck and shoot, or BOTH.
Anyways, coming to the topic of AI and entertainment, if u have visited the LOTR - TTT site, you'll see an interactive MASSIVE system. Imagine making a few entities interact, waiting for the sequence to render and then view the final movie that has been created....
|/________
|\A|ALYS|
Says who (besides you?). Can you back that up buddy? I think a hell of a lot of AI researchers will have a bone with what you said. And I don't just mean Kurzweil (http://www.kurzweilai.net/), though that's a good start.
h is terms) below.
:)
Well, if you notice, I wasn't talking about AI, or that field of research. I was talking about artificial *sentience*, or what I called "Sci-fi AI". That's what the original poster (who has been modded into oblivion) seemed to imply would be available in 20 years.
As for "says who", I don't know, I haven't got any papers to quote offhand. Nor do I know if anyone has even taken such a position. It's simply one that has slowly been occuring to me over the last few years as I learned more and more about computer architecture and organization in the course of my studies. I'll discuss the whys (in hand-waving-I-haven't-done-a-doctoral-thesis-on-t
With enough speed the brain can be simulated..., because i)the brain is a physical device, ii)physics is computational, and therefore a computer can simulate it.
Ah, see that's part of my point; it's a physical/physics limitation. Computers are essentially sequential devices; read instruction, execute instruction, repeat. Brains work in parallel. And, although we can simulate parellism with computers by dividing the time programs have access the CPU into very small chunks, there is a limit to the amount of parellelism that can be achieved by doing this, and that limit (again waving hands here, I haven't worked out the math other than intuitively) doesn't come close to the amount of parallelism that even a child's brain is capable of. Putting more speed into the computer can raise that parallelism limit, but eventually you get down to limitations on the physical level, which (again, no math worked out here) still doesn't come close.
(even though that's not really the goal of AI)
Very true, which is why I'm extremely careful to diferentiate what I'm calling artificial sentience from AI. AI, to most people who research it, is thinking or acting rationally (i.e. getting or estimating the right answers). AI to most everyone else is HAL 9000. There is a very big difference between the two.
If you simulate the brain fully, then sentience is there (and don't give me crap like the zombie arguments and other nonsense of David Chalmers et al)
I agree to that. No zombie arguments from me.
I'm just suggesting that we won't be able to simulate the brain fully on computers. We need something different. And it's a hardware issue, not a software one. Essentially, we need to construct an artificial brain, not build a Java-based buddy.
Wow... all that and I haven't even started on the problems involved in memory I/O!
"Times have not become more violent. They have just become more televised."
-Marilyn Manson
A transport ship had sneaked past my naval blockade and was unloading a division of tanks onto the shore beside my own capital.
If you left your resource center unprotected, you are dumb. No AI can fix this.
Buy a Nintendo DS Lite
I've just been reading Steve Rabin's book, AI Game Programming Wisdom, mentioned briefly in the article. I'm not a game programmer, but I am a programmer, and I've always been curious about game AIs. And I have to say that the book is very good, well worth it if you have any interest in the topic. It's actually a collection of articles written by a bunch of game AI programmers, collected and edited by Rabin. It covers a lot of ground, explains approaches that have worked and approaches that have failed, and why (in both cases). It contains both useful general principles and interesting examples of specific cases.
I'm not sure I'd recommend this book to a novice programmer, but for a moderately experienced programmer who's interested in practical game AI design, this book is well worth a look. The name says it all, this is a book written by the folks in the trenches, passing along their hard-earned wisdom. Very enjoyable.
Now I want to try my own hand at writing some game AI. Maybe I should poke around on sourceforge for games that need AI help. (Assuming I can weed my way past all the projects that have NO CODE AT ALL, which seems to be especially common with the games on sourceforge.)
Back when reaper bots came out for the original quake me and my neighbor were trading off in a game of capture the flag (best game idea ever BTW). I was pretty decent by the standards of the day, and so was he, so there was a little audiance going. I go throw down home invasion style on the Blue base, and get a rather terse message advising me that cheating with bots isn't cool. On the one hand, I'm not a bot, and that was kinda gay. But on the other, I thought it was a nice compliment in a too good to be human sort of way.
The thing is that you CAN find higher levels of human combat. The first online game I ever played was Team Fortress (Quake 1 mod) and ya, on the public servers it was generally what you described. You'd get a couple smart peopel (maybe) and everyone else would just kinda run around with no strategy. However I managed to get into a good clan and THAT was where the fun began. We, and the people we played, were highly skilled and cooridnated. Teams were quick to adapt to new situations, exploit weaknesses and so on.
If you are really in to a game, there are groups and legues of players like you that can challenge you.
Pearl harbour was the best thing that ever happened.... too bad more yankee pigs didn't die!!!!
By the looks of it, we still have some way to go until AI in games reaches the 'good enough' stage.
Good enough for what? For us to stop speaking and caring about it I guess.
When that happens, we'll have 'Invisible AI'* that just works, and game producers can no longer use it as a selling point.
Of course, I guess that won't happen anytime soon, and I can already see hardware manufacturers making AI-accelerator cards, with built-in multi-processors and neural net chips, to fit next to your graphics card. The 'Intel Inside' logo will gain a whole new meaning...
* - Yes, I'm adapting Don Norman's Invisible Computer term.
When exactly did Finite State Machines become AI ? this is a 50's model in computability theory that started in the Turing days.
The average CPU in a PC is millions of times faster than highest estimates of a neuron's computing speed. If a brain is composed of n neurons, and a CPU is n times faster than it, one can simulate the brain in realtime as if it the underlying computation is parallel. Mind you, according to some researchers, we already have the capability.
Wow, an actual use of "Beowulf cluster" in a post that isn't a stupid joke!
:-)
I'm impressed...
I'm not sure you'd get a lot of improvement from the technique though - bots would tend to play well with bots this way, unless you somehow managed to get a fitness function that reflected playing with humans. You could also invite a lot of human beta testers and evolve them based on survival rates.
Some algorithm that noticed patterns in actual gameplay would probably induce cooler behaviour - something in the lines of:
- Noticing any hots spots for damage taken in a certain map and trying to find alternate routes (thus avoiding points where the bot is sniped), or increasing speed and strafing while crossing these areas.
- Remembering spots where a player was sniping from frequently and trying to compute a route that allowed the bot to shoot without crossing the player's potential POV.
These are both things real players do, and it'd help them avoid falling in the same traps every time.
It is not that hard to give the impression of an AI that doesn't have shortcomings you mention but will you be able to beat it?
Gentlemen, you can't fight in here, this is the War Room!
However I managed to get into a good clan and THAT was where the fun began. We, and the people we played, were highly skilled and cooridnated. Teams were quick to adapt to new situations, exploit weaknesses and so on. This is offtopic, but I also joined an awesome clan for Tribes2, and I tell you -- it sucks all of your time as you get higher into the ladder. If you're married(and want to stay that way) forget about joining a clan...
I quit playing FPSes competitively because they take too much time. However, my freshman year it was fun :)
...Then we've got a long way to go. Check out the article
Thus spake the master programmer:
"Let the programmers be many and the managers few -- then all will
be productive."
-- Geoffrey James, "The Tao of Programming"
- this post brought to you by the Automated Last Post Generator...