Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inquiry about game terminal nodes utility #79

Closed
ai-gamer opened this issue Sep 28, 2019 · 4 comments
Closed

Inquiry about game terminal nodes utility #79

ai-gamer opened this issue Sep 28, 2019 · 4 comments
Labels
contribution welcome It's a nice feature! But we do not have the time to do it ourselves. Contribution welcomed! good first issue Good for newcomers

Comments

@ai-gamer
Copy link
Contributor

For game like goofspiel, there could be two ways to determine the utility of terminal nodes.

  1. the final win, draw, lose
  2. the difference of chance card value wins by each player

It seems the repository only support the first way now. Will it be helpful to add the second way for game like this?

@lanctot
Copy link
Collaborator

lanctot commented Sep 28, 2019

Yes, I would love it if we supported this as an option for Goofspiel! (Maybe default to the win/loss game).

Turns out that the game play and strategies are fairly different. See https://dke.maastrichtuniversity.nl/m.winands/documents/wcg13-smmcts.pdf -- where we ran MCTS on both games. In that paper, I called (2) the "points difference Goofspiel" and large instances are easier to solve using dynamic programming because it's fully decomposable (see https://www.semanticscholar.org/paper/Computer-Solution-to-the-Game-of-Pure-Strategy-Rhoads-Bartholdi/c1e3ab6fe16f634f0a9a73642a6f3f6318971e6e .. would be neat if we can reproduce this result in OpenSpiel!)

@lanctot
Copy link
Collaborator

lanctot commented Sep 29, 2019

@ai-gamer : if you have not started on this, let me know and I can do it. (It's gotten me excited about finally fixing the value iteration to also handle simultaneous move games since we have LP solving now, and can remove it from the call for contributions.)

@ai-gamer
Copy link
Contributor Author

@lanctot : I don't fully understand what you mean in the (). I started to work on it. Since I am not familiar with c++, it will take me a while. If it's urgent, maybe you can do it. I will still try to do it myself to get familiar with the repository.

@lanctot
Copy link
Collaborator

lanctot commented Sep 30, 2019

No worries! Definitely not urgent. I will wait until it is in.

The other thing is: our implementation of value iteration currently does not support simultaneous moves. It should. But I can still fix that regardless so it is mostly unrelated. Sorry for the confusion!

@jblespiau jblespiau added contribution welcome It's a nice feature! But we do not have the time to do it ourselves. Contribution welcomed! good first issue Good for newcomers labels Oct 1, 2019
@lanctot lanctot closed this as completed Oct 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contribution welcome It's a nice feature! But we do not have the time to do it ourselves. Contribution welcomed! good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

3 participants