Friday, December 30, 2016

Never Trust Software!

I develop software for a living. So when I say "Never trust software!", you should trust me! What does that have to do with windsurfing? Let me start my explanation with a couple of screen grabs. Here's the first:

These are my "alpha" numbers from a windsurfing session 3 days ago. The best one was only 7.27 knots! That was a bit disappointing, since a few of my jibes were pretty nice.

An "alpha 500" is a 500-m run with a jibe in the middle where the two ends have to be within 50 meters. Since I was not really watching where I was going, I assumed that the two "arms" of the alpha were too far away. That's easy enough to verify - when I changed the "alpha proximity" number in GPS Action Replay from 50 m to 60 m, I got a 20.85 knot alpha. Here's the section from the GPS track:

You can see that the two ends of the 500 m track are indeed more than 50 meters apart, which is why GPS Action Replay did not count it.

But when I analyzed the same track today using the program GPSResults, I got very different results:

This program thinks that my best alpha was 20.296 knots! Obviously, at least one of the two programs is not trustworthy!

Looking more closely, I noticed that GPSResults has shorter run length for the first three alphas, ranging from 444.8 to just 100.6 meters. Indeed, the two legs are less than 50 meters apart a little to the left:
So - which of the two programs has it right? Let's check the exact definition of what "alphas" are in speedsurfing (from http://www.seabreeze.com.au/forums/Windsurfing/Gps/GPS-Team-Alpha-Racing-Explained):

 "All results must have a total distance covered that is less than or equal to the maximum distance"
Based in this definition, GPSResults is correct, and GPS Action Replay has a bug in its alpha calculation. However, the other GPS speedsurfing web site has a slightly different definition:
"Software calculated speed over ‘one’ run of 500 meters with a gybe and a proximity at the startpoint of 50 meters."
Here, the "less than" is missing, and GPS Action Replay actually would be the program that calculates alpha correctly.

Most days, it makes no difference if we say "less than" or not - since the jibe is the slowest part of the run, extending to the full 500 meters usually gives the best alphas. But as I have shown, not always!

I assume that the difference in definition was not intentional, since both sites allow the use of both analysis programs. Maybe they can agree on using just one definition?