For the NFL/NCAA model, we decided to do something completely different than most conventional football models.

Most models use some form of ELO rating using the results from previous games. ELO, named after Arpad Elo, a Hungarian-American physics professor, was originally invented as a chess player rating system. The difference in the ratings between two players serves as a predictor of the outcome of a match. A player’s Elo rating is represented by a number which may change depending on the outcome of games played. After every game, the winning player takes points from the losing one. The difference between the ratings of the winner and loser determines the total number of points gained or lost after a game. If the high-rated player wins, then only a few rating points will be taken from the low-rated player. However, if the lower-rated player scores an upset win, more rating points will be transferred.

Some models use a combination of offensive and defensive ELO ratings to estimate points scored by each team to determine point spreads. However, there are limitations with ELO models. Many times games have unique matchups that an ELO model cannot understand. A strong defense that matches up well against the opposing star Quarterback,  or a good defense that cannot stop a running Quarterback as examples. This is why LeanTossup went in a brand new direction with building the LeanTossup Football model. What did we base it off of? Pokemon!

Yes, you read that right. Pokemon. We based it off of Pokemon. What does that mean? Well, we took inspiration from the Pokemon games we played as children. Specifically, the strategy behind Pokemon games: type matchups. Everybody remembers playing against Brock’s Onix in that first gym battle. If you were playing Pokemon Yellow and started with a Pikachu, you were in for a rough time, as Pikachu’s electric type attacks had no effect against his Rock Pokemon. However, if you were playing Pokemon Red or Blue and you picked Bulbasaur or Squirtle as your starter Pokemon, beating Brock was easy as your starter’s moves were super effective against his Pokemon (did 2x damage).

Now people reading this are probably wondering: “Wait, how does that apply to football?”. Although we can’t say something like “The Buffalo Bills are a grass type team” or “The Kansas City Chiefs are a fire type team”, the individual attributes of the offense/defense of each team interact separately with the opposing offense/defense in the same way that type matchups work in Pokemon. Some defenses are really good at pressuring the opposing quarterback, and while all quarterbacks generally perform worse under pressure, some perform substantially worse. Which is an important component that should be factored into predicting the outcome of individual games. 

Let’s look at the Super Bowl Champion Tampa Bay Buccaneers’ 2020-2021 season. They went 11-5 in the regular season, and (obviously) undefeated in the post-season to win the Super Bowl. Let’s look at those 5 regular season losses for a second. They were to the: Saints x2, Rams, Bears, and Chiefs. With the exception of the Chiefs (the best offensive team in the league), the other 4 losses all came to teams that were in the Top 6 of the highest graded Defensive Pressure stats from Pro Fantasy Football (PFF) (https://www.pff.com/news/nfl-defense-rankings-tiers-2021) .  

Conversely, Tom Brady had a huge dropoff in performance under pressure as well. According to PFF, Under Pressure in 2020 (https://www.pff.com/news/quarterback-pressure-points), Tom Brady’s completion percentage fell 30 percentage points when compared to not facing pressure in the pocket, and had basically the same completion percentage under pressure as Sam Darnold (the QB for the New York Jets in 2020). The good news for the Buccaneers is that when they played against teams that were good at pressuring the Quarterback in the playoffs, they played against Washington, who started a rookie QB in the wildcard game, and against the Saints in Drew Brees’s last NFL game, a game in which he was clearly struggling, and threw for just 134 yards.

Has that continued into 2021? Well, last weekend (Week 3 of the NFL Season) Tampa Bay just suffered their first loss of the season to, you guessed it, the LA Rams.

Defensive Pressure is just one key stat that the LeanTossup model uses to predict the outcome of  games, and the model is powered by PFF grades and stats. However, the question is, while stats like Pressure are great to use, how can you apply that to a calculation when figuring out who will win a game? You can’t simulate all of the possible twists and turns in a football game in just an ELO model, and Pressure needs to be dynamic as well. If a team falls behind in a game, they’re going to have to pass more, and if they do can they protect the QB from Pressure? Or if they’re ahead can they effectively kill time by running out the clock by getting first downs? How can a simple model account for all of those things? The answer is simple: Simulate every play.

The LeanTossup model simulates every play in a game, stores that data, and then simulates that game 1,000 times to get an even distribution of results. Now, the next obvious question is, how can it simulate each play in a game? Each play is carefully chosen by coaches based on the situation, the score, their own team’s strength, etc.

So, we built a Football AI. The Football AI looked at every play of the 2019 NFL season, and analysed the score, which down, and how many yards there were to go for the 1st down, and learned what that play call was. When simulating a 2021 game, it can examine the current situation, make a play call, and then use the team stats in the model to determine the outcome. Since a large enough dataset was needed to be built for every possible situation, team specific adjustments are made based on how frequently a team runs or passes the ball in the current season. For example, say the Football AI believes that a team would throw on 3rd and 2, down 7 points with 5 min left in the game. If the team the model is simulating is the Baltimore Ravens (who have Lamar Jackson), they obviously run more frequently than they pass, so the model increases their chances of running the ball instead of throwing it. However, even in that case, the simulations are probabilistic, so there are some situations in which the Ravens pass in that situation. The benefit of the team specific adjustments is to make a closer approximation of what a given team would do in a given situation, relative to all of the others.

So far, through the first five weeks of the season, the model has been doing very well against the spread, and calling many huge upsets that other models haven’t been seeing. So well that we have decided to launch it publicly. Every week we are going to be making picks, based upon the model’s projections, and sharing them publicly. Additionally, due to the model, we record key stats, like passing/rushing touchdowns, completions, passing yards, rushing yards, etc, which we can use to bet on player props. We will also highlight which props we like the most every week. We are also looking to launch a Football podcast soon to discuss the upcoming games and what we like in the schedule.

Tomorrow we’ll look at how the model did this last weekend, and what changes have already been made for next weekend