遗传算法的运行过程较为简单,但其运行机理复杂,目前最重要的数学理论是Holland的模式定理(schemata theorem)以及积木块假设(building block)。
1 模式定理(schemata theorem)
模式是一个描述字符串集的模板,该字符串集中的串的某些位置上存在相似性。
不失一般性,我们考虑二值字符集,由此可以产生通常的0,1字符串。现在我们增加一个符号“”,称作“无关符”或“通配符”,即“”既可以被当做0,也可以被当做1。
定义 1【模式】: 基于三值字符集所产生的能描述具有某些结构相似性的0、1字符串集的字符串称为模式。例如模式代表{00001,10001}。
定义 2【模式阶】: 模式中确定位置的个数称作该模式的模式阶,记作。例如和。
定义 3【定义距】:模式中的第一个确定位置和最后一个确定位置之间的距离称作该模式的定义距,记作。
1.1 选择算子对模式的影响
记为模式在第代的个体数,为模式所有样本的平均适应度。一个串被选择的概率则有
记种群平均适应度,则
假定模式的平均适应度一直高于种群平均适应度,且高出部分为,则
假设从开始,保持为常值,则有
可见,在选择算子作用下,平均适应度高于种群平均适应度的模式将呈指数级增长。而平均适应度低于种群平均适应度的模式将呈指数级减少。
1.2 交叉算子对模式的影响
考虑单点交叉算子,模式只有当交叉点落在定义距之外才能生存。所以的生存概率
当然,交叉点落在定义距之内时,也有可能不破坏模式。
于是
1.3 变异算子对模式的影响
考虑按位变异,已知每个基因发生变异的概率为,则一个阶数为的模式得以保存的概率
则
则,可以得到下述结论
定理 1【模式定理】:低阶,低定义距的模式的数量将在种群中指数增长。