Optimal Finite Horizon Control of Manufacturing Systems: Fluid Solution by SCLP (separated continuous LP) and Fluid Tracking using IVQs (infinite virtual queues) Stanford University, MSE, February, 29 Gideon Weiss University of Haifa Joint work with students: Anat Kopzon Yoni Nazarathy Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29
Control of computer chip semi-conductor wafer fab Cost: 3x1 9 $ Return: 3 years Cycle time: 6 weeks WIP: 6, wafers, 18x1 6 $ Challenge: Control the queues at ~5 work steps No steady state, Finite horizon control, Rolling horizon update Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 1
Finite horizon control of multi class queueing networks MCQN Control MCQN (Q(t),T(t)), over <t<t objective Q k (t) = Q k ()! S k (T k (t)) + " k 'k (S k ' (T k ' (t))) k #K $ k ' min "! k T k (T ) + c k Q k (t)dt k # T Fluid Problem T V * = min ("! u(s) + c! q(s) )ds s.t. # t # Ru(s)ds + q(t) = q(), Au(t) $ 1, u(t),q(t) %, t &[,T ] Optimal Fluid Solution 1 5 2 4 6 8 1 12 14 16 18 Tracking of Fluid: - Model Deviations from Fluid as MCQN with IVQ - Use Max Pressure to keep Deviations Stable Asymptotically Optimal Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 2
Continuous linear programming Bellman (1953) Economic models, Dantzig, Perold, Anstreicher. T " max c!(s)u(s)ds H (t) u(t) + Anderson (1975) job shop scheduling, " G(s,t)u(s)ds # a(t) CLP Anderson, Philpott & Nash papers and Book (1987),. t u(t) $, < t < T T # max c(t! s )" u(s)ds t # G u(s)ds + x(t) = a(t) H u(t) x, u %, < t < T $ b(t) SCLP Pullan (1993) Dual problem, Strong duality, convergent (not finite) algorithm Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 3
SCLP for MCQN T ( ) max $ ("! + (T # t) c! )u(t) + d! x(t) dt s.t. t $ G u(s)ds + Fx(t) % & + at H u(t) % b u(t), x(t) ' < t < T Variables: K+J+I+L States Controls G KxJ F KxL H IxJ slacks x k : k=1,,k, k=k +1,,K + L, slacks u j : j=1,,j, j= J +1,,J + I Structure: Time horizon T Control cost! Inventory cost c d System G I F a input rate! initial state H I b control capacity Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 4
Solving SCLP Discretization vs Simplex Discrete Time: CLP and SCLP become LP (1) LP is large (2) approximation is doubtful (3) problem structure is lost Most past approaches (including Pullan) used discrete approximation SCLP provides excellent models, but because it needed discretization, problems were modeled as dictrete time multi-period LPs We solve SCLP in continuous time, exactly, in a finite number of steps. Our algorithm performs simplex steps, in function space. We gain much insight to the solution, e.g. sensitivity analysis in time and space Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 5
A simplex approach Solution features: partition of time horizon =t <t 1 < <t N =T piecewise constant controls u(t) continuous piecewise linear x(t) Symmetric dual Extreme points are sequences of bases Edges via validity regions SCLP Pivots Parametric sequence of steps T ( ) max $ ("! + (T # t) c! )u(t) + d! x(t) dt s.t. t $ G u(s)ds + Fx(t) % & + at H u(t) u(t), x(t) ' % b < t < T Simplex in the space of bounded measurable (density) controls Essential Assumption! a # $ is in general " b% &! G I F$ position to # " H I & % Problem Non-Degenerate:! c # $ is in general " d% &! G' (I H ' $ position to # " F ' (I & % Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 6
Symmetric Duality & Complementary Slackness max $ ("! + (T # t) c! )u(t) + d! x(t) dt s.t. T t ( ) $ G u(s)ds + Fx(t) % & + at H u(t) % b u(t), x(t) ' < t < T T " x k (t)p k (T! t)dt = " q j (T! t)u j (t)dt = primal states primal controls x k (t) u j (t) T T (( ) p(t) + b! q(t) ) dt min $ "! + (T # t) a! t s.t. $ G! p(s)ds + H! q(t) % & + ct F! p(t) % d dual states dual controls q j (T! t) p k (T! t) p(t),q(t) % < t < T Dual runs in reversed time We produce primal dual feasible complementary slack solutions Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 7
Complementary slack optimal solutions x k!x k 1!x k 2 p k 3 = t t 1 t 2 t N = T t 3 T! t = T T! t 1 T! t 2 T! t N = T! t 3 u j 1!q j 2!q j 3 q j Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 8
Boundary and Rates LP/LP* Stage 1 Solve for T = (horizon dt) Determine x(), q() Boundary LP max d! x s.t. Fx " #, x $ T! c d G I F H I min b! q N a b! s.t. H! q N " #, q N " T max $ (("! + (T # t) c! )u(t) + d! x(t) ) dt t s.t. $ G u(s)ds + Fx(t) % & + at H u(t) % b u(t), x(t) ' < t < T x(), q() remain unchanged for all time horizons Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 9
Boundary and Rates LP/LP* Boundary LP max d! x s.t. Fx " #, x $ min b! q N s.t. H! q N " #, q N " Determine x(), q() Stage 2 Determine values of u(t), p(t-t) slopes of x(t), q(t-t) for t n-1 <t<t n T! c d G I F H I a b! T max $ (("! + (T # t) c! )u(t) + d! x(t) ) dt t s.t. $ G u(s)ds + Fx(t) % & + at H u(t) % b u(t), x(t) ' < t < T Rates LP max c! u n + d!!x n s.t. Gu n + F!x n " a Hu n " b min a! p n + b!!q n s.t. G! p n + H!!q n " c F! p n " d Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 1
Boundary and Rates LP/LP* Boundary LP max d! x s.t. Fx " #, x $ min b! q N s.t. H! q N " #, q N " Determine x(), q() Rates LP max c! u n + d!!x n s.t. Gu n + F!x n " a Hu n " b min a! p n + b!!q n s.t. G! p n + H!!q n " c F! p n " d Determine values of u(t), p(t-t) slopes of x(t), q(t-t) for t n-1 <t<t n Sign constraints for the interval t n-1 <t<t n n n If x k (t n!1 ) > then!x k unrestricted, pk = n n If q j (T! t n ) > then!q j unrestricted, u j = n Else :!x k, u n j,!q n j, n pk " Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 11
Solution Structure theorem SCLP solution is determined by partition of time horizon =t <t 1 <...<t N =T and a sequence of bases B 1,,B N B n :!x n,u n,!q n, p n B n! B n+1 adjacent " n = t n # t n#1 B n! B n+1 : &!x k leaves the basis " = x k (t n ) = x k + # m ( $ m!x k ( m=1 ' N ( N u j leaves the basis " = q j (T % t n ) = q j + # m $ m!q ( j ) m=n+1 n Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 12
The Structure Theorem Equations and inequalities for interval lengths and slacks " 1!1 % $ '"( % $ A ' $ ' = # $ B!I&' #) & " T% $ ' $ g' # $ h& ' Theorem If a base-sequence B 1,, B N is: Admissible (u,p ), adjacent, consistent with the boundary (x,q N ) and has interval lengths and slacks!," >, then the solution u, x, p,q is optimal Conversely: almost all solutions are of this form These Base-sequences are the extreme points Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 13
Validity Regions Theorem An optimal base-sequence B 1,, B N is optimal for a convex polyhedral cone of boundary values x,q N,T. We call this the Validity Region of the base sequence Definition: Two base sequences whose validity regions touch are Neighboring base sequences. This defines an Edge Moving along an edge is an SCLP Pivot. Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 14
Parametric Algorithm x t, qt N,Tt! (R)! (1) x s, qs N,Ts Algorithm pivots at! " <! (1) <!<! (R) < 1"! Moving from N x s,qs,ts to N x t,qt,tt Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 15
SCLP pivot T < T (r) T = T (r) A necessary condition for pivoting is that the problem is completely nondegenerate:! a$ "# b %&! c$ "# d% & is in general position to is in general position to! G I F$ "# H I % &! G ' (I H ' $ "# F ' (I %& If that condition does not hold we have no way to find where to `repair solution after T (r] T > T (r) Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 16
Simple SCLP example max 6 " t ((8! t)u 1 (t)! x 2 (t)) dt s.t. " u 1 (s)ds + x 2 (t) # 3 + t u 1 (t) # 2 u, x $ Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 17
Simple SCLP example 1 T " t ( ) dt max (!4 + 2(T! t) )u 1 (t)! x 2 (t) s.t. " u 1 (s)ds + x 2 (t) # 3 +t u 1 (t) # 2 u,x $ Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 18
Simple SCLP example 2 T " t ( ) dt max (!4 + 2(T! t) )u 1 (t)! x 2 (t) s.t. " u 1 (s)ds + x 2 (t) # 3 +t u 1 (t) # 2 u,x $ T " ( ) dt min (3+ T! t)p 1 (t) + 2q 2 (t) t s.t. " p 1 (s)ds + q 2 (t) #!4 + 2t p 1 (t) #!1 p,q # Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 19
Simple SCLP example 3 T " t ( ) dt max (!4 + 2(T! t) )u 1 (t)! x 2 (t) s.t. " u 1 (s)ds + x 1 (t) + x 2 (t) = 3 +t u 1 (t) + u 2 (t) = 2 u,x # T " ( ) dt min (3+ T! t)p 1 (t) + 2q 2 (t) t s.t. " p 1 (s)ds! q 1 (t) + q 2 (t) =!4 + 2t p 1 (t)! p 2 (t) =!1 p,q # Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 2
Simple SCLP example 4 T " t ( ) dt max (!4 + 2(T! t) )u 1 (t)! x 2 (t) s.t. " u 1 (s)ds + x 1 (t) + x 2 (t) = 3 +t u 1 (t) + u 2 (t) = 2 u,x # T " min (3+ T! t)p 1 (t) + 2q 2 (t) ( ) dt t s.t. " p 1 (s)ds! q 1 (t) + q 2 (t) =!4 + 2t p 1 (t)! p 2 (t) =!1 p,q # Boundary LP T= max! x 2 s.t. x 1 + x2 = 3 x 1 min 2q 2 N s.t.! q 1 N + q2 N =!4 x " Solution x 1 = 3 T! t = T t N = T q N " N Solution q 1 = 4 q 1 N Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 21
Simple SCLP example 7 Boundary LP max! x 2 min 2q 2 N s.t. x 1 + x2 = 3 x " Solution x 1 = 3 x 1 x 1 s.t.! q 1 N + q2 N =!4 q N " Solution q 1 N = 4 Rates LP <T<2 max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P Solution u 2 = 2,!x 1 = 1 q 1 q 1 N!q 1 U, p 1 Z, p 2,!q 2 P Solution p 2 = 1,!q 1 =!2 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 22
Simple SCLP example 7 Boundary LP max! x 2 min 2q 2 N s.t. x 1 + x2 = 3 x " Solution x 1 = 3 x 1 x 1 s.t.! q 1 N + q2 N =!4 q N " Solution q 1 N = 4 Rates LP <T<2 max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 1 1 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P Solution u 2 = 2,!x 1 = 1 q 1 q 1 N!q 1 U, p 1 Z, p 2,!q 2 P Solution p 2 = 1,!q 1 =!2 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 23
Simple SCLP example 7 Boundary LP max! x 2 min 2q 2 N s.t. x 1 + x2 = 3 s.t.! q 1 N + q2 N =!4 x " Solution x 1 = 3 x 1 x 1 q N " Solution q 1 N = 4 Rates LP <T<2 max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 2 2 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P Solution u 2 = 2,!x 1 = 1 q 1!q 1 U, p 1 Z, p 2,!q 2 P Solution p 2 = 1,!q 1 =!2 q 1 N Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 24
Simple SCLP example 8 Boundary LP max! x 2 min 2q 2 N s.t. x 1 + x2 = 3 s.t.! q 1 N + q2 N =!4 x " Solution x 1 = 3 x 1 x 1 q N " Solution q 1 N = 4 Rates LP <T<2 max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 2 2 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P Solution u 2 = 2,!x 1 = 1 q 1!q 1 U, p 1 Z, p 2,!q 2 P Solution p 2 = 1,!q 1 =!2!x 1 U,!x 2,u 1,u 2 P q 1 N p 1 Z,!q 1, p 2,!q 2 P Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 25
Simple SCLP example 8 Boundary LP max! x 2 min 2q 2 N s.t. x 1 + x2 = 3 s.t.! q 1 N + q2 N =!4 x " Solution x 1 = 3 x 1 x 1 q N " N Solution q 1 = 4 Rates LP 2<T max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 q 2 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P!q 1 U, p 1 Z, p 2,!q 2 P Solution u 2 = 2,!x 1 = 1!x 1 U,!x 2,u 1,u 2 P Solution u 1 = 2,!x 1 =!1 q 1 q 1 N Solution p 2 = 1,!q 1 =!2 p 1 Z,!q 1, p 2,!q 2 P Solution p 2 = 1,!q 2 = 2 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 26
Simple SCLP example 9 Boundary LP max! x 2 s.t. x 1 + x2 = 3 x " Solution x 1 = 3 x 1 min 2q 2 N N s.t.! q 1 + N q2 =!4 q N " N Solution q 1 = 4 Rates LP 2<T<5 max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 5 x 1 x 1 5 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P!q 1 U, p 1 Z, p 2,!q 2 P Solution u 2 = 2,!x 1 = 1!x 1 U,!x 2,u 1,u 2 P Solution u 1 = 2,!x 1 =!1!x 1,!x 2,u 1,u 2 P q 2 q 1 q 1 N Solution p 2 = 1,!q 1 =!2 p 1 Z,!q 1, p 2,!q 2 P Solution p 2 = 1,!q 2 = 2 p 1,!q 1, p 2,!q 2 P Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 27
Simple SCLP example 1 Boundary LP max! x 2 s.t. x 1 + x2 = 3 x " Solution x 1 = 3 x 1 min 2q 2 N N s.t.! q 1 + N q2 =!4 q N " N Solution q 1 = 4 Rates LP 5<T< max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2 6 x 1 x 1 6 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!x 1 U, u 1 Z,!x 2,u 2 P!q 1 U, p 1 Z, p 2,!q 2 P Solution u 2 = 2,!x 1 = 1 q 1 Solution p 2 = 1,!q 1 =!2!x 1 U,!x 2,u 1,u 2 P q 2 N p 1 Z,!q 1, p 2,!q 2 P q 1 Solution u 1 = 2,!x 1 =!1 Solution p 2 = 1,!q 2 = 2!x 1,!x 2,u 1,u 2 P Solution u 1 = 1, u 2 = 1 p 1,!q 1, p 2,!q 2 P Solution p 1 = 2, p 2 = 3 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 28
Simple SCLP example 11 Boundary LP max! x 2 s.t. x 1 + x2 = 3 x " Solution x 1 = 3 Rates LP 2<T<5 max 2u 1!!x 2 s.t. u 1 +!x 1 +!x 2 = 1 u 1 + u 2 = 2!x 1 U, u 1 Z,!x 2,u 2 P Solution u 2 = 2,!x 1 = 1!x 1 U,!x 2,u 1,u 2 P Solution u 1 = 2,!x 1 =!1!x 1,!x 2,u 1,u 2 P Solution u 1 = 1, u 2 = 1 x 1 6 x 1 p 2 u 1 q 2 p 2 p 1 u 1 u 2 min p 1 + 2!q 2 s.t. p 1!!q 1 +!q 2 = 2 p 1! p 2 =!1!q 1 U, p 1 Z, p 2,!q 2 P Solution p 2 = 1,!q 1 =!2 p 1 Z,!q 1, p 2,!q 2 P Solution p 2 = 1,!q 2 = 2 p 1,!q 1, p 2,!q 2 P Solution p 1 = 2, p 2 = 3 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 29 p 2 u 2 q 1 x 1 6 q 1 N min 2q 2 N s.t.! q 1 N + q2 N =!4 q N " Solution q 1 N = 4
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 3
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 31
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 32
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 33
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 34
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 35
SCLP algorithm demo x 2 1 2 4 6 8 1 12 14 q 8 6 4 2 2 4 6 8 1 12 14 5 1 2 4 6 8 1 12 14 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 36
SCLP algorithm demo Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 37
Finite horizon control of multi class queueing networks MCQN Control MCQN (Q(t),T(t)), over <t<t objective Q k (t) = Q k ()! S k (T k (t)) + " k 'k (S k ' (T k ' (t))) k #K $ k ' min "! k T k (T ) + c k Q k (t)dt k # T Fluid buffers can have fluid with positive flow In real system: Standard Qs k!k Optimal Fluid Solution Or they have fluid in whole interval: In real system: IVQs k!k " IVQs have nominal outflow rates, from fluid solution:! k = u k : k "K # 1 5 2 4 6 8 1 12 14 16 18 Tracking of Fluid: - Model Deviations from Fluid as MCQN with IVQ - Use Max Pressure to keep Deviations Stable Asymptotically Optimal Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 38
Multi Class Queueing Networks MCQN (Harrison 88, Dai 94,... 6 1 2 3 5 4 Q k (t) = Q k () + A k (t)! S k (T k (t)) + % k '#$ " k 'k (S k ' (T k ' (t))) Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 39
MCQN with Infinite Virtual Queues (Massey 84, W 6) Two types of classes Standard Queues Infinite Virtual Queues! 6 K = {1,2,3,5} K! = {4,6} 1 2 3 No exogenous arrivals Nominal Input Rate 5 4! k!k : Q k (t) = Q k () " S k (T k (t)) + % # k 'k (S k ' (T k ' (t))) & k '!$ k!k ' : Q k (t) = Q k () + ( k t " S k (T k (t)) Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 4
Infinite Virtual Queues - Queueing vs Manufacturing Single server queue Machine with controlled input! µ min(!,µ)! µ µ A tandem of queues! µ 1 µ 2 µ 3! Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 41
A new paradigm for balanced heavy traffic Kumar-Seidman Rybko-Stolyar network (KSRS) 1 2 " 1! 1 µ 1 Heavy traffic when! 1!,! 2! µ 2! 2 " 2 Balanced heavy traffic! 1 " # 1,! 2 " # 2 Push-Pull network - full utilization, ρ = 1, no congestion Both machines work non-stop, and no flow accumulates implies:!! 1 µ 1 " 2 1 2 Q 1 µ 2 Q 2! 2 " 1! 1 = " 1 # 1 = (1$ " 2 )µ 1 = # 1µ 1 (µ 2 $ # 2 ) µ 1 µ 2 $ # 1 # 2! 2 = " 2 # 2 = (1$ " 1 )µ 2 = # 2µ 2 (µ 1 $ # 1 ) µ 1 µ 2 $ # 1 # 2 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 42
Finite horizon control of multi class queueing networks MCQN Control MCQN (Q(t),T(t)), over <t<t objective Q k (t) = Q k ()! S k (T k (t)) + " k 'k (S k ' (T k ' (t))) k #K $ k ' min "! k T k (T ) + c k Q k (t)dt k # T Fluid buffers can have fluid with positive flow In real system: Standard Qs Or they have fluid in whole interval: In real sysatem: IVQs k!k " IVQs have nominal outflow rates, from fluid solution:! k = u k : k "K # k!k Optimal Fluid Solution 1 5 2 4 6 8 1 12 14 16 18 Tracking of Fluid: - Model Deviations from Fluid as MCQN with IVQ - Use Max Pressure to keep Deviations Stable Asymptotically Optimal Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 43
Example Network 1 2 µ 1 Stacked Queue level representation: µ 3 µ 2 Stacked Queue Levels Finished Jobs Trajectory of a single job Resource 2 is the bottleneck 1 > 1 + 1 µ 2 µ 1 µ 3 Q2 Q3 How to control queues 1,3 Q1 Schedule resource 1, for optimal draining time T Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 44
Fluid formulation 1 2 min T! q 1 (t) + q 2 (t) + q 3 (t)dt s.t : q 1 (t) = q 1 () " µ 1 u 1 (s)ds t! t q 2 (t) = q 2 () +! µ 1 u 1 (s)ds "! µ 2 u 2 (s)ds t q 3 (t) = q 3 () +! µ 2 u 2 (s)ds "! µ 3 u 3 (s)ds t t µ 1 µ 3 µ 2 u 1 (t) + u 3 (t) # 1 u 2 (t) # 1 u,q $ t %[,T ] This is a Separated Continuous Linear Program (SCLP) Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 45
Fluid policies: LBFS, min Makespan, Optimal LBFS V=376 min Makespan V=36 Optimal V=352 1 2 µ 1 µ 3 µ 2 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 46
Time intervals of Optimal Fluid Solution! = [, 4)! = [4,8)! = [8, 24)! = [24, 4) 1 2 3 4 Allocations u 1 = u 1 = u 1 =.25 u 1 =.25 u 2 = u 2 = 1 u 2 = 1 u 2 = 1 u 3 = 1 u 3 = 1 u 3 =.75 u 3 =.25 Define: n " = { k qk ( t) =, t #! n} n # = { k q ( t) $, t %! } " k n 3 3 3 2 2 2 1 1 1 Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 47
Maximum pressure policy (Tassiulas, Stolyar, Dai, Lin, Ata) Max pressure achieves stability for any system with offered load < 1! d dt d dt Q(t) =! " Ru(t)! 2 d Q k (t) = dt Q(t)iQ(t) = 2Q(t)i(" # Ru(t)) k rate stability if offered load = 1 Consider MCQN with fluid dynamics described by where R is the input output matrix, u(t) is the machine allocation, and is the input rate. The machine allocations (controls ) are subject to resource constraints Max pressure attempts to maximize the gradient of the sum of squares of queue lengths At any time t choose allocation u(t) such that max Q(t)iRu(t) s.t. Au(t)! 1, u(t) ", u(t) is available In balanced heavy traffic it may optimize the diffusion approximation Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 48
Maximum Pressure (Tassiulas, Stolyar, Dai-Lin) for MCQN with IVQs Theorem (Dai and Lin 25): MCQN under Max Pressure, when ρ 1 is rate stable: Q lim k (t) t!" t = Adaptation to MCQN with IVQs Theorem: Same holds for MCQN with IVQ, k!k : Q k (t) = Q k () " S k (T k (t)) + % # k 'k (S k ' (T k ' (t))) & k '!$ k!k ' : Q k (t) = Q k () + ( k t " S k (T k (t)) At any time t choose allocation u(t) such that max Q(t)iRu(t) s.t. Au(t)! 1, u(t) ", u(t) is available u(t) = T!(t)! k come from the fluid solution Q k (t) Measure deviations from fluid solution Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 49
Input-Output matrixes when Infinite Virtual Queues exist Time intervals 1 and 2 Time interval 3 Time interval 4 3 3 3 2 2 2 1 1 1 R! µ " 1 1 2 # $ = R = µ 2 # µ $ % 3 & R 3! µ 1 " # $ = % µ 1 µ 2 # µ $ & 3 ' R 4 = " µ 1 % $ ' $!µ 1 µ 2 ' # $!µ 2 µ 3 & ' Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 5
Implementing Maximum Pressure Pressure for buffer k based on k and k+1 current downstream k + 1! K k + 1" K! k! K µ Q µ k ( Qk! Qk + 1) k k k " K! µ k (! k t " D k " Q k +1 ) µ k (! k t " D k ) Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 51
Using Max Pressure to track fluid solution by MCQN-IVQ Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 52
Asymptotic Optimality Theorem: Let Q(t) be the queue length process of a finite horizon MCQN. Let Q N (t) be N scalings of Q(t), with Q N ()=NQ(), and with N-fold speed Of processing. Let q(t) be the optimal fluid solution and let V f be its Objective value. (i) Let V N denote the objective values of Q N (t) for any general policy. Then: lim inf N!" 1 N V N # V f a.s. (ii) and Under max pressure tracking of the fluid solution lim N!" 1 N Q(t)N = q(t) a.s. uniformly on < t < T lim N!" 1 N V N = V f a.s. Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 53
Summary We considered control of MCQN over a finite time horizon We formulated a fluid approximation and formulated SCLP We described a simplex type algorithm to solve SCLP Solution of SCLP provides optimal fluid solution We Introduced MCQN with IVQs IVQs add another level of control to MCQN IVQs provide a new paradigm for balanced heavy traffic. We fitted a MCQN with IVQ model to each interval of the fluid solution We adapted Max Pressure policy to track fluid solution This provides asymptotically optimal policy Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 54
References (1) A Simplex based algorithm to solve SCLP W, Math Prog A, 115:151-198, 28. (2) Near optimal control of queueing networks over a finite time horizon Yoni Nazarathy and Gideon Weiss, Annals of OR online (3) A Push-Pull network with infinite supply of work Anat Kopzon, Yoni Nazarathy and Gideon Weiss, Under review, QUESTA (4) Positive Harris recurrent and diffusion scale analysis of a Push-Pull queueing network with infinite supply of work Yoni Nazarathy and Gideon Weiss, To be presented at Value Tools 28, Performance Evaluation, to appear Challenges - Can we track fluid solution so as to be optimal on the diffusion scale? - Can we extend the policy for Push-Pull to general networks with infinite supply at all heavy traffic nodes? Gideon Weiss, University of Haifa, Finite Horizon Manufacturing - SCLP & IVQs, 29 55