Scheduling the NFL with Constraint Programming The National Football League (NFL) consists of 32 teams, with each team playing a predetermined set of 16 games and one bye over 17 weeks. The NFL has to schedule these games to meet the demands of the teams as well as the television networks. We describe how constraint programming has been successfully applied to solve this problem, and how the NFL used the solution to compute the 2003 NFL schedule.