Detta inlägg är gammalt och kan innehålla inaktuell information.

Uncertainity i GTFS-RT

Ni skriver ju att "För att säkerställa att hållplatsen passerats bör man utöver getUncertainty även använda sig av hasUncertainty"
Vad är syftet med det egentligen? Är det inte alltid så att om getUncertainty är 0 så är hasUncertainy true, och om getUncertainty är tom så är hasUncertainy false?

Kommentarer

  • Uncertainty ger en indikation hur säkert men är att en prognos är korrekt. 0 menar att men är 100% säker. Allt större en 0 menar att men är inte säker att prognosen stämmer. Då menar till exempel 5 att men är mindre säker än när det skulle vara 3. Det finns ingen officiell betydelse, det är bara en ordning. Om uncertainty saknar, så är det 'unknown'

    The uncertainty roughly specifies the expected error in true delay (but note, we don't yet define its precise statistical meaning). It's possible for the uncertainty to be 0, for example for trains that are driven under computer timing control. 

    Idag är det så att vi publicerar 2 nivår av uncertainty i vår GTFS Regional GTFS-RT: Uknown och 0. menar att avgångstiden var observerad av trafikoperatorn. Då är det 100% säkert att det stämmer. Unknown (ingen uncertainty) menar att vi inte vet hur säker prognosen är. Så just nu publicerar vi ingen uncertainty större en 0.

    Mer information hittas på https://developers.google.com/transit/gtfs-realtime/reference/
    Relaterad ärende: https://kundo.se/org/trafiklabse/d/uppmatta-vs-prognostiserade-varden/

    Hälsningar,
    Bert
    Team Trafiklab
  • Hej igen
    Jo, jag vet redan allt det där, men vad är det för skillnad mellan att använda getUncertainity och hasUncertainity och varför måste man använda båda?
  • Jaha, jag fattar. Jag har uppdaterad vår dokumentation:

    För att säkerställa att hållplatsen passerats bör man verifiera att attributet uncertainty finns, och att den är 0. Om men glömmer att kolla om det finns, kan din programmeringsspråk tolka ett saknad attribut (Null) som 0, som kan ge fel i din applikation.

    Beroende på din programmeringsspråk kan null tolka som 0, som betyder någonting annat. Till exempel Java ska kasta en NullPointerException, men PHP skulle fortsätta om du använder en check med '== 0' (eftersom i PHP null == 0 ger True, men null === 0 ger False). Det var ba en varning att undvika sådana misstag.

    Gärna återkom om det är inte tydligt.

    Hälsningar,
    Bert
    Team Trafiklab

Kommentera eller skriv ett nytt inlägg

Ditt namn och inlägg kan ses av alla. Din e-post visas aldrig publikt.