遗传算法的编码与适应度函数
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
常用的编码方法
二进制编码 格雷编码 浮点数编码 符号编码 混合编码
二进制编码
简单易行 符合最小字符集编码规则 便于用模式定理进行分析, 因为模式定理就是以二进制编 码为基础提出的。
格雷编码
格雷编码有这样一个特点:任意两个整数的差是这两个整 数所对应的格雷码之间的汉明距离。这个特点是遗传算法 使用格雷来进行个体编码的主要原因。 由二进制码到格雷码的转换公式为:
遗传算法的编码和适应度函数的重要性
遗传编码是整个遗传算法执行的基础 遗传算法的适应度函数 (Fitness Function)的选取直接 影响到遗传算法的收敛速度以及能否找到最优解,因为遗 传算法在进化搜索中基本不利用外部信息,仅以适应度函 数为依据,利用种群每个个体的适应度来进行搜索。
一个模式H的阶——出现在模式中确定位置的数目 。 例如:模式011*1**的阶为4可记为,o(011*1**)=4 ; 模式0******的阶为1 。
ቤተ መጻሕፍቲ ባይዱ
一个模式的定义长度——模式中第一个确定位置和最后一
个确定位置之间的距离 。
例如:模式011*1**的定义长度为4,可记为=4;0****** 的定义长度为=0。 注:串的阶和定义长度是用于讨论串的相似性的符号。
多参数交叉编码
假设有n个参数,每个参数都采用码长m的二进制编码,取各 参数编码串中的最高位联在一起,作为个体编码的前n位编 码、再取次高位联在一起作为个体第二组n位编码,….,再
取最后一位联在一起作为编码的最后n位。
这种编码方式中,各个参数的局部编码结构就不易被遗传算 子破坏掉,它适合于各参数之间的相互关系较弱,特别是某 一各或少数几个参数其主要作用时的优化问题。
值含义、而只有代码含义的符号集。这个符号集是一个字
母表,如:{A,B,C,D,…};也可以是一个数字序号表,如 {1,2,3,…};也可以是一个代码表,如:{A1,A2,A3,…} 等等。 优点: (1)符合有意义积木块编码原则; (2)便于在遗传算法中利用所求解问题的专门知识; (3)便于遗传算法于相关近似算法之间的混合使用。
在复制阶段,每个串根据它的适应度值进行复制,更确切 的说,一个串Ai的复制概率为:
pi fi fi
j `1 n
m(H,t+1)= m(H,t)· n· f(H)/ fi 其中f(H)是在第t代
n
中模式H的串的平均适应值。
n
j 1
整个群体的平均适应值可记为 f fi /n故模式的复制生长
m(H,t)= m(H,0)· (1+c)t
上式表明,在群体平均适应度以上(以下)的模式将会 以指数增长(衰减)的方式被复制。
模式定理
模式的阶和定义长度两个概念提供了一个分析遗传算法中
遗传算子对包含在群体中基因块的作用效果的基本的方法。
m=m(H,t),第t代中模式H有m个代表串包含在群体中A (t)中的样本。t不同,m也不同。
j 1
方程可以表示为:m(H,t+1)= m(H,t)· / f
一个特定的模式按照其平均适应值与群体的平均适应值之 间的比率生长
下面推出一个定量表达式,假设某一特定模式下的适 应值高出群体平均适应值以上一个c,c为一常数,则
模式的复制生长方程可变为:
m(H,t+1)= m(H,t)=(1+c)· m(H,t) 从t=0开始,假设c是一个固定值,可以推得:
模式定理:遗传算法中,在选择、交叉、编译算子的作用 下,具有低阶、短的定义长度,且平均适应度高于群体平 均适应度的模式将按指数级增长。
遗传算法的编码原则
编码原则一(有意义积木块编码原则):应使用能易 于产生与所求问题相关的且具有低阶、短定义长度模 式的编码方案。
编码原则二(最小字符集编码原则):应使用能使问题 得到自然表示或描述的最小编码字符集的编码方案
另外,二进制编码不便于反映所求问题的特定知识,这样
就不便于开发针对专门知识的遗传算子。
浮点数编码的优点主要有:
(1)适合用在遗传算法中表示范围较大的数;
(2)适合于精度要求较高的遗传算法;
(3)便于较大空间的遗传搜索;
(4)改善了遗传算法的计算复杂性,提高了运算效率。
符号编码
符号编码是指个体染色体编码串中的基因值取自一个无数
串长为L的二进制串上的模式共有3l个.一般的,对于基数为k
的字母表,共有(k+1)l个模式 例如:串长为7的模式H=*11*0** ,A=0111000是模式H的一个 表示。 所有模式并不是以同等机会产生的,有些模式比起其它的更 加确定,例如:与0******相比,模式011*1**在相似性方面 是更明确的表示。
遗传算法的基本定理
模式就是一个相同的构形,它描述的是一个串的子集, 这个集合中的串之间在某些位上是相同的。
一个模式H的阶就是出现在模式中确定位置的数目,
记为o(H) 。
一个模式的定义长度是模式中第一个确定位置和最后
一个确定位置之间的距离,记为(H)。
模式的概念说明
V+={0,1,*} —模式,*代表不确定字母.
适应度函数
传算法中使用适应度这个概念来度量群体中各个个体在优 化计算中有可能达到或接近于或有助于找到最有解的优良 程度。
适应度高的个体遗传到下一代的可能性比较大,而适应度
遗传算法的编码与适应度函数
姓名:赵文娟 学号:30808120304
遗传算法的特点:
(1)遗传算法不是直接作用在参变量集上,而是利 用参变量集的某种编码; (2)遗传算法不是从单个点,而是从一个点的群体 开始搜索; (3)遗传算法利用适应值信息,无需导数或其它辅 助信息; (4)遗传算法利用概率转移规则,而非确定性规则。
g m bm 1 g i bi 1 bi , i m 1, m 2,...,
由格雷码到二进制码的转换公式为:
bm g m bi bi 1 g i , i m 1, m 2,...1
浮点数编码
首先,二进制编码存在着连续函数离散化时的映射误差。 个体编码长度较短时达不到精度要求;个体编码较长时会 使搜索空间急剧扩大。