thoughts about AI difficulty #45
Replies: 1 comment
-
You could even find
I believe that's because the level (sm_level) effectively starts at 1, so setting m_max_ply <= 1 will result in it always using the "QAI". You need to start at ply 2 to use the BMAI.
Maybe not significant, but theoretically should result in an improvement. However, there could be a tradeoff if you need to reduce the number of simulations when going to ply4, such that you get better results with ply3 and more simulations. That said, compute speeds are much better than they used to be so it is worth trying ply 4.
Absolutely - basic parameters to try are the 4 you list: ply, min_sims, max_sims and max_branch. I was trying different values a while ago, and "Notes.txt" has some of the results.
This super old data suggested that ply3 with a large max_branch was the best performance, and did better than ply4 with a small max_branch. However, it would be interesting to rerun the experiment (and also track a time variable).
I like the idea of running multiple bots to try different parameters (or AIs). However, as noted above, ply1 is probably just running the QAI which is naive. It would still be interesting to see the performance data though to see how a naive strategy does (a baseline). ASIDE: check out BMC_Parser::PlayFairGames() which tests different basic AI strategies (command "playfair [games] [mode] [p]") Running ply2/3/4, I suspect you'll find that you may get the best improvements more by tweaking things like max_branch or max_sims (or even min_sims).
The best AI would be replacing the QAI (for scoring positions) with a machine learning model that inputs the game state and outputs a probability of winning for each move. We could still use monte carlo simulations since "lower level" states are going to be more reliable. |
Beta Was this translation helpful? Give feedback.
-
The username I use on button weavers website is BMAIBagels. I use
ply 3
but have just today started tinkering withply 4
. Here are the settings used on most games up until now:I have BMAIBagels python bridge run the BMAI binary for a max of 1 hour. if I can't find a solution I rerun with
--ply
and keep looping that logic untilply=0
.BMAIBagels has completed 1,374 games with a win rate of 62%.
Could increasing from ply3 to ply4 have a significant impact on win rate?
Is there a difference between ply0 and ply 1? they seem to output the same logs and same results.
Im thinking of running a second bot that is maybe easier, BMAIDonuts (softer and sweeter). Do you think that a ply0 or ply1 would be significantly less optimized and as a result more likely to be beaten? Im wondering how viable it is to have an easier AI running on the site that can calculate moves much faster. But also have a ply4 running that takes longer, but finds those better long term moves and weeks out more wins.
any thoughts you have on the matter would be helpful @pappde . maybe ply isn't the only place I should be adjusting numbers? maybe a different AI altogether.
Beta Was this translation helpful? Give feedback.
All reactions