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?
3 stagesRound 1 · Round 2 · USAAIO Camp
Under 20middle/high school in US or Canada (citizen/PR/FT-student)
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 three-stage format (Round 1 → Round 2 → USAAIO Camp) and how Team USA is actually picked.
  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

Three stages. Round 1 (online qualifier, ~300+ participants) → Round 2 (in-person, threshold-based, ~19% advance — 76 finalists in 2025) → USAAIO Camp (June, at MIT in 2026; Harvard hosted in prior years). All answers submit through Google Colab. Round 1 is CPU-only; Round 2 may use L4 GPUs.
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. Top scorers in Round 2 are invited to the USAAIO Camp (held at MIT in June). Camp team-selection tests — not Round 2 itself — pick Team USA for IOAI and IAIO. The camp is the real gate.