工程优化几种常用方法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 2. 基本遗传算法的步骤
• 从上面的例子中,我们便能得到遗传算法的一般步骤,
• 第1步: 编码。选择问题的一个编码,给出一个有N个染 色体的初始群体 pop(1),t=1;
• 第2步: 对群体 pop(t)中的每个染色体 popi(t),计算它的适应
函数 f (i) fitness( popi (t))
一组输入 xi,i 1, • • •, n ,也就很容易得到输出。而现
在我们的想法是:对给定的输入,确定权数,使得通过方
程计算出来的输出尽可能与实际值吻合,这即是学习的过
程。人工神经网络的主要工作就是通过学习,建立模型和 确定的值。,感
知机、BP网络及Hopfield神经网络。
• 第3步:计算误差。
• 计算感知机输出的实际结果与期望输出之差:t D p Y p
• 第4步:权数修正。
• 如果 t 0 ,则转第2步,否则调整权值:
Wi ( p 1) Wi ( p) Wi ( p),Wi ( p) t xi
• 第5步:若训练样本已完全输入或输出误差小于预设值,则 学习结束;否则,转第2步继续学习。
• 2. 神经元和神经网络的结构 如上所述,神经网络的基本结构如图5.35所示:
输入层
隐层1
隐层2
输出层
• 神经网络一般分为输入层,输出层和隐含层,层数越多,计 算结果越精确,但所需的时间也就越长,所以实际应用中要 根据要求设计网络层数。 神经网络中每一个节点叫做一个人 工神经元,他对应于人脑中的神经元。
号自然排序,然后按此顺序将每个待选顶点作为染色体的一
个基因,当基因值为1时,表示相应的顶点被选入该条路径
中,否则反之。此染色体中的基因排列顺序即为各顶点在此
通路中出现的先后顺n序1 ,染(vi,色vj ) 体的长d度(vi应, vj等) 于该图中顶点的
个数。
f (i) d (vi1, vin )
• 4. 遗传算法的应用
• 最短路径问题可以用图论描述,现求解如图5.41所示的图15 点加权有向图从顶点1到顶点15的最短路径。
11 4
13
4
2
3
29 5
41 5
6
2 4
3
15
3 43
584
7
6 14 1 15
9
•
4
1
5 44 6
7
8
7
9
2 10 5
2 12 2
•
图5.41 15点加权有向图
• 第1步:染色体编码。对于给定的图,将图中各顶点按顶点
5.4.2 遗传算法
• 遗传算法(Genetic Algorithm,GA)是一种基于自然群体遗 传演化机制的高度并行、随机、自适应高效探索算法。它 根据预定的目标适应度函数对每个个体进行评价,依据适 者生存,优胜劣汰的进化规则,不断得到更优的群体,同 时以全局并行搜索方式来搜索优化群体中的最优个体,求 得满足要求的最优解。
的 crosspop(t 1);
Pc ,得到有N个染色体
• 第5步:以一个较小的概率 pm ,使得一个染色体的基因发
生变异,形成一个新的群体 pop(t) mutpop(t); 返回第2步。
• 一般流程如图图5.40所示
随机产生一群染色体(个体)
计算群体中各个体的适应度值
按适应度值选择合适的个体
工程优化几种常用的算法
1. 神经网络
• 1. 神经网络的简单原理人工神经网络( Artificial Neural Networks, 简写为ANNs)也简称为神经网络(NNs)或 称作连接模型(Connectionist Model) ,是对人脑或自 然神经网络(Natural Neural Network)若干基本特性的 抽象和模拟。是由人工建立的以有向图为拓扑结构的动态 系统,它通过对连续或断续的输入作出状态相应而进行信 息处理。它是根据人的认识过程而开发出的一种算法。
首先介绍单层前向神经网络。单层前向神经网络的模型结 构如图5.37所示。 或用矩阵表示为 Y f (W T X )
其中, W (wij )mn 为权系数矩阵,X,Y,分别为输入
向量、输出向量及阈值向量。感知机学习规则算法步骤为: • 用t表示学习步骤的序号,t=0表示学习前的神经网络的初
始状态。 • 第1步:赋初值。给网络上权数和阈值赋初值,如;
是否满足结束条件 是 否
删除适应度低的个体
计算结束
复制有中、高适应度值的个体
进行交叉和变异操作
图5.40 基本遗传算法的步骤
• 与传统的搜索方法相比,遗传算法是采用概率的变迁规则来指导搜索方 向,对搜索空间没有任何特殊要求只利用适应性信息,不需要导数等其 它辅助信息。搜索过程是从一组解迭代到另一组解,采用同时处理群体中 多个个体的方法,降低了陷入局部最优解的可能性,易于并行化。
网络也称阈网络。McCulloch-Pitts输出函数定义为
n
y f z sgn( wi xi ), 其中,sgn()为符号函数, 称为阈值。 i 1
• 一般来说,一个人工神经元有多个输入和一个输出,另外 有一个激活函数,不同的激发函数对应了不同的网络,也
决定了网络的用途。从方程可以看出,当 wi 确定时,任给
wij 0,i 0
• 第2步:计算样本实际输出。 • 选择一个样本作为网络输入,计算样本在目前神经网络中
的实际输出。如,对于第个样本,感知机输出为:
Y ( p) (Y1( p),• • •,Yn ( p))
, • 其中 Yi ( p) f ( wij xj i ),i 1, • • •, n
;
• 第3步:若停止规则满足,则算法停止;否则,计算概率
f (i)
pi N
, i 1, , N
•
f (i)
i 1
(5-143)
• 并以概率(5-143)从 pop(t) 中随机选一些染色体构成一个
种群 newpop(t 1) { pop j (t) | j 1, , N}
•
第4步:通过交叉,交叉概率为
由人脑神经元的工作机理,人们构造了人工神经元的数学模
型,如图5.36所示。
树突 突触
细胞体
轴突
x1
w1
x2
w2
z wi xi
f (z)
y
sgn(x)n
wn
•
图5.36 McCulloch-Pitts网络
在图中,wi是表示神经元对信息 xi 的感知能力, f z
称为关联权,称为输出函数或激活函数,采用激活函数的神经