Hi,
michi-c is a port in C of the michi program by Petr Baudis with the same
goals (see https://gitub.com/pasky/michi).
It has many of the extensions that Petr has hoped:
- early passing,
- graphics in gogui,
- parameters modifications by gtp commands,
- speed improvement by tracking liberties and blocks,
- preliminary time management and dynamic komi
- read simple SGF files
- small user manual
Currently (version 1.4), it runs exactly the same algorithms as the
michi python version.
The michi goal for brevity has been relaxed in favor of speed and
functionalities.
Michi-c is relatively fast even if there is still much room for
improvements. It runs 3200 playouts/s from an empty 19x19 board on an
i7-4790K (single threaded and using large patterns). With this setting,
it plays about even with gnugo on 19x19 (winrate 57 % +/- 2.5% measured
on 400 games) at an average speed of 400 seconds per game (about 3.3
sec/move).
The development is done on Linux but the goal is to keep the code portable.
Michi-c comes with everything included. The only requirements are :
- a C compiler with the standard C library to build the gtp engine,
- gogui (http://gogui.sourceforge.net) to use the engine confortably if
gogui is supported on your system.
The code for the MCTS tree search and the playout policy is about 1000
lines of C (20 % of the total).
Michi-c can be downloaded at https://github.com/db3108/michi-c2. It is
distributed under the MIT license.
Thanks to Horace Ho, Andreas Pearson, Eric Steinmetz and J.Kartz who
have provided feedback and/or corrections about portability issues of
earlier versions with IOS (iphone 6), Windows 32 bits system with
Microsoft Visual Studio and MAC OS X.
And of course, many thanks to Petr Baudis for having published the
michi.py code and setting up the goals for this project.
Denis
_______________________________________________
Computer-go mailing list
Computer-go@computer-go.org
http://computer-go.org/mailman/listinfo/computer-go