Title: IOE/MFG 543
1IOE/MFG 543
- Chapter 11 Stochastic single machine models
with release dates
2Random release dates
- Jobs (or orders) come in at different unknown
times - The release date of a job is unknown
- Random release dates are similar to customer
arrivals to a queuing system - Jobs have different priorities
- Not necessarily optimal to have a FIFO policy
- Priority queues
3Total weighted flow time
- Since jobs are released at different times it
makes sense to minimize the total weighted time a
job spends in the system, or flow time - Flow time
- Let the release date of job j be Rj
- The flow time is Cj-Rj
4Minimizing expected total weighted flow time
- The objective function is E(Swj(Cj-Rj))
- Taking the expected value inside the sum we get
- E(Swj(Cj-Rj))...
-
- So minimizing E(Swj(Cj-Rj)) is equivalent to
minimizing E(SwjCj)
5Section 11.1 Arbitrary releases and arbitrary
processing times without preemptions
- The problems 1 rj SwjCj is NP-hard
- It may be optimal to keep the machine idle until
a job is released - Example 11.1.3
job j 1 2
pj 4 1
rj 0 1
wj 1 100
6Section 11.1 Arbitrary releases and arbitrary
processing times without preemptions (2)
- WSPT for available jobs may not be optimal even
if we do not allow unforced idleness - Example 11.1.2
job j 1 2 3
pj 1 4 1
rj 0 0 1
wj 1 5 100
7Two job classes
- Suppose there are only two types of jobs
- All jobs in the same class have the same
distribution - The mean processing times of jobs in classes 1
and 2 are 1/l1 and 1/l2, respectively - The weight of jobs in classes 1 and 2 are w1 and
w2, respectively - The release dates can have any distribution
8Theorem 11.1.1
- Assume that
- Unforced idleness is not allowed
- There are only two job classes
- Under the optimal nonpreemptive dynamic policy,
the decision maker follows the WSEPT rule
whenever the machine is freed
9Section 11.2 Priority queues, work conservation
and Poisson releases
- Suppose jobs (an unknown number) arrive randomly
to the machine - Each job requires a random amount of processing
time Xj on the machine - If a job is being processed at time t let xr(t)
be the remaining processing time
10Work in the system
- At any time t there may be a number of jobs
waiting to be processed on the machine (excluding
the one in process) - Let V(t) be the total processing time of those
jobs plus xr(t) - V(t) is referred to as the amount of work in the
system
11Work in the system (2)
- Any time a job j arrives V(t) jumps by Xj
- Between jumps V(t) decreases at rate 1 as long as
the machine is processing jobs - We can use the stochastic process V(t) to analyze
the system
12Poisson releases and single job class
- To simplify the discussion we assume that the
time between release dates are exponentially
distributed at rate n - We also assume that there is only a single job
class - The processing time of job j is X where X is a
random variable with distribution F
13Poisson releases and PASTA
- PASTAPoisson Arrivals See Time Averages
- This is a very useful property that Poisson
releases have - Example 11.2.1
- Poisson releases at rate 1 per 10 minutes
- Processing times equal 4 minutes
- What is the time average number of jobs being
processed? - What is the probability that a job can
immediately start processing when released? - What if the time between releases is
deterministic and equal to 10 minutes?
14Computing the expected amount of work in the
system
- Let E(V)limt?8E(V(t)) be the expected amount of
work in the system when the system is in steady
state - Suppose the jobs pay 1 per unit processing time
left for each time unit they spend in the system - How much money does the system earn per unit
time? - The average amount of money the system earns per
unit time is - E(V)n E(amount paid by a job)
15Computing the amount paid by a job
- Let Wq be the time a job spends in the queue
- Then WsWqX is the total time spent in the
system - The job pays at a constant rate X while it is in
the queue and the total payout while in service
is X2/2 - Amount paid by a job XWqX2/2
16Computing the expected amount paid by a job
- If the dispatching rule is independent of X then
Wq and X are independent and - E(amount paid by a job)
17Computing the expected wait in queue
- By the PASTA and if a FCFS rule is used
- E(Wq)
- This gives the equation
- E(Wq)nE(X)E(Wq)nE(X2)/2
- or
- E(Wq)nE(X2)/2(1-nE(X))
- This is known as the Pollaczek-Khintchine (or
simply P-K) formula
18Computing the expected length of a busy period
- Let B be the length of a busy period
- Let I be the length of an idle period
- Then BI is a cycle
- The (long run) proportion of time the machine is
busy is - E(B)/(E(B)E(I))l/n
- It is clear that for Poisson releases
- E(I)1/n
- Then
- E(B)1/(l-n)