A genetic chess engine?

Discussion of chess software programming and technical issues.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
HamzaAlrawi
Posts: 1
Joined: Wed Oct 10, 2018 6:18 am
Full name: Hamza Alrawi

A genetic chess engine?

Post by HamzaAlrawi » Mon Oct 15, 2018 6:30 am

Hello,

I'm having this idea about a chess engine that learns from genetic algorithms. Basically, every generation plays itself and we select the winner for the next generation.

Has this been done before? Would it work? Any ideas?

Sesse
Posts: 203
Joined: Mon Apr 30, 2018 9:51 pm
Contact:

Re: A genetic chess engine?

Post by Sesse » Mon Oct 15, 2018 7:07 am

You reinvented Fishtest? :-P

User avatar
asanjuan
Posts: 211
Joined: Thu Sep 01, 2011 3:38 pm
Location: Seville, Spain

Re: A genetic chess engine?

Post by asanjuan » Mon Oct 15, 2018 8:37 am

HamzaAlrawi wrote:
Mon Oct 15, 2018 6:30 am
Hello,

I'm having this idea about a chess engine that learns from genetic algorithms. Basically, every generation plays itself and we select the winner for the next generation.

Has this been done before? Would it work? Any ideas?
iCE is a good and successfull example. If I recall correctly, it uses PBIL, which is a kind of genetic training, to train every parameter for eval and search.
I used to train Rhetoric with a genetic algorithm with less success. Finally I ended using the texel method.

One of the problems of G.A applied to chess is to decide what are you training for (search, eval... both). Also it is very difficult to set a fitness function that correlates well with game strenght, and taking game results takes a lot of time, not to mention the problem of noise in the game outcomes.

So, in general, It has been applied. But it is somehow painful to implement.
Texel's method is easier, but it doesn't work with search optimization, it only works for evaluation.

BrendanJNorman
Posts: 2085
Joined: Sun Feb 07, 2016 11:43 pm
Full name: Brendan J Norman

Re: A genetic chess engine?

Post by BrendanJNorman » Mon Oct 15, 2018 1:50 pm

asanjuan wrote:
Mon Oct 15, 2018 8:37 am
HamzaAlrawi wrote:
Mon Oct 15, 2018 6:30 am
Hello,

I'm having this idea about a chess engine that learns from genetic algorithms. Basically, every generation plays itself and we select the winner for the next generation.

Has this been done before? Would it work? Any ideas?
iCE is a good and successfull example. If I recall correctly, it uses PBIL, which is a kind of genetic training, to train every parameter for eval and search.
I used to train Rhetoric with a genetic algorithm with less success. Finally I ended using the texel method.

One of the problems of G.A applied to chess is to decide what are you training for (search, eval... both). Also it is very difficult to set a fitness function that correlates well with game strenght, and taking game results takes a lot of time, not to mention the problem of noise in the game outcomes.

So, in general, It has been applied. But it is somehow painful to implement.
Texel's method is easier, but it doesn't work with search optimization, it only works for evaluation.
I love Rhetoric, are you still working on it?

Henk
Posts: 6367
Joined: Mon May 27, 2013 8:31 am

Re: A genetic chess engine?

Post by Henk » Mon Oct 15, 2018 3:10 pm

BrendanJNorman wrote:
Mon Oct 15, 2018 1:50 pm
asanjuan wrote:
Mon Oct 15, 2018 8:37 am
HamzaAlrawi wrote:
Mon Oct 15, 2018 6:30 am
Hello,

I'm having this idea about a chess engine that learns from genetic algorithms. Basically, every generation plays itself and we select the winner for the next generation.

Has this been done before? Would it work? Any ideas?
iCE is a good and successfull example. If I recall correctly, it uses PBIL, which is a kind of genetic training, to train every parameter for eval and search.
I used to train Rhetoric with a genetic algorithm with less success. Finally I ended using the texel method.

One of the problems of G.A applied to chess is to decide what are you training for (search, eval... both). Also it is very difficult to set a fitness function that correlates well with game strenght, and taking game results takes a lot of time, not to mention the problem of noise in the game outcomes.

So, in general, It has been applied. But it is somehow painful to implement.
Texel's method is easier, but it doesn't work with search optimization, it only works for evaluation.
I love Rhetoric, are you still working on it?
Maybe he interprets that as a rhetorical question. So don't expect an answer.

David Carteau
Posts: 46
Joined: Sat May 24, 2014 7:09 am
Location: France
Full name: David Carteau
Contact:

Re: A genetic chess engine?

Post by David Carteau » Mon Oct 15, 2018 6:52 pm

asanjuan wrote:
Mon Oct 15, 2018 8:37 am
HamzaAlrawi wrote:
Mon Oct 15, 2018 6:30 am
Hello,

I'm having this idea about a chess engine that learns from genetic algorithms. Basically, every generation plays itself and we select the winner for the next generation.

Has this been done before? Would it work? Any ideas?
iCE is a good and successfull example. If I recall correctly, it uses PBIL, which is a kind of genetic training, to train every parameter for eval and search.
I used to train Rhetoric with a genetic algorithm with less success. Finally I ended using the texel method.

One of the problems of G.A applied to chess is to decide what are you training for (search, eval... both). Also it is very difficult to set a fitness function that correlates well with game strenght, and taking game results takes a lot of time, not to mention the problem of noise in the game outcomes.

So, in general, It has been applied. But it is somehow painful to implement.
Texel's method is easier, but it doesn't work with search optimization, it only works for evaluation.
Orion also uses PBIL genetic's approach : more info here ! It's really simple to implement !

You'll find an excellent description of this family of algorithms applied to chess programming in Thomas Petzke's blog (direct link).

User avatar
asanjuan
Posts: 211
Joined: Thu Sep 01, 2011 3:38 pm
Location: Seville, Spain

Re: A genetic chess engine?

Post by asanjuan » Thu Oct 18, 2018 4:06 pm

BrendanJNorman wrote:
Mon Oct 15, 2018 1:50 pm
asanjuan wrote:
Mon Oct 15, 2018 8:37 am
HamzaAlrawi wrote:
Mon Oct 15, 2018 6:30 am
Hello,

I'm having this idea about a chess engine that learns from genetic algorithms. Basically, every generation plays itself and we select the winner for the next generation.

Has this been done before? Would it work? Any ideas?
iCE is a good and successfull example. If I recall correctly, it uses PBIL, which is a kind of genetic training, to train every parameter for eval and search.
I used to train Rhetoric with a genetic algorithm with less success. Finally I ended using the texel method.

One of the problems of G.A applied to chess is to decide what are you training for (search, eval... both). Also it is very difficult to set a fitness function that correlates well with game strenght, and taking game results takes a lot of time, not to mention the problem of noise in the game outcomes.

So, in general, It has been applied. But it is somehow painful to implement.
Texel's method is easier, but it doesn't work with search optimization, it only works for evaluation.
I love Rhetoric, are you still working on it?
Hi Brendan, thanks for your support.

I'm doing litle things. Nothing special enough to publish a new version. I am currently focused on my family, since we had our second child. My little daugther suffers from a severe illness and it is hard to dedicate some time to Rhetoric. From time to time I switch on my computer and I try to find the last thing I was changing. I still love to work on Rhetoric. Maybe when the children will grow there will be new versions. But the Stockfish-Komodo-Houdini trio is getting stronger with the time, and I wonder if someone will keep any interest in weaker engines like Rhetoric.

By the way, let me tell you that I love your video review of Rhetoric alias "dynamic". :D

Regards.

Post Reply