Rino.Sassi@wolf.sublink.org (Rino Sassi) (05/07/91)
I'm developing (in Turbo C) an OTHELLO (TM) program. Current version at level 4 (abt 30 mins per player, on a Compaq 386s) has the following features: - looks forward 4 moves; - calculates the last 10 moves. I'm using a simple alfa-beta algorithm with a complex evaluating function (similar to IAGO). It wins regularly OthelloKiller (Commodore Amiga) and Windows/othello (ibm) at similar levels. I would appreciate ANY help from you in order to increase its strenght. In particular I'm interested in alfa-beta algorithms (killer cut, time limited moves, ... ), special evaluating functions (about X squares, borders, ... ), literature, books (titles), other PD or SHAREWARE Othello programs, and tournament dates and sites (possibly in Europe). You can leave a message in this area (to Rino Sassi) or write or call: My Address: Gaetano Putaturo, Loc. La Cagnola 4, 56011 Calci PI, ITALIE. Tel: +39-(0)50-937175 -- WolfNet BBS Pisa (Italy) Tel. +39-50-589050 300-14.4K Baud Matrix 2:332/602.0 Rino Sassi - via FidoNet node 2:332/602 UUCP: ...!gear!wolf!Rino.Sassi ARPA: Rino.Sassi@wolf.sublink.org
robinson@elux1.cs.umass.edu (Richard Robinson) (05/10/91)
In article <8993.28273AF2@wolf.sublink.org> Rino.Sassi@wolf.sublink.org (Rino Sassi) writes: >I'm developing (in Turbo C) an OTHELLO (TM) program. > >Current version at level 4 (abt 30 mins per player, on a Compaq 386s) has >the following features: > >- looks forward 4 moves; You should be able to search a lot farther than that. You should allocate a certain amount of time per move, then use an iterative alpha-beta routine to look as far as time allows. >- calculates the last 10 moves. > >I'm using a simple alfa-beta algorithm with a complex evaluating function >(similar to IAGO). It wins regularly OthelloKiller (Commodore Amiga) and > >Windows/othello (ibm) at similar levels. I would appreciate ANY help from >you in order to increase its strenght. In particular I'm interested in >alfa-beta algorithms (killer cut, time limited moves, ... ), special >evaluating functions (about X squares, borders, ... ), literature, books >(titles), other PD or SHAREWARE Othello programs, and tournament dates and >sites (possibly in Europe). Killers are easy - Every time you get a cutoff, save the move that caused the cutoff in an array indexed by the current ply. Change your alpha-beta routine to first search the killer if it is legal in the position. viola. As for a great article, I suggest you read the paper on BILL 3.0. You can find it in a recent issue of Artificial Intelligence. (Sorry, don't know the number off hand. -Dread -- robinson@elux1.cs.umass.edu