Interactive demos

All six demos below run the JavaScript port of the thurstone Python package in your browser. No servers; the price–ability map is recomputed live as you change inputs.

argument

The Triple Crown

Three generative models — identical winning probabilities, completely different shapes. The case for Thurstone over Luce.

forward

Forward pricing

Drag ability sliders for a 5-runner race. Watch state prices and dividends update live.

inverse

Inverse calibration

Type dividends; recover implied abilities and check the round-trip back to prices.

multi-race

Multi-race stitching

Paste several races sharing runners; recover a single global $\theta$ vector.

density

Density playground

Play with skew-normal performance densities, integer/fractional shifts, convolution, dilation.

ties

Walkovers & ties

Hang runners off the lattice. See walkover and equal-share behaviour of the cluster splitter.

2D

2D (loc, scale) inversion

Per-runner scale interpreted as consistency. Inverse calibration in two dimensions.