diff --git a/docs/parameters.md b/docs/parameters.md index 2df882aef7..525d1aa203 100644 --- a/docs/parameters.md +++ b/docs/parameters.md @@ -89,6 +89,17 @@ These parameters (objective-function) configure the remedial action optimisation - **Usage**: used as a minimum improvement of the preventive RAO objective value for the curative RAO stop criterion, when it is set to PREVENTIVE_OBJECTIVE or PREVENTIVE_OBJECTIVE_AND_SECURE. +#### optimize-curative-if-preventive-unsecure +- **Expected value**: true/false +- **Default value**: false +- **Usage**: if this parameter is set to true, OpenRAO will continue optimizing curative states even if preventive state + is unsecure. + If this parameter is set to false, OpenRAO will stop after preventive if preventive state is unsecure and won't try to + improve curative states. + + *Note: Only applied when ["preventive-stop-criterion"](#preventive-stop-criterion) is set to SECURE. In this case, if preventive was unsecure, +second preventive won't be run, even if curative cost is higher, in order to save computation time* + ### Range actions optimisation parameters These parameters (range-actions-optimization) tune the [linear optimiser](/castor/linear-problem/linear-rao.md) used to optimise range actions. (See [Modelling CNECs and range actions](/castor/linear-problem/core-problem-filler.md)) @@ -585,13 +596,14 @@ Zones are seperated by + or -. :::{group-tab} JSON ~~~json { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, "curative-min-obj-improvement" : 0.0, "preventive-stop-criterion" : "SECURE", - "curative-stop-criterion" : "PREVENTIVE_OBJECTIVE" + "curative-stop-criterion" : "PREVENTIVE_OBJECTIVE", + "optimize-curative-if-preventive-unsecure" : true }, "range-actions-optimization" : { "max-mip-iterations" : 5, diff --git a/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/RaoParametersCommons.java b/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/RaoParametersCommons.java index bb88ffe166..29b7ef6bb4 100644 --- a/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/RaoParametersCommons.java +++ b/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/RaoParametersCommons.java @@ -16,7 +16,7 @@ public final class RaoParametersCommons { private RaoParametersCommons() { } - public static final String RAO_PARAMETERS_VERSION = "2.3"; + public static final String RAO_PARAMETERS_VERSION = "2.4"; // header public static final String VERSION = "version"; @@ -29,6 +29,7 @@ private RaoParametersCommons() { public static final String CURATIVE_MIN_OBJ_IMPROVEMENT = "curative-min-obj-improvement"; public static final String PREVENTIVE_STOP_CRITERION = "preventive-stop-criterion"; public static final String CURATIVE_STOP_CRITERION = "curative-stop-criterion"; + public static final String OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE = "optimize-curative-if-preventive-unsecure"; // range actions optimization parameters public static final String RANGE_ACTIONS_OPTIMIZATION = "range-actions-optimization"; diff --git a/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/json/JsonObjectiveFunctionParameters.java b/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/json/JsonObjectiveFunctionParameters.java index bb90b14e60..9a7b51f9d0 100644 --- a/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/json/JsonObjectiveFunctionParameters.java +++ b/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/json/JsonObjectiveFunctionParameters.java @@ -31,6 +31,7 @@ static void serialize(RaoParameters parameters, JsonGenerator jsonGenerator) thr jsonGenerator.writeObjectField(PREVENTIVE_STOP_CRITERION, parameters.getObjectiveFunctionParameters().getPreventiveStopCriterion()); jsonGenerator.writeObjectField(CURATIVE_STOP_CRITERION, parameters.getObjectiveFunctionParameters().getCurativeStopCriterion()); jsonGenerator.writeNumberField(CURATIVE_MIN_OBJ_IMPROVEMENT, parameters.getObjectiveFunctionParameters().getCurativeMinObjImprovement()); + jsonGenerator.writeBooleanField(OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE, parameters.getObjectiveFunctionParameters().getOptimizeCurativeIfPreventiveUnsecure()); jsonGenerator.writeEndObject(); } @@ -54,6 +55,10 @@ static void deserialize(JsonParser jsonParser, RaoParameters raoParameters) thro jsonParser.nextToken(); raoParameters.getObjectiveFunctionParameters().setCurativeMinObjImprovement(jsonParser.getValueAsDouble()); break; + case OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE: + jsonParser.nextToken(); + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(jsonParser.getBooleanValue()); + break; default: throw new OpenRaoException(String.format("Cannot deserialize objective function parameters: unexpected field in %s (%s)", OBJECTIVE_FUNCTION, jsonParser.getCurrentName())); } diff --git a/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/parameters/ObjectiveFunctionParameters.java b/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/parameters/ObjectiveFunctionParameters.java index f9e6b295be..f6d53f1491 100644 --- a/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/parameters/ObjectiveFunctionParameters.java +++ b/ra-optimisation/rao-api/src/main/java/com/powsybl/openrao/raoapi/parameters/ObjectiveFunctionParameters.java @@ -26,12 +26,14 @@ public class ObjectiveFunctionParameters { private static final double DEFAULT_CURATIVE_MIN_OBJ_IMPROVEMENT = 0; private static final PreventiveStopCriterion DEFAULT_PREVENTIVE_STOP_CRITERION = PreventiveStopCriterion.SECURE; private static final CurativeStopCriterion DEFAULT_CURATIVE_STOP_CRITERION = CurativeStopCriterion.MIN_OBJECTIVE; + private static final boolean DEFAULT_OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE = false; // Attributes private ObjectiveFunctionType type = DEFAULT_OBJECTIVE_FUNCTION; private boolean forbidCostIncrease = DEFAULT_FORBID_COST_INCREASE; private double curativeMinObjImprovement = DEFAULT_CURATIVE_MIN_OBJ_IMPROVEMENT; private PreventiveStopCriterion preventiveStopCriterion = DEFAULT_PREVENTIVE_STOP_CRITERION; private CurativeStopCriterion curativeStopCriterion = DEFAULT_CURATIVE_STOP_CRITERION; + private boolean optimizeCurativeIfPreventiveUnsecure = DEFAULT_OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE; // Enum public enum ObjectiveFunctionType { @@ -104,6 +106,14 @@ public void setCurativeStopCriterion(CurativeStopCriterion curativeStopCriterion this.curativeStopCriterion = curativeStopCriterion; } + public boolean getOptimizeCurativeIfPreventiveUnsecure() { + return optimizeCurativeIfPreventiveUnsecure; + } + + public void setOptimizeCurativeIfPreventiveUnsecure(boolean optimizeCurativeIfPreventiveUnsecure) { + this.optimizeCurativeIfPreventiveUnsecure = optimizeCurativeIfPreventiveUnsecure; + } + public static ObjectiveFunctionParameters load(PlatformConfig platformConfig) { Objects.requireNonNull(platformConfig); ObjectiveFunctionParameters parameters = new ObjectiveFunctionParameters(); @@ -117,6 +127,7 @@ public static ObjectiveFunctionParameters load(PlatformConfig platformConfig) { DEFAULT_PREVENTIVE_STOP_CRITERION)); parameters.setCurativeStopCriterion(config.getEnumProperty(CURATIVE_STOP_CRITERION, CurativeStopCriterion.class, DEFAULT_CURATIVE_STOP_CRITERION)); + parameters.setOptimizeCurativeIfPreventiveUnsecure(config.getBooleanProperty(OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE, DEFAULT_OPTIMIZE_CURATIVE_IF_PREVENTIVE_UNSECURE)); }); return parameters; } diff --git a/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/json/JsonRaoParametersTest.java b/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/json/JsonRaoParametersTest.java index 040077a37b..eec134d669 100644 --- a/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/json/JsonRaoParametersTest.java +++ b/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/json/JsonRaoParametersTest.java @@ -34,6 +34,7 @@ import java.util.List; import java.util.Map; +import static com.powsybl.openrao.raoapi.RaoParametersCommons.RAO_PARAMETERS_VERSION; import static org.junit.jupiter.api.Assertions.*; /** @@ -57,6 +58,7 @@ void roundTrip() throws IOException { parameters.getObjectiveFunctionParameters().setPreventiveStopCriterion(ObjectiveFunctionParameters.PreventiveStopCriterion.MIN_OBJECTIVE); parameters.getObjectiveFunctionParameters().setCurativeStopCriterion(ObjectiveFunctionParameters.CurativeStopCriterion.PREVENTIVE_OBJECTIVE_AND_SECURE); parameters.getObjectiveFunctionParameters().setCurativeMinObjImprovement(983); + parameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(true); // RangeActionsOptimization parameters parameters.getRangeActionsOptimizationParameters().setMaxMipIterations(30); parameters.getRangeActionsOptimizationParameters().setPstPenaltyCost(10); @@ -174,7 +176,7 @@ void readErrorUnexpectedExtension() { void testFailOnOldVersion() { InputStream inputStream = getClass().getResourceAsStream("/RaoParameters_oldVersion.json"); OpenRaoException e = assertThrows(OpenRaoException.class, () -> JsonRaoParameters.read(inputStream)); - assertEquals("RaoParameters version '2.0' cannot be deserialized. The only supported version currently is '2.3'.", e.getMessage()); + assertEquals(String.format("RaoParameters version '2.0' cannot be deserialized. The only supported version currently is '%s'.", RAO_PARAMETERS_VERSION), e.getMessage()); } @ParameterizedTest diff --git a/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersConfigTest.java b/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersConfigTest.java index caa801500f..aef5f0711a 100644 --- a/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersConfigTest.java +++ b/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersConfigTest.java @@ -49,6 +49,7 @@ void checkObjectiveFunctionConfig() { objectiveFunctionModuleConfig.setStringProperty("curative-min-obj-improvement", Objects.toString(123.0)); objectiveFunctionModuleConfig.setStringProperty("preventive-stop-criterion", "MIN_OBJECTIVE"); objectiveFunctionModuleConfig.setStringProperty("curative-stop-criterion", "PREVENTIVE_OBJECTIVE"); + objectiveFunctionModuleConfig.setStringProperty("optimize-curative-if-preventive-unsecure", "true"); RaoParameters parameters = new RaoParameters(); RaoParameters.load(parameters, platformCfg); @@ -58,6 +59,7 @@ void checkObjectiveFunctionConfig() { assertEquals(123, objectiveFunctionParameters.getCurativeMinObjImprovement(), DOUBLE_TOLERANCE); assertEquals(ObjectiveFunctionParameters.PreventiveStopCriterion.MIN_OBJECTIVE, objectiveFunctionParameters.getPreventiveStopCriterion()); assertEquals(ObjectiveFunctionParameters.CurativeStopCriterion.PREVENTIVE_OBJECTIVE, objectiveFunctionParameters.getCurativeStopCriterion()); + assertTrue(objectiveFunctionParameters.getOptimizeCurativeIfPreventiveUnsecure()); } @Test diff --git a/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersYamlConfigTest.java b/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersYamlConfigTest.java index e59e85b831..feb9a64ac2 100644 --- a/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersYamlConfigTest.java +++ b/ra-optimisation/rao-api/src/test/java/com/powsybl/openrao/raoapi/parameters/RaoParametersYamlConfigTest.java @@ -132,6 +132,7 @@ void testConfigWithoutExtensions() throws IOException { assertEquals(3, objectiveFunctionParameters.getCurativeMinObjImprovement(), DOUBLE_TOLERANCE); assertEquals(ObjectiveFunctionParameters.PreventiveStopCriterion.MIN_OBJECTIVE, objectiveFunctionParameters.getPreventiveStopCriterion()); assertEquals(ObjectiveFunctionParameters.CurativeStopCriterion.PREVENTIVE_OBJECTIVE, objectiveFunctionParameters.getCurativeStopCriterion()); + assertTrue(objectiveFunctionParameters.getOptimizeCurativeIfPreventiveUnsecure()); RangeActionsOptimizationParameters rangeActionsOptimizationParameters = parameters.getRangeActionsOptimizationParameters(); assertEquals(2, rangeActionsOptimizationParameters.getMaxMipIterations(), DOUBLE_TOLERANCE); diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersError_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersError_v2.json index ca7e96cae8..9955b67d7b 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersError_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersError_v2.json @@ -1,4 +1,4 @@ { - "version" : "2.3", + "version" : "2.4", "unknownField" : "abcd" } \ No newline at end of file diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersSet_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersSet_v2.json index 0f7157d421..1522cb662f 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersSet_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersSet_v2.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : true, "preventive-stop-criterion" : "MIN_OBJECTIVE", "curative-stop-criterion" : "PREVENTIVE_OBJECTIVE_AND_SECURE", - "curative-min-obj-improvement" : 983.0 + "curative-min-obj-improvement" : 983.0, + "optimize-curative-if-preventive-unsecure" : true }, "range-actions-optimization" : { "max-mip-iterations" : 30, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithCurStopCriterionError_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithCurStopCriterionError_v2.json index 30e028dfd6..478b6c3398 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithCurStopCriterionError_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithCurStopCriterionError_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithExtension_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithExtension_v2.json index 50e53bf61c..799508560d 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithExtension_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithExtension_v2.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, "preventive-stop-criterion" : "SECURE", "curative-stop-criterion" : "MIN_OBJECTIVE", - "curative-min-obj-improvement" : 0.0 + "curative-min-obj-improvement" : 0.0, + "optimize-curative-if-preventive-unsecure" : false }, "range-actions-optimization" : { "max-mip-iterations" : 10, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithLoopFlowError_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithLoopFlowError_v2.json index 9f52c49a0a..475c02333f 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithLoopFlowError_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithLoopFlowError_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithPrevStopCriterionError_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithPrevStopCriterionError_v2.json index 92af5df06a..9e93f8a1a9 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithPrevStopCriterionError_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithPrevStopCriterionError_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithWrongField_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithWrongField_v2.json index 7490dfc797..8471a8496e 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParametersWithWrongField_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParametersWithWrongField_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withExtensions.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withExtensions.json index 1d0661d9f9..92a0a427ef 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withExtensions.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withExtensions.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : true, "preventive-stop-criterion" : "MIN_OBJECTIVE", "curative-stop-criterion" : "PREVENTIVE_OBJECTIVE", - "curative-min-obj-improvement" : 3.0 + "curative-min-obj-improvement" : 3.0, + "optimize-curative-if-preventive-unsecure" : false }, "range-actions-optimization" : { "max-mip-iterations" : 2, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withOLFParams.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withOLFParams.json index d04c0d20dd..1037637943 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withOLFParams.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withOLFParams.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, "preventive-stop-criterion" : "SECURE", "curative-stop-criterion" : "MIN_OBJECTIVE", - "curative-min-obj-improvement" : 0.0 + "curative-min-obj-improvement" : 0.0, + "optimize-curative-if-preventive-unsecure" : false }, "range-actions-optimization" : { "max-mip-iterations" : 10, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withPartialExtensions.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withPartialExtensions.json index db9f4956dc..9d8d11169e 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withPartialExtensions.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withPartialExtensions.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : true, "preventive-stop-criterion" : "MIN_OBJECTIVE", "curative-stop-criterion" : "PREVENTIVE_OBJECTIVE", - "curative-min-obj-improvement" : 3.0 + "curative-min-obj-improvement" : 3.0, + "optimize-curative-if-preventive-unsecure" : false }, "range-actions-optimization" : { "max-mip-iterations" : 10, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withoutExtensions.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withoutExtensions.json index 9550f53eb5..75dcb660ff 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withoutExtensions.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_config_withoutExtensions.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : true, "preventive-stop-criterion" : "MIN_OBJECTIVE", "curative-stop-criterion" : "PREVENTIVE_OBJECTIVE", - "curative-min-obj-improvement" : 3.0 + "curative-min-obj-improvement" : 3.0, + "optimize-curative-if-preventive-unsecure" : true }, "range-actions-optimization" : { "max-mip-iterations" : 2, diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_default_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_default_v2.json index 9b35e07708..95ab535aa0 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_default_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_default_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "preventive-stop-criterion" : "SECURE" diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_update_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_update_v2.json index 00a422d3d7..b2b3294954 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_update_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_update_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "preventive-stop-criterion" : "MIN_OBJECTIVE" diff --git a/ra-optimisation/rao-api/src/test/resources/RaoParameters_v2.json b/ra-optimisation/rao-api/src/test/resources/RaoParameters_v2.json index d31d6bcd0d..9cb4dbdf18 100644 --- a/ra-optimisation/rao-api/src/test/resources/RaoParameters_v2.json +++ b/ra-optimisation/rao-api/src/test/resources/RaoParameters_v2.json @@ -1,11 +1,12 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, "preventive-stop-criterion" : "SECURE", "curative-stop-criterion" : "MIN_OBJECTIVE", - "curative-min-obj-improvement" : 0.0 + "curative-min-obj-improvement" : 0.0, + "optimize-curative-if-preventive-unsecure" : false }, "range-actions-optimization" : { "max-mip-iterations" : 10, diff --git a/ra-optimisation/rao-api/src/test/resources/config_withoutExtensions.yml b/ra-optimisation/rao-api/src/test/resources/config_withoutExtensions.yml index 55adc599dc..b23b317ac8 100644 --- a/ra-optimisation/rao-api/src/test/resources/config_withoutExtensions.yml +++ b/ra-optimisation/rao-api/src/test/resources/config_withoutExtensions.yml @@ -4,6 +4,7 @@ rao-objective-function: preventive-stop-criterion: MIN_OBJECTIVE curative-stop-criterion: PREVENTIVE_OBJECTIVE curative-min-obj-improvement: 3.0 + optimize-curative-if-preventive-unsecure: true rao-range-actions-optimization: max-mip-iterations: 2 diff --git a/ra-optimisation/search-tree-rao/src/main/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimization.java b/ra-optimisation/search-tree-rao/src/main/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimization.java index 2ad7161d07..f0d0be33fa 100644 --- a/ra-optimisation/search-tree-rao/src/main/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimization.java +++ b/ra-optimisation/search-tree-rao/src/main/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimization.java @@ -154,8 +154,8 @@ public CompletableFuture run() { // optimize contingency scenarios (auto + curative instants) // If stop criterion is SECURE and preventive perimeter was not secure, do not run post-contingency RAOs - if (raoParameters.getObjectiveFunctionParameters().getPreventiveStopCriterion().equals(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE) - && preventiveOptimalCost > 0) { + // (however RAO could continue depending on parameter optimize-curative-if-basecase-unsecure) + if (shouldStopOptimisationIfPreventiveUnsecure(preventiveOptimalCost)) { BUSINESS_LOGS.info("Preventive perimeter could not be secured; there is no point in optimizing post-contingency perimeters. The RAO will be interrupted here."); mergedRaoResults = new PreventiveAndCurativesRaoResultImpl(raoInput.getCrac().getPreventiveState(), initialOutput, preventiveResult, preCurativeSensitivityAnalysisOutput, raoInput.getCrac()); // log results @@ -192,6 +192,12 @@ public CompletableFuture run() { return postCheckResults(mergedRaoResults, initialOutput, raoParameters.getObjectiveFunctionParameters()); } + private boolean shouldStopOptimisationIfPreventiveUnsecure(double preventiveOptimalCost) { + return raoParameters.getObjectiveFunctionParameters().getPreventiveStopCriterion().equals(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE) + && preventiveOptimalCost > 0 + && !raoParameters.getObjectiveFunctionParameters().getOptimizeCurativeIfPreventiveUnsecure(); + } + /** * Return true if 2P has decreased cost */ @@ -446,6 +452,13 @@ static boolean shouldRunSecondPreventiveRao(RaoParameters raoParameters, Optimiz // only compare initial cost with the curative costs return false; } + if (raoParameters.getObjectiveFunctionParameters().getPreventiveStopCriterion().equals(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE) + && firstPreventiveResult.getCost() > 0) { + // in case of curative optimization even if preventive unsecure (see parameter optimize-curative-if-preventive-unsecure) + // we do not want to run a second preventive that would not be able to fix the situation, to save time + BUSINESS_LOGS.info("First preventive RAO was not able to fix all preventive constraints, second preventive RAO cancelled to save computation time."); + return false; + } ObjectiveFunctionParameters.CurativeStopCriterion curativeStopCriterion = raoParameters.getObjectiveFunctionParameters().getCurativeStopCriterion(); switch (curativeStopCriterion) { case MIN_OBJECTIVE: diff --git a/ra-optimisation/search-tree-rao/src/test/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimizationTest.java b/ra-optimisation/search-tree-rao/src/test/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimizationTest.java index a3d2cd6818..4ea2954894 100644 --- a/ra-optimisation/search-tree-rao/src/test/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimizationTest.java +++ b/ra-optimisation/search-tree-rao/src/test/java/com/powsybl/openrao/searchtreerao/castor/algorithm/CastorFullOptimizationTest.java @@ -44,6 +44,7 @@ import java.util.*; import java.util.stream.Collectors; +import static com.powsybl.openrao.data.raoresultapi.OptimizationStepsExecuted.FIRST_PREVENTIVE_ONLY; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.when; @@ -145,6 +146,8 @@ void testShouldRunSecondPreventiveRaoAdvanced() { parameters.getSecondPreventiveRaoParameters().setExecutionCondition(SecondPreventiveRaoParameters.ExecutionCondition.POSSIBLE_CURATIVE_IMPROVEMENT); parameters.getObjectiveFunctionParameters().setCurativeMinObjImprovement(10.); + parameters.getObjectiveFunctionParameters().setPreventiveStopCriterion(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE); + when(preventiveResult.getCost()).thenReturn(-500.); // CurativeStopCriterion.PREVENTIVE_OBJECTIVE parameters.getObjectiveFunctionParameters().setCurativeStopCriterion(ObjectiveFunctionParameters.CurativeStopCriterion.PREVENTIVE_OBJECTIVE); @@ -170,8 +173,8 @@ void testShouldRunSecondPreventiveRaoAdvanced() { when(postFirstPreventiveRaoResult.getCost(curativeInstant)).thenReturn(-110.); assertFalse(CastorFullOptimization.shouldRunSecondPreventiveRao(parameters, preventiveResult, curativeResults, postFirstPreventiveRaoResult, null, 0, crac.getInstant(InstantKind.CURATIVE))); // case 2 : all curatives are better than preventive (cost < preventive cost - minObjImprovement), UNSECURE - setCost(preventiveResult, 1000.); - setCost(optimizationResult1, 0.); + setCost(preventiveResult, -500.); + setCost(optimizationResult1, -200.); when(postFirstPreventiveRaoResult.getCost(curativeInstant)).thenReturn(0.); assertTrue(CastorFullOptimization.shouldRunSecondPreventiveRao(parameters, preventiveResult, curativeResults, postFirstPreventiveRaoResult, null, 0, crac.getInstant(InstantKind.CURATIVE))); setCost(optimizationResult1, 10.); @@ -587,7 +590,7 @@ void smallRaoWithout2P() { assertEquals(256.78, raoResult.getFunctionalCost(curativeInstant), 1.); assertEquals(Set.of(crac.getNetworkAction("close_de3_de4"), crac.getNetworkAction("close_fr1_fr5")), raoResult.getActivatedNetworkActionsDuringState(crac.getPreventiveState())); assertEquals(Set.of(crac.getNetworkAction("open_fr1_fr3")), raoResult.getActivatedNetworkActionsDuringState(crac.getState(crac.getContingency("co1_fr2_fr3_1"), curativeInstant))); - assertEquals(OptimizationStepsExecuted.FIRST_PREVENTIVE_ONLY, raoResult.getOptimizationStepsExecuted()); + assertEquals(FIRST_PREVENTIVE_ONLY, raoResult.getOptimizationStepsExecuted()); } @Test @@ -610,7 +613,7 @@ void smallRaoWith2P() { assertEquals(Set.of(crac.getNetworkAction("close_de3_de4"), crac.getNetworkAction("open_fr1_fr2")), raoResult.getActivatedNetworkActionsDuringState(crac.getPreventiveState())); assertEquals(Set.of(crac.getNetworkAction("open_fr1_fr3")), raoResult.getActivatedNetworkActionsDuringState(crac.getState(crac.getContingency("co1_fr2_fr3_1"), curativeInstant))); assertEquals(OptimizationStepsExecuted.SECOND_PREVENTIVE_IMPROVED_FIRST, raoResult.getOptimizationStepsExecuted()); - OpenRaoException exception = assertThrows(OpenRaoException.class, () -> raoResult.setOptimizationStepsExecuted(OptimizationStepsExecuted.FIRST_PREVENTIVE_ONLY)); + OpenRaoException exception = assertThrows(OpenRaoException.class, () -> raoResult.setOptimizationStepsExecuted(FIRST_PREVENTIVE_ONLY)); assertEquals("The RaoResult object should not be modified outside of its usual routine", exception.getMessage()); } @@ -657,7 +660,7 @@ void testOptimizationStepsExecutedAndLogsWhenFallbackOnFirstPrev() { // Test Optimization steps executed assertEquals(OptimizationStepsExecuted.FIRST_PREVENTIVE_FELLBACK_TO_INITIAL_SITUATION, raoResult.getOptimizationStepsExecuted()); - OpenRaoException exception = assertThrows(OpenRaoException.class, () -> raoResult.setOptimizationStepsExecuted(OptimizationStepsExecuted.FIRST_PREVENTIVE_ONLY)); + OpenRaoException exception = assertThrows(OpenRaoException.class, () -> raoResult.setOptimizationStepsExecuted(FIRST_PREVENTIVE_ONLY)); assertEquals("The RaoResult object should not be modified outside of its usual routine", exception.getMessage()); // Test final log after RAO fallbacks @@ -914,4 +917,92 @@ void optimizationWithAutoSearchTreeAndAutoPsts() { assertEquals(-131.0, raoResult.getFlow(crac.getInstant("auto"), crac.getFlowCnec("NNL2AA1 BBE3AA1 1 - Contingency DE2 NL3 1 - auto"), Side.LEFT, Unit.MEGAWATT), 1.); assertEquals(-131.0, raoResult.getFlow(crac.getInstant("curative"), crac.getFlowCnec("NNL2AA1 BBE3AA1 1 - Contingency DE2 NL3 1 - curative"), Side.LEFT, Unit.MEGAWATT), 1.); } + + @Test + void curativeOptimizationShouldNotBeDoneIfPreventiveUnsecure() { + Network network = Network.read("small-network-2P.uct", getClass().getResourceAsStream("/network/small-network-2P.uct")); + crac = CracImporters.importCrac("crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json", getClass().getResourceAsStream("/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json"), network); + RaoInput raoInput = RaoInput.build(network, crac).build(); + RaoParameters raoParameters = JsonRaoParameters.read(getClass().getResourceAsStream("/parameters/RaoParameters_2P_v2.json")); + + raoParameters.getObjectiveFunctionParameters().setPreventiveStopCriterion(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE); + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(false); + + // Run RAO + RaoResult raoResult = new CastorFullOptimization(raoInput, raoParameters, null).run().join(); + assertEquals(Collections.emptySet(), raoResult.getActivatedNetworkActionsDuringState(crac.getState("Contingency FFR2AA1 FFR3AA1 1", crac.getLastInstant()))); + } + + @Test + void curativeOptimizationShouldBeDoneIfPreventiveSecure() { + Network network = Network.read("small-network-2P.uct", getClass().getResourceAsStream("/network/small-network-2P.uct")); + crac = CracImporters.importCrac("crac/small-crac-to-check-curative-optimization-if-preventive-secure.json", getClass().getResourceAsStream("/crac/small-crac-to-check-curative-optimization-if-preventive-secure.json"), network); + RaoInput raoInput = RaoInput.build(network, crac).build(); + RaoParameters raoParameters = JsonRaoParameters.read(getClass().getResourceAsStream("/parameters/RaoParameters_2P_v2.json")); + + raoParameters.getObjectiveFunctionParameters().setPreventiveStopCriterion(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE); + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(false); + + // Run RAO + RaoResult raoResult = new CastorFullOptimization(raoInput, raoParameters, null).run().join(); + assertEquals(Set.of(crac.getNetworkAction("Open FFR1AA1 FFR4AA1 1")), raoResult.getActivatedNetworkActionsDuringState(crac.getState("Contingency FFR2AA1 FFR3AA1 1", crac.getLastInstant()))); + } + + @Test + void curativeOptimizationShouldBeDoneIfPreventiveMinMarginNegative() { + Network network = Network.read("small-network-2P.uct", getClass().getResourceAsStream("/network/small-network-2P.uct")); + crac = CracImporters.importCrac("crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json", getClass().getResourceAsStream("/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json"), network); + RaoInput raoInput = RaoInput.build(network, crac).build(); + RaoParameters raoParameters = JsonRaoParameters.read(getClass().getResourceAsStream("/parameters/RaoParameters_2P_v2.json")); + + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(false); + + // Run RAO + RaoResult raoResult = new CastorFullOptimization(raoInput, raoParameters, null).run().join(); + assertEquals(Set.of(crac.getNetworkAction("Open FFR1AA1 FFR4AA1 1")), raoResult.getActivatedNetworkActionsDuringState(crac.getState("Contingency FFR2AA1 FFR3AA1 1", crac.getLastInstant()))); + } + + @Test + void curativeOptimizationShouldBeDoneIfPreventiveUnsecureAndAssociatedParameterSet() { + Network network = Network.read("small-network-2P.uct", getClass().getResourceAsStream("/network/small-network-2P.uct")); + crac = CracImporters.importCrac("crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json", getClass().getResourceAsStream("/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json"), network); + RaoInput raoInput = RaoInput.build(network, crac).build(); + RaoParameters raoParameters = JsonRaoParameters.read(getClass().getResourceAsStream("/parameters/RaoParameters_2P_v2.json")); + + raoParameters.getObjectiveFunctionParameters().setPreventiveStopCriterion(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE); + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(true); + + // Run RAO + RaoResult raoResult = new CastorFullOptimization(raoInput, raoParameters, null).run().join(); + assertEquals(Set.of(crac.getNetworkAction("Open FFR1AA1 FFR4AA1 1")), raoResult.getActivatedNetworkActionsDuringState(crac.getState("Contingency FFR2AA1 FFR3AA1 1", crac.getLastInstant()))); + } + + @Test + void curativeOptimizationShouldBeDoneIfPreventiveSecureAndAssociatedParameterSet() { + Network network = Network.read("small-network-2P.uct", getClass().getResourceAsStream("/network/small-network-2P.uct")); + crac = CracImporters.importCrac("crac/small-crac-to-check-curative-optimization-if-preventive-secure.json", getClass().getResourceAsStream("/crac/small-crac-to-check-curative-optimization-if-preventive-secure.json"), network); + RaoInput raoInput = RaoInput.build(network, crac).build(); + RaoParameters raoParameters = JsonRaoParameters.read(getClass().getResourceAsStream("/parameters/RaoParameters_2P_v2.json")); + + raoParameters.getObjectiveFunctionParameters().setPreventiveStopCriterion(ObjectiveFunctionParameters.PreventiveStopCriterion.SECURE); + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(true); + + // Run RAO + RaoResult raoResult = new CastorFullOptimization(raoInput, raoParameters, null).run().join(); + assertEquals(Set.of(crac.getNetworkAction("Open FFR1AA1 FFR4AA1 1")), raoResult.getActivatedNetworkActionsDuringState(crac.getState("Contingency FFR2AA1 FFR3AA1 1", crac.getLastInstant()))); + } + + @Test + void curativeOptimizationShouldBeDoneIfPreventiveMinMarginNegativeAndAssociatedParameterSet() { + Network network = Network.read("small-network-2P.uct", getClass().getResourceAsStream("/network/small-network-2P.uct")); + crac = CracImporters.importCrac("crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json", getClass().getResourceAsStream("/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json"), network); + RaoInput raoInput = RaoInput.build(network, crac).build(); + RaoParameters raoParameters = JsonRaoParameters.read(getClass().getResourceAsStream("/parameters/RaoParameters_2P_v2.json")); + + raoParameters.getObjectiveFunctionParameters().setOptimizeCurativeIfPreventiveUnsecure(true); + + // Run RAO + RaoResult raoResult = new CastorFullOptimization(raoInput, raoParameters, null).run().join(); + assertEquals(Set.of(crac.getNetworkAction("Open FFR1AA1 FFR4AA1 1")), raoResult.getActivatedNetworkActionsDuringState(crac.getState("Contingency FFR2AA1 FFR3AA1 1", crac.getLastInstant()))); + } } diff --git a/ra-optimisation/search-tree-rao/src/test/resources/crac/small-crac-to-check-curative-optimization-if-preventive-secure.json b/ra-optimisation/search-tree-rao/src/test/resources/crac/small-crac-to-check-curative-optimization-if-preventive-secure.json new file mode 100644 index 0000000000..1f310d7407 --- /dev/null +++ b/ra-optimisation/search-tree-rao/src/test/resources/crac/small-crac-to-check-curative-optimization-if-preventive-secure.json @@ -0,0 +1,82 @@ +{ + "type" : "CRAC", + "version" : "1.3", + "info" : "Generated by FARAO http://farao-community.github.io", + "id" : "curative_8", + "name" : "curative_8", + "networkElementsNamePerId" : { }, + "contingencies" : [ { + "id" : "Contingency FFR2AA1 FFR3AA1 1", + "networkElementsIds" : [ "FFR2AA1 FFR3AA1 1" ] + } ], + "flowCnecs" : [ { + "id" : "FFR1AA1 FFR4AA1 1 - preventive - secure", + "name" : "FFR1AA1 FFR4AA1 1 - preventive - secure", + "networkElementId" : "FFR1AA1 FFR4AA1 1", + "operator" : null, + "instant" : "preventive", + "optimized" : true, + "monitored" : false, + "frm" : 0.0, + "iMax" : [ 2000.0 ], + "nominalV" : [ 400.0 ], + "thresholds" : [ { + "unit" : "ampere", + "min" : -10000.0, + "max" : 10000.0, + "rule" : "onNonRegulatedSide" + } ] + }, { + "id" : "FFR1AA1 FFR4AA1 1 - curative", + "name" : "FFR1AA1 FFR4AA1 1 - curative", + "networkElementId" : "FFR1AA1 FFR4AA1 1", + "operator" : null, + "instant" : "curative", + "contingencyId" : "Contingency FFR2AA1 FFR3AA1 1", + "optimized" : true, + "monitored" : false, + "frm" : 0.0, + "iMax" : [ 2000.0 ], + "nominalV" : [ 400.0 ], + "thresholds" : [ { + "unit" : "ampere", + "min" : -1000.0, + "max" : 1000.0, + "rule" : "onNonRegulatedSide" + } ] + }, { + "id" : "FFR1AA1 FFR3AA1 1 - curative", + "name" : "FFR1AA1 FFR3AA1 1 - curative", + "networkElementId" : "FFR1AA1 FFR3AA1 1", + "operator" : null, + "instant" : "curative", + "contingencyId" : "Contingency FFR2AA1 FFR3AA1 1", + "optimized" : true, + "monitored" : false, + "frm" : 0.0, + "iMax" : [ 2000.0 ], + "nominalV" : [ 400.0 ], + "thresholds" : [ { + "unit" : "ampere", + "min" : -10000.0, + "max" : 10000.0, + "rule" : "onNonRegulatedSide" + } ] + } ], + "pstRangeActions" : [ ], + "hvdcRangeActions" : [ ], + "injectionRangeActions" : [ ], + "networkActions" : [ { + "id" : "Open FFR1AA1 FFR4AA1 1", + "name" : "Open FFR1AA1 FFR4AA1 1", + "operator" : "fr", + "freeToUseUsageRules" : [ { + "instant" : "curative", + "usageMethod" : "available" + } ], + "topologicalActions" : [ { + "networkElementId" : "FFR1AA1 FFR4AA1 1", + "actionType" : "open" + } ] + } ] +} \ No newline at end of file diff --git a/ra-optimisation/search-tree-rao/src/test/resources/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json b/ra-optimisation/search-tree-rao/src/test/resources/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json new file mode 100644 index 0000000000..b9531b52e0 --- /dev/null +++ b/ra-optimisation/search-tree-rao/src/test/resources/crac/small-crac-to-check-curative-optimization-if-preventive-unsecure.json @@ -0,0 +1,82 @@ +{ + "type" : "CRAC", + "version" : "1.3", + "info" : "Generated by FARAO http://farao-community.github.io", + "id" : "curative_8", + "name" : "curative_8", + "networkElementsNamePerId" : { }, + "contingencies" : [ { + "id" : "Contingency FFR2AA1 FFR3AA1 1", + "networkElementsIds" : [ "FFR2AA1 FFR3AA1 1" ] + } ], + "flowCnecs" : [ { + "id" : "FFR1AA1 FFR4AA1 1 - preventive - unsecure", + "name" : "FFR1AA1 FFR4AA1 1 - preventive - unsecure", + "networkElementId" : "FFR1AA1 FFR4AA1 1", + "operator" : null, + "instant" : "preventive", + "optimized" : true, + "monitored" : false, + "frm" : 0.0, + "iMax" : [ 2000.0 ], + "nominalV" : [ 400.0 ], + "thresholds" : [ { + "unit" : "ampere", + "min" : -1000.0, + "max" : 1000.0, + "rule" : "onNonRegulatedSide" + } ] + }, { + "id" : "FFR1AA1 FFR4AA1 1 - curative", + "name" : "FFR1AA1 FFR4AA1 1 - curative", + "networkElementId" : "FFR1AA1 FFR4AA1 1", + "operator" : null, + "instant" : "curative", + "contingencyId" : "Contingency FFR2AA1 FFR3AA1 1", + "optimized" : true, + "monitored" : false, + "frm" : 0.0, + "iMax" : [ 2000.0 ], + "nominalV" : [ 400.0 ], + "thresholds" : [ { + "unit" : "ampere", + "min" : -1000.0, + "max" : 1000.0, + "rule" : "onNonRegulatedSide" + } ] + }, { + "id" : "FFR1AA1 FFR3AA1 1 - curative", + "name" : "FFR1AA1 FFR3AA1 1 - curative", + "networkElementId" : "FFR1AA1 FFR3AA1 1", + "operator" : null, + "instant" : "curative", + "contingencyId" : "Contingency FFR2AA1 FFR3AA1 1", + "optimized" : true, + "monitored" : false, + "frm" : 0.0, + "iMax" : [ 2000.0 ], + "nominalV" : [ 400.0 ], + "thresholds" : [ { + "unit" : "ampere", + "min" : -10000.0, + "max" : 10000.0, + "rule" : "onNonRegulatedSide" + } ] + } ], + "pstRangeActions" : [ ], + "hvdcRangeActions" : [ ], + "injectionRangeActions" : [ ], + "networkActions" : [ { + "id" : "Open FFR1AA1 FFR4AA1 1", + "name" : "Open FFR1AA1 FFR4AA1 1", + "operator" : "fr", + "freeToUseUsageRules" : [ { + "instant" : "curative", + "usageMethod" : "available" + } ], + "topologicalActions" : [ { + "networkElementId" : "FFR1AA1 FFR4AA1 1", + "actionType" : "open" + } ] + } ] +} \ No newline at end of file diff --git a/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_2P_v2.json b/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_2P_v2.json index a48ecb5493..08e4b87d9c 100644 --- a/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_2P_v2.json +++ b/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_2P_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_DC.json b/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_DC.json index c8fa59771b..01aae76610 100644 --- a/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_DC.json +++ b/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_DC.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_oneIteration_v2.json b/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_oneIteration_v2.json index 65a078510f..1df1ff9470 100644 --- a/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_oneIteration_v2.json +++ b/ra-optimisation/search-tree-rao/src/test/resources/parameters/RaoParameters_oneIteration_v2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_default.json b/tests/src/test/resources/files/configurations/common/RaoParameters_default.json index 3d15fcbfab..47d43e0ccc 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_default.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_default.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere.json b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere.json index dceeeb80f1..a92fd0e78d 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_mip.json b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_mip.json index c3e9523367..ac07beaba3 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_mip.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_mip.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_withFallback.json b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_withFallback.json index 79447cf68a..12a374f72a 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_withFallback.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_ampere_withFallback.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_ac.json b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_ac.json index 5c2f118ef9..23f7fd828d 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_ac.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_ac.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc.json b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc.json index 3fda2fb31f..eae94d91ff 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc_withLoopFlows.json b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc_withLoopFlows.json index bf8a1a875d..05af1408d5 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc_withLoopFlows.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_maxMargin_megawatt_dc_withLoopFlows.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere.json b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere.json index 7173b3033d..6d894cf762 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere_withFallback.json b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere_withFallback.json index 0a3b57ceeb..f2c5fe1a06 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere_withFallback.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_ampere_withFallback.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_ac.json b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_ac.json index 3d4719d355..89efde83e4 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_ac.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_ac.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_dc.json b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_dc.json index 4d76b05244..2d9e6f702b 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_dc.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_posMargin_megawatt_dc.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_securityAnalysis.json b/tests/src/test/resources/files/configurations/common/RaoParameters_securityAnalysis.json index adec3d6b7b..d77f4299cd 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_securityAnalysis.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_securityAnalysis.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/common/RaoParameters_simple_AC_loopflow.json b/tests/src/test/resources/files/configurations/common/RaoParameters_simple_AC_loopflow.json index 2c503d49b1..6d48659933 100644 --- a/tests/src/test/resources/files/configurations/common/RaoParameters_simple_AC_loopflow.json +++ b/tests/src/test/resources/files/configurations/common/RaoParameters_simple_AC_loopflow.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic10/RaoParameters_relMargin_megawatt.json b/tests/src/test/resources/files/configurations/epic10/RaoParameters_relMargin_megawatt.json index e5e2a695e8..7d467eac6d 100644 --- a/tests/src/test/resources/files/configurations/epic10/RaoParameters_relMargin_megawatt.json +++ b/tests/src/test/resources/files/configurations/epic10/RaoParameters_relMargin_megawatt.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case1.json b/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case1.json index 68e8c2e2e6..f8ea43f48f 100644 --- a/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case1.json +++ b/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case2.json b/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case2.json index 0130d3912c..0a1c2f930c 100644 --- a/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case2.json +++ b/tests/src/test/resources/files/configurations/epic10/conf_ep10us2case2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic10/conf_ep10us3case1.json b/tests/src/test/resources/files/configurations/epic10/conf_ep10us3case1.json index 08091e3345..f5370308d4 100644 --- a/tests/src/test/resources/files/configurations/epic10/conf_ep10us3case1.json +++ b/tests/src/test/resources/files/configurations/epic10/conf_ep10us3case1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic10/conf_ep10us4case1.json b/tests/src/test/resources/files/configurations/epic10/conf_ep10us4case1.json index e195ca1958..321cf97d6c 100644 --- a/tests/src/test/resources/files/configurations/epic10/conf_ep10us4case1.json +++ b/tests/src/test/resources/files/configurations/epic10/conf_ep10us4case1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin180.json b/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin180.json index d2d42c92e8..21241103f0 100644 --- a/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin180.json +++ b/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin180.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin20.json b/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin20.json index 3aa37cb0d7..e2af6acdbd 100644 --- a/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin20.json +++ b/tests/src/test/resources/files/configurations/epic11/RaoParameters_maxMargin_megawatt_ac_mnecDimin20.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic11/RaoParameters_posMargin_ampere_mnecDiminMinusInf.json b/tests/src/test/resources/files/configurations/epic11/RaoParameters_posMargin_ampere_mnecDiminMinusInf.json index 7798c05ce0..07527671ff 100644 --- a/tests/src/test/resources/files/configurations/epic11/RaoParameters_posMargin_ampere_mnecDiminMinusInf.json +++ b/tests/src/test/resources/files/configurations/epic11/RaoParameters_posMargin_ampere_mnecDiminMinusInf.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjective.json b/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjective.json index 5a092c64e6..04ea26799d 100644 --- a/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjective.json +++ b/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjective.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveDisabled2P.json b/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveDisabled2P.json index e8e9c9a59b..79c005a072 100644 --- a/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveDisabled2P.json +++ b/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveDisabled2P.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveWithGlobal2P.json b/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveWithGlobal2P.json index f86b100428..a0e6460823 100644 --- a/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveWithGlobal2P.json +++ b/tests/src/test/resources/files/configurations/epic12/raoParametersSweIDCC_minObjectiveWithGlobal2P.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_11.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_11.json index 1e86d58763..fd285eece0 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_11.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_11.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_2.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_2.json index f00d34c8be..89bbb986d1 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_2.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_13_6_2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_300_secure.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_300_secure.json index 7f7b4f87b6..557fc1ec28 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_300_secure.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_300_secure.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_500.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_500.json index 706c45083c..c9454cf5b1 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_500.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_500.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_628.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_628.json index 57fd5e1721..0be330a8f3 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_628.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_best_preventive_by_628.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us6case8.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us6case8.json index 324dee5bf1..5e99eb3ef6 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us6case8.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us6case8.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us7case6.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us7case6.json index c0977fce7f..8ea920d816 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us7case6.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_ep13us7case6.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_2p_global.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_2p_global.json index 03b68ccb75..0deab5a6b7 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_2p_global.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_2p_global.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold.json index ccddcd5ecd..a8e221d5b0 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold_12.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold_12.json index d21bc1b4c7..c317067063 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold_12.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_maxMargin_ampere_absolute_threshold_12.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_relMargin_ampere.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_relMargin_ampere.json index 437b8a1873..e9aa247b74 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_relMargin_ampere.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_relMargin_ampere.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic13/RaoParameters_stop_curative_at_preventive.json b/tests/src/test/resources/files/configurations/epic13/RaoParameters_stop_curative_at_preventive.json index f4e254d46b..771214f44f 100644 --- a/tests/src/test/resources/files/configurations/epic13/RaoParameters_stop_curative_at_preventive.json +++ b/tests/src/test/resources/files/configurations/epic13/RaoParameters_stop_curative_at_preventive.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-2.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-2.json index eb7811284e..4482df325d 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-2.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-4.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-4.json index e2ce4322bd..b0f809cecb 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-4.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-4.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-1.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-1.json index 4ec8ac90fa..026c3498de 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-1.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-2.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-2.json index a628f2cc11..ea6bc7b4ca 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-2.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-3-3.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-3-3.json index 0005b3df10..4268786b18 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-3-3.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us11-5-3-3.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case1.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case1.json index d194190474..3ba797ae9c 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case1.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case10.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case10.json index e0a14f0f4b..5a551ecd12 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case10.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case10.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case2.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case2.json index 24d01c35b2..9ab34f9434 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case2.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case5.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case5.json index 785f10dfb9..c6c45c85fb 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case5.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case5.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case6.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case6.json index 21391e2740..ae5256f06b 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case6.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case6.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case7.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case7.json index 08a237051c..3b25f63eeb 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case7.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case7.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case8.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case8.json index cb58f506ec..56de3b6214 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case8.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us13case8.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case2.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case2.json index bd1464f822..1d48f83cde 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case2.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case6.json b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case6.json index 850cfe5140..bcec6dd1a3 100644 --- a/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case6.json +++ b/tests/src/test/resources/files/configurations/epic15/RaoParameters_ep15us17case6.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic15/raoParametersSweIDCC_withoutPsts.json b/tests/src/test/resources/files/configurations/epic15/raoParametersSweIDCC_withoutPsts.json index ccca90fba1..4e8f24ff92 100644 --- a/tests/src/test/resources/files/configurations/epic15/raoParametersSweIDCC_withoutPsts.json +++ b/tests/src/test/resources/files/configurations/epic15/raoParametersSweIDCC_withoutPsts.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_19_10_10&11.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_19_10_10&11.json index 45c2dd154e..1c42dedb2b 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_19_10_10&11.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_19_10_10&11.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_ampere_shareCra.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_ampere_shareCra.json index f19315abfe..8fd26b3de9 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_ampere_shareCra.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_ampere_shareCra.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_megawatt_shareCra.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_megawatt_shareCra.json index 0daf4a2167..d0da59198e 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_megawatt_shareCra.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxMargin_megawatt_shareCra.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra.json index a8c96947f2..cb707e69fb 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra_mip.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra_mip.json index 8513853ffb..8b533a4b63 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra_mip.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_ampere_shareCra_mip.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra.json index c5d1416a14..17f1bd6abb 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra_mip.json b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra_mip.json index b1dd2efcf4..b79a599262 100644 --- a/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra_mip.json +++ b/tests/src/test/resources/files/configurations/epic19/RaoParameters_maxRelMargin_megawatt_shareCra_mip.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_RELATIVE_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_4.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_4.json index d9f5df6027..cb5e653fb4 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_4.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_4.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_1.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_1.json index 4838131435..a87aa71f62 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_1.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_2.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_2.json index 955441fd21..24ba8a414d 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_2.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_20_6_2.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_MW_DC_withLF_with2P.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_MW_DC_withLF_with2P.json index a047ef9acf..b22d0acdb1 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_MW_DC_withLF_with2P.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_MW_DC_withLF_with2P.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_2p_if_cost_increase.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_2p_if_cost_increase.json index 023a22fc12..96cc66f56b 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_2p_if_cost_increase.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_2p_if_cost_increase.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : true, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_forbid_cost_increase.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_forbid_cost_increase.json index c8979aee53..70c0f115eb 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_forbid_cost_increase.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_forbid_cost_increase.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : true, diff --git a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_second_preventive.json b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_second_preventive.json index dc6b589572..a27cd3f7d6 100644 --- a/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_second_preventive.json +++ b/tests/src/test/resources/files/configurations/epic20/RaoParameters_maxMargin_ampere_second_preventive.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_ac_divergence.json b/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_ac_divergence.json index b45ca677eb..514b2f1291 100644 --- a/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_ac_divergence.json +++ b/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_ac_divergence.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_ac_divergence.json b/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_ac_divergence.json index 6efed62421..4f01f6fcc0 100644 --- a/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_ac_divergence.json +++ b/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_ac_divergence.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_differentFallbackCost.json b/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_differentFallbackCost.json index ad61a85e44..431e572a2e 100644 --- a/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_differentFallbackCost.json +++ b/tests/src/test/resources/files/configurations/epic4/RaoParameters_posMargin_ampere_withFallback_differentFallbackCost.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact190.json b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact190.json index b4c822058d..136fe02822 100644 --- a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact190.json +++ b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact190.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact195.json b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact195.json index 16cc76d47c..f909c90f2c 100644 --- a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact195.json +++ b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_absoluteMinImpact195.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_maxDepth.json b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_maxDepth.json index 447aa10c1b..139a94da2c 100644 --- a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_maxDepth.json +++ b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_maxDepth.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_relativeMinImpact.json b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_relativeMinImpact.json index 96be88cc03..0b22617295 100644 --- a/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_relativeMinImpact.json +++ b/tests/src/test/resources/files/configurations/epic5/RaoParameters_maxMargin_relativeMinImpact.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_10_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_10_100.json index 6797314262..c55edbebff 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_10_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_10_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100.json index 9197c55c73..575d74a5fb 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_BE_NL.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_BE_NL.json index e8f538eb08..5a9e2e7a53 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_BE_NL.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_BE_NL.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_NL.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_NL.json index 06ddaf4f10..9a58de6368 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_NL.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_NL.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_lfAugmentation.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_lfAugmentation.json index 16fdd72404..83327188d9 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_lfAugmentation.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_false_5_100_lfAugmentation.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_true_5_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_true_5_100.json index 9dc85c6d32..c1f34529ed 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_true_5_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_ac_lf_true_5_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_accurate_5_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_accurate_5_100.json index fa013306db..4b70ff5ef6 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_accurate_5_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_accurate_5_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_10_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_10_100.json index bae468ef55..5be589f50a 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_10_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_10_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_5_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_5_100.json index 29ec1462d0..fdd2cf7ad4 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_5_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_false_5_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_inBetween_5_100.json b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_inBetween_5_100.json index c871a244a2..5282d5b89d 100644 --- a/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_inBetween_5_100.json +++ b/tests/src/test/resources/files/configurations/epic7/RaoParameters_maxMargin_mw_dc_lf_inBetween_5_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_search_tree.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_search_tree.json index 8ce3b7deec..620bdaef51 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_search_tree.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_search_tree.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_secure.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_secure.json index e15eaacd9d..0c471a9042 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_secure.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_12_secure.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_13_1.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_13_1.json index 2b6a2f7f59..902fae87c1 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_13_1.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_13_1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_1.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_1.json index 2cc2f0f4f1..b8e5b53cad 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_1.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_1.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_12.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_12.json index 063e4f838f..49d12e8203 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_12.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_12.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_3.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_3.json index f6a6b8011a..afd62f3ed1 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_3.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_3.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_6.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_6.json index d54d1dcb77..80b813ccb7 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_6.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_6.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_7.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_7.json index 51ce158cd7..21d5baabe0 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_7.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_case_91_1_7.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree.json index 8070679799..9aa7f085f8 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree_2_threads.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree_2_threads.json index b7ab11460b..84da00cada 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree_2_threads.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_interrupt_search_tree_2_threads.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100.json index 8216997c2a..a4644667d9 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100_mip.json b/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100_mip.json index fdf4872496..e20307e4bb 100644 --- a/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100_mip.json +++ b/tests/src/test/resources/files/configurations/epic91/RaoParameters_maxMargin_mw_ac_lf_false_3_100_mip.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_MEGAWATT", "forbid-cost-increase" : false, diff --git a/tests/src/test/resources/files/configurations/rao1/RaoParameters_maxMargin_ampere_highPSTcost.json b/tests/src/test/resources/files/configurations/rao1/RaoParameters_maxMargin_ampere_highPSTcost.json index abf9f614c1..04b24e3c88 100644 --- a/tests/src/test/resources/files/configurations/rao1/RaoParameters_maxMargin_ampere_highPSTcost.json +++ b/tests/src/test/resources/files/configurations/rao1/RaoParameters_maxMargin_ampere_highPSTcost.json @@ -1,5 +1,5 @@ { - "version" : "2.3", + "version" : "2.4", "objective-function" : { "type" : "MAX_MIN_MARGIN_IN_AMPERE", "forbid-cost-increase" : false,