acheeseye / ai-playing-checkers

Other
0 stars 0 forks source link

Un/intentional feeding? #10

Closed acheeseye closed 6 years ago

acheeseye commented 6 years ago

Through replays of best_of_GEN9, it often seems like one player if intentionally feeding the other. I suspect this is either due to some negative values being translated incorrectly or simply not enough generations (along with not enough ply). I would like to implement alpha-beta pruning before upping the ply count for training, but I'm going to try with 4 ply for now anyway.

acheeseye commented 6 years ago

Perhaps, since we piece count was not fed into the network and done by min_max_search, the network is not coming up with the piece count mentality.

woodchip-dev commented 6 years ago

I'll have to take a look at those replays. Is it possible that when the min_max_search is used, it's always the same player that's on max and the other on min regardless of whose turn it is? I would hope it's not learning to lose. Also, I'm working on alpha-beta pruning. I may not have it ready today though.

acheeseye commented 6 years ago

👍

That is a possibility yes since we've set up hardcoded positivity/negativity for each side. I will provide some GEN9 results for the 4ply network and see what happens.

acheeseye commented 6 years ago

This has been resolved with min_max_search/alpha_beta functions not internally applying play modifiers (such as if(board.get_Player() == _BLACK_)), as it is resolved externally with NeuralNetwork_PERF's m_player_modifier. One or the other needs to be chosen.

acheeseye commented 6 years ago

Chosen that evaluation functions will be general purpose.