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 recommender, drawn as a robot with a graph of chess lines lit up in its chest

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

Learning Mode

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.

an arrow shows the move to play, step by stepstray from it and you are guided back
Repeating Mode

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.

the drilled lineyou play the drilled moveyou play another move fromyour repertoire — followedyou blunder — the opponentplays the punishment outthen 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.

You open TEMPOPick a modelearnrepeatLearning Modeyou choose the lineGuided drillarrows show every moveWrong move correctedyou replay itRepeating Modethe recommender choosesUnassisted drillno hints, no arrowsPick is gradeddid it come too late?What you know is updatedevery move countsRecommenderyour profileyour repertoirewhat you knowpast picksBase model,fine-tuned on youreturns the next line

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.