אימות מנוע הניקוד

השוואה עצמאית של מנוע הניקוד של Flying Start מול 144,539 תוצאות Sailwave אמיתיות מ-99 מועדוני שייט ב-10 מדינות.

144,539
השוואות
8,424
מקצים
99
מועדונים
0
באגים שנמצאו

פסק דין: מוכן לייצור

בכל 144,539 ההשוואות הפרטניות, מנוע הניקוד של Flying Start תואם את Sailwave עם שיעור התאמה של 99%. לא נמצאו באגי ניקוד. כל אי-ההתאמות מוסברות באיכות נתוני הבדיקה או בהפרשי עיגול קטנים שאינם משפיעים על התוצאות לעולם.

תוכן עניינים

  1. מתודולוגיה
  2. סיכום תוצאות
  3. מה בדקנו
  4. מקורות הנתונים — 99 מועדונים, 10 מדינות
  5. ניתוח אי-התאמות
  6. תכונות מוזרות שגילינו ב-Sailwave
  7. מגבלות והסתייגויות
  8. נתונים גולמיים ויכולת שחזור

1. מתודולוגיה

כתבנו מערך בדיקות אוטומטי שלוקח נתוני תוצאות של Sailwave, מריץ אותם דרך מנוע הניקוד של Flying Start ומשווה כל ערך מחושב לזה ש-Sailwave הפיק. הבדיקה בוחנת שלושה דברים לכל מתחרה בכל מרוץ:

  1. זמן מתוקן — האם נוסחת ההנדיקאפ שלנו מפיקה את אותו מספר שניות?
  2. מיקום — האם אנו מקצים את אותו מיקום סיום?
  3. נקודות — האם אנו מחשבים את אותו ניקוד?

ההשוואה משתמשת בשני מצבי אימות:

אימות מעמיק (עם זמני שייט בפועל)

כשנתוני המקור כוללים זמני שייט בפועל ודירוגי הנדיקאפ, אנו מחשבים מחדש זמנים מתוקנים מההתחלה לפי הנוסחה המתאימה (PY, IRC, YTC ועוד) ומשווים לזמנים המתוקנים של Sailwave. כך מאומת כל התהליך: זמן בפועל ← זמן מתוקן ← מיקום ← נקודות.

אימות נקודות (בלי זמני שייט בפועל)

כשנתוני המקור כוללים רק מיקומים ונקודות (נפוץ בעמודי סיכום סדרה), אנו מוודאים שההמרה ממיקום לנקודות עוקבת אחר כללי שיטת הניקוד הנכונה. כך מאומתים הקצאת נקודות עונש, חישובי נקודות בונוס וניקוד SCP.

איך אספנו את הנתונים

כתבנו סורק שעבר באופן שיטתי על ספריית התוצאות הציבורית של Sailwave, שמארחת תוצאות שפורסמו על ידי מועדוני שייט ברחבי העולם. לכל מועדון אספנו עד 40 עמודי תוצאות, חילצנו נתוני מתחרים, תוצאות מרוצים וקודי עונש, והמרנו אותם למבנה מסודר לצורך אימות.

עבור שישה צים של Falmouth Sailing Week 2025 אספנו ידנית עמודי מרוץ בודדים שכללו זמנים בפועל ומתוקנים מלאים, מה שאפשר אימות מעמיק של זמנים מתוקנים.

2. סיכום תוצאות

מקור קבצים מקצים השוואות התאמה מהותיות קלות
נאסף (99 מועדונים) 1,345 8,368 143,237 99% 0 2,030
Falmouth Week (מעמיק) 6 56 1,302 99% 3 19
סה״כ 1,351 8,424 144,539 99% 3 2,049

0 אי-התאמות מהותיות שנגרמו מלוגיקת המנוע. 3 אי-ההתאמות המהותיות הן כולן בעיות איכות בנתוני הבדיקה שלנו (מוסברות בפירוט בהמשך).

3. מה בדקנו

מנוע הניקוד מיישם את תכונות RRS (כללי המרוץ בשייט) הבאות. כולן נבדקו:

תכונהכיסוי
הנדיקאפ PY (דינגי בריטניה)נבדק ביותר מ-60 מועדונים בבריטניה
הנדיקאפ IRC (יאכטות בינלאומיות)נבדק עם צי IRC1/2/3 של Falmouth Week
הנדיקאפ YTC (סיירות בריטניה)נבדק עם צי YTCE/YTCQ של Falmouth Week
ניקוד נקודות נמוכותנבדק בכל 8,424 המרוצים
ניקוד נקודות בונוסנבדק היכן שמועדונים משתמשים בו
עונשי DNS / DNF / DNCנבדק בכל המועדונים
OCS / DSQ / RET / UFD / BFD / NSCנבדק היכן שהם מופיעים בתוצאות
DGM / DNE (שאינם ניתנים להשמטה)RRS 69 ו-A2.1 — מנוקדים כמו DSQ, לעולם לא מושמטים בסדרה
ZFP (עונש 20% בדגל Z)RRS 30.2 — הסירה מסיימת, מקום × 1.2
SCP / DPI (עונשי אחוזים)נבדק היכן שמועדונים מפעילים עונשי ניקוד או עונשים לפי שיקול דעת
כלל RRS A5.3 (ניקוד עונשים אופציונלי)ברירת מחדל בכל ההרצות — סירות באזור + 1 לעומת רשומים + 1
פרופילי השמטהנבדק באמצעות השוואת דירוג סדרה
שבירת שוויון לפי נספח A8 של RRSנבדק באמצעות השוואת מיקומים בצי עם שוויון

4. מקורות הנתונים — 99 מועדונים, 10 מדינות

בדקנו בכוונה מגוון רחב גיאוגרפית וארגונית. למרוצי מועדון בסולנט יש מאפיינים שונים ממרוצי ערב רביעי על מאגר מים בוולש או מאליפות Open Skiff באוסטרליה. מנוע הניקוד חייב להתמודד עם כולם.

הממלכה המאוחדת (60+ מועדונים)

Hayling Island SC, Parkstone YC, Poole YC, Warsash SC, Torbay SC, Cardiff Bay YC, Delph SC, Mengeham Rythe SC, Burghfield SC, Oxford SC, Chichester YC, Brancaster Staithe SC, Bexhill SC, Salcombe YC, Paignton SC, Brixham YC, Medway YC, Bartley SC, Northampton SC, Largo Bay SC, RCYC, Ranelagh SC, Twickenham YC, Cambridge YC, Ogston SC, Rutland SC, Bala SC, Maylandsea Bay SC, Royal Lymington YC, Flushing SC, Chase SC, Chipstead SC, Rock SC, BCYC, YDSC, ואיגודי מחלקות רבים (Solo, Osprey, Fireball, 29er, ILCA UK, ITCA, UKWA, Redwings).

ניו זילנד (8 מועדונים)

New Plymouth YC, Nelson YC, Wakatere Boating Club, Lake Taupo YC, NZ Paper Tiger, Yachting NZ.

אוסטרליה (6 מועדונים)

Manly YC, Perth SC, Maroochy, Hobie WA, Lake Cootharaba SC, מחלקת Open Skiff (אליפויות ארציות ומחוזיות).

מדינות נוספות

דרום אפריקה (Bloemfontein YC), שוודיה (KSSS), הונגריה (תוצאות דרך hunresults), פורטוגל, ארה״ב (KHYC — King Harbor YC), קנדה (Whitby YC).

Falmouth Sailing Week 2025

שישה צים ממסלול המפרץ — IRC 1, IRC 2, IRC 3, YTC Cruiser, YTC Quarter-Tonner ו-Firebird — עם זמנים בפועל ומתוקנים מלאים שנאספו מעמודי מרוץ בודדים המתארחים ב- sailwave.com/results/FSW.

5. ניתוח אי-התאמות

מתוך 144,539 ההשוואות, 2,052 לא תאמו במדויק. הנה כל קטגוריה של אי-התאמה, מה גרם לה והאם זה משנה.

אי-התאמות מהותיות (3 בסך הכול)

שלושתן בעיות איכות בנתוני הבדיקה שלנו, לא באגים במנוע הניקוד.

YTCE Falmouth R4 — Percy (John & Julie Roberts)

אי-התאמה: נקודות — Sailwave אומר 11, Flying Start אומר 8.

סיבה עיקרית: במרוץ השמפניה של יום רביעי היו 3 סירות אורחות (Autarky, Infinity, Passion) שאינן חלק מהסדרה הרגילה. ה-XML שאספנו לא כלל אותן, ולכן גודל הצי היה 10 במקום 13. Percy סיימה במקום ה-8 מתוך 10 בנתונים שלנו לעומת מקום 11 מתוך 13 ב-Sailwave.

פסק דין: שני מנועי הניקוד נכונים. ההבדל הוא בנתוני הקלט, לא בחישוב.

YTCE Falmouth R4 — Aardvarc (Philip Cook)

אי-התאמה: נקודות — Sailwave אומר 12, Flying Start אומר 9.

סיבה עיקרית: כמו לעיל. סירות אורחות הגדילו את גודל הצי בנתונים של Sailwave.

YTCQ Falmouth R4 — Tahini (Guy English)

אי-התאמה: זמן מתוקן — Sailwave אומר 1:10:13, Flying Start אומר 1:08:32.

סיבה עיקרית: Tahini הפליגה עם דירוג YTC שונה ביום רביעי (1054) מיתר הסדרה (1080). ה-XML שלנו השתמש ב-1080 לכל המרוצים. נוסחת הזמן המתוקן היא elapsed × 1000 ÷ rating, ולכן דירוג שונה = זמן מתוקן שונה.

פסק דין: שתי הנוסחאות נכונות. ההבדל הוא בנתוני ההנדיקאפ, לא בחישוב.

אי-התאמות קלות (2,049 בסך הכול)

כל 2,049 אי-ההתאמות הקלות שייכות לשתי קטגוריות:

עיגול זמן מתוקן (19 אי-התאמות)

הפרשים של 1–3 שניות בין Sailwave ל-Flying Start, הנגרמים מעיגול ביניים בשרשרת החישוב של Sailwave. לדוגמה, זמן מתוקן ב-IRC = זמן בפועל × TCC. אם הזמן בפועל = 3,428s ו-TCC = 1.072:

השפעה: אין. הפרש של 1–3 שניות בזמן מתוקן לעולם לא משנה מיקום סיום — בדרך כלל הסירות מופרדות בדקות.

עיגול נקודות בניקוד בונוס/SCP (2,030 אי-התאמות)

הפרשים של 0.1–0.3 נקודות כשהציונים השבריים של נקודות הבונוס ב-Sailwave או חישובי אחוזי SCP שונים מעט. לדוגמה, מקום שלישי בניקוד נקודות בונוס אמור להיות בדיוק 5.7, אבל נראה שחלק מגרסאות Sailwave משתמשות בדיוק נקודה צפה שונה במקצת מבפנים.

השפעה: זניחה. הפרשים שבריים אלה לעולם אינם משנים את הדירוג, כי הם קטנים מהמרווח בין כל שני מיקומי סיום.

6. תכונות מוזרות שגילינו ב-Sailwave

במהלך הבדיקות מצאנו תחום אחד שבו ההתנהגות של Sailwave אינה עקבית בין מועדונים. איננו טוענים שזה באג — ייתכן שזו אפשרות הגדרה מכוונת — אבל כדאי לתעד זאת עבור קציני מרוץ שעוברים מ-Sailwave.

TLE (חריגה ממגבלת זמן) — ניקוד לא עקבי

Sailwave משתמש ב- TLE כקוד עונש לסירות שלא מסיימות בתוך מגבלת הזמן. קוד זה אינו מופיע בכללי המרוץ בשייט (RRS). המקבילה ב-RRS היא DNF (לא סיים).

מצאנו ש-Sailwave מתייחס ל-TLE באופן לא עקבי בין מועדונים שונים:

Flying Start מתייחסת ל-TLE כשווה ל-DNF (starters + 1), וזה תואם את ההתנהגות הנפוצה ביותר ב-Sailwave ואת עיקרון ה-RRS שסירה שזינקה אך לא סיימה מקבלת starters + 1 נקודות.

חוסר העקביות הזה אחראי לחלק מאי-ההתאמות הקלות שלנו. אם המועדון שלכם משתמש ב-TLE עם כללי ניקוד מסוימים, אנא ספרו לנו ונדאג ש-Flying Start תתאים לנוהג שלכם.

לא נמצאו באגים ב-Sailwave

למרות שבדקנו 8,424 מרוצים, לא מצאנו מקרים ש-Sailwave מפיק בהם תוצאות שגויות לפי כללי RRS. את כל אי-ההתאמות אפשר להסביר בעיגול, באיכות נתונים או בעמימות ה-TLE שתוארה לעיל. Sailwave הוא תקן התעשייה כבר יותר מ-20 שנה, ובצדק — החשבון אצלו נכון.

7. מגבלות והסתייגויות

מה הבדיקה הזו לא מכסה

נציין גם שרוב ההשוואות שלנו (143,237 מתוך 144,539) הן השוואות נקודות בלבד מעמודי סיכום סדרה. האימות המעמיק של זמנים מתוקנים מכסה 1,302 השוואות מ-Falmouth Week. נשמח לגישה לעוד אירועים עם זמנים בפועל ומתוקנים שפורסמו כדי לחזק את האימות הזה.

8. נתונים גולמיים ויכולת שחזור

מערך הבדיקות, הנתונים שנאספו והתוצאות המלאות מפורסמים במאגר קוד פתוח ייעודי:

github.com/IDSTUK/SW-FS-Scoring-Engine-Verification
קוד מנוע הניקוד • מאמת • מערך בדיקות • 1,345 מקורות נתונים שנאספו

נתיבתיאור
scripts/soak-test.tsמריץ בדיקות משורת פקודה — מנתח XML, מריץ אימות ומפיק דוח
scripts/scrape-sailwave.tsסורק אינטרנט לעמודי התוצאות של Sailwave ב-HTML
verifier/sailwaveVerifier.tsמנוע ההשוואה — מחשב מחדש זמנים מתוקנים, מיקומים ונקודות
scoring-engine/מנוע הניקוד עצמו — raceScorer, seriesScorer, handicapCalculator, tieBreaker
data/sources.jsonיומן מלא של כל 1,345 כתובות המקור שנאספו
data/soak-results.jsonתוצאות בדיקה מלאות עם שיעורי התאמה לכל קובץ ופרטי אי-התאמות
REPORT.mdדוח ממצאים מפורט

הרצת הבדיקה מחדש

cd rc-admin npm install npx tsx scripts/scrape-sailwave.ts # איסוף נתונים חדשים npx tsx scripts/soak-test.ts <directory> # הרצת האימות

הסורק מכבד כתובות שכבר נאספו (מתועדות ב- sources.json) ויאסוף רק עמודים חדשים. כל חבילת הבדיקות רצה בפחות מ-60 שניות על הנתונים שנאספו.

כל נתוני התוצאות של Sailwave נלקחו מתוצאות שפורסמו בציבור ב- sailwave.com/results. Sailwave הוא סימן מסחרי של Jon Mayall. Flying Start אינה קשורה ל-Sailwave.