Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::sat::CtExhaustiveHelper Class Reference

#include <scheduling_cuts.h>

Public Member Functions

 CtExhaustiveHelper ()=default
int max_task_index () const
const CompactVectorVector< int > & predecessors () const
void Init (absl::Span< const CompletionTimeEvent > events, Model *model)
bool PermutationIsCompatibleWithPrecedences (absl::Span< const CompletionTimeEvent > events, absl::Span< const int > permutation)

Public Attributes

std::vector< std::pair< IntegerValue, IntegerValue > > profile_
 Temporary data.
std::vector< std::pair< IntegerValue, IntegerValue > > new_profile_
std::vector< IntegerValue > assigned_ends_
std::vector< int > task_to_index_
DagTopologicalSortIterator valid_permutation_iterator_
std::vector< CompletionTimeEventresidual_events_

Detailed Description

Definition at line 153 of file scheduling_cuts.h.

Constructor & Destructor Documentation

◆ CtExhaustiveHelper()

operations_research::sat::CtExhaustiveHelper::CtExhaustiveHelper ( )
default

Member Function Documentation

◆ Init()

void operations_research::sat::CtExhaustiveHelper::Init ( absl::Span< const CompletionTimeEvent > events,
Model * model )

Collect precedences, set max_task_index.

Todo
(user): Do some transitive closure.

We compute the max_task_index_ from the events early to avoid sorting the events if there are too many of them.

Definition at line 1103 of file scheduling_cuts.cc.

◆ max_task_index()

int operations_research::sat::CtExhaustiveHelper::max_task_index ( ) const
inline

Definition at line 157 of file scheduling_cuts.h.

◆ PermutationIsCompatibleWithPrecedences()

bool operations_research::sat::CtExhaustiveHelper::PermutationIsCompatibleWithPrecedences ( absl::Span< const CompletionTimeEvent > events,
absl::Span< const int > permutation )

Definition at line 1138 of file scheduling_cuts.cc.

◆ predecessors()

const CompactVectorVector< int > & operations_research::sat::CtExhaustiveHelper::predecessors ( ) const
inline

Definition at line 158 of file scheduling_cuts.h.

Member Data Documentation

◆ assigned_ends_

std::vector<IntegerValue> operations_research::sat::CtExhaustiveHelper::assigned_ends_

Definition at line 163 of file scheduling_cuts.h.

◆ new_profile_

std::vector<std::pair<IntegerValue, IntegerValue> > operations_research::sat::CtExhaustiveHelper::new_profile_

Definition at line 162 of file scheduling_cuts.h.

◆ profile_

std::vector<std::pair<IntegerValue, IntegerValue> > operations_research::sat::CtExhaustiveHelper::profile_

Temporary data.

Definition at line 161 of file scheduling_cuts.h.

◆ residual_events_

std::vector<CompletionTimeEvent> operations_research::sat::CtExhaustiveHelper::residual_events_

Definition at line 166 of file scheduling_cuts.h.

◆ task_to_index_

std::vector<int> operations_research::sat::CtExhaustiveHelper::task_to_index_

Definition at line 164 of file scheduling_cuts.h.

◆ valid_permutation_iterator_

DagTopologicalSortIterator operations_research::sat::CtExhaustiveHelper::valid_permutation_iterator_

Definition at line 165 of file scheduling_cuts.h.


The documentation for this class was generated from the following files: