diff --git a/pom.xml b/pom.xml index 4800b5f9..b9ece16f 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ matsim-all - 16.0-PR2683 + 16.0-PR2686 diff --git a/src/main/java/org/matsim/prepare/RunOpenBerlinCalibration.java b/src/main/java/org/matsim/prepare/RunOpenBerlinCalibration.java index 1d22dbe2..651c0d60 100644 --- a/src/main/java/org/matsim/prepare/RunOpenBerlinCalibration.java +++ b/src/main/java/org/matsim/prepare/RunOpenBerlinCalibration.java @@ -181,10 +181,8 @@ protected Config prepareConfig(Config config) { log.info("Running with flow and storage capacity: {} / {}", config.qsim().getFlowCapFactor(), config.qsim().getStorageCapFactor()); - if (allCar) { - log.info("Converting all agents to car plans."); + if (allCar) config.transit().setUseTransit(false); - } // Required for all calibration strategies for (String subpopulation : List.of("person", "commercialPersonTraffic", "commercialPersonTraffic_service")) { @@ -301,6 +299,9 @@ protected void prepareScenario(Scenario scenario) { */ if (planIndex != null) { + + log.info("Using plan with index {}", planIndex); + for (Person person : scenario.getPopulation().getPersons().values()) { List plans = person.getPlans(); Set toRemove = new HashSet<>(); @@ -317,6 +318,8 @@ protected void prepareScenario(Scenario scenario) { if (allCar) { + log.info("Converting all agents to car plans."); + RoutingModeMainModeIdentifier mmi = new RoutingModeMainModeIdentifier(); for (Person person : scenario.getPopulation().getPersons().values()) { diff --git a/src/main/java/org/matsim/prepare/opt/RunCountOptimization.java b/src/main/java/org/matsim/prepare/opt/RunCountOptimization.java index be018a3d..00316398 100644 --- a/src/main/java/org/matsim/prepare/opt/RunCountOptimization.java +++ b/src/main/java/org/matsim/prepare/opt/RunCountOptimization.java @@ -105,6 +105,9 @@ public Integer call() throws Exception { log.info("Collected {} relevant plans", persons.size()); + if (allCar) + log.info("Scaled counts by car factor of {}", RunOpenBerlinCalibration.CAR_FACTOR); + // Error scales are very different so different betas are needed double beta = switch (metric) { case abs_error -> 1; @@ -138,9 +141,6 @@ private List processPopulation(Path input, Network network, Counts> links = linkCounts.getCounts().keySet(); - // TODO: determin scaling with all car plans - // TODO: commercial agent need to be scaled with car share - SplittableRandom rnd = new SplittableRandom(0); for (Person person : population.getPersons().values()) {