Mathematics of the Ice Bucket Challenge

428 Views Asked by At

I've been considering the mathematics of the now global ice bucket challenge.

Simple model

In the simplest incarnation, there is one original seed, who then nominates 3 others, each of which take the full 24hrs to complete the challenge, and then nominate 3 others who each do the same. Thus the number of people who've completed the challenged, $n_f$, increases by $3^d$ each day, where $d$ is the number of days since the start of challenge. In other words we have:

$$ n_f(d)=1+3+9+....+3^d $$

using the sum of a geometric series we find

$$ n_f(d)=\frac{1}{2}(3^{d+1}-1) $$

So how many days until the entire global population has done the challenge?

$$ d=\frac{\ln{(2n_f+1)}}{\ln{(3)}}-1, $$

which is about 20 days if we take 7billion as world pop. Not surprisingly this simple model has given a big underestimate as supposedly the challenge began on 15 July and is still ongoing.

Slighty more complex model

Clearly not every one of the 3 nominees will complete the challenge, either through apathy or possibly because they have already done it. Apathy is hard to quantify, so instead considering the probability of picking nominees not already in the set of ice bucket challenges finishers(where global population is $NW$):

$$ p = \left(1-\frac{n_f}{NW}\right) $$

Then

$$ n_f(d+1) = n_f(d)+3\left(1-\frac{n_f(d)}{NW}\right)\left(n_f(d)-n_f(d-1)\right),.... n_f<NW $$

This looks a bit like the logistic equation for bacteria population growth, the difference is that with bacteria all existing bacteria are contributing to the increase in population on any given day in the chain, whereas with ice bucketers only the front line are "breeding" the next line (i.e. they can only "give birth" once), so instead of a term $~\left(1-\frac{n_f(d)}{NW}\right)n_f(d)$ you get the above.

Can it be solved for $n_f$ a function of days? and has anybody got any better models/ideas for modelling how the population changes over the days?

1

There are 1 best solutions below

2
On

I made a very simple program in Python to replicate this. https://repl.it/CRBC What I might do next is have my program get the data from a website that says the world population, so that the number can be calculated more accurately.