top of page
CertificateBackground.png

Certificate of Completion

ErdosHorizontal.png

THIS ACKNOWLEDGES THAT

HAS COMPLETED THE MAY-SUMMER 2024 DATA SCIENCE BOOT CAMP

Nathaniel Tamminga

clear.png

Roman Holowinsky, PhD

JUNE 10, 2024

DIRECTOR

DATE

TEAM

Detecting Engine Usage in Chess

Calvin Pozderac, Philip Barron, Philip Barron, Nathaniel Tamminga, Dushyanth Sirivolu

clear.png

When then world champion Magnus Carlsen lost to Niemann in a surprise upset, Magnus accused his opponent of cheating. Were such accusations well-founded?
The project: train a neural network to distinguish between human chess and engine chess. Techniques here will probably come from generative adversarial networks. For data sets: there's a couple open-source chess engines, like stockfish or leela chess zero. For human games, lichess regularly releases standard rated games for each month. (If we could find in-person high level tournament play, that'd be even better, as it's harder to cheat.) We could also add the elo of the players as input--it's probably easier to tell when a novice player is cheating using an engine than a grandmaster. The end goal would be to get something online, so that anyone can upload a chess game and see the output.
If this first idea turns out to be infeasible, we could instead use elo as output: given a full 2-player game, estimate the elo of each player. Flagging "suspiciously good" moves is another possibility.

Screen Shot 2022-06-03 at 11.31.35 AM.png
github URL
bottom of page