PBO

Pseudo-Boolean Optimization (PBO) problem set, which contains 25 test functions taking their domain on {0, 1}^n, where n is the length of bitstrings.

In PBO, we cover some theory-motivated function, e.g., OneMax and LeadingOnes as well as others with more practical relevance, e.g., the NK Landscape [DoerrYHWSB20]. We also utilized the so-called W-model for generating/enriching the problem set [WeiseW18].

Problems

Classes

ConcatenatedTrap(self, instance, n_variables)

Concatenated Trap (CT) is defined by partitioning a bit-string into segments of length k and concatenating m = n/k trap functions that takes each segment as input.

IsingRing(self, instance, n_variables)

The Ising Spin Glass model arose in solid-state physics and statistical mechanics, aiming to describe simple interactions within many-particle systems.

IsingTorus(self, instance, n_variables)

The Ising Spin Glass model arose in solid-state physics and statistical mechanics, aiming to describe simple interactions within many-particle systems.

IsingTriangular(self, instance, n_variables)

The Ising Spin Glass model arose in solid-state physics and statistical mechanics, aiming to describe simple interactions within many-particle systems.

LABS(self, instance, n_variables)

Low Autocorrelation Binary Sequences (LABS): x ↦ n^2 / 2∑_{k=1}^{n-1}(∑_{i=1}^{n−k}s_is_{i+k})^2, where s_i = 2x_i − 1

LeadingOnes(self, instance, n_variables)

LeadingOnes: {0,1}^n → [0..n], x ↦ max{i∈[0..n] ∣ ∀j≤i: x_j=1}

LeadingOnesDummy1(self, instance, n_variables)

A variant of LeadingOnes applying the Dummy transformation of W-model.

LeadingOnesDummy2(self, instance, n_variables)

A variant of LeadingOnes applying the Dummy transformation of W-model.

LeadingOnesEpistasis(self, instance, n_variables)

A variant of LeadingOnes applying the Epistasis transformation of W-model.

LeadingOnesNeutrality(self, instance, ...)

A variant of LeadingOnes applying the Neutrality transformation of W-model.

LeadingOnesRuggedness1(self, instance, ...)

A variant of LeadingOnes applying the first Ruggnedness transformation in https://doi.org/10.1016/j.asoc.2019.106027.

LeadingOnesRuggedness2(self, instance, ...)

A variant of LeadingOnes applying the second Ruggnedness transformation in https://doi.org/10.1016/j.asoc.2019.106027.

LeadingOnesRuggedness3(self, instance, ...)

A variant of LeadingOnes applying the third Ruggnedness transformation in https://doi.org/10.1016/j.asoc.2019.106027.

Linear(self, instance, n_variables)

A Linear Function with Harmonic Weights: {0,1}^n → ℝ, x ↦ ∑_i i * x_i

MIS(self, instance, n_variables)

The maximum independent vertex set (MIVS) formulated as x ↦ ∑_i x_i - n ∑_{i,j} x_i x_j e_{i,j}, where e_{i,j} = 1 if {i,j} in E, otherwise e_{i,j} = 0.

NQueens(self, instance, n_variables)

The N-queens problem (NQP) is defined as the task to place N queens on an N*N chessboard in such a way that they cannot attack each other.

OneMax(self, instance, n_variables)

OneMax: {0,1}^n → [0..n], x ↦ ∑_{i=1}^n x_i.

OneMaxDummy1(self, instance, n_variables)

A variant of OneMax applying the Dummy transformation of W-model.

OneMaxDummy2(self, instance, n_variables)

A variant of OneMax applying the Dummy transformation of W-model.

OneMaxEpistasis(self, instance, n_variables)

A variant of OneMax applying the Epistasis transformation of W-model.

OneMaxNeutrality(self, instance, n_variables)

A variant of OneMax applying the Neutrality transformation of W-model.

OneMaxRuggedness1(self, instance, n_variables)

A variant of OneMax applying the first Ruggnedness transformation in https://doi.org/10.1016/j.asoc.2019.106027.

OneMaxRuggedness2(self, instance, n_variables)

A variant of OneMax applying the second Ruggnedness transformation in https://doi.org/10.1016/j.asoc.2019.106027.

OneMaxRuggedness3(self, instance, n_variables)

A variant of OneMax applying the third Ruggnedness transformation in https://doi.org/10.1016/j.asoc.2019.106027.

PBO

Pseudo-Boolean Optimization (PBO) problem set.

Class Inheritance Diagram

Inheritance diagram of ioh.iohcpp.problem.ConcatenatedTrap, ioh.iohcpp.problem.IsingRing, ioh.iohcpp.problem.IsingTorus, ioh.iohcpp.problem.IsingTriangular, ioh.iohcpp.problem.LABS, ioh.iohcpp.problem.LeadingOnes, ioh.iohcpp.problem.LeadingOnesDummy1, ioh.iohcpp.problem.LeadingOnesDummy2, ioh.iohcpp.problem.LeadingOnesEpistasis, ioh.iohcpp.problem.LeadingOnesNeutrality, ioh.iohcpp.problem.LeadingOnesRuggedness1, ioh.iohcpp.problem.LeadingOnesRuggedness2, ioh.iohcpp.problem.LeadingOnesRuggedness3, ioh.iohcpp.problem.Linear, ioh.iohcpp.problem.MIS, ioh.iohcpp.problem.NQueens, ioh.iohcpp.problem.OneMax, ioh.iohcpp.problem.OneMaxDummy1, ioh.iohcpp.problem.OneMaxDummy2, ioh.iohcpp.problem.OneMaxEpistasis, ioh.iohcpp.problem.OneMaxNeutrality, ioh.iohcpp.problem.OneMaxRuggedness1, ioh.iohcpp.problem.OneMaxRuggedness2, ioh.iohcpp.problem.OneMaxRuggedness3, ioh.iohcpp.problem.PBO

Reference

[DoerrYHWSB20] Carola Doerr, Furong Ye, Naama Horesh, Hao Wang, Ofer M. Shir, and Thomas Bäck. “Benchmarking discrete optimization heuristics with IOHprofiler.” Applied Soft Computing 88 (2020): 106027.

[WeiseW18] Thomas Weise and Zijun Wu. “Difficult features of combinatorial optimization problems and the tunable w-model benchmark problem for simulating them.” In Proceedings of the Genetic and Evolutionary Computation Conference Companion, pp. 1769-1776. 2018.