A New Analysis of the LebMeasure Algorithm for Calculating Hypervolume Lyndon While Walking Fish Group School of Computer Science & Software Engineering The University of Western Australia Overview Metrics for MOEAs Hypervolume LebMeasure and its behaviour Empirical data on the performance of LebMeasure A lower-bound on the complexity of LebMeasure The general case Conclusions and future work A New Analysis of LebMeasure Page 2 of 25 Metrics for MOEAs A MOEA produces a front of mutually non-dominating solutions to a given problem m points in n objectives To compare the performance of MOEAs, we need metrics to compare fronts Many metrics have been proposed, of several types cardinality-based metrics convergence-based metrics spread-based metrics volume-based metrics A New Analysis of LebMeasure Page 3 of 25 Hypervolume (S-metric, Lebesgue measure) The hypervolume of a front is the size of the portion of objective space collectively dominated by the points on the front Hypervolume captures in one scalar both the convergence and the spread of the front Hypervolume has nicer mathematical properties than many other metrics Hypervolume can be sensitive to scaling of objectives and to extremal values Hypervolume is expensive to calculate enter LebMeasure A New Analysis of LebMeasure Page 4 of 25 LebMeasure (LM) Given a mutually non-dominating front S, LM calculates the hypervolume dominated exclusively by the first point p, then discards p and processes the rest of S If the hypervolume dominated exclusively by p is not “hyper-cuboid”, LM lops off a hyper-cuboid that is dominated exclusively by p, and replaces p with up to n “spawns” that collectively dominate the remainder of p’s exclusive hypervolume A spawn is discarded immediately if it dominates no exclusive hypervolume, either because it has a “zero” objective, or it is dominated by an unprocessed point A New Analysis of LebMeasure Page 5 of 25 LebMeasure in action A dominates exclusively the yellow shape A lops off the pink hyper-cuboid A has three potential spawns: A1 = (4,9,4) A2 = (6,7,4) A3 = (6,9,3) But A2 is dominated by B, so it is discarded immediately A New Analysis of LebMeasure Page 6 of 25 A boost for LebMeasure Some “spawns of spawns” are guaranteed to be dominated, so LM doesn’t need to generate them at all (1, 9, 4) A11 } (4, 7, 4) A12 guaranteed to (4, 9, 4) A1 (4, 9, 3) A13 be dominated (6, 9, 4) A (6, 9, 3) A3 (6, 9, 3) A3 (9, 7, 5) B (9, 7, 5) B (9, 7, 5) B (1,12, 3) C (1,12, 3) C (1,12, 3) C (4, 2, 9) D (4, 2, 9) D (4, 2, 9) D This limits the maximum depth of the stack to m + n – 1 A New Analysis of LebMeasure Page 7 of 25 But… This boost greatly reduces the space complexity of LM the maximum depth of the stack is linear in both m and n But it does far less for the time complexity of LM note that the time complexity depends not only on the number of stack slots used, but also on how many times each slot is used We shall measure the time complexity of LM in terms of the number of points (and spawns, and spawns of spawns, etc) that actually contribute to the hypervolume i.e. the number of hyper-cuboids that must be summed A New Analysis of LebMeasure Page 8 of 25 Running LebMeasure m points in n objectives n m=2 2 2 5 8 10 1 5 ••• 5 3 4 25 64 100 2 4 ••• 4 4 8 125 512 1,000 3 3 ••• 3 5 16 625 4,096 10,000 6 32 3,125 32,768 100,000 7 64 15,625 262,144 1,000,000 8 128 78,125 2,097,152 10,000,000 9 256 390,625 16,777,216 100,000,000 4 2 ••• 2 5 1 ••• 1 m=5 m=8 m = 10 No. of hyper-cuboids = mn−1 A New Analysis of LebMeasure Page 9 of 25 Running LebMeasure (in reverse order) m points in n objectives n m=2 2 2 5 8 10 1 5 ••• 5 3 2 5 8 10 2 4 ••• 4 4 2 5 8 10 3 3 ••• 3 5 2 5 8 10 6 2 5 8 10 7 2 5 8 10 8 2 5 8 10 9 2 5 8 10 4 2 ••• 2 5 1 ••• 1 m=5 m=8 m = 10 No. of hyper-cuboids = m A New Analysis of LebMeasure Page 10 of 25 Running LebMeasure (in optimal order) n m=2 2 2 3 4 5 3 2 3 4 5 1 1 2 3 4 5 1 ••• 5 4 4 6 8 10 2 2 3 4 5 1 2 ••• 4 5 4 17 23 29 6 8 17 88 112 3 3 4 5 1 2 3 ••• 3 7 8 35 88 549 4 4 5 1 2 3 4 ••• 2 8 16 105 180 549 9 16 105 558 1,115 5 5 1 2 3 4 5 ••• 1 10 32 213 2,248 3,421 11 32 641 2,248 14,083 12 64 641 4,528 70,899 13 64 1,289 13,708 70,889 14 128 3,873 54,976 142,309 15 128 3,873 54,976 428,449 16 256 7,761 110,160 1,721,605 17 256 23,297 331,128 8,618,577 m points in n objectives No. of hyper-cuboids m(m!)((n−2)div m)((n – 2)mod m)! A New Analysis of LebMeasure m=3 m=4 m=5 Page 11 of 25 Running LebMeasure (first point only) m points in n objectives n m=2 2 1 1 1 1 1 5 ••• 5 3 3 9 15 19 2 4 ••• 4 4 7 61 169 271 3 3 ••• 3 5 15 369 1,695 3,439 6 31 2,101 15,961 40,951 7 63 11,529 144,495 468,559 8 127 61,741 1,273,609 5,217,031 9 255 325,089 11,012,415 56,953,279 4 2 ••• 2 5 1 ••• 1 m=5 m=8 m = 10 No. of hyper-cuboids = mn−1 – (m – 1)n−1, i.e. O(mn−2) A New Analysis of LebMeasure Page 12 of 25 A lower-bound on the complexity of LebMeasure We can determine a lower-bound on the worst-case complexity of LM by considering a single example 1 2 2 2 ••• 2 2 1 1 1 ••• 1 We will derive a recurrence for the number of hyper-cuboids summed for this example, then prove that the recurrence equals 2n−1 A New Analysis of LebMeasure Page 13 of 25 The simple picture 12222 11222 12122 12212 12221 11122 11212 12112 11221 12121 11112 11121 A New Analysis of LebMeasure 12211 11211 12111 Page 14 of 25 The recursive picture 12222 11222 12122 12212 12221 11122 11212 12112 11221 12121 11112 11121 A New Analysis of LebMeasure 12211 11211 12111 Page 15 of 25 A recurrence h(n,k) gives the number of hyper-cuboids summed for a point (or spawn) with n 2s, of which we can reduce k and still generate points that aren’t dominated by their relatives h(1, k ) 1 k 1 h(n, k ) 1 h(n 1, i ) i 0 hcs(n) gives the total number of hyper-cuboids summed for the example, with n objectives hcs(n) h(n 1, n 1) 1 A New Analysis of LebMeasure Page 16 of 25 The recurrence in action [h(4,4)] (1,2,2,2,2) (1,1,2,2,2) (1,2,1,2,2) (1,2,2,1,2) (1,2,2,2,1) [h(3,0)] [h(3,1)] [h(3,2)] [h(3,3)] A New Analysis of LebMeasure Page 17 of 25 The recurrence solved Simple expansion shows that h(k , k ) 2 k 1 1 hcs(n) 2 n1 The paper gives a formal proof using mathematical induction A New Analysis of LebMeasure Page 18 of 25 The general case It is difficult to be certain what patterns of points will perform worst for LM We will describe the behaviour of an illegal “beyond worst case” pattern m m ••• m m−1 m−1 ••• m−1 ••• 1 ••• ••• 1 ••• 1 Illegal because some points dominate others A New Analysis of LebMeasure Page 19 of 25 m points in 2 objectives u1v1 denotes the ith best value in objective x xi Each vertical list has length m Total size m2 A New Analysis of LebMeasure Page 20 of 25 m points in 3 objectives u1v1w1 Each vertical list has length m Each 2-way sub-tree has size m2 Total size m3 A New Analysis of LebMeasure Page 21 of 25 m points in 4 objectives u1v1w1x1 1 3 2 1 3 2 1 3 2 1 3 2 k denotes a k-way sub-tree Each k-way sub-tree has size mk Total size m4 A New Analysis of LebMeasure Page 22 of 25 A recurrence and its solution Again, we can capture this behaviour as a recurrence q( 0 ,y,z) 1 y 1 q(x,y,z) 1 q(x 1,y,z) q( z , i, z ) i 1 m 1 p(m,n) q (i, n, i ) i 0 By simple expansion (and proved formally in the paper) m p(m, n) i n i 1 A New Analysis of LebMeasure Page 23 of 25 Conclusions LM is exponential in the number of objectives, in the worst case Re-ordering the points often makes LM go faster, but the worst case is still exponential the proof technique used for the “simple” case will also work for the “unreorderable” case A New Analysis of LebMeasure Page 24 of 25 Future work Try to make LM faster re-order the points re-order the objectives Develop and refine other algorithms (e.g. HSO) possibly develop a hybrid algorithm Prove that no polynomial-time algorithm exists for calculating hypervolume A New Analysis of LebMeasure Page 25 of 25
© Copyright 2026 Paperzz