All the information (theory) is on the task

· Almost looks like work ·

34 min read Original article ↗

We're currently in the middle of the 22nd series of Taskmaster1 here in the UK which - for the uninitiated - involves a group of (pseudo-) celebrities competing to perform a variety of deeply silly tasks. The contestant lineups vary but are similar in spirit - usually a combination of comedians, TV presenters, and increasingly a token member from across the pond.

The contestant that I've been thinking about (and there's always one!) is the absolutely awful one - failing almost every task thrown at them through incompetence, indifference or outright malice. Miraculously though, they always seem to manage to win at least one episode, no matter how hard they try to avoid doing so.

The questions I need to answer, nay, the nation demands answers to, are the following:

  • Is this a miracle?
  • If so, is P(x wins episode ∣ x formed of pure chaos)P(x\text{ wins episode } | \text{ }x\text{ formed of pure chaos}) statistically surprising?
  • Can I jam some physics into the answer regardless? (I think we know this one. Is it foreshadowing given it's been fore-foreshadowed in the post description? Is this a post-foreshadowing?)

Let's start, as all good things do, with some data.

Fetching the data

Fortunately the UK is blessed with an abundance of nerds eccentrics, who have gathered every possible detail about the aired episodes of Taskmaster, no matter how small. In this case I used:

The cleaned CSV file contains 182 episodes from series 1-20, including 940 tasks and 4,700 scores. (Special and tiebreak tasks are not included.) You can view and download the dataset here:

Loading cleaned taskmaster scores…

To compare contestants across different series, let's define a 'win credit':

  • If you win an episode, you get 1 credit
  • If you draw with, say, 2 other contestants, you get 1/31/3 credits

Then, per series, we rank contestants from strongest to weakest using 'task credits' - a normalised score per-task, assuming NN tasks in the series:

Strength=1N∑i=1NScore on task iBest score on task i\text{Strength} = \frac{1}{N}\sum^N_{i=1}\frac{\text{Score on task }i}{\text{Best score on task }i}

Sorting contestants this way, then summing up all win credits from all series, we get the following:

Strongest2nd3rd4thWeakest01020304050Contestant strengthObserved win creditsStrongest Observed win credits: 50.172nd Observed win credits: 44.673rd Observed win credits: 33.54th Observed win credits: 30.33Weakest Observed win credits: 23.33

Actual win credits across 20 series of UK Taskmaster.

So far, so unsurprising - the strongest contestant in each series wins the most episodes. No miracles just yet. The question we need to ask ourselves though, is whether this distribution is what we'd expect?

Taskmaster is filmed in a particular fashion - the contestants perform their tasks in quick succession, usually independently. Later on, all contestants are brought together to film in-studio segments where the task performances are reviewed and scored. This approach gives the nefarious task scheduler the chance to allocate tasks to episodes in any order they like - they might choose to pick all of the strong task performances for the weakest performer and place them in one episode, just to give them an (undeserved) chance to win an episode.

(Very much like gerrymandering6, though with more rubber ducks involved and - probably - a lower chance of triggering the inexorable descent into autocracy.)

We can perform a numerical experiment to investigate this possibility: shuffle the tasks amongst episodes while retaining the per-task scores. The per-series strong/weak classification of contestants isn't affected, but the win credits are. After performing many shufflings and averaging the results, here's what we see:

Episode wins by contestant strengthObserved episode-win credits and averages from 10,000 unrestricted random deals, summed across UK Series 1–20. Rank 1 is strongest and rank 5 weakest by mean normalized prerecorded-task score. Tied wins split one credit equally.Strongest2nd3rd4thWeakest01020304050Contestant strengthWin creditsObserved Strongest Win credits: 50.17Observed 2nd Win credits: 44.67Observed 3rd Win credits: 33.5Observed 4th Win credits: 30.33Observed Weakest Win credits: 23.33Shuffled average Strongest Win credits: 52.36Shuffled average 2nd Win credits: 42.6Shuffled average 3rd Win credits: 36.64Shuffled average 4th Win credits: 32.68Shuffled average Weakest Win credits: 17.71

The weakest contestants tend to score more highly than random chance would suggest! Shuffling can also be thought of dealing 'hands' of tasks to each series at random.

Ah-hah! I don't need to be no stinkin' statistician to spot that those bars are different heights. As the foreshadowing above predicted, the weakest contestants are observed to perform more strongly than average, and everyone else more weakly.

This is certainly suggestive, but we'll need to be more confident than that to convince the nerds eccentrics of the distributed Taskmaster fandom - let's continue down the rabbit hole.

Choosing a model

Let's get clear with some definitions before continuing:

  • There are a huge number of valid Taskmaster schedules across 20 series - together they form a set Ω\Omega
  • A particular valid schedule is x∈Ωx \in \Omega.
  • The weakest contestant scores win credits W(x)W(x) under the schedule xx.
  • The observed weakest-contestant-win-credit is Wobs≈23W_{\text{obs}} \approx 23, and the shuffled average is W0≈17W_0 \approx 17.

Let's assume at zeroth order that the probability of seeing any given schedule amongst all possibilities is uniform, i.e.

P0(x)=1∣Ω∣P_0(x) = \frac{1}{|\Omega|}

This is the model that the 'Shuffled average' bars above represent - when shuffling, we just pick schedules uniformly at random.

Clearly though in reality this model is incorrect, otherwise the bars above would match. We need to deform P0P_0 in a sensible way, then measure how much deformation is required to match the observation (and whether this deformation is significant!)

To pick a 'good' deformation I'd usually reach for physical intuition, which is sadly not possible here. (Or is it? Post-post-foreshadowing count: 2.) Instead, we can peer across the fence to our friends in the information theory department, and borrow their concept of relative entropy: a metric to compare probability distributions. The deformed distribution with the lowest relative entropy is the 'closest' to P0P_0, and therefore requires the fewest additional assumptions to reach.

We'll use the Kullback-Leibler divergence7 to measure how much a new distribution Q(x)Q(x) differs, defined as

D(Q  ∣∣  P0)=∑x∈ΩQ(x)log⁡Q(x)P0(x).D(Q \; || \; P_0) = \sum_{x \in \Omega}Q(x)\log{\frac{Q(x)}{P_0(x)}}.

We'd like to minimise this quantity, while also ensuring ∑xQ(x)=1\sum_xQ(x) = 1, and ∑xQ(x)W(x)=Wobs\sum_xQ(x)W(x) = W_{\text{obs}}. We therefore have a constrained optimisation problem, so turn to the tool of Lagrange multipliers8, resulting in the Lagrangian

L(Q)=∑xQlog⁡QP0+c1(∑xQ−1)+c2(∑xQW−Wobs)\mathcal{L}(Q) = \sum_xQ\log{\frac{Q}{P_0}} + c_1\left(\sum_xQ - 1\right) + c_2\left(\sum_x QW - W_{obs}\right)

where I've simplified some notation and added arbitrary constants c1c_1 and c2c_2. Proceeding by differentiating with respect to a particular Q(x)Q(x),

∂L∂Q=0=log⁡QP0+1+c1+c2W\frac{\partial\mathcal{L}}{\partial Q} = 0 = \log{\frac{Q}{P_0}} + 1 + c_1 + c_2W

and re-arranging and renaming to different arbitrary constants we have

Q(x)=cP0(x)eλW(x).Q(x) = cP_0(x)e^{\lambda W(x)}.

We know that Q(x)Q(x) is normalised, so we can write the normalisation constant out the front as

Q(x)=P0(x)eλW(x)∑xP0(x)eλW(x)≡P0(x)eλW(x)Z(λ).Q(x) = \frac{P_0(x)e^{\lambda W(x)}}{\sum_xP_0(x)e^{\lambda W(x)}} \equiv P_0(x)\frac{e^{\lambda W(x)}}{\mathcal{Z}(\lambda)}.

To get a feel for what λ\lambda represents, consider two schedules x1x_1 and x2x_2 that have W(x1)=W1W(x_1) = W_1 and W(x2)=W2W(x_2) = W_2. Then

Q(x2)Q(x1)=P0(x2)P0(x1)eλ(W2−W1)=eλ(W2−W1)\frac{Q(x_2)}{Q(x_1)} = \frac{P_0(x_2)}{P_0(x_1)}e^{\lambda(W_2-W_1)} = e^{\lambda(W_2-W_1)}

i.e. for every unit increase in WW, the probability of that schedule occurring is boosted by eλe^\lambda. Positive λ\lambda therefore increases the probability of schedules favouring the weakest contestant by boosting their average score WW.

The difference between P(x)P(x) and P(W=w)P(W = w)

Before we continue, it's useful to spend a little time discussing how the distribution of schedules (xx) is related to that of win credits (WW) - the former can be uniform while the latter is not. Define the distribution over WW like

P0(W=w)=∑x∈ΩW(x)=wP0(x).P_0(W=w) = \sum_{\substack{x\in\Omega\\W(x)=w}} P_0(x).

i.e. the probability of a particular ww is the sum of probabilities over schedules that produce this score.

Consider a toy example with three schedules x1−3x_{1-3}, each with uniform probability P0(xi)=1/3P_0(x_i) = 1/3. Each schedule has a different score: W(x1)=0W(x_1)=0, W(x2)=1/3W(x_2)=1/3 and W(x3)=2/3W(x_3)=2/3.

The toy partition function is therefore

Z(λ)=13(1+eλ/3+e2λ/3).\mathcal{Z}(\lambda)=\frac13\left(1+e^{\lambda/3}+e^{2\lambda/3}\right).

and the probabilities for WW look like:

SchedulewwP0(W=w)P_0(W=w)Qλ(W=w)Q_\lambda(W=w)
x1x_101/31/31/(3Z)1/(3\mathcal{Z})
x2x_21/31/31/31/3eλ/3/(3Z)e^{\lambda/3}/(3\mathcal{Z})
x3x_32/32/31/31/3e2λ/3/(3Z)e^{2\lambda/3}/(3\mathcal{Z})

We can plot how these probabilities change as we vary λ\lambda, and how those changes affect the expected value of WW as it varies: . Eλ(W)=∑wwQ(W=w)\mathbb{E}_{\lambda}(W) = \sum_w wQ(W=w).

-4-20240.000.250.500.751.00

λ\lambda

lambda

P(W=w)   and   Eλ[W]P(W=w)\;\text{ and }\;\mathbb{E}_{\lambda}[W]

Probability / expected win credits
Q lambda(W = 0) lambda: -4 Probability / expected win credits: 0.75Q lambda(W = 0) lambda: -4 Probability / expected win credits: 0.74Q lambda(W = 0) lambda: -4 Probability / expected win credits: 0.73Q lambda(W = 0) lambda: -4 Probability / expected win credits: 0.73Q lambda(W = 0) lambda: -4 Probability / expected win credits: 0.72Q lambda(W = 0) lambda: -4 Probability / expected win credits: 0.71Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.70Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.69Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.68Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.67Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.67Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.66Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.65Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.64Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.63Q lambda(W = 0) lambda: -3 Probability / expected win credits: 0.62Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.61Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.60Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.58Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.57Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.56Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.55Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.54Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.53Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.52Q lambda(W = 0) lambda: -2 Probability / expected win credits: 0.51Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.49Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.48Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.47Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.46Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.45Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.44Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.43Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.41Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.40Q lambda(W = 0) lambda: -1 Probability / expected win credits: 0.39Q lambda(W = 0) lambda: -0 Probability / expected win credits: 0.38Q lambda(W = 0) lambda: -0 Probability / expected win credits: 0.37Q lambda(W = 0) lambda: -0 Probability / expected win credits: 0.36Q lambda(W = 0) lambda: -0 Probability / expected win credits: 0.34Q lambda(W = 0) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = 0) lambda: 0 Probability / expected win credits: 0.32Q lambda(W = 0) lambda: 0 Probability / expected win credits: 0.31Q lambda(W = 0) lambda: 0 Probability / expected win credits: 0.30Q lambda(W = 0) lambda: 0 Probability / expected win credits: 0.29Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.28Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.27Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.26Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.25Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.24Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.23Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.22Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.21Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.20Q lambda(W = 0) lambda: 1 Probability / expected win credits: 0.19Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.19Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.18Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.17Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.16Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.16Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.15Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.14Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.13Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.13Q lambda(W = 0) lambda: 2 Probability / expected win credits: 0.12Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.12Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.11Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.11Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.10Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.09Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.09Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.09Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.08Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.08Q lambda(W = 0) lambda: 3 Probability / expected win credits: 0.07Q lambda(W = 0) lambda: 4 Probability / expected win credits: 0.07Q lambda(W = 0) lambda: 4 Probability / expected win credits: 0.07Q lambda(W = 0) lambda: 4 Probability / expected win credits: 0.06Q lambda(W = 0) lambda: 4 Probability / expected win credits: 0.06Q lambda(W = 0) lambda: 4 Probability / expected win credits: 0.06Q lambda(W = 0) lambda: 4 Probability / expected win credits: 0.05Q lambda(W = \frac{1}{3}) lambda: -4 Probability / expected win credits: 0.20Q lambda(W = \frac{1}{3}) lambda: -4 Probability / expected win credits: 0.20Q lambda(W = \frac{1}{3}) lambda: -4 Probability / expected win credits: 0.21Q lambda(W = \frac{1}{3}) lambda: -4 Probability / expected win credits: 0.21Q lambda(W = \frac{1}{3}) lambda: -4 Probability / expected win credits: 0.22Q lambda(W = \frac{1}{3}) lambda: -4 Probability / expected win credits: 0.22Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.23Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.23Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.24Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.24Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.24Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.25Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.25Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.26Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.26Q lambda(W = \frac{1}{3}) lambda: -3 Probability / expected win credits: 0.27Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.27Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.28Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.28Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.28Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.29Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.29Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.30Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.30Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.30Q lambda(W = \frac{1}{3}) lambda: -2 Probability / expected win credits: 0.31Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.31Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.31Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: -0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.33Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.32Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.31Q lambda(W = \frac{1}{3}) lambda: 1 Probability / expected win credits: 0.31Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.31Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.30Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.30Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.30Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.29Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.29Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.28Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.28Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.28Q lambda(W = \frac{1}{3}) lambda: 2 Probability / expected win credits: 0.27Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.27Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.26Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.26Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.25Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.25Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.24Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.24Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.24Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.23Q lambda(W = \frac{1}{3}) lambda: 3 Probability / expected win credits: 0.23Q lambda(W = \frac{1}{3}) lambda: 4 Probability / expected win credits: 0.22Q lambda(W = \frac{1}{3}) lambda: 4 Probability / expected win credits: 0.22Q lambda(W = \frac{1}{3}) lambda: 4 Probability / expected win credits: 0.21Q lambda(W = \frac{1}{3}) lambda: 4 Probability / expected win credits: 0.21Q lambda(W = \frac{1}{3}) lambda: 4 Probability / expected win credits: 0.20Q lambda(W = \frac{1}{3}) lambda: 4 Probability / expected win credits: 0.20Q lambda(W = \frac{2}{3}) lambda: -4 Probability / expected win credits: 0.05Q lambda(W = \frac{2}{3}) lambda: -4 Probability / expected win credits: 0.06Q lambda(W = \frac{2}{3}) lambda: -4 Probability / expected win credits: 0.06Q lambda(W = \frac{2}{3}) lambda: -4 Probability / expected win credits: 0.06Q lambda(W = \frac{2}{3}) lambda: -4 Probability / expected win credits: 0.07Q lambda(W = \frac{2}{3}) lambda: -4 Probability / expected win credits: 0.07Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.07Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.08Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.08Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.09Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.09Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.09Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.10Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.11Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.11Q lambda(W = \frac{2}{3}) lambda: -3 Probability / expected win credits: 0.12Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.12Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.13Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.13Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.14Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.15Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.16Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.16Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.17Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.18Q lambda(W = \frac{2}{3}) lambda: -2 Probability / expected win credits: 0.19Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.19Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.20Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.21Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.22Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.23Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.24Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.25Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.26Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.27Q lambda(W = \frac{2}{3}) lambda: -1 Probability / expected win credits: 0.28Q lambda(W = \frac{2}{3}) lambda: -0 Probability / expected win credits: 0.29Q lambda(W = \frac{2}{3}) lambda: -0 Probability / expected win credits: 0.30Q lambda(W = \frac{2}{3}) lambda: -0 Probability / expected win credits: 0.31Q lambda(W = \frac{2}{3}) lambda: -0 Probability / expected win credits: 0.32Q lambda(W = \frac{2}{3}) lambda: 0 Probability / expected win credits: 0.33Q lambda(W = \frac{2}{3}) lambda: 0 Probability / expected win credits: 0.34Q lambda(W = \frac{2}{3}) lambda: 0 Probability / expected win credits: 0.36Q lambda(W = \frac{2}{3}) lambda: 0 Probability / expected win credits: 0.37Q lambda(W = \frac{2}{3}) lambda: 0 Probability / expected win credits: 0.38Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.39Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.40Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.41Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.43Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.44Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.45Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.46Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.47Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.48Q lambda(W = \frac{2}{3}) lambda: 1 Probability / expected win credits: 0.49Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.51Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.52Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.53Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.54Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.55Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.56Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.57Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.58Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.60Q lambda(W = \frac{2}{3}) lambda: 2 Probability / expected win credits: 0.61Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.62Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.63Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.64Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.65Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.66Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.67Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.67Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.68Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.69Q lambda(W = \frac{2}{3}) lambda: 3 Probability / expected win credits: 0.70Q lambda(W = \frac{2}{3}) lambda: 4 Probability / expected win credits: 0.71Q lambda(W = \frac{2}{3}) lambda: 4 Probability / expected win credits: 0.72Q lambda(W = \frac{2}{3}) lambda: 4 Probability / expected win credits: 0.73Q lambda(W = \frac{2}{3}) lambda: 4 Probability / expected win credits: 0.73Q lambda(W = \frac{2}{3}) lambda: 4 Probability / expected win credits: 0.74Q lambda(W = \frac{2}{3}) lambda: 4 Probability / expected win credits: 0.75Expected W lambda: -4 Probability / expected win credits: 0.10Expected W lambda: -4 Probability / expected win credits: 0.10Expected W lambda: -4 Probability / expected win credits: 0.11Expected W lambda: -4 Probability / expected win credits: 0.11Expected W lambda: -4 Probability / expected win credits: 0.12Expected W lambda: -4 Probability / expected win credits: 0.12Expected W lambda: -3 Probability / expected win credits: 0.12Expected W lambda: -3 Probability / expected win credits: 0.13Expected W lambda: -3 Probability / expected win credits: 0.13Expected W lambda: -3 Probability / expected win credits: 0.14Expected W lambda: -3 Probability / expected win credits: 0.14Expected W lambda: -3 Probability / expected win credits: 0.15Expected W lambda: -3 Probability / expected win credits: 0.15Expected W lambda: -3 Probability / expected win credits: 0.16Expected W lambda: -3 Probability / expected win credits: 0.16Expected W lambda: -3 Probability / expected win credits: 0.17Expected W lambda: -2 Probability / expected win credits: 0.17Expected W lambda: -2 Probability / expected win credits: 0.18Expected W lambda: -2 Probability / expected win credits: 0.18Expected W lambda: -2 Probability / expected win credits: 0.19Expected W lambda: -2 Probability / expected win credits: 0.20Expected W lambda: -2 Probability / expected win credits: 0.20Expected W lambda: -2 Probability / expected win credits: 0.21Expected W lambda: -2 Probability / expected win credits: 0.21Expected W lambda: -2 Probability / expected win credits: 0.22Expected W lambda: -2 Probability / expected win credits: 0.23Expected W lambda: -1 Probability / expected win credits: 0.23Expected W lambda: -1 Probability / expected win credits: 0.24Expected W lambda: -1 Probability / expected win credits: 0.25Expected W lambda: -1 Probability / expected win credits: 0.25Expected W lambda: -1 Probability / expected win credits: 0.26Expected W lambda: -1 Probability / expected win credits: 0.27Expected W lambda: -1 Probability / expected win credits: 0.27Expected W lambda: -1 Probability / expected win credits: 0.28Expected W lambda: -1 Probability / expected win credits: 0.29Expected W lambda: -1 Probability / expected win credits: 0.30Expected W lambda: -0 Probability / expected win credits: 0.30Expected W lambda: -0 Probability / expected win credits: 0.31Expected W lambda: -0 Probability / expected win credits: 0.32Expected W lambda: -0 Probability / expected win credits: 0.33Expected W lambda: 0 Probability / expected win credits: 0.33Expected W lambda: 0 Probability / expected win credits: 0.34Expected W lambda: 0 Probability / expected win credits: 0.35Expected W lambda: 0 Probability / expected win credits: 0.36Expected W lambda: 0 Probability / expected win credits: 0.36Expected W lambda: 1 Probability / expected win credits: 0.37Expected W lambda: 1 Probability / expected win credits: 0.38Expected W lambda: 1 Probability / expected win credits: 0.38Expected W lambda: 1 Probability / expected win credits: 0.39Expected W lambda: 1 Probability / expected win credits: 0.40Expected W lambda: 1 Probability / expected win credits: 0.41Expected W lambda: 1 Probability / expected win credits: 0.41Expected W lambda: 1 Probability / expected win credits: 0.42Expected W lambda: 1 Probability / expected win credits: 0.43Expected W lambda: 1 Probability / expected win credits: 0.43Expected W lambda: 2 Probability / expected win credits: 0.44Expected W lambda: 2 Probability / expected win credits: 0.45Expected W lambda: 2 Probability / expected win credits: 0.45Expected W lambda: 2 Probability / expected win credits: 0.46Expected W lambda: 2 Probability / expected win credits: 0.47Expected W lambda: 2 Probability / expected win credits: 0.47Expected W lambda: 2 Probability / expected win credits: 0.48Expected W lambda: 2 Probability / expected win credits: 0.48Expected W lambda: 2 Probability / expected win credits: 0.49Expected W lambda: 2 Probability / expected win credits: 0.49Expected W lambda: 3 Probability / expected win credits: 0.50Expected W lambda: 3 Probability / expected win credits: 0.51Expected W lambda: 3 Probability / expected win credits: 0.51Expected W lambda: 3 Probability / expected win credits: 0.52Expected W lambda: 3 Probability / expected win credits: 0.52Expected W lambda: 3 Probability / expected win credits: 0.53Expected W lambda: 3 Probability / expected win credits: 0.53Expected W lambda: 3 Probability / expected win credits: 0.53Expected W lambda: 3 Probability / expected win credits: 0.54Expected W lambda: 3 Probability / expected win credits: 0.54Expected W lambda: 4 Probability / expected win credits: 0.55Expected W lambda: 4 Probability / expected win credits: 0.55Expected W lambda: 4 Probability / expected win credits: 0.55Expected W lambda: 4 Probability / expected win credits: 0.56Expected W lambda: 4 Probability / expected win credits: 0.56Expected W lambda: 4 Probability / expected win credits: 0.57

P0P_0

Qλ(W=0)Q_{\lambda}(W=0)

Qλ(W=13)Q_{\lambda}(W=\frac{1}{3})

Qλ(W=23)Q_{\lambda}(W=\frac{2}{3})

Eλ[W]\mathbb{E}_{\lambda}[W]

At λ=0\lambda =0, all probabilities converge. As it increases, weaker schedules become less prominent, and stronger ones more prominent.

As expected, higher λ\lambda means that stronger schedules have a higher probability of appearing, and so the expected score Eλ(W)\mathbb{E}_{\lambda}(W) increases.

It's also helpful to express QQ and Z\mathcal{Z} in terms of WW rather than xx:

Qλ(W=w)=∑x∈ΩW(x)=wQλ(x)=P0(W=w)eλwZ(λ),Z(λ)=∑wP0(W=w)eλw.\begin{aligned} Q_\lambda(W=w) &= \sum_{\substack{x\in\Omega\\W(x)=w}} Q_\lambda(x) \\ &= \frac{P_0(W=w)e^{\lambda w}}{\mathcal{Z}(\lambda)},\\ \mathcal{Z}(\lambda) &= \sum_w P_0(W=w)e^{\lambda w}. \end{aligned}

Turning back to the observed Taskmaster scores, we can plot our estimate of P0(W=w)P_0(W=w) alongside an estimate of Qλ(W=w)Q_{\lambda}(W=w) (constructed by drawing xx from P0(x)P_0(x) with altered probabilities Qλ(x)Q_{\lambda}(x) via inverse-transform sampling). A few things stand out:

  • P0(W=w)P_0(W=w) is centred around the shuffled average W0W_0 as expected.
  • WobsW_{\mathrm{obs}} lies quite far from the centre of P0P_0 - this is helpful to know, as it quantifies the surprise we should feel at seeing a discrepancy this large.
  • To get the peak of QλQ_{\lambda} to match WobsW_{\mathrm{obs}}, we need to increase λ\lambda to ~0.65

81013151820232528300%2.0%4.0%6.0%8.0%10.0%

ww

w

P(W=w)P(W=w)

P(W=w)
P0 6 P(W=w): 0.0%P0 6 P(W=w): 0%P0 7 P(W=w): 0.0%P0 7 P(W=w): 0.0%P0 8 P(W=w): 0.0%P0 8 P(W=w): 0.0%P0 9 P(W=w): 0.0%P0 9 P(W=w): 0.0%P0 10 P(W=w): 0.1%P0 10 P(W=w): 0.2%P0 11 P(W=w): 0.3%P0 11 P(W=w): 0.4%P0 12 P(W=w): 0.7%P0 12 P(W=w): 1.0%P0 13 P(W=w): 1.4%P0 13 P(W=w): 1.9%P0 14 P(W=w): 2.5%P0 14 P(W=w): 3.3%P0 15 P(W=w): 4.0%P0 15 P(W=w): 4.8%P0 16 P(W=w): 5.6%P0 16 P(W=w): 6.1%P0 17 P(W=w): 6.6%P0 17 P(W=w): 7.0%P0 18 P(W=w): 7.0%P0 18 P(W=w): 7.0%P0 19 P(W=w): 6.7%P0 19 P(W=w): 6.2%P0 20 P(W=w): 5.4%P0 20 P(W=w): 4.9%P0 21 P(W=w): 4.0%P0 21 P(W=w): 3.2%P0 22 P(W=w): 2.6%P0 22 P(W=w): 2.1%P0 23 P(W=w): 1.6%P0 23 P(W=w): 1.2%P0 24 P(W=w): 0.8%P0 24 P(W=w): 0.5%P0 25 P(W=w): 0.3%P0 25 P(W=w): 0.2%P0 26 P(W=w): 0.2%P0 26 P(W=w): 0.1%P0 27 P(W=w): 0.1%P0 27 P(W=w): 0.0%P0 28 P(W=w): 0.0%P0 28 P(W=w): 0.0%P0 29 P(W=w): 0.0%P0 29 P(W=w): 0.0%P0 30 P(W=w): 0%P0 30 P(W=w): 0.0%P0 31 P(W=w): 0%P0 31 P(W=w): 0.0%Q lambda 6 P(W=w): 0%Q lambda 6 P(W=w): 0%Q lambda 7 P(W=w): 0%Q lambda 7 P(W=w): 0%Q lambda 8 P(W=w): 0%Q lambda 8 P(W=w): 0%Q lambda 9 P(W=w): 0%Q lambda 9 P(W=w): 0%Q lambda 10 P(W=w): 0%Q lambda 10 P(W=w): 0%Q lambda 11 P(W=w): 0%Q lambda 11 P(W=w): 0%Q lambda 12 P(W=w): 0%Q lambda 12 P(W=w): 0.0%Q lambda 13 P(W=w): 0.0%Q lambda 13 P(W=w): 0.0%Q lambda 14 P(W=w): 0.0%Q lambda 14 P(W=w): 0.1%Q lambda 15 P(W=w): 0.1%Q lambda 15 P(W=w): 0.2%Q lambda 16 P(W=w): 0.3%Q lambda 16 P(W=w): 0.4%Q lambda 17 P(W=w): 0.6%Q lambda 17 P(W=w): 0.8%Q lambda 18 P(W=w): 1.2%Q lambda 18 P(W=w): 1.6%Q lambda 19 P(W=w): 2.0%Q lambda 19 P(W=w): 2.7%Q lambda 20 P(W=w): 3.3%Q lambda 20 P(W=w): 4.1%Q lambda 21 P(W=w): 4.6%Q lambda 21 P(W=w): 5.3%Q lambda 22 P(W=w): 6.0%Q lambda 22 P(W=w): 6.7%Q lambda 23 P(W=w): 6.7%Q lambda 23 P(W=w): 6.7%Q lambda 24 P(W=w): 6.6%Q lambda 24 P(W=w): 5.9%Q lambda 25 P(W=w): 5.4%Q lambda 25 P(W=w): 4.4%Q lambda 26 P(W=w): 4.5%Q lambda 26 P(W=w): 3.6%Q lambda 27 P(W=w): 3.8%Q lambda 27 P(W=w): 3.0%Q lambda 28 P(W=w): 3.2%Q lambda 28 P(W=w): 1.9%Q lambda 29 P(W=w): 1.5%Q lambda 29 P(W=w): 1.1%Q lambda 30 P(W=w): 0%Q lambda 30 P(W=w): 0.5%Q lambda 31 P(W=w): 0%Q lambda 31 P(W=w): 1.1%

WobsW_{\mathrm{obs}}

Eλ[W]\mathbb{E}_{\lambda}[W]

P0P_0

QλQ_{\lambda}

Try different values of λ\lambda to see how QλQ_{\lambda} changes.

This is helpful! We now have a rough estimate λ^≈0.65\hat{\lambda} \approx 0.65. The next questions to ask: how sure are we of this value? Are the observed scores also compatible with λ=0\lambda = 0? But first, a quick hop back over the fence into the physics department. (They've got better coffee there anyway.)

Why Z(λ)\mathcal{Z}(\lambda)

We choose to write Z\mathcal{Z} here not because it's cool to use \mathcal{Z} all over the place (it is), but because this looks very much like a partition function9 from statistical mechanics. Continuing the analogy, we can identify xx as a microstate of the system, and W(x)W(x) as a measurable macroscopic property of the system. You might like to think of xx as the configuration of atomic spins in a magnet10 - completely unmeasurable by themselves. However the overall magnetisation is measurable, corresponding to our W(x)W(x). By applying an external magnetic field, you can bias the probability distribution of the microscopic atomic spins towards particular configurations, manifesting in a macroscopic change to the measurable magnetisation.

In this sense, we can identify λ\lambda as a kind of editorial field - an external pressure applied to the system (task schedule) to modify an observable property (scores of weakest contestants). It has units of 1/(1/(Taskmaster points)), known as the Horne (Hn). At this point in our analysis we can conclude a rough measurement of a field strength of λ≈\lambda \approx 0.65 \,Hn, to my knowledge the strongest editorial field strength yet reported in the literature. An Ignoble is surely on the way!

Using Z(λ)\mathcal{Z}(\lambda)

Let's look now at actually using Z\mathcal{Z} to do something useful - finding which values of λ\lambda are most likely. We know the probability for ww given λ\lambda already, so we can write down the likelihood for λ\lambda given the observed WobsW_{\mathrm{obs}}:

L(λ∣Wobs)=Qλ(Wobs)=P0(Wobs)eλWobsZ(λ).L(\lambda\mid W_{\mathrm{obs}}) = Q_{\lambda}(W_{\mathrm{obs}}) = P_0(W_{\mathrm{obs}})\frac{e^{\lambda W_{\mathrm{obs}}}}{\mathcal{Z}(\lambda)}.

Defining

K(λ)=log⁡Z(λ)\mathcal{K}(\lambda)=\log\mathcal{Z}(\lambda)

then the log-likelihood looks like

ℓ(λ)=log⁡L(λ∣Wobs)=log⁡P0(Wobs)+λWobs−K(λ).\ell(\lambda)=\log L(\lambda\mid W_{\mathrm{obs}}) =\log P_0(W_{\mathrm{obs}})+\lambda W_{\mathrm{obs}}-\mathcal{K}(\lambda).

Differentiating with respect to λ\lambda the first term disappears and so

dℓdλ=Wobs−dKdλ.\frac{\text{d}\ell}{\text{d}\lambda} = W_{\mathrm{obs}}-\frac{\text{d}\mathcal{K}}{\text{d}\lambda}.

Computing the second term we get the nice result that

dKdλ=Z′(λ)Z(λ)=∑ww P0(w)eλwZ(λ)=∑wwQλ(w)=Eλ(W).\frac{\text{d}\mathcal{K}}{\text{d}\lambda} =\frac{\mathcal{Z}'(\lambda)}{\mathcal{Z}(\lambda)} =\frac{\sum_w w\,P_0(w)e^{\lambda w}}{\mathcal{Z}(\lambda)} =\sum_w w Q_{\lambda}(w) =\mathbb{E}_{\lambda}(W).

i.e. the derivative of the log partition function is just the expected value of WW! (This is why physicists love exponentials so much.) At maximum likelihood

dℓdλ=0⟹Eλ^(W)=Wobs\frac{\text{d}\ell}{\text{d}\lambda}=0 \quad\Longrightarrow\quad \mathbb{E}_{\hat{\lambda}}(W)=W_{\mathrm{obs}}

i.e. at the optimal value of λ=λ^\lambda = \hat{\lambda} (≈\approx 0.65), the likelihood is maximised and the expected value of WW under this model is the one which we observe. This is exactly the procedure for the interactive plot above - we varied λ\lambda until Eλ(W)=Wobs\mathbb{E}_{\lambda}(W)=W_{\mathrm{obs}}.

To see that this is a maximum, we can differentiate again to uncover another delightful identity

d2ℓdλ2=−d2Kdλ2=(Z′(λ)Z(λ))2−Z′′(λ)Z(λ)=Eλ(W)2−Eλ(W2)=−Var⁡λ(W)\frac{\text{d}^2\ell}{\text{d}\lambda^2} =-\frac{\text{d}^2\mathcal{K}}{\text{d}\lambda^2} =\left(\frac{\mathcal{Z}'(\lambda)}{\mathcal{Z}(\lambda)}\right)^2 - \frac{\mathcal{Z}''(\lambda)}{\mathcal{Z}(\lambda)} =\mathbb{E}_{\lambda}(W)^2-\mathbb{E}_{\lambda}(W^2) =-\operatorname{Var}_{\lambda}(W)

which is always below zero since variance is a positive quantity.

Approximating P0(w)P_0(w)

To better illustrate the discussion above, let's choose an explicit form for P0(W=w)P_0(W = w) - a normal distribution with mean W0W_0 and variance σ2\sigma^2:

P0(w)=12πσ2exp⁡(−(w−W0)22σ2).P_0(w) = \frac{1}{\sqrt{2\pi\sigma^2}}\exp\left(-\frac{(w-W_0)^2}{2\sigma^2}\right).

The partition function is then

Z(λ)=∫−∞∞P0(w)eλw dw=exp⁡ ⁣(λW0+λ2σ22)∫−∞∞12πσ2exp⁡ ⁣(−(w−(W0+λσ2))22σ2) dw=exp⁡ ⁣(λW0+λ2σ22),\begin{aligned} \mathcal{Z}(\lambda) &= \int_{-\infty}^{\infty}P_0(w)e^{\lambda w}\,\text{d}w \\ &= \exp\!\left(\lambda W_0+\frac{\lambda^2\sigma^2}{2}\right) \int_{-\infty}^{\infty}\frac{1}{\sqrt{2\pi\sigma^2}} \exp\!\left(-\frac{\left(w-(W_0+\lambda\sigma^2)\right)^2}{2\sigma^2}\right)\,\text{d}w\\ &=\exp\!\left(\lambda W_0+\frac{\lambda^2\sigma^2}{2}\right), \end{aligned}

and hence the following identities for this model:

K(λ)=λW0+λ2σ22Eλ(W)=W0+λσ2Var⁡λ(W)=σ2ℓ(λ)=−12log⁡(2πσ2)−(Wobs−W0−λσ2)22σ2λ^=Wobs−W0σ2.\begin{aligned} \mathcal{K}(\lambda) &= \lambda W_0+\frac{\lambda^2\sigma^2}{2} \\ \mathbb{E}_{\lambda}(W) &= W_0 + \lambda\sigma^2 \\ \operatorname{Var}_{\lambda}(W) & = \sigma^2 \\ \ell(\lambda) &= -\frac12\log(2\pi\sigma^2) -\frac{\left(W_{\mathrm{obs}}-W_0-\lambda\sigma^2\right)^2}{2\sigma^2} \\ \hat{\lambda} &= \frac{W_{\mathrm{obs}} - W_0}{\sigma^2}. \end{aligned}

The plot below compares the normal approxmations for P0P_0 and QλQ_{\lambda} - the former is pretty good, the latter starts to fail for λ\lambda far from zero as the assumption of infinite support for ww starts to fail:

81013151820232528300%2.0%4.0%6.0%8.0%10.0%

ww

w

P(W=w)P(W=w)

P(W=w)
P0 6 P(W=w): 0.0%P0 6 P(W=w): 0%P0 7 P(W=w): 0.0%P0 7 P(W=w): 0.0%P0 8 P(W=w): 0.0%P0 8 P(W=w): 0.0%P0 9 P(W=w): 0.0%P0 9 P(W=w): 0.0%P0 10 P(W=w): 0.1%P0 10 P(W=w): 0.2%P0 11 P(W=w): 0.3%P0 11 P(W=w): 0.4%P0 12 P(W=w): 0.7%P0 12 P(W=w): 1.0%P0 13 P(W=w): 1.4%P0 13 P(W=w): 1.9%P0 14 P(W=w): 2.5%P0 14 P(W=w): 3.3%P0 15 P(W=w): 4.0%P0 15 P(W=w): 4.8%P0 16 P(W=w): 5.6%P0 16 P(W=w): 6.1%P0 17 P(W=w): 6.6%P0 17 P(W=w): 7.0%P0 18 P(W=w): 7.0%P0 18 P(W=w): 7.0%P0 19 P(W=w): 6.7%P0 19 P(W=w): 6.2%P0 20 P(W=w): 5.4%P0 20 P(W=w): 4.9%P0 21 P(W=w): 4.0%P0 21 P(W=w): 3.2%P0 22 P(W=w): 2.6%P0 22 P(W=w): 2.1%P0 23 P(W=w): 1.6%P0 23 P(W=w): 1.2%P0 24 P(W=w): 0.8%P0 24 P(W=w): 0.5%P0 25 P(W=w): 0.3%P0 25 P(W=w): 0.2%P0 26 P(W=w): 0.2%P0 26 P(W=w): 0.1%P0 27 P(W=w): 0.1%P0 27 P(W=w): 0.0%P0 28 P(W=w): 0.0%P0 28 P(W=w): 0.0%P0 29 P(W=w): 0.0%P0 29 P(W=w): 0.0%P0 30 P(W=w): 0%P0 30 P(W=w): 0.0%P0 31 P(W=w): 0%P0 31 P(W=w): 0.0%Q lambda 6 P(W=w): 0%Q lambda 6 P(W=w): 0%Q lambda 7 P(W=w): 0%Q lambda 7 P(W=w): 0%Q lambda 8 P(W=w): 0%Q lambda 8 P(W=w): 0%Q lambda 9 P(W=w): 0%Q lambda 9 P(W=w): 0%Q lambda 10 P(W=w): 0%Q lambda 10 P(W=w): 0%Q lambda 11 P(W=w): 0%Q lambda 11 P(W=w): 0%Q lambda 12 P(W=w): 0%Q lambda 12 P(W=w): 0.0%Q lambda 13 P(W=w): 0.0%Q lambda 13 P(W=w): 0.0%Q lambda 14 P(W=w): 0.0%Q lambda 14 P(W=w): 0.1%Q lambda 15 P(W=w): 0.1%Q lambda 15 P(W=w): 0.2%Q lambda 16 P(W=w): 0.3%Q lambda 16 P(W=w): 0.4%Q lambda 17 P(W=w): 0.6%Q lambda 17 P(W=w): 0.8%Q lambda 18 P(W=w): 1.2%Q lambda 18 P(W=w): 1.6%Q lambda 19 P(W=w): 2.0%Q lambda 19 P(W=w): 2.7%Q lambda 20 P(W=w): 3.3%Q lambda 20 P(W=w): 4.1%Q lambda 21 P(W=w): 4.6%Q lambda 21 P(W=w): 5.3%Q lambda 22 P(W=w): 6.0%Q lambda 22 P(W=w): 6.7%Q lambda 23 P(W=w): 6.7%Q lambda 23 P(W=w): 6.7%Q lambda 24 P(W=w): 6.6%Q lambda 24 P(W=w): 5.9%Q lambda 25 P(W=w): 5.4%Q lambda 25 P(W=w): 4.4%Q lambda 26 P(W=w): 4.5%Q lambda 26 P(W=w): 3.6%Q lambda 27 P(W=w): 3.8%Q lambda 27 P(W=w): 3.0%Q lambda 28 P(W=w): 3.2%Q lambda 28 P(W=w): 1.9%Q lambda 29 P(W=w): 1.5%Q lambda 29 P(W=w): 1.1%Q lambda 30 P(W=w): 0%Q lambda 30 P(W=w): 0.5%Q lambda 31 P(W=w): 0%Q lambda 31 P(W=w): 1.1%

WobsW_{\mathrm{obs}}

Eλ[W]\mathbb{E}_{\lambda}[W]

L(λ∣Wobs)=0.140L(\lambda\mid W_{\mathrm{obs}})=0.140

P0P_0

QλQ_{\lambda}

The same plot as above, with normal approximations overlaid.

There's one final point to note that brings us neatly back round to physics again. Note that

dEλ(W)dλ=σ2=Var⁡λ(W).\frac{\text{d}\mathbb{E}_{\lambda}(W)}{\text{d}\lambda} = \sigma^2 = \operatorname{Var}_{\lambda}(W).

The left-hand side is the 'response' of the system - how far the macroscopic property WW moves as a result of the application of a force λ\lambda. The right-hand side is the natural fluctuation of the macroscopic property WW in the absence of any force. This is then a manifestation of the fluctuation-response relation11 for this system - a relation observed in thermodynamic systems.

Does this observation ultimately justify the increasingly strained analogy of Taskmaster scheduling with a physical system? That you'll have to decide for yourself, reader.

Answering the question

Let's - finally - answer the question we posed ourselves long above: is it reasonable to conclude that a non-zero editorial force was applied to the Taskmaster schedules, gerrymandering the task/episode distribution?

To calculate a probability distribution for λ\lambda, we need to combine the computed likelihood from our data points with some assumed prior distribution π(λ)\pi(\lambda). Once we know this, we can compute

p(λ)=L(λ∣Wobs) π(λ)∫L(u∣Wobs) π(u) du.p(\lambda) =\frac{L(\lambda\mid W_{\mathrm{obs}})\,\pi(\lambda)} {\int L(u\mid W_{\mathrm{obs}})\,\pi(u)\,\text{d}u}.

You can try different π(λ)\pi(\lambda) below and see what probability we assign to λ>0\lambda > 0 - for the flat prior we get 97%.

Prior

Prior and posterior for the editorial field-2-101230.000.250.500.751.001.25

λ\lambda

lambda

Probability density\text{Probability density}

Probability density

π(λ)\pi(\lambda)

L(λ∣Wobs)L(\lambda\mid W_{\mathrm{obs}})

p(λ)p(\lambda)

Pr⁡(λ>0∣Wobs)=97.3%\Pr(\lambda>0\mid W_{\mathrm{obs}})=97.3\%

Posterior probability distribution for λ\lambda given the observed task scores and assumed prior.

To capture the spread of predictions of these models, the following plots the area of the shaded region above (Pr(λ>0)\mathrm{Pr}(\lambda > 0)) and also the Bayes factor BF10BF_{10}12 for each of the priors, parameterised by their relative 'spread' parameter σ\sigma and keeping the mean prior value of λ\lambda at zero. Loosely speaking, BF10>1BF_{10} > 1 implies that the alternative model explains the data better than the null λ=0\lambda = 0 model.

Here we define the Bayes factor as the ratio of probabilities of observing WobsW_{\text{obs}} under the different models (or hypotheses, hence the HH):

BF10=P(W=Wobs∣H1)P(W=Wobs∣H0)=∫Qλ(W=Wobs) π(λ) dλP0(W=Wobs)BF_{10} = \frac{P(W=W_{\mathrm{obs}}\mid H_1)}{P(W=W_{\mathrm{obs}}\mid H_0)} = \frac{\displaystyle\int Q_\lambda(W=W_{\mathrm{obs}})\,\pi(\lambda)\,\mathrm{d}\lambda}{P_0(W=W_{\mathrm{obs}})}

(If the lack of integral in the denominator bothers you, you can imagine that we're integrating over the null model that there is no field, i.e. δ(λ)\delta(\lambda).)

80%82%84%86%88%90%92%94%96%98%0.00.10.20.30.4

Pr⁡(λ>0∣Wobs)\Pr(\lambda>0\mid W_{\mathrm{obs}})

Posterior probability that lambda is positive

σπ/σ\sigma_\pi/\sigma

Prior SD / null SD

Uniform

Normal

Student-t (df = 4)

Laplace

Comparison of models for λ\lambda - better models are brighter and to the right.

Ultimately we observe some weak evidence under some priors that the editorial field is non-zero - BF10>2BF_{10} > 2 - and reasonable evidence that if it does exist, it points in the positive direction.

So, success? 5 points for this analysis? Or would the Taskmaster take his usual dim view of over-eager contributions to the show and reward us with a swift nul points? I'm not sure we can derive that answer from observed data, so instead we'll have to wait until the inevitable series 23 and hope that the Horne field directs it's scheduling force towards tasks of a more statistically involved nature. Here's hoping!

References

  1. https://www.channel4.com/programmes/taskmaster
  2. https://github.com/silverdavi/taskmaster-uk-scores
  3. https://taskmaster.fandom.com/wiki/Taskmaster_Wiki
  4. https://tdlm.fly.dev/taskmaster
  5. https://www.taskmaster.info/
  6. https://en.wikipedia.org/wiki/Gerrymandering
  7. https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence
  8. https://en.wikipedia.org/wiki/Lagrange_multiplier
  9. https://en.wikipedia.org/wiki/Partition_function_(statistical_mechanics)
  10. https://live.ocw.mit.edu/courses/res-8-010-introduction-to-statistical-physics-summer-2018/mitres_8_010su18_lec6.pdf
  11. https://en.wikipedia.org/wiki/Fluctuation%E2%80%93dissipation_theorem
  12. https://en.wikipedia.org/wiki/Bayes_factor