public class MCSData extends java.lang.Object implements java.lang.Comparable<MCSData>
Activity variables objects such that imposing only one precedence constraint among any two of
them results in resolving a (n-ary) conflict, e.g., a resource conflict.
The ESTA scheduling algorithm implemented in the works by inferring MCSs and attempting to impose constraints which sequences
one Activity in the MCS wrt the others. The fundamental heuristic that makes this method efficient consists in choosing
to post constraints such that (1) sequencing the two decisions (i,j) involved in each constraint has "minimal" consequences
with respect to the temporal flexibility (FLEX(i,j)) of the underlying temporal network, and (2) the MCS within which the
decisions are chosen at each iteration has the highest value of k, which is a function of FLEX(i,j) for all pairs of
activities (i,j) in the MCS. More details on this algorithm and heuristic are available in
[A. Cesta, A. Oddi and S. F. Smith, "A Constraint-based Method for Project Scheduling with Time Windows.
In Journal of Heuristics, volume 8 (1):109-136, 2002] and [P. Laborie, M. Ghallab, "Planning with Sharable Resource
Constraints", IJCAI 1995] respectively.| Modifier and Type | Field and Description |
|---|---|
Activity |
mcsActFrom
|
Activity |
mcsActTo
|
float |
mcsK
The value of k for the MCS associated to this
MCSData object. |
float |
mcsPcMin
The maximum FLEX(i,j) in the MCS associated to this
MCSData object. |
| Constructor and Description |
|---|
MCSData(float pcmin,
Activity actFrom,
Activity actTo,
float k)
Create a new
MCSData object. |
| Modifier and Type | Method and Description |
|---|---|
int |
compareTo(MCSData o)
|
java.lang.String |
toString()
Get a String representation of this
MCSData object. |
public float mcsK
MCSData object.public float mcsPcMin
MCSData object.public Activity mcsActFrom
public Activity mcsActTo
public int compareTo(MCSData o)
compareTo in interface java.lang.Comparable<MCSData>o - The reference MCSData object-1 if the value of k for the MCS associated to this MCSData object is less than that of
the MCS associated to the reference MCSData object; 0 if the value of k for the MCS associated to this
MCSData object is equal to that of the MCS associated to the reference MCSData object; 1
otherwise.