![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
Internal methods and data structures, useful for testing. More...
Internal methods and data structures, useful for testing.
Stores the event for a task (interval, demand). For a no_overlap constraint, demand is always between 0 and 1. For a cumulative constraint, demand must be between 0 and capacity_max.
Definition at line 108 of file scheduling_cuts.h.
#include <scheduling_cuts.h>
Public Member Functions | |
CompletionTimeEvent (int t, SchedulingConstraintHelper *x_helper, SchedulingDemandHelper *demands_helper) | |
std::string | DebugString () const |
Public Attributes | |
int | task_index |
The index of the task in the helper. | |
IntegerValue | start_min |
Cache of the bounds of the interval. | |
IntegerValue | start_max |
IntegerValue | end_min |
IntegerValue | end_max |
IntegerValue | size_min |
AffineExpression | start |
Start and end affine expressions and lp value of the end of the interval. | |
AffineExpression | end |
double | lp_end = 0.0 |
IntegerValue | demand_min |
Cache of the bounds of the demand. | |
bool | demand_is_fixed = false |
IntegerValue | energy_min |
The energy min of this event. | |
std::vector< LiteralValueValue > | decomposed_energy |
bool | use_decomposed_energy_min = false |
bool | lifted = false |
operations_research::sat::CompletionTimeEvent::CompletionTimeEvent | ( | int | t, |
SchedulingConstraintHelper * | x_helper, | ||
SchedulingDemandHelper * | demands_helper ) |
Default values for energy. Will be updated if decomposed energy is not empty.
We know everything is propagated, we can remove this field.
Definition at line 1055 of file scheduling_cuts.cc.
std::string operations_research::sat::CompletionTimeEvent::DebugString | ( | ) | const |
Definition at line 1086 of file scheduling_cuts.cc.
std::vector<LiteralValueValue> operations_research::sat::CompletionTimeEvent::decomposed_energy |
If non empty, a decomposed view of the energy of this event. First value in each pair is x_size, second is y_size.
Definition at line 140 of file scheduling_cuts.h.
bool operations_research::sat::CompletionTimeEvent::demand_is_fixed = false |
If we know that the size on y is fixed, we can use some heuristic to compute the maximum subset sums under the capacity and use that instead of the full capacity.
Definition at line 133 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::demand_min |
Cache of the bounds of the demand.
Definition at line 128 of file scheduling_cuts.h.
AffineExpression operations_research::sat::CompletionTimeEvent::end |
Definition at line 124 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::end_max |
Definition at line 119 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::end_min |
Definition at line 118 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::energy_min |
The energy min of this event.
Definition at line 136 of file scheduling_cuts.h.
bool operations_research::sat::CompletionTimeEvent::lifted = false |
Indicates if the cut is lifted, that is if it includes tasks that are not strictly contained in the current time window.
Definition at line 148 of file scheduling_cuts.h.
double operations_research::sat::CompletionTimeEvent::lp_end = 0.0 |
Definition at line 125 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::size_min |
Definition at line 120 of file scheduling_cuts.h.
AffineExpression operations_research::sat::CompletionTimeEvent::start |
Start and end affine expressions and lp value of the end of the interval.
Definition at line 123 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::start_max |
Definition at line 117 of file scheduling_cuts.h.
IntegerValue operations_research::sat::CompletionTimeEvent::start_min |
Cache of the bounds of the interval.
Definition at line 116 of file scheduling_cuts.h.
int operations_research::sat::CompletionTimeEvent::task_index |
The index of the task in the helper.
Definition at line 113 of file scheduling_cuts.h.
bool operations_research::sat::CompletionTimeEvent::use_decomposed_energy_min = false |
Indicates if the events used the optional energy information from the model.
Definition at line 144 of file scheduling_cuts.h.