AI Team Project
TEMPO
Trained Engine for Memory-Paced Openings
A player's hardest question is not how to play a line — it is which of the lines they already know needs work today. TEMPO answers it with a model that ships as a base model, is fine-tuned on one player's own play, and is graded on every recommendation it makes.
Focus
- Recommender Systems
- Personalisation
- Learning from Feedback
- Chess
Team
A mixed international team of German and Romanian students, for one semester.

The problem
Deciding what to study is the hardest part of studying alone
Existing trainers answer that question with a fixed rule — the same rule for every user, for the life of the product. It cannot know that you hold a sharp tactical line for weeks and lose a quiet positional one in days.
Other systems
One scheduling rule, identical for every player, fixed forever
TEMPO
A model fine-tuned on your play, graded on its own decisions and user performance
Two modes
Learn it with help, then prove it without
You pick the line you want to learn, and it is walked through under full guidance — an arrow on the board shows the move to play. Stray from it and you are guided back before the move can land.
The line is the model's call, not yours. No hints. No arrows. Blunder, and nothing stops you — the opponent plays out the punishment on the board, you watch the piece go, and only then does the position rewind.
Everything is logged
Every move attempt and every recommendation — including which branch the player took, and every position a punishment sequence passed through. That log is what the model learns from, and what the project's results are measured on.
The loop
One session, from the first move to the next recommendation
Both modes write to the same record of what you know. The recommender — your profile, your repertoire, that record, its own past picks, and the model fine-tuned on all of it — reads what comes out and returns the line to repeat next.
How it works
The recommender is graded on its own decisions
Which lines get learned is the player's own choice. The model's job starts afterwards: it reads their profile, their repertoire, the record of every line they have drilled so far and its own earlier suggestions, and returns the one line that should be repeated next.
The suggestion is then measured against what actually happened in the session — what was recalled, what was missed, and how long it took the player to find the right move. That measurement is what the model is trained on next, so over time it builds a picture of one specific player's memory.
A line the player has already forgotten is recorded as having arrived too late. That grade becomes training data, which is what separates the recommender from a scheduler that is never told whether it was right.
Scope
The model reasons about learning, not about chess
The recommender solves a general problem: given a learner, a set of things they are trying to learn, and a history of how their practice went, decide what they should practise next. Its inputs and outputs are kept in a form that does not assume the material is chess.
Chess is where it is built and measured first. The domain supplies dense, cheap, objectively gradable outcomes — a move either is the repertoire move or it is not — which makes it a good place to find out whether the approach works at all.
What goes in
A learner, the things they are learning, and how practice has gone so far
The model
Decides what to revisit next — and is graded on that decision
What comes out
The one item the learner should revisit next
Nothing in that exchange is chess-specific. Everything that is lives behind the domain layer.
For students
Thinking about joining?
- You are comfortable writing Python
- You are comfortable with git and working in a shared repository
- You enjoy working in a mixed international team, across two universities
- Interest in machine learning helps — recommender systems, personalisation, or learning from user feedback
- Curiosity about how people learn and forget is worth as much as model experience — this is a memory model before it is a chess model
- Chess knowledge is welcome for intuition, and is not required for most of the codebase
What you walk away with
The experience of carrying a genuine research question all the way to a working system and of doing it in a mixed team across two universities and one shared repository.