diff --git a/pfaedle.cfg b/pfaedle.cfg index 14712e7..267b89e 100644 --- a/pfaedle.cfg +++ b/pfaedle.cfg @@ -5,7 +5,7 @@ [tram, bus, coach, subway, rail, gondola, funicular, ferry] routing_transition_penalty_fac: 0.0083 -routing_station_move_penalty_fac: 0.0025 +routing_station_move_penalty_fac: 0.0039 station_similarity_classification_method: jaccard-geodist @@ -31,6 +31,12 @@ station_normalize_chain: Ä -> Ae; Ö -> Oe; Ü -> Ue; + À -> A; + Ò -> O; + Ù -> U; + Á -> A; + Ó -> O; + Ú -> U; ä -> ae; ö -> oe; ü -> ue; @@ -205,6 +211,9 @@ line_normalize_chain: # line/number combs ALWAYS without whitespace (T 2 -> T2) ^([a-zA-Z]+) ([0-9]+)$ -> \1\2; + # delete extra line specifier in data for Vitoria-Gasteiz (L2 -> 2) + ^l([0-9a-zA-Z]+)$ -> \1; + track_normalize_chain: '(^| )gleis($| )' -> ''; '(^| )gl\.($| )' -> ''; @@ -383,7 +392,7 @@ routing_full_turn_penalty: 180 # 3 minutes routing_non_station_penalty: 0.4 # If the station name does not match, add this penalty -routing_station_unmatched_penalty: 0.3 +routing_station_unmatched_penalty: 0.4 # If the platform does not match, add this penalty routing_platform_unmatched_penalty: 0.1 @@ -405,9 +414,9 @@ osm_one_way_entry_cost: 300 # If a segment has no matching line attributes, multiply the # time needed to traverse it with the given factor (should # be > 1 for a punishment, values < 1 will prefer unmatching segments) -routing_line_unmatched_time_penalty_fac: 1.5 -routing_line_station_to_unmatched_time_penalty: 1.2 -routing_line_station_from_unmatched_time_penalty: 1.1 +routing_line_unmatched_time_penalty_fac: 1.2 +routing_line_station_to_unmatched_time_penalty: 1.1 +routing_line_station_from_unmatched_time_penalty: 1.05 # If a segment has no line attributes at all, multiply the # time needed to traverse it with the given factor (should @@ -779,9 +788,9 @@ osm_one_way_entry_cost: 300 # If a segment has no matching line attributes, multiply the # time needed to traverse it with the given factor (should # be > 1 for a punishment, values < 1 will prefer unmatching segments) -routing_line_unmatched_time_penalty_fac: 1.5 -routing_line_station_to_unmatched_time_penalty: 1.2 -routing_line_station_from_unmatched_time_penalty: 1.1 +routing_line_unmatched_time_penalty_fac: 1.2 +routing_line_station_to_unmatched_time_penalty: 1.1 +routing_line_station_from_unmatched_time_penalty: 1.05 # If a segment has no line attributes at all, multiply the # time needed to traverse it with the given factor (should @@ -789,7 +798,7 @@ routing_line_station_from_unmatched_time_penalty: 1.1 # routing_no_lines_penalty_fac: 1 # If the station name does not match, add this penalty -routing_station_unmatched_penalty: 0.2 +routing_station_unmatched_penalty: 0.4 # Punishment (in seconds) to add to the distance # function if a vehicle performans a full turn @@ -995,7 +1004,7 @@ routing_full_turn_penalty: 180 # 3 minutes routing_non_station_penalty: 0.4 # If the station name does not match, add this penalty -routing_station_unmatched_penalty: 0.3 +routing_station_unmatched_penalty: 0.4 # Max angle that should be counted as a full turn routing_full_turn_angle: 80 @@ -1010,9 +1019,9 @@ osm_one_way_speed_penalty_fac: 2 # If a segment has no matching line attributes, multiply the # time needed to traverse it with the given factor (should # be > 1 for a punishment, values < 1 will prefer unmatching segments) -routing_line_unmatched_time_penalty_fac: 1.5 -routing_line_station_to_unmatched_time_penalty: 1.2 -routing_line_station_from_unmatched_time_penalty: 1.1 +routing_line_unmatched_time_penalty_fac: 1.2 +routing_line_station_to_unmatched_time_penalty: 1.1 +routing_line_station_from_unmatched_time_penalty: 1.05 # If a segment has no line attributes at all, multiply the # time needed to traverse it with the given factor (should @@ -1130,7 +1139,7 @@ routing_full_turn_penalty: 120 # 2 minutes routing_non_station_penalty: 0.4 # If the station name does not match, add this penalty -routing_station_unmatched_penalty: 0.3 +routing_station_unmatched_penalty: 0.4 # Max angle that should be counted as a full turn routing_full_turn_angle: 80 @@ -1146,8 +1155,8 @@ osm_one_way_speed_penalty_fac: 2 # time needed to traverse it with the given factor (should # be > 1 for a punishment, values < 1 will prefer unmatching segments) routing_line_unmatched_time_penalty_fac: 1.2 -routing_line_station_to_unmatched_time_penalty: 1.15 -routing_line_station_from_unmatched_time_penalty: 1.1 +routing_line_station_to_unmatched_time_penalty: 1.1 +routing_line_station_from_unmatched_time_penalty: 1.05 # If a segment has no line attributes at all, multiply the # time needed to traverse it with the given factor (should @@ -1296,7 +1305,7 @@ routing_full_turn_penalty: 120 # 2 minutes routing_non_station_penalty: 0.4 # If the station name does not match, add this penalty -routing_station_unmatched_penalty: 0.3 +routing_station_unmatched_penalty: 0.4 # Max angle that should be counted as a full turn routing_full_turn_angle: 80 @@ -1312,8 +1321,8 @@ osm_one_way_speed_penalty_fac: 2 # time needed to traverse it with the given factor (should # be > 1 for a punishment, values < 1 will prefer unmatching segments) routing_line_unmatched_time_penalty_fac: 1.2 -routing_line_station_to_unmatched_time_penalty: 1.15 -routing_line_station_from_unmatched_time_penalty: 1.1 +routing_line_station_to_unmatched_time_penalty: 1.1 +routing_line_station_from_unmatched_time_penalty: 1.05 # If a segment has no line attributes at all, multiply the # time needed to traverse it with the given factor (should @@ -1394,7 +1403,7 @@ routing_full_turn_penalty: 120 # 2 minutes routing_non_station_penalty: 0.4 # If the station name does not match, add this penalty -routing_station_unmatched_penalty: 0.3 +routing_station_unmatched_penalty: 0.4 # Max angle that should be counted as a full turn routing_full_turn_angle: 45 diff --git a/src/util/PriorityQueue.tpp b/src/util/PriorityQueue.tpp index a46adbb..611b5c2 100644 --- a/src/util/PriorityQueue.tpp +++ b/src/util/PriorityQueue.tpp @@ -5,12 +5,7 @@ // _____________________________________________________________________________ template void PriorityQueue::push(K key, const V& val) { - // if (_last - key > 0) key = _last; - if (key < _last) { - std::cout << std::setprecision(10) << _last << " vs " << key << std::endl; - key = _last; - } - // assert(key >= _last); + if (key < _last) key = _last; _pq.emplace(std::pair(key, val)); }