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