Recommend
6 
 Thumb up
 Hide
26 Posts
1 , 2  Next »   | 

Dominion» Forums » General

Subject: Is there a Dominion AI program out there anywhere? rss

Your Tags: Add tags
Popular Tags: [View All]
Craig Liken
New Zealand
Christchurch
flag msg tools
Avatar
mbmbmbmbmb
Just a random query, but wondered if there are any downloadable type Dominion apps similar to the RFTG AI (Keldon) out there.

I know you can play on BSW, but I started to try and get into it one day and found it all too hard.
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
David desJardins
United States
Burlingame
California
flag msg tools
badge
Avatar
mbmbmbmbmb
No one has written an actual Dominion AI yet. Some people have talked about it.
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Guy Srinivasan
United States
Kirkland
Washington
flag msg tools
Avatar
mbmbmbmbmb
I have talked about it, for instance, but my computer arriving weeks late and then akrasia means I didn't do it.

Maybe difficulty, too, but I wouldn't know yet, it hasn't come to that.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Purple Paladin

California
msg tools
Avatar
mbmbmbmbmb
Writing an AI for dominion would be a HUGE undertaking; 75 different card types plus the infinite combinations they entale, well, you'd get a Forest Gump AI after a year of work at best.

We found BSW extremely easy. Just join a game, or better yet, "Initiate" one yourself and just check the "Learnig" box. Everyone we played with (that we told were just starting/learning) were extremely nice and patient.
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Jeff Wolfe
United States
Columbus
Ohio
flag msg tools
Zendo fan, Columbus Blue Jackets fan, Dominion Fan.
badge
Avatar
mbmbmbmbmb
Purple Paladin wrote:
Writing an AI for dominion would be a HUGE undertaking; 75 different card types plus the infinite combinations they entale, well, you'd get a Forest Gump AI after a year of work at best.


Not that it really changes the point you're trying to make, but (including promos), there are currently 7 basic card types and 79 kingdom card types, for a total 86 card types.

And Alchemy has been announced, which the French publisher says will have 12 kingdom cards and a new treasure. So, almost 100 card types.

And the expansion after Alchemy is expected before the end of the year.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Jordan McKible
msg tools
I had a similar experience with BSW, so I recently began work on my own solution. You can find it at http://github.com/jmckible/dominion

It's written in ruby and you can play on the command line. I've implemented all the Base cards. If you're a programmer, you should be able to figure it out, but I haven't had a chance to make it really accessible yet.

I'm not familiar with the RFTG AI you mentioned, but mine does support a type of AI. I think it's called a rules engine. For example, a Big Money AI is implemented as follows: http://github.com/jmckible/dominion/blob/master/lib/dominion...

I'm not sure what your goal is, but maybe you'll find this helpful. Any feedback is welcome.
2 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Jorge Aranda
Canada
Toronto
Ontario
flag msg tools
Avatar
mbmbmbmbmb
Jordan, that looks cool, I'm going to give it a shot. But I think you need (at least) two complementary rules engines --one for buying decisions, such as your Big Money instance, and one for playing/executing actions. Big Money doesn't need the latter because it does not buy any actions, but most other strategies would. In my opinion an Actions rules engine would be more difficult to implement.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Dave Goldthorpe
United Kingdom
flag msg tools
mb
An evolving engine would be interesting, in a similar style to a popular Puerto Rico spreadsheet. An AI that could remember winning card combinations and then repeat them, or 'mutate' the strategy with random variations, could eventually do better than a program always following the logic of the programmer.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
David desJardins
United States
Burlingame
California
flag msg tools
badge
Avatar
mbmbmbmbmb
Purple Paladin wrote:
Writing an AI for dominion would be a HUGE undertaking; 75 different card types plus the infinite combinations they entale, well, you'd get a Forest Gump AI after a year of work at best.


I don't really understand what this means, but it's not like you would write an AI by programming a list of specific rules and strategies for each card. You'd have to have meta-objectives and some automated learning. I don't think it would be that hard to make something that plays the game sensibly. Obviously it's not going to win most of the time against experts, but what game can you do that?
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Craig Liken
New Zealand
Christchurch
flag msg tools
Avatar
mbmbmbmbmb
jmckible wrote:
I had a similar experience with BSW, so I recently began work on my own solution. You can find it at http://github.com/jmckible/dominion

It's written in ruby and you can play on the command line. I've implemented all the Base cards. If you're a programmer, you should be able to figure it out, but I haven't had a chance to make it really accessible yet.


Thanks for this - I actually had seen that but had forgotten about it, and since I am not a programmer it doesn't make a lot of sense to me, sorry but thanks for your efforts.

I was just looking for some way of practising Dominion while my wife was out of town for a few days, but would certainly be interested in an AI with an interface for non-programmers if someone ever develops one (even if only for the base set).

The RFTG one is downloadable (if you go into the RFTG forums - just click on Hot and it is the top one that appears). It is a pretty good interface, and I am worse at RFTG (in fact gloriously hopeless at it) than Dominion so the AI beats me most times.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Keldon Jones
United States
Fort Collins
Colorado
flag msg tools
badge
Avatar
mbmbmbmbmb
I started work on a Dominion AI late in 2008, but it is still very incomplete. It's similar to my other AIs in that it learns by playing itself to determine useful strategies. It picked up 'Big Money' rather quickly, but had trouble progressing much beyond that point. I have some ideas for improving that, but haven't looked at it in quite a while.

I only have about 15 cards from the base set and 10 Intrigue cards implemented (mostly the simpler ones). Also, there's no user interface, so unless you're fascinated by watching the computer play against itself, it's of little interest.
8 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Jorge Aranda
Canada
Toronto
Ontario
flag msg tools
Avatar
mbmbmbmbmb
Keldon, I've been hoping for a Dominion AI from you for a while already --I absolutely love the Blue Moon and RftG ones.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
McDog
United States
Saint Paul
Minnesota
flag msg tools
badge
Avatar
mbmbmbmbmb
mrkeldon wrote:
I started work on a Dominion AI late in 2008, but it is still very incomplete. It's similar to my other AIs in that it learns by playing itself to determine useful strategies. It picked up 'Big Money' rather quickly, but had trouble progressing much beyond that point. I have some ideas for improving that, but haven't looked at it in quite a while.

I only have about 15 cards from the base set and 10 Intrigue cards implemented (mostly the simpler ones). Also, there's no user interface, so unless you're fascinated by watching the computer play against itself, it's of little interest.



Oh man, would that be cool if you got a RFTG like Dominion game working. I would have to consider a large donation to help fund your efforts.


I've already funded Rio Grande with every card and set released...bring on Alchemy!
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Randall Farley
United States
Birmingham
Alabama
flag msg tools
mbmb
I have a Dominion computer program in the planning stage; I am making the computer player done as a interface so I could program multiple opponents as the code progresses. The first computer player will use the gold buying strategy.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Steven
United States
flag msg tools
Avatar
mbmbmbmbmb
mrkeldon wrote:
It picked up 'Big Money' rather quickly, but had trouble progressing much beyond that point.

That's just about where I am!

This is exciting news, Keldon. Hopefully permissions work out and you can release this soon.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Tomasz Pichlinski
Poland
flag msg tools
mbmbmb
Keldon, as far as i look at your rftg i understand its neural net. I thing about Dominion client server and a little about AI.

If i would implement Dominion AI i will try to make engine with monte carlo technique. For every possible action play milions of random moves to the end and choose action which gives best result. Since it will takes some time to compute moves second engine should be created which utilizes neural networks. After milions of possible game states and moves calculated by engine 1 its time to learn neural nets this moves. More moves we have calculated in database and better move quality means after learning better moves second engine makes. Move quality generation can be tuned by time to compute or how many random games should be played. Interesting in this approach is that moves can be calculated on many machines and next net learning phase only on one computer.

Let the imagination rule :-): after this initial training if AI plays good but not very well it can be tuned with some genetic algorithm or simulated annealing where evaluation function is game score vs another instance of unmodified NN weights...

How about temporal difference learning algorithm? I do not know much about it, but it is succesfully used in Backgammon.

I know it sounds sweet in theory and in real life can be bad, but it can be worth of thinking about.
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Tomasz Pichlinski
Poland
flag msg tools
mbmbmb
If its so much people interested in Dominion programming maybe its better to join and make one better program instead of many unfinished, in plans, almost working, few bugs left versions? I will be very interested in such project, especially with client server game with all cards implemented (AI can be made after that).

My skills: C++ programming, wxWidgets, some Python and Java.

I can make simple user interface with c++ or python and wxWidgets - maybe not so impressing such BSW, but comfortable i think. I can also be part of team in implementation of game engine. Im not good at network programming and bigger projects engineering.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Tim Seitz
United States
Glen Allen
VA
flag msg tools
badge
Like water spilled on the ground, which cannot be recovered, so we must die. But God does not take away life; instead, he devises ways so that a banished person may not remain estranged from him. 2 Sam 14:14
Avatar
mbmbmbmbmb
mrkeldon wrote:
It's similar to my other AIs in that it learns by playing itself to determine useful strategies. It picked up 'Big Money' rather quickly, but had trouble progressing much beyond that point.


Sounds like a lot of players I know.

Keldon, if you thought the response to your RftG AI was tremendous, wait till you publish your Dominion AI!!! surprise
1 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
McDog
United States
Saint Paul
Minnesota
flag msg tools
badge
Avatar
mbmbmbmbmb
heavensblade23 wrote:


Too bad it keeps crashing on me. Subscript out of range.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Henri Harju
Finland
Oulu
flag msg tools
badge
Avatar
mbmbmbmbmb
heavensblade23 wrote:

Hey, that was pretty cool. Still seems to be pretty buggy as remodeling a province crashed the game...
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Joseph
United States
Ankeny
Iowa
flag msg tools
because it's all I ever wanted to be..
badge
Cloning gamers since 2003
Avatar
mbmbmbmbmb
Same here, and I was hoping for more than Basic.

I would work towards fixing the bugs and adding all the cards, then it would be awesome.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Craig Liken
New Zealand
Christchurch
flag msg tools
Avatar
mbmbmbmbmb
jcaraway wrote:
Same here, and I was hoping for more than Basic.

I would work towards fixing the bugs and adding all the cards, then it would be awesome.


Even basic sounds good to me - will try it when I next have some spare time at home.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
Odin Wednesday

Indiana
msg tools
mbmbmb
jcaraway wrote:
Same here, and I was hoping for more than Basic.


You can do just about anything in VB. The syntax is a little different from the C-derived family of languages (and, at least in VB classic, some of the philosophy is more Fortran-derived than C-derived, not to mention that the class/object model is interface-implementation rather than a more classic object-oriented approach), but it's extremely capable.
 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
ŁṲÎS̈
United States
Mesa
Arizona
flag msg tools
F*** it! Do it LIVE!
badge
Didn't know what to spend all this sweet GG on, so I bought the overtext.
Avatar
mbmbmbmbmb
Mr_Wednesday wrote:

You can do just about anything in VB.


How about write something that runs on Mac or Linux ?


 
 Thumb up
 tip
 Hide
  • [+] Dice rolls
1 , 2  Next »   | 
Front Page | Welcome | Contact | Privacy Policy | Terms of Service | Advertise | Support BGG | Feeds RSS
Geekdo, BoardGameGeek, the Geekdo logo, and the BoardGameGeek logo are trademarks of BoardGameGeek, LLC.