My notebook for the USA AI Olympiad.

I'm preparing for USAAIO by writing down what I learn — the linear algebra and probability I lean on, the Python data stack, classical ML I want to be fluent in, and the PyTorch and transformer code I expect to need on contest day. Writing it down is how I check that I actually understand it.

Open the study plan → What is USAAIO?
2 roundsonline qualifier · in-person final
K–12US & Canada eligible
PythonNumPy · scikit-learn · PyTorch
IOAITeam USA selection path

What this site covers

Each module is a self-contained page. The study plan stitches them into a weekly progression from math foundations through transformer fine-tuning.

Suggested reading order

  1. Get oriented. Read About the contest to understand the two-round format and what the in-person final actually looks like.
  2. Lock in the math. Work through the math review. You don't need all of multivariable calculus — just the slice that powers gradient descent and PCA.
  3. Get fluent in the Python data stack. The Python toolkit covers NumPy + pandas + matplotlib until you can manipulate arrays without thinking.
  4. Sweep classical ML. The classical ML page covers every scikit-learn family in one sitting: linear models, trees, ensembles, clustering.
  5. Build a neural net from scratch. The deep learning page walks through a manual MLP in NumPy, then the same thing in PyTorch.
  6. Understand attention. The transformers page goes from tokenizer to scaled dot-product attention to a working transformer block.

Why an AI olympiad is different

Big-picture reminders

Two rounds. The online qualifier filters down to ~30–50 finalists who travel to the in-person final (recent venues have included Harvard and MIT). Both rounds combine machine-graded coding tasks with theory questions.
Language. Python is the de facto language. The required libraries — NumPy, pandas, matplotlib, scikit-learn, PyTorch — are all standard, but you must be comfortable enough to debug them under contest pressure.
The international path. USAAIO winners form Team USA at the International Olympiad in Artificial Intelligence (IOAI) and the International AI Olympiad (IAIO). If you're aiming for international, the USAAIO finals are the gate.