Boolean functions are mathematical objects with numerous applications in domains like coding theory, cryptography, and telecommunications. Finding Boolean functions with specific properties is a complex combinatorial optimization problem where the search space grows super-exponentially with the number of input variables. One common property of interest is the nonlinearity of Boolean functions. Constructing highly nonlinear Boolean functions is difficult as it is not always known what nonlinearity values can be reached in practice. In this paper, we investigate the effects of the genetic operators for bit-string encoding in optimizing nonlinearity. While several mutation and crossover operators have commonly been used, the link between the genotype they operate on and the resulting phenotype changes is mostly obscure. By observing the range of possible changes an operator can provide, as well as relative probabilities of specific transitions in the objective space, one can use this information to design a more effective combination of genetic operators. The analysis reveals interesting insights into operator effectiveness and indicates how algorithm design may improve convergence compared to an operator-agnostic genetic algorithm.
翻译:布尔函数是数学对象,在诸如编码理论、密码学和电信等领域有许多应用。找到具有特定特性的布尔函数是一个复杂的组合优化问题,因为搜索空间随着输入变量的数量而增长超精度。一个共同的属性是布尔函数的非线性。建立高度非线性布尔函数是困难的,因为并不总是知道在实践中可以达到什么非线性值。在本文中,我们调查基因操作器在优化非线性时对位字符串编码的影响。虽然经常使用几个突变和交叉操作器,但它们操作的基因类型与随之而来的个人类型变化之间的联系大部分是模糊的。通过观察操作器能够提供的可能的改变范围,以及客观空间中特定转变的相对概率,人们可以使用这一信息来设计更有效的基因操作器组合。分析揭示了操作器的有效性,并表明算法设计如何能比操作器遗传算法的遗传算法更接近操作器遗传算法。