I was recently given a project at Uni to make a othello game. Must admit that I find the game rather boring and I am far from a master of it. Obviously it would help a lot when making the AI knowing the in's and out's of the game.
What I do know is that I need to use alpha-beta pruning to find the best next move for the computer.
My biggest problem is assigning each board node a value that reflects how good or bad it's state is. Examples :
- A very simple approce would be just to count how many position you have and subtract that with the amount of position you opponent has.
- Give each position a value, for instance a corner is more worth than a position in the middle of the board. But the thing is, the value of a position might change during the cours of a game. Sounds difficult to set a static value for a position that at all times should accuratly describes the stat of a board.
- Always try to minimize the amount of possible moves your opponent has and try to maximize the amount of moves you (the computer has).
I was also thinking that I might need to divide the game into two or three stages : start, middle and finish and have a different strategy for each stage. Or maybe try to combine two of the strategy's above.
I'd appreciate any input on this matter.