←back to thread

365 points lawrenceyan | 2 comments | | HN request time: 0.41s | source
Show context
tzs ◴[] No.41874291[source]
OT: what's the state of the art in non-GM level computer chess?

Say I want to play chess with an opponent that is at about the same skill level as me, or perhaps I want to play with an opponent about 100 rating points above me for training.

Most engines let you dumb them down by cutting search depth, but that usually doesn't work well. Sure, you end up beating them about half the time if you cut the search down enough but it generally feels like they were still outplaying you for much of the game and you won because they made one or two blunders.

What I want is a computer opponent that plays at a level of my choosing but plays a game that feels like that of a typical human player of that level.

Are there such engines?

replies(17): >>41874316 #>>41874396 #>>41874461 #>>41875345 #>>41875558 #>>41875838 #>>41875964 #>>41876292 #>>41876599 #>>41877326 #>>41877679 #>>41877852 #>>41879309 #>>41880419 #>>41881695 #>>41883667 #>>41888465 #
danielmarkbruce ◴[] No.41874396[source]
It doesn't seem that difficult to pull off - take one of the existing engines, get the top y moves, choose randomly. For each level down increase y by 1.
replies(5): >>41874442 #>>41874463 #>>41874480 #>>41874486 #>>41879718 #
1. teo_zero ◴[] No.41879718[source]
Better: take one of the existing engines, sort the moves from the best to the worst, if the top move has score S, randomly choose among the moves with score >= 0.9*S.

You can simulate a better/worse player by increasing/decreasing the factor: 1 plays as well as the chosen engine can do, 0 is typing random (yet valid) moves on the keyboard.

replies(1): >>41879882 #
2. danielmarkbruce ◴[] No.41879882[source]
Yup this is better.