Drie intelligentielagen
achter elke Time-To-Line

Geometrie. Signaalverwerking. Machine learning. Hoe Flying Start voorspelt wanneer je de startlijn oversteekt — en wat het anders maakt dan hardware die 50× meer kost.

1
De basis

Straal-segment-intersectie

Elke Time-To-Line-berekening begint met een meetkundeprobleem. Je GPS-positie is een punt. Je koers over de grond definieert een straal die zich uitstrekt vanuit dat punt. De startlijn is een segment tussen het PIN- en RC-boot. Waar die twee lijnen samenkomen — en hoe ver die intersectie weg is — bepaalt hoe lang het duurt tot je de lijn oversteekt.

// De geometrie van elke TTL-berekening North (+y) ^ | | PIN ─────────── RC startlijn (segment) | / | / ← straal langs COG | / | ● BOOT GPS-positie | +──────────────────> East (+x) TTL = distance_to_intersection / speed

Flying Start gebruikt een parametrisch straal-segment-intersectie algoritme om het exacte punt te vinden waar je trajectorie de startlijn kruist. In tegenstelling tot een eenvoudige loodrechte afstandsberekening houdt dit rekening met de hoek van je aanloop. Koers 45 graden ten opzichte van de lijn? Je TTL is langer dan de rechte-lijnafstand aangeeft. Parallelle koers? TTL is ongedefinieerd — je steekt nooit over.

Dit is dezelfde fundamentele meetkunde die gespecialiseerde instrumenten zoals de Velocitek ProStart en Vakaros Atlas 2 gebruiken. De wiskunde is identiek. Wat verschilt is hoe nauwkeurig de invoer is.


De invoer

Telefoon-GPS op open water is beter dan je denkt

GPS heeft een slechte reputatie door stedelijke canyons. In een stad kaatsen signalen af van gebouwen en de ontvanger kan een direct signaal niet onderscheiden van een gereflecteerd. Het resultaat is multipad-interferentie — positiefouten van 5–15 meter.

Zeilen is het tegenovergestelde van een stad. Je bevindt je op vlak water met een onbelemmerd zicht op de hele hemel. Er is niets om van te reflecteren. Elk satellietsignaal arriveert schoon.

1–2m
Dual-freq telefoon, open water
3–5m
Enkel-freq telefoon, open water
1 Hz
Telefoon-GPS updatefrequentie
25 Hz
Vakaros/ProStart-frequentie

Telefoons met dual-frequentie GPS (L1+L5) bereiken 1–2 meter nauwkeurigheid op open water. Het L5-band voegt een tweede frequentie toe die ionosferische fouten elimineert en helpt directe signalen van reflecties te onderscheiden. Op het water kom je hiermee dicht bij de praktische grenzen van consument-GNSS. Telefoons met enkel-frequentie GPS (alleen L1) bereiken nog steeds 3–5 meter op open water — aanzienlijk beter dan in de stad.

Welke apparaten hebben dual-frequentie GPS (L1+L5)?

iPhone: iPhone 15, 16 en 17 (alle modellen) en iPhone 14 Pro / Pro Max. Standaard iPhone 14 en iPhone SE zijn alleen L1.

Apple Watch: Ultra, Ultra 2 en Ultra 3. Standaard Apple Watch (Series 9, 10, 11, SE) gebruikt alleen L1.

Android: De meeste vlaggenschepen vanaf 2020 — waaronder Pixel 5+, Samsung Galaxy S21+ en OnePlus 9+. Controleer de specificaties van je telefoon op "L5" of "dual-frequentie" GNSS.

Flying Start werkt op alle GPS-uitgeruste apparaten. Dual-frequentie geeft je betere nauwkeurigheid, maar het Kalman-filter en ML-model verbeteren voorspellingen ongeacht welke band je hardware ondersteunt.

Gespecialiseerde hardware zoals de Vakaros Atlas 2 heeft een voordeel: 25 Hz updatefrequenties en differentiaalcorrecties die de nauwkeurigheid naar ~25 centimeter brengen. Dat is echt beter. Maar de kloof is kleiner dan de meeste mensen aannemen — en het resterende verschil kan in software worden aangepakt.

Eerlijke vergelijking: GPS-hardware

De Vakaros Atlas 2 bereikt ~25 cm nauwkeurigheid met dual-band GNSS bij 25 Hz. De Velocitek ProStart gebruikt een 25 Hz multi-constellatie-ontvanger met WAAS-augmentatie. Beide zijn speciaal gebouwd voor deze taak, en voor officieel OCS-calling op scheidsrechtersniveau op kampioensniveau is die precisie belangrijk. Flying Start's aanpak is de nauwkeurigheidskloof te sluiten via signaalverwerking en machine learning in plaats van hardware.


2
Signaalverwerking

Uitgebreid Kalman-filter

Ruw GPS geeft je één keer per seconde een positie. Tussen die updates beweegt de wereld verder. Een boot van 5 knoop legt 2,5 meter per seconde af — en de GPS-positie die je een halve seconde geleden ontving is al verouderd. Erger nog, opeenvolgende GPS-fixes springen willekeurig rond binnen hun nauwkeurigheidscirkel, waardoor snelheids- en koersaflesingen schokkerig worden.

Dit is de grootste bron van TTL-instabiliteit in een eenvoudig GPS-instrument. Je berekent TTL uit snelheid en koers. Als de snelheid schommelt tussen 2,3 en 2,7 m/s van de ene fix naar de volgende, springt TTL bij elke update met meerdere seconden. Gemiddeld is het correct, maar nutteloos voor het timen van een start.

Flying Start gebruikt een Uitgebreid Kalman-filter (EKF) dat beide problemen tegelijkertijd oplost.

// Toestandsvector: wat het filter bijhoudt state = [px, py, vx, vy, ax, ay] position velocity acceleration // Draait met 4 Hz (4x per seconde) predict() → toestand vooruitberekenen met fysica (0,25s) update() → GPS-fix opnemen wanneer beschikbaar (~1 Hz) // Resultaat: vloeiende, continue toestandsschatting output → gefilterde positie, snelheid, koers 4x/sec bijgewerkt, niet slechts 1x/sec

Het filter houdt een zesdimensionale toestand bij: positie, snelheid en versnelling in twee assen. Vier keer per seconde voorspelt het waar de boot moet zijn op basis van fysica — constante versnellingsextrapolatie. Eenmaal per seconde, wanneer een nieuwe GPS-fix aankomt, mengt het de voorspelling met de meting en weegt elk naar onzekerheid.

Hoge-nauwkeurigheid GPS-fixes trekken de toestand meer. Slechte fixes trekken het minder. Tussen fixes vult de voorspelling de gaten. Het resultaat: positie en snelheid die vloeiend bijwerken met 4 Hz in plaats van springen bij 1 Hz.

Wat dit betekent voor TTL: de snelheid en koers die in de TTL-berekening worden gevoerd zijn gefilterde, stabiele waarden — geen ruw GPS-ruis. Het filter houdt ook versnelling bij, dus als je vertraagt in een slag, weerspiegelt de toestandsschatting dat in plaats van constante snelheid aan te nemen.

Hoeveel helpt het Kalman-filter?

Het EKF is de grootste verbetering van TTL-nauwkeurigheid. Het elimineert het schokkerig gedrag dat ruw-GPS TTL-berekeningen onbetrouwbaar maakt, gladstrijkt snelheids- en koersruis, en vult de 1 Hz-gaten met op fysica gebaseerde voorspelling. Het is volledig deterministisch — geen trainingsgegevens nodig, geen cloudafhankelijkheid, werkt identiek op iPhone, Apple Watch en Android. Deze ene laag sluit ruwweg 80% van de nauwkeurigheidskloof tussen een telefoon en een toegewijd 25 Hz-instrument.


3
Intelligentie

Machine learning op het apparaat

Het Kalman-filter gaat uit van constante versnelling. Dat is een goed model voor een boot die rechtuit zeilt, maar het faalt in de scenario's die het meest belangrijk zijn: de laatste 30 seconden van een startaanloop, wanneer zeilers snelheid aanpassen, afvallen, aanloeven en overstag gaan.

Flying Start gebruikt een 1D-convolutioneel neuraal netwerk dat volledig op je apparaat draait om te voorspellen wat het Kalman-filter verkeerd doet. Het is getraind op tienduizenden gesimuleerde startaanlopen met realistische zeilfysica — slagen, snelheidswijzigingen, stroomeffecten, GPS-ruis — en leert de patronen die eenvoudige fysicamodellen missen.

// Het model corrigeert de Kalman-TTL, vervangt hem niet kalman_ttl = 24,3 seconden (op fysica gebaseerde schatting) ml_correction = -1,8 seconden (model voorspelt dat je eerder aankomt) final_ttl = 22,5 seconden (gecorrigeerde schatting) // Veiligheid: correctie begrensd tot ±30% van Kalman-TTL // Als het model fout zit, is de fout begrensd

Hoe het werkt: het model kijkt naar een rollend 30-seconden-venster van je aanloop — snelheidsprofiel, koerswijzigingen, versnellingspatroon, afstand tot de lijn, naderingssnelheid en resterende aftelling. Het heeft duizenden gesimuleerde scenario's gezien waar het de werkelijke oversteektijd kent, en heeft geleerd welke patronen het Kalman-filter verkeerd inschat.

Wanneer het het meest helpt: het model voegt de meeste waarde toe in de laatste 15–30 seconden vóór een start, wanneer je actief manoeuvreert. Een zeiler die aanloeft om snelheid te verminderen, dan afvalt om te versnellen — het Kalman-filter voorspelt op basis van huidige versnelling, maar het model herkent het patroon en anticipeert op de komende snelheidswijziging. In testscenario's met slagen en snelheidswijzigingen reduceert de ML-laag TTL-fout met 1–3 seconden vergeleken met het Kalman-filter alleen.

Wanneer het niet veel helpt: bij een schone, rechte aanloop met gelijkmatige snelheid is het Kalman-filter al erg nauwkeurig. Het ML-model voegt in die situaties niet veel toe — en is ontworpen om dat niet te doen. De correctie is begrensd tot ±30% van de Kalman-TTL, zodat het model de schatting kan verfijnen maar nooit een volkomen fout resultaat kan produceren.

140 KB
Modelgrootte
<1 ms
Inferentietijd
61K
Parameters
±30%
Veiligheidsgrens

Geen hardwareconcurrent doet dit

Noch de Velocitek ProStart noch de Vakaros Atlas 2 gebruikt machine learning voor TTL-voorspelling. Ze vertrouwen op kinematica: afstand gedeeld door snelheid. Dat werkt goed met 25 Hz GPS, maar heeft hetzelfde blinde vlak — het kan manoeuvres niet anticiperen. De ML-laag is iets wat software kan doen dat hardware niet kan, omdat het in de loop van de tijd verbetert naarmate het van meer gegevens leert.


Samen beter

Elke zeiler maakt het model slimmer

Het huidige model is getraind op synthetische gegevens — computergesimuleerde racestarts met realistische zeilfysica. Het is goed, maar simulaties kunnen niet alles vastleggen. De manier waarop een 420 een startlijn benadert verschilt van een J/70 of een Laser. Getijpatronen in de Solent zijn anders dan in San Francisco Bay. Lichte-wind-starts lijken in niets op 25-knoop-loefstarts.

Flying Start legt geanonimiseerde timingmetriek vast van echte racestarts — gefilterde snelheid, koers, afstand tot de lijn en het werkelijke moment van oversteken — en gebruikt deze gegevens om het model opnieuw te trainen. Elke start, in elke klasse en locatie, maakt de voorspellingen voor iedereen nauwkeuriger.

Je hoeft niets te doen. Als GPS-trackopname is ingeschakeld (dat is standaard), dragen je starts automatisch bij aan de trainingsgegevens. De gegevens worden geanonimiseerd vóór training — geen namen, geen locaties, alleen de vorm van de aanloop en het timing van het oversteken. Je kunt je op elk moment afmelden in Instellingen.

Hardware-instrumenten kunnen dit niet. Een Velocitek ProStart heeft geen netwerkverbinding en geen manier om zijn algoritmen te verbeteren nadat het de fabriek heeft verlaten. Een Vakaros Atlas 2 heeft connectiviteit, maar zijn TTL-berekening is pure kinematica — er is geen leerlus. Flying Start's model wordt elk seizoen beter.


Binnenkort — iOS

Een model dat leert hoe jij zeilt

Het basismodel leert van alle zeilers. Maar jouw starts hebben patronen die uniek voor jou zijn — hoe agressief je versnelt in de laatste 10 seconden, hoeveel snelheid je verliest in een slag, hoe vroeg je je laatste aanloop begint.

Apple's Core ML-framework ondersteunt on-device modelupdates via MLUpdateTask op iPhone. Dit betekent dat Flying Start het basismodel kan fijn-afstemmen op jouw specifieke patronen na 20–30 starts — zonder enige gegevens naar een server te sturen. De personalisatie gebeurt volledig op je telefoon.

Na genoeg starts zullen jouw TTL-voorspellingen niet alleen weerspiegelen hoe een gemiddelde zeiler een startlijn benadert. Ze zullen weerspiegelen hoe you jij het benadert — jouw boot, jouw stijl, jouw neigingen.

Beperkingen

On-device personalisatie vereist een iPhone. Apple Watch kan het gepersonaliseerde model uitvoeren (gesynchroniseerd van de gekoppelde iPhone) maar kan de on-device training zelf niet uitvoeren. Android-ondersteuning hangt af van gelijkwaardige on-device trainingsframeworks. Personalisatie heeft genoeg gegevens nodig — de eerste 20–30 starts gebruiken het basismodel voordat personalisatie inschakelt.


Het volledige beeld

Waar gespecialiseerde hardware nog wint

We zijn ingenieurs. We geloven in eerlijke vergelijkingen. Dit is wat een $1.000-instrument je geeft dat software alleen niet kan repliceren.

GPS-precisie

De Vakaros Atlas 2 bereikt ~25 cm nauwkeurigheid met 25 Hz dual-band GNSS en realtime differentiaalcorrecties. Zelfs met ons Kalman-filter heeft een telefoon-GPS een ruisvloer van 1–2 meter. Voor officieel OCS-calling op scheidsrechtersniveau op kampioensniveau — waar centimeters bepalen of je start of zit — heeft gespecialiseerde hardware de voorsprong.

Updatefrequentie

25 Hz betekent een nieuwe positiefix elke 40 milliseconden. Telefoon-GPS draait met 1 Hz (één fix per seconde). Ons Kalman-filter interpoleert tussen fixes met 4 Hz, maar het is voorspelling, geen meting. In de laatste 3–5 seconden van een start, wanneer dingen het snelst veranderen, heeft ruw GPS met hogere frequentie een inherent voordeel.

Toegewijd scherm

Een 4,4" zonlicht-leesbaar scherm met Gorilla Glass en 100-uur-batterij is speciaal gebouwd voor de cockpit. Een telefoon in een waterdicht hoesje is goed, maar het blijft een telefoon. Apple Watch aan de pols is aantoonbaar beter voor een snelle blik, maar het scherm is klein.

Drie lagen. Één getal. Jouw beste start.

Download Flying Start gratis. Upgrade naar Premium voor TTL, DTL, OCS-waarschuwingen, Startbeoordeling, Apple Watch en alles wat er verder bij hoort.

Gratis downloaden Volledige Vergelijking