Adding Intelligence to the program : some points
Since it is allowed to make several jumps in a row, it is strategically important to make it
possible to so. By building structures for the marbles to jump on, it is possible to quickly
move a marble to the opposite side of the board. The ability to recognize the opportunity to
make a long jump is critical for playing a good game.
It is also important not to leave any marbles behind when the others move over the board.
Those marbles will need more turns to cross the board than if they had been moved with the
others, since their opportunities to make long jumps are fewer.
The two players are placed symmetrically around the board.
Only the two-player game has been studied, one human against the computer as well as computer
vs the computer. The computerplays with the red marbles starting at the top of the board and the
human opponent plays with the opposite green marbles.
The heuristics used in the program :
We have added various kinds of heuristics to the program based on the above observations and added some unique features to make heuristics perform better.
A Layered Approach
We have developed the heuristics using a layer by layer approach. We first added a simple heuristic to the Static Evaluation Function ( SEF ). then added additional functionality to each heuristic to add to its intelligence.
List of Heuristics
2) Vertical Displacement
3) Vertical Displacement and Horizontal displacement
4) Vertical Displacement, Horizontal displacement and Split
5) Vertical Displacement, Horizontal displacement, split and last piece move.