Também sou um desenvolvedor de mecanismo de xadrez, deixe-me responder com minha própria experiência:
Existem muitos motivos para diferenciar a habilidade de jogo. Na verdade, muito. Esta é uma área onde se pode escrever uma tese de doutorado, mas vamos dar uma olhada rápida nos dois fatores principais.
- Capacidade de fazer um corte mais rápido
- Capacidade de avaliar uma posição melhor
Ao contrário de um jogador humano, um algoritmo de xadrez de computador não precisa de uma avaliação de posição sofisticada. Muitos motores fracos tendem a usar algumas avaliações muito complicadas, como interpolação cúbica de valores de material, mas nenhuma delas provou funcionar. Simples é a chave. Stockfish, o motor mais potente do mundo, tem uma avaliação sobre o Elo 1800. Pode parecer incrível que um motor Elo 3000+ tenha uma avaliação simples que é apenas sobre o nível Elo 1800. Mas lembre-se, um computador precisa usar essa função de avaliação para centenas de milhares de posições. Quanto mais simples, mais rápido o mecanismo pode pesquisar, mais profundidade ele pode alcançar e, portanto, mais táticas ele pode ver.
Os mecanismos fracos tendem a usar apenas alfa-beta. É insuficiente porque o espaço de busca é muito grande. Seria necessário considerar movimento nulo, reduções de movimento tardio e outros algoritmos avançados.
Agora, para o seu segundo ponto. O erro comum cometido por motores de xadrez no intervalo ELO 1500 - 1800 é que seus programadores não entendem de programação de xadrez. MicroMax, um motor de xadrez superleve (pesquise se você não acredita) pode jogar Elo 2000. Qualquer coisa mais fraca do que é uma indicação de que o motor tem bugs e não está funcionando como esperado, como deveria.
Em geral, um motor com uma função de avaliação de material correta pode executar Elo 2000.