Author |
Topic: Personalized Play / Opponent Modeling (Read 2115 times) |
|
Rednaxela
Forum Senior Member
Arimaa player #4674
Gender:
Posts: 34
|
|
Personalized Play / Opponent Modeling
« on: Sep 6th, 2010, 6:33pm » |
Quote Modify
|
For a while I've been wondering if there was a reasonable way for bots to 'personalize' their play to their current opponent. It's something I haven't come across a thread about before here. Recently in the "Global Algebric Material Evaluator" thread, I had run a few queries and found that it seemed like the gameroom data supported the notion that FAME and DAPE had a bias to be in favor of the way their respective authors played. This seems like a fairly logical result I think, but the fact that I seemed to be able to see this in the gameroom data gave me an idea: What about having a bot that tweaks an evaluation function to be similar to it's guess of the opponent's perception? The way it could be implemented is as follows: - Look up the player's username and go through their gameroom data, picking out the material evaluators and and other parts that seem to best represent the player. - Don't assume the opponent is weak. In other words, don't allow the resulting evaluation function to be weak, merely biased towards the opponent's tendencies. - Probably run this in the ponder-time during the opponent's first couple moves. - If the opponent is unknown or only has played a small number of games, assume they'll play with some similarity to people who use the same moves in the first two turns, perhaps factoring in other metrics of play-style as well if one wants to get fancy. - During the alpha-beta search, when it's time to calculate a score, instead calculate two scores. One for your own evaluation, and another that uses the evaluation that's biased towards the current opponant's tendencies. - During the search, use your own evaluation score during your own turns, and use the tweaked evaluation score during the opponent's turns. Really, I think this process is very similar to what human players do when facing an opponant they've either faced before or have seen the history of. Bot bashing for instance, tends to take advantage of weaknesses of certain bots. Also when I was browsing "2009 One vs TheMob" it seemed notable to me that both sides were attempting to consider historical behavior of the opponant. It struck me that that's really something humans do all the time but bots currently, to my knowledge, don't do. Any thoughts on either this specific method of adapting to the opponant, or the principal of having a bot do so in general?
|
« Last Edit: Sep 7th, 2010, 1:10am by Rednaxela » |
IP Logged |
|
|
|
Isaac Grosof
Forum Guru
Longtime Arimaa Fan
Gender:
Posts: 175
|
|
Re: Personalized Play
« Reply #1 on: Sep 7th, 2010, 12:03am » |
Quote Modify
|
It seems this could be exploited, by initially playing in a way that would cause the bot to play in a way that they could beat. However, I'm sure this could be counteracted. Good idea!
|
|
IP Logged |
Sorry about that one thing.
|
|
|
Janzert
Forum Guru
Arimaa player #247
Gender:
Posts: 1016
|
|
Re: Personalized Play
« Reply #2 on: Sep 7th, 2010, 12:55am » |
Quote Modify
|
Just a quick note, if I correctly understand what you're describing this is generally called "Opponent Modeling". Janzert
|
|
IP Logged |
|
|
|
Rednaxela
Forum Senior Member
Arimaa player #4674
Gender:
Posts: 34
|
|
Re: Personalized Play / Opponent Modeling
« Reply #3 on: Sep 7th, 2010, 1:21am » |
Quote Modify
|
Thanks Janzert, that is indeed mostly what I mean. I imagined there would be such a term but didn't know what it was. I've changed the subject and I'll probably be looking at literature regarding it... haha. One thing I did have in mind, was rather than trying to model the opponent entirely, 'restricting' the model to only consist of tweaks to a known-strong evaluation function. The idea is that such a tweaked model would remain strong and thus not be as exploitable as modeling the opponent in a more unrestricted way.
|
« Last Edit: Sep 7th, 2010, 1:22am by Rednaxela » |
IP Logged |
|
|
|
rbarreira
Forum Guru
Arimaa player #1621
Gender:
Posts: 605
|
|
Re: Personalized Play / Opponent Modeling
« Reply #4 on: Sep 7th, 2010, 3:46am » |
Quote Modify
|
That's an interesting suggestion, it would be cool to see a bot adapting to different opponents throughout time. Another (perhaps more controversial) form of opponent modeling that I've thought about is to exploit known bugs of other bots, for example bomb's lack of knowledge about the repetition rule. But I don't think I would actually waste time with this form of opponent modeling.
|
|
IP Logged |
|
|
|
|