Skip to main content
Log in

Optimal Control of Production Processes with Variable Execution Times

  • Published:
Discrete Event Dynamic Systems Aims and scope Submit manuscript

Abstract

The paper deals with the optimal control of production processes characterized by the possibility of performing operations (relevant to the processing of a set of jobs) with variable execution times. A production process relevant to a single machine is addressed first. An optimization problem with a quite general cost function is considered, and some properties of optimal solutions are derived. Then, a particular version of the problem is analyzed, in which the cost function is the weighted sum of the quadratic earliness and tardiness of jobs and of quadratic deviations between pre-defined nominal unitary processing times and the actual ones. The decision variables of the problem are the possible idle times inserted before job executions and the processing times of jobs. This single machine problem is stated as an optimal control problem and a closed-loop solution is derived. Then, a second production process is considered, in which multiple machines serve jobs in parallel, again with variable processing times and with different processing costs. With reference to this second production scheme, a significant decision problem refers to the splitting of jobs over the different machines. Then, on the basis of a sensitivity analysis of the single machine problem solution, some conditions to verify the optimality of a pre-defined splitting are derived. An on-line splitting scheme using such conditions is finally presented.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

References

  • Aicardi M, Giglio D, Minciardi R (2008) Optimal strategies for multiclass job scheduling on a single machine with controllable processing times. IEEE Trans Automat Contr 53(2):479–495

    Article  MathSciNet  Google Scholar 

  • Alidaee B, Ahmadian A (1993) Two parallel machine sequencing problems involving controllable job processing times. Eur J Oper Res 70:335–341

    Article  MATH  Google Scholar 

  • Buzacott JA, Shantikumar JG (1993) Stochastic models of manufacturing systems. Prentice Hall, Englewood Cliffs

    MATH  Google Scholar 

  • Cassandras CG, Lafortune S (1999) Introduction to discrete event systems. Kluwer Academic, Dordrecht

    MATH  Google Scholar 

  • Cassandras CG, Pepyne DL, Wardi Y (1998) Optimal control of systems with time-driven and event-driven dynamics. In: Proceedings of the 37th IEEE international conference on decision and control, pp 7–12

  • Cassandras CG, Pepyne DL, Wardi Y (2001) Optimal control of a class of hybrid systems. IEEE Trans Automat Contr 46(3):398–415

    Article  MATH  MathSciNet  Google Scholar 

  • Di Febbraro A, Minciardi R, Sacone S (2002) Optimal control laws for lot-sizing and timing of jobs on a single production facility. IEEE Trans Automat Contr 47(10):1613–1623

    Article  Google Scholar 

  • French S (1982) Sequencing and scheduling: an introduction to the mathematics of the job-shop. Ellis Horwood, Chichester

    MATH  Google Scholar 

  • Gazarik M, Wardi Y (1998) Optimal release times in a single server: an optimal control perspective. IEEE Trans Automat Contr 43(7):998–1002

    Article  MATH  MathSciNet  Google Scholar 

  • Gershwin SB (1994) Manufacturing systems engineering. Prentice Hall, Englewood Cliffs

    Google Scholar 

  • Gokbayrak K, Selvi O (2007) Constrained optimal hybrid control of a flow shop system. IEEE Trans Automat Contr 52(12):2270–2281

    Article  MathSciNet  Google Scholar 

  • Luenberger DG (1973) Introduction to linear and nonlinear programming. Addison-Wesley, Reading

    MATH  Google Scholar 

  • Mao J, Cassandras CG (2007) Optimal control of two-stage discrete event systems with real-time constraints. Discret Event Dyn Syst 17(4):505–529

    Article  MATH  MathSciNet  Google Scholar 

  • Mao J, Cassandras CG (2009) Optimal admission control of discrete event systems with real-time constraints. Discret Event Dyn Syst. doi:10.1007/s10626-008-0052-5

  • Miao L, Cassandras CG (2005) Optimality of static control policies in some discrete-event systems. IEEE Trans Automat Contr 50(9):1427–1431

    Article  MathSciNet  Google Scholar 

  • Miao L, Cassandras CG (2007) Receding horizon control for a class of discrete-event systems with real-time constraints. IEEE Trans Automat Contr 52(5):825–839

    Article  MathSciNet  Google Scholar 

  • Ng CT, Cheng TCE, Kovalyov MY, Lam SS (2003) Single machine scheduling with a variable common due date and resource-dependent processing times. Comput Oper Res 30:1173–1185

    Article  MATH  MathSciNet  Google Scholar 

  • Panwalkar SS, Rajagopalan R (1992) Single machine scheduling with controllable processing times. Eur J Oper Res 59:298–302

    Article  MATH  Google Scholar 

  • Pepyne DL, Cassandras CG (1998) Modeling, analysis, and optimal control of a class of hybrid systems. Discret Event Dyn Syst 8(2):175–201

    Article  MATH  MathSciNet  Google Scholar 

  • Ramadge PJG, Wonham WM (1987) Supervisory control of a class of discrete event processes. SIAM J Control Optim 25:206–230

    Article  MATH  MathSciNet  Google Scholar 

  • Ramadge PJG, Wonham WM (1989) The control of discrete event systems. Proc IEEE 77(1):81–98

    Article  Google Scholar 

  • Sethi SP, Zhang Q (1994) Hierarchical decision making in stochastic manufaturing systems. Birkhuser, Boston

    Google Scholar 

  • Trick MA (1994) Scheduling multiple variable speed machines. Oper Res 42:234–248

    Article  MATH  Google Scholar 

  • Vickson R (1980) Choosing the job sequence and processing times to minimize total processing plus flow cost on a single machine. Oper Res 28(5):1155–1167

    Article  MATH  MathSciNet  Google Scholar 

  • Yao DD (1994) Stochastic modeling and analysis of manufacturing systems. Springer, New York

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Silvia Siri.

Appendix

Appendix

The determination of the sensitivity coefficients of the single machine cost with respect to the lot-sizes L N − 1,k of the sub-jobs J N,k , k = 1, ..., K, in which the newly arrived job Υ N has been split, is reported in the following. As described in Section 3, such coefficients are used for deriving necessary conditions for the optimality of a splitting of a job over several machines.

Let us assume that lot-sizes L N − 1,k , k = 1, ..., K, are greater than zero and to have optimally solved Problem 2 for all machines M k , k = 1, ..., K. Then, the optimal value of the cost relevant to M k , namely \({{\mathcal C}}_{k}^{\circ}\), k ∈ { 1, ..., K }, can be expressed as in Eq. 56 or Eq. 57. As the generic single machine is considered, the index k will be omitted from now on, for the sake of clarity. Moreover, for the sake of brevity, notation \(\displaystyle\frac{\partial {\mathcal{C}}^{\circ}}{\partial L_{N-1}}\) will be used instead of \(\displaystyle \left. \frac{\partial {\mathcal{C}}^{\circ}}{\partial L_{N-1}} \right |_{\overline{L}_{N-1}}\), and similarly for analogous cases.

The sensitivity coefficients (i.e., the derivative) of the optimal cost \({\mathcal C}^{\circ}\) with respect to the lot-size of the newly arrived job can be computed by deriving Eq. 56 or Eq. 57 with respect to L N − 1. Then, owing to the decoupling conditions between each pair of busy blocks, the only nonzero term in the derivative of the r.h.s. summation of Eq. 56 or Eq. 57 is that corresponding to the last block, i.e., \(\left (J_{\nu_s+1}, \ldots,J_N \right )\). By means of straightforward manipulations, it is possible to compute the necessary derivative as

$$\begin{array}{lll} \frac{\partial {\mathcal{C}}^{\circ}}{\partial L_{N-1}} &=& \Bigg\{ \frac{1}{4} \cdot \frac{\big( 2 \alpha_{\nu_s+1} L_{\nu_s} dd_{\nu_s+1} - \tilde{\beta}_2^{\nu_s+1} \big)}{\big( \alpha_{\nu_s+1} L_{\nu_s} + \tilde{\beta}_1^{\nu_s+1} \big)^2} \cdot \bigg[ 2 \big( \alpha_{\nu_s+1} L_{\nu_s} + \tilde{\beta}_1^{\nu_s+1} \big) \frac{\partial \tilde{\beta}_2^{\nu_s+1}}{\partial L_{N-1}}+ \notag\\ && +\, 2 \big( \alpha_{\nu_s+1} L_{\nu_s} dd_{\nu_s+1} - \tilde{\beta}_2^{\nu_s+1} \big) \frac{\partial \tilde{\beta}_1^{\nu_s+1}}{\partial L_{N-1}} \bigg] + \frac{\partial \tilde{\beta}_3^{\nu_s+1}}{\partial L_{N-1}} \Bigg\} \big( 1 - \tau(s, w_0^{\circ}) \big)+ \\ &&+\, \frac{\partial \tilde{\beta}_3^{0}}{\partial L_{N-1}} \tau(s, w_0^{\circ}) \end{array}$$
(69)

where \(\tau(s, w_0^{\circ})\) is equal to 1 only when \(w_0^{\circ} = 0\) and s = 0 (i.e., there is a unique busy block, and no idle time before it, in the optimal solution).

The determination of the sensitivity coefficient given by Eq. 69 requires the knowledge of the parameters affecting the statement of Problem 2, the values characterizing the optimal solution, namely \(\tilde{\beta}^{\nu_{s}+1}_{1}\), \(\tilde{\beta}^{\nu_{s}+1}_{2}\), and \(\tilde{\beta}^{\nu_{s}+1}_{3}\), as well as the computation of coefficients \(\displaystyle\frac{\partial\tilde{\beta}_1^{\nu_s+1}}{\partial L_{N-1}}\), \(\displaystyle\frac{\partial\tilde{\beta}_2^{\nu_s+1}}{\partial L_{N-1}}\), \(\displaystyle\frac{\partial\tilde{\beta}_3^{\nu_s+1}}{\partial L_{N-1}}\), and possibly \(\displaystyle\frac{\partial\tilde{\beta}_3^{0}}{\partial L_{N-1}}\). The computation of such coefficients may be accomplished by taking into account Theorem 2, and by referring to the last busy block. More specifically, by using Eqs. 50, 51, and 52 in connection with the last (and possibly unique) busy block, one has

$$ \left\{ \begin{array}{l} \displaystyle{\frac{\partial\beta_{1,1}^{N-1}}{\partial L_{N-1}}=3\alpha_{N}L_{N-1}^2+\gamma_{N-1}}\\ \displaystyle{\frac{\partial\beta_{2,2}^{N-1}}{\partial L_{N-1}}=\alpha_{N}}\\ \displaystyle{\frac{\partial\beta_{1,2}^{N-1}}{\partial L_{N-1}}=4\alpha_{N}L_{N-1}}\\ \displaystyle{\frac{\partial\beta_{1,0}^{N-1}}{\partial L_{N-1}}=-4\alpha_{N}L_{N-1} dd_N-2\gamma_{N-1} p_{N-1}^*}\\ \displaystyle{\frac{\partial\beta_{2,0}^{N-1}}{\partial L_{N-1}}=-2\alpha_{N}dd_{N}}\\ \displaystyle{\frac{\partial\beta_{0,0}^{N-1}}{\partial L_{N-1}}=\alpha_{N}dd_{N}^2+\gamma_{N-1}\left(p_{N-1}^*\right)^2}\\ \end{array}\right.$$
(70)

and

$$ \left\{ \begin{array}{l} \displaystyle{\frac{\partial\beta_{1,1}^{i}}{\partial L_{N-1}}=L_{i}^2\frac{\partial\tilde{\beta}_1^{i+1}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\beta_{2,2}^{i}}{\partial L_{N-1}}=\frac{\partial\tilde{\beta}_1^{i+1}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\beta_{1,2}^{i}}{\partial L_{N-1}}=2L_{i}\frac{\partial\tilde{\beta}_1^{i+1}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\beta_{1,0}^{i}}{\partial L_{N-1}}=L_{i} \frac{\partial\tilde{\beta}_2^{i+1}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\beta_{2,0}^{i}}{\partial L_{N-1}}=\frac{\partial\tilde{\beta}_2^{i+1}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\beta_{0,0}^{i}}{\partial L_{N-1}}=\frac{\partial\tilde{\beta}_3^{i+1}}{\partial L_{N-1}}}\\ \end{array} \right. \qquad i = \nu_s, \ldots, N-2 $$
(71)

where the derivatives appearing in the r.h.s. of Eqs. 71 are obtained through

$$ \left\{ \begin{array}{l} \displaystyle \frac{\partial \tilde{\beta}_1^{i}}{\partial L_{N-1}} = \frac{\partial \beta_{2,2}^{i}}{\partial L_{N-1}} - \frac{\displaystyle 2 \beta_{1,2}^{i} \frac{\partial \beta_{1,2}^{i}}{\partial L_{N-1}} \beta_{1,1}^{i} - \big( \beta_{1,2}^{i} \big)^2 \frac{\partial \beta_{1,1}^{i}}{\partial L_{N-1}}}{4 \big( \beta_{1,1}^{i} \big)^2}\\ \displaystyle \frac{\partial \tilde{\beta}_2^{i}}{\partial L_{N-1}} = \frac{\partial \beta_{2,0}^{i}}{\partial L_{N-1}} - \frac{\displaystyle \beta_{1,1}^{i} \Bigg[ \beta_{1,2}^{i} \frac{\partial \beta_{1,0}^{i}}{\partial L_{N-1}} - \beta_{1,0}^{i} \frac{\partial \beta_{1,2}^{i}}{\partial L_{N-1}} \Bigg] - \beta_{1,0}^{i} \beta_{1,2}^{i} \frac{\partial \beta_{1,1}^{i}}{\partial L_{N-1}}}{2 \big( \beta_{1,1}^{i} \big)^2}\\ \displaystyle \frac{\partial \tilde{\beta}_3^{i}}{\partial L_{N-1}} = \frac{\partial \beta_{0,0}^{i}}{\partial L_{N-1}} - \frac{\displaystyle 2 \beta_{1,0}^{i} \frac{\partial \beta_{1,0}^{i}}{\partial L_{N-1}} \beta_{1,1}^{i} - \big( \beta_{1,0}^{i} \big)^2 \frac{\partial \beta_{1,1}^{i}}{\partial L_{N-1}}}{4 \big( \beta_{1,1}^{i} \big)^2}\\ \end{array} \right. $$
(72)

for any i = ν s , ..., N − 1, such that \(p_{i}^{\circ} > p_{i}^{\textsc{min}}\), with \(\beta_{1,2}^{i}\), \(\beta_{1,1}^{i}\), \(\beta_{1,0}^{i}\), i = ν s , ..., N − 1, determined through the backward procedure of step 2 in Theorem 2, and

$$ \left\{ \begin{array}{l} \displaystyle{\frac{\partial\tilde{\beta}_1^{i}}{\partial L_{N-1}}=\frac{\partial\beta_{2,2}^{i}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\tilde{\beta}_2^{i}}{\partial L_{N-1}}=p_{i}^{\textsc{min}}\frac{\partial\beta_{1,2}^{i}}{\partial L_{N-1}} + \frac{\partial\beta_{2,0}^{i}}{\partial L_{N-1}}}\\ \displaystyle{\frac{\partial\tilde{\beta}_3^{i}}{\partial L_{N-1}}=\left (p_{i}^{\textsc{min}} \right )^2 \frac{\partial\beta_{1,1}^{i}}{\partial L_{N-1}}+p_{i}^{\textsc{min}}\frac{\partial\beta_{1,0}^{i}}{\partial L_{N-1}} + \frac{\partial\beta_{0,0}^{i}}{\partial L_{N-1}}}\\ \end{array}\right. $$
(73)

for any i = ν s , ..., N − 1 such that \(p_{i}^{\circ} = p_{i}^{\textsc{min}}\).

Finally, as regards the coefficient \(\displaystyle\frac{\partial\tilde{\beta}_3^{0}}{\partial L_{N-1}}\) appearing in the r.h.s. of Eq. 69, its determination is required only when \(w_0^{\circ} = 0\) and s = 0, i.e., there is a unique busy block in the optimal solution of Problem 2, with no preceding idle time. In this case ν s  = 0, and, thus, the sensitivity coefficient \(\displaystyle\frac{\partial\tilde{\beta}_3^{0}}{\partial L_{N-1}}\) is just one of the coefficients determined via the joint backward recursion of Eqs. 70, 71, 72, and 73.

Besides, it is worth noting that the above way of computing the sensitivity coefficient \(\displaystyle\frac{\partial {\mathcal C}^{\circ}}{\partial L_{N-1}}\) can be applied even when L N − 1 is equal to zero. In this case, the sensitivity coefficient may be viewed as a right derivative \(\displaystyle \left. \frac{\partial {\mathcal C}^{\circ}}{\partial L_{N-1}} \right|_{0^+}\).

The above considerations may be summarized as follows. Once determined the optimal solution of Problem 2, as indicated by Theorem 2, it is possible to analytically determine the sensitivity coefficients of the optimal cost value \({\mathcal C}^{\circ}\) with respect to one of the parameters, namely L N − 1, characterizing the statement of the problem. In fact, \(\displaystyle\frac{\partial {\mathcal C}^{\circ}}{\partial L_{N-1}}\) can be determined by means of the following procedure.

Procedure 2

  1. 1.

    Apply the joint backward recursion of Eqs. 70, 71, 72 and 73 , thus obtaining all coefficients \(\displaystyle\frac{\partial\tilde{\beta}_1^{i}}{\partial L_{N-1}}\) , \(\displaystyle\frac{\partial\tilde{\beta}_2^{i}}{\partial L_{N-1}}\) , and \(\displaystyle\frac{\partial\tilde{\beta}_3^{i}}{\partial L_{N-1}}\) , i = N − 1,...,ν s , which also include coefficient \(\displaystyle\frac{\partial\tilde{\beta}_3^{0}}{\partial L_{N-1}}\) when s = 0.

  2. 2.

    Determine the sensitivity coefficient \(\displaystyle\frac{\partial {\mathcal C}^{\circ}}{\partial L_{N-1}}\) through Eq.  69.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Giglio, D., Minciardi, R., Sacone, S. et al. Optimal Control of Production Processes with Variable Execution Times. Discrete Event Dyn Syst 19, 423–448 (2009). https://doi.org/10.1007/s10626-009-0063-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10626-009-0063-x

Keywords

Navigation