Presentation on theme: "Fantasy Football Forecasting By Derick Owens and Amanda Zimecki."— Presentation transcript:
Fantasy Football Forecasting By Derick Owens and Amanda Zimecki
Fantasy Football: What is it? Standard League – Conventions Draft: Nine Starting Players Quarterback (QB) (Max 3) Two Running Backs (RB) (Max 4) Two Wide Receivers (WR) (Max 4) Tight End (TE) (Max 3) Flex (RB, WR, or TE) Kicker (K) (Max 2) Defense/Special Teams (D/ST) (Max 3) Seven Bench Players Any permutation of the above listed players
Fantasy Football – Scoring By standard league conventions, scoring is as follows: All Players Touchdown = 6 Points Turnover = -2 Points QB 15 Passing Yards = 1 Point 10 Rushing Yards = 1 Point RB 10 Rushing Yards = 1 Point WR 10 Receiving Yards = 1 Point
Fantasy Football - Scoring TE 10 Receiving Yards = 1 Point K Extra Point Made = 1 Point Field Goal (0-39 Yards) = 3 Points Field Goal (40-49 Yards) = 4 Points Field Goal (50+ Yards) = 5 Points
“Hidden” Values Players have “hidden” statistics that make them more (or less) valuable, although their fantasy scoring may be the same or similar to other players Such statistics include, but are not limited to: Touches (RB) Targets (WR, TE) Injuries/Suspensions (Games Played) Performance in Specific Conditions (Cold/Wind) There are also statistics that can be derived from basic statistics to better “describe” a player, such as: Completion % (QB) Catch % (TE, WR, RB)
Objective Our objective is to create an algorithm to forecast and thus draft the “best” team based on past statistics To create this algorithm, there are a few things we need: Past Statistics Weights for those statistics A scoring/rating system Neural Network Algorithm Output comparisons (Are all teams produced optimal?)
Data Source & Benchmark – data source – comparison site As a benchmark, we’re going to compare our rating to how many fantasy points the player had in the previous season We will also compare our ratings to expert rankings
Neural Network wSum = weighted sum of the inputs T = threshold/bias value
Weights Each statistic of a position is given a specific weight Determined by us from previous knowledge and research Weights are calculated based on their importance to that position Σ w p = 1
Our Threshold T p = S p / [ ( ΣS q / q ) * 2], where: T = Threshold S = Statistic (being calculated) q = All Players p = Individual Player
Scoring/Rating System Yards per season, TDs per season, Games Played, Touches, Targets, Extra Points Made R = (S p / (ΣS q / Σq)) * w, where: S = statistic p = individual player w = weight q = all players R = individual player rating Turnovers R = 1 - ( T *0.05) / 1 * w Catch & Field Goal Percentage a = Base score of average ( ΣS q / Σq ) (+ / -).1 each standard deviation (b) below/above the position average R = a(+ / -) *.1(b)
Million Dollar Algorithm? Fantasy Kings Weekly Draft “Salary Cap” of $50,000 Each player is assigned a dollar value You can draft any permutation of players given that you don’t go over the salary cap Positions: 1 QB, 3 WR, 2 RB, 1 TE, 1 FLEX (TE, RB, OR WR), 1 D/ST 92,867,930,357,760 permutations based on 32 starting players at each position
Our Objective Now Limit the number of permutations based on match-ups Mid-ranked RBs vs. last-ranked defenses, for example. Maximize dollar value Min($) = Max(Points) The objective is not to find the best permutation The odds of accomplishing this are 1/92,867,930,357,760 Making this an intractable problem The objective is to optimize and beat the other players While also exploring the possibility of making this problem tractable How will we do this?
Neural Network & Knapsack In order to optimize the permutations, we’ll use our current neural network algorithm combined with the knapsack problem In order to implement the Knapsack problem, we’ll need to calculate a player’s dollar value to go along with that player’s rating. This will create a test set of optimized permutations. Even with the optimized set of permutations, nothing is guaranteed. Even with a completely optimized set that uses the full salary cap, there are chaotic factors that constantly interfere with a forecast: Weather Injuries Suspensions Etc.
Chaos Theory Tackles Adrian Peterson Many teams drafted Adrian Peterson as their #1 overall pick Results:
Knapsack – Greedy Implementation We’re using the greedy implementation of the Knapsack Problem Use as much as the knapsack as possible “Fitting” the most possible “stuff” into the sack Complexity is m/2 (given that you can use the same item an unlimited amount of times), where: m is the maximum value of the items to fit into the sack (as close to salary cap as possible) Value is equal to the dollar amount assigned to the player Dollar amounts are predetermined by Draft Kings based on player performance However, we have a limited amount of items to fit into the sack 9, which is the number of players Each item will be unique (item = player(our rating, $ value)) Since these constraints will be applied to the greedy implementation, complexity will get worse. Output from a programmed implementation should tell us more about its complexity.