Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Poll

Would you use this if we ever get a releasable version?

Yes
No

Pages: 1 ... 6 7 [8]

Author Topic: An AI to play dwarf fortress. Has this been done? ==UPDATE!==  (Read 11805 times)

AutomataKittay

  • Bay Watcher
  • Grinding gears
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #105 on: November 10, 2012, 07:50:27 pm »

Looks good, and if it works, we should get it to do collab games with experienced players, might teach it important stuff about minecarts/pumps/magma/military/Fun.
Trying to teach a AI what !!FUN!! is is like teaching a 5 year old gun safety with a Fat Man launcher.
:D
If it learns to go Boatmurdered, it's doing it's job right.

And probably immortal in term of DF time.
Logged

ZimminyCricket

  • Bay Watcher
  • Just a crazy guy who does crazy things.
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #106 on: November 10, 2012, 07:56:54 pm »

Hey guys,

Just checking in to say, that I'm digging the response this thread is starting to get. 

I try to update ya'll at least once a week, but please forgive me if I slip. 

We skipped thursday night because of the weather, so sorry for not updating.  Have more news tomorrow night.

We've still got to interpret what we're actually seeing, but compared to writing the protocol to de-render curse, that shouldn't be too hard as we're going to feed it into a database, and then if I have my way just compare what character it's seeing to a table that's floating around on the wiki...somewhere.

Its starting to get interesting!

Catch ya'll later!
Logged
And then there are crazy buggers like me...

Coding an AI to try and surmount the insurmountable odds of failure.

Cinder

  • Bay Watcher
  • This machine kills fascists.
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #107 on: November 10, 2012, 11:54:35 pm »

Seeing that AIs have infinite patience, I feel that whatever it's going to make will be both terrifying and glorious.
Logged
If you teleport to your bed, it's alcohol.

Orange Wizard

  • Bay Watcher
  • mou ii yo
    • View Profile
    • S M U G
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #108 on: November 11, 2012, 06:12:40 am »

How is the data from the Curses interpreter going to be... uh... interpreted by the AI? It seems hideously complicated.

<<Edited to remove some ambiguity>>
Assuming the AI 'understands' the Interpreter, will it be capable of registering multi-tile features, such as a cistern, or furnace room, or parts of the surface as 'unsafe due to goblins'? If so, how will this be done?
« Last Edit: November 11, 2012, 06:27:25 am by InsanityIncarnate »
Logged
Please don't shitpost, it lowers the quality of discourse
Hard science is like a sword, and soft science is like fear. You can use both to equally powerful results, but even if your opponent disbelieve your stabs, they will still die.

ZimminyCricket

  • Bay Watcher
  • Just a crazy guy who does crazy things.
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #109 on: November 11, 2012, 11:08:56 am »

How is the data from the Curses interpreter going to be... uh... interpreted by the AI? It seems hideously complicated.

<<Edited to remove some ambiguity>>
Assuming the AI 'understands' the Interpreter, will it be capable of registering multi-tile features, such as a cistern, or furnace room, or parts of the surface as 'unsafe due to goblins'? If so, how will this be done?

The data from the curses interpreter is going to dumped into a database.  The database is going to be broken down for each tile in each z-layer, and only the 'table' for the current z-layer is going to be kept live while the others are crunched in the background.
Spoiler (click to show/hide)

As far as your multi-tile feature question, I feel it is still a bit ambiguous and I'm not quite sure as to what you're asking. 

With the surface being unsafe due to gobbos, the AI will know (through registering a 'Event, or Mega-event) that it is under attack, and will learn how to handle such an event from there. 



Logged
And then there are crazy buggers like me...

Coding an AI to try and surmount the insurmountable odds of failure.

AutomataKittay

  • Bay Watcher
  • Grinding gears
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #110 on: November 11, 2012, 11:22:04 am »

How is the data from the Curses interpreter going to be... uh... interpreted by the AI? It seems hideously complicated.

<<Edited to remove some ambiguity>>
Assuming the AI 'understands' the Interpreter, will it be capable of registering multi-tile features, such as a cistern, or furnace room, or parts of the surface as 'unsafe due to goblins'? If so, how will this be done?

The data from the curses interpreter is going to dumped into a database.  The database is going to be broken down for each tile in each z-layer, and only the 'table' for the current z-layer is going to be kept live while the others are crunched in the background.
Spoiler (click to show/hide)

As far as your multi-tile feature question, I feel it is still a bit ambiguous and I'm not quite sure as to what you're asking. 

With the surface being unsafe due to gobbos, the AI will know (through registering a 'Event, or Mega-event) that it is under attack, and will learn how to handle such an event from there.

I believe that the question is can AI recognize functional part that's not a workshop by itself and it's own design or a collection of workshop working together ( Such as 'water holding space', 'where ore and scrap metal things go to be melted', etc. Or even just a power generating station full of watermills. ).
Logged

ZimminyCricket

  • Bay Watcher
  • Just a crazy guy who does crazy things.
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #111 on: November 11, 2012, 12:29:12 pm »

Ah, we've yet to bridge that river, quite honestly we're taking this thing in small steps, planning each step upon the completion of the one prior.  Maybe not the best way to tackle the problem, but with a problem so large........
Logged
And then there are crazy buggers like me...

Coding an AI to try and surmount the insurmountable odds of failure.

HiEv

  • Bay Watcher
  • Denizen of Counter-Earth
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #112 on: November 11, 2012, 12:32:55 pm »

We've still got to interpret what we're actually seeing, but compared to writing the protocol to de-render curse, that shouldn't be too hard as we're going to feed it into a database, and then if I have my way just compare what character it's seeing to a table that's floating around on the wiki...somewhere.

It's at the wiki here: Tilesets

However, I should note that many, if not most, characters mean multiple things.

You're still going about things the hard way, IMO.  It would make more sense to use DFHack to interpret the screen, get various info, send commands, etc., instead of reading the screen and having the program to try to interpret that and sending key commands.
Logged
The difference between intelligence and stupidity is that intelligence has its limits.

ZimminyCricket

  • Bay Watcher
  • Just a crazy guy who does crazy things.
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #113 on: November 11, 2012, 12:48:17 pm »

We've still got to interpret what we're actually seeing, but compared to writing the protocol to de-render curse, that shouldn't be too hard as we're going to feed it into a database, and then if I have my way just compare what character it's seeing to a table that's floating around on the wiki...somewhere.

It's at the wiki here: Tilesets

However, I should note that many, if not most, characters mean multiple things.

You're still going about things the hard way, IMO.  It would make more sense to use DFHack to interpret the screen, get various info, send commands, etc., instead of reading the screen and having the program to try to interpret that and sending key commands.

Again, we're trying to write an AI that can be moved from Roguelike to Roguelike, so we're dealing with RAW ASCII art, It just so happens that we picked the MOST DIFFICULT ROGUELIKE EVER to get started with. 
Logged
And then there are crazy buggers like me...

Coding an AI to try and surmount the insurmountable odds of failure.

AutomataKittay

  • Bay Watcher
  • Grinding gears
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #114 on: November 11, 2012, 12:49:22 pm »

We've still got to interpret what we're actually seeing, but compared to writing the protocol to de-render curse, that shouldn't be too hard as we're going to feed it into a database, and then if I have my way just compare what character it's seeing to a table that's floating around on the wiki...somewhere.

It's at the wiki here: Tilesets

However, I should note that many, if not most, characters mean multiple things.

You're still going about things the hard way, IMO.  It would make more sense to use DFHack to interpret the screen, get various info, send commands, etc., instead of reading the screen and having the program to try to interpret that and sending key commands.

Again, we're trying to write an AI that can be moved from Roguelike to Roguelike, so we're dealing with RAW ASCII art, It just so happens that we picked the MOST DIFFICULT ROGUELIKE EVER to get started with.

I'd argue Nethack's more difficult, and I've never gotten far in it :D

DF is more complicated, yes, but not really more difficult.
Logged

HiEv

  • Bay Watcher
  • Denizen of Counter-Earth
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #115 on: November 11, 2012, 01:11:00 pm »

Again, we're trying to write an AI that can be moved from Roguelike to Roguelike, so we're dealing with RAW ASCII art, It just so happens that we picked the MOST DIFFICULT ROGUELIKE EVER to get started with.

No offense, but you're never going to make an AI that can learn to play multiple rougelikes.  To do that would require an AI on the level that experienced AI researchers only dream of.

To put it another way, if you're making a collection of expert systems then most (99%) of the things you need the AI to do in Dwarf Fortress would have no applicability in any other roguelike.  If you're not making a collection of expert systems, then you're going to need natural language processing, problem solving, pattern recognition, automatic object categorization and relational modeling, and a host of other AI techniques that would take a team of researchers with a huge budget years to make before it could begin to do what you're talking about.

You aren't just shooting for the moon, you're shooting for a moon that's one galaxy over.

I would highly recommend scaling back your goals to something reasonable.
Logged
The difference between intelligence and stupidity is that intelligence has its limits.

GreatWyrmGold

  • Bay Watcher
  • Sane, by the local standards.
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #116 on: November 11, 2012, 04:17:15 pm »

Try shooting for a star a galaxy over, they're bigger.

If you're making AI that versatile, congrats and roguelikes are a bit of a narrow field to put it in.


Mire likely, you're going farther than you can. Stick to one game.
Logged
Sig
Are you a GM with players who haven't posted? TheDelinquent Players Help will have Bay12 give you an action!
[GreatWyrmGold] gets a little crown. May it forever be his mark of Cain; let no one argue pointless subjects with him lest they receive the same.

Fieari

  • Bay Watcher
    • View Profile
Re: An AI to play dwarf fortress. Has this been done? ==UPDATE!==
« Reply #117 on: November 12, 2012, 01:26:50 pm »

So, you're trying to make a roguelike AI, not a DF AI?  Because DF is not a Roguelike except in adventure mode.
Logged
Pages: 1 ... 6 7 [8]