Hide navigation sidebar
Hide table of contents sidebar
Back to top
Toggle table of contents sidebar

# Multi-Scenario Attributes

These are the attributes for setting and querying multiple scenarios (refer to this section for additional information on multi-scenario optimization).

## ScenNLB

- Type: `double`

- Modifiable: `Yes`

When the model has multiple scenarios, this attribute is used to query or modify changes of the variable lower bounds in scenario \(n\) w.r.t. the base model. You set \(n\) using the ScenarioNumber parameter.

If an element of this array attribute is set to the `undefined` value (`GRB_UNDEFINED` in C and C++, or `GRB.UNDEFINED` in Java, .NET, and Python), it means that the corresponding value in the scenario is identical to the one in the base model.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNUB

- Type: `double`

- Modifiable: `Yes`

When the model has multiple scenarios, this attribute is used to query or modify changes of the variable upper bounds in scenario \(n\) w.r.t. the base model. You set \(n\) using the ScenarioNumber parameter.

If an element of this array attribute is set to the `undefined` value (`GRB_UNDEFINED` in C and C++, or `GRB.UNDEFINED` in Java, .NET, and Python), it means that the corresponding value in the scenario is identical to the one in the base model.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNObj

- Type: `double`

- Modifiable: `Yes`

When the model has multiple scenarios, this attribute is used to query or modify changes of the variable objective coefficients in scenario \(n\) w.r.t. the base model. You set \(n\) using the ScenarioNumber parameter.

If an element of this array attribute is set to the `undefined` value (`GRB_UNDEFINED` in C and C++, or `GRB.UNDEFINED` in Java, .NET, and Python), it means that the corresponding value in the scenario is identical to the one in the base model.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNRHS

- Type: `double`

- Modifiable: `Yes`

When the model has multiple scenarios, this attribute is used to query or modify changes of the linear constraint right-hand sides in scenario \(n\) w.r.t. the base model. You set \(n\) using the ScenarioNumber parameter.

If an element of this array attribute is set to the `undefined` value (`GRB_UNDEFINED` in C and C++, or `GRB.UNDEFINED` in Java, .NET, and Python), it means that the corresponding value in the scenario is identical to the one in the base model.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNName

- Type: `string`

- Modifiable: `Yes`

When the model has multiple scenarios, this attribute is used to query or modify the name for scenario \(n\). You set \(n\) using the ScenarioNumber parameter.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNObjBound

- Type: `double`

- Modifiable: `No`

When the model has multiple scenarios, this attribute is used to query the objective bound for scenario \(n\). You set \(n\) using the ScenarioNumber parameter.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNObjVal

- Type: `double`

- Modifiable: `No`

When the model has multiple scenarios, this attribute is used to query the objective value of the current solution for scenario \(n\). You set \(n\) using the ScenarioNumber parameter. If no solution is available, this returns `GRB_INFINITY` (for a minimization objective).

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## ScenNX

- Type: `double`

- Modifiable: `No`

When the model has multiple scenarios, this attribute is used to query the variable value in the current solution of scenario \(n\). You set \(n\) using the ScenarioNumber parameter.

The number of scenarios in the model can be queried (or modified) using the NumScenarios attribute.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## NumScenarios

- Type: `int`

- Modifiable: `Yes`

Number of scenarios in the model. Modifying this attribute changes the number: decreasing it discards existing scenarios; increasing it creates new scenarios (initialized to have no changes w.r.t. the base model); setting it to 0 discards all scenarios so that the base model is no longer a multi-scenario model.

You can use the ScenarioNumber parameter, in conjunction with multi-scenario attributes (ScenNLB, ScenNUB, ScenNObj, ScenNRHS, ScenNName, etc.), to query or modify attributes for different scenarios. The value of ScenarioNumber should always be less than `NumScenarios`.

Please refer to the Multiple Scenarios discussion for more information.

For examples of how to query or modify attributes, refer to our Attribute Examples.

Help and Feedback

Press `/` or click to search this documentation | Gurobi website | Gurobi community forum
Go to other Gurobi documentation | Gurobi download | Contact support