Applying the Hungarian Algorithm to NFL Scheduling
description
Transcript of Applying the Hungarian Algorithm to NFL Scheduling
Applying the Hungarian Applying the Hungarian Algorithm to NFL Algorithm to NFL
SchedulingScheduling
The QuestionThe Question
What method can be used to ensure What method can be used to ensure a fair schedule for the NFL’s 16-a fair schedule for the NFL’s 16-game, 32-team schedule?game, 32-team schedule?
A “fair” schedule:A “fair” schedule:– Weighted schedule (by strength)Weighted schedule (by strength)– Ensure good competitionEnsure good competition– All teams have fair shot at the playoffsAll teams have fair shot at the playoffs
The RulesThe Rules
Each team plays 16 gamesEach team plays 16 games Each team must play every team in its Each team must play every team in its
division twice (4 teams per division, 3 division twice (4 teams per division, 3 opponents x 2 games = 6 games)opponents x 2 games = 6 games)
Each team plays all teams from one other Each team plays all teams from one other division in their conference (4 games)division in their conference (4 games)
Each team plays all teams from one division Each team plays all teams from one division in the other conference (4 games)in the other conference (4 games)
The two remaining games are played against The two remaining games are played against two of the remaining eight teams in their two of the remaining eight teams in their conference that they have not played.conference that they have not played.
Calculating StrengthCalculating Strength
Strength will be determined by a team’s Strength will be determined by a team’s performance the previous year, performance the previous year, quantified by the team’s number of wins.quantified by the team’s number of wins.
Example:Example:– Patriots in 2003 were 14-2 = strength of 14Patriots in 2003 were 14-2 = strength of 14– Texans in 2003 were 5-11 = strength of 5Texans in 2003 were 5-11 = strength of 5– Patriots vs. Texans = difference of 9Patriots vs. Texans = difference of 9
Poor Matchup!Poor Matchup!
The ProcedureThe Procedure The purpose of the Hungarian The purpose of the Hungarian
Algorithm is to optimize solutions to Algorithm is to optimize solutions to assignment problems where a one-assignment problems where a one-to-one relationship is required.to-one relationship is required.
This is done with matrix operations This is done with matrix operations that find an independent set of zeros.that find an independent set of zeros.
An independent set of zeros exists An independent set of zeros exists when no two of them are in the same when no two of them are in the same row or columnrow or column
Worker/JobWorker/Job
Each worker can do each job in Each worker can do each job in xx hours. We want to know how to hours. We want to know how to assign each worker to a different job assign each worker to a different job in order to minimize the time in order to minimize the time required to complete all jobs.required to complete all jobs.
Job 1 Job 1 Job2 Job2 Job3 Job3Worker 1Worker 1 2 2 5 5 7 7Worker 2Worker 2 4 4 2 2 1 1Worker 3Worker 3 2 2 6 6 5 5
Drawbacks and ProblemsDrawbacks and Problems
Without NFL rules (grouping by Without NFL rules (grouping by division), the Hungarian Algorithm division), the Hungarian Algorithm would be a very tedious processwould be a very tedious process
Coding the algorithm is difficult, Coding the algorithm is difficult, brute force method was usedbrute force method was used
ReferencesReferences
Applications of Discrete MathematicsApplications of Discrete Mathematics, , Rosen & Michaels, McGraw Hill, 1991Rosen & Michaels, McGraw Hill, 1991
Scheduling a Bridge ClubScheduling a Bridge Club, Elenbogen , Elenbogen & Maxim, & Maxim, Mathematics MagazineMathematics Magazine, Vol. , Vol. 65, No. 1, 199265, No. 1, 1992
www.footballguys.com/shick_parity.htwww.footballguys.com/shick_parity.htmm
www.espn.comwww.espn.com www.nfl.comwww.nfl.com