Moi drodzy, właśnie otrzymałem z serwisu AM bardzo wyczerpującą informację dotyczącą moich uwag. Po części pokrywały się z moimi spostrzeżeniami (uwaga dotycząca błędnego routingu na trasie Sulęcin - Gorzów: nie zaznaczać "nie dotyczy poczatku i konca trasy" i sprawa załatwiona) a w znacznej mierze wyjaśnia o co w tym nieszczęsnym routingu chodzi. Przytaczam odpowiedź, bo jest ważna dla wszystkich z nas.
===============================================
"Ogonek" w Legnicy to wynik bledu w mapie - maly fragment wjazdu na 2-pasmowke ma niewlasciwy atrybut i dlatego AutoMapa prowadzi okrezna droge przy ustawionym przez Pana warunki tylko po drogach glownych. Oczywiscie poprawimy.
Jak staralem sie wyjasnic w poprzedniej odpowiedzi (dopisek Prozora:UMIEŚCIŁEM JĄ NA KOŃCU TEGO WPISU!!!) ograniczenia ustawiane dla srodkowego odcinka dluzszych tras dzialaja tylko wtedy gdy trasa jest dosc dluga. Przy krotszych trasach po prostu srednia gestosc drog glownych jest w tym kraju za mala.
Jesli chce Pan zeby trasa byla koniecznie prowadzona tylko po drogach glownych niezaleznie od jej dlugosci wowczas w Ustawieniach Trasy nalezy wylaczyc opcje na dole ekranu "nie dotyczy poczatku i konca trasy".
Wowczas trasa Sulecin - Gorzow pojdzie tylko po drogach glownych stosujac twardo warunek nie uzywania innych drog. Niestety nie zawsze daje to sensowny wynik.
(dopisek Prozora: FAKT, PRZETESTOWAŁEM WCZORAJ - czasami opcja działa lepiej, czasami gorzej. Jeśli koniec jest na drogach lokalnych, to o dotarciu do celu możemy pomarzyć, lub trasa konczy się gdzieś w okolicach celu)
W podanym przez Pana przykladzie do Sulecina nie dochodzi zadna droga glowna wiec trasa zostanie wyznaczona po drogach glownych
dopiero od drogi 22/24. A do tego miejsca AutoMapa proponuje w wersji 3.4 jazde na azymut.
Pracujemy nad opcja trasy "optymalnej" ktora w takim przypadku doprowadzi mniejszymi drogami do drogi glownej.
Nie mamy watpliwosci, ze jest jeszcze sporo do zrobienia zanim AutoMapa w kazdej mozliwej sytuacji pokaze najsensowniejsza trase.
Skoro nie mozna osiagnac od razu 100% skutecznosci skupiamy sie zgodnie z Zasada Pareto najpierw na tych rzeczach, ktore sa najwazniejsze.
Oczywiscie rozumiem, ze dla Pana ta sama zasada oznacza, ze najwazniejszy jest Sulecin z oczystego powodu, ze to miejsce gdzie Pan mieszka

Algorytmy nawigacji nie sa opracowywane dla kazdego kawalka drogi osobno. Sa to procedury uniwersalne ktore maja sobie poradzic w mozliwie szerokiej gamie sytuacji / kombinacji ustawienia
odcinkow drog i ich kategorii. Zmian parametrow tak by w konkretnym miejscu wyliczenie dawalo lepszy skutek natychmiast pogarsza wyniki w wielu innych miejscach.
Oczywiscie nie ustajemy w wysilkach, zeby miejsc gdzie algorytmy zawodza bylo jak najmniej. Podawanie konkretnych przykladow i staranne ich opisanie tak jak Pan to robi bardzo nam pomaga.
> Co prawda, zalecałbym zmiane oznaczenia
> tej drogi na krajową (o wiele lepsza jakoÂśa niż droga
> nr 136!!!)
Przekazuje te uwagi do dzialu opracowania map.
dopisek Prozora: A TERAZ SPRAWA UZUPEŁNIENIA NAZW I KIERUNKÓW ULIC:
Ilosc drog w Polsce jest spora. W AutoMapie mamy ich ok. 0.5mln kilometrow i nie istnieja w odroznieniu zadne sensowne publiczne zasoby danych z ktorych mozna by skorzystac. Tworzymy wiec te mapy do AutoMapy praktycznie od zera. Wystartowalismy o wiele lat pozniej niz Europa Zachodnia czy Stany i stad oczywiste zapoznienie.
Prace jednak ida w dobrym tempie a AutoMapa zostala bardzo dobrze przyjeta przez rynek co nas znakomicie motywuje do jeszcze szybszej pracy.
Mimo to doprecyzowanie wszystkich miejscowosci jeszcze potrwa.
Dane zbierane sa wieloma metodami rownolegle. M.in. po kraju jezdza ekipy sprawdzajace 'naocznie' sytuacje. Jesli przesle Pan odpowiednie informacje na pewno przesunie to Sulecin w kolejce

===============================================
dopisek Prozora: A TERAZ JESZCZE SZCZEGÓŁOWA KWESTIA ROUTINGU DLA ZAAWANSOWANYCH

Problem wyznaczania trasy nie jest tak prosty jak sie wydaje. Naklada sie na siebie sporo roznych rzeczy i w kazdej z nich oczywiscie jest pole do usterek, problemow, pomyslow, zmian.
Zeby zapewnic odpowiednia szybkosc dzialania na urzadzeniu o tak slabej mocy obliczeniowej w stosunku do objetosci bazy danych
korzystamy z dosc skomplikowanych algorytmow. Nie jest to zwykle przegladanie kolejno mozliwych drog bo to trwa wielokrotnie za dlugo.
Uzyty algorytm bazuje na specjalnie przygotowanych indeksach ktore maja rozmiar ponad 1/3 calosci danych.
Mimo to czas potrzebny na znalezienie optymalnej trasy bez dodatkowych ograniczen robi sie zbyt dlugi przy dluzszych trasach - rzedu setek kilometrow. Dlago stosujemy wiele sztuczek pozwalajacych uzyskach kilku-kilkunastukrotne przyspieszenie ale kosztem niewielkiego ulamka procenta przypadkow wyznaczenia trasy inaczej niz zrobilby to czlowiek.
Na pewno da sie to zrobic jeszcze lepiej i pracujemy nad tym.
Jedna z metod uzytych zarowno do przyspieszenia jak i do "uczlowieczenia" znalezionej trasy jest dzialanie algorytmu etapami - inaczej w poblizu punktow milowych i inaczej w "glownej czesci trasy".
To rozgraniczenie stosowane jesty jedynie wtedy gdy trasy sa dlugie - ok. 100km. Ale nie jest to granica sztywna. Moze sie zdarzyc,
ze algorytm uzywajacy innej logiki dla "srodkowego odcinka trasy" zadziala juz przy 50km a moze nie wlaczyc sie nawet przy 150km.
Nie steruje tym bowiem zaden parametr dlugosci tylko znacznie badziej skomplikowane algorytmy zalezne od ilosci segmentow drogi, ich wzajemenych powiazan itd.
Na to nakladaja sie bledy w danych, ktore wciaz sa i dlugo jeszcze beda o ile w ogole da sie ich kiedykolwiek calkowicie pozbyc. Podobnie jak z pisaniem kodu programu tak i z budowaniem tego typu systemu programowo-mapowego nie ma niestety narzedzi ktore gwarantuja unikniecie 100% bledow.
Np. w opisanym przez Pana przypadku na PDAClub za petla na drogach
glownych pod Legnica odpowiada krociutki kawalek lacznika przy
dwupasmowce ktory ma niewlasciwy atrybut. Bedzie to oczywiscie poprawione.
Rodzajow bledow / komplikacji w danych jest znacznie wiecej i zeby uniknac pokazywania komunikatu "nie mozna wyznaczyc trasy" program w takich sytuacjach stosuje rozwiazania awaryjne - wychodzimy z zasady ze lepiej jest wyznaczyc trase o kilka kilometrow dluzsza niz potrzeba niz pokazac komunikat ze nie ma trasy.
Lista wyjatkow jest spora a sprawe bardzo komplikuje fakt ze dodanie kazdej najdrobniejszej naweto logiki typu jeden "if" a glownym algorytmie znajdowania trasy wydluza natychmiast o wiele procent czas wyznaczania trasy. Gdyby chciec opisac wszystkie niuanse w ktore obroslo juz wyznaczanie trasy w AutoMapie mozna by juz napisac mala ksiazke.
Nie mozemy tego wszystkie wyjasniac ani w instrukcji obslugi ani tym bardziej w menu bo glownym odbiorca AutoMapy jest typowy kierowca ktory nie chce nic wiedziec ani o komputerach ani o algorytmach.
Chce po prostu dojechac do celu najlepiej naciskajac jeden guzik. I nie chce czekac przez kilka minut na wyliczenie trasy ktora by byla troche lepsza.
Pracujemy najszybciej jak mozemy, ze nie tylko usunac usterki w danych ale rowniez tak dopracowac algorytmy by uzytkownik w ogole nie zdawal sobie sprawy z tego jak skomplikowanym procesem jest znalezienie optymalnej trasy. Podobnie jak nie zdaje sobie sprawy z nieprawdopodobnej zlozonosi operacji wykonywanych przez oko i mozg w ulamku sekundy kiedy jendym rzutem oka na mape czlowiek
natychmiast widzi dobra trase z A od B.
Mam nadzieje, ze to przynajmniej czesciowo odpowiada na Panskie pytania.
Z poważaniem
AutoMapa (m)
===============================================
No to ja jestem zadowolony. Przynajmniej wiem już teraz o co chodzi i dlaczego działa to tak jak działa. Wiem jak zoptymalizować pracę z tym narzędziem (właśnie: NARZĘDZIEM!) tak aby jazda była możliwie bezstresowa.
No i na koniec: właśnie zaczynam opracowywać uzupełnienie dotyczące Sulęcina. Czyli mapa zawierająca nazwy ulic i ich kierunki. Wyślę to do serwisu. Wam radzę zrobić to samo. Ja to robię dla Was - Wy zróbcie to dla mnie

. W końcu wiem, jak się po moim mieście poruszać, a Wy nie. I vice versa
