EMO 2005 LebMeasure - The University Of Western Australia

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 n1

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