Custom Search

Mesh Restoration Design -- Sample Designs

Based on networks published by Yu Liu comparing an interative greedy heuristic algorithm (SSR) with other methods, St*Mesh results are derived for both link and node failure restoration.

More sample networks to follow.  

Posted by JWD on October 7, 2011  • 

Part 3 - Swimming Champs Meet Simulation

Now we build on the strategies described in Part 1 and the tapering in Part 2 to create a simulation of the decisions made by coaches.

We can use team tapering to simulate the possible changes in the meet due to different swimmer-event assignments.  We will create an "updated" psych sheet times that estimates how each swimmer would swim at the championship meet.  For swimmers in the meet, of course we use their times in the meet.  The team tapering factors come in play to "fill in" the times for swimmers who did not swim at the championship meet.    Using this updated psych sheet, selecting the swimmers who actually scored in the meet and assigning them to their events,  we replicate the results of the individual events of the meet.

Next, Champs Advisor optimizes event assignments, following the strategies developed in Part 2.     Notice that the results are numerically significantly different than those using psych sheet times, but the trends are the same.    

Compared with the original psych sheet, Team A swam faster than Team B, as we saw in the tapering factors from Part 2.    Tapering factors alone don't tell the whole story, and the detailed simulation is required to evaluate the impact of individual performances.    And Champs only deals with individual swimming events:  diving and relays are not included.   In the actual championship meet, Team B performed significantly better than Team A on diving and relays but not enough to change the outcome of the meet.

We can reverse the process of iterating the strategies by starting and ending with Team B.  

The smallest margin of the scenarios where Team A picks last is 121;  the largest margin where Team B picks last is 117.  We expect the "Best Play" outcome to be between these two margins.  If we use the actual assignments in the meet, the simulation produces a margin of 118, suggesting that both Team A and Team B selected events for their swimmers equally well.    

In the next installment, we'll replace the default strategy with the actual assignments for the meet and explore how different decisions by each coach affect the outcome.  

Posted by JWD on July 5, 2010  • 

Part 2 - Tapering in Champs Advisor

Prior to the championship meet, each team will modify practices for a few weeks to be fully rested for the meet.  This is called tapering.  Normally, the meet times are faster than psych sheet times because of the tapering.  How much faster depends on the tapering program and whether any of the psych sheet times included the effects of tapering.  Champs Advisor calculates the effects of tapering from previous seasons to estimate how much tapering improvement can be expected for each team in the championship meet.  

Tapering by Team:  The tapering factor is the ratio of the championship meet time to the psych sheet time, as a percentage and subtracted from 100%.  A tapering factor of -1% means the championship meet times are 1% faster on average than the psych sheet  times.   For teams that don't taper for any meets during the season, the tapering factor can be -3% or more.  

Why care about 1%?  Translate it into winning margin -- a 1% improvement in swim times can result in 30 to 50 more points in the margin of victory.  Small improvements matter.  


Tapering by Gender:  Champs Advisor also breaks out men's tapering and women's tapering.  If the benefits of tapering are proportional to muscle mass, one would expect men to benefit more from tapering than women.    If men and women need to be tapered differently, not all coaches will taper each gender equally well.  


Men benefit more from tapering tha women.   Team C men swam unusually fast in the championship meet compared with their psych times.  Of the two leading teams, Team A swam moderately faster (relative to psych times) than Team B, and we will see in the next installment how much impact this has on the winning margin for Team A. 

Posted by JWD on June 25, 2010  • 

Part 1 - College Swimming Champs Advisor

You're a college swim coach preparing for your championship meet.  Which swimmers do you enter?  Which events?  How do you know what the other teams might do to take points away from you?  Champs Advisor helps you decide how to earn the largest margin of victory.

Champs Advisor simulates the outcome of individual events in a championship swim meet.   It does not include diving or relays.  It also does not take into account any DQs that may occur, so its predictions will usually differ slightly from the actual meet results even when actual swimmers and times are used.  

Strategy:  So how much can strategy affect the results?  We use a concept called Adversarial Risk to model the strategies for the top two teams.   Using the psych sheet times for a sample conference, let's see if knowledge of the other team's assignments can be used for significant advantage by a coach.  First, let's define the default assignment strategy for each team, designed to score the most points per swimmer.  We count the psych sheet ranking for each possible swimmer and sum the rankings for the best three events per swimmer to determine the scoring swimmers and their events.  We call this the default strategy.  Using these assignments, we find that team A wins by 48 points.  We compare the default strategy to a strategy  that attempts to maximize (for the winning team A) or minimize (for the second place team B) the margin of victory.  

Team B needs to predict how team A will assign swimmers to events.   Suppose team A maximizes its winning margin using "Team A Strategy."   Given these new assignments, the margin of victory grows to 68 points, but the team B coach can subsequently adjust his swimmer assignments to reduce the margin from 68 to 23.   We can this the "Team B's Response" strategy.

Now that we have decided the team B strategy, the coach of team A can optimize his swimmer assignments to increase the margin to 52 points, called the "Team A Counter-Response" strategy. 

There is an advantage in choosing last with an accurate model of the competitors' strategies   It appears that once each coach has iterated through the modeling process (Response, Counter-Response, Counter-Counter-Response, ...) the margins reach a middle point, perhaps near some equilibrium point, representing "Best Play" by all.  Champs Advisor does estimate this equilibrium point. 

Iterating strategies is critical to avoid the dangers of the extremes.  If only the winning team modifies its strategy based on an assumption of default strategies by other teams, the largest margin is produced.  But this is a risky approach, as if the second place team can predict the first place team's strategy, the smallest margin is produced -- a reduction of 45 points, more than two first-place finishes!    The winning team should model the reasoning of the other teams -- by analyzing past meet assignments -- before determining swimmer assignments.  Champs Advisor enables the coach to describe the strategies and candidate assignments for the other teams in the meet before determining the optimal assignments for his own team.  

Posted by JWD on May 9, 2010  • 

Tennis Team Scheduling

Team captains have a tough time assigning players to matches.  Some people only play doubles, and prefer certain partners.  Better players might play more matches than weaker ones.  Availability of each player for the matches has to be considered.  MatchPlay is a tool to help captains manage the availability, preferences, and strengths of their players to come up with the best line-up possible.

What does MatchPlay do?  The captain can assign each player a specific number of matches per season, with the portion of singles vs. doubles matches also given. For doubles matches, partner preferences can be supplied. Player availability for each match date can be changed in the edit window.  MatchPlay can also be used for blocktime scheduling, since a blocktime can be treated as  a match requiring two doubles teams.   

A new beta release (version 17) is available for evaluation.  It supports specifying the number of weeks played, with min/max bounds on the number of singles vs. doubles matches, for each player.   In Options, you may make your bounds more consistent ("tighten bounds") and specify doubles partners ("partner preferences").     Open up an availability file in the demo folder and try editing the player availability (A = availabile, N = not available, P = must play, S = must play singles, D = must play doubles) for a couple of different weeks and hit "Run" on the menu bar to generate a schedule.  It will automatically be saved as a .csv file in a new folder named for the availability file you opened.  

A tutorial is being written.  Until it is posted, you should contact me at the email address below with questions.  Please play with it.  Beware that the application may hang for awhile if you've entered an impossible set of constraints and you may need to kill it if you don't want to wait for it to finish.   

If you are interested in this application, you may email me at "starlike@toadmail".com -- please remove the quotes to make the actual email address.  Unfortunately, just giving you the real link causes the mailbox to receive a huge amount of spam.    

Here is a screenshot with player availability, partner preference, and a resulting schedule shown.   

Posted by JWD on January 17, 2009   •  

Blocktime Scheduling

When a group of players share a weekly tennis court reservation, that is called a blocktime. Normally, the group has a coordinator who determines the subset of players for each week.  This subset could be 2 (for singles) or 4 (for doubles).  

The Blocktime Scheduling tool generates the block time assignments for the season.  The coordinator collects the weekly preferences (a = available, n = not available, p = must play) from each player, enters them into an input template, and runs the program to produce a schedule of the players assigned to each week of the season.  The number of dates (in this case, weeks) assigned to each player can be different for each player. Although this problem may seem easy, the challenge is to mix up the groups and make sure each player is assigned weeks in the right proportion throughout the season. 

Posted by JWD on January 17, 2009  •