38
Blading in Photolithography machines An application of the a priori TSP problem Teun Janssen Joined work with Jan Driessen (NXP), Martijn van Ee (VU Amsterdam), Leo van Iersel (TU Delft) & Rene Sitters (VU Amsterdam) Delft University of Technology January, 2016 Blading in Photolithography machines January, 2016 1

Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Embed Size (px)

Citation preview

Page 1: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Blading in Photolithography machinesAn application of the a priori TSP problem

Teun Janssen

Joined work withJan Driessen (NXP), Martijn van Ee (VU Amsterdam),

Leo van Iersel (TU Delft) & Rene Sitters (VU Amsterdam)

Delft University of Technology

January, 2016

Blading in Photolithography machines January, 2016

1

Page 2: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Introduction

Blading in Photolithography machines January, 2016

2

Page 3: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Introduction

Blading in Photolithography machines January, 2016

2

Page 4: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Introduction

Blading in Photolithography machines January, 2016

3

Page 5: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Blading

Blading in Photolithography machines January, 2016

4

Page 6: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Blading

Blading in Photolithography machines January, 2016

5

Page 7: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Traveling Salesman Problem

Goal: Find an ordering of the cities such that the salesmanvisits all cities exactly once and distance travelled is minimized.

Blading in Photolithography machines January, 2016

6

Page 8: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Blading

An ASCII-file defines the positions of the blades.

This ASCII file is used every time a certain product goestrough the machine, but not every blade position is used.

Blading in Photolithography machines January, 2016

7

Page 9: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Blading

An ASCII-file defines the positions of the blades.

This ASCII file is used every time a certain product goestrough the machine, but not every blade position is used.

Blading in Photolithography machines January, 2016

7

Page 10: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Blading

Layer IDLithography steps

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Position A xPosition B xPosition C xPosition D xPosition E x x x xPosition F x x x x x x x x xPosition G xPosition H x x x x x x x x xPosition I x x x x x x x x xPosition J x x x x x x x x xPosition K x x x x x x x x xPosition L xPosition M x x x x x x x x xPosition N x x x x x x x x xPosition O x xPosition P x xPosition Q x xPosition R x xTotal steps 2 2 1 1 5 5 7 7 7 7 7 7 7 8 8

Blading in Photolithography machines January, 2016

8

Page 11: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Adjusted Traveling Salesman Problem

Find an ordering of the cities such that the salesmen visit allcities exactly once and the sum of all distances traveled isminimized.

Blading in Photolithography machines January, 2016

9

Page 12: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Adjusted Traveling Salesman Problem

Find an ordering of the cities such that the salesmen visit allcities exactly once and the sum of all distances traveled isminimized.

Blading in Photolithography machines January, 2016

9

Page 13: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

A priori Traveling Salesman Problem

Given:

I A complete weighted graph G = (V,E) (metric).

I A set of scenarios S = S1, . . . , Sm ⊆ 2V .

I A probability pk per scenario Sk of being the active set,with

∑k pk = 1.

Goal: Find a tour on all vertices (first-stage tour), such that itminimizes the expected length of tours on the scenarios(second-stage tour).

Blading in Photolithography machines January, 2016

10

Page 14: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

A priori Traveling Salesman Problem

Given:

I A complete weighted graph G = (V,E) (metric).

I A set of scenarios S = S1, . . . , Sm ⊆ 2V .

I A probability pk per scenario Sk of being the active set,with

∑k pk = 1.

Goal: Find a tour on all vertices (first-stage tour), such that itminimizes the expected length of tours on the scenarios(second-stage tour).

Blading in Photolithography machines January, 2016

10

Page 15: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Known Results

The problem has been considered in 2 cases.

The independent decision model:

I Shmoys and Talwar1 show that a sample-and-augmentapproach gives an 4-approximation.

1David Shmoys and Kunal Talwar. “A constant approximationalgorithm for the a priori traveling salesman problem”. In: IntegerProgramming and Combinatorial Optimization. Springer, 2008,pp. 331–343.

Blading in Photolithography machines January, 2016

11

Page 16: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Known Results

The problem has been considered in 2 cases.

The black-box model:

I Schalekamp and Shmoys2 show that for the black-boxmodel there is a randomized O(log n)-approximationwithout sampling.

I There is an Ω(log n) lower bound for deterministicalgorithms3.

2Frans Schalekamp and David B Shmoys. “Algorithms for the universaland a priori TSP”. . In: Operations Research Letters 36.1 (2008), pp. 1–3.

3Igor Gorodezky et al. “Improved lower bounds for the universal and apriori tsp”. In: Approximation, Randomization, and CombinatorialOptimization. Algorithms and Techniques. Springer, 2010, pp. 178–191.

Blading in Photolithography machines January, 2016

12

Page 17: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Properties

Theorem

A priori TSP is NP-complete when |Sk| ≤ 4 for all k.

Corollary

Under the Unique Games Conjecture, there is no 1.0242approximation for a priori TSP when |Sk| ≤ 4 for all k.

Blading in Photolithography machines January, 2016

13

Page 18: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Properties

Theorem

A priori TSP is NP-complete when |Sk| ≤ 4 for all k.

Corollary

Under the Unique Games Conjecture, there is no 1.0242approximation for a priori TSP when |Sk| ≤ 4 for all k.

Blading in Photolithography machines January, 2016

13

Page 19: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Properties

Theorem

A tour τ can be constructed, that is a 2m− 1-approximationfor a priori TSP in the scenario model, where m ≥ 2 is thenumber of scenarios.

Construction:

I For each scenario, find an α-approximate tour and sort thescenarios on their resulting tour lengths Tj . Rename thescenarios such that T1 ≤ T2 ≤ . . . ≤ Tm.

I Traverse the tours 1, 2, . . . ,m, while skipping alreadyvisited vertices, resulting in tour τ .

Blading in Photolithography machines January, 2016

14

Page 20: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Properties

Theorem

A tour τ can be constructed, that is a 2m− 1-approximationfor a priori TSP in the scenario model, where m ≥ 2 is thenumber of scenarios.

Construction:

I For each scenario, find an α-approximate tour and sort thescenarios on their resulting tour lengths Tj . Rename thescenarios such that T1 ≤ T2 ≤ . . . ≤ Tm.

I Traverse the tours 1, 2, . . . ,m, while skipping alreadyvisited vertices, resulting in tour τ .

Blading in Photolithography machines January, 2016

14

Page 21: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation4 to optimize the blading.

min∑k

∑i∈Sk

∑j∈Sk,i 6=j

dijxkij

s.t.∑

i∈Sk,i6=j

xkij = 1, ∀j ∈ Sk,∀k ∈ [m] (1)

∑j∈Sk,i6=j

xkij = 1, ∀i ∈ Sk, ∀k ∈ [m] (2)

ui − uj + nxkij ≤ n− 1,∀i ∈ Jk,∀j ∈ Sk \ i, ∀k ∈ [m] (3)

xkij ∈ 0, 1, ∀i ∈ Sk, ∀j ∈ Sk \ i, ∀k ∈ [m]

1 ≤ ui ≤ n− 1, ∀i ∈ Sk (4)

4C. E. Miller, A. W. Tucker, and R. A. Zemlin. “Integer ProgrammingFormulation of Traveling Salesman Problems”. In: J. ACM 7.4 (Oct.1960), pp. 326–329. issn: 0004-5411.

Blading in Photolithography machines January, 2016

15

Page 22: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation4 to optimize the blading.

min∑k

∑i∈Sk

∑j∈Sk,i 6=j

dijxkij

s.t.∑

i∈Sk,i6=j

xkij = 1, ∀j ∈ Sk,∀k ∈ [m] (1)

∑j∈Sk,i6=j

xkij = 1, ∀i ∈ Sk, ∀k ∈ [m] (2)

ui − uj + nxkij ≤ n− 1,∀i ∈ Jk, ∀j ∈ Sk \ i, ∀k ∈ [m] (3)

xkij ∈ 0, 1, ∀i ∈ Sk, ∀j ∈ Sk \ i, ∀k ∈ [m]

1 ≤ ui ≤ n− 1, ∀i ∈ Sk (4)

4C. E. Miller, A. W. Tucker, and R. A. Zemlin. “Integer ProgrammingFormulation of Traveling Salesman Problems”. In: J. ACM 7.4 (Oct.1960), pp. 326–329. issn: 0004-5411.

Blading in Photolithography machines January, 2016

15

Page 23: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation to optimize the blading.

1. Machine data was converted to a table.

2. Using Matlab the input was split in smaller subproblems.

3. The ILP solver SCIP5 was used to optimize thesubproblems.

4. The solutions of these subproblems where combined in oneoptimal ordering and published.

5. The optimal ordering was then used to chance the originaljob.

5Tobias Achterberg. “SCIP: Solving constraint integer programs”. In:Mathematical Programming Computation 1.1 (2009).http://mpc.zib.de/index.php/MPC/article/view/4, pp. 1–41.

Blading in Photolithography machines January, 2016

16

Page 24: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation to optimize the blading.

1. Machine data was converted to a table.

2. Using Matlab the input was split in smaller subproblems.

3. The ILP solver SCIP5 was used to optimize thesubproblems.

4. The solutions of these subproblems where combined in oneoptimal ordering and published.

5. The optimal ordering was then used to chance the originaljob.

5Tobias Achterberg. “SCIP: Solving constraint integer programs”. In:Mathematical Programming Computation 1.1 (2009).http://mpc.zib.de/index.php/MPC/article/view/4, pp. 1–41.

Blading in Photolithography machines January, 2016

16

Page 25: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation to optimize the blading.

1. Machine data was converted to a table.

2. Using Matlab the input was split in smaller subproblems.

3. The ILP solver SCIP5 was used to optimize thesubproblems.

4. The solutions of these subproblems where combined in oneoptimal ordering and published.

5. The optimal ordering was then used to chance the originaljob.

5Tobias Achterberg. “SCIP: Solving constraint integer programs”. In:Mathematical Programming Computation 1.1 (2009).http://mpc.zib.de/index.php/MPC/article/view/4, pp. 1–41.

Blading in Photolithography machines January, 2016

16

Page 26: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation to optimize the blading.

1. Machine data was converted to a table.

2. Using Matlab the input was split in smaller subproblems.

3. The ILP solver SCIP5 was used to optimize thesubproblems.

4. The solutions of these subproblems where combined in oneoptimal ordering and published.

5. The optimal ordering was then used to chance the originaljob.

5Tobias Achterberg. “SCIP: Solving constraint integer programs”. In:Mathematical Programming Computation 1.1 (2009).http://mpc.zib.de/index.php/MPC/article/view/4, pp. 1–41.

Blading in Photolithography machines January, 2016

16

Page 27: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation to optimize the blading.

1. Machine data was converted to a table.

2. Using Matlab the input was split in smaller subproblems.

3. The ILP solver SCIP5 was used to optimize thesubproblems.

4. The solutions of these subproblems where combined in oneoptimal ordering and published.

5. The optimal ordering was then used to chance the originaljob.

5Tobias Achterberg. “SCIP: Solving constraint integer programs”. In:Mathematical Programming Computation 1.1 (2009).http://mpc.zib.de/index.php/MPC/article/view/4, pp. 1–41.

Blading in Photolithography machines January, 2016

16

Page 28: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Implementation

Goal: Test what the possible gain could be if we used an ILPformulation to optimize the blading.

1. Machine data was converted to a table.

2. Using Matlab the input was split in smaller subproblems.

3. The ILP solver SCIP5 was used to optimize thesubproblems.

4. The solutions of these subproblems where combined in oneoptimal ordering and published.

5. The optimal ordering was then used to chance the originaljob.

5Tobias Achterberg. “SCIP: Solving constraint integer programs”. In:Mathematical Programming Computation 1.1 (2009).http://mpc.zib.de/index.php/MPC/article/view/4, pp. 1–41.

Blading in Photolithography machines January, 2016

16

Page 29: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Results

77 (of 575) products were optimized (= 58.4% of WIP).

I For 67 of the 77 products the total blading was reduced.I On average the blading was reduced by 19.2 % .I This results in a gain of 1% in total time needed for these

products according to the model proposed by Driessen6.I This reduction is reflected in the machine data after the

optimization.

6Jan Driessen. “An OEE increase of 10 percent on LITHO equipment”.In: 12th European Advanced Process Control and ManufacturingConference. APC—M, Apr. 2012.

Blading in Photolithography machines January, 2016

17

Page 30: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Results

77 (of 575) products were optimized (= 58.4% of WIP).I For 67 of the 77 products the total blading was reduced.

I On average the blading was reduced by 19.2 % .I This results in a gain of 1% in total time needed for these

products according to the model proposed by Driessen6.I This reduction is reflected in the machine data after the

optimization.

6Jan Driessen. “An OEE increase of 10 percent on LITHO equipment”.In: 12th European Advanced Process Control and ManufacturingConference. APC—M, Apr. 2012.

Blading in Photolithography machines January, 2016

17

Page 31: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Results

77 (of 575) products were optimized (= 58.4% of WIP).I For 67 of the 77 products the total blading was reduced.I On average the blading was reduced by 19.2 % .

I This results in a gain of 1% in total time needed for theseproducts according to the model proposed by Driessen6.

I This reduction is reflected in the machine data after theoptimization.

6Jan Driessen. “An OEE increase of 10 percent on LITHO equipment”.In: 12th European Advanced Process Control and ManufacturingConference. APC—M, Apr. 2012.

Blading in Photolithography machines January, 2016

17

Page 32: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Results

77 (of 575) products were optimized (= 58.4% of WIP).I For 67 of the 77 products the total blading was reduced.I On average the blading was reduced by 19.2 % .I This results in a gain of 1% in total time needed for these

products according to the model proposed by Driessen6.

I This reduction is reflected in the machine data after theoptimization.

6Jan Driessen. “An OEE increase of 10 percent on LITHO equipment”.In: 12th European Advanced Process Control and ManufacturingConference. APC—M, Apr. 2012.

Blading in Photolithography machines January, 2016

17

Page 33: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Results

77 (of 575) products were optimized (= 58.4% of WIP).I For 67 of the 77 products the total blading was reduced.I On average the blading was reduced by 19.2 % .I This results in a gain of 1% in total time needed for these

products according to the model proposed by Driessen6.I This reduction is reflected in the machine data after the

optimization.

6Jan Driessen. “An OEE increase of 10 percent on LITHO equipment”.In: 12th European Advanced Process Control and ManufacturingConference. APC—M, Apr. 2012.

Blading in Photolithography machines January, 2016

17

Page 34: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Conclusions

I For the A priori TSP in the scenario model, there is still alarge gap between the lower bound (1.0242) and bestknown approximation algorithm.

I There is an O(log n)-approximation algorithm and a2m− 1-approximation algorithm known.

I The blading problem, an implementation of a priori TSPin the scenario model, can be solved to optimality in alimited amount of time.

I Optimization reduces the processing time of products inthe semiconductor production facility.

Thank you for your attention!

Blading in Photolithography machines January, 2016

18

Page 35: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Conclusions

I For the A priori TSP in the scenario model, there is still alarge gap between the lower bound (1.0242) and bestknown approximation algorithm.

I There is an O(log n)-approximation algorithm and a2m− 1-approximation algorithm known.

I The blading problem, an implementation of a priori TSPin the scenario model, can be solved to optimality in alimited amount of time.

I Optimization reduces the processing time of products inthe semiconductor production facility.

Thank you for your attention!

Blading in Photolithography machines January, 2016

18

Page 36: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Conclusions

I For the A priori TSP in the scenario model, there is still alarge gap between the lower bound (1.0242) and bestknown approximation algorithm.

I There is an O(log n)-approximation algorithm and a2m− 1-approximation algorithm known.

I The blading problem, an implementation of a priori TSPin the scenario model, can be solved to optimality in alimited amount of time.

I Optimization reduces the processing time of products inthe semiconductor production facility.

Thank you for your attention!

Blading in Photolithography machines January, 2016

18

Page 37: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Conclusions

I For the A priori TSP in the scenario model, there is still alarge gap between the lower bound (1.0242) and bestknown approximation algorithm.

I There is an O(log n)-approximation algorithm and a2m− 1-approximation algorithm known.

I The blading problem, an implementation of a priori TSPin the scenario model, can be solved to optimality in alimited amount of time.

I Optimization reduces the processing time of products inthe semiconductor production facility.

Thank you for your attention!

Blading in Photolithography machines January, 2016

18

Page 38: Blading in Photolithography machines - CNR · Blading in Photolithography machines ... Traveling Salesman Problem ... 2Frans Schalekamp and David B Shmoys.\Algorithms for the universal

Conclusions

I For the A priori TSP in the scenario model, there is still alarge gap between the lower bound (1.0242) and bestknown approximation algorithm.

I There is an O(log n)-approximation algorithm and a2m− 1-approximation algorithm known.

I The blading problem, an implementation of a priori TSPin the scenario model, can be solved to optimality in alimited amount of time.

I Optimization reduces the processing time of products inthe semiconductor production facility.

Thank you for your attention!

Blading in Photolithography machines January, 2016

18