Enter Lower and Upper Bounds

Bounds on Variables

Upper and lower bounds must be entered for all series slots that are decision variables. The values should be reasonable. They represent the absolute minimum and maximum for the slot. Often these minimum and maximum values are based on the actual physical minimum and maximum. For example, the Pool Elevation Lower Bound should be the bottom of the reservoir and the Upper Bound should be the top of the reservoir as found in the Elevation Volume table. Turbine Release should be limited to zero as the lower bound and turbine capacity for the upper bound. In other cases, the absolute physical minimum or maximum may not be well-defined, such as maximum Inflow (or if economic variables are included in the model).

These variable bounds remain constant and are automatically converted by RiverWare into hard constraints on the variable for every time step in the optimization solution. In these cases variables without an obviously defined minimum or maximum, the slot bounds should not unnecessarily constrain the problem. These types of variables will typically be limited, either directly or indirectly, through the constraints in the Optimization Goal Set. It is also important, however, that the slot bounds not be set arbitrarily large or small (i.e. orders of magnitude different than the realistic limits) as this can result in numerical instability due to scaling issues in the optimization problem. There is a tendency to enter data just to get the model to run. This can lead to later errors and difficulty debugging when these values inadvertently limit the solution of the problem.

It is important that slot bounds not be confused with policy constraints, nor be used to apply policy constraints. For example, a hydro plant might have a minimum generation requirement that it must meet, but the Power slot Lower Bound should still be zero. The minimum generation requirement would be set through a constraint in the optimization goal set. The slot bounds become hard constraints in the optimization problem and essentially remain constant in the model, whereas policy constraint values (usually stored in custom slots) are typically incorporated as soft constraints and may change for different runs.

The slot bounds do not affect the Simulation solution. They are only applied in the Optimization solution. The Simulation solution is limited only by the physical characteristics described in table slots such as the Elevation Volume Table and Plant Power Table. Often it is helpful to set the slot bound slightly inside min/max values for the corresponding data table. This prevents problems of exceeding values in the data table associated with approximation error when going from Optimization to the Post-optimization RBS. For example, if the highest Pool Elevation in the Elevation Volume Table slot is 1000 ft, the Pool Elevation slot Upper Bound should be set to something like 999.95 ft. See Variable Bounds for additional information on how variable bounds are used in the solution.

Setting Bounds

Note: On Agg Series Slots, a value must be entered for each column.

There are two ways to set the Bounds.

1. From each slot, open the Configuration dialog (View, then Configure) and enter the Upper and Lower Bound.

2. Values on multiple slots can be set at once using the global slot configuration dialog accessed from the Workspace, then Slots, then Configure Slots menu (see Global Slot Configuration in User Interface). Select the Optimization option, and verify the Bounds on Series Slots check box is selected.

Optimization Limits for Data Verification

Certain Table Slots are verified to ensure they are increasing or satisfy requirements for concavity. Some tables meet the more stringent requirements of Optimization when a reservoir is within a normal operating region but violate these conditions during extreme events such as a flood when optimization would not be used. Users can optionally limit data checking in Optimization to the normal region by specifying Lower and Upper Limits. This allows extreme values to be in the table so that the model can be used for extreme events, but the extreme values are not used for Optimization purposes and they are ignored in Optimization verification in order to prevent the verification from failing. The specified range is configured in the Optimization Limits for Data Verification in the Table Slot configuration (shown in the screenshot) or using the Global Slot Configuration dialog described above (check the box for Optimization Limits for Table Verification). Some tables are automatically derived from other tables by RiverWare. For example spill tables based on elevations are automatically converted to spill tables based on storage. When the original tables have upper/lower limits, RiverWare automatically converts the original limits to their equivalent values for the derived tables, e.g. from elevation limits to storage limits.

For three-dimensional tables, this logic may be applied both to the range of z values and to x or y within a block of constant z values.

Only select table slots have limited data checking enabled. This is the current list of those slots for Reservoirs if the slots exist based on controller and method selections:

• Bypass Table

• Elevation Volume Table

• Energy In Storage Table

• Marginal Storage Value Table

• Regulated Spill Table

• Unregulated Spill Table

• Volume Area Table

The following tables are automatically created for Reservoirs by RiverWare by converting elevation based spill tables to storage based tables.

• Bypass Capacity Table

• Regulated Spill Capacity Table

• Unregulated Spill Linearization Table

The limits on these tables are set automatically based on the original tables’ limits.

In addition to these slots, Power Reservoirs have the following slots verified if the slots exist based on controller and method selections:

• Maximum Turbine Q

• Plant Power Table

• Stage Flow Tailwater Table

• Tailwater Table

The following tables are automatically created for Power Reservoirs by RiverWare by converting elevation based spill tables to storage based tables.

• Auto Max Turbine Q

• Convolved Stage Flow Tailwater Table

The limits on these tables are set automatically based on the limits in the Plant Power Table and the Stage Flow Tailwater Table respectively.

If the limits values are omitted on a table slot, then there will be no lower limit or upper limit respectively on checking that the table conforms to optimization requirements. The full range is checked.

Revised: 01/05/2024