Last year, Matthew played in an Eliminator Challenge with his dad. He lost in week 5 out of 17. We wanted to see what an optimal strategy would look like and how likely it would be to win.

What it does

The program takes in the NFL schedule and current ELO ratings of every team, and picks one team each week such that the probability of every pick being correct (i.e. winning their game) is maximized. Win probabilities are calculated based on 538's model

How we built it

We downloaded data from 538, read it into Python, and used the PuLP library to solve the relevant Mixed Integer Linear Program

Challenges we ran into

PuLP was not well documented. We also tried to use Julia and MatLab, without success

Accomplishments that we're proud of

It works as well as it is supposed to. The program solves very quickly.

What we learned

Cleveland is not good at football

What's next for Pick'Em Eliminator Challenge Best Bet

The next step is trying to develop a set of 17 week pick strategies that maximizes that probability that at least one pick strategy wins every game. The scenario here is that we are allowed multiple submissions, and really only need to win once (as in, have one of our entries win every game of the season) to justify our investment, so we want to decrease variance as much as possible. We could also allow the model to update ELO on its own instead of requiring a new file, but that wouldn't really make it much easier to use because it would still need to get the results from the previous week.

Built With

Share this project: