Client-side AI Player for BGA

Discussions about BGA (all languages)
Forum rules
Warning: challenging a moderation in Forum = 10 days ban
More info & details about how to challenge a moderation: viewtopic.php?p=119756
Locked
User avatar
Pocc
Posts: 21
Joined: 12 May 2013, 04:49

Client-side AI Player for BGA

Post by Pocc »

I would like to create an AI player unaffiliated with BGA as an educational exercise to learn more about Minimax and DQN algorithms. This will use javascript and puppeteer (headless chrome) to interact with BGA. Some simple games that would be easy to create an AI for freemium abstract games with simplistic move sets like Nine Men's Morris, Connect4, Chess, Checkers, Backgammon, Quantik, etc.

There have been multiple discussions about this before:

* Is there a way to develop AI on BGA 2016: viewtopic.php?t=10322
* Same topic revisited 2020: viewtopic.php?t=14521
* Using DQN like Alpha Go 2017: viewtopic.php?t=11187
* And joked about with April Fools 2018: viewtopic.php?t=10136

The consensus (through posts or omission) seems to be the following:

* Can't stop is currently the only AI on the site, and is limited in its capabilities
* AIs as part of teaching a game is most welcome. This also needs to be explicitly integrated server-side
* There is no server-side framework for creating additional AIs
* Making AIs is hard (there don't seem to others besides the can't stop one, despite attempts)

This is what I'm currently imagining:

* Have "AI" or "bot" in the name, something like "FriendlyAI", which is currently available
* The AI will message the table announcing it is not a human player on table creation or joining a table it has been invited to
* The AI will not join a game unless explicitly invited
* AI "about me" will describe what it is
* The AI will not host or play premium games with freemium users. (i.e. no or positive financial impact on BGA)
* Page requests can intercept and block media files to reduce network bandwidth
* The AI will agree to abandon games if proposed by the other players
* Start with training games only
* Testing will occur on studio.boardgamearena.com (like FriendlyAI0-9), and production will be on boardgamearena.com

Per the terms of service (https://boardgamearena.com/legal?section=tosv), I need an exemption to create additional accounts, so I would like to have boardgamearena.com/studio.boardgamearena.com accounts sanctioned for this purpose.
User avatar
kingcarlo
Posts: 17
Joined: 30 December 2013, 11:16

Re: Client-side AI Player for BGA

Post by kingcarlo »

Could you put AI in EVO "the game no name".
I think the game is nice, I am the author of the game and it bothers me a lot to see many people drop out because they can't find a player. I go often, I wait, I wait, I wait. 😂
User avatar
Pocc
Posts: 21
Joined: 12 May 2013, 04:49

Re: Client-side AI Player for BGA

Post by Pocc »

I am still in the process of creating an AI for a single game. It looks like Evo is a deterministic 2 player game, so it would be a good candidate for minmax/alphabeta pruning.
Locked

Return to “Discussions”