Presentation is loading. Please wait.

Presentation is loading. Please wait.

Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker.

Similar presentations


Presentation on theme: "Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker."— Presentation transcript:

1 Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker

2 Outline of the talk Problem description How to solve the deterministic problem Stochastic processing times –consequences –four classes of instances Stochastic machine Processing times and machine stochastic

3 Problem description 1 machine n jobs become available at time 0 Known processing time p j Known due date d j Known reward w j for timely completion (currently 1) Decision to make at time 0: accept or reject job j minimize number of tardy jobs on a single machine

4 Moore-Hodgson 1.Number the jobs in EDD order 2.Let S denote the EDD schedule 3.Find the first job not on time in S (suppose this is job j) 4.Remove from S the largest available job from jobs 1,…,j 5.Continue with Step 3 for this new schedule S until all jobs are on time

5 Solving the problem from scratch Observations First the on time jobs On time jobs in EDD order Forget about the late jobs (once rejected = lost for ever) Knowing the on time set is sufficient

6 Dominance rule Let E 1 and E 2 be two subsets of jobs 1,…,j All jobs in E 1 and E 2 are on time (feasible) Cardinality of E 1 and E 2 is equal The total processing time of the jobs in E 2 is more than the total processing time of the jobs in E 1 Then subset E 2 can be discarded.

7 Proof (sketch) Take an optimal schedule starting with E 2 (remainder: jobs from j+1, …, n) E2E2 remainder E1E1 time 0

8 Apply Dynamic Programming Define E j * (k): feasible subset of jobs 1,…,j with cardinality k and minimum total processing time Knowledge of the total processing time of E j * (k) is sufficient in the next step ⇒ use state variables f j (k) to represent this, etc.

9 DP (2) Add job j+1 Recurrence relation: If the number of on time jobs k can be reached without job j+1, then compute f j+1 (k)=min{f j (k), f j (k-1)+p j+1 } Effectively: the longest job of the old set plus job j+1 gets removed.

10 Further remarks DP computes more state variables than necessary DP can be used for the weighted case: –Use f j (W) with W is the total weight of the on time set (instead of cardinality of the on time set) DP can be used for more problems

11 Stochastic processing times Completion times are uncertain Decision about accept or reject must be made before running the schedule When do you consider a job on time?

12 On time stochastically Work with a sequence of on time jobs (instead of a set of completion times) Add a job to this sequence and compute the probability that it is ready on time If this probability is large enough (at least equal to the minimum success probability msp) then accept it as on time

13 Classes of processing times Gamma distribution Negative binomial distribution Equally disturbed processing times p j Normal distribution Jobs must be independent

14 Class 1: Gamma distribution Parameters a j and b (common) If X 1 and X 2 follow the gamma distribution and are independent, then X 1 +X 2 is gamma distributed with parameters a 1 +a 2 and b (we call this additive).

15 More gamma Define S as the set containing job j and all its predecessors in the schedule. Define p(S) as the sum of all processing times p j of jobs in S; a(S) is defined similarly. Then C j =p(S) follows a gamma distribution with parameters a(S) and b.

16 Even more gamma Denote the msp of job j by y j Job j is on time if P(C j  d j )  y j. The distribution of C j depends on a(S) only Given d j and y j, you can compute the maximum value of a(S) such that P(C j  d j )  y j : call this maximum value D j

17 Last of Gamma Important: a(S)  D j  P(C j  d j )  y j (S contains job j and its predecessors) Treat D j as ordinary due dates Treat a j as ordinary deterministic processing times You can use Moore-Hodgson!

18 Negative binomial distribution Parameters s_j and p (common for all jobs) If independent, then C_j=p(S) follows a negative binomial distribution with parameters s(S) and p Solvable like the gamma distribution

19 Same approach is viable if The distribution of p j depends on one specific parameter a j The probability distribution is additive P(C j  d j )  y j does not increase when a(S) increases, irrespective of y j The negative binomial distribution possesses these characteristics

20 More complicated problems p j Var dj dj msp j Job 1 12 1 20 0.5 Job 2 8 1 21 0.95 Normally distributed processing times Optimum: first job 2 and then job 1 Necessary for DP: msp values and due dates are oppositely ordered

21 Equal disturbances On time probability of job j depends on: –Number of predecessors (on time jobs before j) –Total processing time of its predecessors Dominance rule: given the cardinality of the on time set, take the one with minimum total processing time Use dynamic programming with state variables f j (k) that indicate the minimum total processing time possible (as before) Hence: Moore-Hodgson’s solves it!

22 Normal distribution (1) Parameters: expected processing time of job j and variance of job j Two parameters ⇒ simple approach fails Reminder: expected value and variances of X 1 +X 2 are equal to the respective sums Necessary for computing the on time probability of job j: –Total processing time of predecessors –Total variance of predecessors

23 Normal distribution (2) Dominance rule: if cardinality and total processing time are equal, then take the set with minimum total variance (msp > 0.5) Use state variables f j (k,P): –k is cardinality of on time set –P is total processing time of on time set –f j (k,P) is minimum variance possible

24 Normal distribution: details Running time pseudo-polynomial Problem is NP-hard Role of total variance and total processing time in the dominance rule and in the DP is interchangeable

25 Unreliable machine Assume deterministic processing times Amount of work done by the machine per period is stochastic Define X(t) as the stochastic variable denoting the amount of work done in [0,t] Assume that the probability distribution of X(t) is known

26 Solution method Use the minimum success probability y j Again, use S to denote job j and its predecessors in the schedule; the total processing time of S is p(S) Job j is stochastically on time if P(X(d j )  p(S))  y j

27 Solution method (2) Compute D j as the maximum value of p(S) such that P(X(d j )  p(S))  y j. Treat the D j values as the traditional due dates for a reliable machine. => Traditional deterministic problem Moore-Hodgson solves it

28 Everything unreliable Same approach as with the unreliable machine: –X(t) denotes the amount of work done in [0,t] –p(S) is total processing time of the jobs in S; this is a stochastic variable now –Job j is stochastically on time if P(X(d j )  p(S))  y j

29 Gamma distribution Now p(S) is gamma distributed with parameter a(S) Compute D j as the maximum value of a(S) such that P(X(d j )  p(S))  y j. Treat D j as ordinary due dates again Use a j as processing time of job j => Traditional deterministic problem Moore-Hodgson solves it

30 Conclusion We can sometimes get rid of stochasticity by –using minimum success probability –concept of stochastically on time Necessary to compute the probabilities –either analytically –or numerically (simulation)

31 Conclusion (2) Unreliable machines are made reliable again Stochastic processing times are represented by their deterministic parameter Then the deterministic algorithm can be applied again!


Download ppt "Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker."

Similar presentations


Ads by Google