# read in custom graph parsing: map-file: 'resources/isle_of_man_2020-03-14/graph.fmi' nodes: - ignored - meta: { info: 'NodeId', id: 'node-id' } - metric: { unit: 'Latitude', id: 'latitude' } - metric: { unit: 'Longitude', id: 'longitude' } edges: will_normalize_metrics_by_mean: true data: - meta: { info: 'EdgeId', id: 'edge-id' } - meta: { info: 'SrcId', id: 'src-id' } - meta: { info: 'DstId', id: 'dst-id' } - metric: { unit: 'Kilometers', id: 'kilometers' } - metric: { unit: 'Hours', id: 'hours' } - metric: { unit: 'LaneCount', id: 'lane-count' } generating: nodes: - meta: { info: 'NodeIdx', id: 'node-idx' } edges: # src-idx - meta: { info: 'SrcIdx', id: 'src-idx' } # src-coords - meta: { info: 'SrcLat', id: 'src-lat' } - meta: { info: 'SrcLon', id: 'src-lon' } # dst-idx - meta: { info: 'DstIdx', id: 'dst-idx' } # dst-coords - meta: { info: 'DstLat', id: 'dst-lat' } - meta: { info: 'DstLon', id: 'dst-lon' } - copy: from: { unit: 'Kilometers', id: 'kilometers' } to: { unit: 'Kilometers', id: 'dummy' } - custom: id: 'workload' unit: 'F64' # is ignored anyways, see optimizing-method # BUT 0.0 would lead to errors due to mean-normalization default: 1.0 # define balancing-configs balancing: seed: 42 number_of_threads: 4 results-dir: 'custom/results/isle_of_man_2020-03-14' iter-0-cfg: 'resources/isle_of_man_2020-03-14/balancing/init.yaml' iter-i-cfg: 'resources/isle_of_man_2020-03-14/balancing/iteration.yaml' optimizing_with: metric-id: 'workload' method: # (iter * old + new) / (iter + 1) # Note, that iter is 0 in the first iteration. averaging number_of_metric-updates: 2 # important to keep non-zero workloads (if generated non-zero): # - zero-edges creates more uninteresting shortcuts -> less performance # - zero-edges makes Dijkstra running longer/inefficiently min_new_metric: 0.1 multi-ch-constructor: fmi-graph: 'graph.fmi' contracted-graph: 'graph.ch.fmi' # This depends on how many metrics are outsourced to edges-info.csv # and includes the new metric as well. dimension: 3 # This is a string, not a float, because it is provided as cmdline-argument contraction-ratio: "99.8" number_of_threads: 4 # If true, the edge's nodes' osm-ids instead of their indices are used. is_printing_osm-ids: true # If true, external edge-ids are piped through the multi-ch-constructor. is_using_external_edge-ids: true monitoring: edges-info: file: 'edges-info.csv' # optional; default is false, meaning # if the graph has normalized metrics, # it will be printed normalized. # If true, metrics will be denormalized before printing. will_denormalize_metrics_by_mean: false with_shortcuts: false ids: - id: 'edge-id' - id: 'src-lat' - id: 'src-lon' - id: 'dst-lat' - id: 'dst-lon' - id: 'kilometers' - id: 'lane-count' # define routing routing: route-pairs-file: 'resources/isle_of_man_2020-03-14/10_000.route-pairs' # algorithm: 'CHDijkstra' algorithm: Explorator: algo: 'CHDijkstra' metrics: - id: 'kilometers' - id: 'hours' tolerated-scale: 1.4 - id: 'workload' # gets deactivated in first iteration # write balanced graph after final iteration writing: graph: map-file: 'balanced_graph.fmi' nodes: - id: 'node-idx' - id: 'node-id' - id: 'latitude' - id: 'longitude' edges: with_shortcuts: false will_denormalize_metrics_by_mean: false ids: - id: 'edge-id' - id: 'src-id' - id: 'dst-id' - id: 'kilometers' - id: 'hours' - id: 'lane-count' - id: 'workload' - id: 'dummy'