遗传算法(模式理论)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

复制对模式的影响
差分方程2-1 即是复制操作对模式H数量影响 的定量描述。 为了进一步分析高于平均适配值的模式数量 的增长,假设 f ( H ) f c f (c是一个 大于零的常数),则式(2-1)可重写为

m( H , t 1) m( H , t )
f cf f (1 c)m( H , t )
例:计算在一个长度为l 的位串中,模式长度
≤l s的模式个数。

假设l =10,l s=5,有如下位串: 1011100010
先计算确定位处在前5个位置上的模式:
10111 00010
即形如 %%%%% * * * * * 的模式个数,其中%表示该位置要么取 原位串的值(0或1),要么是*。 显然,共有2ls 个该模式。
模式
一个模式(Schemata)就是一个描述种群中在
位串的某些确定位置上具有相似性的位串子集 的相似性模板(Similarity Template) 。 例如:(即取位串的十进制数值的平方) 位串 适配值 x=01101 f(x)=x2=132=169 11000 576 01000 64 10011 361 在上列种群里的各位串之间,我们能发现具有某 种相似性和这种相似性与高适配值之间具有某种因果 关系。
Ps 1 P c
(H)
l 1
交叉对模式的影响
结合式(2-1),在复制、交叉操作之后,模式H
的数量为
m( H , t 1) m( H , t )

m( H , t 1) m( H , t )
f (H ) Ps f
f (H ) (H) [1 Pc ] f l 1
因此,在复制和交叉的综合作用之下,模式H的数量变 化取决于其平均适配值的高低(f (H)> f 或f (H)< )和 f 定义长度δ(H)的长短,f (H)越大,δ(H)越小,则H的 数量就越多。
变异对模式的影响
变异是对位串中的单个位置以概率Pm进行随
机替换,因而它可能破坏特定的模式。 一个模式H要存活,意味着它所有的确定位置 都存活。因此,由于单个位置的基因值存活 的概率为1- Pm(保持率),而且由于每个变异 的发生是统计独立的,因此,一个特定模式 仅当它的O(H)个确定位置都存活时才存活, 即( 1- Pm)自乘O(H)次,从而得到经变异 后,特定模式的存活率为 (1- Pm)O(H)
交叉对模式的影响
• 类似的,模式H2的定义长度 δ(H2)=1,它被
破坏的概率为Pd=1/6,存活的概率为Ps=1-Pd=5/6。推 广到一般情况,可以计算出任何模式的交叉存活概率的下 限为
Ps 1
(H)
l 1
• 在上面的讨论中,我们均假设交叉的概率为1。若交叉的
概率为Pc(即在选出进匹配池的一对位串上发生交叉操作 的概率),则存活率由下式表示:
复制对模式的影响

可以期望在复制完成后,在t+1时刻,特定 模式H的数量为
m( H , t 1) m( H , t ) n f ( H ) fi

式中f (H)是在t时刻对应于模式H的位串的 平均配值,因为整个种群的平均适配值 f f i n ,则上式又可写为
f (H ) m( H , t 1) m( H , t ) f
(2 1)
复制对模式的影响
可见,经过复制操作后,下一代中特定模式的数量H正
比于所在位串的平均值与种群平均适配值的比值。 • f (H)> f 时,H的数量将增加; • f (H)< f 时,H的数量将减少。
种群A(t)中的任一模式H在复制中都将按照式(2-1) 的规律变化,即 • 适配值高于种群平均值的模式在下一代中的数 量 增加; • 而适配值低于种群平均值的模式在下一代的数量将 减少。 这种所有模式的增减在复制中是并行进行的,遗传 算法中隐含的并行机制就在于此。
(2 2)
复制对模式的影响
从原始种群开始(t=0),并假定是一个稳定
的值,则有
m( H , t 1) m( H ,0) 1 c) (+ t
可见,对于高于平均适配值的模式的数量将 呈指数形式增长(c>0)。 从对复制的分析可以看到,虽然复制过程成 功地以并行方式控制着模式数量以指数形式 增减,但由于复制只是将某些高适配值个体 全盘复制,或是淘汰某些低适配值个体,而 决不会产生新的模式结构,因而性能的改进 是有限的
模式
为了区分不同类型的模式,对模式H定义两个
量:模式位数(Order)和模式的定义长度(Defining Length) 分别表示为O(H)和δ(H)。
O(H)是H中有定义的非“*”为的个数; • 模式的定义长度δ (H)是指H中最两端的有定义位置之间的距离

如H=00*1*0, 则O(H)=4, (H)=6-1=5 H=**11***,则O(H)=2, (H)=4-3=1 H=*******,则O(H)=0, (H)=0 这两个量为分析位串的相似性及分析遗传操作对重 要模式(称为建筑块(Building Blocks)的模式)的影 响提供了基本的手段
交叉对模式的影响
• 模式H1比模式 H2更容易被破坏,即H1将在交
叉中被破坏。显然被破坏的可能性正比于δ(H1) 模式H1定义长度δ(H1)=5,如果交叉点始终是随 机地从l -1=7-1=6个可能的位置选取,那么模式 H1被破坏的概率为 Pd=δ(H1)/(l -1)=5/6
它的存活概率为 Ps=1-Pd=1/6
基数是2,则定义在该字母表上的长度为l 的位串 中所有可能包含的最大模式数为(k+1)l,原因是 在l个位置中的任何一个位置上都可以取k个字符 中的任何一个及通配符“*” ,即共有k+1个位 置中的任何 一个位置的全排列数为(k+1)l。 例如,对长度l =5,k=2则会有3×3×3×3×3 =35=243=(k+1)l 中不同的相似模板,而位串的 数量仅为kl =25=32。可见,模式的数量要大于位 串的数量。
变异对模式的影响
由于一般情况自下Pm« 1,H的存活率可以表示为
(1 Pm )O ( H ) 1 O( H ) Pm 综合考虑复制、交叉和变异操作的共同作用,则模 式H在经历了复制、交叉、变异操作之后,在下一 代中的数量可表示为
m( H , t 1) m( H , t ) f (H ) (H ) [1 Pc ][1 O( H ) Pm ] f l 1
复制对模式的影响
设在给定时间(代)t ,种群A(t)包含有m
个特定模式H,记为 m=m(H, t)
• 在复制过程中,A(t)中的任何一个位串Ai
以概率Pi=f i /∑f i 被选中并进行复制。
• 假如选择是有放回地抽样,且两代种群之
间没有交叠(即若 A(t)的规模为n,则在产 生A(t+1)时,必须从A(t)选n个位串进匹 配池).
模式
模式的思路为我们提供了一种简单而有效的方法,
使能够在有限字母表的基础上讨论有限长位串的 严谨定义的相似性。 应强调的是,“*”只是一个元符号,既是代表其 他符号的一个符号。它不能被遗传算法直接处理, 只不过是允许来描述特定长度和特定字母表的位 串的所有可能相似性的符号件。
模式
一般地,假定字母表的基数是k,例如{0,1}的
交叉对模式的影响
交叉过程是位串之间的有组织的而又是
随机的信息交换。 交叉操作对一个模式H的影响和模式的定 义长度δ(H)有关。
因为交叉操作要随机选择出进行匹配的一 对位串上的某一随机位置进行交叉。 δ(H)越大,δ(H)的跨度就大,随机交叉 点落入其中的可能性就越大,从而H的存 活率就越低。
遗传算法的理论基础
主要内容


1.遗传算法的模式理论 2.遗传算法实现中的一些基本问题
遗传算法的模式理论


从前面简单遗传算法的操作中,我们可以看到寻 优问题的性能是朝着不断改进的方向发展的。但 是我们怎么能知道对某一特定问题使用遗传算法 会得到优化或接近优化的解呢? 这一章节分析遗传算法中的模式理论: 1. 模式; 2. 复制对模式的影响; 3. 交叉对模式的影响; 4. 变异对模式的影响; 5. 遗传算法有效处理的模式数量。
模式

例如:


模式00*00匹配了两个位{00100,00000}
模式*111*可以和{01110, 01111, 11110, 11111}中的任何一个位串匹配,即与长度为5 中间三位为“1”的四个位串匹配;

模式0*1**则匹配了长度为5、第一位为0、 第三位为1的8个位串{00100, 00101, 00110, 00111, 01100, 01101, 01110, 01111}
模式
位串 适配值 01101 169 11000 576 01000 64 10011 361 这种因果关系例如:凡是以“1”开始的位串,其 适配值就高;以“0”开始的位串的适配值就低。 这种相似性正是遗传算法有效工作的因素。根 据对种群中高适配置位串之间的相似性的分 析,Holland提出了遗传算法的模式理论.
δ(H)越大,模式H被分裂的可能性就越大,
交叉对模式的影响
例如位串长度l =7,有如下的包含两个型式的位串A
A=0 1 1 1 0 0 0 H1=*1****0,δ(H1)=5 H2=***10**,δ(H2)=1

随机地产生的交叉位置在3和4之间:
A=0 1 1 | 1 0 0 0 H1=*1*|***0, P d=5/6 H2=***|10**, P d=1/6
模式
对于任一长度为l 的给定位串,其中所含模式数
为2l 个。因为在l 个位置中的任一位置除了取其确定 值外,还可以取“*”,即任一位置上都有两种不同表 示,故有2l 个不同模式,因此,对于大小为n的种群, 则包含有2l ~n×2l 种模式.
种群中位串之间的众多的相似性,可引导遗传算法有
效地搜索。因为即使是一个规模不大的种群,也包含 了丰富的2l ~n×2l 个有关这种相似性的信息。 这些相似性和适配值之间的相关性正是是遗传算法能 够进行有效搜索的根本所在。
f (H ) (H ) m( H , t 1) m( H , t ) [1 Pc O( H ) Pm ] f l 1
上式也可近似表示为
模式定理的结论
由上述分析可以得出结论:定义长度短的、确定
位数少的、平均适配值高的模式数量将随着代数 的增加呈指数增长。 这个结论称为模式理论(Schema Theory)或遗传 算法的基本定理(The Fundamental of Genetic Algorithms)。 根据模式理论,随着遗传算法的一代一代地进行, 那些定义长度短的、位数少的、高适配值的模式 将越来越多,因而可期望最后得到的位串(即这些 模式的组合)的性能越来越得到改善,并最终趋向 全局的最优。
模式
为了描述一个模式,在用以表示位串的两个字符
的字母{0,1}中加入一个通配符“*”,就构成了 一个表示模式用的三个字符的字母表{0,1,*}。 因此用三元素字母表{0,1,*}可以构造出任意 一种模式。 一个模式与一个特定位串相匹配是指:该模式中 的1与位串中的1相匹配,模式中的0与位串的0相 匹配,模式中的“*”可以匹配位串中的0或1。
模式
为论述方便,首先定义一些名词术语。不失一般性,考虑
在二进制字母表V={0,1}上构造位串的表示。用大写字 母表示一个位串,如 A a1a2 a3 al-1al ai V 这里的 ai (i 1,2, , l ) 代表一个二值特性 ai又
可称为基因。相应地,一个模式是定义在 V+={0,1,* }之上的,用大写字母H表示,如 H=10**11*。 在第t 代的种群用A(t )表示,种群中的个体位 串分别用Aj(j=1,2,…,n)表示。
遗传算法有效处理的模式数
Fra Baidu bibliotek
根据前面的分析可知,当位串长度为l 时, 一个包含n个位串的种群中含有的模式个数 在2l ~n•2l 之间。由于定义长度较长,确定 位数较多的模式存活率较低,那么如何估 计在新的一代的产生过程中经历了复制、 交叉和变异之后被有效处理的模式的个数 呢?
遗传算法有效处理的模式数
相关文档
最新文档