Giraffe dissertation, and now open source
Posted: Tue Sep 08, 2015 5:17 am
Giraffe is now open source (GPLv3 or later): https://bitbucket.org/waterreaction/giraffe
Dissertation: http://arxiv.org/abs/1509.01549
It describes how the evaluator is trained, the move evaluator, and probabilistic search (previously known as node-count limited search - exact same thing).
Thanks guys for your encouragements along the way. It has been quite a ride.
I have been working on Giraffe full time for about 3 months now, and it's pretty amazing to see how far it has progressed in just 3 months - and most of the 3 months were spent implementing and testing novel algorithms that turned out to be totally useless! However, it was all worth it in the end. Some of the new algorithms worked, and some of them worked much much better than what I had imagined. It's always exciting to be trying radically new things that no one has done before - most of the time they will be flops, but the occasional successes are all the more exciting because of that.
A while ago there was a post here complaining that computer chess has been pretty boring over the past decade, with everyone just implementing the same algorithms over and over, with small tweaks and small incremental changes. I was convinced of the same, and that's why I took a 7 years long break from computer chess (between Brainless, my previous engine, and Giraffe).
If nothing else, I hope Giraffe shows that there is still much to be discovered in computer chess. It does not have to be boring. People have mostly converged on the same ways to do a lot of things, and most of those ways are obviously very good, but they are certainly not the only ways.
As for Giraffe, I only had time to do pretty naive implementations of those new algorithms, and almost none of them are tuned at all. I still have a million ideas I want to try (and some of them are moonshots - but hey, Giraffe is all about moonshots, and maybe I'll get lucky again). Gaining another few hundred Elo should be pretty easy. There are still quite a few ideas that I'm pretty sure will help, but haven't had a chance to implement yet. Will it become one of the top engines? Your guess is as good as mine. But I don't see that as the immediate goal. The easiest way to get a strong engine is to do what everyone else is doing. But where is the fun in that?
Dissertation: http://arxiv.org/abs/1509.01549
It describes how the evaluator is trained, the move evaluator, and probabilistic search (previously known as node-count limited search - exact same thing).
Thanks guys for your encouragements along the way. It has been quite a ride.
I have been working on Giraffe full time for about 3 months now, and it's pretty amazing to see how far it has progressed in just 3 months - and most of the 3 months were spent implementing and testing novel algorithms that turned out to be totally useless! However, it was all worth it in the end. Some of the new algorithms worked, and some of them worked much much better than what I had imagined. It's always exciting to be trying radically new things that no one has done before - most of the time they will be flops, but the occasional successes are all the more exciting because of that.
A while ago there was a post here complaining that computer chess has been pretty boring over the past decade, with everyone just implementing the same algorithms over and over, with small tweaks and small incremental changes. I was convinced of the same, and that's why I took a 7 years long break from computer chess (between Brainless, my previous engine, and Giraffe).
If nothing else, I hope Giraffe shows that there is still much to be discovered in computer chess. It does not have to be boring. People have mostly converged on the same ways to do a lot of things, and most of those ways are obviously very good, but they are certainly not the only ways.
As for Giraffe, I only had time to do pretty naive implementations of those new algorithms, and almost none of them are tuned at all. I still have a million ideas I want to try (and some of them are moonshots - but hey, Giraffe is all about moonshots, and maybe I'll get lucky again). Gaining another few hundred Elo should be pretty easy. There are still quite a few ideas that I'm pretty sure will help, but haven't had a chance to implement yet. Will it become one of the top engines? Your guess is as good as mine. But I don't see that as the immediate goal. The easiest way to get a strong engine is to do what everyone else is doing. But where is the fun in that?