Chess Anti-Cheating System

Tech StackPython, Pandas, Bayesian StatsPython-Chess, Stockfish
Difficulty
4/5: Challenging
Duration6 Weeks
Project Screenshot

Introduction

Note: Initially started as a personal project, later adapted and continued for the Statistical Inference Course.

It is well known that chess cheating is a becoming an issue inside the online chess comunity, paranoia has started taking over.

The most prevalent anti-cheating systems focus on flagging single, perfect moves, hence easily missing more subtle cheaters. My goal was to make a stride towards progressing said algorithms, building a system that establishes a statistical fingerprint of a player and detects deviations from their normal playing style.

My Approach & Results

To achieve this, I explored a way to measure player strength alternate to the ELO System, which we can use later to infer cheating detection. Below you can find a detailed presentation of the project, both as a video and as a PDF document, explaining the technical approach and the results.