Keywords

1 Introduction

Uncertainty occurs in many production processes and has a direct impact on their smooth execution. For instance it is important in construction domain to deliver goods with no delays, but it is not easy to meet this requirement as the transportation time depends on many external factors like weather conditions, traffic jams, driver’s condition and many others. Moreover, effective solving practical problems and taking the best approach requires also thorough knowledge of the process or production system and values of all parameters. For example an uncertain data of the duration of activities (operations) can be measured and in result: approximated as deterministic ones in case the variance is small enough, modeled by an appropriate probabilistic distribution or determined the membership function for the fuzzy representation. So, as in practice it is difficult to clearly determine the process parameters, quite often safe ones are taken (e.g. assume longer transportation time) what is an opportunity for further improvements.

Research on scheduling problems carried out for many years is related primarily to deterministic models where the key assumption is that parameters are well defined. For those, mostly belonging to the class of strongly NP-hard problems, a number of very effective approximate algorithms have been developed. Solutions determined by these algorithms are very often only slightly worse from the optimal ones. In practice, however, as already mentioned, some parameters (e.g. operation times) may differ during the process execution from the initially assumed values. This can cause that the actual cost of execution is much bigger than expected what leads to either losing optimality or even acceptability (feasibility) of solutions.

In order to close that gap in recent years more and more research has been conducted on developing methods which find more robust solution resistant to data disturbance. Uncertain parameters are usually represented by random variables or fuzzy numbers and extensive review of methods and algorithms for solving optimization problems with random parameters is presented by Vondrák in monograph [12] and newer of Shang et al. [9], Soroush [10], Xiaoqiang et al. [14], Urgo and Vancza [11], Zhang et al. [15] and Bożejko et al. [2, 4] and [6].

In this paper we consider a single machine scheduling problem with due dates in two variants where either job execution times or due dates are represented by independent variables with normal distribution. We also present some properties of the problem (so-called block elimination properties) accelerating the review of neighborhoods in local search algorithms. The main goal is to compare the robustness of the block-based tabu search algorithm in the classic and the proposed random model and show the superiority of the latter one.

2 Deterministic Scheduling Problem

Let \(\mathcal {J} = \{1,2,\ldots ,n\}\) be a set of jobs to be executed on a single machine. At any given moment a machine can execute exactly one job and all jobs must be executed without preemption. For each task \(i \in \mathcal {J}\) let \(p_i\) be a processing time, \(d_i\) be a due date and \(w_i\) be a cost for tardy jobs.

Every sequence of jobs execution can be presented as a permutation \(\pi = (\pi (1), \pi (2), \ldots , \pi (n))\) of items from the set \(\mathcal {J}\).

Let \(\varPi \) be the set of all permutations of the set \({\mathcal J}\). For every permutation \(\pi \in \varPi \) we define

$$ C_{\pi (i)} = \sum _{j=1}^i p_{\pi (j)} $$

as a completion time of a job \(\pi (i)\).

The cost of jobs’ execution determined by the permutation \(\pi \) is as follows

$$\begin{aligned} \sum \limits _{i = 1}^n {w_{\pi (i)} U_{\pi (i)}.} \end{aligned}$$
(1)

where

$$ U_{\pi (i)} = {\left\{ \begin{array}{ll} 0 &{} \mathrm{for }\quad C_{\pi (i)} \leqslant d_{\pi (i)}, \\ 1 &{} \mathrm{for }\quad C_{\pi (i)} > d_{\pi (i)}. \\ \end{array}\right. } $$

We consider the optimization problem where the goal is to find a permutation \(\pi ^*\in \varPi \) which minimizes the cost of jobs’ execution:

$$ W(\pi ^*) = \min _{\pi \in \varPi } \left( \sum _{i=1}^n w_{\pi (i)} U_{\pi (i)} \right) . $$

3 Probabilistic Jobs Times

In order to simplify the further considerations we assume w.l.o.g. that at any moment the considered solution is the natural permutation, i.e. \(\pi = (1,2,\ldots ,n)\). Moreover, if X is a random variable, then \(F_X\) denotes its cumulative distribution function.

In this section we consider a TWT problem with uncertain parameters. We investigate two variants: (a) uncertain processing times and (b) uncertain due dates.

3.1 Random Processing Times

Random processing times are represented by random variables with the normal distribution \(\tilde{p}_i \sim N(p_i, c \cdot p_i)\)), \(i\in \mathcal {J}\). Other parameters, i.e. due dates \(d_i\) and costs \(w_i\) are deterministic. Then completion times \(\tilde{C}_i\) are random variables:

$$\begin{aligned} \tilde{C}_i\sim N\left( p_1+p_2 \ldots +p_i, c \cdot \sqrt{p_1^2+\ldots +p_i^2} \right) \end{aligned}$$
(2)

and delays are random variables

$$\begin{aligned} \tilde{U}_i= {\left\{ \begin{array}{ll} 0 &{} \mathrm{dla }\quad \tilde{C}_i\leqslant d_{i}, \\ 1 &{} \mathrm{dla }\quad \tilde{C}_i> d_{i}. \end{array}\right. } \end{aligned}$$
(3)

For each permutation \(\pi \in \varPi \) the cost in the deterministic model is defined as \(W(\pi ) = \sum _{i=1}^n w_{\pi (i)} U_{\pi (i)}\) (see (1)). A corresponding cost in the random model is defined as the following random variable:

$$\begin{aligned} \widetilde{W}(\pi ) = \sum _ {i = 1} ^ n w_i \tilde{U}_i. \end{aligned}$$
(4)

In order to compare the costs of permutations from the set \(\varPi \) we introduce the following comparison function to calculate the value:

$$\begin{aligned} \mathcal {W}(\pi ) = w_i E(\tilde{U}_i) \end{aligned}$$
(5)

where \(E(\tilde{U}_i)\) is the expected value of the random variable \(\tilde{U}_i\).

3.2 Random Due Dates

Random due dates are represented by random variables with the normal distribution \(\tilde{d}_i \sim N(d_i, c \cdot d_i)\)), \(i\in \mathcal {J}.\) Other parameters, i.e. processing times \(p_i\) and costs \(w_i\) are deterministic. Delay indication is a random variable

$$\begin{aligned} \tilde{U}_i= {\left\{ \begin{array}{ll} 0 &{} \mathrm{dla }\quad C_i \leqslant \tilde{d}_i, \\ 1 &{} \mathrm{dla }\quad C_i > \tilde{d}_i. \end{array}\right. } \end{aligned}$$
(6)

In this variant of the problem we apply the comparison function (5) defined in the previous section.

The TWT problem in both variants (i.e. with random processing times and random due dates) is to find a permutation for which the comparison function (5) is minimal in the set \(\varPi \). We denote the probabilistic version of the problem as TWTP. As the deterministic version, the problem belongs to the class of NP-hard problems.

4 Blocks in Random Model

4.1 Random Processing Times and Due Dates

Each permutation \(\pi \in \varPi \) is decomposed into m (\(m \leqslant n\)) subpermutations \(\widetilde{B}_1,\ldots ,\widetilde{B}_m\), called random blocks for \(\pi \), which satisfy the following criteria:

  1. 1.

    \(\widetilde{B}_k = (s_k, s_k+1, \ldots , l_k-1, l_k)\), \(l_{k-1}+1 = s_k \leqslant l_k\), \(k=1,\ldots ,m\), \(l_0=0\), \(l_m=n\).

  2. 2.

    All jobs \(j \in B_k\) satisfy either the condition

    $$\begin{aligned} P( \tilde{d}_j\geqslant \widetilde{C}_{l_k} ) \geqslant 1-\epsilon \end{aligned}$$
    (7)

    or the condition

    $$\begin{aligned} P( \tilde{d}_j\leqslant \widetilde{S}_{s_k}+\tilde{p}_j ) \geqslant 1-\epsilon . \end{aligned}$$
    (8)
  3. 3.

    \(\widetilde{B}_k\) is maximal subsequence of \(\pi \) where all the jobs satisfy either (7) or (8).

We distinguish two types of blocks:

  • E-Random Blocks, denoted as \(\widetilde{B}_k^E\), the ones satisfying condition (7),

  • T-Random Blocks, denoted as \(\widetilde{B}_k^T\), the ones satisfying condition (8).

Theorem 1

Let \(\pi \) be a permutation with a distinguished random block \(\widetilde{B}\), i.e. \(\pi = (1,2,...,s_k,s_k+1,\ldots ,l_k-1,l_k,\ldots ,n)\) where \(A = (1,\ldots ,s_k-1)\), \(B = (s_k,\ldots ,l_k)\) and \(C = (l_k+1,\ldots ,n)\). Estimated value of comparison function can be calculated as follows:

$$\begin{aligned} W_{ABC}= & {} W_A + W_B + W_C \\= & {} \sum _{i=1}^{s_k-1} w_i E(\tilde{U}_i) + \sum _{i=s_k}^{l_k} w_i E(\tilde{U}_i) + \sum _{i=l_k+1}^{n} w_i E(\tilde{U}_i) \\= & {} \sum _{i \in \pi } w_i E(\tilde{U}_i). \end{aligned}$$

Now let \({\mathcal B}\) be a set of all permutations of \(B= (s_k,\ldots ,l_k)\) and for each \(B' \in {\mathcal B}\) we define \(W_{AB'C} = W_A + W_B' + W_C\) in the same way as \(W_{ABC}\).

Then we have the following

  1. a)

    if B is a random E-block, then for each \(B' \in {\mathcal B}\) \(W_B' \leqslant \sum _{i=s_k}^{l_k} w_i \cdot \epsilon \),

  2. b)

    if B is a random T-block, then for each \(B' \in {\mathcal B}\) \(W_B' \geqslant \sum _{i=s_k}^{l_k} w_i \cdot (1-\epsilon )\)

what in result gives as that for each \(B' \in {\mathcal B}\) there is a fixed upper bound for \(W_{AB'C}\).

Proof

Let’s consider the following 2 cases.

  • A. B is random E-block. Then we have:

    $$ W_B = \sum _{i=s_k}^{l_k} w_i E(\tilde{U}_i) = \sum _{i=s_k}^{l_k} w_i P(\tilde{C}_i> \tilde{d}_i) = \sum _{i=s_k}^{l_k} w_i (1 - P(\tilde{C}_i\leqslant \tilde{d}_i)). $$

    Applying our assumption that B fulfills (7) (i.e. B is a random E-block) as well as by definition of \(\tilde{C}_i\) and the problem formulation where every realization of \(\tilde{C}_i\) will be less or equal than realization of \(\widetilde{C}_{l_k}\) we obtain that

    $$ P(\tilde{C}_i\leqslant \tilde{d}_i) \leqslant P(\widetilde{C}_{l_k} \leqslant \tilde{d}_i) $$

    for all \(i \in \widetilde{B}_k\). Having that we can proceed as follows:

    $$\begin{aligned} W_B= & {} \sum _{i=s_k}^{l_k} w_i (1 - P(\widetilde{C}_{l_k} \leqslant d_i)) \leqslant \sum _{i=s_k}^{l_k} w_i (1-1+\epsilon ) = \sum _{i=s_k}^{l_k} w_i \cdot \epsilon \end{aligned}$$

    what leads us to the conclusion that for each permutation \(B' \in {\mathcal B}\) we have

    $$W_B' \leqslant \sum _{i=s_k}^{l_k} w_i \cdot \epsilon .$$
  • B. B is random T-block. Then we have:

    $$ W_B = \sum _{i=s_k}^{l_k} w_i E(\tilde{U}_i) = \sum _{i=s_k}^{l_k} w_i P(\tilde{C}_i> \tilde{d}_i). $$

    By definition of \(S_{s_k}\) and \(\tilde{C}_i\) (\(i \in B\)) we can easily observe the following:

    $$ \tilde{C}_i= \widetilde{S}_{s_k}+\tilde{p}_{s_k}+\tilde{p}_{s_k+1}+\tilde{p}_{s_k+2}+\ldots +\tilde{p}_{i} \geqslant \widetilde{S}_{s_k} + \tilde{p}_{i}. $$

    Having that and applying our assumption that B fulfills (8) (i.e. B is a random T-block) we obtain that

    $$ P( \tilde{d}_i< \tilde{C}_i) \geqslant P( \tilde{d}_i< S_k+p_{i} ) \geqslant 1-\epsilon $$

    what implies that

    $$ P( \tilde{d}_i< \tilde{C}_i) \geqslant 1-\epsilon $$

    for all \(i \in \widetilde{B}_k\). Having that we can proceed as follows:

    $$\begin{aligned} W_B= & {} \sum _{i=s_k}^{l_k} w_i P(\tilde{C}_i> \tilde{d}_i) \geqslant \sum _{i=s_k}^{l_k} w_i (1-\epsilon ) \end{aligned}$$

    what leads us to the conclusion that for each permutation \(B' \in {\mathcal B}\) we have

    $$W_B' \geqslant \sum _{i=s_k}^{l_k} w_i \cdot (1-\epsilon ).$$

    That concludes the proof.

The above theorem also holds in case where we consider only random processing times or only random due dates and each case the proof is analogous.

4.2 Improving Robustness by Applying the Derived Theorem

It is easy to show the following. For the variant with random processing times \(\tilde{p}_i\) we have:

$$ E(\widetilde{U}_{\pi (i)}) = P(\widetilde{C}_{\pi (i)} > d_{\pi (i)}) = 1-F_{\widetilde{C}_{\pi (i)}}(d_{\pi (i)}). $$

and for the variant with random due dates \(\tilde{d}_i\) we have:

$$ E(\widetilde{U}_{\pi (i)}) = P(C_{\pi (i)} > \widetilde{d}_{\pi (i)}) = F_{\widetilde{d}_{\pi (i)}}(C_{\pi (i)}). $$

Combining the above with assumptions expressed in (7) and (8) and adapted to respective variants, we apply the following rules to modify the base tabu search method. For the variant with random processing times \(\tilde{p}_i\):

  1. a)

    if B is a random E-block, then \(W_B = \sum _{i=s_k}^{l_k} w_i \cdot (1-F_{\widetilde{C}_{\pi (i)}}(d_{\pi (i)}))\),

  2. b)

    if B is a random T-block, then \(W_B = \sum _{i=s_k}^{l_k} w_i \cdot F_{\widetilde{C}_{\pi (i)}}(d_{\pi (i)})\).

For the variant with random due dates \(\tilde{d}_i\):

  1. a)

    if B is a random E-block, then \(W_B = \sum _{i=s_k}^{l_k} w_i \cdot F_{\widetilde{d}_{\pi (i)}}(C_{\pi (i)})\),

  2. b)

    if B is a random T-block, then \(W_B = \sum _{i=s_k}^{l_k} w_i \cdot (1-F_{\widetilde{d}_{\pi (i)}}(C_{\pi (i)}))\).

5 Computational Experiments

In this section we present the results of the robustness property comparison between the tabu search method with blocks and the tabu search method with blocks and theorem applied in a way described in Sect. 4. All tests are executed with a modified version of tabu search method described in [1]. The algorithm has been configured with the following parameters: \(\pi = (1,2,\ldots ,n)\) is an initial permutation, n is the length of tabu list and n is the number of algorithm iterations where n is the tasks number.

Both methods have been tested on instances from OR-Library ([8]) where there are 125 examples for \(n=40\), 50 and 100 (in total 375 examples). For each example and each parameter \(c=0.02\), 0.04, 0.06 and 0.08 (expressing 4 levels of data disturbance) 100 randomly disturbed instances were generated according to the normal distribution defined in Sect. 3.1 (in total 400 disturbed instances per example). The full description of the method for disturbed data generation can be found in [5].

All the presented results in this section are calculated as the relative coefficient according to the following formula:

$$\begin{aligned} \delta = \frac{W-W^*}{W^*} \cdot 100\% \end{aligned}$$
(9)

which expresses by what percentage the investigated solution W is worse than the reference (best known) solution \(W^*\). Details of calculating robustness of the investigated methods can also be found in [5].

An algorithm without applied theorem we denote by \({\mathcal A}{\mathcal D}\) and the one with applied theorem by \({\mathcal A}{\mathcal P}\).

5.1 Results

In Tables 1 and 2 we present a complete summary of the computational experiments results. Values from columns \({\mathcal A}{\mathcal D}\) and \({\mathcal A}{\mathcal P}\) in both tables represent a relative distance between solutions established by a respective algorithm and the best known solution. The distance is based on (9) and it is an average of all solutions calculated for the disturbed data on a respective disturbance level expressed by the parameter c. Value from column IF (what stands for improvement factor) expresses the relative distance (also based on (9)) between the results obtained by \({\mathcal A}{\mathcal D}\) and the results obtained by \({\mathcal A}{\mathcal P}\).

Table 1. Relative distance between robustness coefficient of algorithm \({\mathcal A}{\mathcal D}\) (or respectively \({\mathcal A}{\mathcal P}\)) and the reference value for random \(p_i\) on different disturbance levels (0.02–0.08)
Table 2. Relative distance between robustness coefficient of algorithm \({\mathcal A}{\mathcal D}\) (or respectively \({\mathcal A}{\mathcal P}\)) and the reference value for random \(d_i\) on different disturbance levels (0.02–0.08)

We can easily observe that applying the theorem into the method improves results very significantly for all the investigated cases. We can also observe that robustness coefficients for random \(d_i\) are generally worse than ones for random \(p_i\) what can be explained by the fact that for random \(d_i\) there are more fluctuations in disturbed data than for random \(p_i\) what is implied by the disturbed data generation method. The other observation is related to the results on different disturbance levels (parameter c). With the bigger value of c we might expect the worse robustness coefficient. Surprisingly, we can observe a difference between results for random \(p_i\) and random \(d_i\). For random \(p_i\) the rule generally works both for \({\mathcal A}{\mathcal D}\) and \({\mathcal A}{\mathcal P}\), only for \({\mathcal A}{\mathcal P}\) there is a swap between \(c=0.02\) and \(c=0.04\) for \(N=40\) and a swap between \(c=0.04\) and \(c=0.06\) for \(N=50\), nevertheless those values are all very close to each other, so those swaps are actually meaningless. For \(d_i\) the situation is different. The rule still works for \({\mathcal A}{\mathcal P}\), but for \({\mathcal A}{\mathcal D}\) we are not able to observe any trend. That can be considered as an advantage of \({\mathcal A}{\mathcal P}\) as it behaves in a more predictive and stable way than \({\mathcal A}{\mathcal D}\) does.

Fig. 1.
figure 1

Comparison of the robustness level with reference to the main methods for random \(p_i\)

Fig. 2.
figure 2

Comparison of the robustness level with reference to the main methods for random \(d_i\)

It is also worth noting the difference of trends for random \(p_i\) and random \(d_i\) of the comparison between \({\mathcal A}{\mathcal D}\) and \({\mathcal A}{\mathcal P}\) (column IF) on different disturbance levels which are visualized on Figs. 1 and 2. While for random \(p_i\) we can see that with the increase of the parameter c the gap between \({\mathcal A}{\mathcal D}\) and \({\mathcal A}{\mathcal P}\) is also increasing, for random \(d_i\) we can observe exactly the opposite. On the other hand the order of magnitude of improvement factor (IF) is the same for both random \(p_i\) and random \(d_i\) what shows that the level of improvement introduced by the presented Theorem works similarly in both considered scenarios.

5.2 Parallelization Consideration

The tabu search method is well paralleling. According to the classification proposed by Voß [13], four models of the parallel tabu search method can be considered: SSSS (Single Starting point Single Strategy), SSMS (Single Starting point Multiple Strategies), MSSS (Multiple Starting point Single Strategy), MSMS (Multiple Starting point Multiple Strategies). They refer to the classic classification of Flynn’s parallel architectures [7]. In the version proposed in this paper where block approach is applied it is natural to use MSSS or MSMS diversification strategies, because the block mechanism is quite easily parallelized (each block can be considered separately [3]). The use of ‘tree’ strategies using the same start solution is also possible provided the fact that the process of searching the solution space at a later stage is diversified (e.g. by using different tabu length for individual threads or through a mechanism of dynamic tabu list length change [1]).

6 Conclusions

In the paper we considered a single machine tabu search method with block approach in an uncertain environment modeled by random variables with the normal distribution. We proposed a theorem which allows to modify the base tabu search method in a way which improves the robustness of calculated solutions. Computational experiments conducted on disturbed data confirmed substantial predominant of the method after applying the proposed theorem.