|
||||
|
|
OOTP Mods - Schedules Create your very own game schedules, or share historical schedules |
|
Thread Tools |
07-19-2006, 12:47 PM | #1 |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Scheduler Progress as of 7/18/06
Thought I would post another update, as its been about 10 days---
Everything is progressing nicely to this point, although I am not as far along as I would have hoped to be at this juncture. A lot of this has been due to my insane work schedule which has resulted in less time to work on this. Anyways, here is the update: --Games and series are built for all teams, now all that's left is to schedule them on a daily basis. --Spent a good 2 days running back thru and fixing some code that allowed games between teams that played an odd number of games between opponents(example 17) to have extra home or away games. For instance, if they were scheduled to play 9 home games and 8 away games, then against the other team they would need to play 8 home and 9 away. The problem lied in making sure that all of the teams played the correct number of games, not just for the one being scheduled at that time. Its just about fixed, I have a syntax error which I isolated yesterday but was to tired to go thru and fix, so I will get to that today and it should be good to go. --Created the daily schedule, which needs a little fine tuning, but for the most part is fine --Spent a good 2 days fixing some randomization code that was incorrect I found on the net...I could have used a different method here, but I really,really like the way this works. --Created the checks for Playing on Days of the Week, Number of Days in between off days, Game Start Times, and Normal/Split Season. All there is left to do is implement the Start Times and Normal/Split Season code into the proper section... ---Numerous other minor fixes and optimizations that are small and minor, but needed to be done. Anyways, I believe I should be able to have this finished by the end of the month, but I may need some time to test everything out... Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
07-19-2006, 01:20 PM | #2 |
Minors (Triple A)
Join Date: May 2005
Posts: 222
Infractions: 0/1 (1)
|
This is excellent news as this is one of the mods I am most looking forward to. I had considered starting this project myself but (yes, I'm lazy) I never would have got round to it. Thanks for your efforts and I'm very excited to hear the latest update!
__________________
They still believe that they can hold the reins, but then they've got no sense of history. |
07-19-2006, 04:53 PM | #3 |
Major Leagues
Join Date: Dec 2001
Posts: 355
|
Well, if you need testers, I'm sure there's a ready and willing supply of them, here! Thanks for all your efforts.
__________________
Shawn |
07-19-2006, 05:02 PM | #4 | |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Quote:
Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
|
07-20-2006, 02:07 AM | #5 | |
Hall Of Famer
Join Date: Feb 2002
Location: Up There
Posts: 15,414
|
Quote:
Splitting an odd number of games between opponents (and even numbers too for that matter) need not be nearly or exactly even; it can be uneven. It depends on how the number of series in the schedule compares to the number of days you have into which to fit the series, as well as if you are trying to reduce the occurrence of 2-game series. For example, 17 games between opponents could be split 10-7 or 7-10 instead of 9-8 / 8-9. The 9 games would most likely be split into 3-3-3, but the 8 games can be split in a variety of ways. It could be 4-4, 3-3-2, 4-2-2, or 2-2-2-2, with the most likely candidate being 3-3-2. What a 3-3-2 split means is that the 17 games are split into a total of six series (3-3-3 and 3-3-2) per opponent (for the moment I'm leaving out the further complication where the 9 games might have to be split into 4-3-2 in order to use the 2-game series to squeeze three series into one week in order to fit all the series into the allotted calendar length of the season). A 10-7 / 7-10 split can be done as just five series: 4-3-3 and 4-3. This means one series is cut from the matchup as well as a 2-game series being eliminated (and MLB hates 2-game series). So adjusting an odd number of games against an opponent can be done heavily unevenly as well. This is something that MLB itself has done since 1998: 9 games against an opponent is split 6-3 / 3-6 ; 10 games is split 6-4 / 4-6 or 7-3 / 3-7 ; 16 games is split 9-7 / 7-9 ; and 17 games is split 10-7 / 7-10. Whether a split should be done evenly or nearly evenly or not depends on the number of series needed for the schedule, the number of days in the season, and whether or not there is any emphasis put on reducing the occurrence of 2-game series. Of course the original format of the schedule (i.e. how many times a club plays each of its opponents) is also an important factor. Last edited by Le Grande Orange; 07-20-2006 at 02:08 AM. |
|
07-20-2006, 10:09 PM | #6 | |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Quote:
This is considered by many to be the best random generation code available, and should ensure some good results with almost no chance of repeats... Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
|
07-20-2006, 11:20 PM | #7 | |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Quote:
Since, its already complete and working good, I will stick to what I have for right now, but I can easily just overload the function and create an option to play unbalanced home-away series....something I will probably wait to do til the second release, as that would take more time than I would like to spend on adding code to this section... Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
|
07-21-2006, 12:16 AM | #8 |
Hall Of Famer
Join Date: Feb 2002
Location: Up There
Posts: 15,414
|
Understood, but the main thing is the schedule itself and how it looks.
I suggest, in essence, a four step plan to creating a schedule: 1) Determine the format (that is, how many times a club plays each of its opponents). 2) Break that format down into series. Note that the numbers arrived at may change but the first breakdown serves as a starting point. 3) Compare the number of series to the number of weeks in the season. 4) Adust the series breakdown to fit the number of weeks available. 5) Lay out the series in the schedule. Here's an example using a 12 team league split into two 6-team divisions playing a 162 game schedule over 26 weeks in an 18-12 format (18 games against each divisional rivals and 12 games against each interdivisional rival). The 18-12 format yields a total of 90 divisional games and 72 interdivisional games. The first breakdown splits the 18 games into 3-3-3 3-3-3 and the 12 interdivisional games into 3-3 3-3. This yields a total of 30 divisional series and 24 interdivisional series, and a total number of 54 series being played in the season with it initially all being 3-game series. The 26 weeks in the season, using the normal MLB system of two series per week, means a total of 52 "slots" into which series can be placed. An All-Star Game break would remove one slot, leaving a total of 51. But we have a total of 54 series, meaning we need three weeks during the season in which three series are played instead of two. But to play three series in a week we need some 2-game series which we haven't yet created in our series breakdown. Three series in a week means a 2-2-3 series pattern, and since we need three such weeks, we now know that we need a total of at least six 2-game series. With this information in hand, we can rework the series breakdown. We can split some of the 9 home or away divisional matchups into 4-3-2 instead of 3-3-3, and/or we can split some of the 6 home or away interdivisional games as 4-2 instead of 3-3. Doing a bit of both might result in a revised series breakdown like this: 4-3-2 4-3-2 4-3-2 3-3-3 3-3-3 4-3-2 3-3-3 3-3-3 3-3-3 3-3-3 4-2 3-3 3-3 4-2 3-3 3-3 3-3 3-3 3-3 3-3 3-3 3-3 We still have a total of 54 series, 30 of which are divisional and 24 interdivisonal. But we've now altered the series distribution into a total of 6 2-game, 42 3-game, and 6 4-game series. And now with the six 2-game series we can have three weeks where three series are played fitting our schedule into 26 weeks without problem. The above, incidentally, is exactly what the National League schedule looked liked for the years between 1982-1992. Most teams had either a 6-42-6 or 7-40-7 distribution of 2-, 3-, and 4-game series; a few had 8-38-8. Last edited by Le Grande Orange; 07-21-2006 at 12:17 AM. |
07-21-2006, 12:35 AM | #9 | |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Quote:
Thanks for the breakdown, I have actually incorporated most of what you are talking about already---perhaps not in the same manner, but it has been incorporated(per your first post in regards to using series and not games to schedule) I have already coded the section that breaks the games into series, and I use a gaussian distribution(box-mueller transformation) to schedule games between the min, normal, and max series lengths. For instance, the American Association(independent league) has a min series length of 1, normal series length of 3, and a max series length of 4, meaning it will generate series of 1,2,3 and 4 games in length, with the most common being a 3 game series, and the least common a 1 game series, since its the furthest from the norm. I will probably incorporate another Input box, where users can edit the Standard Deviation, which is used in determining how many of each series lengths are generated(the higher the SD, the more 1, 2 and 4 length series). It currently is hardcoded, but I can see where users would want a higher degree of flexibility with this... Thanks for the suggestions and keep them coming, I can definitely incorporate some of what you are talking about into what I am currently working on... Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
|
07-21-2006, 03:54 AM | #10 | |
Hall Of Famer
Join Date: Feb 2002
Location: Up There
Posts: 15,414
|
Quote:
It'll be easier when seeing the actual output of the schedules. A suggestion here: incorporate something like OOTP2006's schedule report where the dates are listed in rows on the left and there's a column for each team listing what their opponent is that day. It serves as a very handy way to see the flow of a schedule all at once. I personally find it the easiest way to judge how a schedule looks so if you have a report like that I can easily compare your generated results to various real-world major and minor league schedules. Having it output series counts and distribution, along with weekend dates, is also useful for working towards getting the results as realistic as possible. About series lengths, it should be anywhere from 1-game at the short end and up to 5-games at the high end. 5-game series are not common in the majors but have been scheduled from time to time (moreso in earlier years). If you're aiming for replicating modern-day major league restrictions, here's what to keep in mind:
|
|
07-21-2006, 08:47 PM | #11 | |
Minors (Double A)
Join Date: Dec 2001
Location: Cleveland, OH
Posts: 176
|
Quote:
__________________
Try the StickWare Schedule Generator! |
|
07-21-2006, 09:04 PM | #12 | |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Quote:
The series lengths are fully editable, because for instance, the Puerto Rican League plays 1 game at a time, and there are no series, so the min and max length would be 1...I made it this way so people can create schedules with whatever series lengths they want(within reason of course)...repeating games should never be a problem, as the randomization engine used is purportedly one of the best invented(Mersenne Twister algorithm ported to VB). Agian, I am gonna let the schedule do its thing as far as determining scheduling for the first run, and then after that I can address specific types of scheduling(ie, MLB 1990-2000, MLB 1900-1910, MILB, etc) with overloaded functions in the second release...want to make sure I have the base down first before I start adding lots of stuff, but yes, I will get to those situations, etc Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
|
07-21-2006, 09:05 PM | #13 | |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
Quote:
Yes, we utilized that with great success in randomizing our database info for the football game we are working on... Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
|
07-22-2006, 12:05 AM | #14 |
All Star Starter
Join Date: Jun 2004
Location: In the vicinity of Buffalo,NY
Posts: 1,634
|
7/21/06 UPDATE:
---100% fixed the home/away issue with scheduling odd numbers of games--- each team now has the same # of home and away games scheduled... Now I can move onto the actual scheduling of the games... Matter2003
__________________
Goal Line Stand Football---An Open Source Project Check us out on the Git Hub Pages: Goal-Line-Stand-Football |
Bookmarks |
|
|