I am currently trying to make a chess engine that tries to make the most human moves instead of the best ones.
Now, I am aware of Maia Chess, which I believe is a neural network chess engine that attempts to emulate human-like play. However, I am more interested in chess engines that do not apply machine learning at all, (such as Stockfish with NNUE off). There are some reasons as to why I want to do this, but it's mainly curiosity, I suppose.
Basically, I want to code a static evaluation function that tries to evaluate the most human move using certain heuristics that are useful to predict human-like behavior and especially human error. I couldn't find any research that resembled this topic.
I already have an idea to use the complexity of a chess position (calculated in page 4 of research paper) to predict the likelihood of a mistake (the more complex the position, the likelier a mistake will occur), but it wouldn't be able to obtain exactly what blunder is played.
Basically, what heuristics would be helpful in determining the most human move in a position?