Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 IOE/MFG 543 Chapter 11: Stochastic single machine models with release dates.

Similar presentations


Presentation on theme: "1 IOE/MFG 543 Chapter 11: Stochastic single machine models with release dates."— Presentation transcript:

1 1 IOE/MFG 543 Chapter 11: Stochastic single machine models with release dates

2 2 Random release dates Jobs (or orders) come in at different unknown times 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 Random release dates are similar to customer arrivals to a queuing system Jobs have different priorities Jobs have different priorities –Not necessarily optimal to have a FIFO policy –Priority queues

3 3 Total 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 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 Flow time –Let the release date of job j be R j –The flow time is C j -R j

4 4 Minimizing expected total weighted flow time The objective function is E(  w j (C j -R j )) The objective function is E(  w j (C j -R j )) Taking the expected value inside the sum we get Taking the expected value inside the sum we get E(  w j (C j -R j ))=  So minimizing E(  w j (C j -R j )) is equivalent to minimizing E(  w j C j ) So minimizing E(  w j (C j -R j )) is equivalent to minimizing E(  w j C j )

5 5 Section 11.1 Arbitrary releases and arbitrary processing times without preemptions The problems 1 | r j |  w j C j is NP-hard The problems 1 | r j |  w j C j is NP-hard –It may be optimal to keep the machine idle until a job is released Example 11.1.3 Example 11.1.3 job j 12 pjpjpjpj41 rjrjrjrj01 wjwjwjwj1100

6 6 Section 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 WSPT for available jobs may not be optimal even if we do not allow unforced idleness Example 11.1.2 Example 11.1.2 job j 123 pjpjpjpj141 rjrjrjrj001 wjwjwjwj15100

7 7 Two job classes Suppose there are only two types of jobs 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/ 1 and 1/ 2, respectively –The weight of jobs in classes 1 and 2 are w 1 and w 2, respectively The release dates can have any distribution The release dates can have any distribution

8 8 Theorem 11.1.1 Assume that 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 Under the optimal nonpreemptive dynamic policy, the decision maker follows the WSEPT rule whenever the machine is freed

9 9 Section 11.2 Priority queues, work conservation and Poisson releases Suppose jobs (an unknown number) arrive randomly to the machine Suppose jobs (an unknown number) arrive randomly to the machine Each job requires a random amount of processing time X j on the machine Each job requires a random amount of processing time X j on the machine If a job is being processed at time t let x r (t) be the remaining processing time If a job is being processed at time t let x r (t) be the remaining processing time

10 10 Work 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) 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 x r (t) Let V(t) be the total processing time of those jobs plus x r (t) V(t) is referred to as the amount of work in the system V(t) is referred to as the amount of work in the system

11 11 Work in the system (2) Any time a job j arrives V(t) jumps by X j Any time a job j arrives V(t) jumps by X j Between jumps V(t) decreases at rate 1 as long as the machine is processing jobs 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 We can use the stochastic process V(t) to analyze the system

12 12 Poisson releases and single job class To simplify the discussion we assume that the time between release dates are exponentially distributed at rate To simplify the discussion we assume that the time between release dates are exponentially distributed at rate We also assume that there is only a single job class 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

13 13 Poisson releases and PASTA PASTA=Poisson Arrivals See Time Averages PASTA=Poisson Arrivals See Time Averages This is a very useful property that Poisson releases have This is a very useful property that Poisson releases have Example 11.2.1 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?

14 14 Computing the expected amount of work in the system Let E(V)=lim t  ∞ E(V(t)) be the expected amount of work in the system when the system is in steady state Let E(V)=lim t  ∞ E(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 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 The average amount of money the system earns per unit time is E(V)=  E(amount paid by a job)

15 15 Computing the amount paid by a job Let W q be the time a job spends in the queue Let W q be the time a job spends in the queue Then W s =W q +X is the total time spent in the system Then W s =W q +X 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 X 2 /2 The job pays at a constant rate X while it is in the queue and the total payout while in service is X 2 /2 Amount paid by a job = XW q +X 2 /2 Amount paid by a job = XW q +X 2 /2

16 16 Computing the expected amount paid by a job If the dispatching rule is independent of X then W q and X are independent and If the dispatching rule is independent of X then W q and X are independent and E(amount paid by a job)=…

17 17 Computing the expected wait in queue By the PASTA and if a FCFS rule is used By the PASTA and if a FCFS rule is used E(W q )= … This gives the equation This gives the equation E(W q )= E(X)E(W q )+ E(X 2 )/2 or E(W q )= E(X 2 )/[2(1- E(X))] This is known as the Pollaczek- Khintchine (or simply P-K) formula This is known as the Pollaczek- Khintchine (or simply P-K) formula

18 18 Computing the expected length of a busy period Let B be the length of a busy period Let B be the length of a busy period Let I be the length of an idle period Let I be the length of an idle period Then B+I is a cycle Then B+I is a cycle The (long run) proportion of time the machine is busy is The (long run) proportion of time the machine is busy is E(B)/(E(B)+E(I))= / E(B)/(E(B)+E(I))= / It is clear that for Poisson releases It is clear that for Poisson releases E(I)=1/ E(I)=1/ Then Then E(B)=1/( - )


Download ppt "1 IOE/MFG 543 Chapter 11: Stochastic single machine models with release dates."

Similar presentations


Ads by Google