beatwaves.net

Othello AI

This othello AI was written in C as a school assignment. It uses a bunch of functions from a ready made othello game for interfacing with the game.

The AI works by building and pruning a game tree. Since the size of a full game tree grows exponentially the further you go, it uses pruning to cut off the worst branches. It scores each initial move depending on the worst case that move can lead to (assuming the opponent makes the "best" moves for him, and the AI does the "best" moves on each turn) and mobility (number of different moves possible). Square-value evaluation is used for scoring each outcome. After evaluating each move, the worst branches are pruned and the game tree is extended furter. The moves are evaluated again and finally the best move is selected, always minimizing losses.

The AI includes lots of parameters to tune. I wasn't too keen on tuning them, so they are probably not optimal.

All AIs submitted (as school assignments) took part in a tournament. My AI was 7th out of 21 competetors and took up the most cpu-time. This wasn't quite the performance I was expecting, but I'll blame it all on not tuning it well wnough :P
The source of all other AIs can also be found below.

Source

  • Package with the game itself, tournament running software and several other AIs
  • View AI source
  • Download AI source
Tags:

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
(minus five) times (minus three) equals
Solve this math question and enter the solution with digits. E.g. for "two plus four = ?" enter "6".