Two recent events have prompted me to record many thoughts I’ve had on allocating Kona slots:

- a recent Slowtwitch thread on the Ironman Louisville slot allocation which showed the WTCs algorithm to be even more flawed than I’d realised;
- the announcement that Ironman Weymouth would have a different allocation of it’s 30 slots “blending” the 55+ age groups.

In researching this it became quite apparent that the slot allocation is well and truly obfuscated. The allocation description is ambiguous and their implementation is not available. Some have retrofitted the algorithm (eg Russ Cox). Even finding a description of the process was difficult. This page “New Ironman World Championship Slot Allocation and Rolldown Process” does not describe the method other than in very vague terms and the link at the bottom doesn’t exist. You have to look on specific race sections where the description varies. Here’s from Vichy [link here]:

*“At least one slot shall be allocated to each five-year age group category in which any age group athlete sends in an application, both male and female, per the age group categories listed above.*

*If there are no athletes entered in the race in a particular age group, then that slot will be moved to the largest populated age group in that same gender. For additional age group slots, slot allocation shall be representative of the actual number of age grouper applicants in each category in the race.*

*As an example, if 8% of the age-group applicants are females 40-44, then 8% of these slots would be allocated in the female 40-44 category.”*

Slots will be allocated to be “representative” of the applicants. Though this is ambiguous the final paragraph suggests it’s done by %. As this is stated it would suggest first one is allocated to all age groups and then the remainder are multiplied by the % in that age group and allocated..

This would suggest that the aim is to only have the remainder, after one has been allocated to all age groups, reflect the actual proportion of participants. With more races, the remainder will get ever smaller and the Kona slots will ever more closely approach same numbers for every age group and increase the skew in Kona towards the smaller age groups (more on this below).

The approach WTC has implemented looks far from fair. For instance look at F55-59 at Louisville (see table below). You see it’s proportional allocation was 0.76 yet it got 2. How can any fair system end up with an age group having more than 1.0 greater than it’s precise proportional allocation ? Is there a better way ?

I’ve spent a little time thinking about it and have come up with, what I believe is, a better solution. I would suggest the following algorithm is clearer, fairer and simpler:

- first allocate slots to each age group by multiplying the total number of slots by the percentage in that age group and then round to the nearest whole number;
- this will result in either too many slots or too few having been allocated. Theoretically it could be exactly all the slots which would be perfect and need no further work;
- now we need to ensure that all age groups have at least one slot. Those with zero slots get allocated a slot first by using up unallocated slots and then by taking slots from other age groups with more than one slot [using method in point 5 below];
- once there are no zeros we check the total number. If it’s more than the total available we remove from age groups with more than one slot by repeating the method in point 5 until we have the correct number;
- take a slot from the age group who’s allocation is most above the exact allocation (views as slots not as a percentage. It would be worth testing the impact of using a percentage which may prove more equitable). If no age group has more than the exact allocation then take from age group that is closest (since all are now below the exact fair number).

For comparison to the right are the allocations for Copenhagen and Louisville using this method [“M1”] and those that actually were allocated [“Current”]. Having tried to clearly state the rules it’s made even more clear how difficult it is to write a unambiguous algorithm in prose. To test out an algorithm the WTC could produce a page that calculates slots using their algorithm and let people stress test it. I bet it wouldn’t be long before any bugs in it would be ironed out. Bit too transparent that though for the WTC.

It still has some anomalies. Look at M35-39 and M45-49 at Louisville. The latter has 4 more entrants (0.1% more) yet ends up with an additional slot under my M1 method. Clearly, some threshold has just been crossed. Unfortunately when you use fractions to produce integers we will introduce this sort of discontinuity. The bigger the population (number of slots) getting allocated the less noticeable it should be.

For Weymouth to address the problem of only having 30 slots they’ve pooled the 55+ age groups. This is rather harsh as I would suggest anyone over 65 has pretty much no chance against those just aging up in to M55. In fact, I’d go as far as to say they’re doing the grouping the wrong way round; they should group the younger age groups together:

- there’s much less differential between potential in those age groups;
- since these are typically bigger age groups, grouping them together will actually help solve the problem.

In my tables above method M2 pools 25-39 together and 40-49 and uses my M1 algorithm. I had my reasons to do this, but it doesn’t really matter to test the idea. It would be easy enough to try different methods and see what effect it has. Pooling in the qualifier doesn’t mean you need to pool in Kona. In the table there are % differences. The goal is to make the total difference from the participation % as small as possible. You can see my algorithm is close to halving the difference. The pooling together doesn’t really alter this though it would take some of the randomness out of the age groups that pooled whilst still giving older age groups a chance.

The bigger problem is that as the number of Ironman races increases the challenge of getting a globally fair allocation gets harder and harder. The issue is that with the more races there are, the fewer slots per race which makes it ever more random in a given age group. In the extreme case, if Ironman got to 87 races we’d be pretty much down to one per age group in every age group [this is based on the 2258 racers starting Kona this year and age groups through to 80 – just illustrating the point]. You could get to the point where at Kona there are 87 people in every single age group irrelevant of global participation levels. Qualifying would be largely down to luck or entering lots of races (this is already the situation for older age groups and most female age groups). With 35 qualifying races for 2015 this extreme scenario is way off and I would suggest the brand will never support that many races (flights will be too expensive by then!)

I would suggest that the WTC is trying to address this problem. In recent years they seemed to have settled on 50 slots per race with 75 for the regional championships. Looking forward to 2016 it seems it’s moving to 40 slots per race in general with 75 at the regional champs. Provided the increase in races doesn’t continue this may be how it will remain. However, with more races the non championship races will approach one slot per age group. This will continue to skew Kona slots in favour of smaller age groups making it harder to qualify in the larger age groups and increasing the significance of “luck” for more or less everyone.

In the table below I look at the percentage in each age group racing at Kona and compare it to the global participation [thanks to Russ Cox for pulling all this data together]. Note this is not unique participants (so someone racing 3 times will add 3 to the total). I think whether it should be based on unique participants or not can be argued both ways. For now, this is the only way to pull the data together:

- for the largest age groups the number racing at Kona is proportionally low. M40-44 has 17.9% of global participation but only 13.4% of the field. Thats over 100 slots less than they should have based on global participation. Thats about three per qualifier;
- the smallest age groups are proportionally higher at Kona. Take M65-69 which has 0.6% of the field at the qualifiers but 2.1% of the field at Kona. Thats 34 more slots than it would have based on global participation;
- interestingly M50-54 appears to be the sweet spot with 9.2% of the participation and 9.4% of the Kona field.

When you look at the slot allocation you see it’s clear that these differences correlate with the large age groups and the small age groups. To be honest, it’s pretty obvious that it’s a direct result of the allocation of a minimum of 1 per age group. The effect of this, in the smaller age groups, is to increase the global odds of you qualifying (as shown by the disproportionate numbers at Kona) but making the qualification at a particular race more random. Thus, in these age groups, if you can race a lot this is in your favour but, if you can’t its advantageous to race in a larger age group where it’s easier to predict what is required. I’d personally take the latter. As the number of races increase, more and more age groups will be placed in this situation.

Alternatives

In order to remove some of the randomness you need to have at least some races with a decent number of slots for each age group. It may require having slots only allocated to some races.

Pool slots in to fewer races

Moving ever more slots to Regional Championships would help reduce the randomness from these races. However, if in all other races you allocate at least one per AG then the skew at Kona towards smaller age groups will be perpetuated as more qualifying races are added.

Allocate Globally

So rather than allocate on a per race basis the slots could be allocated globally based on previous 12 months finishers (just pick a date each year where a years slots are allocated). From that you would get some method for allocating these slots across the various races – Regional Championships and others. Where the total number available is low they may only go to regional champs.

The global participation table shows allocating the total slots (based on Kona start list) based on global participation and then rounding to the nearest whole number. Since this is global the rounding still keeps us close to the total slots (only 1 different). It then shows how many that is per race and what it would be with 50 races.

Using this method would have issues with most age groups having less than two slots per race and many having less than 1 (e.g. M65+ and F55+). This would bring us back to the minimum of 1 rule and the resultant skewing at Kona. Clearly, this is far worse with 50 races.

A better method would be to continue with the Regional Championship races. The final three columns show the following method of allocating the slots between championship races and others:

- allocate the slots to age groups based on global participation;
- work out the number of slots per race;
- for age groups where the slots per race are less than two then allocate all slots to the championship races. These age groups would have no slots outside of championships;
- for age groups where slots per race are two or more then allocate half the slots to championship races and the remainder to other races evenly;
- throughout round to the nearest whole number.

Clearly, there will be some winners and losers. It also ends up with 28 more slots needed (with the rounding this could go either way). The difference column shows the difference to the actual global distribution. This comes about from the rounding. The process could be refined (and made more complicated) to address this – with some allocation from those age groups with too many to those with too few. E.g. F40-44 could be given an extra 2 slots per championship race by taking those from M45-49. With a transparent process these final tweaks could easily be demonstrated to be fair.

To help ensure that Kona has the best athletes competing it’s important that entry to Championships is possible for competitive athletes. This is particularly important where thats the only race that have slots. Here’s one possibility:

those athletes achieving any of one the following criteria get early entry privilege to one Regional Championship race:

- qualified for Kona in previous 3 years;
- in age groups with only championship races – top 10 in age group in the previous year;
- in age groups with slots in all races – top 5 in age group in the previous year.

There are loads of ways to do this and certainly some stress testing would be required to ensure that it didn’t give so many people early entry that there weren’t enough entries. The current AWA (All World Athlete) rankings already does this allowing Gold members early access to one race. However, the rankings are a poor reflection of competitiveness as it favours those athletes competing in lots of races. Take me as an example: each time I’ve had gold (top 1% on points) I’ve not managed top 1% in any race I did. Hence, I choose not to use this method.

There is a better way – not necessarily this one. Whether WTC will bother to investigate is another matter…