New AI Is Capable of Beating Humans At Doom (denofgeek.com)
An anonymous reader quotes a report from Den of Geek UK: Two students at Carnegie Mellon University have designed an artificial intelligence program that is capable of beating human players in a deathmatch game of 1993's Doom. Guillaume Lample and Devendra Singh Chaplot spent four months developing a program capable of playing first-person shooter games. The program made its debut at VizDoom (an AI competition that centered around the classic shooter) where it took second place despite the fact that their creation managed to beat human participants. That's not the impressive part about this program, however. No, what's really impressive is how the AI learns to play. The creator's full write-up on the program (which is available here) notes that their AI "allows developing bots that play the game using the screen buffer." What that means is that the program learns by interpreting what is happening on the screen as opposed to following a pre-set series of command instructions alone. In other words, this AI learns to play in exactly the same way a human player learns to play. This theory has been explored practically before, but Doom is arguably the most complicated game a program fueled by that concept has been able to succeed at. The AI's creators have already confirmed that they will be moving on to Quake, which will be a much more interesting test of this technologies capabilities given that Quake presents a much more complex 3D environment.
Bring on your pesky AI. What I don't break with the hammer, I will break with my urine. Bzzzt!!!
Well I for one welcome our new 2d overlords..
It's funny to see some mainstream press outlets freak about about this like it was Skynet when three is already so much anti-layer going on in games already...
Many games have creatures that hunt players, usually programmed with a somewhat limited view of the entire internal game world just as this AI has only the screen to understand where objects are.
So I guess I'm missing what is really new about this, I assume some in-game AI in a few games somewhere has already had behavior programmed by some kind of learning mechanism.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
this is a video game, after all...
I would have thought AI had already beaten us at those games long before beating us at chess or go. Note sure if I am supposed to feel good as a human or bad as a programmer now.
Aim bots.
You totally miss the point: it's trivial to write a perfect bot that hooks into the game's internals and always wins. It's difficult, and more generally applicable, to make a bot that learns to play by watching only the same info the human players get: the screen buffer.
Can I rig Call of Duty with an AI auto-pilot plug-in, and just sit back and watch it steam-roll over all the sucker humans in the game? If I play an online game like Overwatch and get smeered over and over by an opponent(s) with perfect aim and lightning-quick moves, will I just assume someone's introduced a bot into the game and I'm wasting my time with my hopelessly inferior carbon-based reflexes? Gaming may need its own version of the Butlerian Jihad.
Take it easy, Charlie, I've got an Angle...
Being able to beat a human isn't a big deal. Being able to do so while using the exact same inputs (key presses) and outputs (a picture of the screen) as a human is a big deal. Doom is definitely a simplified problem set (a given sprite only ever varies in scale and X/Y position), but it's still an impressive feat of machine vision and machine learning.
The scary part is not an AI bot beating you in a game.
The very scary part is an AI bot (with physical presence and simple vision) beating, maiming, or killing you into submission when you and [hundreds, thousands, millions] of your fellow humans rebel against an oppressive, intrusive state that uses these bot to control the "rabble", justified by "Law and Order".
- Leonard
Until's middle finger hurts from pressing the "W" for five hours straight, I will not be impressed. (yes I did this in 1994).
It will be interesting to see how future games develop to keep them fun for humans in an AI-filled world.
Imagine your AI setup gets to the point where it truly has the same input, not needing to be directly fed the screenbuffer but can use a camera pointed at your monitor. Suddenly current anti-cheating technologies mean nothing, and enough people using these would quick ruin a game.
They've had Doombots for years.
You should continue to feel good as a human. Humanity needs that. The other posters will want to tell you that it's not that an AI beat a human, but HOW it did: By learning. I'm taking a different approach: It's not about the performance of the AI. It's all about how playing the game makes you FEEL. Sure, the AI got the most kills, but what KIND of kills, and at what cost? Did it seek out and kill the only players who were out of ammo, and low on health? Did it ever sacrifice itself to protect an asset? Deathmatch was designed for humans to play against humans. So you can choose co-op on a whim to overcome a more powerful enemy, and then betray your allies at the last second. The AI cannot experience that.
So go ahead. Feel good as a human. And you can feel good for the fact that you know that the AI can NEVER feel good.
We would have both died in the radioactive waste. I never mastered that game, and was so utterly hopeless at Quake (and the zillions of Quake clones that came after it) that I would be more useful at teaching the AI how not to play that game.
Damn_registrars has no butt-hole. Damn_registrars has no use for a butt-hole.
There's one glaring problem with this. The bot is good enough to beat a human. Most humans don't play Doom very well. If it beat a well known good player like Ocelot, Sedlo or Johsen, then it would be impressive. It's similar to writing a chess AI that can beat a human. This was done 30 years ago, but can that AI beat a grand master? Judging by the articles, the headline is somewhat misleading.
Doom may seem simple compared to Quake, at least superficially, but Doom features the BFG 9000 which a good player can do some fairly impressive things with, that would be VERY hard to deduce from simply observing. How the BFG worked wasn't really worked out in full detail until the source code was released. The BFG9000 is probably one of the most complex FPS weapons in any mainstream game. Then there are techniques like wall running, bumping, silent BFG shots etc. Knowing about these and when they are of use, can give a player a huge edge. Can the bot discover, use and master this? Such techniques are vital on the most common deathmatch maps, map01 and 07 in Doom 2.
Doom deathmatch can also be played in altdeath mode, typically map11 or maybe map16 are used for this type of play. This introduces many new skills, and downplays other. It is a rather different experience. Does the bot handle this? Navigating the 3d space of map11 is a lot more complicated than map07, which is basically flat. Figuring out the map, teleporters, secret doors, trigger lines that activate elevators, etc is pretty complicated stuff.
Given phrases like "Their agent, he said, “was ducking most of the time and thus was hard to hit.” I suspect a good human player would outskill the bots here. From the ViZDOOM paper (https://arxiv.org/abs/1605.02097) "we test the environment by trying to learn bots for two scenarios: a basic move-and-shoot task and a more complex maze-navigation problem."
When it comes to singleplayer, I would love to see bots play better than Henning in his 30nm run in 29:39, https://www.youtube.com/watch?...
Rest in peace Malin "looxn" Kristiansen. We miss you...
All the way back in the original Quake there was a really nice learning AI written in quake C. One version allowed you to add practice bots to work on your deathmatch strategy.
Similar to the AI described in this article, the AI in this mod was ignorant of the map and had no preset patterns. It learned by doing. So as you began playing against them they were easy kills in the early rounds. They'd often just stand there and get shot. And they couldn't hit the broad side of a barn.
But they learned the map. And they learned your moves. And within a few rounds you'd be lucky to stay alive long. And finally they would learn enough to get you every time. They'd know which direction you were going to dodge before you did. And they kept track of every resource in the game and all of the respawn times, so they'd deny you any ammo or health by timing their movements perfectly to collect all spawns instantly.
It was very cool.
Then the guy who wrote it used his AI to replace the original game AI for all of the enemies. Wow. It made the game into an entirely different experience.
After about a half-level, the enemies would learn to avoid you, go out and recruit all the bad guys from the level and return in force. After a couple of more levels they'd learn to ambush, flank and surround you. They'd team up their fire, so you'd dodge a fireball to the left and strafe right into another fireball.
It was really interesting, but ultimately unplayable. It really gave me an appreciation of the level of "balancing" that goes into creating a proper game AI. It certainly isn't about the same thing as making a chess AI that can beat Kasparov. It requires a great deal of work to make the enemy realistic and interesting and difficult but ultimately beatable.
In what way? The entire point of this project is that it relies on the screen buffer, hence the name "VizDoom".
Unless it also uses an aim bot, it isn't winning vs rail gun wielding aim bot players.
God spoke to me
It's difficult, and more generally applicable, to make a bot that learns to play by watching only the same info the human players get
That's not what's happening.
We've seen similar bullshit headlines like this before that imply that the program learned to play the game just from watching the screen. That couldn't be farther from the truth.
Prepare yourself for some serious disappointment and read the paper.
Required reading for internet skeptics
I don't buy that at all... the computer in this case is still learning through visual feedback only. If you replaced the screen buffer with a camera, the neural net would very quickly learn to ignore the areas outside of the monitor. Similarly, using a mouse and keyboard would be more of an accomplishment for the hardware engineers rigging up the appropriate servos than for the AI learning to use them.
You should buy that.
Until there's a link between brain and game to manipulate the controls, the Script has an unfair advantage. I have to use a keyboard, the script doesn't.
_ _ _ Go for the eyes Boo! GO FOR THE EYES!
Yeah, but does the AI live in its parents basement and pee in empty Mountain Dew bottles ? I think not!
AI may win at DOOM, but we're superior LOSERS!
So there...
Pointing a camera at the screen is nothing like how human vision works, as human vision is a complicated mess of dynamic gain and feedback, not a simple rectangular array of values. A mechanically controlled mouse and keyboard is nothing like a human, as you can easily move it faster and with more precision than any human ever could. Adding a camera and mechanical controls could easily be simulated by just adding lag to outputs and noise to inputs, but how lag affects a control system and noise affects computer vision is pretty well established. You would learn nothing much, for a lot of effort, while still not really doing anything to approximate a human any better.
Too many people on Slashdot look at a tree and can't see the forest. The point of most AI research, especially practical parts of it, is not to duplicate humans as best as possible, but to accomplish various tasks that have traditionally been easy for humans and difficult for machines. Exploring an environment from visual information is one such task, and many applications will have other aspects nothing like a human. The fact that this AI doesn't deal with slightly blurrier image is as inconsequential to the point as complaining the AI doesn't deal with drowsiness or aging the same way a human player would.
It is inevitable.
Good part is - we short circuit the entertainment industry like this means we win some private time we can do something else....
That's not what's happening.
The summary, article, and paper all say you are wrong.
Ahh, my apologies for the previous post.
You've posted your lies 7 times in this thread so are clearly just purposefully trolling.
Go ahead and disregard all the facts and don't bother replying to me.
They took the same reinforcement learning techniques from the Atria 2600 AI and applied them to Doom. It worked. Next they plan to do it on Quake. Let me give you a hint for the future: It'll work.
It is still noteworthy, since the Atari visual frames are built up from sprites of limited size that are very convenient for a convolutional model: once it has learned to detect the sprites, it has an accurate representation of the location of the relevant objects in the scene. In doom, since it is a 3D scene, there is no such one-to-one correspondence between object identities and visual appearance. The fact that the method still works is not at all trivial.
as great of a game that was, wolf3d was household name, not blake stone.
Looks like someone didn't read the paper. It's free, so it's not like it'll cost you anything to read it.
Here's a helpful hint: When you hear than an AI "taught itself" anything, it's guaranteed to be bullshit for the foreseeable future. Simply things like determining success criteria are far-beyond what so-called AI can actually do that it's laughable to say it "taught itself" anything.
They trained a NN just like we've been training NN's for ages. It's about as interesting as an undergrads NN project.
Required reading for internet skeptics
What about my post was false?
This toy did not "teach itself" to play the game using only feedback from the screen buffer. That is a very simple and obvious fact. How you can believe otherwise is astonishing. Read the damn paper.
I know. No one likes to have their silly fantasies shattered by the cold light of reality, but enough is enough. Face facts, read the paper, and get over it. The last thing we need is another technology-based religion like the "less wrong" group or the Kurzweil cultists..
Required reading for internet skeptics
"I don't buy that at all... the computer in this case is still learning through visual feedback only."
Instantaneous visual feedback. Humans have serious input and output lag in comparison. Give the bot the exact same latency we've got and see how it does.
Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
sounds like the base logic for a terminator. Stick the same code in a robot with a gun and we're all screwed.
How is this not using the screen buffer?
I read the internet for the articles.
Who said it didn't use the screen buffer?
My point was that it didn't learn to play the game exclusively using feedback from the screen buffer, like the magical thinkers here seem to believe.
Required reading for internet skeptics
You posted as AC but signed your post anyway? What is wrong with you? Get over yourself.
I PLAY NIGHTMARE IN MY SLEEP
I STRAIGHT UP GOT A CARBON FIBER HAND DESIGNED BY NASA FOR WASD MOVEMENT
RIP N' TEAR!
(Please don't use so many caps, it's like YELLING)
(Please don't use so many caps, it's like YELLING)
(Please don't use so many caps, it's like YELLING)
(Please don't use so many caps, it's like YELLING)
From the actual paper: "Game Settings: The game’s state was represented by
a 120 × 45 3-channel RGB image, health points and the
current tick number (within the episode). Additionally, a kind
of memory was implemented by making the agent use 4 last
states as the neural network’s input. The nonvisual inputs
(health, ammo) were fed directly to the first fully-connected
layer."
So yes, they gave it two integers from the internal workings of the game, solely because the player gets those values from the visuals, but they are using such a lo-res version of the visuals that the program can't get that info from it. Seriously, the AI is getting it's information from the screenbuffer, albeit a very very lo-res screenbuffer (because each pixel is an input to a neural net, they don't want to overload the network with too many inputs).
The last second to last sentence of the article says, "...the developers claim that their AI won one of the competition games by learning to duck and therefore making itself much harder to hit." What version of Doom are they playing? As a teenage I played countless hours of Doom 1 & 2 and I don't remember a duck/crouch button.