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.