Author Topic: Brouter - offline router service pro cyklisty a turisty - volná diskuze  (Read 50457 times)

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Re: Brouter - offline router service pro cyklisty a turisty - volná diskuze
« Reply #120 on: February 29, 2016, 13:03:41 »
Nejdulezitesi je druh povrchu surface=  a kvalita povrchu tracktype=   ( grade1...grade5). Pro MTB jeste MTB scale - tam napomuze OSM wiki - je i v cestine. V podstate cele vyhodnocovani je o testovani hodnot textovych retezcu, pricemz u mnoha dat je platnou hodnotou i  retezec prazdny = data neznama. )
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Re: Brouter - offline router service pro cyklisty a turisty - volná diskuze
« Reply #121 on: February 29, 2016, 13:07:52 »
...... Takže jsem si kontroloval co je v OSM zadáno u jiných cest a většinou tam není vyplněno nic, ani povrch......

To se asi tyka hlavne cest, ktere nebyly pridany rucne pri znalosti fyzickeho stavu, ale nejakou davkou z jinych databazi.
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline Dan S.

  • Apprentice of Locus
  • **
  • Posts: 155
  • Thanked: 3 times
    • View Profile
  • Device: SG S6
Re: Brouter - offline router service pro cyklisty a turisty - volná diskuze
« Reply #122 on: February 29, 2016, 17:49:53 »
Pokud prudsi sjezdy preferujes, stalo by za to zrušit penalizaci sjezdů

assign   downhillcutoffvalue    1.5
assign   downhillcostvalue      0

a ladit penalizaci výjezdů

assign   uphillcostvalue   70
assign   uphillcutoffvalue   3.0

Při MTB Factor 1.0(2.0) je ze 70  46.6(23.3), takže počáteční hodnota může jít až cca ke 100 ( 200 ).

Takže z původních
Quote
assign   uphillcostvalue   switch equal hills 1 70
                                switch equal hills 2 80
                                switch equal hills 3 60
                                0
assign   uphillcutoffvalue   switch equal hills 1 3.0
                                switch equal hills 2 1.0
                                switch equal hills 3 0.5
                                1.5
assign   downhillcutoffvalue    switch equal hills 1 1.5
                                switch equal hills 2 0.5
                                switch equal hills 3 1.5
                                1.5
assign   downhillcostvalue      switch equal hills 1 60
                                switch equal hills 2 80
                                switch equal hills 3  0
                                60 

mám nastavit
Quote
assign   uphillcostvalue   switch equal hills 1 100 - hodnota může jít až k 200
                                switch equal hills 2 80
                                switch equal hills 3 60
                                0
assign   uphillcutoffvalue   switch equal hills 1 3.0
                                switch equal hills 2 1.0
                                switch equal hills 3 0.5
                                1.5
assign   downhillcutoffvalue    switch equal hills 1 1.5
                                switch equal hills 2 0.5
                                switch equal hills 3 1.5
                                1.5
assign   downhillcostvalue      switch equal hills 1 0
                                switch equal hills 2 80
                                switch equal hills 3  0
                                60 
?
změněné hodnoty jsou tučně
Locus Pro
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Re: Brouter - offline router service pro cyklisty a turisty - volná diskuze
« Reply #123 on: February 29, 2016, 18:22:56 »
Tak nejak. Ale myslel jsem to spis ze to jsou hodnoty - pro patricne MTB faktory, kdy by jeste Brouter nemel zlobit.
Ale spis bych Ti to zvysovat neradil, protoze pak se mu nebude do kopcu chtit.

Napadlo me, ze z praktickych duvodu by bylo lepsi profil hills 1 nechat, a strcit to spis do profilu hills 2 nebo 3, ktere pravdepodobne nepouzijes. Ovsem, pokud si to ulozis jako svuj vlastni koncovy profil, pak je to celkem jedno.
« Last Edit: February 29, 2016, 18:25:26 by poutnikl »
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline Dan S.

  • Apprentice of Locus
  • **
  • Posts: 155
  • Thanked: 3 times
    • View Profile
  • Device: SG S6
Re: Brouter - offline router service pro cyklisty a turisty - volná diskuze
« Reply #124 on: February 29, 2016, 19:06:56 »
Zkouším to v testovacím profilu, ten co aktuálně používám (sedí mi) měnit nebudu.
Locus Pro
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Re: Brouter - offline router service pro cyklisty a turisty - volná diskuze
« Reply #125 on: February 29, 2016, 19:17:20 »
Autor Brouteru na forech/nebo v dokumentaci zminoval, ze kdyz je xxhillcost * xxhillcutoff > 100, muze dochazet k planovacim artefaktum. Brouter se pak pry nekdy snazi umele delat mikrozajizdky, aby nahnal vzdalenost a kopce mu pak prevysenim nebo strmosti vychazely mensi. V praxi jsem nic takoveho nepozoroval, ale zas jsem jej moc nepokousel.
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline Dan S.

  • Apprentice of Locus
  • **
  • Posts: 155
  • Thanked: 3 times
    • View Profile
  • Device: SG S6
A ještě se tě zeptám, jak upravit profil, když bych od něj chtěl, aby se částečně vyhýbal kopcům (ne za každou cenu). Pořád jde o ten tvůj profil mnou upravený (MTB faktor 2 a smallpaved -0,5). Na minulé stránce jsi psal, že když upravím Hill na hodnotu 2, tak je to už moc a je to vhodné na cestování na těžko.
Locus Pro
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Žádný profil se nevyhýbá kopcum za každou cenu, nýbrž kazdy kopec má pomoci cutoff a cost svou stanovenou cenu vyjadrenou v ekvivalentni delce trasy.

Jde o to, ze hlavni vyznam penalizacnich profilu pro kopce lezi mimo MTB, stejne jako nastaveni jejich nominalnich hodnot.

V Implementaci MTBfactoru je jejich snižování zvolené tak,  aby se tolerance vuci kopcum zvyšovala spolu s rostouci preferenci cest v terenu. Pokud se Ti posun preferenci cest a penalizace kopcu zda nevyvazeny, klidne muzes s up/downhill cutoff/cost pohnout a zvolit si vlastni hodnoty.

Je mozne do budoucna implementovat balancni faktor.


Hills 0 ma pri MTB factor 2     up/downhillcutoff 1.5/1.5, up/downhillcost 0/20 
Hills 1 ma pri MTB factor 2     up/downhillcutoff 3.0/1.5, up/downhillcost 23/20 
Hills 2 ma pri MTB factor 2     up/downhillcutoff 1.0/0.5, up/downhillcost 27/27 

1 km 6% stoupani Te prijde navic
u Hills 0 na  ( 1000 *(6-1.5)/100 * 0 ) = 0 m
u Hills 1 na  ( 1000 *(6-3)/100 * 23 ) = 690 m
u Hills 2 na  ( 1000 *(6-1)/100 * 27 ) = 1350 m

1 km 6% klesani Te prijde navic
u Hills 0 na  ( 1000 *(6-1,5)/100 * 20 ) = 900 m
u Hills 1 na  ( 1000 *(6-1,5)/100 * 20 ) = 900 m
u Hills 2 na  ( 1000 *(6-0.5)/100 * 27 ) = 1485 m

Edit: s MTB 0.0 jsou vsechny vyse uvedene ekvivalentni metry 3x delsi - u dalkocykloplazu se kazdy vyskovy metr pocita.


« Last Edit: March 01, 2016, 15:00:06 by poutnikl »
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Co bych Ti mozna poradil, je nahradit

Code: [Select]
assign   uphillcostvalue switch equal hills 1 70
                                switch equal hills 2 80
                                switch equal hills 3 60
                                0
assign   uphillcutoffvalue switch equal hills 1 3.0
                                switch equal hills 2 1.0
                                switch equal hills 3 0.5
                                1.5
assign   downhillcutoffvalue    switch equal hills 1 1.5
                                switch equal hills 2 0.5
                                switch equal hills 3 1.5
                                1.5
assign   downhillcostvalue      switch equal hills 1 60
                                switch equal hills 2 80
                                switch equal hills 3  0
                                60 

a

Code: [Select]
assign   MTB_hillcostfactor   multiply -0.3333 ( max -3.0 ( multiply -1.0 ( max 0.0 MTB_factor ) ) )
                  # for MTBfactor <=0 is 0, for MTBfactor >=3 is 1, otherwise 0.3333 * MTBfactor
      # progressively decreases hillcosts to be 0.0 at MTB_factor = 3.0
      # if MTB_factor = 1 , then downhillcost decreases e.g. from 60 to 40
 
assign   downhillcost if ( and consider_elevation set_downhill_cost )  then
        ( multiply ( add 1.0 ( multiply MTB_hillcostfactor -1.0 ) ) downhillcostvalue ) else 0

assign   uphillcost   if ( and consider_elevation set_uphill_cost   )  then
        ( multiply ( add 1.0 ( multiply MTB_hillcostfactor -1.0 ) ) uphillcostvalue ) else 0

assign   uphillcutoff    if ( and consider_elevation set_uphill_cost )   then    uphillcutoffvalue else 1.5
assign   downhillcutoff  if ( and consider_elevation set_downhill_cost ) then  downhillcutoffvalue else 1.5

primo pomoci kodu nize, a laborovat primo s konecnymi cisly.
Tak budes mit penalizaci kopcu nezavislou na MTB faktoru.

Code: [Select]
#ekvivalent hills 1 srazeny MTB factorem 2.0  
assign   downhillcost  20
assign   uphillcost    23
assign   uphillcutoff    3.0
assign   downhillcutoff  1.5
« Last Edit: March 01, 2016, 17:54:10 by poutnikl »
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline Dan S.

  • Apprentice of Locus
  • **
  • Posts: 155
  • Thanked: 3 times
    • View Profile
  • Device: SG S6
#ekvivalent hills 1 srazeny MTB factorem 2.0             
assign   downhillcost  20 - když nastavím 0, tak se sjezdy nebudou vůbec omezovat?
assign   uphillcost    23   - když nastavím vyšší číslo, tak se budou více eliminovat výjezdy?
assign   uphillcutoff    3.0 tohle je tolerance, která se odečítá od skutečného stoupání (nebo klesání u downhillcutoff)?
assign   downhillcutoff  1.5
Locus Pro
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
#ekvivalent hills 1 srazeny MTB factorem 2.0             
assign   downhillcost  20 - když nastavím 0, tak se sjezdy nebudou vůbec omezovat?     
    Nebudou ( kromě rozdilů mezi costfactor a downhillcostfactor
assign   uphillcost    23   - když nastavím vyšší číslo, tak se budou více eliminovat výjezdy?
    Budou
assign   uphillcutoff    3.0 tohle je tolerance, která se odečítá od skutečného stoupání (nebo klesání u downhillcutoff)?
    Ano. a zaroven je to tolerance, ve ktere se priority pocitaji podle costfactor, a ne podle uphillcostfactor/downhillcostfactor  ( nasobek, kterym se prodluzuje fyzicka delka trasy )
assign   downhillcutoff  1.5


Code: [Select]
Pocitana delka = fyzicka delka * costfactor pro rovinu

Code: [Select]
Pocitana delka = fyzicka delka * [ uphillcostfactor  +  ( Stoupani% - uphillcutoff ) /100 * uphillcost ]pro stoupani

Code: [Select]
Pocitana delka = fyzicka delka * [downhillcostfactor  +  ( Klesani% - downhillcutoff ) /100 * downhillcost ]pro klesani

Stoupani/klesani neni dano samotnou OSm mapou, ale vyskovymi radarovymi terennimi daty, ktera jsou soucasti Brouter souboru RD5. Stoupani samotne cesty nekdy byva v mape zmineno jako incline=* , je ale velmi hrube, a musi se zpracovavat v ramci costfactoru. V mych profilech zohledneno neni, protože mimo MTB nema moc vyznam a není časté.
« Last Edit: March 03, 2016, 08:06:02 by poutnikl »
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline Dan S.

  • Apprentice of Locus
  • **
  • Posts: 155
  • Thanked: 3 times
    • View Profile
  • Device: SG S6
díky
Ještě jsem si všiml, že si upravil původní profil Trekking-Poutnik a doplnil tam

 
Code: [Select]
# Version 2.4.3 ALFA - !  added experimental up/downhillcostfactor shifts
čeho se to týká?
Locus Pro
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Já jsem neupravil původní profil, já jsem upravil šablonu profilu, která je ve vývoji. Takže musíš počítat s tím, že se může kdykoliv překopat..   :)  Změna se týká tématu, o kterém jsme se bavili - experimentalní konstantní posun uphillcostfactor/downhillcostfactor vuci costfactor, a to pomoci uphillCFshift / downhillCFshift

Code: [Select]
  assign uphillcostfactor =
max 1.0 
add uphillCFshift
add rawcostfactor2
<promenliva cast>

  assign downhillcostfactor =
max 1.0
add downhillCFshift
add rawcostfactor2
<promenliva cast>

« Last Edit: March 04, 2016, 15:58:26 by poutnikl »
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)
 

Offline Žajdlík Josef

  • Padavan of Locus
  • ***
  • Posts: 331
  • Thanked: 14 times
    • View Profile
  • Device: Xperia M, Alcatel One Touch II, Samsung A3 (2017)
Zdravím Poutníku, dal jsem na help desk Locusu dotaz ohledně doplnění navigace. Jestli jsem ale odpověď Meniona správně pochopil, tvoří se příkazy přímo v Brouteru. Proto se zkusím zeptat zde.
Dotaz je, zda by bylo technicky možné doplnit navigační pokyny. Například když odbočuji ze silnice na cyklotrasu, tak by mohlo být: "Odbočte doprava na cyklotrasu č. XX". U turistiky zase třeba: "Pokračujte po modré" (značce), případně u silnic: "Odbočte doprava na I54".
Není možné něco takového v Brouteru vytvořit? Dost by to zlepšilo srozumitelnost pokynů.
 

Offline poutnikl

  • Padavan of Locus
  • ***
  • Posts: 486
  • Thanked: 45 times
    • View Profile
    • My Brouter Profiles
  • Device: Xiaomi MI A2 (6-128G) / And9-Pie / LocusMap Pro
Co vím od autora Brouteru, tak výhledově s generováním navigačních příkazů počítá, ale kdy se jich dočkáme se zatím neví. Profil sám o sobě je t.č. vygenerovat nemůže.

Co by šlo udělat už teĎ ( ale chtelo by to hodně chytrou hlavu ) je napsat externi utilitu, možná v Excelu chytre VBA makro, která by navigacni prikazy nastrkala do GPX souboru dodatecne, pokud to pak Locus umi pouzit.

Utilitka by vyhodnotila 2 soubory vygenerovaní Brouter Webem: 1/standardní Brouter GPX route ( interne track )  2/CSV soubor, popisujici jednotlive OSM segmenty  cesty. Jednotlive souřadnice GPX route by se porovnaly se souradnicemi v CSV, nejsou-li nahodou hranicnim bodem segmentu. Pokud ano vlozil by se navigační pokyn.

Myslím ale, že konkrétní označení cesty neni v RD5 souborech Brouteru k dispozici, bylo by to spis oznaceni typu cysty, resp tridy cyklostezky, ale uz ne jejiho cisla nebo nazvu.

http://brouter.de/brouter/profiles2/lookups.dat

Viz tez http://help.locusmap.eu/topic/dopln%C4%9Bn%C3%AD-pokyn%C5%AF-navigace-o-zna%C4%8Den%C3%AD-stezek-a-silnic
« Last Edit: March 05, 2016, 19:19:53 by poutnikl »
https://github.com/poutnikl/Brouter-profiles/wiki
When a user digs profiles up from the GitHub repositories,
they will be hopefully wrapped in some wiki knowledge....  :-)