Is there a general strategy for longer seasons?
I have 8 teams, and will play a 21 game schedule, so each team places each other team 3 times. We want to distribute the, for example, three times team A plays team B across the season, so I think I can just use the standard algorithm 3 times and permute the team order each time. (e.g., Fred's team is team A during the first 7 games, then team C, then team F, during the next 7 and last 7 games).
I think the only constant this will not solve for is I want to make sure of the three times A plays B, A and B are each the home team at least once.
The other slight wrinkle we have is that even rounds are played during the week and odd rounds are played on Saturdays. So, in addition to wanting to make sure team each team plays court 1 an equal number of times, I actually want to make sure it's played an even time in even rounds and an even time in odd rounds - as much as possible - because the weekday venue is different than the weekend venue.
--jono