Login  |  Register

Author Topic: Request for data  (Read 202 times)

Offline math_is_my_religion

  • Unconfirmed
  • *
  • Posts: 1
    • View Profile
Request for data
« on: 24 July 2019, 10:14:42 AM »
Hey All,

I'm looking to make a bot to play Dominion in a similar fashion as [https://www.youtube.com/watch?v=qv6UVOQ0F44][/this]bot learned a level of Mario. I can do this by simulating hundreds of thousands of games from scratch but my job would be made a lot easier if I had some game records to start it off with. Is there a way to get a dump of all (or a lot) of games played?

Offline Ingix

  • Global Moderator
  • *****
  • Posts: 1421
    • View Profile
Re: Request for data
« Reply #1 on: 24 July 2019, 10:50:52 AM »
First: I applaud your determination to do that work, it would be really nice work. Data is available, you should maybe contact ceviri, who did a lot of work to showcase how a game flowed from start to finish.

But: That task seems daunting (to me).

First, you need a way to automatically play Dominion (so your bot can play games and learn). How do you intend to do this? You'd have to use a Dominion game engine, that does all the bookkeeping work while asking the respective players (bots) what they want to do when they have options. I'm not sure if a publicly available one exists, I don't know any. Creating one on your own from scratch is a big task for all cards, but probably doable for base cards and lots of other, not-to-complicated cards.

Second, unlike that Mario level, each game of Dominion is different because the Kingdom changes. Any info gained on card X in kingdom #1 may not be directly transferable to card X in kingdom #2.

Even if you can tackle both above problems by concentrating on a single Kingdom, for example, it might still be hard to come up with a way to handle the very 'non-uniform' way a game flows, with different phases where you can do different things, and even requirements to do something on opponent's turn (discard effects, for example). The games where the AI approach has been shown to work (Chess, Go, Chinese Chess(?)) are much more uniform: You act when it's your turn, where you can make a move based soley on the current board position.

But again, it would certainly be nice work, and maybe there is groundwork already done by someone, like a simple game engine that can interact with a bot.

ADDED: you might take a look here as well, in the simulation subcategory of the dominion strategy website: http://forum.dominionstrategy.com/index.php?board=16.0