Matt Pearson
Work

Things I’ve built.

Three of these have proper case studies, because they had real constraints and taught me something. The rest are here because they’re honest evidence of what I can do, not because they need explaining.

Featuredsimulation & optimisationRestart Lab

A set-piece simulator that refuses to lie. It plays a corner out thousands of times, scores every chance with a real expected-goals model, and won't call a routine a winner unless it beats random search first.

Python · StatsBomb xG · optimisation · SHAP
OPTIMISATION STUDY
Client workBath University Boat ClubBUBC

A club website rebuilt to outlive the committee that commissioned it. Editors publish a race report in five minutes, it targets 95+ on Lighthouse, and it runs for about ten pounds a year.

Astro · Sanity · Vercel · Tailwind · WCAG 2.2 AA
HOMEPAGE
Researchfinal-year dissertationThe Bike Fit Study

Fifty-one riders, three sessions each, asking whether a professional bike fit actually changes what the body does — and whether it differs between men and women. I designed the protocol, ran every session, and built the pipeline from raw sensor stream to finding.

Experiment design · Python · COSMED · Qualisys & Theia3D · EMG
PIPELINE FIGURE
Also built

Coursework, experiments and client work.

Smaller pieces. Where there’s code worth reading, the link goes straight to it.

IMDb sentiment pipeline

A full sentiment classification pipeline: custom naive Bayes against TF-IDF, with lemmatisation, custom stop words, n-grams and minimum document frequency all tunable from the command line.

Python · scikit-learn · NLTKCode →

Space Invaders reinforcement learning

Coursework building and comparing reinforcement learning methods on Atari Space Invaders, with a second piece researching intrinsic motivation.

Python · RLCode →

Brain tumour detection

A YOLOv10 model fine-tuned on annotated MRI scans, wrapped in a Gradio interface so predictions can be inspected image by image. A direct descendant of my EPQ on computer-aided diagnosis.

PyTorch · YOLOv10 · GradioCode →

Society Matchmaker

An eight-person team project tackling student society engagement. I led the user research and built the random forest recommender behind it; engagement rose 150% against the system it replaced.

Python · random forest · user research

Agent experiments

A NEAT agent that teaches itself the Chrome dinosaur game, Conway's Game of Life extended into a forest fire simulator, and a boid flocking model adapted to study migration under environmental stress.

Python · NEAT · cellular automataCode →

Barnett Art

A gallery site for an artist's work, built to take enquiries about individual pieces and ready to sell directly when that is wanted.

Client work

Argonauts

A 2D platformer with dashing, wall-jumping and enemy AI, built in Unity. The follow-up was a grappling traversal game made in Unreal during a hackathon.

Unity · C#Code →