320 likes | 529 Views
CASE – August 21 st 2012 – Seoul, Korea. Scheduling of Petri nets as a Multi-objective Shortest Path Problem. Uno Wikborg * and Tae- Eog Lee KAIST Industrial and Systems Engineering Department. Problem definition.
E N D
CASE – August 21st 2012 – Seoul, Korea Scheduling of Petri nets as a Multi-objective Shortest Path Problem Uno Wikborg* and Tae-Eog Lee KAIST Industrial and Systems Engineering Department
Problem definition • Find a firing sequence with shortest makespan which brings a Petri net with place delays from one given marking to another given marking • Does not consider maximum residency time of tokens • Going from the marking [1,0,0,0,0] to [0,0,0,0,0] given delay times for each place in the Petri net below
Related literature • Dawande M, Geismar HN, Sethi SP, C S. Sequencing and scheduling in robotic cells; recent developments. Journal of Scheduling. 2005; 8(5): p. 387-426. • Jung C. An Efficient Mixed Integer Programming Model Based on Timed Petri Nets for Diverse Complex Cluster Tool Scheduling Problems. 2010 • Daellenbach HG, De Kluyver CA. Note on Multiple Objective Dynamic Programming. The Journal of the Operational Research Society. 1980 July; 31(7): p. 591-594. • Wikborg U, Lee TE. Non-Cyclic Scheduling for Timed Discrete Event Systems with Application to Single-Armed Cluster Tools using Pareto-Optimal Optimization. Accepted to be published. IEEE Transactions on Automation Science and Engineering.
Motivation • Petri nets are well suited for modelling cluster tools for semiconductor production • Wafer recipes tend to change more often • Cyclic scheduling is not efficient when the steady state is short
Example 1: A Single Objective Approach (1) • Problem description:Which firing sequence uses the shortest time to change the marking from [1,0,0,0,0] to [0,0,0,0,0]?
Example 1: A Single Objective Approach (2) • The two enabled transitions give us two possible next marking. t1 t2
Example 1: A Single Objective Approach (3) • The tokens have to wait at p2 and p3 for the delay period. • The resulting state can therefore be defined by the marking, a time stamp for each token and a time stamp for when the last transition was fired. • For the case when t1 is fired: marking [0,1,1,0,0], tokens {2},{3}, fire time 0
Example 1: A Single Objective Approach (4) • This gives us a tree like transition graph • The last fired transition is used as the objective • The optimal solution can be found by traversing the graph • Tree like structures tend to grow too fast when the problem size increases
A Multi-objective Approach • Tree structure was caused by many state variables • The time stamps can instead be considered objective functions • The marking then defines the state • A multi-objective shortest path problem in the untimed transition graph • Note that the number of objectives vary from state to state and that the length of the edges depend on the previous path
Label correction algorithm • Based on bottom-up-dynamic programming • Keep the best solutions for each state • A set of non-dominated solutions is kept for each marking • A hash map is used with the marking as the key and a set of all non-dominated paths to the marking as the value • Terminate when no better solution to the goal marking can be found
Theoretical properties Theorem 1. The sequencing problem of a timed Petri net can be transformed into an equivalent multi-objective shortest path problem. Theorem 2. There exists an optimal pathand such that for any: A solution can be found which only includes non-dominated sub-problems. Theorem 3. The values of the objectives for all non-dominated solutions for a given problem falls within a range of two times the largest place delay.
Non-cyclic scheduling of Cluster Tools for Semiconductor Production • Well suited for non-cyclic scheduling • Single armed cluster tool with three processing chambers and 500 wafers • Dual armed cluster tool with two double and one single processing module and a changing recipe
Problem variations • Single and dual armed cluster tools • Multiple recipes – frequent changes • Cleaning processes • Changing between steady states • Start up and close down of cluster tools • Non-identical robot movement times
Future work • Study how different parameters effect the efficiency • Apply the method to more problems • Improve the direction of the search • Extend the method to handle additional requirements
Questions? ? • For further inquires please contact wikborg@gmail.com