初识人工智能之进化算法
1. 什么是进化算法?
进化算法分为:遗传算法,遗传策略,进化算法,进化策略。
2. 什么是遗传算法
遗传算法总共有三大点模仿遗传方式,复制,交换,突变。
(1) 编码,即是遗传算法要用的字符串,表达所研究的问题。一般用固定.的字符串,通常字符串为0或1。长度是根据问题的数值来确定的。例如31,就取5位。
并不是所有的问题都能用固定字符来表示
(2) 形成初始群体。常用随即的方法形成初始群体。
(3) 计算适应度。即遗传算法的目标函数。适应度很重要。(怎么取?)
(4) 复制。取相对适应度大的进行繁殖,相对适应度小的删除。
(5) 交换。将二进制数之间进行交换
(6) 突变。将一个二进制数个别位改变,而这个概率很小。
(7) 反复执行(3)——(6)知道结果逼近全局最优解。
问题:一个是适应度怎么取?一个交换怎么定? 一个突变怎么定(包括概率,位置等等.
3. 遗传规划
用广义计算机来表达问题即用大小结构都可以变化
(1) 确定表达结构。遗传规划用可变的层状计算机结构表达问题。包括函数符集F(运算符)和终止符集T(变量x和随机数A,B,C…..)
例如:y=A+B*x 或 y=B*exp(A/sinx)
(2) 形成初始群体。采用随机选取的方法,从函数集F及终止符集T中随机选择函数及其相应的终止符.组成4个个体
例如:y=A+B*x
y=A+B*x+C*x*x
y=x*sin x
y=C*x*sin x
(3) 计算适应度。将不同的试验数据xi带入以上个体,得到yi在与实际中相比较,误差最大的删掉
(4) 复制。同上
(5) 交换
(6) 突变
(7)反复执行(3)-(6) 是它不断逼近表达式。
4. 进化策略
新生代是一个X基础上加上随机量N(0,σ),一个二元组(X,σ)。
另外的一种就是重组
5. 进化规划
显示的不是很清楚
X(t+1)=X(t)+
6. 进化算法的主要特征
(1) 有指导的搜索
(2) 自适应的搜索
(3) 渐进式寻优