Dolge poti in veliko točk
Veliko sistemov TMS in načrtovanja pot izračuna samo (npr. z Azure Maps, Google ali TomTom) in nato potrebuje le še cestnino za točno to pot. V ta namen se načrtovane koordinate posredujejo kot točke v TollCalc API.
Posredovanje točk
POST /api/calculate sprejme origin, destination in neobvezno via (vmesne točke). Vsaka točka je naslov ali koordinata v obliki "lat;lon".
curl -X POST https://app.tollcalc.eu/api/calculate \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"origin": "48.1374;11.5755",
"destination": "52.5200;13.4050",
"via": ["49.0134;12.1016", "50.1109;8.6821"],
"vehicle": { "weight": 40, "axles": 5, "emission_class": "euro6", "co2_class": "class_1" }
}'
Omejitve in zmanjšanje na strežniku
Usmerjevalni motor obdela omejeno število točk na zahtevo (trenutno 50 skupaj, torej start + cilj + 48 via). TollCalc to rešuje pametno:
- Naslovi (ki jih je treba najprej geokodirati): največ 48
via. Več naslovov → HTTP 400. - Koordinate (
"lat;lon"): lahko jih pošljete več. TollCalc verigo na strežniku zmanjša do omejitve (downsampling). Start in cilj se vedno ohranita, oblika poti pa je prioritizirana s predizborom Douglas-Peucker. Noben odsek se ne odreže.
Pomembno: Zmanjšanje deluje le, če so vse točke koordinate (
"lat;lon"). Takoj ko je vključen naslov, še vedno velja omejitev 48via.
Preverjanje odstopanja (zagotavljanje kakovosti)
Ker lahko zmanjšana veriga teoretično popači pot, TollCalc kakovost preveri samodejno: izračunana pot se primerja z vašimi izvirnimi točkami, največje odstopanje pa se oceni glede na dolžino poti.
- ≤ 2 % → običajen odgovor; odstopanje je v polju
geometry_deviation_km. - > 2 % → HTTP 400 z
errorin pojasnjevalnimwarning.
Primer zavrnjene zahteve:
{
"error": "Downsampling-Abweichung zu groß",
"warning": "Die aus den Stützpunkten berechnete Route weicht zu stark von der Eingabe ab: max. 67.87 km bzw. 2.14 % der Strecke (erlaubt 2 %). Bitte dichtere oder mehr Koordinaten im Format \"lat;lon\" senden."
}
(Sporočilo API je trenutno v nemščini.)
Ob uspešnem zmanjšanju odgovor dodatno vsebuje:
| Polje | Pomen |
|---|---|
route_source |
"downsampled" (odsotno, če zmanjšanje ni bilo potrebno) |
waypoints_submitted |
število poslanih opornih točk |
waypoints_used |
število dejansko usmerjenih točk |
geometry_deviation_km |
največje odstopanje vaših točk od izračunane poti |
Zakaj usmerjanje s točkami namesto map matchinga?
Poslano polilinijo bi lahko pritrdili na cestno omrežje z map matchingom, namesto da usmerjamo sami. TollCalc tega namerno ne počne – iz preprostega razloga: cestnina je odvisna točno od prevožene poti.
Cestnina se razlikuje glede na konkreten odsek avtoceste, upravljavca, predore in posebne cestnine, sistem (odprt/zaprt) in državo. Drug izvoz ali vzporedna cesta že pomeni napačno cestnino. Pot mora biti torej 100 % pravilna – ne „približno".
Rezultat map matchinga pa je močno odvisen od kakovosti vhoda:
- GPS-šum, frekvenca vzorčenja in projekcija poslanih točk,
- vrzeli zaradi predorov, trajektov ali izgube signala,
- „poenostavljene" ali zglajene polilinije iz sistemov tretjih oseb.
Od zunaj ne moremo ugotoviti, ali je poslana geometrija res prevožena pot ali njena poenostavljena/popačena različica. Po pravilu garbage in, garbage out bi navedli cestnino za pot, ki je stranka ni nikoli prevozila – ne da bi to opazili.
Zato namerni pristop:
- Poslane točke so zavezujoče točke, ne le „predlogi". Motor iz njih ustvari zagotovljeno prevozno pot, ki gre skozi vsako točko v pravilnem vrstnem redu.
- Rezultat je ponovljiv, odstopanje od vaših izvirnih točk pa je merljivo in se navede.
- Zagotavljanje kakovosti (zmanjšanje + preverjanje odstopanja) prevzamemo mi – ne stranka. Stranki ni treba dostaviti 100 % poti niti izvajati map matchinga: posreduje svojo načrtovano pot, mi poskrbimo za pravilno pot, primerno za cestninjenje.
Kompromis je nameren: raje pregledna zavrnitev (HTTP 400 z razlogom), ko poslane točke ne dajo nedvoumne poti, kot tiho napačna cestnina. Ko bo naš map matching dokazljivo zanesljiv, ga bomo ponovno preučili – do takrat usmerjanje s točkami ostaja zanesljiva izbira.
Kdaj postane težko
Zmanjšanje je zelo zanesljivo pri običajnih dolgih vožnjah. Težje je pri:
- Zelo dolgih, večdnevnih vožnjah – daljša kot je pot, večji je razmik med točkami po zmanjšanju.
- Razdelilnih vožnjah z veliko majhnimi postanki in zankami.
- Odsekih s trajektom ali nakladanjem (velike vrzeli v GPS-sledi): cestna pot se lahko takrat precej razlikuje.
- GPS-odstopajočih vrednostih (slab fix, predor): ena sama netočna točka lahko zviša odstopanje.
- Namerno brez cestnine: če motor pelje po drugi cesti, se cestnina prav tako spremeni.
Dobre prakse za integracije TMS
- Ena vožnja na zahtevo – ne pošiljajte zgodovine položajev več dni.
- Koordinate namesto naslovov, kadar imate veliko točk.
- Dovolj gosto vzorčenje – približno 1 točka na kilometer zadostuje.
- Očistite GPS: odstranite netočne fixe (
gpsFix=false, visokaaccuracy). - Odseke s trajektom/nakladanjem obravnavajte kot ločene zahteve.
geometry_deviation_kmbeležite/spremljajte za nadzor kakovosti podatkov.
Poštena ocena
TollCalc izračuna cestnino za pot, ki jo prevozi usmerjevalni motor. Pri gostih koordinatnih verigah je ujemanje zelo visoko (v praksi običajno pod 1 %), a – v nasprotju z map matchingom – ni 1:1 garancija. Preverjanje odstopanja naredi to negotovost pregledno.