Java Reference
In-Depth Information
activationTime
#
releaseTime;
terminationTime
#
activationTime
!
duration;
}
}
public void
setDueTime(
double
time) {
if
(time < 0.0)
return
;
if
(time > dueTime
||
(time - duration) > releaseTime)
dueTime
#
time;
if
(dueTime < terminationTime) {
terminationTime
#
dueTime;
activationTime
#
terminationTime - duration;
}
}
public void
reset() {
activationTime
#
0.0;
terminationTime
#
activationTime
!
duration;
}
// The next two methods update the temporal parameters of
// the activity. The serialize() method enforces the
// resource and temporal constraints. The update() method
// takes into account the activity preferences; in
// particular, it updates the activation time in order to
// start the activity after the release time and to
// complete it as close as possible to the due date. The
// parameter gain represents the strength of an activity's
// preferences.
public void
serialize(Activity previous) {
if
(previous.terminationTime > activationTime)
activationTime
#
previous.terminationTime;
terminationTime
#
activationTime
!
duration;
}
public void
update(
double
gain) {
activationTime
!#
gain * (dueTime - terminationTime);
if
(activationTime < releaseTime)
activationTime
!#
gain * (releaseTime-activationTime);
terminationTime
#
activationTime
!
duration;
}
// The getPerformance() method implements the formula
// described in Equation 3.1, where the weights of
// the earliness and tardiness performance parameters
// are set to 1.0.
public double
getPerformance() {
double
pe
#
0.0;
double
pt
#
0.0;
if
(terminationTime > dueTime)
pt
#
(terminationTime - dueTime);