Dominion Strategy Forum

Please login or register.

Login with username, password and session length
Pages: 1 2 [All]

Author Topic: New online version of Dominion (with neural-network based AI) from Temple Gates  (Read 3838 times)

0 Members and 1 Guest are viewing this topic.

dsplaisted

  • Herbalist
  • **
  • Offline Offline
  • Posts: 5
  • Respect: +11
    • View Profile
+7

Hi folks,

Has anyone heard about this new version of Dominion that's supposed to be coming out?  And what it means for https://dominion.games?

https://www.polygon.com/22440924/dominion-app-neural-network-ai-release-date-price
https://store.steampowered.com/app/1131620/Dominion/

Thanks,
Daniel
Logged

Titandrake

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2203
  • Respect: +2836
    • View Profile
0

Someone who knows more should confirm, but my understanding is that dominion.games is supposed to co-exist with the new version. ShuffleIT promised some single-player and mobile parts that never came out. Rio Grande Games reached out to another company to make a mobile app and I believe this is that mobile app, except it'll have some cross-platform support as well according to the article.

I suspect that the competitive community won't move off ShuffleIT that quickly, but more casual players will find the app to be a better experience.

Edit: Given that ShuffleIT still lets you buy subscriptions 2 years out into the future, I assume the site is still legally allowed to operate at least that long.
« Last Edit: May 18, 2021, 02:17:56 pm by Titandrake »
Logged
I have a blog! It's called Sorta Insightful. Check it out?

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2844
  • Respect: +1541
    • View Profile
+3

Thank goodness that the mobile license is finally in the hands of a developer that has a track record of mobile boardgame adaptations. (I haven’t tried this company’s apps, but they get good ratings in the app store.) It’s crazy to me that in the 8+ years since Iso was shuttered, this is the first time that has happened.

Adapting Dominion to a small screen sounds insanely hard, so I wonder how that’ll work. I’m also curious about the AI, which is also a hard problem.
Logged

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2844
  • Respect: +1541
    • View Profile
Logged

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
+2

I’m also curious about the AI, which is also a hard problem.

I'm also intensely curious about the AI. There's a little about it in the Polygon article linked in the OP, but honestly I hope there's something lost in translation there. The claims they're making about the AI seem almost laughably naive. And even if they're right and it's an amazing Dominion AI that can beat even seasoned players in most games, that sounds pretty bad for casual players! Who wants to play against a computer that beats you 90% of the time? Some people will, sure, but I bet that'll get old fast for a lot of players.

EDIT: But I mean, check this out, from the linked article:

Quote
"Instead of having a concept of a card in our neural network, we have a concept of each of the components of a card,” said Duringer. “The card has a cost. The card has a victory point value. The card might give you an extra buy or an extra action. If we can just understand these components, we don’t need to know the ‘value’ of a card. We can surmise it on the spot by understanding those components."

It's simultaneously hilarious and sad. The quote is from the Temple Gates CEO, so I can only hope this information is either misleading or outdated.
« Last Edit: May 18, 2021, 03:42:43 pm by LastFootnote »
Logged

J Reggie

  • Minion
  • *****
  • Offline Offline
  • Posts: 745
  • Shuffle iT Username: J Reggie
  • Respect: +1229
    • View Profile
    • Jeff Rosenthal Music
+4

Looks like it might be time to revisit my old thread!

And even if they're right and it's an amazing Dominion AI that can beat even seasoned players in most games, that sounds pretty bad for casual players! Who wants to play against a computer that beats you 90% of the time? Some people will, sure, but I bet that'll get old fast for a lot of players.

I think most neural networks have some depth setting you can turn down to make it perform worse, although it may not get worse in the same way a human would.
« Last Edit: May 18, 2021, 03:51:01 pm by J Reggie »
Logged

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2844
  • Respect: +1541
    • View Profile
0

And even if they're right and it's an amazing Dominion AI that can beat even seasoned players in most games, that sounds pretty bad for casual players!
They're not claiming that the AI beats expert players. The quoted player self-describes his experience as
Quote
I’ve been playing Dominion casually, in person, for years. I’ve probably played 100, 200, maybe more games.
So we're talking about an AI that can beat a player who has played 200 casual games of Dominion. Depending on the sets included, even BM+X might be able to do that.

Quote
Quote
"Instead of having a concept of a card in our neural network, we have a concept of each of the components of a card,” said Duringer. “The card has a cost. The card has a victory point value. The card might give you an extra buy or an extra action. If we can just understand these components, we don’t need to know the ‘value’ of a card. We can surmise it on the spot by understanding those components."

It's simultaneously hilarious and sad. The quote is from the Temple Gates CEO, so I can only hope this information is either misleading or outdated.
This bit struck me as odd too. Breaking down cards into components like this might work alright for vanilla cards, but most cards have unique text.

Plus it seemingly solves a non-problem. The AI doesn't need to adapt on-the-fly to new cards, because they can just re-run the AI training whenever they add new cards.
Logged

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
+1

This bit struck me as odd too. Breaking down cards into components like this might work alright for vanilla cards, but most cards have unique text.

It even falls apart for vanilla cards. [+1 Cards and +2 Actions] costs $3. [+2 Cards and +1 Action] costs $5. So [+3 Cards] should cost even more, right? Nope, it costs $4. Either Smithy is an extremely strong card or Village and Lab are awful.

Plus it seemingly solves a non-problem. The AI doesn't need to adapt on-the-fly to new cards, because they can just re-run the AI training whenever they add new cards.

An excellent point. But taking it even further, what does knowing the "value" of a card get you? The value of a card changes not only from game to game, but over the course of a single game. Province is an awful card very early in the game, but a great one at the end. One Witch is great. 9 Witches is not great.
« Last Edit: May 18, 2021, 04:05:04 pm by LastFootnote »
Logged

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2844
  • Respect: +1541
    • View Profile
0

Looks like it might be time to revisit my old thread!
I didn't know about that discussion. Here are other previous discussions:
Logged

spineflu

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1142
  • Shuffle iT Username: spineflu
  • Head Empty, Heart Worms, Can't Lose
  • Respect: +924
    • View Profile
    • my instagram, where i paint things
+1

With the AI running on the client end, with some of those clients being a phone, I'd be surprised if they do a full-on ANN with it; To me, sounds probably something smaller like a decision tree output from a server-based ANN.

I’m also curious about the AI, which is also a hard problem.

I'm also intensely curious about the AI. There's a little about it in the Polygon article linked in the OP, but honestly I hope there's something lost in translation there. The claims they're making about the AI seem almost laughably naive. And even if they're right and it's an amazing Dominion AI that can beat even seasoned players in most games, that sounds pretty bad for casual players! Who wants to play against a computer that beats you 90% of the time? Some people will, sure, but I bet that'll get old fast for a lot of players.

EDIT: But I mean, check this out, from the linked article:

Quote
"Instead of having a concept of a card in our neural network, we have a concept of each of the components of a card,” said Duringer. “The card has a cost. The card has a victory point value. The card might give you an extra buy or an extra action. If we can just understand these components, we don’t need to know the ‘value’ of a card. We can surmise it on the spot by understanding those components."

It's simultaneously hilarious and sad. The quote is from the Temple Gates CEO, so I can only hope this information is either misleading or outdated.

I'm curious how much understanding you have of programming ANNs - this is the exact sort of component analysis you'd need to do to make an ANN that "understands" dominion. He's not talking "this card costs $X, it must be better than the card that costs $Y", he's talking summing the available information into a single decision process, and that includes things like opportunity cost, cost, effects, etc. Even unique features - creating sparse dimensions in the ANN training set, but whatever - can be determined to be separable features.

anyhow you can sign up for the beta here, this was posted in the dominion fb group this morning
« Last Edit: May 18, 2021, 04:21:35 pm by spineflu »
Logged

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
0

I'm curious how much understanding you have of programming ANNs - this is the exact sort of component analysis you'd need to do to make an ANN that "understands" dominion. He's not talking "this card costs $X, it must be better than the card that costs $Y", he's talking summing the available information into a single decision process, and that includes things like opportunity cost, cost, effects, etc. Even unique features - creating sparse dimensions in the ANN training set, but whatever - can be determined to be separable features.

Admittedly I'm not an expert, but I'm not sure I understand you? A high cost by (usually) makes a card weaker, not stronger. I expect a neural network to understand that much. The way this was described, the AI can surmise the "value" (whatever that means) of a card based on its individual components. But generally those components all interact with each other. They are more (or sometimes less) than the sum of their parts. So either the CEO's explanation was totally wrong, or there's something else I'm missing here. Either way, blueblimp's point still stands. Why would you want to be able to figure out the "value" of a new card from its parts when you could run thousands of simulations instead?
Logged

spineflu

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1142
  • Shuffle iT Username: spineflu
  • Head Empty, Heart Worms, Can't Lose
  • Respect: +924
    • View Profile
    • my instagram, where i paint things
+1

I'm curious how much understanding you have of programming ANNs - this is the exact sort of component analysis you'd need to do to make an ANN that "understands" dominion. He's not talking "this card costs $X, it must be better than the card that costs $Y", he's talking summing the available information into a single decision process, and that includes things like opportunity cost, cost, effects, etc. Even unique features - creating sparse dimensions in the ANN training set, but whatever - can be determined to be separable features.

Admittedly I'm not an expert, but I'm not sure I understand you? A high cost by (usually) makes a card weaker, not stronger. I expect a neural network to understand that much. The way this was described, the AI can surmise the "value" (whatever that means) of a card based on its individual components. But generally those components all interact with each other. They are more (or sometimes less) than the sum of their parts. So either the CEO's explanation was totally wrong, or there's something else I'm missing here. Either way, blueblimp's point still stands. Why would you want to be able to figure out the "value" of a new card from its parts when you could run thousands of simulations instead?

That's sort of the "why use AI" question in a nutshell, isn't it?

It doesn't make a decision based on a single of those components - instead, it looks at how those components a card possesses would stack up to one another, and use more of a bigger picture - how's that card do in the context of the kingdom?
Now because of the combinatorics of kingdoms - sixty six sextillion, i think the polygon article said? - you don't want to run thousands of simulations on each of those combinations to just output a table. you want to make it more bite-sized so a phone can handle it. And that's where component breakdown is better. Is moat a better option than faithful hound? is relying on thrones to be villages viable in this kingdom? can I rely on something cheap like hamlet for +buys this game, or should I blow my first $5 hand on a market? that's the sort of questions you can get answers to without having to get into the full combinatorics.

Like I'm not trying to be the full "AI is going to save us and we're going to go to mars because AI-as-ideology" type internet reply guy with this, but this is - a game with complex components that can be broken down into overlapping features - an exact perfect case for the use of an ANN.
« Last Edit: May 18, 2021, 04:53:24 pm by spineflu »
Logged

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
+1

Well I hope you're right. Though I also hope there will be an option for a less-ruthless AI for starting players who don't want to lose repeatedly while learning the game.
Logged

spineflu

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1142
  • Shuffle iT Username: spineflu
  • Head Empty, Heart Worms, Can't Lose
  • Respect: +924
    • View Profile
    • my instagram, where i paint things
+1

Well I hope you're right. Though I also hope there will be an option for a less-ruthless AI for starting players who don't want to lose repeatedly while learning the game.
ha, yeah, hopefully they'll port in Lord Rattington.
Logged

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9392
    • View Profile
0

Quote
I’ve been playing Dominion casually, in person, for years. I’ve probably played 100, 200, maybe more games.
So we're talking about an AI that can beat a player who has played 200 casual games of Dominion. Depending on the sets included, even BM+X might be able to do that.

I came very close to actually laughing out loud at that paragraph. Like, my dude, have you tested the AI against players who've played 1000 times more games than that?

That having been said, you also don't want the AI to destroy everyone every game, but I'm certain they can tune down the settings.

"200, maybe more, games." Hilarious.
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

Titandrake

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2203
  • Respect: +2836
    • View Profile
+4

The devs (more specifically keldon) are in the Dominion Discord and have talked about the AI a bit there. It's all spread out (because Discord is bad at concentrating discussion) but here is the summary:

* It's inspired by AlphaZero
* There's one NN that predicts value and another policy head that picks actions.
* NN architecture is Transformer-based, right now only takes in current game state (have tried conditioning on previous buys but did not see noticeable improvement)
* At playing time it does a search rollout. Generally with their computation budget the search tree gets to a few turns out for the deepest paths (i.e. on first turn the search tree usually rolls out to the end of 1st reshuffle).
* It's all self play, no human data.
* They started with Base-only and have been slowly introducing more expansions over time (restarting bot training from scratch every time due to needing to change NN layout + not wanting the bot to get stuck on strategies that only worked in the simplified game). This might be what the CEO is talking about? That the same method is able to handle new cards as long as you let it train against itself for long enough.
* The bot is generally very good at big money + a few action card strategies, which is how I'd describe the MF bots. (But worth noting this indicates the self-play learned BM + X on its own which is a good sign.)
* For difficulty levels, they'll probably tune the amount of search it does.
Logged
I have a blog! It's called Sorta Insightful. Check it out?

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9392
    • View Profile
0

Also... I could swear that somewhere on this very forum, DXV said that if you try to judge values of cards based on their pieces, you're going to fail, since the game was designed at least partly to not let that happen. Anyone have a link? (Likely not, forum searches are really difficult.)
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
0

So the AI cheats? It plays a few turns ahead and makes decisions based on that?
Logged

Titandrake

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2203
  • Respect: +2836
    • View Profile
+2

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.
Logged
I have a blog! It's called Sorta Insightful. Check it out?

spineflu

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1142
  • Shuffle iT Username: spineflu
  • Head Empty, Heart Worms, Can't Lose
  • Respect: +924
    • View Profile
    • my instagram, where i paint things
0

Also... I could swear that somewhere on this very forum, DXV said that if you try to judge values of cards based on their pieces, you're going to fail, since the game was designed at least partly to not let that happen. Anyone have a link? (Likely not, forum searches are really difficult.)

I'm pretty sure thats in the guide to pricing fan cards, not a principle for judging cards.
Logged

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
0

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.

OK, that's fine for shuffles. But say it plays Wishing Well, or decides whether it's going to play Wishing Well. What then?
Logged

seanahan

  • Pawn
  • **
  • Offline Offline
  • Posts: 2
  • Shuffle iT Username: seanahan
  • Respect: +1
    • View Profile
0

Presumably it just guesses the most likely card in its deck, the same way a person does (if they are properly deck tracking).
Logged

Wizard_Amul

  • Moneylender
  • ****
  • Offline Offline
  • Posts: 150
  • Respect: +158
    • View Profile
0

Presumably it just guesses the most likely card in its deck, the same way a person does (if they are properly deck tracking).

That's not always the optimal strategy, though--if finding a less common card helps your turn a lot more, then it may be worth it to guess that card instead of the most common card. E.g., you really need a village but the most common card is copper. I don't know how the new AI would handle it, but if it looked to the end of the turn or to the end of a couple turns, it could create a probability model out of different scenarios. I just wonder how slow/fast the AI will be--imagine if the remaining deck has multiple Wishing Wells, but Wishing Well is not the most common card remaining in the deck.
Logged

Jack Rudd

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1248
  • Shuffle iT Username: Jack Rudd
  • Respect: +1239
    • View Profile
0

There's also the scenario where you guess Estate because you already have what you need for the buy you intend to make, and so you're trying to find the least helpful card for your next turn and draw that.
Logged
Centuries later, archaeologists discover the remains of your ancient civilization.

Evidence of thriving towns, Pottery, roads, and a centralized government amaze the startled scientists.

Finally, they come upon a stone tablet, which contains but one mysterious phrase!

'ISOTROPIC WILL RETURN!'

ConMan

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1398
  • Respect: +1703
    • View Profile
+1

Assuming it's been made "right" (for some value of right), it would presumably build a prediction of what card it could be wishing for, how likely that card is to show up, and what it can do after that. So it wouldn't necessarily name the most likely card but instead the one that gives the best overall results when it wishes for it (which might well be balancing the pros and cons of "what happens if I wish right" and "what happens if I wish wrong" just like a good human player would do).
Logged

ackmondual

  • Witch
  • *****
  • Offline Offline
  • Posts: 461
  • Respect: +292
    • View Profile
0

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.

OK, that's fine for shuffles. But say it plays Wishing Well, or decides whether it's going to play Wishing Well. What then?
I'll probably point us to previous discussions speculating about new Dom expansions where they say the next one will include "card shaped" components.  Here, we know that the game will include an AI that should be akin to what we've seen in Race/Roll For The Galaxy

Looks like it might be time to revisit my old thread!

And even if they're right and it's an amazing Dominion AI that can beat even seasoned players in most games, that sounds pretty bad for casual players! Who wants to play against a computer that beats you 90% of the time? Some people will, sure, but I bet that'll get old fast for a lot of players.

I think most neural networks have some depth setting you can turn down to make it perform worse, although it may not get worse in the same way a human would.
Race/Roll For The Galaxy have easier difficulty levels which make more suboptimal moves.  That proved suitable for less skilled players.

Ditto here, I don't mind losing against a computer.  Much less than vs. a real player.
Logged
Village, +2 Actions.  Village, +3 Actions.  Village, +4 Actions.  Village, +5 Actions.  Village, +6 Actions.  Village, +7 Actions.  Workers Village, +2 Buys, +8 Actions.  End Action Phase.  No Treasures to play.  No buy.  No Night cards to play

allanfieldhouse

  • Golem
  • ****
  • Offline Offline
  • Posts: 193
  • Respect: +305
    • View Profile
+3

I'm so excited for a good offline vs AI Dominion client that I can buy without a subscription! I just want to be able to sit down and play some non-competitive Dominion with the ability to turn it off or pause at any time (little kids create lots of interruptions).
Logged

Titandrake

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2203
  • Respect: +2836
    • View Profile
0

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.

OK, that's fine for shuffles. But say it plays Wishing Well, or decides whether it's going to play Wishing Well. What then?

I guess I don't really understand what cheating you think could be happening. It plays Wishing Well, it runs some search, it guesses the card it thinks will give more win rate.
Logged
I have a blog! It's called Sorta Insightful. Check it out?

GendoIkari

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 9116
  • Respect: +9965
    • View Profile
0

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.

OK, that's fine for shuffles. But say it plays Wishing Well, or decides whether it's going to play Wishing Well. What then?

I guess I don't really understand what cheating you think could be happening. It plays Wishing Well, it runs some search, it guesses the card it thinks will give more win rate.

Yeah you seem to be thinking of "looking at future turns" to include specific information that humans couldn't use, such as "what card gets revealed after I play Wishing Well"... but that's not the case. It's "looking at future turns" as in running simulations of a bunch of different possible future turns, and choosin the action which has the best percent of futures that work out. So it could run 100 simulations on what happens if you choose "Copper" for wishing well and see that 50 of those end up with a good position. Then run 100 simulations on what happens if you choose "Silver" and see that 75 of those end up in a good position. It doesn't just "look" at the next turn to see what will happen in that turn.

Fun fact though, in the Tichu app, the highest-level difficulty of the AI does in fact cheat by basing decisions off of looking at what cards you're holding. But the other levels don't.
« Last Edit: May 19, 2021, 05:12:46 pm by GendoIkari »
Logged
Check out my F.DS extension for Chrome! Card links; Dominion icons, and maybe more! http://forum.dominionstrategy.com/index.php?topic=13363.0

Thread for Firefox version:
http://forum.dominionstrategy.com/index.php?topic=16305.0

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7349
  • Shuffle iT Username: LastFootnote
  • Respect: +10342
    • View Profile
0

Yeah you seem to be thinking of "looking at future turns" to include specific information that humans couldn't use, such as "what card gets revealed after I play Wishing Well"... but that's not the case. It's "looking at future turns" as in running simulations of a bunch of different possible future turns, and choosin the action which has the best percent of futures that work out. So it could run 100 simulations on what happens if you choose "Copper" for wishing well and see that 50 of those end up with a good position. Then run 100 simulations on what happens if you choose "Silver" and see that 75 of those end up in a good position. It doesn't just "look" at the next turn to see what will happen in that turn.

Could you expound on this a bit? How does it run simulations on possible future turns without considering the current game state, which includes the order of its deck?
Logged

GendoIkari

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 9116
  • Respect: +9965
    • View Profile
0

Yeah you seem to be thinking of "looking at future turns" to include specific information that humans couldn't use, such as "what card gets revealed after I play Wishing Well"... but that's not the case. It's "looking at future turns" as in running simulations of a bunch of different possible future turns, and choosin the action which has the best percent of futures that work out. So it could run 100 simulations on what happens if you choose "Copper" for wishing well and see that 50 of those end up with a good position. Then run 100 simulations on what happens if you choose "Silver" and see that 75 of those end up in a good position. It doesn't just "look" at the next turn to see what will happen in that turn.

Could you expound on this a bit? How does it run simulations on possible future turns without considering the current game state, which includes the order of its deck?

(Disclaimer: I'm no where near an expert on how AI or neural networks work). It's simulations; think of Geronimo's card simulator... it plays 1000 games with the same buy rules and then looks at the results across all of them. Here, you could play 1000 versions of the next turn, with the deck shuffled differently each time. Or instead of randomly shuffling for each simulation, it could specifically run a simulation against every possible deck ordering. Either way it doesn't know which simulation will match what actually happens.
Logged
Check out my F.DS extension for Chrome! Card links; Dominion icons, and maybe more! http://forum.dominionstrategy.com/index.php?topic=13363.0

Thread for Firefox version:
http://forum.dominionstrategy.com/index.php?topic=16305.0

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2844
  • Respect: +1541
    • View Profile
+2

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.

OK, that's fine for shuffles. But say it plays Wishing Well, or decides whether it's going to play Wishing Well. What then?

I guess I don't really understand what cheating you think could be happening. It plays Wishing Well, it runs some search, it guesses the card it thinks will give more win rate.
I think the confusion here is LastFootnote thinking you're referring only to future shuffles, while I assume you mean to also re-randomize the shuffles that already happened (which, practically, would mean re-shuffling the deck before each simulation).

IMO, though, properly re-randomizing unknown info is subtly difficult, both from an algorithmic perspective and to code it without bugs.

At first it seems simple enough to just randomize everything it doesn't know before each simulation: the order of its deck, the contents & order of its opponent's hand, deck, and discard (and possibly other things I'm not thinking of). But actually it can know something about these:
  • The top few cards of the decks may have been revealed for various reasons.
  • The opponent may have revealed their hand at some point.
  • etc.
Even trickier: it's possible to make inferences from the opponent's play about certain things that aren't actually known. e.g. If the opponent didn't play an action last turn, they probably didn't have their Smithy in hand; but this is just because we're assuming something about the opponent's strategy, because it would have been legal for them to not play it.

To do this all optimally is (I think) comparable to playing poker, and having it mixed in with all the other parts of Dominion makes it extra hard.

And it would be really easy, when programming this, to accidentally leak info that the AI is not supposed to have. The safest way might be a sort of clean-room approach: only provide the AI with public info, from which it would create a new game state. (The easier and more bug-prone approach is to copy the game state and try to scrub hidden info out of it.)

That said, if the objective is just to make a fun AI opponent for an app, none of this is too important. I mean, if it's just playing strategies like BM+Smithy, then whether it plays Wishing Well optimally or legally doesn't even matter.
Logged

ConMan

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1398
  • Respect: +1703
    • View Profile
0

Yeah you seem to be thinking of "looking at future turns" to include specific information that humans couldn't use, such as "what card gets revealed after I play Wishing Well"... but that's not the case. It's "looking at future turns" as in running simulations of a bunch of different possible future turns, and choosin the action which has the best percent of futures that work out. So it could run 100 simulations on what happens if you choose "Copper" for wishing well and see that 50 of those end up with a good position. Then run 100 simulations on what happens if you choose "Silver" and see that 75 of those end up in a good position. It doesn't just "look" at the next turn to see what will happen in that turn.

Could you expound on this a bit? How does it run simulations on possible future turns without considering the current game state, which includes the order of its deck?
The way I would do it is to not let the AI have access to any game state information that a player in the same position would not have - possibly by giving it its own game state data that it keeps track of. So it might know that the top card of its deck is a Copper because it was left there from a previous Wishing Well play, but it won't know whether the card under that is an Estate or another Copper because there are copies of both in the deck. When it "looks ahead", it would use its own knowledge about the deck contents and draw randomly from those.
Logged

Titandrake

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2203
  • Respect: +2836
    • View Profile
+1

So the AI cheats? It plays a few turns ahead and makes decisions based on that?

Not really? I mean, it doesn't know exactly what shuffle it's going to get. It just simulates a bunch of potential shuffles based on what happens if it makes certain moves and then picks ones that made it win more in those simulations.

OK, that's fine for shuffles. But say it plays Wishing Well, or decides whether it's going to play Wishing Well. What then?

I guess I don't really understand what cheating you think could be happening. It plays Wishing Well, it runs some search, it guesses the card it thinks will give more win rate.
I think the confusion here is LastFootnote thinking you're referring only to future shuffles, while I assume you mean to also re-randomize the shuffles that already happened (which, practically, would mean re-shuffling the deck before each simulation).

IMO, though, properly re-randomizing unknown info is subtly difficult, both from an algorithmic perspective and to code it without bugs.

At first it seems simple enough to just randomize everything it doesn't know before each simulation: the order of its deck, the contents & order of its opponent's hand, deck, and discard (and possibly other things I'm not thinking of). But actually it can know something about these:
  • The top few cards of the decks may have been revealed for various reasons.
  • The opponent may have revealed their hand at some point.
  • etc.
Even trickier: it's possible to make inferences from the opponent's play about certain things that aren't actually known. e.g. If the opponent didn't play an action last turn, they probably didn't have their Smithy in hand; but this is just because we're assuming something about the opponent's strategy, because it would have been legal for them to not play it.

To do this all optimally is (I think) comparable to playing poker, and having it mixed in with all the other parts of Dominion makes it extra hard.

And it would be really easy, when programming this, to accidentally leak info that the AI is not supposed to have. The safest way might be a sort of clean-room approach: only provide the AI with public info, from which it would create a new game state. (The easier and more bug-prone approach is to copy the game state and try to scrub hidden info out of it.)

That said, if the objective is just to make a fun AI opponent for an app, none of this is too important. I mean, if it's just playing strategies like BM+Smithy, then whether it plays Wishing Well optimally or legally doesn't even matter.

Doing it optimally is a somewhat difficult programming question. But I think you could just assume 0 info about the draw deck and reshuffle it at the start of each simulation. You'd lose a bit, but that wouldn't be a big deal until you got to the point of the bot trying to play engines (at which point you've already done quite well as an AI programmer)
Logged
I have a blog! It's called Sorta Insightful. Check it out?

cactus

  • Apprentice
  • *****
  • Offline Offline
  • Posts: 292
  • Then: longtime lurker. Now: occasional poster.
  • Respect: +347
    • View Profile
+1

Another on line implementation? I check back into this forum first this first time in a long time and the news is yet another on line implementation?! FFS.

If the “custodians” of this fantastic game had purposely set out to sabotage it and have a cruel joke at the expense of its loyal fan base they could not have stuffed things up any worse. And it is not like there weren’t lots of people that loved the game telling them the whole time, “what you’re doing sounds like a really bad idea”.

I honestly don’t know whether to laugh or cry.

Gherald

  • Minion
  • *****
  • Offline Offline
  • Posts: 516
  • Awe: +35
  • Respect: +1036
    • View Profile
+2

The existing online implementation isn't going away, you're getting a new option. Something to choose from!

I know encountering new unfamiliar choices can be a stressful experience, but just breathe. You can get through this.
Logged
thank you for participating in this enrichment center activity

dirkdebeule

  • Scout
  • ****
  • Offline Offline
  • Posts: 43
  • Why Not?
  • Respect: +18
    • View Profile
+2

Stef is currently working on a "complexity" feature for dominion.games. Since it's not done it's not finalized, but currently, you can pick a level of complexity from 1-10, and it determines the set of cards available. I picked what cards are at each level; it groups mechanics. Level 1 is just base, level 10 is everything, and in-between you have added whatever set of mechanics. So players who don't want to be swamped with new mechanics can ease into them; add 1 to complexity and a few new mechanics show up.
Logged
The Witch likes walking from her Throne Room to her Workshop in the Garden 😁

dirkdebeule

  • Scout
  • ****
  • Offline Offline
  • Posts: 43
  • Why Not?
  • Respect: +18
    • View Profile
+2

Hi Donald, hi Stef,
Just wondering about the status of the “complexity" feature for dominion.games?
It's done, but that release is waiting on the animations feature working, they're in the same "build." And that feature is waiting on random real-life factors for the person who did the work on it.
[/quot
Logged
The Witch likes walking from her Throne Room to her Workshop in the Garden 😁

Petzi

  • Pawn
  • **
  • Offline Offline
  • Posts: 4
  • Shuffle iT Username: PetziPotato
  • Respect: +2
    • View Profile
+1

So the ShuffleIT implementation and this new one will be completely separate, right? It's kind of sad, now the playerbase will be split, along with the game history, rankings and so on. I wish dominion.games had expanded into mobile and PC, but oh well. It would be nice to have a single, official implementation. I get the feeling this means the older implementation will be extinguished in a few years :(
Logged

GendoIkari

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 9116
  • Respect: +9965
    • View Profile
+1

So the ShuffleIT implementation and this new one will be completely separate, right? It's kind of sad, now the playerbase will be split, along with the game history, rankings and so on. I wish dominion.games had expanded into mobile and PC, but oh well. It would be nice to have a single, official implementation. I get the feeling this means the older implementation will be extinguished in a few years :(

Is it known that the new thing will support multiplayer? If it's only against AI then there wouldn't be that sort of issue.
Logged
Check out my F.DS extension for Chrome! Card links; Dominion icons, and maybe more! http://forum.dominionstrategy.com/index.php?topic=13363.0

Thread for Firefox version:
http://forum.dominionstrategy.com/index.php?topic=16305.0

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2844
  • Respect: +1541
    • View Profile
0

It would be nice to have a single, official implementation.
While ideally there would be one perfect implementation that makes everyone happy, in practice I couldn't disagree more with this. The healthiest state of computer Dominion so far was in the pre-Goko era, when there were a variety of unofficial implementations that had different advantages for different types of players. It's just too hard to have one implementation satisfy, for example, both the people who want to play casually against AI on their phone and the people who want to play at top competitive levels on their desktop. (I'm still salty that it hasn't ever been possible to play with a deck tracker in the post-isotropic era. I understand that not everyone likes deck trackers, and if there's a variety of ways to play, those people can be happy too!)
Logged

Petzi

  • Pawn
  • **
  • Offline Offline
  • Posts: 4
  • Shuffle iT Username: PetziPotato
  • Respect: +2
    • View Profile
0

You can sign up for the beta on the website, I was accepted within about a day. There is multiplayer, yes.

While ideally there would be one perfect implementation that makes everyone happy, in practice I couldn't disagree more with this. The healthiest state of computer Dominion so far was in the pre-Goko era, when there were a variety of unofficial implementations that had different advantages for different types of players. It's just too hard to have one implementation satisfy, for example, both the people who want to play casually against AI on their phone and the people who want to play at top competitive levels on their desktop. (I'm still salty that it hasn't ever been possible to play with a deck tracker in the post-isotropic era. I understand that not everyone likes deck trackers, and if there's a variety of ways to play, those people can be happy too!)

I don't see a reason why a unified system couldn't work on all platforms with both AI and multiplayer, plenty of games offer that nowadays. You're certainly right about the variety, but once you get into things like adding custom cards, no official version will ever beat stuff like Tabletop Simulator and Cockatrice.
Logged

Cuzz

  • Minion
  • *****
  • Offline Offline
  • Posts: 595
  • Shuffle iT Username: Cuzz
  • Respect: +973
    • View Profile
+1

It would be nice to have a single, official implementation.
The healthiest state of computer Dominion so far was in the pre-Goko era, when there were a variety of unofficial implementations that had different advantages for different types of players.

What was there other than isotropic that was actually being used by a substantial population?
Logged

GendoIkari

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 9116
  • Respect: +9965
    • View Profile
0

It would be nice to have a single, official implementation.
The healthiest state of computer Dominion so far was in the pre-Goko era, when there were a variety of unofficial implementations that had different advantages for different types of players.

What was there other than isotropic that was actually being used by a substantial population?

Could be talking about Androminion, but I have no idea how big that actually was.
Logged
Check out my F.DS extension for Chrome! Card links; Dominion icons, and maybe more! http://forum.dominionstrategy.com/index.php?topic=13363.0

Thread for Firefox version:
http://forum.dominionstrategy.com/index.php?topic=16305.0
Pages: 1 2 [All]
 

Page created in 0.161 seconds with 21 queries.