|
ContactCenters V. 0.9.9. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectumontreal.iro.lecuyer.contactcenters.expdelay.ExpectedDelayPredictor
public class ExpectedDelayPredictor
Approximates the expected waiting time conditional on a given queue assuming
that service times are i.i.d. exponential, and a queue is associated with
each agent group. More specifically, let Qi(t) be the size of waiting
queue i at time t, and Ni(t) be the total number of agents in group
i. We suppose that agents in group i cannot pick up contacts in other
queues than queue i. Assuming that service times at agent group i are
i.i.d. exponential with mean 1/μi, the expected waiting time for a
contact waiting at queue i is
(Qi(t) + 1)/(μiNi(t)). The rates
μi are initialized to 1, and should be changed using
setMu(int,double)
. Moreover, if K = I, the rates can be initialized
automatically using setMuWithContactTypes()
.
Constructor Summary | |
---|---|
ExpectedDelayPredictor()
|
Method Summary | |
---|---|
double[] |
getMu()
Returns an array containing a copy of the values of μi. |
double |
getMu(int i)
Returns the currently used value of μi. |
Router |
getRouter()
Returns a reference to the router associated with this predictor. |
double |
getWaitingTime(Contact contact)
Returns a prediction of the waiting time of contact contact waiting in any queue. |
double |
getWaitingTime(Contact contact,
WaitingQueue queue)
Returns a prediction of the waiting time for the given contact contact conditional on the contact joining the waiting queue queue. |
void |
init()
Resets any internal variable of this predictor. |
void |
setMu(double[] mu)
Sets the values of μi to mu. |
void |
setMu(int i,
double m)
Sets the value of μi to m. |
void |
setMuWithContactTypes()
Initializes the values of μi using the mean service time for contact types. |
void |
setRouter(Router router)
Sets the router associated with this predictor to router. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExpectedDelayPredictor()
Method Detail |
---|
public Router getRouter()
WaitingTimePredictor
WaitingTimePredictor.setRouter(Router)
method.
getRouter
in interface WaitingTimePredictor
public double getWaitingTime(Contact contact)
WaitingTimePredictor
Double.NaN
if it cannot make a prediction for the given contact.
getWaitingTime
in interface WaitingTimePredictor
contact
- the contact for which we need a prediction.
public double getWaitingTime(Contact contact, WaitingQueue queue)
WaitingTimePredictor
Double.NaN
if it cannot make a prediction for the given contact,
or the given waiting queue.
getWaitingTime
in interface WaitingTimePredictor
contact
- the contact for which a delay is predicted.queue
- the target waiting queue.
public void init()
WaitingTimePredictor
init
in interface WaitingTimePredictor
public void setRouter(Router router)
WaitingTimePredictor
setRouter
in interface WaitingTimePredictor
router
- the new router.public double getMu(int i)
i
- the waiting queue index.
public double[] getMu()
public void setMu(int i, double m)
i
- the index of the affected waiting queue.m
- the new value of μi.public void setMu(double[] mu)
mu
- the array containing the new values of μi.public void setMuWithContactTypes()
|
ContactCenters V. 0.9.9. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |