198 reputation
6
bio website zongzhengli.com
location
age
visits member for 2 years, 3 months
seen May 30 at 17:03

May
30
awarded  Excavator
May
30
revised How to handle a Tile Map Scrolling
Improve formatting
May
30
suggested suggested edit on How to handle a Tile Map Scrolling
Aug
2
answered Repetition of move in Draughts game
Aug
2
comment MiniMax not working properly(for checkers game)
I'm sorry, but your problem is too general and this discussion is getting too lengthy. I recommend posting a new question with more specific details.
Jul
22
comment MiniMax not working properly(for checkers game)
Only the transposition table requires large amounts of memory (but if you can spare a few MB, it will still be worth it).
Jul
20
comment MiniMax not working properly(for checkers game)
Yes, that's right (but make sure you're passing in the alpha value in the root as shown in the pseudocode). What do you mean by "slow"? Can it search 4 or 5 plies deep in a few seconds? To speed up the search, you need to improve move ordering and look into reductions. Try implementing iterative deepening, transposition table, killer heuristic, principal variation search, etc. Your original move generation scheme also looks like it can be optimized quite a bit.
Jul
15
awarded  Citizen Patrol
Jul
14
awarded  Critic
Jul
14
awarded  Supporter
Jul
14
comment MiniMax not working properly(for checkers game)
The reason we have a root node is that minimax only returns the value of the node, not the best move. We need a different routine to begin the search so that we can choose the best move. From your original implementation it seems you didn't quite realize this. It should be clear that the root represents the program's turn, and having a separate routine also makes it easy to implement other features such as iterative deepening. I'd advise taking a careful look at the code to understand each part. It will make it easier to implement other features.
Jul
13
revised MiniMax not working properly(for checkers game)
added 1790 characters in body
Jul
13
comment MiniMax not working properly(for checkers game)
Usually, the max player (black in this case) is the one you start with. I strongly suggest you don't hard code sides into your search; I'll update my answer.
Jul
12
revised Reuseable Platform For Custom Board Game
added 688 characters in body
Jul
12
comment Reuseable Platform For Custom Board Game
Checkmate and draws are usually handled within the search. If the move list is empty and you're in check, then it's checkmate. However, these values are kind of tricky because of path dependency; you want the shortest mate, or you might keep returning a mate score and never actually win. For the evaluation, you should get good results by considering piece values and using piece square tables (example in answer).
Jul
12
revised Reuseable Platform For Custom Board Game
deleted 5 characters in body
Jul
12
awarded  Teacher
Jul
12
answered MiniMax not working properly(for checkers game)
Jul
12
awarded  Editor
Jul
12
revised Reuseable Platform For Custom Board Game
added 992 characters in body