From 7bdf6aeb062636b7bce6f8dffb7f2c65966da39e Mon Sep 17 00:00:00 2001 From: Karl Schrab <karl.schrab@fokus.fraunhofer.de> Date: Thu, 21 Mar 2024 14:15:19 +0100 Subject: [PATCH] feat(routing): upgrade to GraphHopper 8.0 (#363) * feat(routing): upgrade GraphHopper to 8.0, several refactorings * fix(routing): fixed speed conversion * fix(routing): allow configuring alternative route parameters * test: reverted accidental commit * feat(routing): reactivate cleanup, move weighting instantiation to weightingFactory * fix(routing): resolved compilation error * fix(routing): removed double configuration of alternative route params * fix(routing): resolve spotbugs warnings * refactor(routing): get rid of ExtendedGraphHopper, load grap in GraphHopperRouting instead * legal: approve third party content * clean: re-added valuable comment about virtual edges * clean: removed unused GraphLoader interface, moved VehicleEncoding to utils * clean: make alternative routing parameters accessible to alter via trafficgen * fix(routing): revive changes overridden by merge * fix(mosaic-routing): calcEdgeWeight should return values as seconds * fix(mosaic-routing): round max speed before cutting decimal places * test(mosaic-routing): use 60 km/h as speed for test graph to restore old behaviour * clean(mosaic-routing): minor cleanup after self-review * fix(routing): fixed waytype encoding and addressed further cleanups after review * fix(routing): suppress spotbugs warning --- NOTICE-THIRD-PARTY.md | 70 +- bundle/src/assembly/mosaic-bundle.xml | 4 +- lib/mosaic-routing/pom.xml | 10 - .../mosaic/lib/routing/CandidateRoute.java | 69 ++ .../lib/routing/database/DatabaseRouting.java | 3 +- .../GraphHopperEdgeProperties.java | 30 +- .../graphhopper/GraphHopperRouting.java | 348 +++++--- .../graphhopper/GraphHopperWeighting.java | 35 +- .../lib/routing/graphhopper/GraphLoader.java | 39 - .../graphhopper/TurnWeightingOptional.java | 62 -- .../algorithm/AStarCamvitChoiceRouting.java | 223 ------ .../AbstractCamvitChoiceRouting.java | 747 ------------------ .../AlternativeRoutesRoutingAlgorithm.java | 42 - .../algorithm/BellmanFordRouting.java | 45 +- .../DijkstraCamvitChoiceRouting.java | 150 ---- .../graphhopper/algorithm/PlateauPath.java | 35 - .../algorithm/RoutingAlgorithmFactory.java | 23 +- .../graphhopper/extended/ExtendedGHPoint.java | 49 -- .../extended/ExtendedGHRequest.java | 75 -- .../extended/ExtendedGHResponse.java | 51 -- .../extended/ExtendedGraphHopper.java | 220 ------ .../{ => util}/DatabaseGraphLoader.java | 116 +-- .../util/OptionalTurnCostProvider.java | 75 ++ .../graphhopper/util/TurnCostAnalyzer.java | 88 +-- .../graphhopper/util/VehicleEncoding.java | 81 ++ .../util/VehicleEncodingManager.java | 94 +++ .../graphhopper/util/WayTypeEncoder.java | 64 +- .../routing/CharlottenburgRoutingTest.java | 99 +++ .../routing/database/DatabaseRoutingTest.java | 2 +- .../graphhopper/GraphHopperMosaicTest.java | 159 ---- .../graphhopper/GraphHopperRoutingTest.java | 3 +- .../graphhopper/GraphHopperWeightingTest.java | 159 ++++ .../AlternativeRoutesRoutingTest.java | 128 +++ .../algorithm/BellmanFordRoutingTest.java | 46 +- .../algorithm/CamvitChoiceRoutingTest.java | 166 ---- .../algorithm/TurnWeightingImplTest.java | 158 ---- .../graphhopper/junit/TestGraphRule.java | 123 ++- .../util/DatabaseGraphLoaderTest.java | 81 +- .../util/TurnCostAnalyzerTest.java | 28 +- .../graphhopper/util/WayTypeEncoderTest.java | 56 ++ .../src/test/resources/charlottenburg.db | Bin 0 -> 1122304 bytes pom.xml | 50 +- .../test/AbstractPerceptionModuleIT.java | 1 + 43 files changed, 1433 insertions(+), 2674 deletions(-) delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphLoader.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/TurnWeightingOptional.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AStarCamvitChoiceRouting.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AbstractCamvitChoiceRouting.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingAlgorithm.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/DijkstraCamvitChoiceRouting.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/PlateauPath.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHPoint.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHRequest.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHResponse.java delete mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGraphHopper.java rename lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/{ => util}/DatabaseGraphLoader.java (69%) create mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/OptionalTurnCostProvider.java create mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncoding.java create mode 100644 lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncodingManager.java create mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/CharlottenburgRoutingTest.java delete mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperMosaicTest.java create mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeightingTest.java create mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingTest.java delete mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/CamvitChoiceRoutingTest.java delete mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/TurnWeightingImplTest.java create mode 100644 lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoderTest.java create mode 100644 lib/mosaic-routing/src/test/resources/charlottenburg.db diff --git a/NOTICE-THIRD-PARTY.md b/NOTICE-THIRD-PARTY.md index 923aab731..1a927766b 100644 --- a/NOTICE-THIRD-PARTY.md +++ b/NOTICE-THIRD-PARTY.md @@ -93,22 +93,22 @@ FindBugs-jsr305 (3.0.2) * Source: https://code.google.com/p/jsr-305/ -GraphHopper API (0.13.0) - - * License: Apache License, Version 2.0 - * Maven artifact: `com.graphhopper:graphhopper-api:0.13.0` - * Project: https://www.graphhopper.com/graphhopper-api - * Source: https://github.com/graphhopper/graphhopper/graphhopper-api - - -GraphHopper Core (0.13.0) +GraphHopper Core (8.0) * License: The Apache Software License, Version 2.0 - * Maven artifact: `com.graphhopper:graphhopper-core:0.13.0` + * Maven artifact: `com.graphhopper:graphhopper-core:8.0` * Project: https://www.graphhopper.com/graphhopper-core * Source: https://github.com/graphhopper/graphhopper/graphhopper-core +GraphHopper Web API (8.0) + + * License: Apache License, Version 2.0 + * Maven artifact: `com.graphhopper:graphhopper-web-api:8.0` + * Project: https://www.graphhopper.com/graphhopper-web-api + * Source: https://github.com/graphhopper/graphhopper/graphhopper-web-api + + Gson (2.10.1) * License: Apache-2.0 @@ -133,46 +133,46 @@ HPPC Collections (0.8.1) * Source: https://github.com/carrotsearch/hppc/hppc -Jackson module: JAXB Annotations (2.9.9) +Jackson-annotations (2.15.0) * License: The Apache Software License, Version 2.0 - * Maven artifact: `com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.9.9` - * Project: https://github.com/FasterXML/jackson-modules-base - * Source: https://github.com/FasterXML/jackson-modules-base/jackson-module-jaxb-annotations - - -Jackson-annotations (2.9.0) - - * License: The Apache Software License, Version 2.0 - * Maven artifact: `com.fasterxml.jackson.core:jackson-annotations:2.9.0` - * Project: http://github.com/FasterXML/jackson + * Maven artifact: `com.fasterxml.jackson.core:jackson-annotations:2.15.0` + * Project: https://github.com/FasterXML/jackson * Source: https://github.com/FasterXML/jackson-annotations -Jackson-core (2.9.9) +Jackson-core (2.15.0) * License: The Apache Software License, Version 2.0 - * Maven artifact: `com.fasterxml.jackson.core:jackson-core:2.9.9` + * Maven artifact: `com.fasterxml.jackson.core:jackson-core:2.15.0` * Project: https://github.com/FasterXML/jackson-core * Source: https://github.com/FasterXML/jackson-core -jackson-databind (2.9.9) +jackson-databind (2.15.0) * License: The Apache Software License, Version 2.0 - * Maven artifact: `com.fasterxml.jackson.core:jackson-databind:2.9.9` - * Project: http://github.com/FasterXML/jackson + * Maven artifact: `com.fasterxml.jackson.core:jackson-databind:2.15.0` + * Project: https://github.com/FasterXML/jackson * Source: https://github.com/FasterXML/jackson-databind -Jackson-dataformat-XML (2.9.9) +Jackson-dataformat-XML (2.15.0) * License: The Apache Software License, Version 2.0 - * Maven artifact: `com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.9.9` - * Project: http://wiki.fasterxml.com/JacksonExtensionXmlDataBinding + * Maven artifact: `com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.15.0` + * Project: https://github.com/FasterXML/jackson-dataformat-xml * Source: https://github.com/FasterXML/jackson-dataformat-xml +Jackson-datatype-jts (2.14) + + * License: The Apache Software License, Version 2.0 + * Maven artifact: `com.graphhopper.external:jackson-datatype-jts:2.14` + * Project: https://github.com/bedatadriven/jackson-datatype-jts/ + * Source: scm:git:https://github.com/bedatadriven/jackson-datatype-jts + + Janino (2.7.5) * License: New BSD License @@ -237,6 +237,14 @@ org.leadpony.justify (1.1.0) * Source: https://github.com/leadpony/justify +org.locationtech.jts:jts-core (1.19.0) + + * License: Eclipse Distribution License - v 1.0, Eclipse Public License, Version 2.0 + * Maven artifact: `org.locationtech.jts:jts-core:1.19.0` + * Project: https://www.locationtech.org/projects/technology.jts/jts-modules/jts-core + * Source: https://github.com/locationtech/jts/jts-modules/jts-core + + Protocol Buffers [Core] (3.8.0) * License: 3-Clause BSD License @@ -269,10 +277,10 @@ Stax2 API (4.2.1) * Source: https://github.com/FasterXML/stax2-api -Woodstox (5.1.0) +Woodstox (6.5.1) * License: The Apache License, Version 2.0 - * Maven artifact: `com.fasterxml.woodstox:woodstox-core:5.1.0` + * Maven artifact: `com.fasterxml.woodstox:woodstox-core:6.5.1` * Project: https://github.com/FasterXML/woodstox * Source: https://github.com/FasterXML/woodstox diff --git a/bundle/src/assembly/mosaic-bundle.xml b/bundle/src/assembly/mosaic-bundle.xml index 7dd9da292..6fcba6a40 100644 --- a/bundle/src/assembly/mosaic-bundle.xml +++ b/bundle/src/assembly/mosaic-bundle.xml @@ -154,9 +154,11 @@ <!-- [END] XML object binding --> <!-- [START] GraphHopper dependencies --> - <include>com.graphhopper:graphhopper-api</include> + <include>com.graphhopper:graphhopper-web-api</include> <include>com.graphhopper:graphhopper-core</include> + <include>com.graphhopper.external:jackson-datatype-jts</include> <include>com.carrotsearch:hppc</include> + <include>org.locationtech.jts:jts-core</include> <!-- [END] GraphHopper dependencies --> <include>com.jcraft:jsch</include> diff --git a/lib/mosaic-routing/pom.xml b/lib/mosaic-routing/pom.xml index a53dccb1e..67b165199 100644 --- a/lib/mosaic-routing/pom.xml +++ b/lib/mosaic-routing/pom.xml @@ -32,16 +32,6 @@ <dependency> <groupId>com.graphhopper</groupId> <artifactId>graphhopper-core</artifactId> - <exclusions> - <exclusion> - <groupId>org.locationtech.jts</groupId> - <artifactId>jts-core</artifactId> - </exclusion> - <exclusion> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>xmlgraphics-commons</artifactId> - </exclusion> - </exclusions> </dependency> <dependency> <groupId>com.google.guava</groupId> diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/CandidateRoute.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/CandidateRoute.java index f8e2a6e7e..58c13d383 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/CandidateRoute.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/CandidateRoute.java @@ -23,25 +23,94 @@ */ public class CandidateRoute { + /** + * The list of connections forming this route. + */ private final List<String> connectionIds; + + /** + * The length in meters of this route. + */ private final double length; + + /** + * The approximated driving time in seconds on this route. + */ private final double time; + /** + * The distance in meters from the start node of the first connection in the connectionIds list, to + * the point the source query was issued. + */ + private final double offsetFromSource; + + /** + * The distance in meters from the point the target query was issued, until the end node of the + * final connection in the connectionIds list. + */ + private final double offsetToTarget; + + /** + * @param connectionIds the list of connection id this route persists of. + * @param length the length in m of this route. + * @param time the approximate travel time in seconds of this route. + */ public CandidateRoute(List<String> connectionIds, double length, double time) { + this(connectionIds, length, time, 0, 0); + } + + /** + * + * @param connectionIds the list of connection id this route persists of. + * @param length the length in m of this route. + * @param time the approximate travel time in seconds of this route. + * @param offsetFromSource the distance in meters from the start node of the first connection in the connectionIds list, to + * the point the source query was issued. + * @param offsetToTarget the distance in meters from the point the target query was issued, until the end node of the + * final connection in the connectionIds list. + */ + public CandidateRoute(List<String> connectionIds, double length, double time, double offsetFromSource, double offsetToTarget) { this.connectionIds = connectionIds; this.length = length; this.time = time; + this.offsetFromSource = offsetFromSource; + this.offsetToTarget = offsetToTarget; } + /** + * @return the list of connection ids forming this route. + */ public List<String> getConnectionIds() { return connectionIds; } + /** + * @return the length in meters of this route. + */ public double getLength() { return length; } + /** + * @return the approximated driving time in seconds on this route. + */ public double getTime() { return time; } + + /** + * @return the distance in meters from the start node of the first connection in the connectionIds list, to + * the point the source query was issued. + */ + public double getOffsetFromSource() { + return offsetFromSource; + } + + /** + * @return the distance in meters from the point the target query was issued, until + * the end node of the final connection in the connectionIds list. + */ + public double getOffsetToTarget() { + return offsetToTarget; + } } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/database/DatabaseRouting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/database/DatabaseRouting.java index e9d91d634..4b9e8409f 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/database/DatabaseRouting.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/database/DatabaseRouting.java @@ -86,8 +86,7 @@ public void initialize(final CRouting configuration, final File baseDirectory) t } //creates an implementation of IRoutingGraph according to the configuration - this.routing = new GraphHopperRouting() - .loadGraphFromDatabase(scenarioDatabase); + this.routing = new GraphHopperRouting(scenarioDatabase); this.routeManager = new RouteManager(this.scenarioDatabase); } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperEdgeProperties.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperEdgeProperties.java index a735837d5..048030d1e 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperEdgeProperties.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperEdgeProperties.java @@ -20,10 +20,12 @@ import org.eclipse.mosaic.lib.routing.EdgeProperties; import org.eclipse.mosaic.lib.routing.RoutingCostFunction; import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; +import org.eclipse.mosaic.lib.routing.graphhopper.util.WayTypeEncoder; import com.google.common.collect.Iterables; -import com.graphhopper.routing.util.FlagEncoder; import com.graphhopper.util.EdgeIteratorState; +import com.graphhopper.util.FetchMode; import org.apache.commons.lang3.Validate; import java.util.Optional; @@ -32,16 +34,18 @@ * Provides properties from the current {@link EdgeIteratorState} or * its belonging {@link Connection} to be used by an {@link RoutingCostFunction}. */ -class GraphHopperEdgeProperties implements EdgeProperties { +public class GraphHopperEdgeProperties implements EdgeProperties { - private final FlagEncoder flagEncoder; + private final VehicleEncoding encoding; + private final WayTypeEncoder wayTypeEncoder; private final GraphhopperToDatabaseMapper graphMapper; private EdgeIteratorState currentEdgeIterator; private boolean reverseRequests; - GraphHopperEdgeProperties(FlagEncoder encoder, GraphhopperToDatabaseMapper graphMapper) { - this.flagEncoder = encoder; + GraphHopperEdgeProperties(VehicleEncoding encoding, WayTypeEncoder wayTypeEncoder, GraphhopperToDatabaseMapper graphMapper) { + this.encoding = encoding; + this.wayTypeEncoder = wayTypeEncoder; this.graphMapper = graphMapper; } @@ -54,9 +58,9 @@ void setCurrentEdgeIterator(EdgeIteratorState currentEdgeIterator, boolean rever @Override public double getSpeed() { Validate.notNull(currentEdgeIterator, "Edge iterator is null"); - return (reverseRequests - ? currentEdgeIterator.getReverse(flagEncoder.getAverageSpeedEnc()) - : currentEdgeIterator.get(flagEncoder.getAverageSpeedEnc())) / 3.6d; + return reverseRequests + ? currentEdgeIterator.getReverse(encoding.speed()) / 3.6 + : currentEdgeIterator.get(encoding.speed()) / 3.6; } @Override @@ -69,8 +73,8 @@ public double getLength() { public Iterable<GeoPoint> getGeometry() { Validate.notNull(currentEdgeIterator, "Edge iterator is null"); return Iterables.transform( - currentEdgeIterator.fetchWayGeometry(3), // 3 = fetch all pillar nodes inclusive the base and adjacent tower node - ghPoint3D -> GeoPoint.latLon(ghPoint3D.getLat(), ghPoint3D.getLon(), ghPoint3D.getElevation()) + currentEdgeIterator.fetchWayGeometry(FetchMode.ALL), // fetches all pillar nodes inclusive the base and adjacent tower node + ghPoint3D -> GeoPoint.latLon(ghPoint3D.getLat(), ghPoint3D.getLon(), ghPoint3D.getEle()) ); } @@ -81,7 +85,11 @@ public String getConnectionId() { @Override public String getWayType() { - return getConnection().map(con -> con.getWay().getType()).orElse(null); + return WayTypeEncoder.decode(getWayTypeEncoded()); + } + + public int getWayTypeEncoded() { + return currentEdgeIterator.get(wayTypeEncoder); } private Optional<Connection> getConnection() { diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRouting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRouting.java index be567a702..bbc81632e 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRouting.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRouting.java @@ -28,42 +28,92 @@ import org.eclipse.mosaic.lib.routing.RoutingCostFunction; import org.eclipse.mosaic.lib.routing.RoutingPosition; import org.eclipse.mosaic.lib.routing.RoutingRequest; -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.AlternativeRoutesRoutingAlgorithm; -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.DijkstraCamvitChoiceRouting; -import org.eclipse.mosaic.lib.routing.graphhopper.extended.ExtendedGraphHopper; +import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.RoutingAlgorithmFactory; +import org.eclipse.mosaic.lib.routing.graphhopper.util.DatabaseGraphLoader; import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; +import org.eclipse.mosaic.lib.routing.graphhopper.util.OptionalTurnCostProvider; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncodingManager; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; -import com.graphhopper.GraphHopper; +import com.graphhopper.config.Profile; import com.graphhopper.routing.Path; -import com.graphhopper.routing.QueryGraph; -import com.graphhopper.routing.util.BikeFlagEncoder; -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.DefaultEdgeFilter; +import com.graphhopper.routing.RoutingAlgorithm; +import com.graphhopper.routing.ev.BooleanEncodedValue; +import com.graphhopper.routing.querygraph.QueryGraph; +import com.graphhopper.routing.querygraph.VirtualEdgeIteratorState; +import com.graphhopper.routing.subnetwork.PrepareRoutingSubnetworks; +import com.graphhopper.routing.util.AccessFilter; import com.graphhopper.routing.util.EdgeFilter; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.routing.weighting.TurnWeighting; -import com.graphhopper.storage.TurnCostExtension; -import com.graphhopper.storage.index.QueryResult; +import com.graphhopper.routing.weighting.Weighting; +import com.graphhopper.storage.BaseGraph; +import com.graphhopper.storage.Graph; +import com.graphhopper.storage.NodeAccess; +import com.graphhopper.storage.RAMDirectory; +import com.graphhopper.storage.index.LocationIndex; +import com.graphhopper.storage.index.LocationIndexTree; +import com.graphhopper.storage.index.Snap; import com.graphhopper.util.DistanceCalc; import com.graphhopper.util.DistancePlaneProjection; import com.graphhopper.util.EdgeIteratorState; +import com.graphhopper.util.PMap; +import com.graphhopper.util.Parameters; import com.graphhopper.util.PointList; import com.graphhopper.util.shapes.GHPoint; +import edu.umd.cs.findbugs.annotations.SuppressWarnings; +import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.ArrayList; +import java.util.Collections; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Set; +@SuppressWarnings(value = "MS_SHOULD_BE_FINAL", justification = "Static fields kept public and adjustable for user customization") public class GraphHopperRouting { + private static final Logger LOG = LoggerFactory.getLogger(GraphHopperRouting.class); + + public static final Profile PROFILE_CAR = new Profile("car").setVehicle("car").setTurnCosts(true); + + public static final Profile PROFILE_BIKE = new Profile("bike").setVehicle("bike").setTurnCosts(false); + + public static final List<Profile> PROFILES = Collections.unmodifiableList(Lists.newArrayList( + PROFILE_CAR, PROFILE_BIKE + )); + + /** + * The minimum number of alternatives to calculate when alternative routes have been requested. + * GraphHopper often returns equal routes, and by calculating more than required we can + * reduce the result to match the requested number of alternatives. + */ + private static final int NUM_ALTERNATIVE_PATHS = 5; + + /** + * Alternative routes may share a maximum of 70% of roads of the best route. + */ + public static double ALTERNATIVE_ROUTES_MAX_SHARE = 0.7; + + /** + * Alternative routes may cost a maximum of 40% more than the best route. + */ + public static double ALTERNATIVE_ROUTES_MAX_WEIGHT = 1.4; + + /** + * Increases the changes to find more alternatives. + */ + public static double ALTERNATIVE_ROUTES_EXPLORATION_FACTOR = 1.3; + + /** + * Specifies the minimum plateau portion of every alternative path that is required. + */ + public static double ALTERNATIVE_ROUTES_PLATEAU_FACTOR = 0.1; + /** * If the distance of the query position to the closest node is lower than this * value, then the closest node is used definitely as the source or target of the route. @@ -76,7 +126,7 @@ public class GraphHopperRouting { * the found route, another connection is added on which the target * point is matched on. */ - public static double TARGET_REQUEST_CONNECTION_THRESHOLD = 5d; + public static final double TARGET_REQUEST_CONNECTION_THRESHOLD = 5d; /** * Sometimes edges are dead ends. In these cases routing fails and invalid @@ -85,151 +135,189 @@ public class GraphHopperRouting { */ private static final double MAX_DISTANCE_TO_TARGET = 500d; - private final Logger log = LoggerFactory.getLogger(getClass()); - - private GraphHopper ghApi; private final DistanceCalc distanceCalculation = new DistancePlaneProjection(); - private GraphhopperToDatabaseMapper graphMapper; - private Database db; + private final GraphhopperToDatabaseMapper graphMapper; + private final Database db; + private final VehicleEncodingManager encoding; + private final BaseGraph graph; + private final LocationIndex locationIndex; - public GraphHopperRouting loadGraphFromDatabase(Database db) { + public GraphHopperRouting(Database db) { this.db = db; - //initialize reader and mapper for database import into graphhopper - GraphLoader reader = new DatabaseGraphLoader(db); graphMapper = new GraphhopperToDatabaseMapper(); + encoding = new VehicleEncodingManager(PROFILES); - ghApi = new ExtendedGraphHopper(reader, graphMapper).forDesktop(); - //we only need a encoder for speed,flag and turn costs for cars - ghApi.setEncodingManager(EncodingManager.create( - new CarFlagEncoder(5, 5, 127), - new BikeFlagEncoder(4, 2, 0) - )); + graph = createGraphFromDatabase(db); + locationIndex = createLocationIndex(); + cleanUpGraph(); - //load graph from database - ghApi.importOrLoad(); + graph.flush(); + } + + private BaseGraph createGraphFromDatabase(Database db) { + final BaseGraph graph = new BaseGraph + .Builder(encoding.getEncodingManager()) + .setDir(new RAMDirectory()) + .set3D(true) + .withTurnCosts(encoding.getEncodingManager().needsTurnCostsSupport()) + .setSegmentSize(-1) + .build(); + + final DatabaseGraphLoader reader = new DatabaseGraphLoader(db); + reader.initialize(graph, encoding, graphMapper); + reader.loadGraph(); + LOG.info("nodes: {}, edges: {}", graph.getNodes(), graph.getEdges()); + return graph; + } + + private LocationIndex createLocationIndex() { + return new LocationIndexTree(graph, graph.getDirectory()) + .setMinResolutionInMeter(300) + .setMaxRegionSearch(4) + .prepareIndex(); + } + + protected void cleanUpGraph() { + new PrepareRoutingSubnetworks(graph, buildSubnetworkRemovalJobs()) + .setMinNetworkSize(200) + .setThreads(1) + .doWork(); + } - return this; + private List<PrepareRoutingSubnetworks.PrepareJob> buildSubnetworkRemovalJobs() { + List<PrepareRoutingSubnetworks.PrepareJob> jobs = new ArrayList<>(); + for (Profile profile : encoding.getAllProfiles()) { + Weighting weighting = createWeighting(profile, RoutingCostFunction.Fastest, false); + jobs.add(new PrepareRoutingSubnetworks.PrepareJob(encoding.getVehicleEncoding(profile.getVehicle()).subnetwork(), weighting)); + } + return jobs; } public List<CandidateRoute> findRoutes(RoutingRequest routingRequest) { - if (ghApi == null) { + if (graph == null) { throw new IllegalStateException("Load database at first"); } - final FlagEncoder flagEncoder; + final Profile profile; if (routingRequest.getRoutingParameters().getVehicleClass() == VehicleClass.Bicycle) { - flagEncoder = ghApi.getEncodingManager().getEncoder("bike"); - } else { - flagEncoder = ghApi.getEncodingManager().getEncoder("car"); - } - - final GraphHopperWeighting graphhopperWeighting = new GraphHopperWeighting(flagEncoder, graphMapper); - - // if there is no cost function given (initial routes), use the default - if (routingRequest.getRoutingParameters().getRoutingCostFunction() == null) { - graphhopperWeighting.setRoutingCostFunction(RoutingCostFunction.Default); + profile = PROFILE_BIKE; } else { - graphhopperWeighting.setRoutingCostFunction(routingRequest.getRoutingParameters().getRoutingCostFunction()); + profile = PROFILE_CAR; } + final VehicleEncoding vehicleEncoding = encoding.getVehicleEncoding(profile.getVehicle()); final RoutingPosition source = routingRequest.getSource(); final RoutingPosition target = routingRequest.getTarget(); - final QueryResult querySource = createQueryForSource(source, flagEncoder); - final QueryResult queryTarget = createQueryForTarget(target, flagEncoder); + final Snap snapSource = createQueryForSource(source, vehicleEncoding.access()); + final Snap snapTarget = createQueryForTarget(target, vehicleEncoding.access()); - if (querySource.getClosestEdge() == null || queryTarget.getClosestEdge() == null) { - log.warn("Could not find a route from {} to {}", routingRequest.getSource(), routingRequest.getTarget()); + if (snapSource.getClosestEdge() == null || snapTarget.getClosestEdge() == null) { + LOG.warn("Could not find a route from {} to {}", routingRequest.getSource(), routingRequest.getTarget()); return Lists.newArrayList(); } - final QueryGraph queryGraph = new QueryGraph(ghApi.getGraphHopperStorage()); - queryGraph.lookup(querySource, queryTarget); + final QueryGraph queryGraph = QueryGraph.create(graph, snapSource, snapTarget); - final TurnWeighting weighting = new TurnWeightingOptional( - graphhopperWeighting, (TurnCostExtension) queryGraph.getExtension(), - routingRequest.getRoutingParameters().isConsiderTurnCosts(), - routingRequest.getRoutingParameters().getRestrictionCosts() - ); - - // create algorithm - final AlternativeRoutesRoutingAlgorithm algo = new DijkstraCamvitChoiceRouting(queryGraph, weighting); - algo.setRequestAlternatives(routingRequest.getRoutingParameters().getNumAlternativeRoutes()); + final int numberOfAlternatives = routingRequest.getRoutingParameters().getNumAlternativeRoutes(); + final PMap algoHints = new PMap(); + if (numberOfAlternatives > 0) { + // We calculate more alternative routes than required, since GraphHopper often seem to return equal alternatives + algoHints.putObject(Parameters.Algorithms.AltRoute.MAX_PATHS, Math.max(numberOfAlternatives, NUM_ALTERNATIVE_PATHS) + 1); + } - final List<Path> paths = new ArrayList<>(); + final Weighting weighting = createWeighting(profile, + routingRequest.getRoutingParameters().getRoutingCostFunction(), + routingRequest.getRoutingParameters().isConsiderTurnCosts() + ); - // Calculates all paths and returns the best one - paths.add(algo.calcPath(querySource.getClosestNode(), queryTarget.getClosestNode())); + final RoutingAlgorithm algo = RoutingAlgorithmFactory.DEFAULT.createAlgorithm( + queryGraph, queryGraph.wrapWeighting(weighting), algoHints + ); - //add alternative paths to path set - paths.addAll(algo.getAlternativePaths()); + final List<Path> paths = algo.calcPaths(snapSource.getClosestNode(), snapTarget.getClosestNode()); final Set<String> duplicateSet = new HashSet<>(); final List<CandidateRoute> result = new ArrayList<>(); // convert paths to routes for (final Path path : paths) { - final CandidateRoute route = convertPath(path, queryGraph, querySource, queryTarget, source, target); + if (result.size() > numberOfAlternatives) { + break; + } + final CandidateRoute route = convertPath(queryGraph, path, source, target); if (route != null && !route.getConnectionIds().isEmpty() && checkRouteOnRequiredSourceConnection(route, source) - && checkForDuplicate(route, duplicateSet)) { + && checkForDuplicate(route, duplicateSet) + ) { result.add(route); - } else if (route != null && log.isDebugEnabled()) { - log.debug("Path is invalid and will be ignored [" + StringUtils.join(route.getConnectionIds(), ",") + "]"); + } else if (route != null && LOG.isDebugEnabled()) { + LOG.debug("Path is invalid and will be ignored [" + StringUtils.join(route.getConnectionIds(), ",") + "]"); } } return result; } - private QueryResult createQueryForTarget(RoutingPosition target, FlagEncoder flagEncoder) { - final EdgeFilter toEdgeFilter = createEdgeFilterForRoutingPosition(target, flagEncoder); - QueryResult queryTarget = ghApi.getLocationIndex().findClosest(target.getPosition().getLatitude(), target.getPosition().getLongitude(), toEdgeFilter); + private Weighting createWeighting(Profile profile, RoutingCostFunction costFunction, boolean withTurnCosts) { + final VehicleEncoding vehicleEncoding = encoding.getVehicleEncoding(profile.getVehicle()); + final OptionalTurnCostProvider turnCostProvider = new OptionalTurnCostProvider(vehicleEncoding, graph.getTurnCostStorage()); + if (!withTurnCosts) { + turnCostProvider.disableTurnCosts(); + } + return new GraphHopperWeighting(vehicleEncoding, encoding.wayType(), turnCostProvider, graphMapper) + .setRoutingCostFunction(ObjectUtils.defaultIfNull(costFunction, RoutingCostFunction.Default)); + } + + private Snap createQueryForTarget(RoutingPosition target, BooleanEncodedValue accessEnc) { + final EdgeFilter toEdgeFilter = createEdgeFilterForRoutingPosition(target, accessEnc); + Snap queryTarget = locationIndex.findClosest(target.getPosition().getLatitude(), target.getPosition().getLongitude(), toEdgeFilter); if (target.getConnectionId() != null) { - return fixQueryResultIfNoClosestEdgeFound(queryTarget, target, flagEncoder); + return fixQueryResultIfNoClosestEdgeFound(queryTarget, target, accessEnc); } else { return fixQueryResultIfSnappedPointIsCloseToTowerNode(queryTarget, target); } } - private QueryResult createQueryForSource(RoutingPosition source, FlagEncoder flagEncoder) { - final EdgeFilter fromEdgeFilter = createEdgeFilterForRoutingPosition(source, flagEncoder); - QueryResult querySource = ghApi.getLocationIndex().findClosest(source.getPosition().getLatitude(), source.getPosition().getLongitude(), fromEdgeFilter); + private Snap createQueryForSource(RoutingPosition source, BooleanEncodedValue accessEnc) { + final EdgeFilter fromEdgeFilter = createEdgeFilterForRoutingPosition(source, accessEnc); + Snap querySource = locationIndex.findClosest(source.getPosition().getLatitude(), source.getPosition().getLongitude(), fromEdgeFilter); if (source.getConnectionId() != null) { querySource = fixQueryResultIfSnappedPointIsTowerNode(querySource, source, fromEdgeFilter); - return fixQueryResultIfNoClosestEdgeFound(querySource, source, flagEncoder); + return fixQueryResultIfNoClosestEdgeFound(querySource, source, accessEnc); } else { return fixQueryResultIfSnappedPointIsCloseToTowerNode(querySource, source); } } - private QueryResult fixQueryResultIfSnappedPointIsCloseToTowerNode(QueryResult queryResult, RoutingPosition target) { - if (queryResult.getSnappedPosition() == QueryResult.Position.TOWER || target.getConnectionId() != null) { + private Snap fixQueryResultIfSnappedPointIsCloseToTowerNode(Snap queryResult, RoutingPosition target) { + if (queryResult.getSnappedPosition() == Snap.Position.TOWER || target.getConnectionId() != null) { return queryResult; } Node closestNode = graphMapper.toNode(queryResult.getClosestNode()); /* If the query result is snapped to an edge, but the matched node is very close to the query, than we use the actual closest node * as the target of the route.*/ if (closestNode != null && target.getPosition().distanceTo(closestNode.getPosition()) < TARGET_NODE_QUERY_DISTANCE) { - queryResult.setSnappedPosition(QueryResult.Position.TOWER); + queryResult.setSnappedPosition(Snap.Position.TOWER); } return queryResult; } - private QueryResult fixQueryResultIfNoClosestEdgeFound(QueryResult queryResult, RoutingPosition routingPosition, FlagEncoder flagEncoder) { + private Snap fixQueryResultIfNoClosestEdgeFound(Snap queryResult, RoutingPosition routingPosition, BooleanEncodedValue accessEnc) { if (queryResult.getClosestEdge() == null) { - log.warn("Wrong routing request: The from-connection {} does not fit with the given position {}", routingPosition.getConnectionId(), routingPosition.getPosition()); - return ghApi.getLocationIndex().findClosest( - routingPosition.getPosition().getLatitude(), routingPosition.getPosition().getLongitude(), DefaultEdgeFilter.allEdges(flagEncoder) + LOG.warn("Wrong routing request: The from-connection {} does not fit with the given position {}", routingPosition.getConnectionId(), routingPosition.getPosition()); + + return locationIndex.findClosest( + routingPosition.getPosition().getLatitude(), routingPosition.getPosition().getLongitude(), AccessFilter.allEdges(accessEnc) ); } return queryResult; } - private QueryResult fixQueryResultIfSnappedPointIsTowerNode(QueryResult queryResult, RoutingPosition routingPosition, EdgeFilter fromEdgeFilter) { - if (queryResult.getSnappedPosition() != QueryResult.Position.TOWER) { + private Snap fixQueryResultIfSnappedPointIsTowerNode(Snap queryResult, RoutingPosition routingPosition, EdgeFilter fromEdgeFilter) { + if (queryResult.getSnappedPosition() != Snap.Position.TOWER) { return queryResult; } /* If the requested position is in front or behind the edge it is mapped either on the start or end of the edge (one of the tower nodes). @@ -244,7 +332,7 @@ private QueryResult fixQueryResultIfSnappedPointIsTowerNode(QueryResult queryRes queryConnection.getFrom().getPosition(), queryConnection.getTo().getPosition() ); } - return ghApi.getLocationIndex().findClosest( + return locationIndex.findClosest( alternativeQueryPosition.getLatitude(), alternativeQueryPosition.getLongitude(), fromEdgeFilter ); } @@ -261,18 +349,25 @@ private boolean checkForDuplicate(CandidateRoute route, Set<String> duplicateSet return duplicateSet.add(nodeIdList); } - private EdgeFilter createEdgeFilterForRoutingPosition(final RoutingPosition position, final FlagEncoder flagEncoder) { + private boolean checkRouteOnRequiredSourceConnection(CandidateRoute route, RoutingPosition source) { + if (source.getConnectionId() != null) { + return source.getConnectionId().equals(route.getConnectionIds().get(0)); + } + return true; + } + + private EdgeFilter createEdgeFilterForRoutingPosition(final RoutingPosition position, final BooleanEncodedValue accessEnc) { if (position.getConnectionId() == null) { - return DefaultEdgeFilter.allEdges(flagEncoder); + return AccessFilter.allEdges(accessEnc); } final int forcedEdge = graphMapper.fromConnection(db.getConnection(position.getConnectionId())); if (forcedEdge < 0) { - return DefaultEdgeFilter.allEdges(flagEncoder); + return AccessFilter.allEdges(accessEnc); } return edgeState -> edgeState.getEdge() == forcedEdge; } - private CandidateRoute convertPath(Path newPath, QueryGraph queryGraph, QueryResult source, QueryResult target, RoutingPosition sourcePosition, RoutingPosition targetPosition) { + private CandidateRoute convertPath(Graph graph, Path newPath, RoutingPosition sourcePosition, RoutingPosition targetPosition) { PointList pointList = newPath.calcPoints(); if (pointList.isEmpty()) { return null; @@ -290,26 +385,25 @@ private CandidateRoute convertPath(Path newPath, QueryGraph queryGraph, QueryRes List<String> pathConnections = new ArrayList<>(); + double offsetFromSource = 0; + int lastNode = -1; + Connection lastConnection = null; + NodeAccess nodes = graph.getNodeAccess(); + while (edgesIt.hasNext()) { - EdgeIteratorState ghEdge = edgesIt.next(); + EdgeIteratorState origEdge = edgesIt.next(); + EdgeIteratorState currEdge = origEdge; /* * If the requested source or target point is in the middle of the road, an artificial node * (and artificial edges) is created in the QueryGraph. As a consequence, the first - * and/or last edge of the route might be such virtual edge. We use the queried source - * and target to extract the original edge where the requested points have been matched on. + * and/or last edge of the route might be such virtual edge, which must be converted to its original edge. */ - if (queryGraph.isVirtualEdge(ghEdge.getEdge())) { - if (pathConnections.isEmpty() && queryGraph.isVirtualNode(source.getClosestNode())) { - ghEdge = queryGraph.getOriginalEdgeFromVirtNode(source.getClosestNode()); - } else if (!edgesIt.hasNext() && queryGraph.isVirtualNode(target.getClosestNode())) { - ghEdge = queryGraph.getOriginalEdgeFromVirtNode(target.getClosestNode()); - } else { - continue; - } + if (currEdge instanceof VirtualEdgeIteratorState) { + currEdge = graph.getEdgeIteratorStateForKey(((VirtualEdgeIteratorState) origEdge).getOriginalEdgeKey()); } - Connection con = graphMapper.toConnection(ghEdge.getEdge()); + Connection con = graphMapper.toConnection(currEdge.getEdge()); if (con != null) { /* * In some cases, virtual edges are created at the target even though they are only some @@ -323,20 +417,56 @@ private CandidateRoute convertPath(Path newPath, QueryGraph queryGraph, QueryRes continue; } + if (pathConnections.isEmpty()) { + offsetFromSource = calcOffset(con, origEdge.getBaseNode(), nodes); + } + pathConnections.add(con.getId()); + lastNode = origEdge.getAdjNode(); + lastConnection = con; if (Double.isInfinite(newPath.getWeight())) { - log.warn( + LOG.warn( "Something went wrong during path search: The found route has infinite weight. Maybe there's a turn restriction or unconnected " + "sub-graphs in the network. Route will be ignored."); return null; } } else { - log.debug(String.format("A connection could be resolved by internal ID %d.", ghEdge.getEdge())); + LOG.debug(String.format("A connection could be resolved by internal ID %d.", origEdge.getEdge())); } } + + double offsetToTarget = 0; + if (lastConnection != null) { + offsetToTarget = lastConnection.getLength() - calcOffset(lastConnection, lastNode, nodes); + } + fixFirstConnectionOfPathIfNotAsQueried(sourcePosition, pathConnections); - return new CandidateRoute(pathConnections, newPath.getDistance(), newPath.getTime() / (double) 1000); + return new CandidateRoute( + pathConnections, + newPath.getDistance(), + newPath.getTime() / 1000.0, + offsetFromSource, + offsetToTarget + ); + } + + private double calcOffset(Connection con, int node, NodeAccess nodes) { + GeoPoint onConnection = GeoPoint.latLon(nodes.getLat(node), nodes.getLon(node)); + double offset = 0; + Node prev = null; + for (Node curr : con.getNodes()) { + if (prev != null) { + double distancePrevToCurr = prev.getPosition().distanceTo(curr.getPosition()); + double distancePrevToNode = prev.getPosition().distanceTo(onConnection); + if (distancePrevToNode < distancePrevToCurr) { + return Math.max(con.getLength(), offset + distancePrevToNode); + } + offset += distancePrevToCurr; + } + prev = curr; + } + return con.getLength(); } /** @@ -356,12 +486,4 @@ private void fixFirstConnectionOfPathIfNotAsQueried(RoutingPosition sourcePositi } } } - - private boolean checkRouteOnRequiredSourceConnection(CandidateRoute route, RoutingPosition source) { - if (source.getConnectionId() != null) { - return source.getConnectionId().equals(route.getConnectionIds().get(0)); - } - return true; - } - } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeighting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeighting.java index 2aae49a79..778ae9753 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeighting.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeighting.java @@ -17,9 +17,11 @@ import org.eclipse.mosaic.lib.routing.RoutingCostFunction; import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; +import org.eclipse.mosaic.lib.routing.graphhopper.util.WayTypeEncoder; -import com.graphhopper.routing.util.FlagEncoder; import com.graphhopper.routing.weighting.AbstractWeighting; +import com.graphhopper.routing.weighting.TurnCostProvider; import com.graphhopper.util.EdgeIteratorState; /** @@ -35,10 +37,15 @@ public class GraphHopperWeighting extends AbstractWeighting { private RoutingCostFunction routingCostFunction; - public GraphHopperWeighting(FlagEncoder encoder, GraphhopperToDatabaseMapper graphMapper) { - super(encoder); - this.edgePropertiesState = new GraphHopperEdgeProperties(encoder, graphMapper); - this.maxSpeed = encoder.getMaxSpeed() / 3.6; // getMaxSpeed returns the speed in km/h + public GraphHopperWeighting(VehicleEncoding vehicleEncoding, WayTypeEncoder wayTypeEncoder, TurnCostProvider turnCostProvider, GraphhopperToDatabaseMapper graphMapper) { + super(vehicleEncoding.access(), vehicleEncoding.speed(), turnCostProvider); + this.edgePropertiesState = new GraphHopperEdgeProperties(vehicleEncoding, wayTypeEncoder, graphMapper); + this.maxSpeed = speedEnc.getMaxOrMaxStorableDecimal() / 3.6; // getMaxOrMaxStorableDecimal returns the speed in km/h + } + + public GraphHopperWeighting setRoutingCostFunction(RoutingCostFunction routingCostFunction) { + this.routingCostFunction = routingCostFunction; + return this; } @Override @@ -47,7 +54,15 @@ public double getMinWeight(double distance) { } @Override - public double calcWeight(EdgeIteratorState edge, boolean reverse, int prevOrNextEdgeId) { + public double calcTurnWeight(int inEdge, int viaNode, int outEdge) { + return super.calcTurnWeight(inEdge, viaNode, outEdge); + } + + @Override + public double calcEdgeWeight(EdgeIteratorState edge, boolean reverse) { + if (reverse ? !edge.getReverse(accessEnc) : !edge.get(accessEnc)) { + return Double.POSITIVE_INFINITY; + } synchronized (edgePropertiesState) { edgePropertiesState.setCurrentEdgeIterator(edge, reverse); if (routingCostFunction == null) { @@ -60,14 +75,10 @@ public double calcWeight(EdgeIteratorState edge, boolean reverse, int prevOrNext public String getName() { if (routingCostFunction == null) { - return "null|" + flagEncoder; + return "fastest"; } else { - return routingCostFunction.getCostFunctionName().toLowerCase() + "|" + flagEncoder; + return routingCostFunction.getCostFunctionName().toLowerCase(); } } - public void setRoutingCostFunction(RoutingCostFunction routingCostFunction) { - this.routingCostFunction = routingCostFunction; - } - } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphLoader.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphLoader.java deleted file mode 100644 index 90dc388c5..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphLoader.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper; - -import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; - -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.storage.GraphHopperStorage; - -/** - * Encapsulates the import procedure of a MOSAIC scenario database into a GraphHopper readable GraphStorage. - */ -public interface GraphLoader { - - /** - * Initializes the import process. - * - */ - void initialize(GraphHopperStorage graph, EncodingManager encodingManager, GraphhopperToDatabaseMapper mapper); - - /** - * Creates a graph. - */ - void loadGraph(); - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/TurnWeightingOptional.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/TurnWeightingOptional.java deleted file mode 100644 index 939037a67..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/TurnWeightingOptional.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper; - -import com.graphhopper.routing.weighting.TurnWeighting; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.TurnCostExtension; - -/** - * Extension of TurnWeighting which allows to disable - * the consideration of turn costs while still considering turn restrictions. - */ -class TurnWeightingOptional extends TurnWeighting { - - private final boolean enableTurnCosts; - private final TurnCostExtension tcExt; - private final double restrictedCosts; - - /** - * Creates a {@link TurnWeighting} extension which disables or enables the consideration of turn costs, but always - * considers turn restrictions. - * - * @param superWeighting the basic weighting implementation for road weighting - * @param turnCostExt the turn cost extension of the graph - * @param enableTurnCosts if <code>true</code>, turn costs and restrictions are considered, - * if <code>false</code>, only turn restrictions are considered - * @param restrictedCosts the costs to apply if a turn is restricted (use Double.POSITIVE_INFINITY to forbid turn) - */ - public TurnWeightingOptional(Weighting superWeighting, TurnCostExtension turnCostExt, boolean enableTurnCosts, double restrictedCosts) { - super(superWeighting, turnCostExt); - this.tcExt = turnCostExt; - this.restrictedCosts = restrictedCosts; - this.enableTurnCosts = enableTurnCosts; - } - - @Override - public double calcTurnWeight(int edgeFrom, int nodeVia, int edgeTo) { - long turnFlags = tcExt.getTurnCostFlags(edgeFrom, nodeVia, edgeTo); - if (getFlagEncoder().isTurnRestricted(turnFlags)) { - return restrictedCosts; - } - - if (enableTurnCosts) { - return getFlagEncoder().getTurnCost(turnFlags); - } - return 0; - } - -} \ No newline at end of file diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AStarCamvitChoiceRouting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AStarCamvitChoiceRouting.java deleted file mode 100644 index 72d44a6b9..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AStarCamvitChoiceRouting.java +++ /dev/null @@ -1,223 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import com.carrotsearch.hppc.IntObjectMap; -import com.graphhopper.routing.weighting.BeelineWeightApproximator; -import com.graphhopper.routing.weighting.ConsistentWeightApproximator; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.storage.SPTEntry; -import com.graphhopper.util.EdgeExplorer; -import com.graphhopper.util.EdgeIterator; -import com.graphhopper.util.Helper; -import edu.umd.cs.findbugs.annotations.SuppressWarnings; - -import java.util.PriorityQueue; - -/** - * Calculates alternative routes next to the best route, by using bidirectional AStar as routing - * engine and 'camvit choice routing' afterwards to determine alternative routes. - * - * @see AbstractCamvitChoiceRouting - * @see <a href="http://www.camvit.com/camvit-technical-english/Camvit-Choice-Routing-Explanation-english.pdf" /> - */ -public class AStarCamvitChoiceRouting extends AbstractCamvitChoiceRouting { - - private final ConsistentWeightApproximator weightApprox; - - private int visitedToCount; - private int visitedFromCount; - - /** - * Creates a new {@link AStarCamvitChoiceRouting} object with a graph and the weighting of it. - * - * @param g The graph to check for suitability as alternative route. - * @param weighting The weighting of the given graph. - */ - public AStarCamvitChoiceRouting(Graph g, Weighting weighting) { - super(g, weighting); - BeelineWeightApproximator defaultApprox = new BeelineWeightApproximator(nodeAccess, weighting); - defaultApprox.setDistanceCalc(Helper.DIST_PLANE); - weightApprox = new ConsistentWeightApproximator(defaultApprox); - } - - @Override - public AbstractCamvitChoiceRouting initFrom(int from) { - - super.initFrom(from); - - weightApprox.setFrom(from); - - if (currTo != null) { - currFrom.weight += weightApprox.approximate(currFrom.adjNode, false); - currTo.weight += weightApprox.approximate(currTo.adjNode, true); - } - return this; - } - - @Override - public AbstractCamvitChoiceRouting initTo(int to) { - - super.initTo(to); - - weightApprox.setTo(to); - - if (currFrom != null) { - currFrom.weight += weightApprox.approximate(currFrom.adjNode, false); - currTo.weight += weightApprox.approximate(currTo.adjNode, true); - } - - return this; - } - - private void fillEdges(SPTEntry curr, PriorityQueue<SPTEntry> prioQueueOpenSet, - IntObjectMap<SPTEntry> shortestWeightMap, EdgeExplorer explorer, boolean reverse) { - - int currNode = curr.adjNode; - EdgeIterator iter = explorer.setBaseNode(currNode); - while (iter.next()) { - if (!accept(iter, curr)) { - continue; - } - - int traversalId = traversalMode.createTraversalId(iter, reverse); - double alreadyVisitedWeight = weighting.calcWeight(iter, reverse, curr.edge) + curr.weight; - - if (Double.isInfinite(alreadyVisitedWeight)) { - continue; - } - - AStarSPTEntry de = (AStarSPTEntry) shortestWeightMap.get(traversalId); - if (de == null || de.weight > alreadyVisitedWeight) { - - double currWeightToGoal = weightApprox.approximate(iter.getAdjNode(), reverse); - double estimationFullDist = alreadyVisitedWeight + currWeightToGoal; - if (de == null) { - de = new AStarSPTEntry(iter.getEdge(), iter.getAdjNode(), alreadyVisitedWeight, estimationFullDist); - shortestWeightMap.put(traversalId, de); - } else { - assert (de.weight > estimationFullDist) : "Inconsistent distance estimate"; - prioQueueOpenSet.remove(de); - de.edge = iter.getEdge(); - de.weight = alreadyVisitedWeight; - de.distanceEstimation = estimationFullDist; - } - - de.parent = curr; - prioQueueOpenSet.add(de); - } - } - } - - /** - * Creates the shortest path tree starting at the origin node. - * - * @return <code>true</code> if creating the source tree has been finished, otherwise <code>false</code>. - */ - protected boolean fillEdgesFrom(IntObjectMap<SPTEntry> weights, PriorityQueue<SPTEntry> heap) { - if (currFrom != null) { - if (finished(currFrom, to)) { - return true; - } - - fillEdges(currFrom, heap, weights, outEdgeExplorer, false); - visitedFromCount++; - if (heap.isEmpty()) { - return true; - } - currFrom = heap.poll(); - - } else if (currTo == null) { - //creating the source tree is finished when target tree has been finished as well - return true; - } - return false; - } - - protected boolean finished(SPTEntry currEdge, int to) { - return currEdge.adjNode == to; - } - - /** - * Creates the shortest path tree in reverse direction starting at the target node. - * - * @return <code>true</code> if creating the target tree has been finished, otherwise - * <code>false</code> - */ - protected boolean fillEdgesTo(IntObjectMap<SPTEntry> weights, PriorityQueue<SPTEntry> heap) { - if (currTo != null) { - if (finished(currTo, from)) { - return true; - } - fillEdges(currTo, heap, weights, inEdgeExplorer, true); - visitedToCount++; - if (heap.isEmpty()) { - return true; - } - currTo = heap.poll(); - } else if (currFrom == null) { - //creating the target tree is finished when source tree has been finished as well - return true; - } - return false; - } - - @Override - public int getVisitedNodes() { - return visitedFromCount + visitedToCount; - } - - @Override - public String getName() { - return "choiceroutingAstar"; - } - - @Override - SPTEntry createEdge(int edgeId, int endNode, double distance) { - return new AStarSPTEntry(edgeId, endNode, distance, 0); - } - - - /** - * extension of the {@link SPTEntry} which uses - * the distanceEstimation of AStar to sort existing - * {@link SPTEntry}s instead of the actual weight. - */ - @SuppressWarnings( - value="EQ_COMPARETO_USE_OBJECT_EQUALS", - justification = "Seems to be OK here, as extended class does not implement equals/hashCode anyhow. " - ) - private static class AStarSPTEntry extends SPTEntry { - - private double distanceEstimation; - - private AStarSPTEntry(int edgeId, int node, double weightForHeap, double distanceEstimation) { - super(edgeId, node, weightForHeap); - // round makes distance smaller => heuristic should underestimate the distance! - this.distanceEstimation = (float) distanceEstimation; - } - - - public int compareTo(SPTEntry o) { - if (o instanceof AStarSPTEntry) { - return Double.compare(this.distanceEstimation, ((AStarSPTEntry) o).distanceEstimation); - } else { - return super.compareTo(o); - } - } - } -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AbstractCamvitChoiceRouting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AbstractCamvitChoiceRouting.java deleted file mode 100644 index b2a04bbe5..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AbstractCamvitChoiceRouting.java +++ /dev/null @@ -1,747 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import com.carrotsearch.hppc.IntObjectHashMap; -import com.carrotsearch.hppc.IntObjectMap; -import com.carrotsearch.hppc.cursors.IntCursor; -import com.graphhopper.routing.AbstractRoutingAlgorithm; -import com.graphhopper.routing.Path; -import com.graphhopper.routing.util.TraversalMode; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.storage.SPTEntry; -import com.graphhopper.util.EdgeIterator; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.ArrayList; -import java.util.Comparator; -import java.util.HashSet; -import java.util.List; -import java.util.Locale; -import java.util.PriorityQueue; -import java.util.Set; - -/** - * Implementation of the 'Camvit Choice Routing' algorithm to calculate alternative routes next to - * the best route. After building the source tree and target tree by the router on top of this - * class, edges which are in both trees will be determined. Afterwards, all of those edges which are - * connected to each other will be collected in a set of so called 'plateaus'. Those plateaus are - * either good (many edges / highest weight) or bad (few edges / low weight). One plateau can be - * used to calculate an alternative path from A to B going trough this plateau, by traversing from - * the start of a plateau to A by using the target tree and by traversing from the end of the - * plateau to B by using the source tree. By choosing the best plateau a good alternative route next - * to the best route can be found. - * - * @see <a href="http://www.camvit.com/camvit-technical-english/Camvit-Choice-Routing-Explanation-english.pdf" /> - */ -public abstract class AbstractCamvitChoiceRouting extends AbstractRoutingAlgorithm implements AlternativeRoutesRoutingAlgorithm { - - private double constraintMaxShare = 0.9d; - private double constraintMaxStretch = 0.8d; - private double constraintMaxUniformlyBoundedStretch = 0.7d; - private double constraintThresholdLocalOptimality = 0.3d; - private double constraintMinLocalOptimality = 0.1d; - - private final Logger logger = LoggerFactory.getLogger(getClass()); - - protected int from; - protected int to; - - private IntObjectMap<SPTEntry> shortestWeightsFrom; - private IntObjectMap<SPTEntry> shortestWeightsTo; - - private PriorityQueue<SPTEntry> heapFrom; - private PriorityQueue<SPTEntry> heapTo; - - private boolean alreadyRun; - SPTEntry currFrom; - SPTEntry currTo; - - private PriorityQueue<Plateau> plateaus; - private PriorityQueue<RelEdge> relevantEdgesQ; - private HashSet<Integer> relevantEdgesIDs; - - private int requestAlternatives = 0; - - private List<Path> alternativePaths; - - AbstractCamvitChoiceRouting(Graph g, Weighting type) { - super(g, type, TraversalMode.EDGE_BASED); - initCollections(Math.max(20, graph.getNodes())); - } - - /** - * initializes all required collections and maps. - * - * @param nodes the number of nodes in the graph - */ - private void initCollections(int nodes) { - try { - heapFrom = new PriorityQueue<>(nodes / 10); - shortestWeightsFrom = new IntObjectHashMap<>(nodes / 10); - - heapTo = new PriorityQueue<>(nodes / 10); - shortestWeightsTo = new IntObjectHashMap<>(nodes / 10); - } catch (OutOfMemoryError e) { - logger.error("Not sufficient memory", e); - throw e; - } - } - - - - /** - * Returns the identifier of an already traversed edge entry. In edge-based algorithms it is - * usually the id of the edge, but it might be extended by a flag which signalizes the direction - * of the edge (if algorithm is direction sensitive)- - * - * @return the identifier of an already traversed edge entry. - */ - private int createTraversalIdentifier(SPTEntry iter, boolean reverse) { - if (iter.parent != null) { - return traversalMode.createTraversalId(iter.parent.adjNode, iter.adjNode, iter.edge, reverse); - } - return iter.edge; - - } - - - /** - * Determines, if the currently traversed edge should be continued with. - * - * @param edge the edge which is currently being traversed. - * @param currEdge the preceding edge. - * @return <code>true</code> if this edge is acceptable to continue with. - */ - protected boolean accept(EdgeIterator edge, SPTEntry currEdge) { - return (currEdge.edge == EdgeIterator.NO_EDGE || edge.getEdge() != currEdge.edge) && super.accept(edge, currEdge.edge); - } - - /** - * Initializes the routing process by announcing the source node. - * - * @param from the source node - */ - public AbstractCamvitChoiceRouting initFrom(int from) { - this.from = from; - currFrom = createEdge(EdgeIterator.NO_EDGE, from, 0); - return this; - } - - /** - * Creates the first initial edge. - * - * @return an instance of CRAStarEdge - */ - abstract SPTEntry createEdge(int edgeId, int endNode, double distance); - - /** - * Initializes the routing process by announcing the target node. - * - * @param to the target node. - */ - public AbstractCamvitChoiceRouting initTo(int to) { - this.to = to; - currTo = createEdge(EdgeIterator.NO_EDGE, to, 0); - return this; - } - - @Override - public void setRequestAlternatives(int alternatives) { - this.requestAlternatives = alternatives; - } - - /** - * Calculates the best and alternative paths between the specified nodes. - * - * @param from Start of the path. - * @param to End of the path. - * @return The calculated path. - */ - @Override - public Path calcPath(int from, int to) { - if (alreadyRun) { - throw new IllegalStateException("Create a new instance per call"); - } - alreadyRun = true; - - alternativePaths = new ArrayList<Path>(); - - logger.debug("calc " + (requestAlternatives + 1) + " paths from " + from + " to " + to); - - if (from == to) { - return new Path(graph, weighting); - } - - initFrom(from); - initTo(to); - - boolean finished = false; - while (!finished) { - finished = fillEdgesFrom(shortestWeightsFrom, heapFrom) & fillEdgesTo(shortestWeightsTo, - heapTo); - } - - PlateauPath path = extractPath(); - - if (requestAlternatives > 0) { - // determine edges which has been traversed in both source and target - // tree - determineRelevantEdges(path.getWeight()); - - // determine edges which are connected with each other - determinePlateaus(path.getWeight()); - - // extracts alternative paths - calculateAlternativePaths(path); - } - - return path; - } - - /** - * Returns a list of alternative paths (not including the optimal path). - * - * @return The alternative paths, is empty if no alternative paths have been requested. - */ - @Override - public List<Path> getAlternativePaths() { - return alternativePaths; - } - - public PlateauPath extractPath() { - PlateauPath path = (PlateauPath) new PlateauPath(graph, weighting).setSPTEntry(currFrom).extract(); - path.setWeight(currFrom.weight); - return path; - } - - /** - * Executes one step of traversal in forward direction starting at the source node. - * - * @return <code>true</code> if creating the source tree has been finished, otherwise - * <code>false</code> - */ - abstract boolean fillEdgesFrom(IntObjectMap<SPTEntry> weights, PriorityQueue<SPTEntry> heap); - - /** - * Executes one step of traversal in backward direction starting at the target node. - * - * @return <code>true</code> if creating the target tree has been finished, otherwise - * <code>false</code> - */ - abstract boolean fillEdgesTo(IntObjectMap<SPTEntry> weights, PriorityQueue<SPTEntry> heap); - - /** - * @return <code>true</code>, if both path searches reached their final node. - */ - abstract boolean finished(SPTEntry currEdge, int to); - - @Override - protected boolean finished() { - throw new UnsupportedOperationException("Not required"); - } - - /** - * Collects all edges which have been traversed by both forward and backward path searches. All - * edges receive a weighting depending on their distances towards the target and source node. - * Furthermore, edges which are far away from the best path are ignored to speed up the search. - * - * @param optimalWeight the weight of the optimal path. - */ - private void determineRelevantEdges(double optimalWeight) { - relevantEdgesQ = new PriorityQueue<>(Math.max(1, shortestWeightsFrom.size() / 10), - Comparator.comparingDouble(o -> o.rating) - ); - - relevantEdgesIDs = new HashSet<>(); - - double maxWeight = optimalWeight * (1.0d + constraintMaxStretch); - - for (IntCursor key : shortestWeightsFrom.keys()) { - SPTEntry edge = shortestWeightsFrom.get(key.value); - if (edge.parent != null) { - SPTEntry edgeOfTargetTree = shortestWeightsTo.get(key.value); - if (edgeOfTargetTree != null && edgeOfTargetTree.edge == edge.edge && edge.adjNode != edgeOfTargetTree.adjNode) { - //create a new relevant edge if it has been found in both search trees - //the rating is composed by the distances of the edge towards source and target - - RelEdge relEdge = new RelEdge(); - relEdge.fwd = edge; - relEdge.bwd = edgeOfTargetTree; - relEdge.rating = (edgeOfTargetTree.parent != null) - ? edge.weight + edgeOfTargetTree.parent.weight - : edgeOfTargetTree.weight + edge.parent.weight; - - if (relEdge.rating < maxWeight && relEdge.fwd.weight < Double.MAX_VALUE - && relEdge.bwd.weight < Double.MAX_VALUE) { - relevantEdgesQ.add(relEdge); - relevantEdgesIDs.add(key.value); - } - } - } - } - } - - /** - * The set of relevant edges is used to build plateaus. A plateau consists of a sequence of - * relevant edges. If a plateau has been built, all its edges are removed out of the set of - * relevant edges. The relevant edge with the lowest rating is used to build the next plateau. - * - * @param optimalWeight the weight of the optimal path. - */ - private void determinePlateaus(double optimalWeight) { - plateaus = new PriorityQueue<Plateau>(Math.max(1, relevantEdgesQ.size() / 10), - new Comparator<Plateau>() { - @Override - public int compare(Plateau o1, Plateau o2) { - // sub paths with equal rating but highest weight on top - int r = Double.compare(o1.rating(), o2.rating()); - if (r == 0) { - return Double.compare(o1.weight(), o2.weight()); - } else { - return r; - } - } - }); - - double bestRating = Double.MAX_VALUE; - - while (!relevantEdgesQ.isEmpty()) { - RelEdge relEdge = relevantEdgesQ.poll(); - - bestRating = Math.min(relEdge.rating, bestRating); - - // if edge pointers of current relevant edge is already a member of - // a plateau, reject this relevant edge - if (!relevantEdgesIDs.contains(createTraversalIdentifier(relEdge.fwd, false)) - && !relevantEdgesIDs.contains(createTraversalIdentifier(relEdge.bwd, true))) { - continue; - } - - // if rating is twice expensive than best rating, then cancel search - // for plateaus - if (relEdge.rating > bestRating * 2) { - relevantEdgesQ.clear(); - break; - } - - // create new plateau - Plateau plateau = new Plateau(); - plateau.start = relEdge.fwd; - plateau.startRev = relEdge.bwd; - plateau.targetRev = relEdge.bwd; - - // the distance of relevant edge from target - double distance = plateau.startRev.weight; - - // traverse backward until we found the start of the plateaus, that - // is as long the parent edge is relevant - SPTEntry tmp = plateau.start.parent; - while (tmp != null && tmp.parent != null - && relevantEdgesIDs.remove(createTraversalIdentifier(tmp, false)) - ) { - distance += tmp.weight - tmp.parent.weight; - // build new edge entry for the backward pointer startRev - SPTEntry entry = new SPTEntry(tmp.edge, tmp.parent.adjNode, distance); - entry.parent = plateau.startRev; - plateau.startRev = entry; - plateau.start = tmp; - tmp = tmp.parent; - } - - // traverse forward until we found the end of the plateaus - tmp = plateau.targetRev.parent; - while (tmp != null && tmp.parent != null - && relevantEdgesIDs.remove(createTraversalIdentifier(tmp, true)) - ) { - plateau.targetRev = tmp; - tmp = tmp.parent; - } - - // the local optimality = weight of plateau / weight of optimal path - plateau.localOptimality = (plateau.startRev.weight - plateau.targetRev.parent.weight) / optimalWeight; - - // if plateau consists of only one edge or is not locally optimal, - // then reject it - if (plateau.start.edge != plateau.targetRev.edge && plateau.localOptimality >= constraintMinLocalOptimality) { - plateaus.add(plateau); - } - - // mark the relevant edge as used - relevantEdgesIDs.remove(createTraversalIdentifier(relEdge.fwd, false)); - relevantEdgesIDs.remove(createTraversalIdentifier(relEdge.bwd, true)); - } - - // we don't need those anymore - relevantEdgesIDs.clear(); - } - - /** - * Out of the plateaus, path are generated. - * - * @param optimalPath the optimal path - */ - private void calculateAlternativePaths(PlateauPath optimalPath) { - alternativePaths.clear(); - - if (requestAlternatives == 0) { - return; - } - - if (plateaus != null) { - // the first subPath is also the best path we've already found, so - // we refuse it as an alternative - plateaus.poll(); - } - - // add alternative paths as long as their weight is not greater than - // weight of original path + drift - PlateauPath nextPath = createPathFromPlateau(optimalPath); - while (nextPath != null) { - - // logger.debug("Found next path: weight "+nextPath.getWeight()+""); - alternativePaths.add(nextPath); - // continue with next path, if we not yet have the desired number of - // paths (maxPath < 0 means as many as possible) - nextPath = (alternativePaths.size() < requestAlternatives || requestAlternatives < 0) ? createPathFromPlateau( - optimalPath) : null; - } - } - - private PlateauPath createPathFromPlateau(PlateauPath optimalPath) { - if (plateaus.isEmpty()) { - return null; - } - - // get plateau with highest weight (the next best sub path) - final Plateau plateau = plateaus.poll(); - - // weight of path - final double pathWeight = plateau.startRev.weight + plateau.start.weight; - - // weight of plateau - final double plateauWeight = plateau.startRev.weight - plateau.targetRev.parent.weight; - - double ubs = 0; - - // if local optimality is below a certain threshold, the uniformly - // bounded stretch will be calculated (quite expensive procedure) - if (plateau.localOptimality < constraintThresholdLocalOptimality) { - double maxWeight = plateauWeight + (optimalPath.getWeight() - plateauWeight) / 2; - - while (maxWeight > plateauWeight * 1.5d) { - ubs = Math.max(ubs, calculateUniformleyBoundedStretch(plateau, maxWeight)); - maxWeight = plateauWeight + (maxWeight - plateauWeight) / 2; - - //if UBS exceeds the max value, the path will be rejected - if (ubs > constraintMaxUniformlyBoundedStretch) { - return createPathFromPlateau(optimalPath); - } - } - } - - final String debugInfo = String.format(Locale.ENGLISH, - "%s, ubs: %.2f, lo: %.2f, weight_optimal: %.2f, weight_plateau: %.2f", - createPlateauString(plateau), ubs, plateau.localOptimality, optimalPath.getWeight(), - plateauWeight); - final PlateauPath path = new PlateauPath(graph, weighting) { - public String getDebugInfo() { - return debugInfo; - } - }; - - // target node - final int to = optimalPath.getSptEntry().adjNode; - - // create path by traversing downwards until target node - SPTEntry targetEdge = plateau.start; - SPTEntry currentRevOfPlateau = plateau.startRev.parent; - while (currentRevOfPlateau != null) { - int endNode = (currentRevOfPlateau.parent != null) ? currentRevOfPlateau.parent.adjNode : to; - SPTEntry newEntry = new SPTEntry(currentRevOfPlateau.edge, endNode, pathWeight - currentRevOfPlateau.weight); - newEntry.parent = targetEdge; - targetEdge = newEntry; - currentRevOfPlateau = currentRevOfPlateau.parent; - if (endNode == to) { - break; - } - } - path.setWeight(targetEdge.weight); - path.setSPTEntry(targetEdge).extract(); - - if (filter(optimalPath, path)) { - return createPathFromPlateau(optimalPath); - } else { - return path; - } - } - - /** - * Applies several filters on a newly generated path. If one filter returns true, the new path - * will be rejected. Following filters are applied:<ul><li> - * Route Share</li><li> - * Route Stretch</li><li> - * Contains loop</li></ul> - */ - private boolean filter(PlateauPath optimalPath, PlateauPath newPath) { - /* - * it is sufficient to check similarity against the best path only, - * because plateaus derive only from the best path. - */ - if (checkSimilarity(optimalPath, newPath) > constraintMaxShare) { - return true; - } - - // filter route, if it's more than 1+STRETCH_MAX times longer (distance) - // than the shortest (distance) route - if (newPath.getDistance() > optimalPath.getDistance() * (1 + constraintMaxStretch)) { - return true; - } - - if (containsLoop(newPath)) { - return true; - } - - return false; - } - - /** - * This method checks whether a loop between the new and the previous founded paths exist. - * - * @param newPath The new path to check for loop. - * @return True if it contains a loop. - */ - private boolean containsLoop(PlateauPath newPath) { - Set<Integer> visitedEdges = new HashSet<>(); - - // first edge of already found path - SPTEntry edge = newPath.getSptEntry(); - - while (edge.parent.edge != EdgeIterator.NO_EDGE) { - if (!visitedEdges.add(createTraversalIdentifier(edge, false))) { - return true; - } - edge = edge.parent; - } - - return false; - } - - /** - * This method checks the similarity between an existing and new path. - * - * @param existingPath The existing path to check for similarity with a new path. - * @param newPath The new path to check for similarity with an existing path. - * @return A factor, which indicating the similarity. - */ - private double checkSimilarity(PlateauPath existingPath, PlateauPath newPath) { - - Set<Integer> edgesOfOriginal = new HashSet<Integer>(); - // first edge of already found path - SPTEntry edge1 = existingPath.getSptEntry(); - // first edge of new path - SPTEntry edge2 = newPath.getSptEntry(); - - while (edge1.parent.edge != EdgeIterator.NO_EDGE) { - edgesOfOriginal.add(edge1.edge); - edge1 = edge1.parent; - } - - double sharedWeight = 0.0d; - while (edge2.parent.edge != EdgeIterator.NO_EDGE) { - if (edgesOfOriginal.remove(edge2.edge)) { - sharedWeight += Math.abs(edge2.weight - edge2.parent.weight); - } - edge2 = edge2.parent; - } - - return sharedWeight / existingPath.getWeight(); - } - - /** - * Calculates the value for uniformly bounded stretch (UBS) for a plateau. UBS describes the - * stretch of the full detour. Since a shortest path search is required this procedure is quite - * expensive. - * - * @return the stretch of the detour (0 means no stretch) - */ - private double calculateUniformleyBoundedStretch(Plateau plateau, double maxWeight) { - - // the weight of the plateau - double weightDetour = plateau.startRev.weight - plateau.targetRev.parent.weight; - - // the start and end edge of the plateau (pointers) - SPTEntry start = plateau.start; - SPTEntry end = plateau.targetRev; - - while (start.parent.edge != EdgeIterator.NO_EDGE || end.parent.edge != EdgeIterator.NO_EDGE) { - - // move the start point towards the source and add its weight - if (start.parent.edge != EdgeIterator.NO_EDGE) { - weightDetour += (start.weight - start.parent.weight); - start = start.parent; - } - - // move the end point towards the target and add its weight - if (end.parent.edge != EdgeIterator.NO_EDGE) { - weightDetour += (end.weight - end.parent.weight); - end = end.parent; - } - - if (weightDetour >= maxWeight) { - double weightShortest = calculateWeightOfShortestSubPath(start, end); - return weightDetour / weightShortest - 1; - } - } - return 0; - } - - private double calculateWeightOfShortestSubPath(SPTEntry start, SPTEntry end) { - from = start.adjNode; - to = end.adjNode; - initCollections(Math.max(20, graph.getNodes())); - initFrom(from); - initTo(to); - boolean finished = false; - while (!finished) { - finished = fillEdgesFrom(shortestWeightsFrom, heapFrom); - } - return currFrom.weight; - } - - /** - * Creates a {@link String} for the {@link Plateau} with start and end points. - * - * @param plateau The {@link Plateau} for which to create the string. - * @return The created {@link Plateau} string. - */ - private String createPlateauString(Plateau plateau) { - StringBuilder plateauString = new StringBuilder(); - plateauString.append("plateau: "); - SPTEntry tmpEdge = plateau.startRev; - while (tmpEdge.parent.edge != EdgeIterator.NO_EDGE && tmpEdge.edge != plateau.targetRev.edge) { - plateauString.append(tmpEdge.edge); - plateauString.append("|"); - if (tmpEdge.parent.edge == plateau.targetRev.edge) { - plateauString.append(tmpEdge.parent.edge); - } - tmpEdge = tmpEdge.parent; - } - return plateauString.toString(); - } - - /** - * Represents a relevant edge. A relevant edge has been traversed by both path searches. - */ - public static class RelEdge { - - /** - * EdgeEntry whose parent points along the shortest path towards the source node. Its weight - * is the distance from this edge to the source node. - */ - SPTEntry fwd; - - /** - * EdgeEntry whose parent points along the shortest path towards the target node. Its weight - * is the distance from this edge to the target node. - */ - SPTEntry bwd; - - /** - * A rating of the relevant edge which is composed of the sum of the costs of both edge - * entries. - */ - double rating; - } - - /** - * A plateau represents a sequence of edges which have been traversed by both path searches. - */ - public static class Plateau { - - /** - * Marks the start of the plateau and points towards the source of the path. By following - * its parents the shortest path from the start of the plateau towards the source node can - * be determined. - */ - SPTEntry start; - - /** - * Marks the start of the plateau and points towards the target of the path. By following - * its parents the path along the plateau towards the target can be determined. - */ - SPTEntry startRev; - - /** - * Marks the end of the plateau and points towards the target of the path. By following its - * parents the shortest path from the end of the plateau towards the target node can be - * determined. - */ - SPTEntry targetRev; - - /** - * Stores the local optimality of the plateau which has previously been calculated. - */ - double localOptimality; - - /** - * Calculates the weight of the resulting path of the plateau. - */ - public double weight() { - if (start.parent == null) { - return startRev.weight; - } else { - return start.parent.weight + startRev.weight; - } - } - - /** - * Calculates the rating of the plateau. The farther away from source or target the higher - * the rating. - */ - public double rating() { - double costsAtStartOfPlateau = (start.parent == null) ? 0 : start.parent.weight; - double costsAtEndOfPlateau = (targetRev.parent == null) ? 0 : targetRev.parent.weight; - - return costsAtStartOfPlateau + costsAtEndOfPlateau; - - } - } - - public final void setUbsMax(double ubsMax) { - this.constraintMaxUniformlyBoundedStretch = ubsMax; - } - - public final void setRouteShareMax(double shareMax) { - this.constraintMaxShare = shareMax; - } - - public final void setRouteStretchMax(double stretchMax) { - this.constraintMaxStretch = stretchMax; - } - - public final void setLocalOptimalityMin(double loMin) { - this.constraintMinLocalOptimality = loMin; - } - - public final void setUbsThreshold(double ubsThreshold) { - this.constraintThresholdLocalOptimality = ubsThreshold; - } - - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingAlgorithm.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingAlgorithm.java deleted file mode 100644 index 12370853c..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingAlgorithm.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import com.graphhopper.routing.Path; -import com.graphhopper.routing.RoutingAlgorithm; - -import java.util.List; - -/** - * Mark an routing algorithm which is able to generate alternative routes. - */ -public interface AlternativeRoutesRoutingAlgorithm extends RoutingAlgorithm { - - /** - * Defines the number of additional alternative routes to calculate. - * - * @param alternatives the number of alternative routes. - */ - void setRequestAlternatives(int alternatives); - - /** - * Returns all alternative paths excluding the best path. - * - * @return all alternative paths - */ - List<Path> getAlternativePaths(); - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRouting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRouting.java index 229b6f3af..e3f4a3577 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRouting.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRouting.java @@ -20,14 +20,16 @@ import com.carrotsearch.hppc.cursors.IntObjectCursor; import com.graphhopper.routing.AbstractRoutingAlgorithm; import com.graphhopper.routing.Path; -import com.graphhopper.routing.util.DefaultEdgeFilter; +import com.graphhopper.routing.PathExtractor; +import com.graphhopper.routing.SPTEntry; import com.graphhopper.routing.util.TraversalMode; import com.graphhopper.routing.weighting.Weighting; import com.graphhopper.storage.Graph; -import com.graphhopper.storage.SPTEntry; import com.graphhopper.util.EdgeExplorer; import com.graphhopper.util.EdgeIterator; import com.graphhopper.util.EdgeIteratorState; +import com.graphhopper.util.GHUtility; +import com.graphhopper.util.PMap; /** * Implementation of the Bellman-Ford algorithm which supports negative edge costs. @@ -39,16 +41,13 @@ public class BellmanFordRouting extends AbstractRoutingAlgorithm { private final IntObjectMap<SPTEntry> edgeEntries = new IntObjectHashMap<>(); private final IntObjectMap<SPTEntry> nodeEntries = new IntObjectHashMap<>(); - private SPTEntry toNode = null; - private boolean finished = false; - /** * Creates a new {@link BellmanFordRouting} object based on the {@link AbstractRoutingAlgorithm}. * * @param graph specifies the graph where this algorithm will run on. * @param weighting set the used weight calculation (e.g. fastest, shortest). */ - public BellmanFordRouting(Graph graph, Weighting weighting) { + public BellmanFordRouting(Graph graph, Weighting weighting, PMap hints) { super(graph, weighting, TraversalMode.EDGE_BASED); } @@ -61,12 +60,9 @@ public BellmanFordRouting(Graph graph, Weighting weighting) { */ @Override public Path calcPath(int from, int to) { - finished = false; - edgeEntries.clear(); nodeEntries.clear(); - toNode = null; - + determineAllEdges(); createStartCondition(from); @@ -83,9 +79,11 @@ public Path calcPath(int from, int to) { throw new IllegalStateException("There's a cycle with negative weights."); } - toNode = nodeEntries.get(to); - finished = true; - return extractPath(); + SPTEntry toNode = nodeEntries.get(to); + if (toNode != null) { + return PathExtractor.extractPath(graph, weighting, toNode); + } + return null; } /** @@ -110,7 +108,7 @@ private boolean updateWeightsOfEdges() { continue; } - tmpWeight = this.weighting.calcWeight(edgeIt, false, u.edge) + u.weight; + tmpWeight = GHUtility.calcWeightWithTurnWeight(weighting, edgeIt, false, u.edge) + u.weight; if (tmpWeight < edge.weight) { edge.weight = tmpWeight; @@ -127,12 +125,12 @@ private boolean updateWeightsOfEdges() { } private void determineAllEdges() { - final EdgeExplorer edgeExplorer = graph.createEdgeExplorer(DefaultEdgeFilter.outEdges(flagEncoder)); + final EdgeExplorer edgeExplorer = graph.createEdgeExplorer(); for (int node = 0; node < graph.getNodes(); node++) { EdgeIterator edgeIt = edgeExplorer.setBaseNode(node); while (edgeIt.next()) { - SPTEntry entry = new SPTEntry(edgeIt.getEdge(), edgeIt.getAdjNode(), Double.POSITIVE_INFINITY); + SPTEntry entry = new SPTEntry(edgeIt.getEdge(), edgeIt.getAdjNode(), Double.POSITIVE_INFINITY, null); int id = traversalMode.createTraversalId(edgeIt, false); edgeEntries.put(id, entry); nodeEntries.put(edgeIt.getAdjNode(), entry); @@ -141,24 +139,11 @@ private void determineAllEdges() { } private void createStartCondition(int from) { - nodeEntries.put(from, new SPTEntry(EdgeIterator.NO_EDGE, from, 0)); + nodeEntries.put(from, new SPTEntry(from, 0)); } @Override public int getVisitedNodes() { return this.graph.getNodes(); } - - @Override - protected boolean finished() { - return finished; - } - - @Override - protected Path extractPath() { - if (toNode != null) { - return new Path(this.graph, this.weighting).setWeight(toNode.weight).setSPTEntry(toNode).extract(); - } - return null; - } } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/DijkstraCamvitChoiceRouting.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/DijkstraCamvitChoiceRouting.java deleted file mode 100644 index fdca81214..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/DijkstraCamvitChoiceRouting.java +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import com.carrotsearch.hppc.IntObjectMap; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.storage.SPTEntry; -import com.graphhopper.util.EdgeExplorer; -import com.graphhopper.util.EdgeIterator; - -import java.util.PriorityQueue; - -/** - * Calculates alternative routes next to the best route, by using bidirectional Dijkstra as routing - * engine and 'camvit choice routing' afterwards to determine alternative routes. - * - * @see AbstractCamvitChoiceRouting - * @see <a href="http://www.camvit.com/camvit-technical-english/Camvit-Choice-Routing-Explanation-english.pdf" /> - */ -public class DijkstraCamvitChoiceRouting extends AbstractCamvitChoiceRouting { - - private int visitedToCount; - private int visitedFromCount; - - /** - * Creates a new {@link DijkstraCamvitChoiceRouting} object while using Dijkstra and camvit choice routing. - * - * @param g Specifies the graph where this algorithm will run on. - * @param type Set the used weight calculation. - */ - public DijkstraCamvitChoiceRouting(Graph g, Weighting type) { - super(g, type); - } - - void fillEdges(SPTEntry curr, PriorityQueue<SPTEntry> prioQueue, - IntObjectMap<SPTEntry> shortestWeightMap, EdgeExplorer explorer, boolean reverse) { - - EdgeIterator iter = explorer.setBaseNode(curr.adjNode); - while (iter.next()) { - if (!accept(iter, curr)) { - continue; - } - - int traversalId = traversalMode.createTraversalId(iter, reverse);//createTraversalIdentifier(iter, reverse); - double tmpWeight = weighting.calcWeight(iter, reverse, curr.edge) + curr.weight; - - if (Double.isInfinite(tmpWeight)) { - continue; - } - - SPTEntry de = shortestWeightMap.get(traversalId); - if (de == null) { - de = new SPTEntry(iter.getEdge(), iter.getAdjNode(), tmpWeight); - de.parent = curr; - shortestWeightMap.put(traversalId, de); - prioQueue.add(de); - } else if (de.weight > tmpWeight) { - prioQueue.remove(de); - de.edge = iter.getEdge(); - de.weight = tmpWeight; - de.parent = curr; - prioQueue.add(de); - } - } - } - - /** - * Creates the shortest path tree starting at the source node. - * - * @return <code>true</code> if creating the source tree has been finished, otherwise - * <code>false</code> - */ - protected boolean fillEdgesFrom(IntObjectMap<SPTEntry> weights, PriorityQueue<SPTEntry> heap) { - if (currFrom != null) { - if (finished(currFrom, to)) { - return true; - } - - fillEdges(currFrom, heap, weights, outEdgeExplorer, false); - visitedFromCount++; - if (heap.isEmpty()) { - return true; - } - currFrom = heap.poll(); - - } else if (currTo == null) { - //creating the source tree is finished when target tree has been finished as well - return true; - } - return false; - } - - protected boolean finished(SPTEntry currEdge, int to) { - return currEdge.adjNode == to; - } - - /** - * Creates the shortest path tree in reverse direction starting at the target node. - * - * @return <code>true</code> if creating the target tree has been finished, otherwise - * <code>false</code> - */ - protected boolean fillEdgesTo(IntObjectMap<SPTEntry> weights, PriorityQueue<SPTEntry> heap) { - if (currTo != null) { - if (finished(currTo, from)) { - return true; - } - fillEdges(currTo, heap, weights, inEdgeExplorer, true); - visitedToCount++; - if (heap.isEmpty()) { - return true; - } - currTo = heap.poll(); - } else if (currFrom == null) { - //creating the target tree is finished when source tree has been finished as well - return true; - } - return false; - } - - @Override - public int getVisitedNodes() { - return visitedFromCount + visitedToCount; - } - - @Override - public String getName() { - return "choicerouting"; - } - - @Override - SPTEntry createEdge(int edgeId, int endNode, double distance) { - return new SPTEntry(edgeId, endNode, distance); - } - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/PlateauPath.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/PlateauPath.java deleted file mode 100644 index c72902500..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/PlateauPath.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import com.graphhopper.routing.Path; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.storage.SPTEntry; - -/** - * Extension of {@link Path} providing access to the shortest path tree entry ({@link SPTEntry}). - */ -class PlateauPath extends Path { - - PlateauPath(Graph graph, Weighting weighting) { - super(graph, weighting); - } - - SPTEntry getSptEntry() { - return sptEntry; - } -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/RoutingAlgorithmFactory.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/RoutingAlgorithmFactory.java index 9e08e9cff..e061ad6a0 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/RoutingAlgorithmFactory.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/RoutingAlgorithmFactory.java @@ -15,16 +15,33 @@ package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; +import org.eclipse.mosaic.lib.routing.graphhopper.GraphHopperRouting; + +import com.graphhopper.routing.AStarBidirection; +import com.graphhopper.routing.AlternativeRoute; import com.graphhopper.routing.RoutingAlgorithm; +import com.graphhopper.routing.util.TraversalMode; import com.graphhopper.routing.weighting.Weighting; import com.graphhopper.storage.Graph; +import com.graphhopper.util.PMap; +import com.graphhopper.util.Parameters; /** * Factory to instantiate the routing algorithm to be used. */ public interface RoutingAlgorithmFactory { - RoutingAlgorithmFactory CHOICE_ROUTING_DIJKSTRA = DijkstraCamvitChoiceRouting::new; + RoutingAlgorithmFactory DEFAULT = (graph, weighting, hints) -> { + if (hints.getInt(Parameters.Algorithms.AltRoute.MAX_PATHS, 1) > 1) { + hints.putObject(Parameters.Algorithms.AltRoute.MAX_SHARE, GraphHopperRouting.ALTERNATIVE_ROUTES_MAX_SHARE); + hints.putObject(Parameters.Algorithms.AltRoute.MAX_WEIGHT, GraphHopperRouting.ALTERNATIVE_ROUTES_MAX_WEIGHT); + hints.putObject("alternative_route.max_exploration_factor", GraphHopperRouting.ALTERNATIVE_ROUTES_EXPLORATION_FACTOR); + hints.putObject("alternative_route.min_plateau_factor", GraphHopperRouting.ALTERNATIVE_ROUTES_PLATEAU_FACTOR); + return new AlternativeRoute(graph, weighting, TraversalMode.EDGE_BASED, hints); + } else { + return new AStarBidirection(graph, weighting, TraversalMode.EDGE_BASED); + } + }; RoutingAlgorithmFactory BELLMAN_FORD = BellmanFordRouting::new; @@ -32,10 +49,10 @@ public interface RoutingAlgorithmFactory { * Creates a {@link RoutingAlgorithm} instance for calculating routes based * on the given {@link Graph} and {@link Weighting} function. * - * @param graph the {@link Graph} containing the network to find routes in + * @param graph the {@link Graph} containing the network to find routes in * @param weighting the cost function * @return the {@link RoutingAlgorithm} */ - RoutingAlgorithm createAlgorithm(Graph graph, Weighting weighting); + RoutingAlgorithm createAlgorithm(Graph graph, Weighting weighting, PMap hints); } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHPoint.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHPoint.java deleted file mode 100644 index 3b3a22125..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHPoint.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.extended; - -import com.graphhopper.util.NumHelper; -import com.graphhopper.util.shapes.GHPoint; - -public class ExtendedGHPoint extends GHPoint { - - private final int edgeId; - - public ExtendedGHPoint(double lat, double lon, int edgeId) { - super(lat, lon); - this.edgeId = edgeId; - } - - public int getEdgeId() { - return edgeId; - } - - @Override - public int hashCode() { - int hash = super.hashCode(); - hash = 83 * hash + edgeId; - return hash; - } - - @Override - public boolean equals(Object obj) { - if (!super.equals(obj) || !(obj instanceof ExtendedGHPoint)) { - return false; - } - return NumHelper.equals(edgeId, ((ExtendedGHPoint) obj).edgeId); - } - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHRequest.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHRequest.java deleted file mode 100644 index e71d6e837..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHRequest.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.extended; - -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.RoutingAlgorithmFactory; - -import com.graphhopper.GHRequest; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.util.shapes.GHPoint; - -/** - * Extends GHRequest by providing instances of weighting and algorithms preparation instead of - * defining string constants. Additionally the number of alternative routes can be set in this - * request. - * - */ -public class ExtendedGHRequest extends GHRequest { - - protected WeightingFactory weightingFactory; - protected int alternatives; - protected RoutingAlgorithmFactory routingAlgorithmFactory; - - public ExtendedGHRequest(GHPoint from, GHPoint to) { - super(from, to); - this.routingAlgorithmFactory = RoutingAlgorithmFactory.CHOICE_ROUTING_DIJKSTRA; - } - - public ExtendedGHRequest setWeightingFactory(WeightingFactory w) { - this.weightingFactory = w; - return this; - } - - public WeightingFactory getWeightingFactory() { - return weightingFactory; - } - - public Weighting getWeightingInstance(Graph graph) { - return weightingFactory.create(graph); - } - - public int getAlternatives() { - return alternatives; - } - - public void setAlternatives(int alternatives) { - this.alternatives = alternatives; - - } - - public RoutingAlgorithmFactory getAlgorithmFactory() { - return routingAlgorithmFactory; - } - - public void setRoutingAlgorithmFactory(RoutingAlgorithmFactory routingAlgorithmFactory) { - this.routingAlgorithmFactory = routingAlgorithmFactory; - } - - public interface WeightingFactory { - Weighting create(Graph graph); - } -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHResponse.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHResponse.java deleted file mode 100644 index e73f24c2a..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGHResponse.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.extended; - -import com.graphhopper.GHResponse; -import com.graphhopper.routing.Path; - -import java.util.List; -import java.util.Vector; - -/** - * Extends the response of a routing request by providing the calculated path and several child - * response containing alternative routes. - */ -public class ExtendedGHResponse extends GHResponse { - - private Path path; - private List<ExtendedGHResponse> responses; - - public ExtendedGHResponse setPath(Path path) { - this.path = path; - this.responses = new Vector<>(); - return this; - } - - public Path getPath() { - return path; - } - - public List<ExtendedGHResponse> getAdditionalRoutes() { - return responses; - } - - public void addRouteResponse(ExtendedGHResponse rsp) { - this.responses.add(rsp); - } - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGraphHopper.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGraphHopper.java deleted file mode 100644 index ff96b5bd0..000000000 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/extended/ExtendedGraphHopper.java +++ /dev/null @@ -1,220 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.extended; - -import org.eclipse.mosaic.lib.routing.graphhopper.GraphLoader; -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.AlternativeRoutesRoutingAlgorithm; -import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; - -import com.google.common.collect.Iterables; -import com.google.common.collect.Lists; -import com.graphhopper.GHRequest; -import com.graphhopper.GHResponse; -import com.graphhopper.GraphHopper; -import com.graphhopper.routing.Path; -import com.graphhopper.routing.QueryGraph; -import com.graphhopper.routing.RoutingAlgorithm; -import com.graphhopper.routing.util.BikeFlagEncoder; -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.DefaultEdgeFilter; -import com.graphhopper.routing.util.EdgeFilter; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.routing.util.FootFlagEncoder; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.GHDirectory; -import com.graphhopper.storage.GraphHopperStorage; -import com.graphhopper.storage.RAMDirectory; -import com.graphhopper.storage.TurnCostExtension; -import com.graphhopper.storage.index.QueryResult; -import com.graphhopper.util.StopWatch; -import com.graphhopper.util.shapes.GHPoint; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.ArrayList; -import java.util.List; - -/** - * An extension of GraphHopper which is able to import map data from the MOSAIC scenario database. - */ -public class ExtendedGraphHopper extends GraphHopper { - - private final Logger logger = LoggerFactory.getLogger(getClass()); - - protected GraphLoader graphLoader; - protected TurnCostExtension tcStorage; - protected GraphhopperToDatabaseMapper mapper; - - public ExtendedGraphHopper(GraphLoader graphLoader, GraphhopperToDatabaseMapper mapper) { - this.graphLoader = graphLoader; - this.mapper = mapper; - - setCHEnabled(false); - setEncodingManager(EncodingManager.create( - new CarFlagEncoder(5, 5, 127), - new BikeFlagEncoder(), - new FootFlagEncoder()) - ); - } - - @Override - public GraphHopper importOrLoad() { - GHDirectory dir = new RAMDirectory(); - - tcStorage = new TurnCostExtension() { - // is required since we need to store the way type of edges - public boolean isRequireEdgeField() { - return true; - } - - public int getDefaultEdgeFieldValue() { - return 0; - } - }; - - GraphHopperStorage graph = new GraphHopperStorage(dir, getEncodingManager(), true, tcStorage); - - setGraphHopperStorage(graph); - graph.setSegmentSize(-1); - - importDB(getGraphHopperLocation()); - - return this; - } - - private void importDB(String ghLocation) { - if (getGraphHopperStorage() == null) { - throw new IllegalStateException("Load or init graph before import database"); - } - - if (mapper == null) { - throw new IllegalStateException("A mapper is required for importing database"); - } - - logger.info("start creating graph from database"); - - graphLoader.initialize(getGraphHopperStorage(), getEncodingManager(), mapper); - graphLoader.loadGraph(); - - postProcessing(); - try { - cleanUp(); - } catch (Exception e) { - logger.warn("Could not clean up routing graph, skipping. Routing might not work as expected!"); - } - // optimize(); - flush(); - } - - @Override - public GHResponse route(GHRequest request) { - if (request instanceof ExtendedGHRequest) { - return route((ExtendedGHRequest) request); - } - throw new UnsupportedOperationException("ExtendedGHRequest is required"); - } - - private ExtendedGHResponse route(ExtendedGHRequest request) { - if (getGraphHopperStorage() == null) { - throw new IllegalStateException("no graph has yet been initialized"); - } - - ExtendedGHResponse rsp = new ExtendedGHResponse(); - - if (!getEncodingManager().hasEncoder(request.getVehicle())) { - rsp.addError( - new IllegalArgumentException("Vehicle " + request.getVehicle() + " unsupported. Supported are: " + getEncodingManager()) - ); - return rsp; - } - - FlagEncoder encoder = getEncodingManager().getEncoder(request.getVehicle()); - - GHPoint fromPoint = Iterables.getFirst(request.getPoints(), null); - GHPoint toPoint = Iterables.getLast(request.getPoints(), null); - - EdgeFilter edgeFilterFrom = createEdgeFilter(fromPoint, encoder); - EdgeFilter edgeFilterTo = createEdgeFilter(toPoint, encoder); - - if (fromPoint == null || toPoint == null) { - rsp.addError(new IllegalArgumentException("Not enough points given")); - return rsp; - } - - StopWatch sw = new StopWatch().start(); - - final QueryResult fromRes = getLocationIndex().findClosest(fromPoint.lat, fromPoint.lon, edgeFilterFrom); - final QueryResult toRes = getLocationIndex().findClosest(toPoint.lat, toPoint.lon, edgeFilterTo); - - if (fromRes.getClosestNode() < 0 || toRes.getClosestNode() < 0) { - rsp.addError(new IllegalArgumentException("Request location(s) can not be snapped to the network")); - return rsp; - } - - QueryGraph queryGraph = new QueryGraph(getGraphHopperStorage()); - queryGraph.lookup(Lists.newArrayList(fromRes, toRes)); - - String debug = "graphLookup:" + sw.stop().getSeconds() + "s"; - - sw = new StopWatch().start(); - Weighting weighting = request.getWeightingInstance(queryGraph); - - RoutingAlgorithm algorithm = request.getAlgorithmFactory().createAlgorithm(queryGraph, weighting); - - if (algorithm instanceof AlternativeRoutesRoutingAlgorithm && request.getAlternatives() > 0) { - ((AlternativeRoutesRoutingAlgorithm) algorithm).setRequestAlternatives(request.getAlternatives()); - } - - debug += ", algoInit:" + sw.stop().getSeconds() + "s"; - sw = new StopWatch().start(); - - Path bestPath = algorithm.calcPath(fromRes.getClosestNode(), toRes.getClosestNode()); - debug += ", " + algorithm.getName() + "-routing:" + sw.stop().getSeconds() + "s, " + bestPath.getDebugInfo(); - - final List<Path> paths = new ArrayList<Path>(); - paths.add(bestPath); - if (algorithm instanceof AlternativeRoutesRoutingAlgorithm) { - paths.addAll(((AlternativeRoutesRoutingAlgorithm) algorithm).getAlternativePaths()); - } - - ExtendedGHResponse currentResponse = null; - int i = 1; - for (Path path : paths) { - if (currentResponse == null) { - // the first path is always the requested shortest path - currentResponse = rsp; - } else { - // if more than one route returned, we add a new response - currentResponse = new ExtendedGHResponse(); - rsp.addRouteResponse(currentResponse); - debug = "alternative path: " + (i++) + ", " + path.getDebugInfo(); - } - currentResponse.setPath(path).addDebugInfo(debug); - } - return rsp; - } - - - - private EdgeFilter createEdgeFilter(final GHPoint point, FlagEncoder encoder) { - if (point instanceof ExtendedGHPoint) { - return edgeState -> edgeState.getEdge() == ((ExtendedGHPoint) point).getEdgeId(); - } - return DefaultEdgeFilter.allEdges(encoder); - } - -} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/DatabaseGraphLoader.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoader.java similarity index 69% rename from lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/DatabaseGraphLoader.java rename to lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoader.java index 9272863bb..230ae975f 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/DatabaseGraphLoader.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoader.java @@ -13,24 +13,25 @@ * Contact: mosaic@fokus.fraunhofer.de */ -package org.eclipse.mosaic.lib.routing.graphhopper; +package org.eclipse.mosaic.lib.routing.graphhopper.util; import org.eclipse.mosaic.lib.database.Database; import org.eclipse.mosaic.lib.database.DatabaseUtils; import org.eclipse.mosaic.lib.database.road.Connection; import org.eclipse.mosaic.lib.database.road.Node; import org.eclipse.mosaic.lib.database.road.Way; -import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; -import org.eclipse.mosaic.lib.routing.graphhopper.util.TurnCostAnalyzer; -import org.eclipse.mosaic.lib.routing.graphhopper.util.WayTypeEncoder; +import org.eclipse.mosaic.lib.routing.graphhopper.GraphHopperRouting; import com.graphhopper.reader.ReaderWay; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.storage.GraphHopperStorage; +import com.graphhopper.routing.ev.EdgeIntAccess; +import com.graphhopper.routing.util.DefaultVehicleTagParserFactory; +import com.graphhopper.routing.util.VehicleTagParsers; +import com.graphhopper.routing.util.parsers.TagParser; +import com.graphhopper.storage.BaseGraph; import com.graphhopper.storage.IntsRef; -import com.graphhopper.storage.TurnCostExtension; +import com.graphhopper.storage.TurnCostStorage; import com.graphhopper.util.EdgeIteratorState; +import com.graphhopper.util.PMap; import com.graphhopper.util.PointList; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,36 +44,41 @@ /** * Loads the content of a MOSAIC scenario database into a graphhopper graph. */ -public class DatabaseGraphLoader implements GraphLoader { +public class DatabaseGraphLoader { private static final Logger LOG = LoggerFactory.getLogger(DatabaseGraphLoader.class); - private GraphHopperStorage graphStorage; - private EncodingManager encodingManager; - private FlagEncoder flagEncoder; + private final Database database; + private final List<TagParser> wayParsers = new ArrayList<>(); + private BaseGraph graphStorage; + private VehicleEncodingManager encodingManager; private GraphhopperToDatabaseMapper graphMapper; - private TurnCostExtension turnCostStorage; - private Database database; + private TurnCostStorage turnCostStorage; + private EdgeIntAccess edgeAccess; public DatabaseGraphLoader(Database database) { this.database = database; } - @Override - public void initialize(GraphHopperStorage graph, - EncodingManager encodingManager, GraphhopperToDatabaseMapper mapper) { + public void initialize(BaseGraph graph, + VehicleEncodingManager encodingManager, + GraphhopperToDatabaseMapper mapper + ) { this.graphStorage = graph; this.graphMapper = mapper; this.encodingManager = encodingManager; - this.flagEncoder = encodingManager.getEncoder("CAR"); - if (graph.getExtension() instanceof TurnCostExtension) { - turnCostStorage = (TurnCostExtension) (graph).getExtension(); - } else { - throw new IllegalStateException("Graph must store turn costs by using TurnCostStorage."); + this.turnCostStorage = graph.getTurnCostStorage(); + + wayParsers.clear(); + + for (String vehicle : encodingManager.getAllProfileVehicles()) { + VehicleTagParsers parsers = new DefaultVehicleTagParserFactory() + .createParsers(encodingManager.getEncodingManager(), vehicle, new PMap()); + wayParsers.add(parsers.getAccessParser()); + wayParsers.add(parsers.getSpeedParser()); } } - @Override public void loadGraph() { int nodeIndex = 0; @@ -82,6 +88,9 @@ public void loadGraph() { final Set<Node> mainGraph = searchForMainGraph(); graphStorage.create(Math.max(mainGraph.size() / 30, 100)); + edgeAccess = graphStorage.createEdgeIntAccess(); + + WayTypeEncoder wayTypeEncoder = encodingManager.wayType(); // add nodes and connections for (Connection con : database.getConnections()) { @@ -106,24 +115,19 @@ public void loadGraph() { nodeIndex++; } - IntsRef flags = createFlags(encodingManager, way); - - if (flags != null) { - EdgeIteratorState edgeIt = graphStorage.edge( - graphMapper.fromNode(from), - graphMapper.fromNode(to)).setDistance(con.getLength()).setFlags(flags); + EdgeIteratorState edgeIt = graphStorage.edge(graphMapper.fromNode(from), graphMapper.fromNode(to)) + .setDistance(con.getLength()) + .setWayGeometry(getWayGeometry(from, to, con.getNodes())); + handleWayTags(edgeIt.getEdge(), way); - graphMapper.setConnection(con, edgeIt.getEdge()); + wayTypeEncoder.setWay(way, con.getLanes(), edgeIt.getEdge(), edgeAccess); - edgeIt.setWayGeometry(getWayGeometry(from, to, con.getNodes())); - edgeIt.setAdditionalField( - WayTypeEncoder.encode(way.getType(), way.getNumberOfLanesForward(), 0)); - } else { - LOG.warn("Connection on (way={}, type={}) is not accessible by any vehicle type" - + " and will therefore be ignored during routing.", way.getId(), way.getType()); - } + graphMapper.setConnection(con, edgeIt.getEdge()); } + VehicleEncoding car = encodingManager.getVehicleEncoding(GraphHopperRouting.PROFILE_CAR.getVehicle()); + VehicleEncoding bike = encodingManager.getVehicleEncoding(GraphHopperRouting.PROFILE_BIKE.getVehicle()); + // add turn restrictions for (Connection conFrom : database.getConnections()) { @@ -154,21 +158,25 @@ public void loadGraph() { // if end node is connected with an connection, which is not // accessible from incoming connection, then add turn // restriction - turnCostStorage.addTurnInfo(ghConFrom, ghNodeVia, ghConTo, - flagEncoder.getTurnFlags(true, 0)); + turnCostStorage.set( + car.turnRestriction(), ghConFrom, ghNodeVia, ghConTo, true + ); + turnCostStorage.set( + bike.turnRestriction(), ghConFrom, ghNodeVia, ghConTo, true + ); } else if (isUTurn) { // avoid (high costs) u-turns on same road, that is if from and to node - // of first connection are the same nodes as of second - // connection - turnCostStorage.addTurnInfo(ghConFrom, ghNodeVia, ghConTo, - flagEncoder.getTurnFlags(false, endsAtJunction ? 120 : 90)); + // of first connection are the same nodes as of second connection + // note, only for cars, bikes can easily turn + turnCostStorage.set( + car.turnCost(), ghConFrom, ghNodeVia, ghConTo, endsAtJunction ? 120 : 90 + ); } } } // analyze turn costs - new TurnCostAnalyzer().createTurnCostsForCars(graphStorage, - encodingManager.getEncoder("CAR")); + new TurnCostAnalyzer(graphStorage, wayTypeEncoder).createTurnCostsForVehicle(car); if (graphStorage.getNodes() == 0) { throw new IllegalStateException( @@ -209,23 +217,17 @@ private void addNode(int nodeIndex, final Node node) { graphMapper.setNode(node, nodeIndex); } - /** - * Rebuild an OSMway to get internal edge properties as flags. - * - * @param encoding Encoder parameter. - * @param way Way for which to create flags. - */ - private IntsRef createFlags(EncodingManager encoding, Way way) { + private void handleWayTags(int edgeId, Way way) { + IntsRef relationFlags = IntsRef.EMPTY; + ReaderWay osmWay = new ReaderWay(0); osmWay.setTag("highway", way.getType()); - osmWay.setTag("maxspeed", String.valueOf((int) way.getMaxSpeedInKmh())); + osmWay.setTag("maxspeed", String.valueOf((int) Math.round(way.getMaxSpeedInKmh()))); osmWay.setTag("oneway", "yes"); - EncodingManager.AcceptWay aw = new EncodingManager.AcceptWay(); - if (encoding.acceptWay(osmWay, aw)) { - return encoding.handleWayTags(osmWay, aw, 0); + for (TagParser parser : wayParsers) { + parser.handleWayTags(edgeId, edgeAccess, osmWay, relationFlags); } - return null; } /** diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/OptionalTurnCostProvider.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/OptionalTurnCostProvider.java new file mode 100644 index 000000000..843039579 --- /dev/null +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/OptionalTurnCostProvider.java @@ -0,0 +1,75 @@ +/* + * Copyright (c) 2023 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing.graphhopper.util; + +import com.graphhopper.routing.ev.BooleanEncodedValue; +import com.graphhopper.routing.ev.DecimalEncodedValue; +import com.graphhopper.routing.weighting.TurnCostProvider; +import com.graphhopper.storage.TurnCostStorage; +import com.graphhopper.util.EdgeIterator; + +public class OptionalTurnCostProvider implements TurnCostProvider { + + private final BooleanEncodedValue turnRestrictionsEnc; + private final DecimalEncodedValue turnCostsEnc; + private final TurnCostStorage turnCostStorage; + + private boolean turnCostsEnabled = true; + + public OptionalTurnCostProvider(VehicleEncoding encoding, TurnCostStorage turnCostStorage) { + if (turnCostStorage == null) { + throw new IllegalArgumentException("No storage set to calculate turn weight"); + } + this.turnRestrictionsEnc = encoding.turnRestriction(); + this.turnCostsEnc = encoding.turnCost(); + this.turnCostStorage = turnCostStorage; + } + + /** + * Disables consideration of turn costs. Only turn restrictions are checked. + */ + public TurnCostProvider disableTurnCosts() { + this.turnCostsEnabled = false; + return this; + } + + @Override + public double calcTurnWeight(int edgeFrom, int nodeVia, int edgeTo) { + if (!EdgeIterator.Edge.isValid(edgeFrom) || !EdgeIterator.Edge.isValid(edgeTo)) { + return 0; + } + if (turnRestrictionsEnc != null) { + boolean restricted = turnCostStorage.get(turnRestrictionsEnc, edgeFrom, nodeVia, edgeTo); + if (restricted) { + return Double.POSITIVE_INFINITY; + } + } + if (turnCostsEnc != null && turnCostsEnabled) { + return turnCostStorage.get(turnCostsEnc, edgeFrom, nodeVia, edgeTo); + } + return 0; + } + + @Override + public long calcTurnMillis(int inEdge, int viaNode, int outEdge) { + return (long) (1000 * calcTurnWeight(inEdge, viaNode, outEdge)); + } + + @Override + public String toString() { + return "mosaic_tcp"; + } +} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzer.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzer.java index 3f0255589..976ed287a 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzer.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzer.java @@ -18,13 +18,13 @@ import org.eclipse.mosaic.lib.geo.GeoPoint; import org.eclipse.mosaic.lib.geo.GeoUtils; -import com.graphhopper.routing.util.DefaultEdgeFilter; -import com.graphhopper.routing.util.FlagEncoder; +import com.graphhopper.routing.util.AccessFilter; +import com.graphhopper.storage.BaseGraph; import com.graphhopper.storage.Graph; -import com.graphhopper.storage.GraphHopperStorage; -import com.graphhopper.storage.TurnCostExtension; +import com.graphhopper.storage.TurnCostStorage; import com.graphhopper.util.EdgeExplorer; import com.graphhopper.util.EdgeIterator; +import com.graphhopper.util.FetchMode; import com.graphhopper.util.PointList; import com.graphhopper.util.shapes.GHPoint; @@ -55,11 +55,15 @@ public class TurnCostAnalyzer { * TODO make depend on road type */ private double minCurveRadius; + private final WayTypeEncoder waytypeEncoder; + private final BaseGraph graph; /** * Crates a new {@link TurnCostAnalyzer} with default calculation properties. */ - public TurnCostAnalyzer() { + public TurnCostAnalyzer(BaseGraph graph, WayTypeEncoder waytypeEncoder) { + this.graph = graph; + this.waytypeEncoder = waytypeEncoder; /* * Mean acceleration and deceleration for cars * (according to [Maurya et al: "Acceleration-Deceleration Behaviour of Various Vehicle Types", 2016]). @@ -69,21 +73,14 @@ public TurnCostAnalyzer() { minCurveRadius = 20; } - public void createTurnCostsForCars(GraphHopperStorage graph, FlagEncoder flagEncoder) { - EdgeExplorer outEdgeExplorer = graph.createEdgeExplorer(DefaultEdgeFilter.outEdges(flagEncoder)); - EdgeExplorer inEdgeExplorer = graph.createEdgeExplorer(DefaultEdgeFilter.inEdges(flagEncoder)); - final TurnCostExtension tcStorage; - if (graph.getExtension() instanceof TurnCostExtension) { - tcStorage = (TurnCostExtension) graph.getExtension(); - if (!tcStorage.isRequireEdgeField()) { - throw new IllegalStateException( - "Graph does not support storing additional edge fields"); - } - } else { - throw new IllegalStateException("Graph does not support storing of turn costs"); - } + public void createTurnCostsForVehicle(VehicleEncoding encoding) { + + EdgeExplorer outEdgeExplorer = graph.createEdgeExplorer(AccessFilter.allEdges(encoding.access())); + EdgeExplorer inEdgeExplorer = graph.createEdgeExplorer(AccessFilter.allEdges(encoding.access())); + + TurnCostStorage tcStorage = graph.getTurnCostStorage(); for (int n = 0; n < graph.getNodes(); n++) { EdgeIterator inEdgeIt = inEdgeExplorer.setBaseNode(n); @@ -91,14 +88,13 @@ public void createTurnCostsForCars(GraphHopperStorage graph, FlagEncoder flagEnc EdgeIterator outEdgeIt = outEdgeExplorer.setBaseNode(n); while (outEdgeIt.next()) { if (inEdgeIt.getEdge() != outEdgeIt.getEdge()) { - long existingTurnCosts = tcStorage.getTurnCostFlags(inEdgeIt.getEdge(), n, - outEdgeIt.getEdge()); + boolean alreadyRestricted = tcStorage.get(encoding.turnRestriction(), inEdgeIt.getEdge(), n, outEdgeIt.getEdge()); + double existingCosts = tcStorage.get(encoding.turnCost(), inEdgeIt.getEdge(), n, outEdgeIt.getEdge()); //if turn is already restricted, than we do not need to consider turn costs - if (!flagEncoder.isTurnRestricted(existingTurnCosts)) { - double c = calculateTurnCosts(graph, flagEncoder, inEdgeIt, n, outEdgeIt); + if (!alreadyRestricted) { + double c = calculateTurnCosts(encoding, inEdgeIt, n, outEdgeIt) + existingCosts; if (c > 0.00001) { - long turnFlags = flagEncoder.getTurnFlags(false, Math.ceil(c)); - tcStorage.addTurnInfo(inEdgeIt.getEdge(), n, outEdgeIt.getEdge(), turnFlags); + tcStorage.set(encoding.turnCost(), inEdgeIt.getEdge(), n, outEdgeIt.getEdge(), Math.ceil(c)); } } } @@ -114,29 +110,25 @@ public void createTurnCostsForCars(GraphHopperStorage graph, FlagEncoder flagEnc * into geometric points. Further parameter for the calculating are the angle between incoming and outgoing edge, * the length and the maximum speed of the edge. * - * @param graph Graph fot which to calculate the turn costs - * @param flagEncoder Encoding the flag * @param incomingEdge Incoming edge * @param node ID of the node * @param outgoingEdge Outgoing edge * @return Calculated turn cost */ - private double calculateTurnCosts(GraphHopperStorage graph, FlagEncoder flagEncoder, EdgeIterator incomingEdge, int node, - EdgeIterator outgoingEdge) { + private double calculateTurnCosts(VehicleEncoding encoding, EdgeIterator incomingEdge, int node, EdgeIterator outgoingEdge) { //determining way types - int incomingWayType = incomingEdge.getAdditionalField(); - int outgoingWayType = outgoingEdge.getAdditionalField(); + int incomingWayType = incomingEdge.get(waytypeEncoder); + int outgoingWayType = outgoingEdge.get(waytypeEncoder); //we ignore turn costs, as soon as we are on highways if (WayTypeEncoder.isHighway(incomingWayType) && WayTypeEncoder.isHighway(outgoingWayType)) { return 0; } - //use way geometry to calculate + //use way geometry to calculate final GHPoint pointFrom = getSecondLastPointOfEdge(graph, incomingEdge); - final GHPoint pointVia = new GHPoint(graph.getNodeAccess().getLatitude(node), - graph.getNodeAccess().getLongitude(node)); + final GHPoint pointVia = new GHPoint(graph.getNodeAccess().getLat(node), graph.getNodeAccess().getLon(node)); final GHPoint pointTo = getSecondPointOfEdge(graph, outgoingEdge); //calculate angle between incoming/outgoing edge using bearing of from-via and via-to @@ -148,8 +140,8 @@ private double calculateTurnCosts(GraphHopperStorage graph, FlagEncoder flagEnco double alpha = (bearingViaTo - (bearingFromVia) + 360) % 360; //get length and max speed of edges - double v1 = incomingEdge.get(flagEncoder.getAverageSpeedEnc()) / 3.6; - double v2 = outgoingEdge.get(flagEncoder.getAverageSpeedEnc()) / 3.6; + double v1 = incomingEdge.get(encoding.speed()) / 3.6; + double v2 = outgoingEdge.get(encoding.speed()) / 3.6; double l1 = incomingEdge.getDistance(); double l2 = outgoingEdge.getDistance(); @@ -166,12 +158,12 @@ private double calculateTurnCosts(GraphHopperStorage graph, FlagEncoder flagEnco //else, the maximum turn speed depends on the angle between incoming and outgoing edge } else { if (isLeftTurn || isRightTurn) { - //when turning, the max speed on the outgoing edge also depends on its length (i.e., if the + //when turning, the max speed on the outgoing edge also depends on its length (i.e., if the //outgoing edge is very short, we don't need to accelerate till max speed) v2 = Math.min(v2, MAX_A * Math.sqrt((2 * l2) / MAX_A)); } - //adjusting angle: tangens only gives positive values in [0,180] + //adjusting angle: tangens only gives positive values in [0,180] if (alpha > 180) { alpha = 360 - alpha; } @@ -209,13 +201,13 @@ private double calculateTurnCosts(GraphHopperStorage graph, FlagEncoder flagEnco * @return the second last coordinate of an edge. */ private GHPoint getSecondLastPointOfEdge(Graph graph, EdgeIterator edge) { - PointList geom = edge.fetchWayGeometry(GEOMETRY_FETCH_MODE_PILLAR_NODES_ONLY); - if (geom.getSize() == 0) { - return new GHPoint(graph.getNodeAccess().getLatitude(edge.getAdjNode()), - graph.getNodeAccess().getLongitude(edge.getAdjNode())); + PointList geom = edge.fetchWayGeometry(FetchMode.PILLAR_ONLY); + if (geom.isEmpty()) { + return new GHPoint(graph.getNodeAccess().getLat(edge.getAdjNode()), + graph.getNodeAccess().getLon(edge.getAdjNode())); } - int index = geom.getSize() - 1; - return new GHPoint(geom.getLatitude(index), geom.getLongitude(index)); + int index = geom.size() - 1; + return new GHPoint(geom.getLat(index), geom.getLon(index)); } /** @@ -225,12 +217,12 @@ private GHPoint getSecondLastPointOfEdge(Graph graph, EdgeIterator edge) { * @return the second coordinate of an edge. */ private GHPoint getSecondPointOfEdge(Graph graph, EdgeIterator edge) { - PointList geom = edge.fetchWayGeometry(GEOMETRY_FETCH_MODE_PILLAR_NODES_ONLY); - if (geom.getSize() == 0) { - return new GHPoint(graph.getNodeAccess().getLatitude(edge.getAdjNode()), - graph.getNodeAccess().getLongitude(edge.getAdjNode())); + PointList geom = edge.fetchWayGeometry(FetchMode.PILLAR_ONLY); + if (geom.isEmpty()) { + return new GHPoint(graph.getNodeAccess().getLat(edge.getAdjNode()), + graph.getNodeAccess().getLon(edge.getAdjNode())); } - return new GHPoint(geom.getLatitude(0), geom.getLongitude(0)); + return new GHPoint(geom.getLat(0), geom.getLon(0)); } } diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncoding.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncoding.java new file mode 100644 index 000000000..1ec7c1cf5 --- /dev/null +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncoding.java @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2023 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing.graphhopper.util; + +import com.graphhopper.config.Profile; +import com.graphhopper.routing.ev.BooleanEncodedValue; +import com.graphhopper.routing.ev.DecimalEncodedValue; +import com.graphhopper.routing.ev.Subnetwork; +import com.graphhopper.routing.ev.TurnCost; +import com.graphhopper.routing.ev.TurnRestriction; +import com.graphhopper.routing.util.DefaultVehicleEncodedValuesFactory; +import com.graphhopper.routing.util.VehicleEncodedValues; +import com.graphhopper.util.PMap; + +/** + * Collection of all {@link com.graphhopper.routing.ev.EncodedValue} implementations + * required for a vehicle to function within the GraphHopper context. This includes: + * - "access" - If a vehicle can drive on an edge.<br> + * - "speed" - The speed limit for the vehicle on the edge.<br> + * - "priority" - Encode how to prioritize a road type to another.<br> + * - "subnetwork" - Encode if an edge belongs to a subnetwork<br> + * - "turnRestriction" / "turnCost" - encoding of costs for a turn from on edge to another.<br> + * These encoders take care of storing and reading properties on edges. + */ +public class VehicleEncoding { + + private final BooleanEncodedValue accessEnc; + private final DecimalEncodedValue speedEnc; + private final BooleanEncodedValue turnRestrictionEnc; + private final DecimalEncodedValue turnCostEnc; + private final DecimalEncodedValue priorityEnc; + private final BooleanEncodedValue subnetworkEnc; + + VehicleEncoding(Profile profile) { + VehicleEncodedValues vehicle = new DefaultVehicleEncodedValuesFactory() + .createVehicleEncodedValues(profile.getVehicle(), new PMap()); + this.accessEnc = vehicle.getAccessEnc(); + this.speedEnc = vehicle.getAverageSpeedEnc(); + this.priorityEnc = vehicle.getPriorityEnc(); + this.turnRestrictionEnc = TurnRestriction.create(profile.getVehicle()); + this.turnCostEnc = TurnCost.create(profile.getVehicle(), 255); + this.subnetworkEnc = Subnetwork.create(profile.getVehicle()); + } + + public BooleanEncodedValue access() { + return accessEnc; + } + + public DecimalEncodedValue speed() { + return speedEnc; + } + + public DecimalEncodedValue priority() { + return priorityEnc; + } + + public BooleanEncodedValue turnRestriction() { + return turnRestrictionEnc; + } + + public DecimalEncodedValue turnCost() { + return turnCostEnc; + } + + public BooleanEncodedValue subnetwork() { + return subnetworkEnc; + } +} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncodingManager.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncodingManager.java new file mode 100644 index 000000000..80c05ea17 --- /dev/null +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/VehicleEncodingManager.java @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2023 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing.graphhopper.util; + +import com.graphhopper.config.Profile; +import com.graphhopper.routing.util.EncodingManager; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * In GraphHopper, any data for edges, nodes, and turns, are stored with as low overhead + * as possible. To achieve this, {@link com.graphhopper.routing.ev.EncodedValue}s + * to encode and decode any data. This class, encapsulates the initialization and access to single + * {@link com.graphhopper.routing.ev.EncodedValue}s, making it easier to use them in code. + */ +public class VehicleEncodingManager { + + private final WayTypeEncoder waytypeEncoder; + private final EncodingManager encodingManager; + + private final Map<String, VehicleEncoding> vehicleEncodings = new HashMap<>(); + private final List<Profile> profiles; + + public VehicleEncodingManager(List<Profile> profiles) { + this.waytypeEncoder = WayTypeEncoder.create(); + this.profiles = new ArrayList<>(profiles); + + EncodingManager.Builder builder = new EncodingManager.Builder().add(waytypeEncoder); + for (Profile profile : this.profiles) { + final VehicleEncoding encoding = new VehicleEncoding(profile); + vehicleEncodings.put(profile.getVehicle(), encoding); + builder.add(encoding.access()) + .add(encoding.speed()) + .addTurnCostEncodedValue(encoding.turnRestriction()) + .addTurnCostEncodedValue(encoding.turnCost()) + .add(encoding.subnetwork()); + if (encoding.priority() != null) { + builder.add(encoding.priority()); + } + } + this.encodingManager = builder.build(); + } + + public List<Profile> getAllProfiles() { + return Collections.unmodifiableList(profiles); + } + + /** + * Returns a list of all possible transportation modes (e.g. "car", "bike"). + */ + public Collection<String> getAllProfileVehicles() { + return Collections.unmodifiableCollection(vehicleEncodings.keySet()); + } + + /** + * Returns the specific wrapper of {@link com.graphhopper.routing.ev.EncodedValue}s required + * for the given transportation mode (e.g. "car", "bike"). + */ + public VehicleEncoding getVehicleEncoding(String vehicle) { + return vehicleEncodings.get(vehicle); + } + + /** + * Returns an encoder, which is used to encode/decode precomputed flags for way types. + */ + public WayTypeEncoder wayType() { + return waytypeEncoder; + } + + /** + * Returns the actual encoding manager used in GraphHopper. + */ + public EncodingManager getEncodingManager() { + return encodingManager; + } +} diff --git a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoder.java b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoder.java index 09b3f4371..8b8ccd252 100644 --- a/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoder.java +++ b/lib/mosaic-routing/src/main/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoder.java @@ -15,13 +15,24 @@ package org.eclipse.mosaic.lib.routing.graphhopper.util; +import org.eclipse.mosaic.lib.database.road.Way; + import com.google.common.collect.BiMap; import com.google.common.collect.HashBiMap; import com.google.common.collect.Sets; +import com.graphhopper.routing.ev.EdgeIntAccess; +import com.graphhopper.routing.ev.IntEncodedValueImpl; import java.util.Set; -public class WayTypeEncoder { +/** + * Stores additional properties on an edge to describe the way-type of an edge. + * It does so by encoding the way-type, and some boolean flags based on this + * way-type, within one integer field by using bit-masking. + */ +public class WayTypeEncoder extends IntEncodedValueImpl { + + public final static String KEY = "waytype"; private static final BiMap<String, Integer> wayTypeIntMap = HashBiMap.create(); private static final Set<String> highwayTypes = Sets.newHashSet( @@ -40,15 +51,20 @@ public class WayTypeEncoder { "cycleway" ); - private static final int HIGHWAY = 1 << 31; - private static final int RESIDENTIAL = 1 << 30; - private static final int TUNNEL = 1 << 29; - private static final int TOLL = 1 << 28; - private static final int BAD_ROAD = 1 << 27; - private static final int ONE_LANE = 1 << 26; - private static final int MAIN_ROAD = 1 << 25; - private static final int CYCLEWAY = 1 << 24; - private static final int TYPE_MASK = 0x03FFFFFF; + private static final int HIGHWAY = 1 << 15; + private static final int RESIDENTIAL = 1 << 14; + private static final int TUNNEL = 1 << 13; + private static final int TOLL = 1 << 12; + private static final int BAD_ROAD = 1 << 11; + private static final int ONE_LANE = 1 << 10; + private static final int MAIN_ROAD = 1 << 9; + private static final int CYCLEWAY = 1 << 8; + + /* + * Store the type as integer in the first 1 byte (max value = 255) + * The rest of the integer bits is used to store the property flags, e.g. HIGHWAY, RESIDENTIAL. + */ + private static final int TYPE_MASK = 0x00FF; static { // autobahn @@ -73,6 +89,16 @@ public class WayTypeEncoder { wayTypeIntMap.put("service", 27); wayTypeIntMap.put("road", 26); wayTypeIntMap.put("track", 25); + // any other roads + wayTypeIntMap.put("cycleway", 10); + } + + private WayTypeEncoder() { + super(KEY, 31, false); + } + + public static WayTypeEncoder create() { + return new WayTypeEncoder(); } public static String decode(int type) { @@ -83,26 +109,27 @@ public static String decode(int type) { return "unknown"; } - public static int encode(String wayType, int numberLanes, int additionalFlags) { + public static int encode(String wayType, int numberLanes) { + int flags = 0; if (highwayTypes.contains(wayType)) { - additionalFlags |= HIGHWAY; + flags |= HIGHWAY; } if (residentialTypes.contains(wayType)) { - additionalFlags |= RESIDENTIAL; + flags |= RESIDENTIAL; } if (numberLanes == 1 && !oneLaneIgnoreTypes.contains(wayType)) { - additionalFlags |= ONE_LANE; + flags |= ONE_LANE; } if (mainroadTypes.contains(wayType)) { - additionalFlags |= MAIN_ROAD; + flags |= MAIN_ROAD; } if (cyclewayTypes.contains(wayType)) { - additionalFlags |= CYCLEWAY; + flags |= CYCLEWAY; } Integer result = wayTypeIntMap.get(wayType); if (result != null) { - return result | additionalFlags; + return result | flags; } return 0; } @@ -145,4 +172,7 @@ public static boolean isLowerType(int a, int b) { return typeB + 4 < typeA; } + public void setWay(Way way, int lanes, int edge, EdgeIntAccess access) { + setInt(false, edge, access, encode(way.getType(), lanes)); + } } diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/CharlottenburgRoutingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/CharlottenburgRoutingTest.java new file mode 100644 index 000000000..f980db71a --- /dev/null +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/CharlottenburgRoutingTest.java @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2024 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import org.eclipse.mosaic.lib.database.Database; +import org.eclipse.mosaic.lib.database.road.Connection; +import org.eclipse.mosaic.lib.enums.VehicleClass; +import org.eclipse.mosaic.lib.geo.GeoPoint; +import org.eclipse.mosaic.lib.junit.GeoProjectionRule; +import org.eclipse.mosaic.lib.routing.graphhopper.GraphHopperRouting; + +import com.google.common.collect.Lists; +import org.apache.commons.io.FileUtils; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; + +import java.io.File; +import java.io.IOException; +import java.util.List; + +/** + * Test routing with a real world map (Charlottenburg extract from BeST scenario). + */ +public class CharlottenburgRoutingTest { + + @Rule + public GeoProjectionRule transformationRule = new GeoProjectionRule(GeoPoint.latLon(52, 13)); + + private final static String dbFile = "/charlottenburg.db"; + + @Rule + public TemporaryFolder folder = new TemporaryFolder(); + + private Database database; + private GraphHopperRouting routing; + + @Before + public void setUp() throws IOException { + final File dbFileCopy = folder.newFile("charlottenburg.db"); + + FileUtils.copyInputStreamToFile(getClass().getResourceAsStream(dbFile), dbFileCopy); + + database = Database.loadFromFile(dbFileCopy); + + routing = new GraphHopperRouting(database); + } + + @Test + public void findPaths_27537749_to_252864802() { + List<CandidateRoute> result = routing + .findRoutes(new RoutingRequest( + new RoutingPosition(GeoPoint.latLon(52.504185, 13.323964), null, "-440300111"), + new RoutingPosition(database.getNode("26761203").getPosition()), + new RoutingParameters() + .vehicleClass(VehicleClass.Car) + .alternativeRoutes(1) + .costFunction(RoutingCostFunction.Fastest) + )); + assertNotNull(result); + assertEquals(2, result.size()); + assertValidRoute(result.get(0)); + assertValidRoute(result.get(1)); + assertEquals(Lists.newArrayList("-440300111", "4381160#2", "832017303", "823947542#0", "110008909#2", "547450789#0", "4402682#8", "4490390#2", "-25418285#1", "4500153"), + result.get(0).getConnectionIds()); + assertEquals(Lists.newArrayList("-440300111", "4381160#2", "832017303", "823947542#0", "110008909#2", "547450789#0", "490351849#0", "490351848#0", "4492013#2", "25418287#6", "318889281#0", "4371002#2", "-4437136#0"), + result.get(1).getConnectionIds()); + } + + private void assertValidRoute(CandidateRoute candidateRoute) { + Connection currentConnection; + Connection previousConnection = null; + for (String connectionId : candidateRoute.getConnectionIds()) { + currentConnection = database.getConnection(connectionId); + if (previousConnection != null && !previousConnection.getOutgoingConnections().contains(currentConnection)) { + throw new AssertionError("Route is not valid, no transition existing"); + } + previousConnection = currentConnection; + } + } + +} diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/database/DatabaseRoutingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/database/DatabaseRoutingTest.java index da7cdfefd..3bf4bd85b 100644 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/database/DatabaseRoutingTest.java +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/database/DatabaseRoutingTest.java @@ -229,7 +229,7 @@ public void findRoutes() throws InternalFederateException { //ASSERT assertEquals(0, response.getAlternativeRoutes().size()); assertNotNull(response.getBestRoute()); - assertEquals(15.672, response.getBestRoute().getTime(), 0.1d); + assertEquals(15.237, response.getBestRoute().getTime(), 0.1d); assertEquals(304.74, response.getBestRoute().getLength(), 0.1d); assertEquals(Arrays.asList("32909782_26704482_26785753", "25185001_26785753_26704584"), response.getBestRoute().getConnectionIds()); diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperMosaicTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperMosaicTest.java deleted file mode 100644 index b2c00c5af..000000000 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperMosaicTest.java +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.BellmanFordRouting; -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.DijkstraCamvitChoiceRouting; -import org.eclipse.mosaic.lib.routing.graphhopper.algorithm.RoutingAlgorithmFactory; -import org.eclipse.mosaic.lib.routing.graphhopper.extended.ExtendedGHRequest; -import org.eclipse.mosaic.lib.routing.graphhopper.extended.ExtendedGHRequest.WeightingFactory; -import org.eclipse.mosaic.lib.routing.graphhopper.extended.ExtendedGHResponse; -import org.eclipse.mosaic.lib.routing.graphhopper.extended.ExtendedGraphHopper; -import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; -import org.eclipse.mosaic.lib.routing.graphhopper.util.GHListHelper; -import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; - -import com.graphhopper.GHRequest; -import com.graphhopper.GHResponse; -import com.graphhopper.routing.Path; -import com.graphhopper.routing.RoutingAlgorithm; -import com.graphhopper.routing.util.TurnCostEncoder; -import com.graphhopper.routing.weighting.FastestWeighting; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.storage.GraphExtension; -import com.graphhopper.storage.GraphHopperStorage; -import com.graphhopper.storage.TurnCostExtension; -import com.graphhopper.util.shapes.GHPoint; -import org.junit.Test; - -import java.util.List; - -public class GraphHopperMosaicTest { - - @Test - public void importFromTestGraph() { - ExtendedGraphHopper gh = new ExtendedGraphHopper(new TestGraphRule(null), new GraphhopperToDatabaseMapper()); - gh.importOrLoad(); - - assertFalse("Contraction Hierarchies should be disabled", gh.isCHEnabled()); - assertTrue("Graph is not from instance GraphHopperStorage", gh.getGraphHopperStorage() instanceof GraphHopperStorage); - - assertTrue("The default CAR encoder should implement TurnCostEncoder", - gh.getEncodingManager().getEncoder("CAR") instanceof TurnCostEncoder); - - GraphExtension extStorage = gh.getGraphHopperStorage().getExtension(); - assertTrue("Extended storage of graph is not from instance TurnCostStorage", extStorage instanceof TurnCostExtension); - assertTrue("Extended storage must offer an additional edge field", extStorage.isRequireEdgeField()); - - assertEquals("Not all nodes have been imported.", 14, gh.getGraphHopperStorage().getNodes()); - - } - - @Test(expected = IllegalStateException.class) - public void extendedGHRequestRequiredForRouting() { - ExtendedGraphHopper gh = new ExtendedGraphHopper(null, null); - gh.route(new GHRequest((GHPoint) null, (GHPoint) null)); - } - - @Test - public void routeRequest_alternativeRoutesWithDijkstra() { - //setup - final ExtendedGraphHopper gh = new ExtendedGraphHopper(new TestGraphRule(null), new GraphhopperToDatabaseMapper()); - gh.importOrLoad(); - - ExtendedGHRequest request = new ExtendedGHRequest(new GHPoint(0, 0), new GHPoint(0.03, 0.03)); - request.setWeightingFactory(new WeightingFactory() { - - @Override - public Weighting create(Graph graph) { - return new FastestWeighting(gh.getEncodingManager().getEncoder("CAR")); - } - }); - request.setRoutingAlgorithmFactory(new RoutingAlgorithmFactory() { - - @Override - public RoutingAlgorithm createAlgorithm(Graph graph, Weighting weighting) { - return new DijkstraCamvitChoiceRouting(graph, weighting); - } - }); - request.setVehicle("CAR"); - request.setAlternatives(2); - - //run - GHResponse response = gh.route(request); - - //assert - assertTrue("response should be from instance ExtendedGHResponse", response instanceof ExtendedGHResponse); - assertTrue(response.getErrors().isEmpty()); - - ExtendedGHResponse extResponse = (ExtendedGHResponse) response; - Path p = extResponse.getPath(); - assertNotNull(p); - assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); - assertEquals(5000, p.getDistance(), 0.1); - assertEquals(300000, p.getTime()); - - List<ExtendedGHResponse> alternatives = extResponse.getAdditionalRoutes(); - assertNotNull(alternatives); - assertEquals(2, alternatives.size()); - - p = alternatives.get(0).getPath(); - assertNotNull(p); - assertEquals(GHListHelper.createTList(0, 4, 7, 9, 10), p.calcNodes()); - assertEquals(5500, p.getDistance(), 0.1); - assertEquals(330000, p.getTime()); - - p = alternatives.get(1).getPath(); - assertNotNull(p); - assertEquals(GHListHelper.createTList(0, 1, 2, 6, 10), p.calcNodes()); - assertEquals(5600, p.getDistance(), 0.1); - assertEquals(336000, p.getTime()); - - } - - @Test - public void routeRequest_fastestWithBellmanFord() { - //setup - final ExtendedGraphHopper gh = new ExtendedGraphHopper(new TestGraphRule(null), new GraphhopperToDatabaseMapper()); - gh.importOrLoad(); - - ExtendedGHRequest request = new ExtendedGHRequest(new GHPoint(0, 0), new GHPoint(0.03, 0.03)); - request.setWeightingFactory((graph) -> new FastestWeighting(gh.getEncodingManager().getEncoder("CAR"))); - request.setRoutingAlgorithmFactory(BellmanFordRouting::new); - request.setVehicle("CAR"); - - //run - GHResponse response = gh.route(request); - - //assert - assertTrue("response should be from instance ExtendedGHResponse", response instanceof ExtendedGHResponse); - assertTrue(response.getErrors().isEmpty()); - - ExtendedGHResponse extResponse = (ExtendedGHResponse) response; - Path p = extResponse.getPath(); - assertNotNull(p); - assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); - assertEquals(5000, p.getDistance(), 0.1); - assertEquals(300000, p.getTime()); - } - -} diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRoutingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRoutingTest.java index 5b4ecb067..b661ca137 100644 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRoutingTest.java +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperRoutingTest.java @@ -60,8 +60,7 @@ public void setUp() throws IOException { database = Database.loadFromFile(dbFileCopy); - routing = new GraphHopperRouting(); - routing.loadGraphFromDatabase(database); + routing = new GraphHopperRouting(database); } @Test diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeightingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeightingTest.java new file mode 100644 index 000000000..374203e5f --- /dev/null +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/GraphHopperWeightingTest.java @@ -0,0 +1,159 @@ +/* + * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing.graphhopper; + +import static org.junit.Assert.assertEquals; + +import org.eclipse.mosaic.lib.routing.RoutingCostFunction; +import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; +import org.eclipse.mosaic.lib.routing.graphhopper.util.OptionalTurnCostProvider; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; + +import com.graphhopper.routing.weighting.Weighting; +import com.graphhopper.util.EdgeExplorer; +import com.graphhopper.util.EdgeIterator; +import org.junit.Rule; +import org.junit.Test; + +public class GraphHopperWeightingTest { + + @Rule + public TestGraphRule testGraph = new TestGraphRule(); + + @Test + public void fastest_noTurnCosts() { + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + + Weighting w = new GraphHopperWeighting(enc, testGraph.getEncodingManager().wayType(), new OptionalTurnCostProvider(enc, testGraph.getGraph().getTurnCostStorage()), null) + .setRoutingCostFunction(RoutingCostFunction.Fastest); + + EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); + EdgeIterator it = expl.setBaseNode(0); + + double distance = it.getDistance(); + + double weight = w.calcEdgeWeight(it, false); + double turnWeight = w.calcTurnWeight(1, 0, 0); + + assertEquals(distance / enc.speed().getMaxStorableDecimal() * 3.6, weight, 0.1d); + assertEquals(0, turnWeight, 0.1d); + } + + @Test + public void shortest_noTurnCosts() { + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + + Weighting w = new GraphHopperWeighting(enc, testGraph.getEncodingManager().wayType(), new OptionalTurnCostProvider(enc, testGraph.getGraph().getTurnCostStorage()), null) + .setRoutingCostFunction(RoutingCostFunction.Shortest); + + EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); + EdgeIterator it = expl.setBaseNode(0); + + double distance = it.getDistance(); + + double weight = w.calcEdgeWeight(it, false); + double turnWeight = w.calcTurnWeight(1, 0, 0); + + assertEquals(distance, weight, 0.1d); + assertEquals(0, turnWeight, 0.1d); + } + + + @Test + public void shortest_turnCosts() { + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + + testGraph.getGraph().getTurnCostStorage().set(enc.turnCost(), 1, 0, 0, 10.0); + + Weighting w = new GraphHopperWeighting(enc, testGraph.getEncodingManager().wayType(), new OptionalTurnCostProvider(enc, testGraph.getGraph().getTurnCostStorage()), null) + .setRoutingCostFunction(RoutingCostFunction.Shortest); + + EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); + EdgeIterator it = expl.setBaseNode(0); + + double distance = it.getDistance(); + + double weight = w.calcEdgeWeight(it, false); + double turnWeight = w.calcTurnWeight(1, 0, 0); + + assertEquals(distance, weight, 0.1d); + assertEquals(10, turnWeight, 0.1d); + } + + @Test + public void fastest_turnCosts() { + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + + testGraph.getGraph().getTurnCostStorage().set(enc.turnCost(), 1, 0, 0, 10.0); + + Weighting w = new GraphHopperWeighting(enc, testGraph.getEncodingManager().wayType(), new OptionalTurnCostProvider(enc, testGraph.getGraph().getTurnCostStorage()), null) + .setRoutingCostFunction(RoutingCostFunction.Fastest); + + EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); + EdgeIterator it = expl.setBaseNode(0); + + double distance = it.getDistance(); + + double weight = w.calcEdgeWeight(it, false); + double turnWeight = w.calcTurnWeight(1, 0, 0); + + assertEquals(distance / enc.speed().getMaxOrMaxStorableDecimal() * 3.6, weight, 0.1d); + assertEquals(10, turnWeight, 0.1d); + } + + @Test + public void shortest_turnRestriction() { + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + + testGraph.getGraph().getTurnCostStorage().set(enc.turnRestriction(), 1, 0, 0, true); + + Weighting w = new GraphHopperWeighting(enc, testGraph.getEncodingManager().wayType(), new OptionalTurnCostProvider(enc, testGraph.getGraph().getTurnCostStorage()), null) + .setRoutingCostFunction(RoutingCostFunction.Shortest); + + EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); + EdgeIterator it = expl.setBaseNode(0); + + double distance = it.getDistance(); + + double weight = w.calcEdgeWeight(it, false); + double turnWeight = w.calcTurnWeight(1, 0, 0); + + assertEquals(distance, weight, 0.1d); + assertEquals(Double.POSITIVE_INFINITY, turnWeight, 0.1d); + } + + @Test + public void fastest_turnRestriction() { + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + + testGraph.getGraph().getTurnCostStorage().set(enc.turnRestriction(), 1, 0, 0, true); + + Weighting w = new GraphHopperWeighting(enc, testGraph.getEncodingManager().wayType(), new OptionalTurnCostProvider(enc, testGraph.getGraph().getTurnCostStorage()), null) + .setRoutingCostFunction(RoutingCostFunction.Fastest); + + EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); + EdgeIterator it = expl.setBaseNode(0); + + double distance = it.getDistance(); + + double weight = w.calcEdgeWeight(it, false); + double turnWeight = w.calcTurnWeight(1, 0, 0); + + assertEquals(distance / enc.speed().getMaxOrMaxStorableDecimal() * 3.6, weight, 0.1d); + assertEquals(Double.POSITIVE_INFINITY, turnWeight, 0.1d); + } + +} diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingTest.java new file mode 100644 index 000000000..b70f00613 --- /dev/null +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/AlternativeRoutesRoutingTest.java @@ -0,0 +1,128 @@ +/* + * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; + +import static org.junit.Assert.assertEquals; + +import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; +import org.eclipse.mosaic.lib.routing.graphhopper.util.GHListHelper; +import org.eclipse.mosaic.lib.routing.graphhopper.util.OptionalTurnCostProvider; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; + +import com.graphhopper.routing.Path; +import com.graphhopper.routing.RoutingAlgorithm; +import com.graphhopper.routing.weighting.FastestWeighting; +import com.graphhopper.routing.weighting.Weighting; +import com.graphhopper.storage.BaseGraph; +import com.graphhopper.util.PMap; +import com.graphhopper.util.Parameters; +import org.junit.Rule; +import org.junit.Test; + +import java.util.List; + +public class AlternativeRoutesRoutingTest { + + @Rule + public TestGraphRule testGraph = new TestGraphRule(); + + /** + * Calculates two alternatives paths using the test graph + */ + @Test + public void calculateAlternativePaths_withTurnCost() { + BaseGraph g = testGraph.getGraph(); + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + Weighting w = new FastestWeighting(enc.access(), enc.speed(), new OptionalTurnCostProvider(enc, g.getTurnCostStorage())); + + //100 seconds turn costs for turn (0-1)->(1-2) + g.getTurnCostStorage().set(enc.turnCost(), 0, 1, 2, 100); + + RoutingAlgorithm algo = RoutingAlgorithmFactory.DEFAULT.createAlgorithm(g, w, + new PMap().putObject(Parameters.Algorithms.AltRoute.MAX_PATHS, 3) + ); + + // RUN + List<Path> paths = algo.calcPaths(0, 10); + + // ASSERT + assertEquals(3, paths.size()); + + Path p = paths.get(0); + assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); + assertEquals(5000, p.getDistance(), 0.1); + + p = paths.get(1); + assertEquals(GHListHelper.createTList(0, 4, 7, 9, 10), p.calcNodes()); + assertEquals(5500, p.getDistance(), 0.1); + + p = paths.get(2); + assertEquals(GHListHelper.createTList(0, 1, 5, 6, 10), p.calcNodes()); + assertEquals(6000, p.getDistance(), 0.1); + } + + /** + * Calculates two alternatives paths using the test graph + * considering turn costs + */ + @Test + public void calculateAlternativePaths() { + BaseGraph g = testGraph.getGraph(); + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + Weighting w = new FastestWeighting(enc.access(), enc.speed(), new OptionalTurnCostProvider(enc, g.getTurnCostStorage())); + + RoutingAlgorithm algo = RoutingAlgorithmFactory.DEFAULT.createAlgorithm(g, w, + new PMap().putObject(Parameters.Algorithms.AltRoute.MAX_PATHS, 3) + ); + + // RUN + List<Path> paths = algo.calcPaths(0, 10); + + // ASSERT + assertEquals(3, paths.size()); + //assert shortest + Path p = paths.get(0); + assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); + assertEquals(5000, p.getDistance(), 0.1); + + p = paths.get(1); + assertEquals(GHListHelper.createTList(0, 4, 7, 9, 10), p.calcNodes()); + assertEquals(5500, p.getDistance(), 0.1); + + p = paths.get(2); + assertEquals(GHListHelper.createTList(0, 1, 2, 6, 10), p.calcNodes()); + assertEquals(5600, p.getDistance(), 0.1); + } + + /** + * Calculates only the best path. + */ + @Test + public void calculateBestPath() { + BaseGraph g = testGraph.getGraph(); + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + Weighting w = new FastestWeighting(enc.access(), enc.speed(), new OptionalTurnCostProvider(enc, g.getTurnCostStorage())); + + RoutingAlgorithm algo = RoutingAlgorithmFactory.DEFAULT.createAlgorithm(g, w, new PMap()); + + Path p = algo.calcPath(0, 10); + + //assert shortest + assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); + assertEquals(5000, p.getDistance(), 0.1); + } + +} diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRoutingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRoutingTest.java index 0986d9160..899283e2e 100644 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRoutingTest.java +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/BellmanFordRoutingTest.java @@ -19,42 +19,32 @@ import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; import org.eclipse.mosaic.lib.routing.graphhopper.util.GHListHelper; +import org.eclipse.mosaic.lib.routing.graphhopper.util.OptionalTurnCostProvider; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; import com.graphhopper.routing.Path; -import com.graphhopper.routing.util.BikeFlagEncoder; -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.routing.util.FootFlagEncoder; import com.graphhopper.routing.weighting.FastestWeighting; import com.graphhopper.routing.weighting.ShortestWeighting; -import com.graphhopper.routing.weighting.TurnWeighting; import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.GraphHopperStorage; -import com.graphhopper.storage.TurnCostExtension; +import com.graphhopper.storage.BaseGraph; +import com.graphhopper.util.PMap; import org.junit.Rule; import org.junit.Test; public class BellmanFordRoutingTest { - private EncodingManager encManager = EncodingManager.create( - new CarFlagEncoder(5, 5, 127), - new BikeFlagEncoder(), - new FootFlagEncoder() - ); @Rule - public TestGraphRule testGraph = new TestGraphRule(encManager); + public TestGraphRule testGraph = new TestGraphRule(); @Test public void calculateFastestPath() { - GraphHopperStorage g = testGraph.getGraph(); - FlagEncoder e = encManager.getEncoder("CAR"); - Weighting w = new FastestWeighting(e); - + BaseGraph g = testGraph.getGraph(); + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + Weighting w = new FastestWeighting(enc.access(), enc.speed()); //run - Path p = new BellmanFordRouting(g, w).calcPath(0, 10); + Path p = new BellmanFordRouting(g, w, new PMap()).calcPath(0, 10); //assert shortest assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); @@ -63,15 +53,15 @@ public void calculateFastestPath() { @Test public void calculateFastestPath_turnCosts() { - GraphHopperStorage g = testGraph.getGraph(); - FlagEncoder e = encManager.getEncoder("CAR"); - Weighting w = new TurnWeighting(new FastestWeighting(e), (TurnCostExtension) g.getExtension()); + BaseGraph g = testGraph.getGraph(); + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + Weighting w = new FastestWeighting(enc.access(), enc.speed(), new OptionalTurnCostProvider(enc, g.getTurnCostStorage())); //add expensive turn at (0-1)->(1,5) - testGraph.getTurnCostStorage().addTurnInfo(0, 1, 3, e.getTurnFlags(false, 124)); + g.getTurnCostStorage().set(enc.turnCost(), 0, 1, 3, 124); //run - Path p = new BellmanFordRouting(g, w).calcPath(0, 10); + Path p = new BellmanFordRouting(g, w, new PMap()).calcPath(0, 10); //assert shortest assertEquals(GHListHelper.createTList(0, 4, 7, 9, 10), p.calcNodes()); @@ -80,12 +70,12 @@ public void calculateFastestPath_turnCosts() { @Test public void calculateShortestPath() { - GraphHopperStorage g = testGraph.getGraph(); - FlagEncoder e = encManager.getEncoder("CAR"); - Weighting w = new ShortestWeighting(e); + BaseGraph g = testGraph.getGraph(); + VehicleEncoding enc = testGraph.getEncodingManager().getVehicleEncoding("car"); + Weighting w = new ShortestWeighting(enc.access(), enc.speed()); //run - Path p = new BellmanFordRouting(g, w).calcPath(0, 10); + Path p = new BellmanFordRouting(g, w, new PMap()).calcPath(0, 10); //assert shortest assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/CamvitChoiceRoutingTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/CamvitChoiceRoutingTest.java deleted file mode 100644 index ac796353d..000000000 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/CamvitChoiceRoutingTest.java +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import static org.junit.Assert.assertEquals; - -import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; -import org.eclipse.mosaic.lib.routing.graphhopper.util.GHListHelper; - -import com.graphhopper.routing.Path; -import com.graphhopper.routing.util.BikeFlagEncoder; -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.routing.util.FootFlagEncoder; -import com.graphhopper.routing.util.TurnCostEncoder; -import com.graphhopper.routing.weighting.FastestWeighting; -import com.graphhopper.routing.weighting.TurnWeighting; -import com.graphhopper.routing.weighting.Weighting; -import com.graphhopper.storage.Graph; -import com.graphhopper.storage.GraphHopperStorage; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; -import org.junit.runners.Parameterized.Parameters; - -import java.util.Arrays; -import java.util.Collection; -import java.util.List; - -@RunWith(Parameterized.class) -public class CamvitChoiceRoutingTest { - /** - * Run tests with both implementations: Djikstra and A* - */ - @Parameters - public static Collection<Object[]> configs() { - return Arrays.asList(new Object[][]{ - {(TestAlgorithmPreparation) DijkstraCamvitChoiceRouting::new}, - {(TestAlgorithmPreparation) AStarCamvitChoiceRouting::new}} - ); - } - - private TestAlgorithmPreparation algoPreparation; - - private EncodingManager encManager = EncodingManager.create( - new CarFlagEncoder(5, 5, 127), - new BikeFlagEncoder(), - new FootFlagEncoder() - ); - - @Rule - public TestGraphRule testGraph = new TestGraphRule(encManager); - - public CamvitChoiceRoutingTest(TestAlgorithmPreparation algoPreparation) { - this.algoPreparation = algoPreparation; - } - - /** - * Calculates two alternatives paths using the test graph - */ - @Test - public void calculateAlternativePaths_withTurnCost() { - GraphHopperStorage g = testGraph.getGraph(); - FlagEncoder e = encManager.getEncoder("CAR"); - TurnWeighting w = new TurnWeighting(new FastestWeighting(e), testGraph.getTurnCostStorage()); - - //2 seconds turn costs for turn (0-1)->(1-2) - testGraph.getTurnCostStorage().addTurnInfo(0, 1, 2, ((TurnCostEncoder) e).getTurnFlags(false, 124)); - - //run - AlternativeRoutesRoutingAlgorithm algo = algoPreparation.createAlgo(g, w); - - algo.setRequestAlternatives(2); - - Path p = algo.calcPath(0, 10); - - //assert shortest - assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); - assertEquals(5000, p.getDistance(), 0.1); - - List<Path> paths = algo.getAlternativePaths(); - assertEquals(2, paths.size()); - - p = paths.get(0); - assertEquals(GHListHelper.createTList(0, 4, 7, 9, 10), p.calcNodes()); - assertEquals(5500, p.getDistance(), 0.1); - - p = paths.get(1); - assertEquals(GHListHelper.createTList(0, 1, 5, 6, 10), p.calcNodes()); - assertEquals(6000, p.getDistance(), 0.1); - } - - /** - * Calculates two alternatives paths using the test graph - * considering turn costs - */ - @Test - public void calculateAlternativePaths() { - Graph g = testGraph.getGraph(); - FlagEncoder e = encManager.getEncoder("CAR"); - Weighting w = new FastestWeighting(e); - - AlternativeRoutesRoutingAlgorithm algo = algoPreparation.createAlgo(g, w); - - algo.setRequestAlternatives(2); - - Path p = algo.calcPath(0, 10); - - //assert shortest - assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); - assertEquals(5000, p.getDistance(), 0.1); - - List<Path> paths = algo.getAlternativePaths(); - assertEquals(2, paths.size()); - - p = paths.get(0); - assertEquals(GHListHelper.createTList(0, 4, 7, 9, 10), p.calcNodes()); - assertEquals(5500, p.getDistance(), 0.1); - - p = paths.get(1); - assertEquals(GHListHelper.createTList(0, 1, 2, 6, 10), p.calcNodes()); - assertEquals(5600, p.getDistance(), 0.1); - } - - /** - * Calculates only the best path using ChoiceRouting - */ - @Test - public void calculateBestPath() { - Graph g = testGraph.getGraph(); - FlagEncoder e = encManager.getEncoder("CAR"); - Weighting w = new FastestWeighting(e); - - AlternativeRoutesRoutingAlgorithm algo = algoPreparation.createAlgo(g, w); - - algo.setRequestAlternatives(0); - - Path p = algo.calcPath(0, 10); - - //assert shortest - assertEquals(GHListHelper.createTList(0, 1, 5, 10), p.calcNodes()); - assertEquals(5000, p.getDistance(), 0.1); - - List<Path> paths = algo.getAlternativePaths(); - assertEquals(0, paths.size()); - } - - interface TestAlgorithmPreparation { - AlternativeRoutesRoutingAlgorithm createAlgo(Graph g, Weighting w); - } -} diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/TurnWeightingImplTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/TurnWeightingImplTest.java deleted file mode 100644 index b7bd02544..000000000 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/algorithm/TurnWeightingImplTest.java +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Copyright (c) 2020 Fraunhofer FOKUS and others. All rights reserved. - * - * See the NOTICE file(s) distributed with this work for additional - * information regarding copyright ownership. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contact: mosaic@fokus.fraunhofer.de - */ - -package org.eclipse.mosaic.lib.routing.graphhopper.algorithm; - -import static org.junit.Assert.assertEquals; - -import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; - -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.routing.util.TurnCostEncoder; -import com.graphhopper.routing.weighting.FastestWeighting; -import com.graphhopper.routing.weighting.ShortestWeighting; -import com.graphhopper.routing.weighting.TurnWeighting; -import com.graphhopper.util.EdgeExplorer; -import com.graphhopper.util.EdgeIterator; -import org.junit.Rule; -import org.junit.Test; - -public class TurnWeightingImplTest { - - private EncodingManager encManager = EncodingManager.create(new CarFlagEncoder(5, 5, 127)); - - @Rule - public TestGraphRule testGraph = new TestGraphRule(encManager); - - @Test - public void fastest_noTurnCosts() { - FlagEncoder enc = encManager.getEncoder("CAR"); - - TurnWeighting w = new TurnWeighting(new FastestWeighting(enc), testGraph.getTurnCostStorage()); - - EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); - EdgeIterator it = expl.setBaseNode(0); - - double distance = it.getDistance(); - - double weight = w.calcWeight(it, false, 0); - double turnWeight = w.calcTurnWeight(1, 0, 0); - - assertEquals(distance / enc.getMaxSpeed(), weight, 0.1d); - assertEquals(0, turnWeight, 0.1d); - } - - @Test - public void shortest_noTurnCosts() { - FlagEncoder enc = encManager.getEncoder("CAR"); - - TurnWeighting w = new TurnWeighting(new ShortestWeighting(enc), testGraph.getTurnCostStorage()); - - EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); - EdgeIterator it = expl.setBaseNode(0); - - double distance = it.getDistance(); - - double weight = w.calcWeight(it, false, 0); - double turnWeight = w.calcTurnWeight(1, 0, 0); - - assertEquals(distance, weight, 0.1d); - assertEquals(0, turnWeight, 0.1d); - } - - - @Test - public void shortest_turnCosts() { - FlagEncoder enc = encManager.getEncoder("CAR"); - - testGraph.getTurnCostStorage().addTurnInfo(1, 0, 0, ((TurnCostEncoder) enc).getTurnFlags(false, 10)); - - TurnWeighting w = new TurnWeighting(new ShortestWeighting(enc), testGraph.getTurnCostStorage()); - - EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); - EdgeIterator it = expl.setBaseNode(0); - - double distance = it.getDistance(); - - double weight = w.calcWeight(it, false, 0); - double turnWeight = w.calcTurnWeight(1, 0, 0); - - assertEquals(distance, weight, 0.1d); - assertEquals(10, turnWeight, 0.1d); - } - - @Test - public void fastest_turnCosts() { - FlagEncoder enc = encManager.getEncoder("CAR"); - - testGraph.getTurnCostStorage().addTurnInfo(1, 0, 0, ((TurnCostEncoder) enc).getTurnFlags(false, 10)); - - TurnWeighting w = new TurnWeighting(new FastestWeighting(enc), testGraph.getTurnCostStorage()); - - EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); - EdgeIterator it = expl.setBaseNode(0); - - double distance = it.getDistance(); - - double weight = w.calcWeight(it, false, 0); - double turnWeight = w.calcTurnWeight(1, 0, 0); - - assertEquals(distance / enc.getMaxSpeed(), weight, 0.1d); - assertEquals(10, turnWeight, 0.1d); - } - - @Test - public void shortest_turnRestriction() { - FlagEncoder enc = encManager.getEncoder("CAR"); - - testGraph.getTurnCostStorage().addTurnInfo(1, 0, 0, ((TurnCostEncoder) enc).getTurnFlags(true, 0)); - - TurnWeighting w = new TurnWeighting(new ShortestWeighting(enc), testGraph.getTurnCostStorage()); - - EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); - EdgeIterator it = expl.setBaseNode(0); - - double distance = it.getDistance(); - - double weight = w.calcWeight(it, false, 0); - double turnWeight = w.calcTurnWeight(1, 0, 0); - - assertEquals(distance, weight, 0.1d); - assertEquals(Double.POSITIVE_INFINITY, turnWeight, 0.1d); - } - - @Test - public void fastest_turnRestriction() { - FlagEncoder enc = encManager.getEncoder("CAR"); - - testGraph.getTurnCostStorage().addTurnInfo(1, 0, 0, ((TurnCostEncoder) enc).getTurnFlags(true, 0)); - - TurnWeighting w = new TurnWeighting(new FastestWeighting(enc), testGraph.getTurnCostStorage()); - - EdgeExplorer expl = testGraph.getGraph().createEdgeExplorer(); - EdgeIterator it = expl.setBaseNode(0); - - double distance = it.getDistance(); - - double weight = w.calcWeight(it, false, 0); - double turnWeight = w.calcTurnWeight(1, 0, 0); - - assertEquals(distance / enc.getMaxSpeed(), weight, 0.1d); - assertEquals(Double.POSITIVE_INFINITY, turnWeight, 0.1d); - } - -} diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/junit/TestGraphRule.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/junit/TestGraphRule.java index 7f5a1e4b7..30c64e469 100644 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/junit/TestGraphRule.java +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/junit/TestGraphRule.java @@ -15,48 +15,40 @@ package org.eclipse.mosaic.lib.routing.graphhopper.junit; -import org.eclipse.mosaic.lib.routing.graphhopper.GraphLoader; -import org.eclipse.mosaic.lib.routing.graphhopper.util.GraphhopperToDatabaseMapper; +import org.eclipse.mosaic.lib.routing.graphhopper.GraphHopperRouting; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncoding; +import org.eclipse.mosaic.lib.routing.graphhopper.util.VehicleEncodingManager; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.storage.GraphHopperStorage; -import com.graphhopper.storage.RAMDirectory; -import com.graphhopper.storage.TurnCostExtension; +import com.graphhopper.routing.util.AllEdgesIterator; +import com.graphhopper.storage.BaseGraph; import org.junit.rules.ExternalResource; -public class TestGraphRule extends ExternalResource implements GraphLoader { +public class TestGraphRule extends ExternalResource { - private GraphHopperStorage graph; - private EncodingManager encodingManager; + private BaseGraph graph; + private final VehicleEncodingManager encodingManager; - private TurnCostExtension turnCostStorage; - private boolean emptyGraph; + private final boolean emptyGraph; - public TestGraphRule(EncodingManager encodingManager) { - this(encodingManager, false); + public TestGraphRule() { + this(false); } - public TestGraphRule(EncodingManager encodingManager, boolean emptyGraph) { - this.encodingManager = encodingManager; + public TestGraphRule(boolean emptyGraph) { + this.encodingManager = new VehicleEncodingManager(GraphHopperRouting.PROFILES); this.emptyGraph = emptyGraph; } + public VehicleEncodingManager getEncodingManager() { + return encodingManager; + } + @Override protected void before() throws Throwable { - turnCostStorage = new TurnCostExtension() { - @Override - public boolean isRequireEdgeField() { - return true; - } - @Override - public int getDefaultEdgeFieldValue() { - return 0; - } - }; - - final RAMDirectory dir = new RAMDirectory(); - graph = new GraphHopperStorage(dir, encodingManager, true, turnCostStorage); + graph = new BaseGraph.Builder(encodingManager.getEncodingManager()) + .withTurnCosts(true) + .build(); if (!emptyGraph) { graph = graph.create(100); @@ -69,30 +61,12 @@ public int getDefaultEdgeFieldValue() { protected void after() { graph.close(); graph = null; - turnCostStorage = null; } - public GraphHopperStorage getGraph() { + public BaseGraph getGraph() { return graph; } - public TurnCostExtension getTurnCostStorage() { - return turnCostStorage; - } - - @Override - public void initialize(GraphHopperStorage graph, EncodingManager encodingManager, GraphhopperToDatabaseMapper mapper) { - this.graph = graph; - this.turnCostStorage = (TurnCostExtension) graph.getExtension(); - this.encodingManager = encodingManager; - } - - @Override - public void loadGraph() { - graph.create(25); - createTestGraph(); - } - private void createTestGraph() { graph.getNodeAccess().setNode(0, 0.00, 0.00, 0); //A graph.getNodeAccess().setNode(1, 0.01, 0.00, 0); //B @@ -109,28 +83,39 @@ private void createTestGraph() { graph.getNodeAccess().setNode(12, 0.01, 0.04, 0); //M graph.getNodeAccess().setNode(13, 0.02, 0.04, 0); //N - graph.edge(0, 1, 1000, true); //0 - graph.edge(0, 4, 1000, true); //1 - graph.edge(1, 2, 1000, true); //2 - graph.edge(1, 5, 1000, true); //3 - graph.edge(1, 7, 2500, true); //4 - graph.edge(2, 3, 1000, true); //5 - graph.edge(2, 6, 1600, true); //6 - graph.edge(3, 6, 1000, true); //7 - graph.edge(4, 7, 1000, true); //8 - graph.edge(5, 6, 2000, true); //9 - graph.edge(5, 7, 1600, true); //10 - graph.edge(5, 10, 3000, true); //11 - graph.edge(6, 10, 2000, true); //12 - graph.edge(7, 8, 1000, true); //13 - graph.edge(7, 9, 1500, true); //14 - graph.edge(8, 11, 1000, true); //15 - graph.edge(9, 10, 2000, true); //16 - graph.edge(9, 11, 1500, true); //17 - graph.edge(9, 13, 1500, true); //18 - graph.edge(10, 13, 1500, true); //19 - graph.edge(11, 12, 1000, true); //20 - graph.edge(12, 13, 1000, true); //21 + + graph.edge(0, 1).setDistance(1000); //0 + graph.edge(0, 4).setDistance(1000); //1 + graph.edge(1, 2).setDistance(1000); //2 + graph.edge(1, 5).setDistance(1000); //3 + graph.edge(1, 7).setDistance(2500); //4 + graph.edge(2, 3).setDistance(1000); //5 + graph.edge(2, 6).setDistance(1600); //6 + graph.edge(3, 6).setDistance(1000); //7 + graph.edge(4, 7).setDistance(1000); //8 + graph.edge(5, 6).setDistance(2000); //9 + graph.edge(5, 7).setDistance(1600); //10 + graph.edge(5, 10).setDistance(3000); //11 + graph.edge(6, 10).setDistance(2000); //12 + graph.edge(7, 8).setDistance(1000); //13 + graph.edge(7, 9).setDistance(1500); //14 + graph.edge(8, 11).setDistance(1000); //15 + graph.edge(9, 10).setDistance(2000); //16 + graph.edge(9, 11).setDistance(1500); //17 + graph.edge(9, 13).setDistance(1500); //18 + graph.edge(10, 13).setDistance(1500); //19 + graph.edge(11, 12).setDistance(1000); //20 + graph.edge(12, 13).setDistance(1000); //21 + + + VehicleEncoding enc = encodingManager.getVehicleEncoding("car"); + AllEdgesIterator it = graph.getAllEdges(); + while (it.next()) { + it.set(enc.access(), true); + it.set(enc.speed(), 60); + it.setReverse(enc.access(), true); + it.setReverse(enc.speed(), 60); + } } } diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoaderTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoaderTest.java index 1b6659237..a67db7f0a 100644 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoaderTest.java +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/DatabaseGraphLoaderTest.java @@ -21,19 +21,13 @@ import static org.junit.Assert.assertTrue; import org.eclipse.mosaic.lib.database.Database; -import org.eclipse.mosaic.lib.routing.graphhopper.DatabaseGraphLoader; -import org.eclipse.mosaic.lib.routing.graphhopper.GraphLoader; import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.DefaultEdgeFilter; +import com.graphhopper.routing.ev.DecimalEncodedValue; +import com.graphhopper.routing.util.AccessFilter; import com.graphhopper.routing.util.EdgeFilter; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.FlagEncoder; -import com.graphhopper.routing.util.TurnCostEncoder; -import com.graphhopper.storage.GraphHopperStorage; -import com.graphhopper.storage.GraphStorage; -import com.graphhopper.storage.TurnCostExtension; +import com.graphhopper.storage.BaseGraph; +import com.graphhopper.storage.TurnCostStorage; import com.graphhopper.util.EdgeExplorer; import com.graphhopper.util.EdgeIterator; import org.apache.commons.io.IOUtils; @@ -50,13 +44,12 @@ /** * Tests, if the {@link DatabaseGraphLoader} correctly transfers the scenario database - * into {@link GraphStorage}. + * into {@link BaseGraph}. */ public class DatabaseGraphLoaderTest { - private EncodingManager encodingManager = EncodingManager.create(new CarFlagEncoder(5, 5, 127)); @Rule - public TestGraphRule testGraph = new TestGraphRule(encodingManager, true); + public TestGraphRule testGraph = new TestGraphRule(true); @Rule public TemporaryFolder folder = new TemporaryFolder(); @@ -72,10 +65,10 @@ public void correctImport() throws Exception { Database database = Database.loadFromFile(testDb); - GraphLoader reader = new DatabaseGraphLoader(database); + DatabaseGraphLoader reader = new DatabaseGraphLoader(database); GraphhopperToDatabaseMapper mapper = new GraphhopperToDatabaseMapper(); - GraphHopperStorage g = testGraph.getGraph(); - TurnCostExtension tcStorage = testGraph.getTurnCostStorage(); + BaseGraph g = testGraph.getGraph(); + TurnCostStorage tcStorage = testGraph.getGraph().getTurnCostStorage(); // pre-assert assertEquals("#nodes", 4, database.getNodes().size()); @@ -85,7 +78,7 @@ public void correctImport() throws Exception { assertEquals("#routes", 1, database.getRoutes().size()); //run - reader.initialize(g, encodingManager, mapper); + reader.initialize(g, testGraph.getEncodingManager(), mapper); reader.loadGraph(); //assert @@ -100,8 +93,10 @@ public void correctImport() throws Exception { int con3_2_3 = mapper.fromConnection(database.getConnection("3_2_3")); int con3_3_2 = mapper.fromConnection(database.getConnection("3_3_2")); - FlagEncoder enc = encodingManager.getEncoder("CAR"); - EdgeFilter outFilter = DefaultEdgeFilter.outEdges(enc); + VehicleEncoding vehicleEncoding = testGraph.getEncodingManager().getVehicleEncoding("car"); + WayTypeEncoder wayTypeEnc = testGraph.getEncodingManager().wayType(); + + EdgeFilter outFilter = AccessFilter.outEdges(vehicleEncoding.access()); assertEquals("#nodes of graph", 4, g.getNodes()); @@ -112,8 +107,8 @@ public void correctImport() throws Exception { assertEquals(con1_1_2, it.getEdge()); assertEquals(n2, it.getAdjNode()); assertEquals(100, it.getDistance(), 0d); - assertEquals(140, it.get(enc.getAverageSpeedEnc()), 10d); //graphhopper has default max speed of 140 km/h - assertFalse(WayTypeEncoder.isResidential(it.getAdditionalField())); + assertEquals(140, it.get(vehicleEncoding.speed()), 10d); //graphhopper has default max speed of 140 km/h + assertFalse(WayTypeEncoder.isResidential(it.get(wayTypeEnc))); assertFalse(it.next()); final Map<Integer, EdgeAssert> assertionMap = new HashMap<>(); @@ -122,66 +117,64 @@ public void correctImport() throws Exception { it = expl.setBaseNode(n2); assertionMap.put(n1, edgeAssertion(n1, con1_2_1, 80, 140, false)); assertionMap.put(n3, edgeAssertion(n3, con3_2_3, 50, 140, false)); - assertNextEdge(enc, it, assertionMap); - assertNextEdge(enc, it, assertionMap); + assertNextEdge(vehicleEncoding.speed(), wayTypeEnc, it, assertionMap); + assertNextEdge(vehicleEncoding.speed(), wayTypeEnc, it, assertionMap); assertTrue(assertionMap.isEmpty()); assertFalse(it.next()); //assert outgoing edges of node 3 it = expl.setBaseNode(n3); assertionMap.put(n2, edgeAssertion(n2, con3_3_2, 50, 140, false)); - assertNextEdge(enc, it, assertionMap); + assertNextEdge(vehicleEncoding.speed(), wayTypeEnc, it, assertionMap); assertTrue(assertionMap.isEmpty()); assertFalse(it.next()); //assert outgoing edges of node 4 it = expl.setBaseNode(n4); assertionMap.put(n2, edgeAssertion(n2, con2_4_2, 50, 30 * 3.6 * 0.9, true)); - assertNextEdge(enc, it, assertionMap); + assertNextEdge(vehicleEncoding.speed(), wayTypeEnc, it, assertionMap); assertTrue(assertionMap.isEmpty()); assertFalse(it.next()); - //assert turn restriction - TurnCostEncoder turnEnc = (TurnCostEncoder) enc; //U-Turns have high costs after the import process (u-turn penalty + turn costs) - assertFalse(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con1_2_1, n1, con1_1_2))); - assertFalse(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con3_2_3, n3, con3_3_2))); - assertEquals(122, turnEnc.getTurnCost(tcStorage.getTurnCostFlags(con1_2_1, n1, con1_1_2)), 0.1d); - assertEquals(122, turnEnc.getTurnCost(tcStorage.getTurnCostFlags(con3_2_3, n3, con3_3_2)), 0.1d); + assertFalse(tcStorage.get(vehicleEncoding.turnRestriction(), con1_2_1, n1, con1_1_2)); + assertFalse(tcStorage.get(vehicleEncoding.turnRestriction(), con3_2_3, n3, con3_3_2)); + assertEquals(130, tcStorage.get(vehicleEncoding.turnCost(), con1_2_1, n1, con1_1_2), 0.1d); + assertEquals(130, tcStorage.get(vehicleEncoding.turnCost(), con3_2_3, n3, con3_3_2), 0.1d); //Except for U-Turs in the middle of the road. We do not allow them here - assertTrue(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con1_1_2, n2, con1_2_1))); - assertTrue(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con3_3_2, n2, con3_2_3))); + assertTrue(tcStorage.get(vehicleEncoding.turnRestriction(), con1_1_2, n2, con1_2_1)); + assertTrue(tcStorage.get(vehicleEncoding.turnRestriction(), con3_3_2, n2, con3_2_3)); //Turn restriction in database has been taken over - assertTrue(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con2_4_2, n2, con3_2_3))); + assertTrue(tcStorage.get(vehicleEncoding.turnRestriction(), con2_4_2, n2, con3_2_3)); //all other turns are allowed - assertFalse(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con1_1_2, n2, con3_2_3))); - assertFalse(turnEnc.isTurnRestricted(tcStorage.getTurnCostFlags(con2_4_2, n2, con1_2_1))); + assertFalse(tcStorage.get(vehicleEncoding.turnRestriction(), con1_1_2, n2, con3_2_3)); + assertFalse(tcStorage.get(vehicleEncoding.turnRestriction(), con2_4_2, n2, con1_2_1)); //turn costs have been calculated (might be unrealistic due to unrealistic test data) - assertEquals(40, turnEnc.getTurnCost(tcStorage.getTurnCostFlags(con1_1_2, n2, con3_2_3)), 5.d); //left turn - assertEquals(37, turnEnc.getTurnCost(tcStorage.getTurnCostFlags(con2_4_2, n2, con1_2_1)), 5.d); //left turn + assertEquals(40, tcStorage.get(vehicleEncoding.turnCost(), con1_1_2, n2, con3_2_3), 5.d); //left turn + assertEquals(37, tcStorage.get(vehicleEncoding.turnCost(), con2_4_2, n2, con1_2_1), 5.d); //left turn } - private void assertNextEdge(FlagEncoder enc, EdgeIterator it, Map<Integer, EdgeAssert> assertionMap) { + private void assertNextEdge(DecimalEncodedValue speedEnc, WayTypeEncoder wayTypeEnc, EdgeIterator it, Map<Integer, EdgeAssert> assertionMap) { assertTrue(it.next()); EdgeAssert edgeAssert = assertionMap.remove(it.getAdjNode()); assertNotNull(edgeAssert); - edgeAssert.assertEdge(enc, it); + edgeAssert.assertEdge(speedEnc, wayTypeEnc, it); } private EdgeAssert edgeAssertion(final int adjNode, final int edgeIt, final double distance, final double speed, final boolean isResidential) { return new EdgeAssert(adjNode) { @Override - void assertEdge(FlagEncoder enc, EdgeIterator it) { + void assertEdge(DecimalEncodedValue speedEnc, WayTypeEncoder wayTypeEnc, EdgeIterator it) { assertEquals(adjNode, it.getAdjNode()); assertEquals(edgeIt, it.getEdge()); assertEquals(distance, it.getDistance(), 0d); - assertEquals(speed, it.get(enc.getAverageSpeedEnc()), 10d); //graphhopper has default max speed of 140 km/h - assertEquals(isResidential, WayTypeEncoder.isResidential(it.getAdditionalField())); + assertEquals(speed, it.get(speedEnc), 10d); //graphhopper has default max speed of 140 km/h + assertEquals(isResidential, WayTypeEncoder.isResidential(it.get(wayTypeEnc))); } }; } @@ -194,7 +187,7 @@ public EdgeAssert(int adjNode) { this.adjNode = adjNode; } - abstract void assertEdge(FlagEncoder enc, EdgeIterator it); + abstract void assertEdge(DecimalEncodedValue speedEnc, WayTypeEncoder wayTypeEnc, EdgeIterator it); public int getAdjNode() { return adjNode; diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzerTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzerTest.java index cc0e286cd..908025753 100644 --- a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzerTest.java +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/TurnCostAnalyzerTest.java @@ -19,29 +19,27 @@ import org.eclipse.mosaic.lib.routing.graphhopper.junit.TestGraphRule; -import com.graphhopper.routing.util.CarFlagEncoder; -import com.graphhopper.routing.util.EncodingManager; -import com.graphhopper.routing.util.TurnCostEncoder; -import com.graphhopper.storage.TurnCostExtension; +import com.graphhopper.routing.ev.BooleanEncodedValue; +import com.graphhopper.routing.ev.DecimalEncodedValue; +import com.graphhopper.storage.TurnCostStorage; import org.junit.Rule; import org.junit.Test; public class TurnCostAnalyzerTest { - private EncodingManager encManager = EncodingManager.create(new CarFlagEncoder(5, 5, 127)); - @Rule - public TestGraphRule testGraph = new TestGraphRule(encManager); + public TestGraphRule testGraph = new TestGraphRule(); @Test public void turnCostsCalculation() { //run - new TurnCostAnalyzer().createTurnCostsForCars(testGraph.getGraph(), encManager.getEncoder("CAR")); + new TurnCostAnalyzer(testGraph.getGraph(), testGraph.getEncodingManager().wayType()) + .createTurnCostsForVehicle(testGraph.getEncodingManager().getVehicleEncoding("car")); //assert assertEquals(4d, getTurnCosts(1, 0, 0), 0.4d); //4 seconds for 90deg right turn - assertEquals(2d, getTurnCosts(2, 2, 6), 0.4d); //2 seconds for a slight 45deg right turn + assertEquals(2d, getTurnCosts(2, 2, 6), 0.4d); //2 seconds for a slight 25deg right turn assertEquals(6d, getTurnCosts(0, 1, 4), 0.4d); //6 seconds for a hard 120deg right turn @@ -50,12 +48,14 @@ public void turnCostsCalculation() { } private double getTurnCosts(int fromEdge, int viaNode, int toEdge) { - TurnCostEncoder enc = (TurnCostEncoder) (encManager.getEncoder("CAR")); - TurnCostExtension tcS = testGraph.getTurnCostStorage(); - long flags = tcS.getTurnCostFlags(fromEdge, viaNode, toEdge); - if (enc.isTurnRestricted(flags)) { + TurnCostStorage tc = testGraph.getGraph().getTurnCostStorage(); + BooleanEncodedValue turnRestrictionsEnc = testGraph.getEncodingManager().getVehicleEncoding("car").turnRestriction(); + DecimalEncodedValue turnCostsEnc = testGraph.getEncodingManager().getVehicleEncoding("car").turnCost(); + + boolean isRestricted = tc.get(turnRestrictionsEnc, fromEdge, viaNode, toEdge); + if (isRestricted) { return Double.MAX_VALUE; } - return enc.getTurnCost(flags); + return tc.get(turnCostsEnc, fromEdge, viaNode, toEdge); } } diff --git a/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoderTest.java b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoderTest.java new file mode 100644 index 000000000..3210eea95 --- /dev/null +++ b/lib/mosaic-routing/src/test/java/org/eclipse/mosaic/lib/routing/graphhopper/util/WayTypeEncoderTest.java @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2024 Fraunhofer FOKUS and others. All rights reserved. + * + * See the NOTICE file(s) distributed with this work for additional + * information regarding copyright ownership. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contact: mosaic@fokus.fraunhofer.de + */ + +package org.eclipse.mosaic.lib.routing.graphhopper.util; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +public class WayTypeEncoderTest { + + @Test + public void encodeDecodeMotorway() { + int c = WayTypeEncoder.encode("motorway", 2); + assertEquals("motorway", WayTypeEncoder.decode(c)); + assertTrue(WayTypeEncoder.isHighway(c)); + assertFalse(WayTypeEncoder.isResidential(c)); + assertFalse(WayTypeEncoder.isMainRoad(c)); + assertFalse(WayTypeEncoder.isCycleway(c)); + } + + @Test + public void encodeDecodeSecondary() { + int c = WayTypeEncoder.encode("secondary", 2); + assertEquals("secondary", WayTypeEncoder.decode(c)); + assertFalse(WayTypeEncoder.isHighway(c)); + assertFalse(WayTypeEncoder.isResidential(c)); + assertTrue(WayTypeEncoder.isMainRoad(c)); + assertFalse(WayTypeEncoder.isCycleway(c)); + } + + @Test + public void encodeDecodeCycleway() { + int c = WayTypeEncoder.encode("cycleway", 1); + assertEquals("cycleway", WayTypeEncoder.decode(c)); + assertFalse(WayTypeEncoder.isHighway(c)); + assertFalse(WayTypeEncoder.isResidential(c)); + assertFalse(WayTypeEncoder.isMainRoad(c)); + assertTrue(WayTypeEncoder.isCycleway(c)); + } + +} \ No newline at end of file diff --git a/lib/mosaic-routing/src/test/resources/charlottenburg.db b/lib/mosaic-routing/src/test/resources/charlottenburg.db new file mode 100644 index 0000000000000000000000000000000000000000..9e42b5d3b9b05984377b5d3560ba362931f7cb43 GIT binary patch literal 1122304 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û=;B2y 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%0A_90Nl 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	&I)48JmjB6GR-{>?*>`D(KR$#6Ouex;|; z(?s=&c_?`K-jddyFNvDrS6ToI$@34rePEs8)xy_)Hc@l@iar>Pjmu6=`gt7GaHj2< z;+;gz@GHYK`dYo+fBNIvQ5UTblo2(<uk`To#1mpBJVvXSFMV7XVjyaUUul6mB#+0A zK2LqTHebIx1`svJujsXDRR5*l7U6va-m7bFZs|<a48Jl=#kIrt)L2@GYpXwB`wowb z;a7TE;rv^7ss+y@UldO!ej#dxUugkLq|FLFXK%r^zc=t-+LWjner13^EQ+{tb|=E4 zY|YGTqj^Nl@GCtUB=Ml2Fi!-P`J#nuk0S<Q_>~qcMOy2EstbDGj1$j1y453UhF=*b zBlAUdM?|$k=BuovFM)X&ex*nJBOdsE#SYrJ_fWO#vY)6Kex*h9B&~7Btr+8M8Hc>S zsBmqDUm2z#^Cf4tS>L61p7XUvZK7iMm7aRJ1A8vr-3ys_uXEYy1yM2l$}ka`=eF;M z*&;ZYaM$SB4~dH5S9*j;;(oVAM<GnecfU}iNh2zTUl}IBS|1iO11?pZ%+l<01ES*i z75$(T@|0CCPFan@^uxKw&vit_@hd7*g7i7P{#Ed+)FhSr1}#x>{0bpT_Ysf<&Fd_} zou@t9nDX0}s1{XJVIj}=?ixJz#QgUO@YizY&wKsiBT+46<i8;MuXRfeMeFib(D}&) zqT=Wk&3rU6_Yk!GjevG*R9L?!^NEU~S9<u!((t?iY6D)X>Fayj_7N3BuM8tmkVA4x z@7bc+G;ixZ53hxxS9<v8(&eEIP9YS}<~Q7%w2i13dSwWp))vi<z&iHt??2=E5*0(Q z^a$*vOWVhUc*5HD*fOb}s2F->K-4HrIazr13vF~)Pnf%#s2F;s2f&a<58N1=fks!c zY2LngqGITkVFKjL?&~L;!+Pwzc^-R+ilJ9}z!T{z!_X5aVV&7@SsaQ3L$3^hkYhAW zmZCVsO+Nn%^O#f|y`qh72gs@c4Ne?^b-}{CIa`S;wDOarbw}tR`EbvDp$PB%blMrC z7g2>&waJF@u#W#2^#)FGT;PVCo%lq>U>`l$ic}eFa(x~$H+0CCKO-sz`xwTeH)+@Z z&6UacBpX#JZsA15U>`mBhEz78Z=x5hk5`|sav~}Q`xwT-+HIA*Q43f{G}`fV2T?KD zM-R3l4Zn7so;9Cvs@uIan}~|RJ_ZyfZ~HNGC`#R&m(Z}xfv6blqem<#t=T7V83;wf zw`2XV%dv{XKC~M2guJJfZNqOU=cda-ysi@!gMAERka@GQJ$7LvW^>L$_o5V{Vz7@M zVXAkJ;Q8w&BJ-u!eod%PR1EepjKVvg`owOz3(DI0D=XGG5*3Giu*1?Scv7Nn2OLHV zQA_#<E)X>&DhB%)211^4=u6j{=z}%2!V;eo6@z{B2zsQkhkPZtwdAb@hgH!;#b6&j zq8e#z_1n9eL0)(??%F}3Vz7^)KQiBNAq68UjtR#3DNd*cBddyoz7ec9&OfmF46OML z9{m_aR1Eep41o2@dA+?+kP`-+37Ef^s2J>{r*Y`IYlA{Ap@SX~KDAk0qGGU*VK}VM zICQb~z=Tp^HNgrgQ8Cy@5BwpGs`G0@BpR+uqDyhzBbunNIsU&6Ty%DF0UO0mCcvb0 zhIjeiT23z54jQKyVc54kRpIsm$pVs=JHs?tvGk87D^~W=WQ99TlNIhXO;)(mNYdF; z)SaeDioNuP1xrHk1nz?qKP@9F20a<jcuGR8tyGAlH#ezfVts(9IP^qoD(H}O?SvN> z(Wj)WX&F9uGf{Eqi8@z9@p{4=-rI=po-nD;es>8`G3ZGTRwG?!48Kwz)?;supLUU` z81!Tq2J3ZdMFB8p!uco<5n5&rJ<)3e9!WQ?^b0`Kn_?1hV?!cQG3d!a0mJy~w+~|E zFn&&h;JbN5#h@oWNRKpDHQT=qip90YQ6-Css&7@PF${tA#K;EuV_+Tgv}ZfiHHI?j zfsv%K2isa4fc2@i&7+zU6+@W}gQ#`O#1AR3o_BS29~DtClu3^$UK)E{S@aav#%6I> z#u8O8=Gv5;j5J1=9ffsA68fSCQE@<t)^n6t@7DbqeS|xll%FX7Mu>_5N(M9oqVM)e zzpLT3M2~QhuOuo4C>eaHoR^XZ4<to()XJ=cs2HGRfTu3{vP9eK738C{3a4EmDh?>o z4+>vf^mS~@A&6#Ew(UH-{SA%(Lrot4-^KrXY&Y1>w;gWlX<OgstIbWD0vox_B%59~ zt!>P$pILYMzl-}VN-Zu~?6KHjG2ddi`6cr`=Hce!%|+%8<~+ee!C^tVKp~hc@D;QX zSn^-;Px5p4tNGLU{rMgF)y&?RT{PQmw*Eg){_A1d#MFfMfOm+ul_%#-;`PEqRs0K7 ziT~%2RA(<Ygix4UL&r<7UIa%cmLHNz<3pUX=IMrA>k!$NPaXPmNGf7F?vPaKT6b&g zbsRoqe%)~`E}+ga+|AGrFZtZKA!TUD6F=8k*0PMK81AO0^eSfV$j2DdO8TmraPbCF zaoml5B0pH4y<Be>kYM76#@7_>iHhTHwAN5G7WQtYn+n$VJQ_r!Iqb@my*{x1d+XP$ za2k?2Wbe9ohNu|srU(0y&g(v)HKL`YJ6oG}>PS=!cQf>b_0?lBDQJq5$o=P;{fVk` zRpxqtHR+@gt%MlzO1f~i<|Aaza5sZ5tPfA%heJ;BtJh>+GEp(yO%HM=_1!-@$P%); zbJ(NxM8$A7LvL8$tkv{^D>8T2|G@HZ6~o>1z;e=leti8gSjRdfwmU>r9Cs7)7pxA$ zClS;-pL_vvnzE$Ptl>n(a5qCQWM2GiH395M>7B5pCma@zyP^Bjyoaor-K;voxJ}b7 z6VIR%ajJN3DwjeI+I#a>0%Y4yYs~i(Ri~=gVn7fmKH9U(BP06OfS;QeXAl*`+zd3z z+bK@ib_25IstHSdh>GD)21Kah!lcjhnn3Pae`et{qGI@y0il#sYVzD;AiSY-F+X3o zAS#YO(OY|iTkGF8bSmi8rp3Y24x#g8_>%!8RVo_w#lAJHFScE|?k-U={K+7Ob?NPn z-w}wV#tPy$FDEL7KN%#DKW%xR5e2zf;g3uBBn*Etz;73o^3}%?8>b#>cCf)1qGI@y z0bakTw8M|}cOdT$TxNl?#_%TtqCD~OzQbDT@!VsA;xz`MV)&B*0jTKR*Q^rAsh39l zY6g#_dF3ZLkdEh;E;eh{EE!Gk@&2CE>)ETCRR!*awG#1Ky}Ny$JrF)gKL7848L33o zw9-CSQ--T|`{FRO3|BvzRXhv@!h!jufDYmlgS=Y9tBC)xs>y((MAd|mDbWaX-l%oQ zYn|9_(9Xd`#o-cKg*(F9ZgzfjLlossc^4KTVqtL!Tyyc!oSxg)qhB=hTKoh)35QGQ zC;f&eFYL5Kiy@B8MqTZ<_a>@F%(dbFiY-oMV}841ehZaC3^$R%B?kE3V)NaNB<FGM z?k;kx@kGVq5(Kc)faTYlpwo?8bEMAq^F&pj$sED6)HiR!gAb4o#qSzcOjHamF(8PP zPHA&~FuKjSSv$Ji{9vzQaLMx+2P@pW#@I>M1vghMz2hM`sT?k$F9s2=G}yIP9k^R@ z3r(NYUE{2({lCLAbUiiPp^6>jamS+ZwI?lafKM?#THiFCs2GM~Kx8VNHa4Q>USt^> zXjZI=Fj3X~&zY5&<O~nZ6Fkxxn^^t9YhIYYSV7uovVyeHWCdxX$qLd&lNF?mCM!rA zP161#c}0N(V$8Vp4?ljMPE;JIp&#@Pe6Ys%POPbiIy$T4m9r;^iUT!NegHX0d37p2 zXzbkWmJY3miUT!}7hOT-Bf8v6K)aYXb(`>kkf^FaP3)qpkP|v}9(EIQT!?rn+C>J` z=wzq{HRlG{zC}=B+i<4afCvYb&Ho_Miql8S&u#)D#nuwor`QF9`#4#kD#`p6XOeP1 zz(J%HNw}qdl3s9mtCE-=Q2qn_)wL=KTIvd?*~P=v9bZ_oxM?*pfKH<Cr!hn45EVm< z3<$c!HUrFSOHigZy_(x{HBoW2h?XftbYjc0ZF@nB@~0~TP9+f)ON$T}iR&sFgrdjW zW$`=z8604S78wweiEG@p>^T+I4}uOxN{Nc2MfBz0f?R9Or4J&!-QCFnG5B;0Ez&JU z;dAsCO>F}}zrW6hW)q2up+&kykXuEDn!y>%-JLb8<t3uxXc5i)HZr&AB6>RunWq}t zUWXgO&>~$VtUoO-<^g1-xzF3@6+u)CEz(6melvQdeKus#xPwmc6Bt^gTM4=3vL+0} z!fD<!;#Q)!WoVHu9CG{QDUpZ=w?`z7Ub~hk8Cs-U0a>bu+lN+Ud;cv*WtWMPp+&mo zkULvUo}3HW<n{J|VxnAL)r#OOLM)Abb@~pzSnjEl+b$InB}0pJOCfi77v0Sa@*&ku z*B(T<l(Aj{xxHIAAJF97qUpl2FruuaMb*Am+Yb5inq5(FzOpVqIn}sDh;p%IM2CM) z_=Qu4gV3>YF%sDA7?srxHQy7b$YMSWm&C%w$|TBb#SgIdk4{{{gcr=h#<l#@%o|QX zOMPRHTy`VEO}WT2@?T4`=*2wTQEAFI!^C+T^au_#HrOGVZX*ND$rZ(&OTv-ll7Due zDgOb6BDlX|D1uA=*?orozztK^EB=bJ4=R%wis1f=p$IOCcGi2TVaz!=OWEB_TI`A@ zN{)%4$`sQMXph~E$rzQ&+L@QP?5MqRK~?9e3bh`M=U$bf^ce<wyDc;Pz7Qot#foVk zqs!Lk-$f4<miqVZM?}d`v0~c&?d{Q^XFRfZSbw>HHc>KEte95VeE%~}%P}ssdZ5Lk zC^zNYe=l>WTrq@)!Z*VQaiQY?wZ(-3DI)oTS(%OtiISmZ#k5<@Z+<XfA#&ZE9CLI( zQ8KiwnAY=!13T=(AVZec*lePKC>dI&1&R|zoA(^h93Oh3?I3+;qGV`UF>Qi&_ndzh z6*;T4QPQCXM9I)H?MPU!u3o1^4eQCdmoC&JN`{sd10sqyF5W!|qbFI%FFomsuffnV zEkbmWW)rU;YD>Zl0pET&QF645ek|I6X(HZ!MhBNwEE%}$Jy9~WOiKxdrk3S-Ja@vJ z>2uc9B}#^tX@@~R*>RZjDfFHZla@_HU1MljF$kr2Q@ZaiIQ&^BqF-n1B1(pqX@|nv z*nY_+cuDa~%O0ee6D32-v^2=xQnIV{1IW`Rl2_?O$<Q(_jo{Zle6xf`(Gz$-UN0d^ zhL&k*m@NO6`W0<!{HX7C*rG<s&@wHJ!Kd6gw80B<pT*x+KOxFWT2_xAcmj7`Jn#KP z6!AQ_M$?v~jbUh6G02U0OL*5LOa#d~^GtRB1yM4ztQc%noaEMLMJp<cyMLcSlngB^ z2G|hit#9%w0`k?APnedW99z{w6@!|HcNY71-a};%)z{TT$<VT5pb2lUm)rYMC#YxH z!-j2%ax`NN?%~}nyY<iZkgc7TcSr4EXqlF>w#kJXpTlL3?}LfcD98*gD+YTI`CNY3 zLXPJScJX}siYOUcrX2uz;)V-5DSPNUG;!u0qGV`UF}R1w=h2l3XwdS)nrA!rq4EDT zlXw5G@qePta+`5BA{z%Ap7lfP!`A863hT+%zSeE5Ev;T!o&JBA0nnpj_J1A0XTf#B zenFgIiD0y#HM-Ro{8Ri~eiVNOe*nJ|zq(ne*(K9=rWZ|jo31wvGaY8?VOo#(g?EE@ zfS17Q&+EvmhR6D!e?-a9K`lj(6OOHO#pqzX|CPVC4<bs24i*Dkih2ddTm?hl5x4X6 z^~FTV&_OLCb@B8X#;XXAVuyV(ZBVD5a)@x=KRY64R~Khj?D>H4TrP<Y2L2X?YH`*l z7B+E7>O{sm=x(Lr)9g<@KKwdSG9VA5KKOFGMF-F$=k-usGF~A{2IOhM9K^xhwQW(} zV?%G7ZZ;)K2IOfG*o#LkyqQIBH9Voku<1m}fIKazfq3v9pPDw1W4_)U6-bl}$kQS; z7Z03~aTX;uHcmUMtQk=<AP-A30rD(e=2pY372%>q^LrB|1M;+py``JtvTCh_Y(44A zsZm79fjr=_KJ!r>T0DtzKZ($MX@ebR9z@B3JSvAlZaMm3t#AZ-ankmMYlxBqc~o9N ztq)8a1WzP&baO@U9irqwo^Zy2`)hIM9~W)N&%(8NJ?b2eiWsN#wUpKS?~jD_R+S$K zYr(k1PEH&nD&LzF=M`fjE%hs~dXo0}G=WX6D;7j~Vzz8$68`R=Wl}&$T(UD3p;i2~ zGdzUKWaV#hYDd*y;kZ;Rw8B|@SocRK^}0~Ug-gOk5ocwuy80B8ytYppzrm3x85XGp zE)@IUv!)|8TazV|V!sikPgPr_UkJIy_@G=ZO8AfN&j!~gN`^&h!6L=ICl<uz!#YmB zH0Cd&WLPB5AjQhA5e=5VfLzqGXnitKGAvRH*eLccU6TMmZ|kQ0Q^&U^N`^)1@!`d} zBhRTDLB4X@stAp&xa!ulAemyE>|=ER9oyZIqpr({l7Vb`lnZf=TmLhNlDA&5w|}yo zC>hA61-cMR^mmHkq9i=s`(bQjqU>IkxqcqxtcdW7^tD`CCCPOmN(QoN!9}FrQC9Rc z``Fy)*IN#7R(Ac5IF%kBR6gOFo_m2PMm%`H!1^`d6sZ*RyTGGn$=h7WY3|h{OL4{X zyNk}@T`}ZM3s@qZ*si4!6?F5!2RYYj5hY9B<{(7M>|0v86mpF{zZ(Y=B}3k{ATi?Z zM_;dag*p`2uX#ZTQL^N1HmomoeYCj~Dv9qrO{-Q!$&fcKP>VSD$fAq)V7*{uc9#I6 zWXansSf4&>wG^4B_I!3@I=mZ>yum-wQjW85Y5IhXu$H?W_sk?phP>%#;=u;Zdm(-Z zx$M41(=DR6()oYSXQG=)W4T;;P3w%pO%sSjD;85Cf%SMe9Gw0YwXZTsm%;w|E2>9j zlJ4G7@mKiW2mmO{#ez{TNq17K_^TIuX)Xz0noGj%<dRi6c;OREW`79xe1h&`lCe*x z8urSn>3KZcuEWueN=LP-zu+Y*qilC+5L_At6ly6boOfbR@>jfzh(Q<p`w}Gs3iUJ4 z#AkG{>Ya?H?yoO)0~3jo0fkx$3YC*veMVchb?VU5t&K#<fI|Ir++6fs%aa;VhJc|$ z-Cd&OKq381ltL=*znKaGx>fx%IrS4!GN4dDjapB>alr=G?xX!}s}m&y3bnLziji6e zw#1!p_qil!PLvEN)Q3VYT@XOemD*L*W9_UwqGUj!77SB7XTbWE4-nB!n$l_geWGMQ zp*{rimspb)$b8pC^Q=dx8ZE2psuoO2JWW#lE=o{tzjuw}>JTLZ3iVSV|9Z4;T?DL6 zr2%t~5G4l+>2uR+Ik}p2_7Yfo)U+D3f+(9+Wv-us=Qg=fdt6;OV~=j`JC0h*VM1z+ zKuSExH97_iGuLHt17$o>IxyCgVQtl~|Mq^ccF#<T(Gews3AMCs9((l8JfN%GTJCrI z!hc{ep?(tN0EdulRO-xC&+9*iE7!Oxb1lf0I3VczUO0leCb|t{ZxUrCCTuoh;VzVx zw{8D=i+8@Wxz%Hw44`B%p?)H)N47Xra~sWk%!F1bObjN}QiAy{CM>8Ukk#*Q&xidY zN(K|^gJIq8PH2)l`UO7|8%ZotGMG?{SWKMJXk~41yvzfUji;1Em?-Q0FLZOKXX?`J zOEE6$=HgUw&=AfG$Fl8m{#Ks+1KrA#f1q1=@(*+?PjXA2VfF{QmH(9%$&lu}J3H|N zU!zN+o)Tr<s<)?~0J&3S+z^aSZofFY^zs;@WJsizhQNu>dOf&?C)j&uQFXk%+KhD& z<mPwo8Bpf7CpSB``ZZB9&{0bx+|2=7{incs_YdKcYeZR-u^x|?dn9Ao9Tezo4NBSw zdJ-ka18Je^0P9$vanU!awZUEAjVL)D2w5Kp>)h!+$MABqP8|Aq(v2uN9!RZepc^yY zZGjQic~j~f!>8eRAhjL`>ur7pQwLZZv|j@*5+%a}wKVviv?gHoFIaC>Jx@Z1Z^PXA zSXgf{YfpCy%u0$K^A52ngW|M^gC$#k9$AiCOY?D=7ZOC242si_fpy}r%;V!>y}485 z%)vy-pg1jJa7kVR53IFtOzZYI&UG76GAK?@p+oe9XL|u1vZmIXmhVcG9EzjQjW}46 zf3c4W4scr6lum*|qGV8<eiW=%?fN0R4eP*ZDRK3P5-~%$pGU0`gG&k;bi3^c>k+fM zA1)<I4#hz>tj23;YExJE8|~ZRo1tB=6D5P<^uPmB^^Ky9sB2jPOYWz^0cKE~7E!dM zVC;#~)yRCL<Jtr8CKwc_2Of~h>h{Wj7nRlP-L89^iIPEaS{jRfIIwpDhOW{_rp2wx zAPNS>88omSXYBD5L-aeIxsK>LiYOQqrw2WduKc}s@egD!USit)2vIO7PD|t9FGu*I z=eV^ajjlH`B?<<`8CF4V@-{M|7oK~_jPnmW5(R_e^neS}rOiqYqNHYZ^v^F95e0|h z=u4$>@aM$HJT$#qgPVW8c!($#SG{wC3i849s}m5Sr|fIzzkWVZEUJ?A!;ty>pB}#O z|FY~Snnvak1p}$HGzRY+zrb!Z=5;OZU2VY^qF7L6ZBRo#;$OtCh0OQwE4lNVC>TVg z2f2_254L}f>Yw>ILAtFzQ80)~ix^zoByz$1-pJf0$gig>Q80+gpn$c>`Gv=UAY*kW zB3`M8Vs6#7_23@Tz+ZzS@j)|h4sshEO%x1@(jxvBH|}y_g#nqHE??unpC}j<Wl%yk z{!Ug6#+~n8>fC!9Q7|Y<4{9PEx_r&XddOT?qfcHZqF_*z77@I-Zp-~wGlAwFW%p?@ zf+!diWst$zXL0RO?Q!RSUAZ-@B~dUaN)P5D5t&3B!C=C!etUv-HEH}m$E56E@xNUf z_WmDlC$h7*{cU^S_MmN=t;}|!t&eRhTZ@W40c)4<3AopKll4ODk=9<;4XwUg-L@*S z+F})MHQq{M)y&Gw^0DPn%S=m^<y6Z)mX4Oz!dJqx!kxmugtLYILKk5zi;ospE%sT& zS}d{%u;^mZ!2Fx}E%QS2B=Z&Kf#zcKrh@f?Fu^c^hoBz+3;zcH06&4hj6as&gWrU2 zV)nr7kl9u<x!EMMUS_S$gr+Y{PnqVLMw!kq9bnqYv^uYpcZs)$w}Cg0H<ahjtBXfu z{}IKss_&@<Q;`l4mMj5NNt*3C)_oaKFa*vZhin$rxF6!%*nJJtZtf%shQR3oswCY< zv}gk#VOL+vgY)hY1w-Hrk+2^9tVx^iunw0ww?1gEm{J8>A5}Z_9zT$@4;*ZY;g5(5 ziZgCR!7{j7_~4CPru<lsNG9IUXYhKWn8e&WxPWwU%CO5Laqm+?17&-Of?;ra&?Jf5 zkxM@$xH-vS)5lMUf@N?Z9MZwlRSW0BdhE&Qn=gohVQ_|(ur4(F>+x8G9Zh#Ua~eYw z9D_ss*8?_5Tn9L%@sYXcfi)KQD;Nf+ZA3Hg^7RLr#iT(uchB!i6byqiL_nTlDC+PN zFD8tiKA<sCFbq!LADI`-srd}`V2jn;;AcvrU>KaXA*}snBTvAeO=>*F^WkcuU>KZX z1*~`NsDr6Gj+<-M>+7<FC>RE(2fC3IOk6&>0GXSMcGMFR1<T+X(9A;;#b}z6Y_m2G z`kN>?21h52!k?9P+m`e+9POTX;H@0o8pq)1gm$=n((gGR7VpDE-J7$nSHlNo7@Q#- z*WTlkKNErN=9&+_rJ#Z{OiB-uBPpn{Zxn*+q`TE_o}5P%43pB<r?)1GYOO+P`8l5V z`yx>=Ov<nfJY?dSi;+H%_a{!a_(l{%s!EF<97wWhXG+#3v>pMmD~|6b3I;N1>p}i4 zx!-*kd@7mWfaZ8>3}iAaN9Mue=8fhc^L=sNA|Ik)Ad|iitYflcPT{3y%hZ>LqiJFx zQ(eeky*9L%gv^7yZyiTx!aybi9ro$F-m{4S@|W$W$Dbt%1~Tcvpd>NY?!G9B*(yUl z4_LF1sSf0_8^JTtk;P3bQy-2aihfnkZCHxTeG^VU`Uv^Wo8y@GqTnDCEyy5P-VSR$ zrXhAu=wUOxw2UY?$VB_O+Q|HK{D)5P=i=t4U(0<@6dYuNY*>UEYIki!OEKcM`V)F! zBEG`6>e_nBzaG9z6wwF!dBAb+0HR<BjbSn5X}k%Uvk+9a`c$%@M}(Ea$1>tyXN5ZB z_+mKG^jKINy^c+WT(H-8AQpdndSV45&NZ$~f?-ws)dO@915sGTLI=4KI%6$27Kl_N z5JguUAB!_PxugfYYDr$TRq=4)vh4)CF&0F@0wGI0>d3g+vN3p3YlTxxeh~!=gb?70 z@(wuq=U}x(y}u{?-GwMvAS8sfzh<RBea$iHeoyZb1p|Z(3t_#M=f61x*Ur$b;jJPH z1_<eavZRlW#2rE5jJI=X+-?+6FhEFK6PY)xKkPR8?1cD3?GjOE86czw%91{LvEwUT z_V^|<hFwLk%K#y54OrLB9@zm-SVDp*rF50Og4uH3H{Cr4KbYKp-{9NuR?f%o4qQkS zU8_E_VLtA?_@wHN0)76SrWZel5CuzrfWoBDm%Mp54p(pgtlgqgqG0Jyb!1+<@6t3> ztb~O1ox0@^1xJ5qdjrHGZ9ZX*&jxsiq5SdtaczeF7=YnKyRP@Vi2f-@`F8b~+eE?A zAAmIJuciLVR=D<Nmtg~aiGrm+)o|@vkDTjtqu1Wj(rY$RF!YC>&Mwj}o?weOGH2J6 zb%K>d!O$N)IGcAZ(x7%cGXHTo@56DTVCaw54w>5>|CKi%nI{g(w3HBqbH!VuEhV^> z^ughF{Al<(E;sJ9kQ0Ry^HRb1L<YBA%>hJmUh7?2p`~PSiXN0sG{z99`GDwqX7w*u zIuiwhQ?$0Yw)wEv_pjjENs*5}ekTeBrx@nII!j@f3Mi2?rp3v69f*R(DFAY!(|)IA zz$v@E7bJEsA&PcYx2Cm${MFT>Qy4PeEZ8RKLlhiNp$~>zlYSb!BIFQyh}!}4lpBbG z!6}Bhu+A%MR2w~G&c;Op_pcxd7N_8~hzduAl%B-3eJ+`PLp#gj6l*+K=!RHtDXzWx zi*LYYqTp}}y*B+MHbtFZf;yy+Ul?;LlqeXSVgSw)B|VI~0i2i9u=x1J14O~%6bb`{ zAOC)ec6PUG?%kvoM8V<|E6C$a6Lyy3+G{R&gnT0k4yOnwAGASOEivBK^+v~;VW;nC zm_ZZ_PB8#Pic<dSuzw=1-Tv9C{ey{u#VIJ~qF=uk^=OT2yZhdlDI*F7rx<_|MQeJ7 zThBxLkbkUs!_h>+;1uI8$g4gD{tm<liJ)Dp>lcWE!70YykfYjli(E%#^U15jh=Ri@ zXvB-nAxGA~Z=r^K)N@R*4N)*SrPu<p-2CZ5_|<v0O1reIMHCE9Ddtmo@Wkv8$opEg zY=dgR;FMwk<cO>8V{1V^RQFy7K2b0@rPvg*((&R>AIN7rOuY|Bsa{oCD>kE<A8sSK z4!I!t=Ex>Q!H|w(6Ufnr?~*={`PcQ|_7Md`I*NIaleW0VI72plx0tlCSJbZbKY2|O z8v-1P9Wq8K@Z_oI#%B#1NE8g~Fn)ymTIKY8KR!w`_fc`b>=iZtVLuH&=-4TH)h(3u zc6XOddSb7r@sA(Ozz^!zHQqzpnDSvm-*{<+ouayB#J~4w!+KAgc#SPZ0x{1P`{;Rr z_f#e6s0t>@dpTqOxj+nlV1^b(VnB(wBq$M=1SR5<m_J{UET6mO=?n^m#h|F3^W#2z z`i5JU%=q>LJq?3cj6d<pR&IOcx)!g@qWknTd`$+i7{9}Mss9GP2&^=HOt+2bX&A&} z`~mB5%Ofq&jpeN>88-m^J%d<`Utzucc|$c?%-G&ya|0R{>#C1!{6^(oWxF3kuHTzK z(U~Y1#9}PNyZn*oGaMaoe5P64_@zX_AQs~n$e&{ZQ(+ySV=C^EL=+5SF@Azvves!a zTFl+G-kr5X)4(7W<7d>~iE#`2FN1aPd4c?Zy~4cmOPU;fIF+`UFZpXeq2<}`T6==D zwY@^{j~}366ARw7Z#5geWVM#-?EBa&`2Y9;?M_}!%Dy@YIZPAezkFn`F#E?3(B_Nz zLu1^~dgTrI>MENX!Bd$2$9h?mkn-iZ75nPB)4gr}Y_W%(k+~$s5h{}a{S`mJr0>ck zKtK0afPOCNj=RiHj&A=M%;kB|NYw(OV1SMh5u5n^yCpUc@f!VpJZ}MClmR-%4^%ew zeC-F>XGvaOG?6nv$M_ENjl^ZuKuxmaKDRj9n#dWTV=RSyZS&u6&qB^izGat1<P6X; zzQL_MiZ=W}cbz>(u;If>B4>b(@h#+6-?rvrG$woOnV5k^M9u&m<15IQw%xQrUCkc- z<ka_zf9C(cG^uu`+Ky^#s?DlA|8KNiH@n8RzijW>7Tc!UM%o737;RE)B5Wquc-yqF z5m-O9K5o6uT4Nn*?PzUn^~&n3)lRFwtY%yJTe(=(vixXy)lzG@(Q<+12+Piv^@Lx9 zH-ra-3BqN<vBDn0CPEX72Ns7cwp!Sm|2DsGe$YJ4TxLGe+{e6?xrN}l;G`f&uv#!( z(EooT|Hfv&%<h;O%#zJkngy9j&6=8-nm#f;Vwz#9G@WAF+qA8z6|aPMhPQ*a#^fa% z@SB)KILMd$&%{SMo`k`9Zt9jRrfy*YI?nZR^28u4HvR03DPu@-GplGZtC(a(i&;gI z7BencH8+bEGw!cdbF)0EW`fb9DZGQuH$Mv~xg&k*@l<?jhMyT<<6~VDd>mj(Ki1au zF(pLK@H68}SkFF@F?tO;(}EN8d)Fp%hMyTrAkX-5tC<6a4?MSugL@G<$Ipc3HtYAI zm|Y(~V{#`rPd{xw@vaj&!_SN_Xy#v6rDAwBXOE9^_--O+_?ht;<av9n7e9gAxyc;& zDMZfjGvjl}a|bOraT@ZX>3`R7A##SF8K0n?*<or~^a3Gn(1)=6C?aS0nei#CgWj62 zgwwdgZ^g_wIgvB`%=ie_X|nGA!(qK-)^Pb4BA>-HppU8iQ<oJ9d2yq<d2@-J;b+DN zcy7DUS%ZOc^Q$L33pq;U3_mkIgj}<2zhF4ad8gWZx_Z)HKE1Mi;sy7Awi!Q|k~)46 zey~Het#jBiB4<#N@jhhR6MDBOWM9W$|MhPo=TMT6msJKwU(|0@Qjj;AhE5-DxYi(Y z1|=Eq!rJ=ij1?=W^-l+3b0TL@lJOp78-wUF!i4<#Gh1WJG5Hkc$!}9@)7uj>A=@0> zGiH#zd@}aeun^+k#0h~j1D)}M-G>@qlcDjo+WzTbDv>iN$#{p_dyk(x1okzhXXeeZ zmrwkMy%T=0XV%FZh@!Wj-t#Lxg2)+|WV{L4GH>QLFqgdiRyAXUM9#n@<1H#*Q;6?E zKJae+-d{w{z$D|}kgcKzk3Ir9UDfB-HX>(WlJN$WdBGG9<YhN?n9d_|1|}J=q0Efi zB0PowD}TlBo?$<ToPkNk>#(*C9OK;=)~RcMHTNfS1|}J=qRgCit#cl|Qhvm_U$+*z z%E$cA#{1>lWn=T@iclI0@{sA;r{iOn!>?KA5^MRB$Qj0Dyo^i_jZ7MDzyMvHW-spK z5jn${j8`BZ>vZI8FUapoen;mLImejbj~XvRK9F<!@F=|Nab}X8=ZKtROjN!E*)XE% z!rdr_PTj*l<`X%?n2hHk>o55KwuE)Nx-rd95;?<|j2CF;4c=@Dh1_kFQx69sXBd<5 zEab$UVb*Z@GE{@#jxix}hA|n>(adW`cSVSh`<rKe?>Lb&jLCQga{PohJrOZx%ziq| zU{B->V=|tCoDptxaDqH=(eexnB4-$r@igQ(+t~+hLY~~G(;i16XBd<51mvwDjmnqr z2S+8_KPB>kOcgi@Iepl^<EZ=@BUkJcpC)pKF&U3RPLnk_dI$1?eY1w50x*opc$~^7 zr^eAcpJ8m%cW?wx?)P852TB2*LxAHWy_~UCGa7m>iH4p_qM_%K=s>t6ru=eAO!?)K z=vKHSN|or@h>Z~ldQ)m>j(L9|a*kvPtF^hKhTL=WqJb#Mndz#tdOIR#NS5&keT0Z) z9N_1eu}YgiAcM#ml4U$vE`JZVg)B?DdLPX?L$ZvAAV*FZ_bCpcK-*xAml=_BBumJ9 z=WT#|r}-$2HHyuzHj26RiJT!>#>0@~YS@(2g>{>8r}!~M?!$bWgEaGS*_~j>Waof8 zi-?>-OGYDV)9e?EI>7Hq_^|1XHk8O2v}7!XJa@qS`&}TvdGV$snaCNmWGupK@e42A zd=hW%?c14O@L&vDGUCofe!>%xsEaB0yAGH)oyZxqWGsN(bz1J8I=Hp-6AP+~?B$}W zRv+{SMP5|8pv49ZHm9^YI4E@xkuz|~SO{6-`d0B2_Lp7bqx^`RflEd`WZ!Oyj@0_W z#>rwmk#}QW%mK*KuVZ4|=zA01Kiiea8MI{F54p^GLJaPGYovqUp!W9iF8{bWG!>$c zLH7A@nYTJ5d>@22$G{~W0)A<Laj^I(sBMW&w~w=loP$efNpy&+r6ZaOZstRN)hM#> z8zN`mk`BR}blqQ<Kc_>!)c$-e^mhzg(t+7Yo3FZ`-wbWRu9HvZP9ky!F6n@#qz*-X z#rGla?%VN;hR7MXq?-@9@tzx=7=Fmzd&#a}8j&+_NrzZKY8S%SB3#M6_Uh`VnMBUO zB^_c3$<N?zAK(Dxer;&pFqX(UxI`Zev4}MCeoU=jD6PlkzVBR#oPkTaIgmr`&W4~f zOnki3GjJ-AcdGg*IOrS$h|46+-$8!XEONB5yS$@t#GlTT+c>`bfD7zshgB_T2C$<g z-MfgM07=^f+}xh}`$9H=!p!np9<!Io8TzD~gyQ^t`%3?YsK#$=F8K>S4nv=G6Csy1 zob&xR<W~dxmh~iZhCb<nA;16CJ9$0i7w38`LJ+{wC;H?QAisUud^YN7=ChKyi;fUE zL!WdA_@&WV&&AX5Xjf#3!|~({ebOPGm#WSjiAQlvyxx~T?Jkis^hp;AIdYTcOabH@ zM>lmw=fKe?dhHO%yX(8iX>mF>{l{JO(+qvmO@*A$WyY%=kk1d=y8@meL!We0@YZa+ zch6ghJOA2ImH3;;8TzD~j0gLbA37YNb!KV9FP5|5)HnMNr{2Q_)4wVXT=SqCGyOR? z(-k{TRVHcVSALo%J(i?0iI$rCD_UwUiI$p6(m1oijK-ONlI5piRV3kLiHeq+WdWze zX5Z-e3Vt_(z;vVW2*-5;qk7;G&O40R3h$LcV7gI|kJWVR3->bfoO$o-?}?m2V7dUv zM}lhhD}#Kd>{a$SB4-eoZX~>*Hs7x}g`<&-Z@N)4naCLgrW-+J#~#0X;^oJAyPC8o zat49vf{^*E*F~q$3T8efQQc4`83d*q5BZVP(;a&u-*11fBO!7If$0JvKZyM{Ukdr2 z>#ENt5w+zFEF;bSRb{|!=-34vg}^~Z*dW2h)5)10XGCAOCr&+Z#gee9B>glMf2E(M zBFX%gewvEE(oa*7q@U(b(i2XrDDvRCNAR<fE?wH|-ImB1_NE($+rIDgWIzkt_T7GC zc<>k)_NE&P`GVM{ttsRy8BzL1M9#1`-5AK{vM={RWyrid_~OTAM9#1`oj>HnwAGCU zp}URRc^})T$ZIog%pk}KK`StS#4#hL$((~IDhzqk4TQWX<Vp^$45n#zYvAtJWUL23 zp4sJlk0i*=cXl-C?<}wJACpuuuMz<)UN_c3x#DF==fs`*F%E=B)V0e}Esg(!P0sym z{J(1dKifjvB-<6Xfwp4XrZ$NctNn%6FRV{l=UPWu&#)eVb^mErGOLMJK31))EGo|e zY;S2Re1q}+e!})bTZ>l~XDzl{L|e?X7-->SQN#Sb`9<^H=IhPF%!iqKnAa105!?_Q z5F`ke3C0R~2$~2?_z(Dp_*?mM{v>`+votfA*+erRvsPvnrq4}Jn&z0UHl1$T&$K-+ zi>Ky=@cQ!F@oY?9o4`k|&b*-hctJBp_jaj`7t~5V>X93fS7T&9$RQW~qGKSt@J6?~ zM&u0T(+x*u@qJLcKDcRu@6z<hKq6--A5OgL>pf&pSgVJ4lZ|S<T6~Mh8Oo;{3fVtg z>HHVuKJp_?rV%+q`E)~Y?exIN_ZYR$n3Ll5qnOAU%BLF)In{pMuoaM(eND<)4M)`S zKO9jytB#%nUcPCZ7fyt!N-}@tHiE+sDwe%=_Hw0L@>Q5&@_J>G+jb5=aK%js!{$bW zVBGTb(DRqj$uKNY=Zm70R=3M^P|$SW3!kpEwU=8|xg|VpL-fCr&pC!+D4)CAo@%iR zgu$G7{k>qHd8~G4xT5LfH-_(pOD14sAIRHG&r9ei#*_{nBM~X{8M!BwkM6uv3VHe> zKiBz0ZpO&okaK7KXxIVridn{?b&1@Rk)@EgTV3pdM@yG&6S?ElGki}cfxM%}fv$f; zj_!5nK|>;E_@1sGUd;GwGv9ne!5P@m$#VgbF?>(g7jodd<C8Jcm>F>KTyH&*F?>(g z2lBYAhtqK9nUimeTsILJ!}oN(aqX0x2N&&eZSk5>K86T;*)q$>f3H};DfT!&%LN-$ zV8aSeFDIPHSP_?c;&Y<5V@f(Uk8#78FYuNdK0KGihp$Xx`9Z}G&@)yhu@Zs%t6LzJ zr#REC!#yfeaCFe1{s>Ne=8wR2Q#hXl*vpnyet45xajj^CS7avON5b)X^nTg)g+#Wb z;^hmg>CV=NY`W&R?@Khu;-VFOT!@ULUR16J*{tCz;U{!b>u(N<oj_y^_0o06`^gXe zU3vlUM|<_ejzvVqP%m9K$h%qzi{Xi<7tag5ZzM8~dQtDBE9BjE_LjlzO22A({^D68 zW2hIFtz!$OAYl$4a;fTreE^X$)JuoZOuFZB(sHoZ^q*0Jh*?C&P%m9)$P2G+$r=E; z?we8CqeR9~FP$gk1!wI?gh6inSI);zM8;4rod@LkGc7*R2WwWAT<<WEG1N;ZhP=}x zzAIdx^i3U1diNtThI;8lRDNn~i^wfKMcS*zcOqk`m#zooy!7OO^&sc)v%kC{GKP8; z*TyI98?d@W2Rss3*f(e}kxj3vF2!{q_rBvYv;=Z@)5kHbiHu=h#Wf-OP0Rm;nw*zb zdacK2BIB4B-g$8?$o;z8G)#jW78cwnj>s71r9*L&&fH_@G7z`c<CH0Axr||6I{4Aj zDUbUVe}z2%+xo<wM8+^L9lR}R(BY?j43IMumtJzQmrbrJj0Yb)#=VQJ1krvVmD>)V z=@vbW$Qb6OqaEVdy4C^Nu)lEKeaamon^^Vax=xS-L{XFAZ>4{|UDr`SWDN1rb%Z>e zr?*B`&u}OT+4Ggi7~-Yt0D0hh8xh3~Q?L4Lok(OH@e)?Avt%pe!!={7A*7948!#jY zC7mH&y7rL!9nL-re=8$-!!fho_Oif#JR1FKA9ua!S{?BZZ%%k$3nF8fm#!V`d!A_I zIv(~Pry5;e+snrO!=8SaH_yAhL2=IQ^LNWLmP9s&d3JZ$&()~gHo>#EJ(0_QMPv-# z(z!vN9r*YxKt#H;SF^*T!)2o^BmQ-$7aAhExlZ|dDJ1B|0$ht!)%L*OtNbgLNpU{_ zfd8`%j|bgNfJ@SLs(f=E_%-;n_Jt#SFoM5phq3$LI(u0_)dT+Z^a%Cs2G(t8`3x=9 ziL<$lyoroqXvGcj{66h`Z+n2Dy*hZ(c$LT)hF08&%CR0nfsl(w7*3oRBO7iRQR`p+ zY`I^BBfI`MSacnj6FO7(&MpW$u%x`Rvx|ol)|GX}(5AarXDkEzlk#$=?{CRkZQ^yr z34!<iYFm%U7zS62R#M~>djBF|%FYQ%<1dUSGKRqwH=uI8k~6~~xB5Q+I+_E9!4=nq z+^gl`B^c!2SvYc98QL0#!4;#8#iNb?d=7HtYKQlDa)!YbTcQaLeczQ%+}%8G_2`(t ziHu=z#a2|luyS`Y<e~3t`t~6*hQSpJAx|R{TcY>e9BO#Pt4U-GgVVKz+~;cQ$r1Q! zVs+1NVMN9-I9(ga!=;0V!$aLwzukq^H6ko!U~n`3{o1i!$gO;n5O?_b=m;@d<K*m) z6_s%PU7g&quRA^N!W9dDu=*Z@E`K~6e3gpbJm?4F+$AJAcL_<(T|yEKzGzrR{3Xn+ ziMRe)eVUZWI2K2Hlh(M`fSHS@;z@VeK6ud;Ps*@3T`S0=mUMl15VDp0E`JM=F)U8k z67u+&BNojAbS^t&)weB?aV$>A`+D{j<lmQ`yr!jd+4Z)T)rpK_arD|PAO~%6%|z+U ze^>qSfG$MFusB_FDnCBu4(t5Khh+t|h>T%zx@J_CT3B9$e50B2!#g5lSe&jY<iO7Z zgU3R?aCg({x<tmXIGqFJ(dX_^Hl1I%oi`0FI>X|0jwsoZbpQJY;Ni5bb92Q9H<{$$ z3;f}};HzNYJRBJE=Wx)@Xm7-MN7s&;jFx)Oj0J}J5j+_-?i%~AFOR)Nu(vc;gau*_ zKzS1Tj#MV$`*43P_lI!)2;Fbb3p*${IeF5(UbrNdop4F!2lOTuEb$-b1?Ob>rvc_M zL?)_g6N_u0K=>tW!#1&w`5g!Q_YNd7h65H?qt&kTmgx`30VRd&e-RnO0gJ0c_C3>U z7{E)uU&GK8HIXqKu-KN$A9i3WievsEug^C1iHzZZ#db9FuQ^NU(9+&cs&?HX{A67$ zBmcGFxV**1Iyp2**gqR{AO5Ul!!fKV`Q?k+Xc7T5UEfBN2%xznDh!uIEviV;<Gs0L z#bP;_VG(orU-5R`5w6o8&}79WXtLrGNa7Ge?gw;CwBolOXuc)Usa*xDfj!#}ZTHNM z$T(~%Y&K$h93FR^#qPTBlk?v$SJw?DG6q`~TSN9U-}Kl9@~iK5M`MYM!Is4~ko)?4 z$pCWAznQp7aGA&$Y`I^L@XV!dqj!``Mx<|b=|E%*wk&#y5<EIIO}rA;S7v1g!d+sp z<^KJ!4jpi-DV(kB4!lP79}*dZEsIKEJ@RtPIVWKKW01pSe<EYB<$fKk`<{-!6boy+ z_le>2$p4}4J)o;9zP{ny-fu{w4kd(+KzgC2(0lJ)ib4>iHxbSaAS4z{=tV%t&864e zBo~rMN2Dtt0xCtCVgW@!gzvY{J?EYY_`J`0zxVO`zhBnMT6<>C%$+l3&z|4x*^|b> zmW2<I`;BIKgP~sUY+9#6QZ`HDV9R`<=*`xSI`h6AVj-bfYrg=N#=(|_za#gX{^QD> zr`*Z6vY)ZE`pWpt2a4WoO?-vdt|0eY%iQ%I(f)s|-`}+VFJpgfzhs|m?`4m-m$N;! zUFP@xHnsJJ^^o;L>sV`NYlJmWvi@IWnPll{iL;b7KQVu8&NDAFPc!#5H!?HR-==R( z#iq3;!SuSRneo2ylySRpp>dqCt1-eDXn1J&%8+YVVwhs+ZAdVb*Z-xzqA%2cqL2JP ze)TU(9jy98bwQP<TBe$&>Z@v`V)(p&{$ptzBwP3!nr=wW{H2@Gbdhm4j?`dj93-2M z^ND7wKWG}%2u<hS8og^eOXDEf!UxDbyywqT#~^p(*FK8A%+feWHXjEN%|4u!L^ngX z?mW77G(;u`$rk>C+<h+ncp)6QD_k6S_##W=AlZDJZZvy$L~dY5<leGi`w8UcAlbrS zk-OiV#?K+_cZQZdsc+2EI7l`hrxVSFY3u4vW3U$&ecca=90$o3-be0UXU=HWA$KXZ z#O`8g93-2Mvyo<P|2*MejNBVyS3bYV(l|)A@Mq-i-DS-|K=?aDzPc5?ouyUf2Al`E zlMgrOgk#&y%g1Cj?9S3SG_(+lTuQG?FW&zdxlMBpeYc*aacF4aHLwQ<y=VXkVMp7E z_Xb>IX&f3__#N28?4HiqV7L6TQR>?)jYC5VzXyBh+L-2;<U3l${Tvg*(l|7<@DA7m z^RmAW1N)=w7kA!cX&f4w??%mAZxg=XjcIEAIdc4Jmd2r>uw6jzCe!0c8n5fOqtYIh z#-XA4xyW6v^KWZ#*yXxXr0pEf(#k2#0?(nyef|3MNyt6u_79hjvNR5q%-@6DWj+YC z)<*8j<^apzER6#t3vW~IpW2;;j<jRKwu5W13UQ!h{%+(BJn>*YR7cl^DFaUY$kI4a zvhXJ5e$waYQRMDa;Qtep8V;1q--X=69|s3*!;P^jp^oU|ER6#t3xA;8S7SF}N3^3y z|4E0iUE@H>{GF8Bx~lGa<c{q*cFYcz7QlV?b>tp2{kv*Z^LDMie^kKIIK(c02XYVV zGh#YaqEA~j?q|Nj(m2Gf@CM}$Ka}o7?)IO(n1T(DjMy1fYcl6T=4U?+zl*{*+{j6- z*^{Mlh+W|Y6y9cD?<-KaR|kFFw;Yys4zVk|NbH?cEjz)kdM2zI7H1BzEBp$IL00th z`q+(auH83jS6i0GA$Eo5Dfjqs)oKE@`1b7V+P||j6ZhR$QS;GPj=YKay`$+jw>4^( z#$joN--7*SpZf=Hf}Qe<Y3Ev&X5eyP#!9(k+~OGkp*Jl4+Y;7@rEy4F;T5oV`X36U zJ?wky(+0O@X&jPPcnO719XqgE0k)Y(A5HoCbC$*-X@%c_-7W1{_zOBScwWmburv-y zEBqQC);78AhlOaC4ny~}KQuB8=6J8V+X|10$2)JNeSjddOsLlpk%03R5^9zl%OxPY zO(`uQB<qhAjw^$0$>(c_5WXVAaz@MLoA{7sZJwMOe+O+Gdb{(=x-3nG<%o?oZq~L} znbX*otm^gPr_C*xgM;M?Poe|6WsQID3uvXOZC2X`F$V|B6@CGBFK72Z07E$Uud|G+ z%p4pnS9k*Ko|iWy<2cW`>&k1jVwmF{u7^GcyJ5{T>!I1Lzj{As;11@P!Lg5n-S^vl zcQCe`f3G?D_%L(Gh!}MF!gF9}-CI~1qhoW|8VzR+U=A4(BlefX&Pz4B!A`vKWYy2i z!69OWXNdjjdyjj9y{_do;WBe@h*;rSVn12G>j2o(yH7l^ojEu}tnd`r?S3161R!~~ z>)4=YlbC};#0pP?-MWA1c`R$$9d#F<r&e-IRQA}{k6K1!@U5!yu=NZi5WXCKrWtc^ zm{{Ra<ZrUnIvIVoA-;yKUJ`R~m{{R4up8ZII~x$l2FrUXdqbFm!^8>?gFSi2uYEp& zBzw^|r}vl4!C_*BN5GzFt=|_5o9op2eE%PqgTurM4}m?^Z^~Pcq8rN$Z5msln`4Yg zP`$LDfSw!<w3}W|6kmHL-xFQ}4>;4oF5FSl31LKhL=3Lagok60&U?`_8=Jl@KhMg0 z@;Y<KP?|Ah&*6Dse{KD07nZE8@y`zJ8^atNl$IBQIyJm{U_yON##?y!*UB6ml$KW+ zt=adzgl^Lz2;5^fwnJ_XO3SN++@qJSUpyE4(c~?uV{0=952aNEdrXi0SvSBQn*ZSD z4CdgWGzRvh?P1NffPMGQi|yYs2M?tI??`GtaZBl^03;sNs93O#IYuaBI1gw^QpcJR z*J)cH^7hm;f9BwUv~pl~O5WYOD%iC%j$bQc4jxDYoRQRhaPQIE!JfC-54QIX9!LWq zku+>d|N2+aESpEq?Pp;Q9!LY6ku)rK<HN7O-k}?N;Z!BZ5M>meXfQt=?dCSm)C9ud zutB$XYYwU87+fMj1||5gX$}^>&2L`%p>`&74B|cxyNM(qZ9mOK{^iwvIQo=1cqq+` z+}%&FSz|`+tF&~S+Q%FNxZJ_W9TcmZ-5%9DbN6`Pq0GSpX+dB&KQe#yC9r=C>o_8n zId~u~5bQ<)tEPT~ZrQ$Ob)2e_qi>12FTk(ojy6vF2z9R>fBeD}=IF!yI`*VVwO@>= z6@~m8cgNft!W<mRl~)RE`~Hp#Ai!6w8NTdE0CR9CS01*kNxDIwOh^ZN<*nx91?K3< z6^>13lB%#)ZHVL*E8cH&{{eGwC{-S9S^o;TruPSXsj2dXyUf9%RC(BiC2c&mX9LE} zro4qKM?*BpD3!6?Rn2D1l@+tc+`WK?X{FuO>h&l`*H_H$Vq(MLQz;4$OL@V>=y){8 zoM9DCVI9w|ba!6+4Cau*D<dvT0h~x_(PQJ~RuCyy7Y#ngm_r7yh>aPRGHlcS&#~OC zKhWT(xpkOB2Cs;X8I}^VvG>k>&_MK`HTf)=Ib`sP*qC7{reD6PhW&qbPT7c|rI~{V zuT=Qnq*1e)rl2`aKDf3rlsVdSjp;}1TaB|J3|H1US5a4<IXF1U{esxfR-K1zSlQ_0 zYqcTmcsR*~?;cY6^-lLN2pb<wtG%2#csPk*w?VgVJZlJcL)8!Ct}urTClOv`0K5Oi z6P;)RM!sdd*pNARI7yF=%yG{@fK5Pliv{NbHZcbeC+Wa;*=xi@bY#a5Hr{W}96X$) zrQ9b1eurGjt~+8tW-sR8;Uo>%&gESX%>g@fYt-fygB{IGLWPoo7+z=bhE`-8Ks_Jn zb*~kJdm&!f0I(|g!6XEMNC{UUG7_IRxb^*7==H^&hrRWyojG_&N{t$<V<EQ(p#~L4 z)%_e}CRyqjcoEyP4Y{AyZXm##a;4c?YxYM%OGlE)@y1Ivq=y{v!&o39qValJH1r*~ zI7tBBNLW)mEE>d7N(8(Od1J^<P`XwC7ezi2RhMJQCdGSmA%YAaB$5mtB$5mtB$5mt zB$5mtB$5mtBr*XX+U7OO6+#bim-}`T=8*9#`q1t8&=(Uo8>c`=(k4`_T$T3!BmJ)a zm*@W_-v4{m|NnpI|8I-=1M?VjC-DWq3{!VgjH$HoPvh6d0^<tf3}b&|6JsUAJ;N9O zfCS9Ks{qORs(Ov?rmn2^iS`@qUhOLFOzl8zqPB`wrMa#-sM(;Is~MqbrKzPcsqd-3 zP&ZdsSL;=`Rmc3E;gkIQm_r8V=-aWmNWL*He9jqsd(fJP7ACZIH2Eh_RB%5XMfe%{ zp^o<Ye2WLTJP2NE;5r(yxGoFKIWC?&Q6)r0(BmI;hgKrtq{c_WKa~`V5@RD`V&Y&W zB)XZFNCKuMl7MN6<kAu_EyWTrEs@mCFPy*h&V*JTm0@hGWeyohq)){zEcttD%<&T# z&*eu={T4D%MiPw!7LrL!vxHG+8lHxh(P?_MDu<Y(AvYVgK*&{TAM5%IxgTEb+iNg$ z_<%VSz7=fN-)}mtSHC?SS$l_|am1U1AtfhER6K?xeAVG_$45e;l45ZP?H#f>7EuO0 zHW2baCL~cB(}X0-q%!DZV<9bBw=Y-jfgbkm^s|RrF$V_#7GTj$>2!MD>O9z7u1Rfe z8O0nN09b%UH~A56gpUIIqj8mmo6I2tfJRlpkBh+G@b1IzW6=Z=>C5kSW)2PjEWnbR zqAmCR7Hr?w?rR<~3tAip02W}$O)))gx(FNawP(I<(qcMuZ~$NdmfRHUyHBUj0{dLZ z#x8A`g988yu;ixLb|);}O6;6&k*%470{{!K<ffErE|{^8S$neawddb42L}KaV98A> z)wk}~6N#;<GwmL8Z~$Nd6rGgdur=-90Q=ye9)=stA!A^;J9-h?e9G+!SvwYD`RnxS zskRX090pbZJt(E@f#Ab`Aa~xf40eY(WDJakT@Khy^G@9Eg^_X2wQ^=(=8!QkV!ObO ziDBQqMU7hdqe3Hd$QT&0H-cSjKv3*0<i7WF^S$kvL&m^}y$S5d!qw}lgPmTZ&-1sL zL&m^}oelPcvQK~MkHXKy`@gq<Ib;ls*iNt~?;Y%qny>n9#5K2`Ib;mXs9L)bU{CU! z1IE3Z2Hkg4uN#NdkPX#dkqwyqq>F^Z#iK+<;N1|fTH<vD85@b4`4j^Jn+77H=tKz? zZ{bl<kQiV}B%D)6Vcm+s4J3Me1on#2a1~7lSr9VO3H08&;`<Ti8<HDHa<VRyN&>j6 z_r=l?#_?4<yPkv6RqtN)=^EzX0J{RH5h<0XEq}K$`f#JgUlYt69AH-fH6o>IdZ|VX z>`(U8TyTmxIKZv|YD7xSz^N4`gPrx^FH3Wng9Gdephl!bSB+kJ9qe&GROp61I0x7j zK#fRgoI1W?Td?~ds`hCvb8vuN0n~_;#83RAJApkYeb(v|%)tS61yCbW{!E|P#*WK{ z+T90@OPPZM><X~Pr~LWVuAl!Re?mWWT#iX819mh5NZE`J+VIGP0dlwQw&Bm1g9Gde zpt_~}dH(y+_mMm9y|Ht9Fb4<N6+m@M`SXjK??6MyX_WTor`4E42JEQtRTw|{r8}in zK;e;>I&bO295P@>?A6Gv{^My2h|JZRavSf=WDXgyBlZg9&g-PTdl`eX=H}yuZIO-; zV{%D(DnBwMs=?&a9P%$E?D28e24wns?}{g-m_vr~jP^el15-%eQD>43Ke=I>>rnW! z2uIK>)`4DQO!4p<<1`LRRMMU|f61ALkNi5h-8QI@Jhlh@v{}fB_60zxoUP_fEck#q zIBYNfIoK7(W~MHHj#b`J^E?DHkL~@9`u;LSs0RRT!;I8N?_km4u)X|eU_WU4+Ql+p zN30v5n#CM4wg>e!|1YqwOe}`IMxE@>PR#g8#T*>Am;aR1o+*c}K7oyiDy8xo%zh5r z%YOp))S*}1Krwba-?OGKz#R_T%YO{^xa_DE*oW+B-sZ)?h0MWWd-;D7yXNh&)xeH* zS1bdG%VB%@kH8*(`0TH5;<s1#$=B|Ub{Jni?i5d-V<0?Y2SFde(KU|C&_ORo{M1~7 z&Cg$d?|iVOl0&hd^IP}b$~8zZVdcEID%kdYQf1C$ATu)RM}r1SR7&pjn2*EI{|DRa z>-HD?9J*J1@QD(Lo+g9W5d10(#$YCxfSc6ts}55N+>VZjNPv5KTxf}lg`Z4v(g#sQ zK1E=`;3J`&$gx}k0CtIwZvMD2lFme)Pn$QEIXGxB{|{=JQH>vA<GX$S$u^y^nsCr! zQ4M@S+J5(}Vc3$K-2CvzLgr8_yQTc!so4YGIMWfi-?{w!AXIu84aA5js)^zDdh_q^ zW5=@1{Kugg-!O-a2GW3eh}>hFZExQLxktsc+jyP{92!_u4Zl4n&3r5tt*;)oJx*W( zhX&?9K<+n}EbRRdxy!wManepEaA;srb;@0L=d)U<`MsmrO(!yeLj&`FL+&?bjQIn~ z#dgCa^QqHJ;LyM#9KI+1ar>HQI>cPurmW~iOyJPK{9n=U`A-)l7Ncs{OvluACU9tA z5l;3~=4?tFiHW`3X52b+0TVbhF#i|ie)s2sU9GW_eX=`pW+x_aXkZcTj(gsUi2@q1 z`ST^`o5nJMLj&`FM()%F1y6tmE_H4B*ja}O92!^@irhm|YxT$4v3X>6x1azfOyqj( zK620AGu;URy>w^PknLBPz+r(!w72d#=GS3Eko(K|)~|;!fx`mxe?o4dY^f<Dko(lm zl{E%1LB;}Uye~%XMLCXQh?iAoGm^|*nZRLzMYON)nR#n|O%#5r@w8T%Opvia$_)rT zrP&{e;T=%;(Jp28|G<PXoXQK7JEc~mRR5pAUNg_nI*SQDP!G8;5&MT{cg<j5iM=){ zf(aa`S45~l&q-%42jaJ{sM+H&OyEGh{2%dQj?<4DK=LgsH*Dd@vzfqwdinRjPTQ3c z@hjX3^e=4w_;V(3pk5JRxs+a$yTk%R*?cFv{a|zn2kPbDrNUj`L>xlyNta_T^<@GF z>J<U=OX<09+BAsO&DT~gFb-q_2kPbDp*G*VW=kD>n98znOCS?CP_L*Q*q=72?8w5p z)yF!Yh64xc<=>{<RnxB}BX|2*pMJcV2^^?bR37Yg?`AJuPPuPn<|i_N1NHK6fj#?^ z-{X2B_o83k{`+qx3{eJC5g@^2*P$l^a2B+>!^R)Z1~Fl<!p{Ez?B$!U{?-y3{x34q z&F?XR1N4f3HzsGdKeGG><nEr?Zrx{0-~he+o0NO~i@uO8i!XoBFt-a6I6$umC~flY ziH`mb<Ze)Y_1~dP-~hdRoI@oqZGGgUmB@YPq`C8BCUAgWQE9NZwruhETjWlOjqACP z34OVm;|#1>Xu#NypayTcGGWk?9ZcZhydr>!$(Q@jN`~-Q9lUbN{F+RV;XGrR9*<h0 zL!bB+I`Sd*uAH6rS4Squa2~8Cri_7X`8~z>BcRBwKQD59xseGRoR^OS)n<K`{W$qH z*xA<I?)J3*5BJ;X=ikpi%D&M)*PdVxw!LX<X1!+JXU($wVEMx0v<Q~|mUx`;pE7SZ zhnoXTKbq2v7mZ^LHw;Dkd-{XAd%Cf@D%hi+)3(s8(oEKL)zsHm)i>3F@Wekwm4My& z#(zG5|KEu1oMG0h!&1Y7{EC6d$HynYur4fCxrqf#2%0%*+(bwg?X=?3wi@dmkuV&@ zQio%y$grr6V<$GuFrmmq6j>Axms-(ru!{+c;EIH?7>s5J$Dw;ZQkvMPun1&slws7X z!dg`h>Jv`}e$f#T(Mn#}qLHy<B%OX?eT~3c3snogy6|FWSR8VPW*GFUP;KR)-u39Z zSWHZGSh#BG^b}tJX(ndq4XWxwL|9O-da$QSfGt~iY*@IjezKiY%%G?!>`8DJ2|Efe z1v@8PPll;>Y#a=`VJjXDlO0@8Q%F=yjs*`J4!Bjp2jFLgju|?Gs<Pv)(4d}h#EnOr z;*<}=d-h~A1d}S-^&k&9Oo)u8hoWG}6%7inVL`7T`#ZpNWZ5Y>Q4lxu00g4rBG5Z@ zaY`f!{E|q*0VI-e0Er|VKq3hTkVwJ-Br<+bLU=e{;fezqBT+Dkhh-TWJW~9k>KR(S zs=78Ts0Y`M5vrw+;*@5kFRz@T(W^AN>OtL8F5&5j+s;YT>rqkRFt1Mt3m3Z$_)=wU zXizu00E|PUut*f6ujdPiX;j`cUFFy)q%rx@(8vqR@T2Yz4e5gShzJlu)8i$u3%*cf zr!k|a3DwhQQBPC|4eBhH747SO(LZ{Oh>*fjI<EML!yL{k;0(@3O4m6k7Clb$fJg$J zB$CTUppz6USwm7<$r_SK>GBB3*l^$HMB{S=Q~J9Gb*L}^Q>hT|-(s#rp=p$={=4^7 z>M1{o%2Z3AsaJ=hxBd3{;v-Z`=514wQD;|6e@9BT*Ox3#we&`HB^gcB_USVqBZi_h z5BC1?*u+Q2adXg%5sI?`mWJUX7(gb6;x3H{OiFQbMMZ>BOHECmZctYik}C)K6`)J; zbVL+i8qjaZ8sLLo@G**tNx%&Zy2^oOkB@=TGmgtKy$DM{FUcf&Ng|=(`$%jv=qJ3h zK<JS^&7cl*Ou)C~1F?qnEPNp;zmAbX4_ZXx7i5xd=aB(7Ud#g_N<l!)@i6m)M}5qA zABkBk$6^-CBxbQpViwCJX0c3S7Rw}8E=&)lSh`jzlgh8fL&AvCI@bGP)zYU*J(=h0 z$#8V|R;4Ft?h2jLr_lGOh6ee$As_IqadF)DivleHkNwdrUJxJnWKpsau;UeRcwqpi z!O@tl5N5b^gYyc^C&bF6ECT@)1EmqgAz{WoGKwQ18Kne3hGjo71b|8|V@O`gB$ohV z0q>OI?OIW?RZX9)SCc&Q%Y~ecNC-~|i>TY_&)M~SA^LD*`Xqz8y3h}UZV%=y`WcvY z$uEZlfekwzJi`S{j4e?TV9A2dNrmKMy+T1u;1vo);^3SFh)8-xkVrxdC&Y$FM1;ko zF2mC&8dRY|nXsTvima36L_`GEb!<k-Z>3C%@+}<Dm<Uo3fsq1tme@px)B9>N8Cg#$ zkG{E9`UHb2%uyjMsG~GmVj`4f41J9+hI=tDK^IPGoJGMBKpK-oN@J2pX-s0N#_KIo z+6el6Z#IB43h671HqgEV(hQ&yu%ux2#$Z(uWy0|E@dlMfs2Lj6Vc+hWzQ(}mLL?rQ z!<mpcGUI`hM@8ZtG%TASV21!{fI%7qG68D{epRFZ49Qef1bQ1Ul*B{1K%0c6kE2B= zEU3M&si1Q#xT>@qrDExCQz~sxI}-7c)N$deWxXDS&pG%r*zcr|MY{^k!h+gDtBJux zjEoM8k}FL$#r+4d%5(t@Lkg`Qj>pPr#&}7H4ljv|Y6N^zEJ$1p@sVhFJfBAwCdkDb z{R%o>9PliCj9#VHRt{;S-@PwMwQS(e;=&jo9u`h3W~=nKu=WnE9MoEreBn_g79l#$ z`Co}@Zytzud}qb<(ey*1A+1!i&+RTX?6r^3_H_J*wxnMQO;7c%@-2}ILLr70@aaRT z&AcI$Q8j&(G&^_8^D$DjEbklN?2Hr>jg%7Yf<S=$jR=cTEjj-bB}pMM(VJ4DopN-n zYRLtQFHtNKl}Ud?uhydH{C21oZ+L^$$zSeoeGHCJCw&AY0L=!!?e*w(1fJ7_TBqoe z)Nkl*Ny<a+M#H-v-v5Nw>>~*;l47C%`AG7Uh0>^x5i66jz)wK5cM_m@8k(X!2Pw;b zknvFHp-thHtT1Yk8tKFJYEswywsCc(=AEKcotE&b>BFQ}*($eh6x#P&U;C1(H7I>3 z2|pc*+rkyc>rq(XXr@NQ!&NTUM2<w&<ycf*CLx367Nj-3YWnL^H8#uDh(<NO^HoDs zk!qz6!OHKbrwQ`gM6)s)+ZSK^V_AV>fssQCE)E!DfahZ_LA^$!O9WydG-6=Wk3J!p zL|Ooh^L-?aCFNL}VNwE`VIbph4k^VFNwZOkl?p>_bVRfE-VYiqZcaj4V0^*wA_21t zDr|r6{D|~UfHvuakZ5RVP;+QF@tEU~6N(t1Z}5s&Y%B0FSXFTDf!%_afEe@6CP}SM zA1MA{P&3~Tl6u}j{&jI%qE8<{OUHo9K`Fje%KlH<4E<ZTLgbpzJgc7G-@Bbiu7|^5 zh^L5XQAQ3b#|4p22u<&2P-$t_C8;Kq|59lkT72j&Vp@eDVdX^vTQr6AEgiUPp~OlP z2*;?<{H3)eft=EL*CA{IeIz-hlVa%thD>6i#DamBRJ=`3`~O(K4SxRJ>__bD?C-$( zKhhp(yJ6dF%d(BMZnaj1hyO8_w(#t~9Jc+v%!#Jmrun83rs_Dq?{18SE&rSPB6#l` zsQXg4O&6~V(w@Tme6_V&&9|CPnmTGh{kl3uT~T!$Uid@sBH!ouvH#7#su@Y%38q_4 zLJG%aBy6ugz%Y<PXzgkliBQy`3h7qVgLVhiHd5T3O)peJG+8s6N@cB-b7Ohy9po!Z z6#f}a^lA+xkZx7;w7n2K8<Zl6F9c*XhAJswi>zB+4-0YvRGjz{Yt8>Bx6_ngMx{Du zG=duZ7An2gJ0oMD49a7UUc5$&h|+{^&S54(y96SDS&4xplkxSGtYTv|B+a^VkS>eb z2eLgb3=($FDqjGJDrO`|jkRds*Sjh&>bDNCLp<gLbW{?+EF+%yXsX4YQe{**Pr^tr zMn%PA=L5D-JtL0P@-q09_akB<e`A1`C^Z*ViWq2pAV{SUbvE+-i7^eSiOm26r;nt| zN>VJg!Lm;+Qj;Y2T4(_;2}iO>E5?G96M*Cr03pFP2P?9;+GNB^jqw3K017DpABe@X zwR{2k8cRkDZSaOv57K>zR*C>Hp^OXJ`a#ryB=d;>S(}J@F}PTVGv#<JE~rjeMzlEE zLv$ZeE#cb|fW@+1<I#=~E79R$F{H~>&4`k|Y$3iZfsUc^WlPR~=L?{ysu__|qK|!v zA}|)R<wVp*GczIx2WWvom<bGkh8#Z#v7liQ#SR)i?7bv932FmQ#v#8&c?i@7;tpFY z+L1u%_mPl%ax4a{OeWM*eg?mvk`WFSC{-Jzn_po_sT1<(_pYG-EjsvQLuM!OOB<jN zUG)&%f}2xr^z>7eT9&^TKoCrRVqx?XCSo%aGV0Tp0-V#OW2uX!<9(&0vGMWVOvF0- ze}>ILWr+Z~h%re0Sv8}c)Cn2BF$ht3wvs#s#g)>K@fwZ60hn?Q+I+!D2(P05%V3P} z7sdM4m85N&9381zvg8s#Pj9tI-;2+vgO5r?ZRg;wG&a>S;U%U&rW&+G^db2RqU+RT zC+HpDLXC{t=mtjx2#>iw5yb&dq6#I-4$`G001GIJ^b{GaIAEvY#l47>z%C+vX``^? z6M?Z95<dzlL2DE%L2E=x&>E4j7Waxw`bgBYmR!?$sA(L~Q4S)5ID=s!_B)bR0L;j% z9?%v^{B_dTq&j(bp;9afLLVvBi4sV4B2uaokrLcTq_5nF@Hk(6P}9m8HEH-)4$-~$ zqSNJ1{QQphTC{=^VB6{)`xP^4h!Q<SH?w)#E-a7llRaE4dd907R?DbPqZCu)UGYoN z79@7^zN3fGV`;Gw1uB}Pn%pF_sPn?3plR}*hrJ|p8xs7HqGscj;RG;C;#@QylVhPV z$t2{4OhRtRB;<xnLSvFiEFKc6xO4>k<Esyvq-jPNb|lG=2(y*5hX`)hOOIE^#|**< zgO4SEMO><AlCYICs?ydhEJP=$ujtZLOJ_91ii{Nmin+JVYGs5%ebFJsRKQlz*lJ*S zg!}n@HuFTU7;Fl$0fvSlZaoEKMitUN`eDXQtB1SLSWRi`#7R3$6VfkXtO{Eqyhkq% z5G+M>0zeoqk<tJmQW_vcN&|#QX@C$ZO%WndG5H74G9ek2X((udbkm!s<*Swr3f=oo zYjF@&l0J9_2GJUQ)md1U(2wEq2>|V=Nh)Sklm^i|&Aayn@LChQa~#k_OZ?Cb=G_yB zdukDDk0u;l>=yv<;-<=!QGt#~`h^9(UJu9&9ZX<R^R)!lb!<eiv!YE@0{u2-6+l01 z<4Nm*2%-ZS%rGCx#bSua2{1$?5<6q4?r<UxMI@a2MSOB-MtN_Ahj_;_>PW!9Uam0d zLe(?MdAAOOx#~udUAa;gr4w`+Wofem$Zn9YG~Z{TA^%mpPCnY8ikLIXPzwXuAIKe^ z#QDbBzr62K4rmCB7veKY(}75GXwZOYn9|}TO6hFTCR>u5Xdy^#K-QR+3Gomi1mFVU zfb9!O5<q_tAqliGh)N*u-ZDueL5ii3Ad%GlUXlQ5nN&&;Em)-laF~Q2i=|_-SS-;} z9Z~n186nj5)kFGo?HG>%(wz&((aflx5$qi#{WwknQg%^VBLO8=&j|9S>&vBsoE;RZ zq@$(hwTwW_#YEsjM=LfA?B?q_5!r{rOv5Px%V7ES5g#CV#f$)2v$Y|9M`+iJy-gS< z-u0Ew247HlwZ&52HQn#9%*Qytz5?Uao0<l2)eL_r(IGh+CuP@{_!3dYs%F@wL<i+W zP-bq_@g?%A-8L!F0XY$!lot3BiJJ&hhLuDjR35+m3hb{8Q}O-Lf6r5z@7zHgrL{9G zw4))k?K5R1NZ=YC%7}M?Cqfdr(1Kw)DvD<!CGkw8B%X=n(n{i)VkPlRq@=+RDT#fM zvadHH#j!!heBMQv_Wu*<{(q+b1pn^-G5)3Pf7-vc7uZ+WXW0AOoBZPofOo8)TQ^xV ztfQ?Rto5z_mR~JrExRmPmWh@gmRL&}^JDWRv&X#B{Em5mxv9Cb+0S&%bilOUG{-dD z)Y4SbWHjD29ye|_zHfZX*wNU)SjzC5;hbT&VUb~yp{F6vP*(p$|BZgHewBWvexN>4 zUq!FdUDqAdZP3ltjnK8y)zX=?_q1PVw`f1mj?s3~hHC>f4>VtD_GlKv`k<F4UQ<T> zSba(DQLj`_SNHiZJpr&R&NLeDj<!v{mpgbsBlx3u_wnpi-?J>mG#X<UmKAdcT)c)W zB%j`EHt9w^mc^Myd*;D*a)fQuyr;Nq_(6@)4TiET*)$sFXt~`{_)izk2EK>F=kERG zx3(-xHjM_`^B&lf7LM3S7N9{b?mzlQXp&Xi<mmB|4X9{;96=AnlY}ErLqtHP`K*t{ z$98F>j2Ouxm`osiBo_<saD=$WqCCZV7#nS0tYUPG4YV9fD6o_bM-x6W8lS)A>8Tqq zJKK1!L6c`kD`nO4U1C%9KHg;!zHsHXPiq^|0O1otmn^K5RnwQi?`o16MpQ`+;|7<z z2BWzqq0Kh^#j<1rZfd|bX#UHWkB>SGtC?%Lp<&NimTbTcb}=p`ByH((-gFmcF@ZBX znEz&3)fAf>nA+j3`A)NbfZ6iq&qvox9?h~io9NuuDEwlDk(TaY>x)-Rima4X)mJ%{ ztJ=O^sC^^LhIgmI_`Lc2J6%_^EY2$0GXurvw0I}hjk^d_4v(H6&9XSF=-gId-;D@9 z)eaBDwOfAU?g5s?Sw$DS!7g%*dcPq)ZASZm4!JCgvx@elfxSB8`s_{kv~6>X`yXUk zoK<vg7gX){1y?)OK*O$n(J0HsvN)^g;yirX!`Y@yFq2&0_WdV2N3bl}Dw+n~927n- ztn22j=(mlhd#2{FEY2!Aw=)X=^Q$<^V-%iqyxy59EQ_;>F5UxnQMo$}=(~f?1(d>| zm#w0yZ~=v{$j<d!kD4z`a`>NRS+Z3$b!jJ<GMTEW2f#LM-FJ1b+gh<K*(#d4G#9z| z-<{O$7Mf+?n8$zkv8)iTOC4Y@?=k+zUr_jJzhi3{%aZM%sql{Y?qAEyv*0Gf#tm<6 zm^zVV1u40UcTvrYzI_UdzAX)(Oet5DWpSp?o>?e7`@#J>ZDA)>)^2=+s&S^yxgAjW z{U;9wwn5>y-WdHHW0f;?F5XRrZ-_63ZQ7RTuXJ~Nuq@8h*)to3ugP095`HPRtu@=T zP&jAmoZB9S|JZW!X<WbARJ~b~m6KT(XX;$M1BHLKI?*3S@>{kHJXtoBWpSp?o|#nh zY1enx1N)0EyY}f>7H8_5+YW`_a+^=$M)juDLHoN8W?7u6b1_{UD*ofz-?;a(Wv-=h zg`Zg#XX@;EmkRGcdh+XFKb&{?&Iy)fR2nt6EegN(Nl~dd6z-bPqCI}wps<U#fj$3H zElqQ@THUpeKN-fdWP@hv@9p^Q{pk;n(uJNIS8`G@g>_19&pY(nmyg%V0oxsZe?lXc z#n~Er#)198j`$WZeB09H;JF?G%i?T}a}#0s*7i}mw_!H7I)By&*YjBxXKS3>6zq0& z?~Q{c<0q3FvTtKq7H4Z*{3)t-X!y;ub1;b-mb&#gf@N{G#-6eG?fDUto_>Vie!t7b zw#`^3XKS3>1i7oNYT$1}Zd1RQj4LdYvo$VW5BA~eWx8wtyV|`ubE>jT&equTHVRL_ zGs%TzY0KCF+wZhwnVhY0Ze!%G-emkk6>?{!9$Zj`WpcL0#klp5y!`0>94dTx<HVlp zSSDv{?3s$fx3#$T1onWNTfFyU{Ru3Svo+2oW5e?c7JmhyyQ1=dO<ST_CTDA0yoK64 zGobQ(7{=F)Dy(l|nVhY$XByaB7gSk)9EFeU+$iZgmdV)~=e9uM7hm%)Umu3dUpsG4 zo6IsfTjOF}2TEQ!^6&S-UVn7Ry_0Ab&eqs78HIm5^ma}<n#FSDakon>le0C>ZI0X{ zir`)Z7c!boH+7xCGC5o0Vq7LlUjE0%;1Co(Hm~FQ0G27+8e=GWrl9ccZ?qpU6g3a+ zFf;ZH%j9g0bDJS|-`2HDUqs=p>yNrp#4=@DV;aagV6W;qeh1e24Vs1DRT|GSWm{t^ zd?E^8*l|idm|$<I-T1c`VJuU&H3mC31w*lYV18I#Sch-9QtI}vER(Y}F2*IQ<dt)K z2chuwrvndv>|~jot+8hk75?*I0WiVdQr>SFTfs6pTjShh8t2EiAI3F`HT(9K?KFaA za<<0B*;Mm2bHB&!(G3BM*Y`<hnVhY$XFLl3aC^=7u$F9T5!o$%3(MqejdPQz@SeMW zgc0>8SGo)iK$mc~#>Gx5+|hYdB@}M;^Z)K7%j9g0Jrhv)N2wny-h#pt+JrC{%j9g0 zi#H(m;h8tyhsa%DA#>1|AuN-#HO`H}V0!%Ej`I}mhdkKXzw9WM$=MngFGucz>Z+D? z@Y^->rmWb*GC5mg&j|c>?<OBstq6%+{o<`s7g;7}Yn%(^Cgt$BQ6Z3P8(!!$CuvzG zXKU<v1G&eYuF?xKb!+O`?5THICTDA$8-?75PMm<VP~^^zem#+8a<<0BOHnm<_gRhB zfZeXahV&;ale0DU3`60mi~F~TN8tlIYxeA5nVhY0ZX^mnkb2z)*^;fg^3^g-BF@&h zco`LbzSEzlQFx2Uv-=ycOwQKWGaQ8vSXH6s4HW+Cl<dl@S*C1jOhYjOh2Q=0dPX(m z{`QYj)z7g^+18lG`C1fyU}(VR=jf8jk0Z)Qu}sd^*z*<&pHtJZ`vE$1_t)0i80S3{ zd7j${xvTeH{{Yup)~}8JuKEj>*<E25uLJww;Kl|G*nMYIdF=wr?540iuyanDS874( zI267v_jwfvuC59@w;>fiX4aQCk$ZQ`y}@ZLvx~wm{sipLy6&hp5A4mWbzzY#v$MkX zq@wWY;mc0risjajZ*MokZ+BAIxd~XudWBo#p|>~>eVE!4HSegfi`Ss={UZk+E|0=9 z+iQ+sv~*C|9$c|Z5{fp*V<>L<V$x2-&n&aO!p@CH;oXlcFW(l0U#Xi82Lzez6n60{ z6kgQx{1!-u_2*rmZ_Q?zZ56g>BnqEonmqX+YTov<wJWx<%r*);Hx7l*aA@q1Ya7a% zN5_|8nXMIe@oE%aT<ds)*HHN30fkYR{;d?YXA}ybdh2_;6@`b@THg*I)>2{T#-i|P zJ=5+ULgB4fe0Ost%WR>ri&vm<PopjytI}^D@n7DHWj5#7E5Y8UtsRCoU;q60oFYG# z*-T-3-o$TDcx_>~Z}Hm$PFamu4N^Gv0I=VEb5>(~_m*``z3nv1Ojg*%A7UW)EnF46 z7W3PAdrOZgEHg=Ad-@^wy!fc+1ChJy!uLPg#4-~VcJW8ZJ>Y8Y=L3*?Zk4-bm$S^K z3ft2kxgCRsZFzy*Gb}>a*(|e(!Y+OvxjU^HzZ_C=d*HYCo(^Z3jTN@14{|Tas3|N$ z?)v!)+(K$*Ba;wOa^v?ucb<e_%g^cb8;0)cdOdc0Ig|GPZ~6V`=YQS*kiXM^zW*ry z_Wt$#OW7aTzp}gS%k0yE0yMQ(v8!!2ZAWaaY_)9`>wRlG>uXk<<!8%j%MQ!OmhqNu zmS{_e`H}geIn~_WT+eJb{bD*}+G)x(P53Wv{l74LZ`g16)R1NvW@urkVKC_L=s(wQ z(r4&L>pSS{>-}}V>dxwR>9TYabv<;k+)IFcv<<ZtG*dLaH3^#X>dWeV>ecFZ)q~VY z>QJ>>bwhPXm93hmdPCJ(Ra<4or^$az;KWZ+AiBlxLgZk~v(=ghUoPpz1Wx?qe~-1S z=eLgSxU;j>HR_J12NO8)Qxt^J`fI1BF*}jlte+76J`*_clm8uZcWF^R61wWvolVPE zNMHgdeu_%rw_DA*{}W{Ts_SsPc$5j8_{skk>~)=P-ljP|;Ar7_T%+Q|Pf-Bas*&dg zAEBBT%>G=(1Wx?qUj=)`PoE#0g4|7e4%~2&37q&TvV-06S=2Jf)m1k$HTLdI;KWb< z6|l2Ep4Wo3u7iu~l>LwiocJm72fO{+fPhNKePe&ihZUK?iJ$z-V6Q(gzx`6=-ZFXg z2P>JtiJu}X*ex$*9|Q)l>RGqnp2WiigEAHJzX3aC-7qt@O>4$={JqvGCUD}X$VR_i zYDf~K)2hGX-o4hG37q)JzXW!|-NF^ikbB^yCWa-Ag%-w_02J}T9?{egCbVP`5kH8I zG~gOG96~+$YLSs)Im#~kQE~TeOyI;*kr}1$?`Zf4l5^G01)FP(X96dl^1lW<rl_Df z^yoF+9(R9=TUeZUDzbp>`SJ5X&5*mG`np?7g(^bwEAQ6)hYtbK0Lj}Q-iKPcV$L^R z8dP9{EF<Xx-7$Q^gx)y^flw_jDAQN_6%%9`N$k(SUU{wcT8z5odwY#|rcM-^8vB)$ zV$vh?uzjTmlki#+u4@3gq`N0LEr*ho?C{_8L1(NFzYQ8!^%Ev=Vl@9Grqr-q``=lN zb#ZOc<j-0&ffJ)eCj9=9rM8EEqlLHjx*1Zyght%Zx(IfI33C%aNB=Zux*oWa)sSOf z0K4?oox&DquFtIV>f!odg2FB`fPLC|NIwUKZ_Ev|f6s(?g`IyM>|UNFCVczqr(XwL zYQls#g<WI>`(*m2wL6e|)1;tkFPIRku=BqHyXV=T7UG`UCk^7amQQ6ujKVI`f&I1L z!s9)V+gW&WT_h8t6?XoYlzZ{lL0FqUNf^;Hs6G>-6n2pw>@RgKG&I{?X{|<=VnU?C z&OZlskGq?iqt!kcbU#Cd+n^B&yGR4}!yz3WmPYQ?ZL_WQm=Lb8^Us3ay?upKNyxor zXrEG$6%7=2krwRxtG>K=9l6)Ex)9Qv3H23r{u!{lZVdd=g51x?#;s3gLOq3Dq(XnU zOc^*BB6QWJs*CF5>fvh&JO4D;!#kPmpI|s-ExD97hzWHSc99xvHtmhKpj59~yLNQS zK_=8u*!ibuFx_81w>fgJJQ#g4oe8xSc99?0#@_Yse1P1AzkPCV9usOwY$Glf?17?l z#{EYvY#x`J_ILOU!=a{+y=+e&KCJh?)s{an9FCsbUIookLn*xQ53om0SXk~DJoGdj zp4uI4&H<VE2l3mP4PSf#Aakodame7?OsJ;h&OZS5x`4cmyTN9UFO|jh-Y|t-_#B1b zn0#&QT-5yF{loDX4pkL){t4tBm_B2|_qgC+f86k%zcGP>F$-TH_wQeQ)?*2B7r(u( zVO1tn;c|aLx$Ayn!7Ry%eKdGYXC_ou*oDuK`&fn13Dc4LRCHz=EL$9mnSUI)haR8N zBo=KRe0Mlpy$Th%+<znY>6>@@$07IeKi<1@j|og+=YNjetyOuI%R)TgUUa$P?@Zue z%)+P0y>CVR#8Bk^;@I2<{!HLt%zOy1W-Z(O{TNOyvTuI=Y~q_t;9$(czmU7wwRtkF z$0urg9?f9_2V>?RMeefuKU+8hZT`*P8MA9MfrBv%A0zjK2E!Jop+lp8f4BTPCU7uj z{t@I3s8IepEL$6Y-5T2*qa{T7u)-(ET@W=N52Mvt_4zjg2Gw9fu)@wijNBv7U7gkf z>fx=>h0T{UAxL2tK0@x%Um4$CiQjJg_4KK)F(FW4=O03D$Iu-g%tG$xX%E`%VM2hy zF8mX@-@ZF!dp2^%9eVnw9}`MRY-8E(?=ONx-mx*J>hEx`_~X5{liM)CUuKsM3b_Sc zvS#}$KU9EP{OD0tJRc$0WwvUW0gzha@NYYhUV&Mne)i_=pGOL|e{vj(BQRX}z%d30 zdW8mu8n6$fyHq|BXA*KO&LreV6>zE{lh`z+%=kR29Q+V0-R`(<ZOjBKR~3K*iOVL> zs7BJD+0*7Nbxg2uY}&Yt8F_g1DzF>W-n%B631)@8=Q^6fb@YQ{TXB86RJrGFXlo{g zZGhsC*u=AM2&VhWdPYBZofV8ec5$D*Xr+)5-yfffSCArWT6cPwVDPb*?SZD4>~TE3 zdjN%3c@TObn+bY_ZJ-U?r!73o5+F+!wMlIOy+X!BvFaLVv$($aZUN@hs=7^wY&**Y ztuHrjK;gHmF4}mhHVS{g)S|XanV^x`Z{1Qsh9;dI|8W+k`%dGOg$FPz)H0hc%u&r} zTh9$f2R7(iA@2keWK5K#;1;kO+-ZFq%G}cHpMU>n8=;cm_sT;>;yD#;q{VY8oJz?= zoNSB(i%Z#X2c&Gc15!5J0m-G64R;VL8}7hXN3rB2pKzi%4`P9hBt9S6^G&qv+UBNm z%f4c>e4n?%QHU{f^l5I*ix}P2{!H%l7L!3)`nui7du;Ih<r~m+16Q0L+=0!M@&ftD zcjDWVtVVjHeP_jA)gcRJzGD(z(KYFW&im3G2<3SuXg}bHuQFkb%Ov+Q3O(B-K5+ui z96l1(i!h88=RpL<b5ix9F6D#q^Bn`@UW;WM<eR@8lYYn{`>|>`sGK{u;;rM1Lwxhm ztIY=g_}6>@gr6?I*f_Zd;{e}$jF@JF$L&0I6Wr_`9jotS9NwFcE^jvIM6aIX!QFG? z@Ul-C2lwU!YEGKbXW+Sws8#UUqJ8HXhxX<JaZQ@MAbG$ja6@X|t$l$_;u;iSZ&IJ% zqjm#X+*z*N7ul`ZM2_nMxA}y?V>D1J_E>u67Ms9v0k<Zl{Qc|0FNvG^@pl8+c#aE5 zGbv%$r7Bp<cUF3K<kyvK9LEK!m=xXJu)QO=Wj>B8KFi+bxIpHU!tXt33c;{5@alqD zr`TAI`zg2&>wnm%9*(b08YXl<#l~=4;8%$W!=D_T1C8^8KOb*@$T*NUAJAE1!Y2FV ztKfc}c4)}wY&4e_2vXwg74P=|roZ$1jA0|@vs8`?@G5cAn!=oYkh|%TZ(SY4MseKL z;HK7G@>*+f-)q_VPCOgQaRDDCj{I`bd$Ylv-=^}>)3pB|;CIx||A>E{zsr9a5P+%v zZ~FK4Z|xuNU(22a|9=DR9f1JUw^y>;ZO?5#+b-D-*|yo1*&Mc1TX$O%>lN!!>n^+v zIL|u9;<l{AtAM2~D)Udk0`{9Xo4cBum}{AXOwUbkn7Wu!Oi`xlrZTVqxM@6X^cXi7 zKQvZ0tT()mlmCHu8!*XGS3gqU4+ub*-mY7$o2?tA>#i-(Zq}~W&eu-R?9ha2Eb8CY z?bXrhN~-RDmr-^43-G+It*nJ{nD@F$EF50CCVPhHU<GURMfwad{$-;jp`~ZAF3d4S zg{%KC@(WMkuEs>rRYp8biHntRCKw(=mRvAO^OCsLLH21dup<j`+^Ua<S1?@kh{A0T z(IqkN&qyS0clb!S^pRt62S_GSf=t5hNhZnI$?GZ-MsYq8_fF(k2xFOyQ3rVjX~VQ8 z?mM)H_LdIu4Ah3{j9jdrU)q5K@j^Av0DO0p3RVT8HwDg&KLVbG$SBJ9I2{=(koBEt zI!*P9fTb4QH;slVY&?7>kadCgx*6oTa<NRh>k@-&QV{iYtA$8>i%d#)Xed^?LqlW? z?6ROP;96;fCfL&-U&YrFuargMWBbv^a+ODPq+s#%#Ybt3T)aGxaO)m-t#OqH7G|)Z z!gWnt29iuOy!JgX#GtDS(udOhU-^O@_eogZ<jP~wlSwW%UaovxtdQvGqYHJUs&ES# zjYoFja&1IIdUCwrHK_+h#>BApCKF*=hjCqm##cBTUSo*)DEtsCfYIvV7>PcTi$#;m z39#l$B&|n8;{Fo(bC5}NgiN9%u<+x#t5{qt^pR2OKu>RNC<c}912CrQ1bTWQ(x^oG z*Shqb#nV%((VF%yY)<;5#nS^JBZZb$8zz+TbVox}P)XMJxY-~#L<Ia>!4?$v&FHf+ z!C?O+66B8q5+VX-<hUlGkYp4i#gf%0?na^UsM0b?^FxZI`5}=smn4!52PHC28|3MR zZ{aG2qm%`jAWzp<V$;zWUBt%l&I5b|(q>Hdbk@Q6)A;JA(P#XNw!ML#PE;G%)?q%v z@DF|yE?8=MI%-1`jY_24&ZrFC?!yg3-0lOQ6K?Tzp#EyTeTeEzqn#E{d+IN5Xot|$ z(~btNNwRL{{2t)Kj`syi(bgNcF~w_;aj;SIUfCeRYv_a@Li<bl9o_YjNk!|Uhl%7^ zbel|a*%Td<Jd4T+Fy3WS(J|>dofI1z9_VR{#zCiu*4e1PYT0Kqte!Twa%+0BVP#62 z$}etNJ*^QmQc(42!)L*sR@&-lPlyQ2LRcdsQ_j<}!Jd|gHkOQj(ks~0f>OhBlq^)~ zmRmT@f@z-SI#}Qu`FN!Z#Q6<lK{QcpH2k)~LQp1QAt;l8*<=zHf-(sUL5V~|`$*g; zkYgi9dzxV+wov&x-zROnH_E6#AoEC~M8M)qCP~VZi)6ZnAYCpapFBR2<binmj4ZN! zWDI6b3e6Ga*Pv^^g_)E5O6+LNoTL(CH5_SE13ih<M@j)SfI~e^wVFiL-WjP%vq9}f z&yrYx^;~>{#_DN;!AfaROsv}CX-p&88;r4d8qr8b2$rXLR!>9f@=6_-Z6!~!R!;(T zxfuMk@tZ-Ocx`1JG!gV*47$)y)oMe`DIv%cr>hK~kiPhmRrwEXkODoi)P}fl2LTw3 zt4(dHY8wT5VyF$3NLcS<@JE+O8R3nLDv^>RYxeX+V#t(J0nx>NK8Bae3GiD1*CFDS zX4)G;a>QYegPUHsfalxuV4Osd@W!LHn5r@vkHHavU*pQv9@?kI;0S*uR)xXQfU2w1 z0crgLJ@u)&N~CJ()RTdpdL>fA0(t7m37*&R4Ly{kzKfI?F#p=FF3?k#s^V+-aB9v# zPaUdsiO3p4w5K+dk{%}6lLRhh`v#QPsi)+M28)HX2tt<8>Ot4)WW@?PmqKEzDc$ae zFz}I>sicrVc_Z)TGKnsdNlb8=#8j3^bev2|Dh-to7viZ!nj=?hKfj~n*ZdmfsfmwN zK~q4VlV!4MS;wa6+8QNeu{It=*H))iQqm&!P@tz8wUQF4TGnRrKo2g|2sKqOa7~CO ze>uvvGDQ8Kd)Lqfd#aKm$(4_~7_`A2Tz+~v+6c9?%B#^PsGXHb?JQY{ImlB9u|_Ud zwRFn!AWy{-ErKPe&1AF)E72m5gt-R-Jrzo{2;JcS-R3C|S*3dNY3fy++2k2*o^o<n zduUH3gUwTx3s=<JJY~2r)7d<wxo`!o%@e|f%WG_&U@lxvZS@2pY@**o`DMdAfm&@d zBL(HrilrTQh2eZa_Hz&uDFk=|@OX3u)%A1lZj;l|(2c~V0%JG<N(aCnTxNyHz?Ecj zKoJjRA446(PWG9DMO-Gah)X2hiI+)nIl?Wc7`P`<V#W2!8!N6%UNXjP^OT}5qbgy6 zC^XqT{#>{SEotY%#b`+z7yb+_Y30KE(UKM}d;l$J=E4Wjk|r*E2rX$u*d+b_VXMc0 zppk;;S5KTruhpcgn(f)owHG#;k>Z?>kE3hTF}U;+0}X-vad=61v(nK1f0*AbKmVHk z<@_!7XZHK{Z|$e;pV@cXKgI5Uj(w7SgzXDkuC1K4r#0DH+w!4hs%40!ttHAl*4)S3 z!n74T`ij`kKQvx79x?7Tt~AayjxjtiOwm8n55+z{R$p0f)IHE$(H(|=fTh^czoBcS ztERJRf7f2o9@5UzzM<`c6a6sF3(c>Z?=@#MpJA83R<lquTccC|qW)feR=r=n6PEmQ z)niq^tG<ILfjz2h)e@ZXPgadk^;ES~#j0wkN~`pKkMJS?_-Atspw=wkbbKev!S9o; zHdlW+45Xlq#pdeAh1;5KuD)Ejoyq3v!-d-$ZLZ#2xP!sw>cxdS>TRx`T)30Y=IX(P zJ8NyO?p(Nw#^&nAg}bV)uC551sJ^IQH>;})f<_8rbt(vQbtWkgi%az6&QSC`vsWGH z5_NYaR(q&ma-a*kyVj^gLV@v2b#;JT9ALs#CO81bo;!^9h9W-q?o|Qly(3AVBvR5R ziInt7A|-v2NJ*arN%!PPi6m0eCy9&<a<wP1#{Dub`~(NN+K~uUVsW8}V%wHXOR=?V zE>gHv>iE79sudv_Xgbok#jy5}o0_f_H68I0M$@&VrW2EUHvAmqYEkl+aIfn6lBurd z)F527_{%!~YJ=EZ&8Yg%(;K?rhQfrAl_G~B#XDkTC3E2p7+FbNxIIQzA{TClk=2w7 zw?*?b;lgduJdF`H(eI)B)}gLOT5Y0{f}G@_4VS1t5D^#b!tB(luzP`*OL(RUi+=s@ zX+LU$T?sEmL&r)}2f5;@g}Ky-c7(X%#D!le!%sEB^V3@?u2^mLu`1k#gccZytMbYc zjgbXE74X;u&_pI_p972~7WZ0xRE$2v6@z_Ki9)d2)X{~wqW>Yjwl>5S^$+p2G$F3Y ze~7QC4t7N#9=kZDk|@7MZCALqI`+j}G}ngYu1~yn3gd=^*wU^B_<pVpu`i(S*9W`m zmuy9h+I@m9*j4Y<=-Jv}*K4mv&q7z!eKq=BbVVIRb6r7Y&kS<aMyyfkAk3p<s$ds1 zGw3XID;aAdZhF%RAAYdrOVRl93HZSpuSQSA55jE|R2iiZq@E;%xT--}Eo0>3<%WXh zPj_|!B@XhT0MhmVKEcH887|$^frxZsLI)yV5}=Ncq}_uQOQS_10rtowu4Mu^f$AF{ zD^b7~r@BZ#9Kdb3W8`{CxY@t9ub%3vDoPw>Pyg~y(*UO}Jv3L2lq-Z-+zONv$a{Xo z%6op0@}3{0yypj*FwGT8Kdn-JTG={y(L(O`IP!nsr!j84DzFdXAXT+G#*J46E)iWL z$mLaml~{PIdm88>6__9@T!VwtDY`L=Sp*GON85fW(oZ!#)U-FqMLICS3EpVvz&FfT zD9e{9fq;Y3fv$42P?kul4|0{I@vN*%xWjs*))ZG6G+;k&weTU2q@@A~#&E=b8W-j1 zYB`=N2b_;>mqG$-l4GH!$|TfOi6m@QBxz<SWTX)6DorSY%8MevL4Yz|G1C82$E@lA zSBUrYg)k4)3f}pv2DyTPgGhJ>xiawLAW5zu$bwXryakL3<Ca=-qd-R>B3A7M0nu<k z|GgVm+}Q_8fw#@!fDJD%$s`U%BobRxABmF?ITngMfJ%5+!x4jzBxes&Ec(kwVk;oW zVk;n%N(l)ukj;T4{J1ZGSUnF>8SrZKR~Yi8UXA_|L*Ac;R>?xn31wV%G*1QJ4w-A7 z|FCsnh|7j4hOY+DD>_#8^E-B~C>yiMO0!9cM`Jt{5?vO6y>H<=<mB>5C7-GPfAAnJ zly#Y@E4Y64iRk}uS77j%N)DbFH2PT#9^*@c$5&(T1p1G8i?+H9gs$$p-A}b5$Yiy; zuw4~{*xl5&SY0|LSj%j6!Fim_t!c8l;9o=z)-YOKY9(0RV0EdKU^Ttf<);M0bk>|% zO0cTdn)9v_4Aoe3W-7rdYD>;L2%1ny)T**2X9hw>gt{btlr8kgnXU^<D`Sd^0u~03 z??Cc>BO2H~Ij@A73ij0^iK7WD-SBaSfAQ>zFhkL`4~`4HzRa)^doOK+fTkl|q>cj) z;v;?6tLY?5zG)4=7CzFK4Lf-y)_2>RJVeWBAsXS#9bO&)dvRnG?f=L4{pRPt%fGC@ z#{Q%IyzLv?5L*XZqAkK!)fQyaTK}-#vYxXRS(jSpTP|3RSv;1_mQ|Mdxa~j4(%L-F zJkE5%blBuJIZgFV<xCpmePfYvyK${?q0wQSXdG_rX>4UUX~>7I|NDl?hQWrehUSJC zSp1hU81)bJ-|CO)_vqKc?tij=h`zl(4sZV1bdPm6bf<I$xbgpy&R_eN_Llan)}vjA zQE%1!uDPN)1(aZ?=2K0U<{iy&O$YTUb%A<=x)<&M)K&+mo~V9MomK5qHBeOmD)3tg zNFXo|>yj2LC_&F~DvQ3}s0qvqdO32FIv_95yQ(QEHw&h`0Ia|oGAi)qmq!7vXaL#v zn)?8Gp>7B4f`fi6Uv%IPFH!Uso{z+mBF6%dkx4Eslmt1J4ke`$uz*QqTzFt!DZbXE zoP?m({(P-*o|v~KAkU6CU!5so`H(!Dce5iZ>rhw1;Qf5+5lu**_2qad@#EFOc^2;` zNJ)?Qalv_JL}L@AM5CAkZSzb3&{d>*!N{S6t66wu`QLkQSsj>XloU3pEPT`Wz&wMb zut|}smFE)Q$<yPgYzVf3zUuf~g#P=^_t18_m)Z`7D0|*U+i72FJBlA0oTquI?P945 zta+k@Yw`3b0FHF6HBXdq2m;Uv(pd9E3Fi$4t1WJla3*gs#Ns9aXY^)W65^iuQgwi< ze>PSV;(q7lcvNSMI@mqqrD|e!?0IX3dpb2L-^ae=kbl2XOS`9OtLw1&_Vp;dVttdp zZfdZ5>PxLh2eM-W-BZL#0e@V8JIO<1wPBh-_v8|hcvSs;b%1-4I8)@5h|HMjo(P+v zR3pTuH@k0o$CBGjuOS7dH>?NXO9jgSj_7?9%rqeG$#XfJYxziQJ>^&!p~xh*p%RJL z0cA2KGSEGNuP8P*)n2y;y2qD@L`9d|0^Q?Yj$CF9bie&_<WftZd+f`ROU!}pF)v3h zHU+xhdO32DG0;8w<;W~UpgZ;D$V`2pd(_L3AL|0$BVUeOs10<#`Euk(=%hDZj{Fdv zGy;((xj!%<3qJ^O4@aD@kEoG`1-XYo96(vaW;Zq}f!vfDnyLfcL%qtW91BRWa-jQl zk{n#pUxzNWx`$xqs9HQdRPM;VnmVg{uoT3k^V3@0gOs33V|5Qyf@;jc0SICa9ztS` z#oZqv%)vvdmAfhjx%-u<SELF*rVDcSEg6e?RnP{x`@9m%G(m1Mmr=e965U-9Uq<#a zP`jlsqu5GQ+&v+62PmJ$ZA?WMb=bp``!~Eg0aVRLa<P)DAxa>*8X{71HAEyp1-S&t z)eyxdSlwisqbiJQ2MM+Z?bTfhqFU$CUfq=7S7@)U2%3->+%GNeE(jUDS$Eppoe8ge z@LSL_YCg5q-HGr@3Ii&LvAR1VXq4Dduem#DLtDYpCL#fDOF0Ms@cafRZ!q@4Qvx!X zfCg?)O{pY@<<U|!aJyGxm!N^k+5^@qa?wb;c#^vf8n_Q^K;&3OKHz9IN<7A=^C>!S zkq(;3pQ%h@d6!8n?=q<zRe9a=if2ybzE(;Q6KQjcAot~GK?`Y3K&yx#H-$0e#@O8e zxphVg`l)&xy0bzk<8C1tM~TKN+{q_xu3=##f^2|XQDd)#3)!zJBor0V?gg<>RAiD% zi!YI5Wy=|)#h1vjP*l7m`Oox`5op)u-gcEMhIZW|G<7#4;~?3%hO4g+7W}{4I4IZ+ z%N3n$+!PlU>*u%s`kUhe-DJ9=d=?h?>AM5mNuo@Hi3kjX;9YH5$3_9}L{X;s;?6YM zVRgf91vV)`TDo9|S>!cQ!IA2r{DqiBUK15D_>sl!HBmv@CFj2r>bo1_2(^bwclZ;Z z(Tn%VTAV0*5f(Bf7XjA)8@xwhM3WVbiRufh%jwnJ@mg&QBVT<0#Xxkt;2OC<kH-=n z;Ev;4G74sAI|AIXd`m{b0w~z(j-i(HZ0V|6*1ELb>W-FzXvxzM_EAdk6ogl#5<H1! zk5Gaq(Cpy|notz-eqnJpK*&f1FMV_>z+IoO4qV+{2%hY&Cs`qTd%L7a#`n-P7aehX zPp`eCC@8$7C@8$7C@8$7l8t;4N+pm*tV~7<Q{1m%%i0Hr4)98fw;VW&J6USMUJGv@ z;3bh5GTri$keD(lo*u(&RD8^ykWJ_+Ui;5@JQeCA=`nB7DinYxYCs<5@R%q~dzp+F z^zttP-IIR?mv9N5K<Q)?i{k*C=HsK~5+h&Di*ZX%qp{9=p+RI-GQ=jRgWPl;f`bp= zhXWtk8REuq2#imZSU<l5$zxLk-L*?dq!^l`LTPs`lAy}e<*}6iqy%l}t_k>ArNaFd zn66<@$srN2oJ7x%K`uBD$Jl<-Bhzu%fnh_6=>uP=IA$9JJ7`$v;rgw3{y$$8>gVtF zU+cfXe>~m+Z0=vrUj;jWOZG$d?eGJbX0K}xf#v@Xw$ru(+o!e++eF&{cmjy9mA7fE zKUvQM8_2QzV!3QNYN=<bWbrq@F#lry&V1TjjQ0Z9m_IVlf~~+Hb0>46xdFTZ`kQW= zPMPvdYfTGG<4yfc%}w=8rHwC)t&NdJz2Q&89mCg#W55eshGmBNhCzmohD3d#exrVo zewKcezK1?ZUsqom9sz&SUDO@WEu%XETBmj??gvcOj?(tmcEIZcI?W@^EzJeZVa+;N z63o(c(=^sp!<&S^tFNdJskf*Xsozl#S9es$sw?3|x1Uv4RRyZWsyV6&s!pmTRRkJD z{<Gy&AcZ7&%kCA>R@$nqIb=d(lEUq*Ib=a&q+r0Lz%ijYFrY~^Rcu(XuRP+t3od7C zXwQLBjm}7E{8W`!l~1+jz^X<^nfi+nqeF9GR+C66`j;#PYK6DBh^WvUnA(WH)URY3 zfId>1NP7+z2l1Esc?%B73H0v#AaP<K5rATq?|uEQE+i-5<#_D;EZUHqQvVQd)`aBv z|3kb<9h_rFJe`#K%11fI;2gpl=%mya4KLuALvkdj!50mC<0Y3(Avpv!(0Q($oc5tX z#*iGs8eWbMG=$`s{vkd<AChDIhxk(XTEjoY`{Qf%{}6A-*Gk*^67{j+Yo%>{iFj-6 z9Bk{wb75cgxgMhPA#njFBG#S*x6nFMpnlKmetzx~$J^O+@amAx=!<9@n&T(+^8l_C zI_y!#g55bw>gNGsKfh&jzDt8v^}!jdYDr3<#^#(UhoNpAQ(K+y&>$v0!bd}$Giba~ zkoyg?A5#3ThdQT|5pA>h+e#AJQ;5==o_mRe5v_9?EtN<Egr=9;;+#rLr8n5y;+#TD zB|@rY^=sIilc`3U%17p_T76p$HJU^<qA)xQEwVZ%B4`xZYd5-uB<BS2*a*J^Z>BiQ zRfL{6*x}S!)Ma3=Ai}I<xFA~pi&h0#R_J6ZK7nirWKvdf@#+p1Em2nmDeJ%>xdgHf zj96I*1}W>nAY~mGq^tvjlyzWS4G32UImgqY#C-u2opvG4akMCLv3{yA`d7MC(}|sY zq6&s?P}}&YMZ7ShID&AwBrehx=#;kiQcCQQUDiOSw7pj%b1Z>QX?w3kI?aJjX?w3k zW}5<?()M17++YlJO51xSa=jtYDQ)kS$WQfwPHB6uM6S~XI;HKs61i3z=%nqv@|mdo z8cm>+_V*<sKT!ubhl#qC+#pD~dX{r2bgQvI0;Dp1L(|(z7y<MyD~#T}FEiqXi+HO8 zN+jNvpnInY5=kfM(mSnm&P^WI;Uk=m%_Wjdn?#cI8Xp;9b-qr+_QD&j?%`#VYIf%k znurwiQ=O0AYOmoOtkt$snLGn~%XRz5w_%Mo=OCI7ln~2Iu)*dW$c01nHm7L8Ch<$_ zY|j21zl_%A6fM{!ep$?T(Sl71!xGa;7HlRdT;A#=12!WCv0>j?+u2JSmZ+jvAxWhG zEH2j;v#X>f3&wFzQMppmLb<9hL^*q4hITXl*JXGoChp+iYA=e#%SV9FWC~Y!VcAKx zGCl%x6&I&qRYvcC_()7T%n0ni;kN}ZT@vh$GiP*~Oaj7?N%X2r0>Y3<Ko~L^AMEUo zkKsN%Qnk|3%N*?N_EI#yG0qh1?D}eStTEWx<<;mIL$I^+tI^T=U}vXSqoZ`e&W^7} zM{0we9bS#b6*ec?(ed?01xdz;hIC3F02bQUpq3McbctNgaC?xKde`O@t?L3GR?-eI zSu+A`P7!#ZFiKih%H|~CK_!Kk`rDjjUMGi_*lo@hTzIj~=4{S|7g=pi(cDeSpJlN* zMRPYPoN2Z>MRPYP{ISXA6wTeF@Ip)z(cDc6e}riwn!8Ei4>3(db2lmc0j5b~?)Trv zG=aUFufDJzbT;I|09KshHdM;L!0N;{RBNOlnq!Di+DW%KDyXnU!S$$;ix93mc%OYG zLh`*$4~a<N8IclrMx+Fu5$Q|&|Nf;BNJrZAntb)b-t^Z1XAI(uzBsy&Bt$!-X_~6= z=p)YI@eEsug_NfH|BcfWQ!I+cJ6CI<fjuzAB43T}jwu%LYIHYDvG7-;yJCvLHt*%K zyI_immU$(AvNNU_S>~BaMt2Hwl3|{ai^Zc3m4cn3U7ivfL9wU@+2wH`1NAny59&dN zc`rrxMm<E!JgyL=?uB}gWgb@#Dx_zSlMM5?dce3Z_=D0;*yZU|SOx)-;-(>PC5by< zlwFN}l4C$8>4>t!sO*x_9eOy)X042oi<Vaj`8g-x12PFn0YaX3^*|AD?2PB8pbp9J zHbF^}$cXS@C!QG7VY!dTcogflq1ijzpf6Ox@KvI*EdB(2q4LX-_n|LTdO7lE%!rDJ zq=N%*smT6IfRiDP4i3C=uqXSuwzC4a^d;a`Jo%%frH|A|abb$Wa4S#EC5cx`3!#{V z;a2X|=tOigS&zMxx+%K3%&XB&&=sX$jc$yt2tl-|<WDwg<qXz_&6Fj2$x2gQMZiX^ zG*(W)H-wgv!60-Y0M~TcPog5|{C}w5Pk#Q_{15oA_n+fG+`lF60vPRg?Z@q#?eF9M ze@A-*dnwy*wsW@Kwner{ww|^)?E7z84_lqq_pEPP+gR&ZEta1wCoS7>H=vKDp{0WP znfa=@2z&q8<{{=3bLfBj0)XA{i{Xr6ry<iY!O&fQM!!>^sh^<lu8+}|hUfnQx~96y z+8NsZnjbVrG&!32nvt5en!4D}-^a=ScJ+tqvFb*uxA7VO%Rj+yQGiK!$tfA$BO?G5 zT|CG~0+7P?3hz+i#Rzmhws+VF;UM4pTnx4dGKnpMOp-DwC7_cN>5Uk2&)Q_$?g@o( zdNg`T?~n#Ut3{<uj*%rDqj@Ka_v$z;6W+Tp@wh=na|q{&K*mry%#QFpH()iH#J)u) z#Y%Y-h?Vk^Vx_z!_APQ+t}yYlya{MZN<Tpp)k^|3g3&kCAt4H`BRZVVJa7WOgw{V$ z4>%FA$lsXw@`unVsTWtK7mLV!&F)1j{TC$FS+ePi221?dBF;rnuV294*<*k8?r<0Q z$JeID=1PlfKDYaR<Wc|$HvblP(F{izyNn0wSlJ@kuMga?c*uLl4=dgr42OX`PaQkZ z&B+$|{Q8tCzY#v^5;Ie4Y=n=n)kk~fMw;0o*{=`fCeI+(Pey(GDRO`M{J!UVwn*{o zgZGHQZqV}NTX5^NYNx%;j~}o_ieDd?fuisgSN8vM6wYM=PxX7PGh3wi^;vqOHrU$+ zT2BVRImlNHG%Y@4ixj^;OK(&|;VE^-PJ{!QRmns9TGQAfpI;x;ycoF`Z|I->F>1c` z+T`D6utkbrAG}cy_T$8<EB3%u-;#%Gx9w+(e13gk+ffJXoPbBmTcKI~BR<@8ZQ>%e zNoe+RSK%D!fA*<neA9>jPjTlSRZ|wnafNY1LlRkbEsr&fM66yT)9v0QZi*gyD3y{5 zQ)(tmsd4idRFc^x-NanIiO?L6Gto#Mqw*+}Wl6&%q7jXZhRpY@<=SWP@2vUnuD<uX z_da`{-*4~Ez4!BbWGa^en%(eF$H|JMzvBgs*U}pb(ov4Jy}mCPTq)|4PR@y=(!mQF z`LSXBZ&kl=39`g}iGP7Xc)lXLt&~uP49e^RJzL(Z#^?ste2=?pV2?GSj2V>KH4CzL zZEPCgn0uN-{k%OBwP=D)qW^nWD8L{r@l66vjERC<c#Qov@`Ok2nwKmdh2Olt{j2Z+ zq2?uveoG-ti|h@<6M&oTGil7c;Zte+hhh5Ou^$7!sL*vC3$BlnMq1SossRc~=2l99 z36t$ke?AZlvQod9?eYtRYKTG-eC&ZBm*p*Kx^IS?)v<caVI`p&q!1WYlZgNgikVk6 z2PCE6f|4&g5~^Ve32s~T?L6SZK;Y4GRAKrZ<%DXWLPFo|Xgu3K+R6)kyU+7UL$w19 zRY<Zb=13#t(`PSLg3z;XyG_ms`@~*!<%c;QKX$-(GXASNV94<%?cD{S{}+sK*N>MH zs(}|t`V|@?QOIuB9CQG3J+rLUvo@bl5xs~*-GUh|$*Gb+%)L5JrG#6AFX9Er(0!9( zOOF8`rd{H62gN@`{2~s;0qkBs-DFgSOyC+9T#`(v2w=nu0HX(M_m+%6ihF8m*fxMr z5y6OC0a^dcGvR<}XE_DzPu^}!Bj4p;q3nqp7Dui<#J~v6o88hYwjoqRG2%fnlHD~O zI<!&9zn*^QFA^%k7;%wsYq>O-o<;W84zEh_B2>gN;z3A~wYbIB`@!9<_fiWth6rTD zML>S7Uez0@qKucBTeBJn6_Jd1P>^Id^9RRuz&+7%z7F~hXP_hQE66Vr%JQ)_WIWMT zbaoRO#$+CZCE1;%(sQri&RuQi^(UdBOy&dt_>-Fk^KIa6P1})WN$3(L^Pnint|<K@ zUZCzlbdvPCHlZO*=9WQjooF;B2kzfpo!6rx%VH+;AT-J94P4^m;m)62*f@^RU?y`* zF>52kZaRIASzDqk9R85dASUy`Xv@l*qoN*z;MA$ioYq3<A|`X;a1Ss)o$dhlXJ)B& zDnbL9%xA-0d8oQzBEl)i*vM6FOas`8>&7liz|CAD?Ui^2dxxKyWcN8^>i@4dDDj4( zjW0|Qak)yDzb`x{RD`SN{2>?juQvf+Y*+8ARRx$DKT-c#=$}{kY`uliH#dFLSBFqv zCUapJz5nZPtNS5VR<!LRxr8nd$)S)vthf6h(_}id&y}JCh!2zbOf-H}k!N6m#xITi z{xI$sZzgj~;I^M#HVRa&9dC>t@AM$li^=>>xR2l7GrkYpjq-}{4njSd%!S~>PN>2I zLlFw6d^3G}6FQ&Cd<NWybrQ?4V;`)#sA$I4;K5{WvEa_#Fale$s$tM4g`7Ecm%O(l zPsO$Xl#uX$lJN5*JX;q4c54n7PIv^g;Pi}rM~Vq`V~z4V&}SKMds2=*FDM+hxD)Ei zWG-0fGfb-olsMIcXCZmGpm|K@DW*eG(z3e_X)EsQW!G#8oy%k{2=3#RJ<Iaoex;~i zYfh*LBh3qJNPU&cwF&M6>z#w62z3^@7r}ijV%Re*MfUI)`4S|KIZWoaW8~dKSF8(w z+sZO4#-C6pCUb#s|KwA<92qs+`&sY=140!{=6`^@=es*c4dHfbnEfz;(AiAp0^lyS zxRZgiRraZlm(tyY&SEm326s#U`nVf7hg?zU4f2{w9Y3-`;wg@%fITYyp~=vWt^kCr zs!DpyTt?{3w@pg?`&FBw$<p~X&v9?;SJ$qYGlNhEjVzSL!!m|Ey<Bw^DgJ!j+2t7T z43UhOw6oSVRSkihp4t&IlTdrncsHW)2<KQIoPmqCU5zfsLdcoSd0-*h6>kde<Dj`| zyy2qDgvvy+JLIRMH%vi9scBk86K;AtQQwG1yT~xNT<jm}O%*oXn+X-8?Ni}C^y_pB zB%AzkzXX>e9z{%MZXu>c9WS?PL$JG<>m83FRKsM()_xc9XczVA!1RMSO}*TI#RG|M zIvX0l4Hs7TvoaU_(EQbD1rzTRYQtpC4~@6p^OmFUqLMY&uLKi1jmdlphSnAR$t(~9 zbFU3q{D+#*FPO~v!rhd!Zzblu$YXHL@V<mvGnwBCcj;)|giYvsLWQ{t61)|Yxdm{K zN_RMrf+d+C-B~_|P)jEBNs#+=dv7bph4mRrsxapkOy+zb+eHRSe}p@!G9liAP;(~p z$>{q{<Go23T5hLFweL1UMNDSS8*Z6hkZc{?TfN$xjR~D9a&Lxg+>;f8oRH_+8m^s0 o=oBV%UV^)H-R6sMryf7F7x~wW$@~_`!@OHlPs44S+<AK8Kh~6~U;qFB literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index bcd4f8ca6..4ad71cdcf 100644 --- a/pom.xml +++ b/pom.xml @@ -93,11 +93,12 @@ <version.commons-math3>3.6.1</version.commons-math3><!-- 3.6.1 is approved in CQ22025 --> <version.commons-text>1.6</version.commons-text><!-- 1.6 is approved in CQ19028 --> <version.findbugs-annotations>1.3.9-1</version.findbugs-annotations><!-- 1.3.9-1 is approved in CQ15081 --> - <version.graphhopper>0.13.0</version.graphhopper><!-- 0.13.0 is approved in CQ22337 (api) and CQ22338 (core) --> + <version.graphhopper>8.0</version.graphhopper><!-- 8.0 approved in #11407 and #11408 --> <version.gson>2.10.1</version.gson><!-- 2.10.1 is approved in #6159 --> <version.guava>32.1.1-jre</version.guava><!-- 28.2-jre is approved in #9229 --> <version.hppc>0.8.1</version.hppc><!-- 0.8.1 is approved in CQ22339 --> - <version.jackson-xml>2.9.9</version.jackson-xml><!-- 2.9.9 is approved in CQ20701 --> + <version.jts-core>1.19.0</version.jts-core><!-- 1.19.0 approved in #11409 --> + <version.jackson>2.15.0</version.jackson><!-- 2.15.0 approved in #7932 and #7934 --> <version.java-websocket>1.3.9</version.java-websocket><!-- 1.3.9 is approved in CQ19134 --> <version.janino>2.7.5</version.janino><!-- 2.7.5 is approved in CQ10307 --> <version.johnzon-core>1.1.13</version.johnzon-core><!-- 1.1.13 is approved in CQ22342 --> @@ -293,12 +294,23 @@ <artifactId>sqlite-jdbc</artifactId> <version>${version.sqlite-jdbc}</version> </dependency> - + <dependency> + <!-- PURPOSE: Deserialize XML to Java objects --> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-core</artifactId> + <version>${version.jackson}</version> + </dependency> + <dependency> + <!-- PURPOSE: Deserialize XML to Java objects --> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-databind</artifactId> + <version>${version.jackson}</version> + </dependency> <dependency> <!-- PURPOSE: Deserialize XML to Java objects --> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> - <version>${version.jackson-xml}</version> + <version>${version.jackson}</version> </dependency> <dependency> <!-- PURPOSE: Required by jackson-dataformat-xml --> @@ -318,7 +330,7 @@ <dependency> <!-- PURPOSE: Routing library --> <groupId>com.graphhopper</groupId> - <artifactId>graphhopper-api</artifactId> + <artifactId>graphhopper-web-api</artifactId> <version>${version.graphhopper}</version> </dependency> <dependency> @@ -326,6 +338,28 @@ <groupId>com.graphhopper</groupId> <artifactId>graphhopper-core</artifactId> <version>${version.graphhopper}</version> + <exclusions> + <exclusion> + <groupId>org.jetbrains.kotlin</groupId> + <artifactId>kotlin-stdlib</artifactId> + </exclusion> + <exclusion> + <groupId>org.openstreetmap.osmosis</groupId> + <artifactId>osmosis-osm-binary</artifactId> + </exclusion> + <exclusion> + <groupId>de.westnordost</groupId> + <artifactId>osm-legal-default-speeds-jvm</artifactId> + </exclusion> + <exclusion> + <groupId>org.codehaus.janino</groupId> + <artifactId>janino</artifactId> + </exclusion> + <exclusion> + <groupId>org.apache.xmlgraphics</groupId> + <artifactId>xmlgraphics-commons</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> <!-- PURPOSE: High performance data types (sets, lists, etc), required by GraphHopper --> @@ -333,6 +367,12 @@ <artifactId>hppc</artifactId> <version>${version.hppc}</version> </dependency> + <dependency> + <!-- PURPOSE: vector/geometry library required by GraphHopper --> + <groupId>org.locationtech.jts</groupId> + <artifactId>jts-core</artifactId> + <version>${version.jts-core}</version> + </dependency> <dependency> <!-- PURPOSE: Websocket server for visualization in the browser --> <groupId>org.java-websocket</groupId> diff --git a/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/AbstractPerceptionModuleIT.java b/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/AbstractPerceptionModuleIT.java index 7c0b1ea7f..5ca6daf4c 100644 --- a/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/AbstractPerceptionModuleIT.java +++ b/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/AbstractPerceptionModuleIT.java @@ -55,4 +55,5 @@ public void rightAmountOfTrafficLightPhaseSwitches() throws Exception { // perceived vehicles repeat their route 10 times resulting in 11 perceptions LogAssert.contains(simulationRule, PERCEPTION_VEHICLE_LOG, ".*Traffic Light switched 11 times\\..*"); } + }