Scheduling for cumulative resources More...
Classes | |
class | Event |
Event for task. More... | |
class | ExtOmegaNode |
Node for an extended omega tree. More... | |
class | ExtOmegaTree |
Omega trees for computing ect of task sets. More... | |
class | ManFixPSETask |
Cumulative (mandatory) task with fixed processing, start or end time. More... | |
class | ManFixPTask |
Cumulative (mandatory) task with fixed processing time. More... | |
class | ManFlexTask |
Cumulative (mandatory) task with flexible processing time. More... | |
class | ManProp |
Scheduling propagator for cumulative resource with mandatory tasks. More... | |
class | OmegaLambdaNode |
Node for an omega lambda tree. More... | |
class | OmegaLambdaTree |
Omega-lambda trees for computing ect of task sets. More... | |
class | OmegaNode |
Node for an omega tree. More... | |
class | OmegaTree |
Omega trees for computing ect of task sets. More... | |
class | OptFixPSETask |
Cumulative optional task with fixed processing, start or end time. More... | |
class | OptFixPTask |
Cumulative optional task with fixed processing time. More... | |
class | OptFlexTask |
Cumulative optional task with flexible processing time More... | |
class | OptProp |
Scheduling propagator for cumulative resource with optional tasks. More... | |
class | PrecOrder |
Sort by prec array. More... | |
class | StoCap |
Sort by capacity. More... | |
class | TaskByDecCap |
Sort order for tasks by decreasing capacity. More... | |
Typedefs | |
typedef ManFixPTask | ManFixPTaskFwd |
Forward mandatory fixed task view. More... | |
typedef FwdToBwd< ManFixPTaskFwd > | ManFixPTaskBwd |
Backward (dual) mandatory fixed task view. More... | |
typedef ManFixPSETask | ManFixPSETaskFwd |
Forward mandatory fixed task view. More... | |
typedef FwdToBwd< ManFixPSETaskFwd > | ManFixPSETaskBwd |
Backward (dual) mandatory fixed task view. More... | |
typedef OptFixPTask | OptFixPTaskFwd |
Forward optional fixed task view. More... | |
typedef FwdToBwd< OptFixPTaskFwd > | OptFixPTaskBwd |
Backward (dual) optional fixed task view. More... | |
typedef OptFixPSETask | OptFixPSETaskFwd |
Forward optional fixed task view. More... | |
typedef FwdToBwd< OptFixPSETaskFwd > | OptFixPSETaskBwd |
Backward (dual) optional fixed task view. More... | |
typedef ManFlexTask | ManFlexTaskFwd |
Forward mandatory flexible task view. More... | |
typedef FwdToBwd< ManFlexTaskFwd > | ManFlexTaskBwd |
Backward (dual) mandatory flexible task view. More... | |
typedef OptFlexTask | OptFlexTaskFwd |
Forward optional flexible task view. More... | |
typedef FwdToBwd< OptFlexTaskFwd > | OptFlexTaskBwd |
Backward (dual) optional flexible task view. More... | |
Functions | |
template<class Task , class Cap > | |
ExecStatus | basic (Space &home, bool &subsumed, Cap c, TaskArray< Task > &t) |
Perform basic propagation. More... | |
template<class TaskView > | |
ExecStatus | edgefinding (Space &home, int c, TaskViewArray< TaskView > &t) |
template<class Task > | |
ExecStatus | edgefinding (Space &home, int c, TaskArray< Task > &t) |
Propagate by edge finding. More... | |
void | mul_check (long long int x, long long int y) |
Throw exception if multiplication of x and y overflows. More... | |
void | mul_check (long long int x, long long int y, long long int z) |
Throw exception if multiplication of x, y, and z overflows. More... | |
template<class ManTask > | |
ExecStatus | overload (Space &home, int c, TaskArray< ManTask > &t) |
Check mandatory tasks t for overload. More... | |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ManFixPTaskBwd &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ManFixPSETaskBwd &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const OptFixPTaskBwd &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const OptFixPSETaskBwd &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ManFixPTask &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ManFixPSETask &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ManFlexTask &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const OptFixPTask &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const OptFixPSETask &t) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const OptFlexTask &t) |
Scheduling for cumulative resources
The edge-finding and overload-checking algorithms and data structures follow (mostly): Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, CP-AI-OR, 2009. Petr Vilím, Edge Finding Filtering Algorithm for Discrete Cumulative Resources in O(kn log n), CP, 2009.
Forward mandatory fixed task view.
Definition at line 297 of file cumulative.hh.
Backward (dual) mandatory fixed task view.
Definition at line 300 of file cumulative.hh.
Forward mandatory fixed task view.
Definition at line 303 of file cumulative.hh.
Backward (dual) mandatory fixed task view.
Definition at line 306 of file cumulative.hh.
Forward optional fixed task view.
Definition at line 309 of file cumulative.hh.
Backward (dual) optional fixed task view.
Definition at line 312 of file cumulative.hh.
Forward optional fixed task view.
Definition at line 315 of file cumulative.hh.
Backward (dual) optional fixed task view.
Definition at line 318 of file cumulative.hh.
Forward mandatory flexible task view.
Definition at line 321 of file cumulative.hh.
Backward (dual) mandatory flexible task view.
Definition at line 324 of file cumulative.hh.
Forward optional flexible task view.
Definition at line 327 of file cumulative.hh.
Backward (dual) optional flexible task view.
Definition at line 330 of file cumulative.hh.
ExecStatus Gecode::Int::Cumulative::basic | ( | Space & | home, |
bool & | subsumed, | ||
Cap | c, | ||
TaskArray< Task > & | t | ||
) |
|
inline |
Definition at line 72 of file edge-finding.hpp.
ExecStatus Gecode::Int::Cumulative::edgefinding | ( | Space & | home, |
int | c, | ||
TaskArray< Task > & | t | ||
) |
Propagate by edge finding.
Definition at line 182 of file edge-finding.hpp.
|
inline |
Throw exception if multiplication of x and y overflows.
Definition at line 41 of file limits.hpp.
|
inline |
Throw exception if multiplication of x, y, and z overflows.
Definition at line 47 of file limits.hpp.
ExecStatus Gecode::Int::Cumulative::overload | ( | Space & | home, |
int | c, | ||
TaskArray< ManTask > & | t | ||
) |
Check mandatory tasks t for overload.
Definition at line 45 of file overload.hpp.
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const ManFixPTaskBwd & | t | ||
) |
Definition at line 44 of file task-view.hpp.
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const ManFixPSETaskBwd & | t | ||
) |
Definition at line 53 of file task-view.hpp.
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const OptFixPTaskBwd & | t | ||
) |
Definition at line 63 of file task-view.hpp.
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const OptFixPSETaskBwd & | t | ||
) |
Definition at line 73 of file task-view.hpp.
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const ManFixPTask & | t | ||
) |
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const ManFixPSETask & | t | ||
) |
std::basic_ostream<Char,Traits>& Gecode::Int::Cumulative::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const ManFlexTask & | t | ||
) |
|
related |
|
related |
|
related |