Plán trasy rubrika: Programování: PHP

6 Jiří Špaček
položil/-a 20.11.2015

Ahoj,

určitě přemýšlím nad něčím již stokrát vyřešený, tak jsem si říkal že se raději zkusím zeptat.

Řeším problém "plán cesty" kdy budu mít seznam řekněme 20ti adres a potřebuji seřadit jak by měl řidič jet, tj navrhnout cesu z bodu A přes X bodů (zastávky) do bodu B. Napadlo mě zkusit nějak využít Google Maps API.

Určitě je to již nějak řešené (rohlík.cz / damejidlo.cz / alza express atp.), ale přemýšlím jak to vyřešit co nejvíc chytře za využítí služeb / open-source.

Předem moc díky za nápady, nasměrování.

Komentáře

odkaz Vyřešeno
Anonym
odpověděl/-a 20.11.2015
 
upravil/-a 24.11.2015

Grafové algoritmy předpokládají, že budete mít data, budete je mít indexovaná a budete mít mechanizmy je spravovat. Jde to, ale je to poměrně složitá záležitost, která bude vyžadovat větší přípravu než co tu někdo dá v odpovědi.

Většinou jsou podobná API dostupná jako Matrix API:
https://developers.google.com/maps/documentation/distance-matrix/intro?h...
https://github.com/graphhopper/directions-api/blob/master/docs-matrix.md
https://developer.here.com/rest-apis/documentation/matrix-routing

Odhadnul bych si kolik budete potřebovat requestů a zcheknul limity, často jsou free verze relativně omezené.

Slyšel jsem o offline stažených OpenStreetMaps s routovacím pluginem, neznám bohužel konkrétní implementaci (sám bych využil, pokud někdo má info).

Jak leninzprahy dopsal nahoru komentář, tak jsem si vzpomněl, že jsem ještě něco opomenul. Je to nadstavba nad obchodním cestujícím (více vozidel, omezení kapacity, omezení na čas kdy se má zastavit na zastávce+ další varianty), té tříde algoritmů se řiká VRP (https://en.wikipedia.org/wiki/Vehicle_routing_problem).

V praxi jsem viděl akorát implementaci jsprit: https://github.com/jsprit/jsprit
Háček je ten, že to ze základu má podporu jen základních metrik pro odhad vzdálenosti a rychlost vozidel je nutné poskytnout odhadem. V základní implementaci jsou jen manhatannská, euklidovská vzdálenost a ortodroma.

Komentáře

  • Jiří Špaček : Skvěle, díky za ty odkazy. Vypadá to jako možné řešení. 20.11.2015

Pro zobrazení všech 3 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.