This is the presentation of the paper "Quasi-Optimal Recombination Operator" presented in EvoCOP 2019 (Best paper session). The paper is available in LNCS with doi: https://doi.org/10.1007/978-3-030-16711-0_9
Nell’iperspazio con Rocket: il Framework Web di Rust!
Quasi-Optimal Recombination Operator
1. Quasi-Optimal Recombination Operator
Francisco Chicano, Gabriela Ochoa, Darrell Whitley, Renato Tinós
DENTIDAD
rca Universidad de Málaga
VERSIÓN VERTICAL EN POSITIVO
VERSIÓN VERTICAL EN NEGATIVO
2. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 2
• Recombination Operators
• Gray-Box Optimization
• Dynastic Potential Crossover
• Experiments
• Conclusions and Future Work
Outline
3.
4. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 4
Recombination Operators
a b b c d c c a a d
a a c c a b c b a d
x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
Parent 1
Parent 2
a b c c d b c b a dChild
Gene Transmission → Respect Property
Radcliffe (1994)
5. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 5
Dynastic Potential
Set of solutions that can be generated by the recombination operator
If d(x,y) is the Hamming distance between solutions x and y…
Single point crossover DP size: 2 d(x,y)
z-point crossover DP size: O( d(x,y)z )
Uniform crossover DP size: 2d(x,y)
Largest DP size for a recombination operator with the gene transmission
property:
2d(x,y)
6. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 6
Optimal Recombination Operator
Produces the best solution in the largest dynastic potential…
…exploring hyperplane defined by the common variables (2d(x,y) solutions)
Eremeev,
Kovalenko
(2013)
x f(x)
x f(x)
It requires time O(2n) in a black-box setting
It can be done in time
in a gray-box setting for low-epistasis
functions
Abstract. The output of an optimal recombination operator for t
parent solutions is a solution with the best possible value for the
jective function among all the solutions fulfilling the gene transmiss
property: the value of any variable in the o↵spring must be inheri
from one of the parents. This set of solutions coincides with the larg
dynastic potential for the two parent solutions of any recombination
erator with the gene transmission property. In general, exploring the
dynastic potential is computationally costly, but if the variables of
objective function have a low number of non-linear interactions amo
them, the exploration can be done in O(4 (n + m) + n2
) time, for pr
lems with n variables, m subfunctions and a constant. In this pap
we propose a quasi-optimal recombination operator, called Dynastic P
tential Crossover (DPX), that runs in O(4 (n + m) + n2
) time in a
case and is able to explore the full dynastic potential for low-epista
combinatorial problems. We compare this operator, both theoretica
and experimentally, with two recently defined e cient recombinat
operators: Partition Crossover (PX) and Articulation Points Partit
Crossover (APX). The empirical comparison uses NKQ Landscapes a
7. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 7
Contribution
• Time complexity:
• Behaves like an Optimal Recombination Operator for low-epistasis
fitness functions functions
• Based on Gray-Box Optimization
f any variable in the o↵spring must be inherited
ts. This set of solutions coincides with the largest
the two parent solutions of any recombination op-
ransmission property. In general, exploring the full
computationally costly, but if the variables of the
ve a low number of non-linear interactions among
can be done in O(4 (n + m) + n2
) time, for prob-
m subfunctions and a constant. In this paper,
timal recombination operator, called Dynastic Po-
X), that runs in O(4 (n + m) + n2
) time in any
xplore the full dynastic potential for low-epistasis
ms. We compare this operator, both theoretically
with two recently defined e cient recombination
Crossover (PX) and Articulation Points Partition
e empirical comparison uses NKQ Landscapes and
Quasi-Optimal
Recombination Operator
8.
9. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 9
Gray-Box structure: MK Landscapes
Example (k=2):
f = + + +f(1)(x) f(2)(x) f(3)(x) f(4)(x)
x1 x2 x3 x4
ndscape [3] with bounded epistasis k is de-
tion f(x) that can be written as the sum
ns, each one depending at most on k input
is:
f(x) =
mX
i=1
f(i)
(x), (1)
unctions f(i)
depend only on k components
d Landscapes generalize NK-landscapes and
problem. We will consider in this paper that
ubfunctions is linear in n, that is m 2 O(n).
pes m = n and is a common assumption in
t m 2 O(n).
S IN THE HAMMING BALL
Equ
change
f(l)
th
this su
On the
we onl
change
acteriz
we can
3.1
Each subfunction is unknown
and depends on k variables
All compresible pseudo-Boolean
functions can be transformed into
this in polynomial time
10. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 10
Variable Interaction
f = + + +f(1)(x) f(2)(x) f(3)(x) f(4)(x)
x1 x2 x3 x4
xi and xj interact when they appear together in the same subfunction*
If xi and xj don’t interact: ∆ij = ∆i + ∆j
x4 x3
x1 x2
Variable Interaction Graph (VIG)
12. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 12
Let us suppose our function has the following VIG…
if(x1, x2, . . . , xn) = f(x1, x2, . . . , 1i, . . . , xn) f(x1, x2, . . . , 0i, . . . , xn)
f(x1, x2, x3, x4) = x1x2 + x2x3 + x2x4 + x3x4
x9
x20
x23
x22
x21
x8
x10
x1 x2
x3
x4
x5
x6
x7
x15
x14
x13
x12
x11
x16
x19
x18
x17
a
c
b
a
c
ab
a
b
c
b
d
a
a
a
b
d
b c
a
b
a
d
Recombination Graph
13. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 13
Let us suppose our function has the following VIG…
if(x1, x2, . . . , xn) = f(x1, x2, . . . , 1i, . . . , xn) f(x1, x2, . . . , 0i, . . . , xn)
f(x1, x2, x3, x4) = x1x2 + x2x3 + x2x4 + x3x4
x9
x20
x23
x22
x21
x8
x10
x1 x2
x3
x4
x5
x6
x7
x15
x14
x13
x12
x11
x16
x19
x18
x17
a
c
c
a
c
ab
a
b
d
c
d
a
a
c
b d
b c
b
b
b
d
a
c
b
a
c
ab
a
b
c
b
d
a
a
a
b
d
b c
a
b
a
d
Recombination Graph
14. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 14
Let us suppose our function has the following VIG…
if(x1, x2, . . . , xn) = f(x1, x2, . . . , 1i, . . . , xn) f(x1, x2, . . . , 0i, . . . , xn)
f(x1, x2, x3, x4) = x1x2 + x2x3 + x2x4 + x3x4
x9
x20
x23
x22
x21
x8
x10
x1 x2
x3
x4
x5
x6
x7
x15
x14
x13
x12
x11
x16
x19
x18
x17
a
c
c
a
c
ab
a
b
d
c
d
a
a
c
b d
b c
b
b
b
d
a
c
b
a
c
ab
a
b
c
b
d
a
a
a
b
d
b c
a
b
a
d
Recombination Graph
15. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 15
The recombination graph is a subgraph of VIG containing only the differing variables
Partition Crossover takes all the variables in a component from the same parent
The contribution of each component to the fitness value of the offspring is
independent of each other
x23
x18
x9
x3
x5
x16
FOGA 2015: Tinós, Whitley, C.
Recombination Graph
16. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 16
The recombination graph is a subgraph of VIG containing only the differing variables
Partition Crossover takes all the variables in a component from the same parent
The contribution of each component to the fitness value of the offspring is
independent of each other
x23
x18
x9
x3
x5
x16
FOGA 2015: Tinós, Whitley, C.
Recombination Graph
PX: If there are q
components, the best
offspring out of 2q
solutions is obtained
17. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 17
x23
x18
x9
x3
x5
x16
x1
Articulation Points Partition Crossover (APX) identifies articulation points in the
recombination graph
It implicitly considers all the solutions PX would consider if one or none articulation
point is removed from each connected component
APX will consider 2 and 3
components and will provide
the best of 32 solutions
APX can break one connected
component by flipping
variables in one of the parents
Recombination Graph
GECCO 2018: C. Ochoa, Whitley, Tinós
18.
19. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 19
Dynastic Potential Crossover
x23 x9
x3
x5
x1
We compute the optimum using dynamic programming by
eliminating the variables
Hammer, Rosenberg, Rudeanu (1963)
20. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 20
x23 x9
x3
x5
x1 x3 value x5
c
d
We compute the optimum using dynamic programming by
eliminating the variables
Dynastic Potential Crossover
21. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 21
x23 x9
x3
x5
x1 x3 value x5
c
d
x5 value
b 3
c 5
We compute the optimum using dynamic programming by
eliminating the variables
Dynastic Potential Crossover
22. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 22
x23 x9
x3
x5
x1 x3 value x5
c 5 c
d
x5 value
b 3
c 5
We compute the optimum using dynamic programming by
eliminating the variables
Dynastic Potential Crossover
23. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 23
x23 x9
x3
x5
x1 x3 value x5
c 5 c
d 6 b
We compute the optimum using dynamic programming by
eliminating the variables
Dynastic Potential Crossover
24. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 24
x23 x9
x3
x1 x3 value x5
c 5 c
d 6 b
We compute the optimum using dynamic programming by
eliminating the variables
We add this subfunction
Dynastic Potential Crossover
25. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 25
x23 x9
x1 x3 value x5
c 5 c
d 6 b
We compute the optimum using dynamic programming by
eliminating the variables
x1 value x3
b 11 c
d 10 d
Dynastic Potential Crossover
26. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 26
x23 x9
x3 value x5
c 5 c
d 6 b
We compute the optimum using dynamic programming by
eliminating the variables
x1 value x3
b 11 c
d 10 d
x9 value x1
b 20 d
c 15 c
Dynastic Potential Crossover
27. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 27
x23
x3 value x5
c 5 c
d 6 b
We compute the optimum using dynamic programming by
eliminating the variables
x1 value x3
b 11 c
d 10 d
x9 value x1
b 20 d
c 15 c
x23 value x9
a 22 c
c 18 b
Dynastic Potential Crossover
28. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 28
x23
x3 value x5
c 5 c
d 6 b
When one variable remains we take its best value and
reconstruct the solution (optimal child)
x1 value x3
b 11 c
d 10 d
x9 value x1
b 20 d
c 15 d
x23 value x9
a 22 c
c 18 b
x23 x9 x1 x3 x5
a c d d b
Dynastic Potential Crossover
29. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 29
unnumbered node with a higher number of nu
ties arbitrarily. Figure 3 (left) shows the resu
connected component of Figure 2.
3
7
8
12
13
15
2
5
1
6
3
4
Fig. 3. Maximum Cardinality Search applied to
Figure 2 (left) and clique tree with the sets of sep
If the graph is chordal then MCS will provi
that for each triple of nodes u, v and w, with (u
number than v, w, it happens that (v, w) 2 E.
not chordal. A fill-in algorithm tests this cond
to make the graph chordal. This algorithm ru
the number of edges in the final chordal grap
complexity is O(n2
). These two steps, MCS an
connected component separately or to the com
the same result. The algorithms are applied in
3.2 Clique Tree
puting the treewidth of a graph is an NP-hard problem [4]. Thus, heuristics
should be applied to find an elimination order for the variables. The problem
of variable elimination has also been studied in other contexts, like Gaussian
Elimination [12] and Bayesian Networks [4]. In fact, we follow the works done
for computing the junction tree in Bayesian Networks. In order to do this, we
first need a chordal graph and then compute the clique tree (or junction tree),
which will fix the order in which the variables are eliminated using Dynamic
Programming. Our contribution in this work consists in applying these ideas to
the recombination operator. The high level pseudocode of the proposed DPX is
presented in Algorithm 1. In the next subsections we will detail each of these
steps.
Algorithm 1 Pseudocode of DPX
Input: two parents x and y
Output: one o↵spring z
1: Compute the Recombination Graph of x and y as in [6]
2: Apply Maximum Cardinality Search to the Recombination Graph [12]
3: Apply the fill-in procedure to make the graph chordal [12]
4: Apply the Clique Tree construction procedure [13]
5: Assign subfunctions to cliques in the clique tree
6: Apply Dynamic Programming to find the o↵spring (see Algorithm 2)
7: Build z using the tables filled by Dynamic Programming
In general, we have to build a clique tree (junction tree)
Galinier, Habib, Paul (1995)Tarjan, Yannakis (1984)
Dynastic Potential Crossover
30. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 30
node with a higher number of numbered neighbors and solving the
ily. Figure 3 (left) shows the result of applying MCS to the third
omponent of Figure 2.
3
7
8
12
13
15
2
5
1
6
3
4
C1 = {7, 12, 13, 15}
S1 = ;
R1 = {7, 12, 13, 15}
C2 = {3, 7, 13}
S2 = {7, 13}
R2 = {3}
C3 = {3, 8}
S3 = {3}
R3 = {8}
mum Cardinality Search applied to the third connected component of
numbered node with a higher number of numbered neighbors and solvin
s arbitrarily. Figure 3 (left) shows the result of applying MCS to the
nnected component of Figure 2.
3
7
8
12
13
15
2
5
1
6
3
4
C1 = {7, 12, 13, 15}
S1 = ;
R1 = {7, 12, 13, 15}
C2 = {3, 7, 13}
S2 = {7, 13}
R2 = {3}
C3 = {3, 8}
S3 = {3}
R3 = {8}
g. 3. Maximum Cardinality Search applied to the third connected compone
Recombination graph Clique tree
Dynastic Potential Crossover
31. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 31
Recombination graph Clique tree
red with higher probability. The only thing that can prevent
s from being explored is that many of them appear in one single
tion is illustrated in Figure 4. For 1, the clique of articu
aluated only in the two parent solutions, and the same happ
cliques, giving a total of 16 explored combinations. However,
re 20 combinations in this situation (see Eq. (6) in [7]).
3 6 4 1
5
2 C1 = {4, 5, 6}
S1 = ;
R1 = {4, 5, 6}
C2 = {3, 6}
S2 = {6}
R2 = {3}
C3 = {2, 5}
S3 = {5}
R3 = {2}
C4 = {1,
S4 = {4}
R4 = {1}
4. Pathological component (left) in a recombination graph where DP
res less solutions (16) than APX (20) and its clique tree (right).
en to be exhaustively explored (Lines 2 and 4 of Algorithm 2) we cho
articulation points first. This way, articulation points can be exhausti
ored with higher probability. The only thing that can prevent articula
ts from being explored is that many of them appear in one single clique. T
ation is illustrated in Figure 4. For 1, the clique of articulation po
valuated only in the two parent solutions, and the same happens with
r cliques, giving a total of 16 explored combinations. However, APX wo
ore 20 combinations in this situation (see Eq. (6) in [7]).
3 6 4 1
5
2 C1 = {4, 5, 6}
S1 = ;
R1 = {4, 5, 6}
C2 = {3, 6}
S2 = {6}
R2 = {3}
C3 = {2, 5}
S3 = {5}
R3 = {2}
C4 = {1, 4}
S4 = {4}
R4 = {1}
4. Pathological component (left) in a recombination graph where DPX with
ores less solutions (16) than APX (20) and its clique tree (right).
Dynastic Potential Crossover
32. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 32
What if we have too many variables to
enumerate?
We put a limit 𝛽 on the number fo variables that are fully
enumerated
The remaining ones are taken in block from the parents
This makes the operator is Quasi-Optimal…
…and makes the time complextiy to be:
unnumbered node with a higher number of numbered neighbors and solv
ties arbitrarily. Figure 3 (left) shows the result of applying MCS to th
connected component of Figure 2.
3
7
8
12
13
15
2
5
1
6
3
4
C1 = {7, 12, 13, 15}
S1 = ;
R1 = {7, 12, 13, 15}
C2 = {3, 7, 13}
S2 = {7, 13}
R2 = {3}
C3 = {3, 8}
S3 = {3}
R3 = {8}
Fig. 3. Maximum Cardinality Search applied to the third connected compo
Figure 2 (left) and clique tree with the sets of separators and residues (right).
If the graph is chordal then MCS will provide a numbering of the nod
that for each triple of nodes u, v and w, with (u, v), (u, w) 2 E and u has
number than v, w, it happens that (v, w) 2 E. If this is not the case, the g
not chordal. A fill-in algorithm tests this condition and adds the require
to make the graph chordal. This algorithm runs in O(n + s0
) time, whe
the number of edges in the final chordal graph. Again, in the worst ca
complexity is O(n2
). These two steps, MCS and fill-in, can be computed
complexity of Algorithm 2 to 22
. Since is a
user of the algorithm, the exponential factor t
is not anymore an optimal recombination oper
call it quasi-optimal. In the cases where |C
will still return the optimal o↵spring. The nex
of DPX.
Theorem 1. Given a function in the form of
plexity of DPX with a constant bound for th
variables is O(4 (n + m) + n2
).
Proof. We have seen in Section 3.1 that the c
Dynastic Potential Crossover
33. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 33
Compared to Partition Crossover:
DPX cannot be worse (it behaves like PX in the worst case)
Compared to Articulation Points Partition Crossover
When 𝛽 is limiting the enumeration of variables, articulation points
are taken first
DPX can be worse in pathological cases…
…but is better most of the time
Dynastic Potential Crossover
34.
35. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 35
Deterministic Recombination and
Iterated Local Search (DRILS)
4: child PX(current, next);
5: if child = current or child = next then
6: current next;
7: else
8: current HBHC(child);
9: end if
10: end while
PX PX
Figure 4: Graphical illustration of DRILS. Curly arrows rep-
resent HBHC while normal arrows represent a perturbation
ipping N random bits.
graphical illustration of the algorithm is presented in Figure 4 and
Hill Climber
Perturbation
( 𝝰 N bits flipped)
Random Solution Local Optimum
X X
36. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 36
Problems and Instances
An NK Landscape is a pseudo-Boolean optimization problem with objective function:
where each subfunction f(l) depends on variable xl and K other variables
MAX-SAT consists in finding an assignment of variables to Boolean (true and false)
values such that the maximum number of clauses is satisfied
A clause is an OR of literals: x1 ∨ ¬x2 ∨ x3
S2(x) = f (x 2) f (x) + f (x 2) f (x) + f (x 2) f (x)
S1,2(x) = f(1)
(x 1, 2) f(1)
(x)+f(2)
(x 1, 2) f(2)
(x)+f(3)
(x 1, 2) f(3)
(x)
S1,2(x) 6= S1(x) + S2(x)
f(x) =
NX
l=1
f(l)
(x)
1
x7
x8 x9
x10
(a) Sample VIG
x1
x2
x3x4
x5
x6
x7
x8 x9
x10
(b) Selected and adjacent variables
x1
x2
x3x4
x5
x6
x7
x8 x9
x10
(c) Sample random VIG
Random model
37. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 37
DPX Statistics with NKQ Landscapes
Table 1. DPX Statistics for n =10 000 variables.
Comp. Exp. Full (%) Time (ms) Comp. Exp. Full (%) Time (ms)
K = 2 K = 4
=2 64 212 99.9 6.8 =2 13 44 99.3 6.2
=3 64 210 100.0 3.9 =3 12 42 100.0 3.5
=4 64 210 100.0 3.9 =4 12 42 100.0 3.4
=5 64 210 100.0 3.9 =5 12 42 100.0 3.6
K = 3 K = 5
=2 50 232 94.7 8.4 =2 11 42 99.0 7.1
=3 50 225 99.8 4.7 =3 11 39 99.9 3.8
=4 50 226 99.9 4.7 =4 11 39 99.9 3.8
=5 50 226 99.9 4.8 =5 11 40 100.0 4.0
Table 2. DPX Statistics for n =100 000 variables.
Comp. Exp. Full (%) Time (ms) Comp. Exp. Full (%) Time (ms)
K = 2 K = 4
=2 668 2 249 99.9 75.5 =2 140 567 91.2 69.2
DPX explores approximately the solutions explored by PX to the power of 4
|DPX| = |PX|4
38. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 38
DPX Statistics with NKQ Landscapes
DPX explores approximately the solutions explored by PX to the power of 4
|DPX| = |PX|4
=5 =5
K = 3 K = 5
=2 50 232 94.7 8.4 =2 11 42 99.0 7.1
=3 50 225 99.8 4.7 =3 11 39 99.9 3.8
=4 50 226 99.9 4.7 =4 11 39 99.9 3.8
=5 50 226 99.9 4.8 =5 11 40 100.0 4.0
Table 2. DPX Statistics for n =100 000 variables.
Comp. Exp. Full (%) Time (ms) Comp. Exp. Full (%) Time (ms)
K = 2 K = 4
=2 668 2 249 99.9 75.5 =2 140 567 91.2 69.2
=3 668 2 249 100.0 74.1 =3 140 566 99.1 68.8
=4 668 2 248 100.0 72.5 =4 141 571 99.3 71.0
=5 670 2 261 100.0 81.6 =5 142 587 99.2 82.2
K = 3 K = 5
=2 505 2 693 63.2 110.6 =2 121 570 89.6 75.9
=3 505 2 691 94.0 109.6 =3 121 570 89.6 75.9
=4 506 2 702 94.7 113.3 =4 122 575 96.9 77.2
=5 505 2 726 94.8 126.1 =5 123 596 96.8 91.9
of the number of explored solutions (column “Exp.” in the tables) is a good
measure of the number of di↵ering variables in the parent solutions. If we divide
this number by the number of components we find a value between 3 and 4. This
must be the average number of variables in each connected component.
Both the number of components and the di↵ering variables are approximately
39. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 39
DPX Statistics with NKQ Landscapes
DPX explores approximately the solutions explored by PX to the power of 4
|DPX| = |PX|4
=5 =5
K = 3 K = 5
=2 50 232 94.7 8.4 =2 11 42 99.0 7.1
=3 50 225 99.8 4.7 =3 11 39 99.9 3.8
=4 50 226 99.9 4.7 =4 11 39 99.9 3.8
=5 50 226 99.9 4.8 =5 11 40 100.0 4.0
Table 2. DPX Statistics for n =100 000 variables.
Comp. Exp. Full (%) Time (ms) Comp. Exp. Full (%) Time (ms)
K = 2 K = 4
=2 668 2 249 99.9 75.5 =2 140 567 91.2 69.2
=3 668 2 249 100.0 74.1 =3 140 566 99.1 68.8
=4 668 2 248 100.0 72.5 =4 141 571 99.3 71.0
=5 670 2 261 100.0 81.6 =5 142 587 99.2 82.2
K = 3 K = 5
=2 505 2 693 63.2 110.6 =2 121 570 89.6 75.9
=3 505 2 691 94.0 109.6 =3 121 570 89.6 75.9
=4 506 2 702 94.7 113.3 =4 122 575 96.9 77.2
=5 505 2 726 94.8 126.1 =5 123 596 96.8 91.9
of the number of explored solutions (column “Exp.” in the tables) is a good
measure of the number of di↵ering variables in the parent solutions. If we divide
this number by the number of components we find a value between 3 and 4. This
must be the average number of variables in each connected component.
Both the number of components and the di↵ering variables are approximately
Full dynastic potential (22261)
explored in 82ms
40. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 40
Comparison with (A)PX in NKQ Landscapes
Table 3. Comparison of PX, APX and DPX for N =100 000 variables. The value for
↵ depends on K as described in the text and in DPX we used = 4.
Exploration DRILS Performance Runtime (ms)
K PX APX DPX PX APX PX APX DPX
2 662 1 311 2 248 1N 0O 9 = 0N 8O 2 = 46 55 73
3 503 1 105 2 702 10N 0O 0 = 2N 0O 8 = 73 67 113
4 138 286 571 0N 4O 6 = 0N 9O 1 = 52 55 71
5 119 254 575 0N 9O 1 = 0N 10O 0 = 52 63 77
Table 4. Comparison of PX, APX and DPX for MAX-SAT instances (weighted and
unweited). In all the cases ↵ = 0.3 in DRILS and = 4 in DPX.
DRILS Performance Runtime (µs)
Instances PX APX PX APX DPX
Unweighted 126N 2O 32 = 96N 19O 45 = 1 060 849 1 907
Weighted 102N 14O 16 = 90N 17O 25 = 1 713 2 365 5 171
N=100 000, 𝛽=4|APX| ≈ |PX|2
|PX|
|APX|
|DPX| ≈ |APX|2 ≈ |PX|4
|APX|
|DPX|
41. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 41
Comparison with (A)PX in MAX-SAT
𝛽=4
Exploration DRILS Performance Runtime (ms)
K PX APX DPX PX APX PX APX DPX
2 662 1 311 2 248 1N 0O 9 = 0N 8O 2 = 46 55 73
3 503 1 105 2 702 10N 0O 0 = 2N 0O 8 = 73 67 113
4 138 286 571 0N 4O 6 = 0N 9O 1 = 52 55 71
5 119 254 575 0N 9O 1 = 0N 10O 0 = 52 63 77
Table 4. Comparison of PX, APX and DPX for MAX-SAT instances (weighted an
unweited). In all the cases ↵ = 0.3 in DRILS and = 4 in DPX.
DRILS Performance Runtime (µs)
Instances PX APX PX APX DPX
Unweighted 126N 2O 32 = 96N 19O 45 = 1 060 849 1 907
Weighted 102N 14O 16 = 90N 17O 25 = 1 713 2 365 5 171
the performance when PX or APX is used. In particular, DPX is statisticall
better than APX and PX in 96 and 126 unweighted instances, respectively. Th
di↵erence in the weighted instances is not so high, but still large enough to b
promising. Interestingly, weighted MAX-SAT instances must have a fitness land
Instances from the MAX-SAT Evaluation 2017
• 160 unweighted
• 132 weighted
43. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 43
Conclusions
• The Variable Interaction Graph provides useful information to improve the search
• It can be used to find the best offspring from the largest dynastic potential of a
crossover operator
• The proposed DPX squares the number of solutions explored by APX and raises to the
power of 4 the solutions explored by PX
• DPX is specially good in MAX-SAT
• Take home message: use Gray-Box Optimization if you can
• Explore the shape of the connected components in the recombination graph and their
relationship with performance
• Exploring the Local Optima Networks generated by DPX
• Design MAX-SAT solvers based on DPX
Future Work
44. Quasi-Optimal Recombination Operator
EvoCOP 2019, 24-26 April, Leipzig, Germany 44
AcknowledgementsIDENTIDAD
arca Universidad de Málaga
VERSIÓN VERTICAL EN POSITIVO
VERSIÓN VERTICAL EN NEGATIVO
Thanks for your attention!!!