V uplynulém roce jsme začali programovat jeden z našich vlastních projektů – plánovač spojení městské hromadné dopravy v chorvatském hlavním městě Záhřebu. Projekt jsme nazvali Rutio Zagreb a v tomto článku Vám představíme nejen okolnosti jeho vzniku, ale také jeho základní funkce.

Ambiciózní projekt
K samotnému programování obdobného projektu nás přiměla letní návštěva významné chorvatské metropole. Absence jakéhokoliv jednoduchého plánovače spojení dělala z obyčejného cestování veřejnou dopravou komplikované dobrodružství. Tehdy se nám v hlavě zrodila myšlenka na plánovač, který by pomohl vyřešit problémy s cestováním nejen cizincům, ale mohl by pomoci i při každodenním cestování místních obyvatel.
Mobilní web a mobilní aplikace
Veliký důraz při tvorbě uživatelského rozhraní byl kladen na mobilní web. Nejen na funkčnost, ale také jednoduchost ovládání. Většina vyhledávání probíhá právě na mobilních zařízeních a tudíž je nutné přizpůsobit i samotné prostředí. Samozřejmostí jsou vyhledávače nejbližší zastávky podle GPS, nabízení naposledy hledaných spojení, apod.
V současné době probíhá vývoj aplikací pro iOS a Android, které mají za cíl ještě více zpříjemnit a zefektivnit vyhledávání. Pomoci tomu mají zejména technologie, které nelze ve webové aplikaci použít.
Vyhledávání je oříšek
Od prvotní myšlenky po realizaci prvního funkčního prototypu vyhledávače uběhla spousta práce. Algoritmus vyhledávání totiž byl složitější než se na první pohled zdálo. Vyhledávání spojení vychází z dat o jízdních řádech, která poskytuje místní dopravní podnik. Na základě polohy zastávek a jejich vzájemného propojení vzniká tzv. graf.
Graf je dán vrcholy, v tomto případě zastávkami a hranami, které znázorňují jednotlivé cesty. V modelu je nutné následně také promítnout jednotlivé časy průjezdů a vytvořit tak 3D model, který kromě prostorového modelu zahrnuje také čas.
Při vyhledávání proběhne na serveru ve speciální aplikaci, která data o jízdních řádech zpracovává, série hledání mezi jednotlivými průjezdními body a časy. Následně dojde k odfiltrování spojení, které jsou zbytečně dlouhé nebo mají mnoho přestupů. Výsledek je následně graficky zpracováván pro uživatele v přehledné podobě.
Chytrá mobilita
Součástí projektu je také integrace modelů chytré mobility. V současné době probíhá testování kombinace vyhledávání cestování městskou hromadnou dopravou a sdílenými službami.
V praxi by to vypadalo tak, že se v určitém úseku přepravíte pomocí městské hromadné dopravy a v jiném nápříklad na sdíleném kole. Tato služba by měla především ušetřit čas v místech a časech, kdy není hromadná doprava dostatečně provázána návaznostmi.
Rozhraní pro webové vývojáře
Kromě samotné aplikace nabízí Rutio také možnost integrace „minivyhledávače“ do vlastní webové stránky. Díky tomu mohou provozovatelé webů nabídnout nadstandarní služby jejich webu. Pomocí pár kliknutí nejde uživatel spojení a přitom neopustí původní stránku.
Vyzkoušejte vyhledávání sami! Zkuste vyhledat například spojení mezi stanicemi Draškovićeva a Frankopanska. Využít můžete také našeptávače.
Vývoj pokračuje
Nejen mobilní aplikace, ale také samotný web a vyhledávací algoritmus je v neustálém vývoji. V prvních měsících provozu sbíráme anonymní data o používání aplikace a sledujeme, jak se uživatelé v aplikaci chovají. Dle analýzy následně upravujeme a vylepšujeme prvky uživatelského rozhraní i vyhledávacího serveru.
První je Záhřeb
Chorvatský Záhřeb je prvním městem, kde Rutio spouštíme. Proč zrovna Chorvatská metropole? Vyhledávač spojení je v Chorvatsku velkou raritou a vzhledem k tomu, že místní úřady jsou našemu vývoji nakloněni, myslíme, že je to ideální místo pro rozvoj. Samozřejmě máme v plánu postupně expandovat i do dalších měst v Evropě a postupně upravovat produkt dle existujících konkurenčních vyhledávačů a služeb, které by lidé mohli ocenit.