Exploring an unusual evaluation function
Posted: Thu Jan 16, 2020 3:38 pm
Some years ago, having read an article about chess programming and the alpha-beta algorithm in particular I found myself musing on the possibility of a chess engine whose evaluation function would simply count the difference in the number of legal moves available to each side. My hunch was that maybe this could be calculated very quickly (almost for free) and that the potential saving could be used to search to a greater depth. My hope was that this simple evaluation might actually give rise to interesting, creative (and quite possibly winning) moves.
So I have recently written an engine based on Vice, the UCI engine written by Bluefever software and described in an excellent series of YouTube videos. I have tested it on the Arena platform, both by playing it myself and secondly in a tournament with Vice. The results are interesting - if a little disappointing.
On the positive side, it plays interesting' non-obvious moves, some of which appear quite promising. On the negative side, the simplicity of the evaluation function is offset by the fact that it is necessary to evaluate an extra set of legal moves at each leaf node and consequently the expected increase in search depth didn’t materialise.
In terms of style of play, restricting the evaluation of a position to the number of moves and no more, results in some disastrous sacrifices. For example a rook with no moves immediately available is considered effectively worthless. I anticipated this but thought that maybe it’s potential might be recognised deeper into the tree. But of course, rooks have a tendency to remain on the sidelines till much later in the play than would be accessible to my search depth.
I also experimented with weighting the valuation of a move according to the piece concerned. So this way, the moves available to the Queen can be weighted sufficiently to avoid the Queen being taken but the side effect is that lesser pieces are readily sacrificed for little more than simply increasing the number of moves available to the Queen, regardless of their immediate usefulness.
All in all, a failed experiment but then, there are few experiments that don’t yield interesting insights.
My intention was to investigate whether chess ‘insight’ could ‘emerge’ from a trivial view of what constitutes a strong position.
I don’t have any plans for further development beyond possibly introducing an additional component of the evaluation based simply on material balance. I imagine this will improve things.
While the approach might have limited value during openings and in the middle game, it could be interesting in the endgame.
If you have any comments or suggestions I’d be most interested to hear from you.
Adv<thanks>ance,
David Wilson
So I have recently written an engine based on Vice, the UCI engine written by Bluefever software and described in an excellent series of YouTube videos. I have tested it on the Arena platform, both by playing it myself and secondly in a tournament with Vice. The results are interesting - if a little disappointing.
On the positive side, it plays interesting' non-obvious moves, some of which appear quite promising. On the negative side, the simplicity of the evaluation function is offset by the fact that it is necessary to evaluate an extra set of legal moves at each leaf node and consequently the expected increase in search depth didn’t materialise.
In terms of style of play, restricting the evaluation of a position to the number of moves and no more, results in some disastrous sacrifices. For example a rook with no moves immediately available is considered effectively worthless. I anticipated this but thought that maybe it’s potential might be recognised deeper into the tree. But of course, rooks have a tendency to remain on the sidelines till much later in the play than would be accessible to my search depth.
I also experimented with weighting the valuation of a move according to the piece concerned. So this way, the moves available to the Queen can be weighted sufficiently to avoid the Queen being taken but the side effect is that lesser pieces are readily sacrificed for little more than simply increasing the number of moves available to the Queen, regardless of their immediate usefulness.
All in all, a failed experiment but then, there are few experiments that don’t yield interesting insights.
My intention was to investigate whether chess ‘insight’ could ‘emerge’ from a trivial view of what constitutes a strong position.
I don’t have any plans for further development beyond possibly introducing an additional component of the evaluation based simply on material balance. I imagine this will improve things.
While the approach might have limited value during openings and in the middle game, it could be interesting in the endgame.
If you have any comments or suggestions I’d be most interested to hear from you.
Adv<thanks>ance,
David Wilson