On comparison of different approaches to the stability radius calculation Olga Karelkina Department of Mathematics University of Turku MCDM 2011 Outline Preliminaries Problem statement Exact method for calculation stability radius proposed by Chakravarti and Wagelmans NSGA-II adaptation for calculation stability radius Illustration and comparison of two approaches Slide 2 of 25 Two major directions of investigation can be single out quantitative • bounds for feasible changes in initial data, which preserve some pre-assigned properties of optimal solutions • deriving algorithms for the bounds calculation qualitative • conditions under which the set of optimal solutions of the problem possesses a certain pre-assigned property of invariance to external influence on initial data of the problem Slide 3 of 25 Shortest path problem (SP) Given a directed graph G = (V,E),|V|= m and |E|= n c – a nonnegative cost associated with each edge i e E i Problem: find a directed path from a source node s to a distinguished terminal node t , with the minimum total cost. The feasible set is the set of all sequences P =(ei1 ,…,eik ) , these sequences are directed paths from s to t in G. Slide 4 of 25 SP as LP Vector of ordered edges costs C= c1,c2 ,…,cn Rn+ , x = x1,x2 ,…,xn En 1, if ei P, xi = 0 otherwise c x min eiE i i 1, if j = s, x i - x i = -1, if j = t, e:ei j e:ei j 0 otherwise Slide 5 of 25 Perturbation of the problem We define norms d N l1 y 1 = yi , iNd and l y in Rd for any finite dimension = max y i |i Nd , y =(y1,y2 ,…,yd)T Rd,Nd =1,2,…,d. The perturbation of the problem parameters is modeled by adding to the cost vector C perturbing vector C = c1,c2 ,…,cn Rn, C < ε, ε > 0. The set of the perturbing vectors is denoted by Ω(ε). Slide 6 of 25 Stability radius En Let X 2 be the set of feasible solutions to the shortest path problem Let Xopt(C) be the set of optimal solutions to the shortest path problem with cost vector C . An optimal solution x Xopt(C) is called stable if ε > 0 C Ω(ε) x Xopt(C+C). Stability radius of an optimal solution x Xopt(C) supΘ, if Θ , ρ(x,C) = if Θ = . 0, Θ = ε > 0 | C Ω(ε) x X (C + C) . opt Slide 7 of 25 Stability radius V. A. Emelichev, D.P. Podkopaev, Quantitative stability analysis for vector problems of 0 – 1 programming, Discrete Optimization. 7 (2010) 48 – 63 ρ(x,C) = min c (x - x ) iNn x X\{x} The largest i i i x - x 1 ρ such that for ci ρ, i Nn c +c x c +c x, iNn (1) i i i iNn i i i x X Slide 8 of 25 Calculating the stability radii of an optimal solution to the linear problem of 0-1 programming Cx min (2) xX Theorem Let x be an optimal solution to (2). The stability radius of x is the maximum number ρ satisfying the following inequality : min ci - ρdi xi ci + ρ x i x X\x iNn iNn (3) if x i = 0, 1, di = -1, if x i =1. Slide 9 of 25 ρ(x,C) is the maximal ρ ρ min x X\{x} satisfying the inequality : C (x - x ) iNn i i x - x i 1 From here taking into account xi - x i = x + di xi , i Nn x - x 1 = xi - x i = x + di xi iNn iNn we get min ci - ρdi xi -ci + ρ x i xX\x iNn iNn Slide 10 of 25 Let us denote v ρ = min ci - ρdi x i x X\x iNn D. Gusfield, Parametric combinatorial computing and a problem of program module distribution, J. Assoc. Comput. Mach. 30 (1983) 551 – 563 v ρ is a continuous, piecewise linear and concave function of ρ Lemma The number of linear pieces of v ρ is Οn Slide 11 of 25 Chakravarti and Wagelmans polinomial algorithm Construction of v ρ on [0, C ] Compute v 0 and v C The optimal solutions associated with these values each defines a linear function on [0, C ] If these functions are identical, then v ρ is simply this linear function Otherwise, we have two linear functions which intersect at a unique value ρ [0, C ] If ρ,v ρ coincides with the intersection point, then v ρ is the concave lower envelope of the two linear functions Otherwise, the optimal solution associated with ρ defines a third linear function which intersects each of the other linear functions on [0, C ] Slide 12 of 25 Chakravarti and Wagelmans polinomial algorithm Slide 13 of 25 A fast and elitist multi-objective genetic algorithm: NSGA-II Modules A. A fast non-dominated sorting approach B. Diversity presentation • Density estimation • Crowded comparison operator C. The main loop Slide 14 of 25 Begin Initialize Population gen=0 Evaluation Cond ? Yes gen=gen+1 Assign Fitness No Reproduction Stop Crossover Mutation Slide 15 of 25 Implementation of NSGA-II into calculation stability radius c (x - x ) = f(x,C) min iNn i i i 1 x - x 1 = f2(x,C) max Pareto set P2 C x X| x X f x, C f x, C f x, C f x,C f x, C f x, C f x, C f x, C 1 1 1 2 1 2 2 2 Slide 16 of 25 Representation Graph is represented by costs matrix (vector) Every variable (feasible solution) is coded in a fixed length binary string Initialization Breadth First Search Evaluation A fast non-dominated sorting approach P = find-nondominated-front(P) P = 1 p P p P P =PUp for each q P q p if p q , then P =P \ q for each else if q p, then P =P \ p include first member in P take one soltion at a time include p in P temporarily P compare p with other members of if p dominates a member of P, delete it if p is dominated by other members of P, do not include P in Slide 17 of 25 Assign fitness Density estimation Crowding distance idistance is an estimate of the size of the largest cuboid enclosing the point i without including any other point in the population Crowded comparison operator i n j irank < jrank irank = jrank idistance > jdistance Slide 18 of 25 Reproduction The tournament selection scheme The strings with minimum front number and minimum value of ratios f(x,C) 1 f2(x,C) are selected to the mating pool. A directed graph on 10 nodes Slide 19 of 25 Crossovers One-Node crossover 5 is a common node for both parents One-Edge crossover Edges (2,3) and (1,7) are used as links Slide 20 of 25 One-Node-Two-Edges crossover Nodes 4 and 8 do not belong to any of the parents, subpaths ((3,4),(4,6)) and ((6,8),(8,7)) are used as links Slide 21 of 25 Mutation The search of genetic algorithm is mainly guided by crossover operators, even though mutation operator is also used to maintain diversity in the population. Scheme of two mutation types Slide 22 of 25 Pareto fronts 5 generations 10 generations 15 generations 20 generations Slide 23 of 25 Simulation results We consider a family of randomly generated directed graphs on 100 vertices and with approximately 5000 edges. Weight range is [1, 50]. The population size is set to 100 (number of vertices), while the probabilities of the one-node, one-edge and one-node-two-edges crossovers are 0.2, 0.3 and 0.5 correspondingly, mutation probability increases with the number of generations. Tests show that in average NSGA-II converges in 80% cases and gives the exact solution after 5 – 20 generations. Calculation results were compared with solutions obtained by exact method proposed by N. Chakravarti and A. P. M. Wagelmans in Calculation of stability radii for combinatorial optimization problems, OR Letters. 23 (1998) 1 – 7. Complexity of the exact method is n n2 nLog n NSGA-II complexity is kn2 Here n is the number of vertices and k is the number of generations. Slide 24 of 25 References 1. 2. 3. 4. 5. V.A. Emelichev, V.N. Krichko, D.P. Podkopaev, On the radius of stability of a vector problem of linear Boolean programming, Discrete Math. Appl. 10 (2000) 103 – 108 N. Chakravarti, A. P.M. Wagelmans, Calculation of stability radii for combinatorial optimization problems, OR Letters. 23 (1998) 1 – 7 D. Gusfield, Parametric combinatorial computing and a problem of program module distribution, J. Assoc. Comput. Mach. 30 (1983) 551 – 563 V. A. Emelichev, D.P. Podkopaev, Quantitative stability analysis for vector problems of 0 – 1 programming, Discrete Optimization. 7 (2010) 48 – 63 K. Deb, A. Pratap, S. Agarwal, T. Meyarivan, A fast and elitist multiobjective genetic algorithm: NSGA-II, Evolutionary Computation. 6 (2) (2002), 182 – 197 Slide 25 of 25 Thank You for Your interest