public class Cumulative extends Constraint
Modifier and Type | Class and Description |
---|---|
static class |
Cumulative.Filter
Filtering algorithms for Cumulative constraint
|
Constraint.Status
boolReif, propagators
Constructor and Description |
---|
Cumulative(Task[] tasks,
IntVar[] heights,
IntVar capacity,
boolean graphBased,
Cumulative.Filter... filters)
Cumulative constraint
|
Cumulative(Task[] tasks,
IntVar[] heights,
IntVar capacity,
boolean graphBased,
CumulFilter... filters)
Cumulative constraint
|
Modifier and Type | Method and Description |
---|---|
static IntVar[] |
extract(Task[] tasks,
IntVar[] heights,
IntVar capa) |
checkNewStatus, computeMaxPriority, declareAs, getCidxInModel, getName, getOpposite, getPropagator, getPropagators, getStatus, isReified, isSatisfied, makeOpposite, merge, post, reify, reifyWith, setName, setOpposite, toString
public Cumulative(Task[] tasks, IntVar[] heights, IntVar capacity, boolean graphBased, Cumulative.Filter... filters)
tasks
- task variables (embed start, duration and end variables)heights
- height variables (represent the consumption of each task on the resource)capacity
- maximal capacity of the resource (same at each point in time)graphBased
- parameter indicating how to filter:
- TRUE: applies on subset of overlapping tasks
- FALSE: applies on all tasksfilters
- Filtering algorithm to use:
- TIME: filters time-table from considering each point in time
(efficient in practice as long as the time horizon is not too high)
- SWEEP: filters time-table with a sweep-based algorithm
- NRJ: greedy energy-based filter.
BEWARE: should not be used alone, use it in addition to either SWEEP or TIME.public Cumulative(Task[] tasks, IntVar[] heights, IntVar capacity, boolean graphBased, CumulFilter... filters)
tasks
- task variables (embed start, duration and end variables)heights
- height variables (represent the consumption of each task on the resource)capacity
- maximal capacity of the resource (same at each point in time)graphBased
- parameter indicating how to filter:
- TRUE: applies on subset of overlapping tasks
- FALSE: applies on all tasksfilters
- Filtering algorithm to use:
- TIME: filters time-table from considering each point in time
(efficient in practice as long as the time horizon is not too high)
- SWEEP: filters time-table with a sweep-based algorithm
- NRJ: greedy energy-based filter.
BEWARE: should not be used alone, use it in addition to either SWEEP or TIME.Copyright © 2018. All rights reserved.