Sequencing for Stochastic Scheduling
6.7 Using Analytic Solver Platform
are eitherFkif jobkis scheduled first (k= 1, 2) orF1+2if jobkis scheduled sec- ond. These three distributions also reflect any preceding jobs that have already been scheduled or any jobs scheduled between jobs 1 and 2. As the figure shows, job 1 is stochastically smaller and has a lower due date, per the condition of the theorem. LetTF,ddenote the area of the tail above distributionF(whereF= 1, 2 or 1 + 2) to the right of due dated(whered= 1, 2).TF,dmeasures an expected tardiness; for instance,T1+2,1is the expected tardiness of job 1 if it is sequenced second and is thus subject to the completion time distributionF1+2. We start with the sequence 1-2, assuming the two jobs are adjacent. By an adjacent pair interchange, the tardiness cost of job 1 increases by w1(T1+2,1−T1,1)≥ w1(T1+2,2−T1,2), whereas the tardiness cost of job 2 decreases byw2(T1+2,2− T2,2)≤w2(T1+2,2 −T1,2). But because w2 ≤w1, w2(T1+2,2 −T1,2)≤w1(T1+2,2 − T1,2), so the gain is bounded from above by a lower bound of the loss and the change cannot decrease but may increase the total weighted tardiness.
Now allow additional jobs (which need not be stochastically ordered) between jobs 1 and 2. If we interchange the two jobs, all these intermediary jobs will follow a stochastically larger job so their expected tardiness cannot decrease.
Hence, such jobs cannot provide incentive to perform the interchange either. To show that linear association will not change the result, invoke
Theorem 6.7. □
Corollary 6.3 For linearly associated processing times that are stochastically ordered, if expected processing times and due dates are agreeable for all pairs of jobs, then the expected total tardiness E[T] is minimized by SEPT sequencing with ties broken by EDD (or, equivalently, by EDD with ties broken by SEPT).
Although Theorem 6.8 generalizes one dominance condition subject to a relatively strong assumption, even with this assumption in place, it remains difficult to generalize other deterministic dominance conditions. For example, generalizing Theorem 3.2 requires that a job will not be tardy with probability one. Hence, we are still left with the conclusion that the optimal solution to sto- chastic problems will always take significantly longer to find than the solution to their deterministic counterparts.
Once ASP has been installed, it provides a specialized set of commands on the drop-down menus of its ribbon, as shown in Figure 6.4. We illustrate the use of these capabilities with an example.
∎ Example 6.6 Consider a problem containing n = 5 jobs with stochastic processing times and known due dates. For each job, the processing time follows a lognormal distribution with mean value and standard deviation as given in the table.
Jobj 1 2 3 4 5
E[pj] 2 3 1 6 4
σj 1.4 1.8 0.8 2.4 2.0
dj 12 7 4 10 6
The first step in building a suitable Excel model is to construct the spreadsheet for the deterministic counterpart, as discussed in Section 4.8. The deterministic model is modified slightly, as shown in Figure 6.4, and contains two identical rows. Row 6 (Mean time) and row 8 (Outcome) initially contain the same data –mean processing times for the jobs. Row 7 contains the standard deviations, which would not apply in the deterministic case. However, when we convert to the stochastic model, row 8 holds probabilistic outcomes. In other words, we want the entries in row 8 to behave like lognormal random variables.
To incorporate probabilistic features into the model using ASP, we first place the cursor on cell C8 and select Simulation Model > Distributions > Common >
Figure 6.4 Spreadsheet layout for the deterministic counterpart.
6 Sequencing for Stochastic Scheduling 150
LogNormal. ASP displays a probability distribution function (pdf ), as shown in Figure 6.5, and in the Parameters window on the right, we can specify the mean and standard deviation by referencing cells C6 and C7, respectively. These are relative addresses, so when we copy cell C8 and paste the contents to D8:G8, each of those cells takes the mean and standard deviation from the two cells directly above it. At this stage, for example, cell D8 contains the formula PsiLogNormal(D6,D7). (We could equivalently enter this formula in cell D8 and avoid using the drop-down menu on the ribbon.) Furthermore, the cells in the range C8:G8 then contain the random samples drawn from the lognormal distributions; and from these values, the spreadsheet computes the resulting tardiness in cell H18.
Having incorporated probabilistic descriptions of the inputs, the next step is to define the model output so that ASP can save these values during a simulation run. In the spreadsheet model, we have just one output, the total tardiness, as calculated in cell H18. We place the cursor on H18 and from the ASP ribbon, we select Simulation Model > Results > Statistic > Mean. Then, we select the cell for which to compute the mean (H18) and then the cell where the statistic will be placed (C11). This selection adds the function=PsiMean(H18)in cell C11.
(We could equivalently enter this formula directly in cell C11 and avoid using the drop-down menu on the ribbon.)
ASP allows the user to configure a simulation experiment by choosing several design parameters. The relevant options can be displayed by selecting Options
> Options from the ribbon. (See Figure 6.6.) Most of these options can be left at
Figure 6.5 Lognormal probability distribution function.
6.7 Using Analytic Solver Platform 151
their default values. We usually start by setting the Trials per Simulation param- eter to 1000. The number of trials corresponds to the sample size in sample- based analysis. This figure is the number of times that the model output in cell H18 is recalculated for different random values of the inputs in cells C8:G8. We also usually select the Latin Hypercube method of sampling, as this represents a systematic method of sampling that provides more efficient results than if we used an uncoordinated method for drawing samples.
To execute the simulation run, we select Solve Action > Simulate > Run Once.
This choice causes ASP to sample from each of the input probability distribu- tions, calculate the resulting values for the output cell, and repeat for the num- ber of trials. The status bar at the bottom of the task pane then displays the message, Simulation finished successfully. In this mode, ASP will not automat- ically run the simulation when we make another entry. However, if we select Solve Action > Simulate > Interactive, then ASP is placed in automatic mode, and a new simulation will be executed whenever the spreadsheet is recalculated.
(Automatic mode is indicated when the light bulb in the Simulate icon appears in yellow.)
ASP stores the simulation results for the output cell in the cell itself. By double-clicking on the output cell, we can display the results in various formats.
Figure 6.6 Simulation options in ASP.
6 Sequencing for Stochastic Scheduling 152
Figure 6.7 shows the frequency distribution, or histogram, for the tardiness calculated in cell H18.
When the simulation finishes, cells C8:G8 display the processing times drawn in the last of the 1000 simulated samples. Similarly, cell H18 displays the cor- responding tardiness value. However, we are more interested in the mean value of tardiness because that is the objective function for the stochastic counterpart.
We can obtain the simulated mean by placing the cursor on cell H18, selecting Simulation Model > Results > Statistic > Mean from the ribbon, and then select- ing cell C11, leading to a display similar to that shown in Figure 6.8. (We can also record the mean value on the spreadsheet without using the ribbon by entering the formula=PsiMean(H18)in cell C11.)
The value 23.11 recorded in cell C11 is an estimate of the mean tardiness for the sequence 2-4-5-1-3. This estimate is subject to sampling error, which becomes smaller as the number of trials becomes larger. A standard measure of the precision in this estimate is the confidence interval for the mean. ASP allows this value to be computed along with the estimated mean, but in a dif- ferent cell. To place this value in the spreadsheet, we first make sure that the cursor is on cell H18. Next, from the ribbon, we select Simulation Model >
Results > Statistic > MeanCI and then select cell G11. The formula that appears in G11 is=PsiMeanCI(H18,0.95), meaning that this is half the width of a 95% confidence interval for the mean in cell H18.
As shown in Figure 6.8, the simulation run produces a value of 0.73 for this statistic, indicating that there is a 95% chance that the true mean lies within
±0.73 of the estimated value, 23.11. In this case, the confidence interval is about 3.2% of the estimate (on either side), which may or may not be sufficient
Figure 6.7 Summary of simulation results.
6.7 Using Analytic Solver Platform 153
precision for our purposes. If we repeat the simulation with a sample size of 10 000, the confidence interval drops to 0.24 for an estimated mean of 23.21 (or about 1.0% on either side). If this level of precision is adequate for our purposes, we would keep the sample size set at 10 000.
Having fine-tuned the simulation parameters, we can search for a sequence that minimizes the expected tardiness. Our search tool is the Evolutionary Solver, which we introduced in Chapter 4 and for which we provided a default set of search parameters. In this example, we specify the objective function cell as C11 (the estimated mean tardiness), which we want to minimize. The decision variables appear in row 14, and we impose the requirement that they satisfy the alldifferent constraint. Running the Evolutionary Solver produces the sequence 3-5-2-1-4, with (estimated) mean tardiness of 8.66.
Integrating simulation with the Evolutionary Solver creates a powerful search tool for solving stochastic scheduling problems. We refer to the ASP User’s Guide for additional detail.