Jump to content

Photo

AI Agents that play Atari games


5 replies to this topic

#1 ibogost OFFLINE  

ibogost

    Chopper Commander

  • 139 posts
  • Location:Atlanta

Posted Fri Jan 27, 2012 4:31 PM

Forgive me if you already know about this, but I didn't.

Atari 2600 Learning Environment (ALE) is a "simple object-oriented framework that allows researchers and hobbyists to develop AI agents for Atari 2600 games." It runs atop Stella, and the programmer can write external scripts or programs in C++ or other languages (via a FIFO Pipes interface) to manipulate an Atari game running in the emulator.

In other words, the AI is not in the game, for the gameplay's sake, but outside the game, scripting the players.

I suspect the Atari was chosen because (a) its games are quite simple, yet still real, and thereby easy to script and (b) Stella is open source and well documented. This may only be of interest in the machine learning world, but it's at least hypothetically possible that Atari programmers might want to use such a system to automate testing of their own games.

No matter the case, crazy weird!

#2 rockfistus OFFLINE  

rockfistus

    Chopper Commander

  • 203 posts

Posted Sun Jan 29, 2012 6:47 AM

That's cool! right on man, thanks for posting it.

#3 trent OFFLINE  

trent

    Chopper Commander

  • 115 posts
  • Location:Boise, ID

Posted Tue Feb 7, 2012 12:03 AM

I dowloaded and played with this a bit, had it playing Freeway in fairly short order. It does provide evidence that a game is being played, but as with many academic projects ease of use was not high on the list of priorites. The documentation states that the emulation core is decoupled from audio/video and while that is technically true, it is more accurate to say that the audio/video portion has been removed :-). Still super cool, and this would probably make a great foundation for adding network play to Stella.

#4 Propane13 OFFLINE  

Propane13

    Stargunner

  • 1,525 posts
  • Location:Charleston, SC

Posted Sat Mar 31, 2012 6:28 AM

So, is this a way to do tool-assisted speed-runs?

-John

#5 Rootbeer OFFLINE  

Rootbeer

    Combat Commando

  • 3 posts

Posted Mon Apr 2, 2012 1:30 PM

So, is this a way to do tool-assisted speed-runs?


I've barely looked at ALE yet, but it seems like it could be.

Over on tasvideos.org there's a stale thread in the "Other emulators" forum about Atari 2600 TASing. The two obstacles to that happening, as of a few years ago, were (1) the lack of support in emulators for essential tools like input re-recording and playback, and (2) the paucity of 2600 games that would be interesting to watch a TAS of.

That doesn't mean *I* wouldn't be interested in learning whether a sub-5.50 run in Dragster is theoretically possible...

#6 stephena OFFLINE  

stephena

    River Patroller

  • 2,529 posts
  • Stella maintainer
  • Location:Newfoundland, Canada

Posted Wed Apr 4, 2012 2:14 PM


So, is this a way to do tool-assisted speed-runs?


I've barely looked at ALE yet, but it seems like it could be.

Over on tasvideos.org there's a stale thread in the "Other emulators" forum about Atari 2600 TASing. The two obstacles to that happening, as of a few years ago, were (1) the lack of support in emulators for essential tools like input re-recording and playback, and (2) the paucity of 2600 games that would be interesting to watch a TAS of.

That doesn't mean *I* wouldn't be interested in learning whether a sub-5.50 run in Dragster is theoretically possible...


Yes, that about sums up my feelings about this too. There's currently some rudimentary support in Stella for input re-recording (as they call it), but it isn't enabled in the main releases, and I haven't worked on it in about 2 years. Basically, it records all events while playing a game, which can then be reloaded. After that, the events are replayed, and it seems the game is playing itself. My interest sort of fizzled out on that feature since (a) I have many things to work on and I didn't really find it interesting (or get much feedback), and (b) I'm not sure how much it would be used (as they allude to in the second point above).

My time is very limited, so I don't want to waste time working on a feature that won't be used very much. Note that I'm not shutting the idea down completely, just stating that it isn't anywhere near the top of the TODO list at the moment.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users