Perverse Incentives in Science: 21st Century Funding for 20th Century Research

For years colleagues and I have talked about problems with research funding today. (It wasn’t this way–or not this acute–when I started this job.) I recent paper from the intrepid Martin Center explain this quite well. An excerpt (emphasis mine):

Our institutions are dominated by those doing science in the current paradigm. Which is what we should in fact expect. But that means that most funding sources—whether government or private—are going to be conservative and fund the already-established rather than investigations into something that may not work out. And scientists tend to protect their turf against new ideas that could replace them.

To get more money, universities start rewarding researchers for getting grant funding for the institution, meaning scientists are spending more time grant writing and less time in the lab, doing actual science.

Read the whole thing.

The problem with minimum wage

The true minimum wages is $0. When an employer is compelled to pay more for work than the value received, this “net-negative” job will disappear. McDonald’s response to $15 minimum wage is automation–i.e., eliminate jobs that return less than $15/hr. This result is the obvious and wholly predicable consequence of legislating a minimum wage. The solution to minimum wage is to gain such skill that you are worth more to your employer.

Welsh town

The Welsh language amuses me because it seems unreal. There is a town in Wales with the name Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch. It was renamed to that in 1860 to attract attention. So it is a bit tainted as an example of assuming Welsh.

The town is amusing for being so long. Ordinary Welsh words are amusing (to me at least) mostly due to the lack of vowels, that is English letters that we know as vowels. For example, “Bwlchgwyn” and “Cwmtwrch.”

Best of seven

The first round of the NHL playoffs ended earlier this week. There were 8 7-game series. Two were decided in 4 games, 2 more in 5 games, and the other 4 in 6 games. It got me thinking about the expectation. So I did some probabilities in my head on the way home. Then on paper and a program at home.

Assume Team A has a probability, p, of winning any game. Team B will win with probability (1-p).

Win in 4:

It is the probability of winning 4 straight.

Team A = p^4
Team B = (1-p)^4

If p = 0.5 (equally matched teams), then 1 in 8 series will end in 4 games (0.5^4 + 0.5^4).

Win in 5:

This is the probability of winning 4 of 5 games. But team must win last game. The prob of winning 4 games is p^4. The probability of losing a game is (1-p).

The answer (for Team A) is not = p^4 * (1-p) because the loss can occur in any of the first four games. The previous equation is the probability of winning 4 of 5 games. But there are 4 ways to win 4 of 5 games (cannot win the first 4 because the series is over before 5th game). More precisely, it is 4 choose 3 or combination(4, 3).

Combination(m, n) = m!/(n!*(m-n)!)

Team A = C(4, 3) * p^4 * (1-p)
Team B = C(4, 3) * p * (1-p)^4

If p = 0.5, then 1 in 4 series end in 5 games (4*p^5 + 4*p^5 = 8*0.5^5 = 2^3/2^5 = 1/4).

Win in 6:

In a 6-games, the losing team has 2 wins. The winning team wins the last game but the first 3 wins can happen in any of the first 5 games.

We can generalize the formulae from above as

Team A = C(5, 3) * p^4 * (1-p)^2
Team B = C(5, 3) * p^2 * (1-p)^2

If p = 0.5, then 5 out of 16 series end in 6 games (10*p^6 + 10*p^6 = 20/64 = 5/16).

Win in 7:

In a 7-series, losing team has 3 wins. Winning team has 3 wins in the first 6 games.

Team A = C(6, 3) * p^4 * (1-p)^3
Team B = C(6, 3) * p^3 * (1-p)^4

If p = 0.5, then 5 out of 16 series end in 7 games (20*p^7 + 20*p^7 = 40/128 = 5/16).

Check your math:

Always check your math: 1/8 + 1/4 + 5/16 + 5/16 = (2+4+5+5)/16 = 16/16. Adds up to 1. Check.

Program:

Naturally, I wrote a python method that computes this given the length of the series (bestof) and the probability of Team A winning any game (prob).

def analytical(bestof, prob):
 A = prob
 B = 1.0 - prob # prob(b) = 1 - prob(a)

 wins = bestof//2 + 1
 aprob = [0.0] * wins
 bprob = [0.0] * wins

 for i in range(wins):
     aprob[i] = m_choose_n(i+wins-1, wins-1) * pow(A, wins) * pow(B, i)
     bprob[i] = m_choose_n(i+wins-1, wins-1) * pow(B, wins) * pow(A, i)

 return aprob, bprob

Some results:
Best of 7; p=0.5

4: 0.0625 0.0625 = 0.1250
5: 0.1250 0.1250 = 0.2500
6: 0.1562 0.1562 = 0.3125
7: 0.1562 0.1562 = 0.3125
   0.5000 0.5000

Best of 5; p=0.5

3: 0.1250 0.1250 = 0.2500
4: 0.1875 0.1875 = 0.3750
5: 0.1875 0.1875 = 0.3750
   0.5000 0.5000

Best of 7; p=0.6

4: 0.1296 0.0256 = 0.1552
5: 0.2074 0.0614 = 0.2688
6: 0.2074 0.0922 = 0.2995
7: 0.1659 0.1106 = 0.2765
   0.7102 0.2898

Best of 7; p=0.75

4: 0.3164 0.0039 = 0.3203
5: 0.3164 0.0117 = 0.3281
6: 0.1978 0.0220 = 0.2197
7: 0.0989 0.0330 = 0.1318
   0.9294 0.0706