Go to the source code of this file.
Namespaces | |
Gecode::Int | |
Finite domain integers. | |
Gecode::Int::Cumulative | |
Scheduling for cumulative resources | |
Functions | |
template<class Cap > | |
void | Gecode::Int::Cumulative::cumulative (Home home, Cap c, const TaskTypeArgs &t, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, IntPropLevel ipl) |
template<class Cap > | |
void | Gecode::Int::Cumulative::cumulative (Home home, Cap c, const TaskTypeArgs &t, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl) |
template<class Cap > | |
void | Gecode::Int::Cumulative::cumulative (Home home, Cap c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, IntPropLevel ipl) |
template<class Cap > | |
void | Gecode::Int::Cumulative::cumulative (Home home, Cap c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl) |
template<class Cap > | |
void | Gecode::Int::Cumulative::cumulative (Home home, Cap c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, IntPropLevel ipl) |
template<class Cap > | |
void | Gecode::Int::Cumulative::cumulative (Home home, Cap c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl) |
void | Gecode::cumulative (Home home, int c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, IntVar c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, int c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, IntVar c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. More... | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const BoolVarArgs &m, IntPropLevel ipl=IPL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. More... | |
void Gecode::cumulative | ( | Home | home, |
int | c, | ||
const TaskTypeArgs & | t, | ||
const IntVarArgs & | flex, | ||
const IntArgs & | fix, | ||
const IntArgs & | u, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling tasks on cumulative resources.
Schedule tasks with flexible times flex, fixed times fix, and use capacity u on a cumulative resource with capacity c. For each task, it depends on t how the flexible and fix times are interpreted:
t[i]
is TT_FIXP
, then flex[i]
is the start time and fix[i]
is the processing time.t[i]
is TT_FIXS
, then flex[i]
is the end time and fix[i]
is the start time.t[i]
is TT_FIXE
, then flex[i]
is the start time and fix[i]
is the end time.The propagator performs propagation that depends on the integer propagation level ipl as follows:
The propagator uses algorithms taken from:
Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, in W. J. van Hoeve and J. N. Hooker, editors, CPAIOR, volume 5547 of LNCS, pages 294-308. Springer, 2009.
and
Petr Vilím, Edge finding filtering algorithm for discrete cumulative resources in O(kn log n). In I. P. Gent, editor, CP, volume 5732 of LNCS, pages 802-816. Springer, 2009.
Definition at line 354 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
IntVar | c, | ||
const TaskTypeArgs & | t, | ||
const IntVarArgs & | flex, | ||
const IntArgs & | fix, | ||
const IntArgs & | u, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling tasks on cumulative resources.
Definition at line 362 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
int | c, | ||
const TaskTypeArgs & | t, | ||
const IntVarArgs & | flex, | ||
const IntArgs & | fix, | ||
const IntArgs & | u, | ||
const BoolVarArgs & | m, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling optional tasks on cumulative resources.
Schedule tasks with flexible times flex, fixed times fix, use capacity u, and whether a task is mandatory m (a task is mandatory if the Boolean variable is 1) on a cumulative resource with capacity c. For each task, it depends on t how the flexible and fix times are interpreted:
t[i]
is TT_FIXP
, then flex[i]
is the start time and fix[i]
is the processing time.t[i]
is TT_FIXS
, then flex[i]
is the end time and fix[i]
is the start time.t[i]
is TT_FIXE
, then flex[i]
is the start time and fix[i]
is the end time.The propagator performs propagation that depends on the integer propagation level ipl as follows:
The propagator uses algorithms taken from:
Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, in W. J. van Hoeve and J. N. Hooker, editors, CPAIOR, volume 5547 of LNCS, pages 294-308. Springer, 2009.
and
Petr Vilím, Edge finding filtering algorithm for discrete cumulative resources in O(kn log n). In I. P. Gent, editor, CP, volume 5732 of LNCS, pages 802-816. Springer, 2009.
Definition at line 373 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
IntVar | c, | ||
const TaskTypeArgs & | t, | ||
const IntVarArgs & | flex, | ||
const IntArgs & | fix, | ||
const IntArgs & | u, | ||
const BoolVarArgs & | m, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling optional tasks on cumulative resources.
Definition at line 381 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
int | c, | ||
const IntVarArgs & | s, | ||
const IntArgs & | p, | ||
const IntArgs & | u, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling tasks on cumulative resources.
Schedule tasks with start times s, processing times p, and use capacity u on a cumulative resource with capacity c.
The propagator performs propagation that depends on the integer propagation level ipl as follows:
The propagator uses algorithms taken from:
Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, in W. J. van Hoeve and J. N. Hooker, editors, CPAIOR, volume 5547 of LNCS, pages 294-308. Springer, 2009.
and
Petr Vilím, Edge finding filtering algorithm for discrete cumulative resources in O(kn log n). In I. P. Gent, editor, CP, volume 5732 of LNCS, pages 802-816. Springer, 2009.
Definition at line 392 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
IntVar | c, | ||
const IntVarArgs & | s, | ||
const IntArgs & | p, | ||
const IntArgs & | u, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling tasks on cumulative resources.
Definition at line 399 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
int | c, | ||
const IntVarArgs & | s, | ||
const IntArgs & | p, | ||
const IntArgs & | u, | ||
const BoolVarArgs & | m, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling optional tasks on cumulative resources.
Schedule optional tasks with start times s, processing times p, used capacity u, and whether a task is mandatory m (a task is mandatory if the Boolean variable is 1) on a cumulative resource with capacity c.
The propagator performs propagation that depends on the integer propagation level ipl as follows:
The propagator uses algorithms taken from:
Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, in W. J. van Hoeve and J. N. Hooker, editors, CPAIOR, volume 5547 of LNCS, pages 294-308. Springer, 2009.
and
Petr Vilím, Edge finding filtering algorithm for discrete cumulative resources in O(kn log n). In I. P. Gent, editor, CP, volume 5732 of LNCS, pages 802-816. Springer, 2009.
Definition at line 409 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
IntVar | c, | ||
const IntVarArgs & | s, | ||
const IntArgs & | p, | ||
const IntArgs & | u, | ||
const BoolVarArgs & | m, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling optional tasks on cumulative resources.
Definition at line 416 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
int | c, | ||
const IntVarArgs & | s, | ||
const IntVarArgs & | p, | ||
const IntVarArgs & | e, | ||
const IntArgs & | u, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling tasks on cumulative resources.
Schedule tasks with start times s, processing times p, end times e, and use capacity u on a cumulative resource with capacity c.
The propagator does not enforce , this constraint has to be posted in addition to ensure consistency of the task bounds.
The propagator performs propagation that depends on the integer propagation level ipl as follows:
The propagator uses algorithms taken from:
Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, in W. J. van Hoeve and J. N. Hooker, editors, CPAIOR, volume 5547 of LNCS, pages 294-308. Springer, 2009.
and
Petr Vilím, Edge finding filtering algorithm for discrete cumulative resources in O(kn log n). In I. P. Gent, editor, CP, volume 5732 of LNCS, pages 802-816. Springer, 2009.
Definition at line 426 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
IntVar | c, | ||
const IntVarArgs & | s, | ||
const IntVarArgs & | p, | ||
const IntVarArgs & | e, | ||
const IntArgs & | u, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling tasks on cumulative resources.
Definition at line 434 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
int | c, | ||
const IntVarArgs & | s, | ||
const IntVarArgs & | p, | ||
const IntVarArgs & | e, | ||
const IntArgs & | u, | ||
const BoolVarArgs & | m, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling optional tasks on cumulative resources.
Schedule optional tasks with start times s, processing times p, end times e, used capacity u, and whether a task is mandatory m (a task is mandatory if the Boolean variable is 1) on a cumulative resource with capacity c.
The propagator does not enforce , this constraint has to be posted in addition to ensure consistency of the task bounds.
The propagator performs propagation that depends on the integer propagation level ipl as follows:
The propagator uses algorithms taken from:
Petr Vilím, Max Energy Filtering Algorithm for Discrete Cumulative Resources, in W. J. van Hoeve and J. N. Hooker, editors, CPAIOR, volume 5547 of LNCS, pages 294-308. Springer, 2009.
and
Petr Vilím, Edge finding filtering algorithm for discrete cumulative resources in O(kn log n). In I. P. Gent, editor, CP, volume 5732 of LNCS, pages 802-816. Springer, 2009.
Definition at line 445 of file cumulative.cpp.
void Gecode::cumulative | ( | Home | home, |
IntVar | c, | ||
const IntVarArgs & | s, | ||
const IntVarArgs & | p, | ||
const IntVarArgs & | e, | ||
const IntArgs & | u, | ||
const BoolVarArgs & | m, | ||
IntPropLevel | ipl = IPL_DEF |
||
) |
Post propagators for scheduling optional tasks on cumulative resources.
Definition at line 453 of file cumulative.cpp.