Slashdot Mirror


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.

8 of 170 comments (clear)

  1. no video? by spongman · · Score: 3, Insightful

    this is a video game, after all...

  2. Re:The screen buffer? Really? by Gibgezr · · Score: 5, Insightful

    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.

  3. So... in a few years... by WheezyJoe · · Score: 4, Insightful

    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...
  4. Ramifactions for the Future of Gaming by TranquilVoid · · Score: 4, Insightful

    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.

  5. Re:Not Impressed by freeze128 · · Score: 2, Insightful

    Reconfigure your keyboard. You don't need to use WASD for doom. Try Right-Mouse for FORWARD instead. Your finger will thank you.

    Sorry for the 20-year late message.

  6. Re: The screen buffer? Really? by maugle · · Score: 2, Insightful

    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.

  7. Re:The screen buffer? Really? by Anonymous Coward · · Score: 0, Insightful

    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.

    What bullshit headlines, like "New AI is capable of beating humans at Doom"? That is quite directly true, and says so little you can't argue it is bullshit.

    Or do you mean bullshit summary instead of headline? Because the summary is also quite direct and true. "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. " This is exactly what was done, it wasn't just hard coded to do stuff, but went through a learning process where it was fed only an objective and the screen buffer. Yes, it was programmed with how the game work and yes it had an objective programmed, but the summary doesn't say otherwise.

    That couldn't be farther from the truth.

    How could you possibly argue it is that wrong, when that is what is described in the paper? Are you suggesting the paper lied too? Or are you just upset that the objective function is not counted as part of the input? In that case, you're arguing a much subtler issue, and the fact still remains the program depends upon the screen buffer as an input. Disagreeing on subtleties like that is not "couldn't be farther from the truth" and saying such is disingenuous, as if you are hoping to convince people through display of confidence instead of display of actual information.

    Prepare yourself for some serious disappointment and read the paper.

    Yes, read the actual paper, and see how some of the things you've posted multiple times is just flat out false.

  8. Re:Don't most games do this... by Anonymous Coward · · Score: 4, Insightful

    Modern re-implementations of Doom and Wolfenstein have a depth buffer. The original do not.

    Doom used BSPs to sort walls from front to back and a scanline like algorithm that guaranteed no overdraw, so there is no use for a depth buffer. Sprites were sorted from back to front, and occlusion with other sprites was handled by painter's algorithm, and occlusion with walls was done by using a list of drawn walls and direct intersection testing. Again, no use for a depth buffer.

    The algorithms in the original Doom wasn't perfect, and there are some severe artifacts to find if you know where to look, especially if sprites where near a step. Also, re-implementing Doom in something with a depth buffer like OpenGL either requires modification to how sprites are rendered, or you will get a visual difference from the original game. In Doom, the lack of clipping of sprites against the floor and ceiling is usually easy to handle by just shifting of sprites vertically, for example. But some other games made with the Doom engine depended more heavily on the lack of such clipping in the perspective used by the artists creating the sprites, and it can take some effort to get OpenGL to not clip things clip when that weren't clipped in the original game.