Skip to main content
Log in

Simulation-based optimal production planning model using dynamic lead time estimation

  • ORIGINAL ARTICLE
  • Published:
The International Journal of Advanced Manufacturing Technology Aims and scope Submit manuscript

Abstract

Production planning and scheduling models for the semiconductor fabrication manufacturing are suggested in various types according to the objectives and factors taken into consideration. The lead time is one of the important factors in production planning, but there does not exist a simple way to describe and include it in the model. In this paper, the clearing time method is suggested to model the lead time in the fabrication process of the semiconductor manufacturing, so that the dynamically changing environment on the lead time and work in process (WIP) status are considered. It is shown through the experimental computation that the suggested model yields the accurate description on the lead time on the planning model, and the appropriate planning model with good results for the important performance measures in the semiconductor manufacturing.

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.

Similar content being viewed by others

References

  1. Orcun S, Uzsoy R, Kempf K (2006) Using system dynamics simulations to compare capacity models for production planning. Proceeding of the 2006 Winter Simulation Conference, pp 1855–1862

  2. Billington PJ, McClain JO, Thomas LJ (1983) Mathematical programming approaches to capacity-constrained MRP system: review, formulation and problem reduction. Manag Sci 29:1126–1141

    Article  MATH  Google Scholar 

  3. Heckman ST, Leachman RC (1989) A general framework for modeling production. Manag Sci 35:478–495

    Article  Google Scholar 

  4. Hung YF, Leachman RC (1996) A production planning methodology for semiconductor manufacturing based on iterative simulation and linear programming calculations. IEEE Trans Semicond Manuf 9:257–269

    Article  Google Scholar 

  5. Bang JY, Kim YD (2010) Hierarchical production planning for semiconductor wafer fabrication based on linear programming and discrete-event simulation. IEEE Trans Autom Sci Eng 7:326–336

    Article  Google Scholar 

  6. Little JDC (1961) A proof for the queuing formula: L = λW. Oper Res 9:383–387

    Article  MATH  MathSciNet  Google Scholar 

  7. Graves SC (1986) A tactical planning model for a job shop. Oper Res 34:522–533

    Article  MATH  Google Scholar 

  8. Lee YH, Kim T (2002) Manufacturing cycle time reduction using balance control in the semiconductor fabrication line. Prod Plan Control 13:529–540

    Article  Google Scholar 

  9. Asmundsson J, Rardin RL, Uzsoy R (2006) Tractable nonlinear production planning models for semiconductor wafer fabrication facilities. IEEE Trans Semicond Manuf 19:95–111

    Article  Google Scholar 

  10. Lee B, Lee YH, Yang T, Ignisio J (2008) A due-date based production control policy using WIP balance for implementation in semiconductor fabrications. Int J Prod Res 46:5515–5529

    Article  MATH  Google Scholar 

  11. Gabbay H (1979) Multi-stage production planning. Manag Sci 25:1138–1148

    Article  MATH  MathSciNet  Google Scholar 

  12. Lee YH, Kim JW (2011) Daily stepper scheduling rule in the semiconductor manufacturing for MTO products. Int J Adv Manuf Technol 54:323–336

    Article  Google Scholar 

  13. Axsäter S (1986) On the feasibility of aggregate production plans. Oper Res 34:796–800

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Young Hoon Lee.

Appendix: Procedure of plan-based adaptive dispatching algorithm

Appendix: Procedure of plan-based adaptive dispatching algorithm

1.1 Plan-based adaptive dispatching algorithm

  1. Step 1:

    Initialization

    1. Step 1.1:

      SubK = ∅ and SubE = ∅

    2. Step 1.2:

      For (i = 0; i < I; i++, j = 0; j < J; j++, k = 0; k < K; k++)

      $$ \mathrm{AS}\kern0.5em \left( i, j, k\right)\kern0.5em =\kern0.5em 0 $$
  2. Step 2:

    Checking to verify the equipment is available

    1. Step 2.1

      For (k = 0; k < K; k++)

      If P (k) = 0 and NDE (k) ≥ 1 and Assign (k) = 0

      Then

      Add the k into SubK

  3. Step 3:

    Setting the AS (i, j, k) = 1

    1. Step 3.1

      For (i = 0; i < I; i++, j = 0; j < J; j++, k = 0; k < K; k++)

      If M (i, j, k) = 1 and Queue (i, j) ≥ 1 and k ∈ SubK and TCP (i, j, k) − CPA (i, j, k) > 0

      Then

      $$ AS\left( i, j, k\right)=1 $$
    2. Step 3.2

      If \( {\displaystyle \sum_{i, j, k}}\mathrm{AS}\kern0.5em \left( i, j, k\right)\kern0.5em =\kern0.5em 0 \)

      Then

      End the algorithm

      Else

      Then

      Go to the Step 4

  4. Step 4:

    Selecting the device, layer and equipment

    1. Step 4.1:

      For (i = 0; i < I; i++, j = 0; j < J; j++)

      If j = J

      Then

      $$ \mathrm{WB}\kern0.5em \left( i, j\right)\kern0.5em =\kern0.5em \mathrm{CPL}\kern0.5em (i)\kern0.5em /\kern0.5em \mathrm{CD}\kern0.5em (i) $$

      Else

      Then

      $$ \mathrm{WB}\left( i, j\right)\kern0.5em =\kern0.5em \left({\displaystyle \sum_{j^{\hbox{'}}=\kern0.5em j\kern0.5em +\kern0.5em 1}^J}\mathrm{CW}\kern0.5em \left( i,{j}^{\hbox{'}}\right)\kern0.5em +\kern0.5em \mathrm{CPL}\kern0.5em (i)\right)\kern0.5em /\kern0.5em \left({\displaystyle \sum_{j^{\hbox{'}}\kern0.5em =\kern0.5em j\kern0.5em +\kern0.5em 1}^J}\mathrm{PW}\kern0.5em \left( i,{j}^{\hbox{'}}\right)\kern0.5em +\kern0.5em \mathrm{CD}\kern0.5em (i)\right) $$
    2. Step 4.2:

      For (i = 0; i < I; i++, j = 0; j < J; j++, k = 0; k < K; k++)

      $$ \mathrm{EP}\kern0.5em \left( i, j, k\right)\kern0.5em =\kern0.5em \left(\mathrm{TCP}\kern0.5em \left( i, j, k\right)\kern0.5em -\kern0.5em \mathrm{CPA}\kern0.5em \left( i, j, k\right)\right)\kern0.5em /\kern0.5em \mathrm{WB}\kern0.5em \left( i, j\right) $$
    3. Step 4.3:

      For (i = 0; i < I; i++, j = 0; j < J; j++, k = 0; k < K; k++)

      If \( \mathrm{EP}\kern0.5em \left( i, j, k\right)\kern0.5em =\kern0.5em \underset{A\left({i}^{\hbox{'}},{j}^{\hbox{'}},{k}^{\hbox{'}}\right)=1}{ \max \kern0.5em }\left(\mathrm{EP}\kern0.5em \left({i}^{\hbox{'}},{j}^{\hbox{'}},{k}^{\hbox{'}}\right)\right) \) and A (i, j, k) = 1

      Then

      Set SI = i and SJ = j and SK = k

      Step 4.3:

      Assign (SK) = 1 and AP (SK) = max (0, TCP (SI, SJ, SK) − CPA (SI, SJ, SK)) and AD (SK) = SI and AL (SK) = SJ

  5. Step 5:

    Adding device entities into a entity group

    Step 5.1:

    For (e = 0; e < E; e++)

    If D (e) = SI and L (e) = SJ

    Then

    Add the e into SubE

  6. Step 6:

    Selecting the device entities that have the earliest start time

    Step 6.1:

    For (e = 0; e < E; e++)

    If \( \mathrm{ST}\kern0.5em (e)\kern0.5em \ne \kern0.5em \underset{e\hbox{'}\in SubE}{ \min \kern0.5em }\left(\mathrm{ST}\kern0.5em \left( e\hbox{'}\right)\right) \) and e ∈ SubE

    Then

    Remove the device entity e from SubE

  7. Step 7:

    Choose any device entity in SubE and set the chosen device entity as the SE

  8. Step 8:

    Allocate SE to the SK and P (SK) = 1

  9. Step 9:

    Go to the Step 1

The PBA dispatching algorithm is embodied in the virtual semiconductor line, which is composed of both non-bottleneck and bottleneck processes. Non-bottleneck processes are not described in detail so as to lessen the computational burden of the model. The device entities thus simply pass the non-bottleneck processes in the planned lead time without capacity limits and wait for the operations in front of the bottleneck processes. The dispatching algorithms are performed every minute after updating the status of the machines and entities.

The main idea of the PBA dispatching algorithm is to minimize the emergency parameter, EP (i, j, k) = (TCP (i, j, k) − CPA (i, j, k)) / WB (i, j), where the numerator is the difference between the target production and the current production output and the denominator is the WIP balance, which indicates the ratio of current WIP to the planned WIP. There is a need to consider the WIP balance from the perspective of the overall system. Therefore, the WIP balance is cumulatively computed from the last layer to a certain layer, which is explained in Step 4.1 in the PBA dispatching algorithm procedure. The planned WIP from the optimization models are based on long-term data; however, the dispatching rule is used on shorter-term models. The target WIP for the dispatching algorithm is computed by gradually changing the WIP (i, j, t) to the WIP (i, j, t + 1).

Simply dispatching devices according to the emergency parameter causes a high number of setups, so assignment is required to reduce the number of setups. Whenever new allocations are performed, it is imposed on the equipment to operate the same type of device as much as TCP (i, j, k) − CPA (i, j, k). The equipment can operate another type of device when it reaches the assigned production target or there are no longer any device entities of the same type as the assigned device in the queue.

The input of device entities in the virtual semiconductor line using the PBA dispatching algorithm is performed with uniform time intervals determined by the amounts input to the plan. Input per interval will be calculated as period length/input amount of the plan and is required to use the PBA dispatching algorithm to generate initial device entities. It is assumed that the initial device entities are ideally distributed to fulfill the plan.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kim, S.H., Kim, J.W. & Lee, Y.H. Simulation-based optimal production planning model using dynamic lead time estimation. Int J Adv Manuf Technol 75, 1381–1391 (2014). https://doi.org/10.1007/s00170-014-6209-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00170-014-6209-5

Keywords

Navigation