Class ReservoirConstraintProto

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.google.ortools.sat.ReservoirConstraintProto
All Implemented Interfaces:
ReservoirConstraintProtoOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

@Generated public final class ReservoirConstraintProto extends com.google.protobuf.GeneratedMessage implements ReservoirConstraintProtoOrBuilder
Maintain a reservoir level within bounds. The water level starts at 0, and at
any time, it must be within [min_level, max_level].

If the variable active_literals[i] is true, and if the expression
time_exprs[i] is assigned a value t, then the current level changes by
level_changes[i] at the time t. Therefore, at any time t:

sum(level_changes[i] * active_literals[i] if time_exprs[i] <= t)
in [min_level, max_level]

Note that min level must be <= 0, and the max level must be >= 0. Please use
fixed level_changes to simulate initial state.

The array of boolean variables 'actives', if defined, indicates which actions
are actually performed. If this array is not defined, then it is assumed that
all actions will be performed.
Protobuf type operations_research.sat.ReservoirConstraintProto
See Also: