遗传算法与神经网络 - 范文中心

遗传算法与神经网络

02/24

1 遗传算法 ............................................................................................................................... 3

1.1、遗传算法简介: ....................................................................................................... 3

1.2、主要算法步骤(算法流程入有图所示): .............................................................. 4

2 神经网络 ............................................................................................................................... 5

2.1 神经网络简介 ................................................................................................................ 5

2.2神经网络神经元示意图: ............................................................................................. 5

2.3神经网络的分类 ............................................................................................................. 6

2.4学习算法: ..................................................................................................................... 6

2.5 BP神经网络: . ............................................................................................................... 6

2.6 神经网络的优越性 ........................................................................................................ 7

3、遗传算法在神经网络的应用 ............................................................................................. 7

3.1遗传算法在网络学习中的应用 ..................................................................................... 7

3.2遗传算法在网络设计中的应用 ..................................................................................... 7

3.3遗传算法在网络分析中的应用 ..................................................................................... 8

4 遗传算法在圣经网络应用的具体算法 ............................................................................... 8

4.1利用遗传算法构建神经网络结构 ................................................................................. 8

4.2遗传算法对神经网络优化的一个算法 ......................................................................... 8

5 结束语 ................................................................................................................................... 9

1 遗传算法

1.1遗传算法简介:

遗传算法是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的J.Holland 教授1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术之一。

在遗传算法里,优化问题的解被称为个体,它表示为一个变量序列,叫做染色体或者基因串。染色体一般被表达为简单的字符串或数字串,不过也有其他的依赖于特殊问题的表示方法适用,这一过程称为编码。首先,算法随机生成一定数量的个体,有时候操作者也可以对这个随机产生过程进行干预,以提高初始种群的质量。在每一代中,每一个个体都被评价,并通过计算适应度函数得到一个适应度数值。种群中的个体被按照适应度排序,适应度高的在前面。这里的“高”是相对于初始的种群的低适应度来说的。

下一步是产生下一代个体并组成种群。这个过程是通过选择和繁殖完成的,其中繁殖包括交配(crossover,在算法研究领域中我们称之为交叉操作)和突变(mutation)。选择则是根据新个体的适应度进行的,但同时并不意味着完全的以适应度高低作为导向,因为单纯选择适应度高的个体将可能导致算法快速收敛到局部最优解而非全局最优解,我们称之为早熟。作为折中,遗传算法依据原则:适应度越高,被选择的机会越高,而适应度低的,被选择的机会就低。初始的数据可以通过这样的选择过程组成一个相对优化的群体。之后,被选择的个体进入交配过程。一般的遗传算法都有一个交配概率(又称为交叉概率),范围一般是0.6~1,这个交配概率反映两个被选中的个体进行交配的概率。例如,交配概率为0.8,则80%的“夫妻”会生育后代。每两个个体通过交配产生两个新个体,代替原来的“老”个体,而不交配的个体则保持不变。交配父母的染色体相互交换,从而产生两个新的染色体,第一个个体前半段是父亲的染色体,后半段是母亲的,第二个个体则正好相反。不过这里的半段并不是真正的一半,这个位置叫做交配点,也是随机产生的,可以是染色体的任意位置。再下一步是突变,通过突变产生新的“子”个体。一般遗传算法都有一个固定的突变常数(又称为变异概率),通常是0.1或者更小,这代表变异发生的概率。根据这个概率,新个体的染色体随机的突变,通常就是改变染色体的一个字节(0变到1,或者1变到0)。

经过这一系列的过程(选择、交配和突变),产生的新一代个体不同于初始的一代,并一代一代向增加整体适应度的方向发展,因为最好的个体总是更多的被选择去产生下一代,而适应度低的个体逐渐被淘汰掉。这样的过程不断的重复:每个个体被评价,计算出适应度,两个个体交配,然后突变,产生第三代。周而复始,直到终止条件满足为止。一般终止条件有以下几种:

进化次数限制;

(1)计算耗费的资源限制(例如计算时间、计算占用的内存等);

(2)一个个体已经满足最优值的条件,即最优值已经找到;

(3)适应度已经达到饱和,继续进化不会产生适应度更好的个体;

(4)人为干预;

(5)以及以上两种或更多种的组合。

一个典型的遗传算法要求: 一个基因表示的求解域, 一个适应度函数来评价解决方案。

1.2主要算法步骤(算法流程入有图所示):

(1)染色体表示

(2)初始化种群

(3)选择算子

(4)杂交算子

(5)变异算子

(6)适应度函数

对于一个具体问题

(1)确定问题的解空间和个体的表现型

(2)建立优化模型,确定出目标函数

(3)确定遗传算子

(4)确定运行参数

2 神经网络

2.1神经网络简介

人工神经网络(artificial neural network,缩写ANN ),简称神经网络(neural network,缩写NN ),是一种模仿生物神经网络的结构和功能的数学模型或计算模型。神经网络由大量的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结构,是一种自适应系统。现代神经网络是一种非线性统计性数据建模工具,常用来对输入和输出间复杂的关系进行建模,或用来探索数据的模式。

神经网络是一种运算模型,由大量的节点(或称“神经元”,或“单元”)和之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function )。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重(weight ),这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。

它的构筑理念是受到生物(人或其他动物)神经网络功能的运作启发而产生的。人工神经网络通常是通过一个基于数学统计学类型的学习方法(Learning Method)得以优化,所以人工神经网络也是数学统计学方法的一种实际应用,通过统计学的标准数学方法我们能够得到大量的可以用函数来表达的局部结构空间,另一方面在人工智能学的人工感知领域,我们通过数学统计学的应用可以来做人工感知方面的决定问题(也就是说通过统计学的方法,人工神经网络能够类似人一样具有简单的决定能力和简单的判断能力) ,这种方法比起正式的逻辑学推理演算更具有优势。

2.2神经网络神经元示意图:

其中

a1~an为输入向量的各个分量

w1~wn为神经元各个突触的权值

b 为偏置

f 为传递函数,通常为非线性函数。

t 为神经元输出

2.3神经网络的分类

人工神经网络分类为以下两种:

2.3.1依学习策略(Algorithm )分类主要有:

监督式学习网络(Supervised Learning Network)为主

无监督式学习网络(Unsupervised Learning Network)

混合式学习网络(Hybrid Learning Network)

联想式学习网络(Associate Learning Network)

最适化学习网络(Optimization Application Network)

2.3.2依网络架构(Connectionism )分类主要有:

前向式架构(Feed Forward Network)

回馈式架构(Recurrent Network)

强化式架构(Reinforcement Network)

2.4学习算法:

(1)

(2)

(3)

(4)

(5)

(6)

(7)

Hebb 学习规则 Delta 学习规则 梯度下降学习规则 Kohonen 学习规则 向后传播学系规则 概率式学习规则 竞争式学习规则

2.5 BP神经网络:

BP 神经网络训练算法:

(1) 初始化网络设置

(2) 向前传播输入

(3) 反向误差传播

(4) 网络权重与神经元偏置调整

(5) 判断结束

2.6 神经网络的优越性

第一,具有自学习功能。例如实现图像识别时,只在先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就会通过自学习功能,慢慢学会识别类似的图像。自学习功能对于预测有特别重要的意义。预期未来的人工神经网络计算机将为人类提供经济预测、市场预测、效益预测,其应用前途是很远大的。

第二,具有联想存储功能。用人工神经网络的反馈网络就可以实现这种联想。

第三,具有高速寻找优化解的能力。寻找一个复杂问题的优化解,往往需要很大的计算量,利用一个针对某问题而设计的反馈型人工神经网络,发挥计算机的高速运算能力,可能很快找到优化解。

3、遗传算法在神经网络的应用

神经网络的设计要用到遗传算法,遗传算法在神经网络中的应用主要反映在3个方面:网络的学习,网络的结构设计,网络的分析。

3.1遗传算法在网络学习中的应用

在神经网络中,遗传算法可用于网络的学习。这时,它在两个方面起作用。学习规则的优化用遗传算法对神经网络学习规则实现自动优化,从而提高学习速率。网络权系数的优化用遗传算法的全局优化及隐含并行性的特点提高权系数优化速度。

3.2遗传算法在网络设计中的应用

用遗传算法设计一个优秀的神经网络结构,首先是要解决网络结构的编码问题;然后才能以选择、交叉、变异操作得出最优结构。编码方法主要有下列3种:

直接编码法:这是把神经网络结构直接用二进制串表示,在遗传算法中,“染色体”实质上和神经网络是一种映射关系。通过对“染色体”的优化就实现了对网络的优化。

参数化编码法:参数化编码采用的编码较为抽象,编码包括网络层数、每层神经元数、各层互连方式等信息。一般对进化后的优化“染色体”进行分析,然后产生网络的结构。

繁衍生长法:这种方法不是在“染色体”中直接编码神经网络的结构,而是把一些简单的生长语法规则编码入“染色体”中;然后,由遗传算法对这些生长语法规则不断进行改变,最后生成适合所解的问题的神经网络。这种方法与自然界生物地生长进化相一致。

3.3遗传算法在网络分析中的应用

遗传算法可用于分析神经网络。神经网络由于有分布存储等特点,一般难以从其拓扑结构直接理解其功能。遗传算法可对神经网络进行功能分析,性质分析,状态分析。

遗传算法虽然可以在多种领域都有实际应用,并且也展示了它潜力和宽广前景;但是,遗传算法还有大量的问题需要研究,目前也还有各种不足。首先,在变量多,取值范围大或无给定范围时,收敛速度下降;其次,可找到最优解附近,但无法精确确定最扰解位置;最后,遗传算法的参数选择尚未有定量方法。对遗传算法,还需要进一步研究其数学基础理论;还需要在理论上证明它与其它优化技术的优劣及原因;还需研究硬件化的遗传算法;以及遗传算法的通用编程和形式等。

4 遗传算法在圣经网络应用的具体算法

4.1利用遗传算法构建神经网络结构

(1)随机产生 N 个染色体数字串,组成初始种群,其中每个染色体表示一种参数组合对应的神经网络模型;

(2)REPEAT 取出种群中第 I 个染色体,解码后得到一种参数组合,构成一个神经网络;评价所得神经网络,计算其对应染色体的适应度;UNTIL 种群为空;进行选择、交叉、变异运算,构成下一代种群;

(3)新种群满足性能评价标准或到达给定代数,转到(4),否则转到(2)重复执行;

(4)解码种群适应度最高的染色体,用其参数集构成一个神经网络,即为结构最优的神经网络.

4.2遗传算法对神经网络优化的一个算法

( 1 ) 确定神经网络的结构 ,给定神经 网络的输入、输出样本集 .

( 2 ) 确定网络权值的编码,个体的位串长度,一组权值与遗传空间的个体位串的关是由编

码映射确定的.

( 3 ) 选定遗传操作,设置遗传参数及 自适应调整算法等.

( 4 ) 随机产生初始群体,设为 N 个个体.

( 5 ) 对种群 中的每一个体位串进行译码 , 求得N 组网络权值 , 得到具有相 同结构的 N 个网络.

( 6 ) 由输入样本集经前 向传播算 法求得 N 组网络权值对应的 N 个网络输 出.

( 7 ) 确定适应度函数,对 N 组 网络进行评价.一般以误差函数的倒数作 为染色体的评价 函数.计算每条染色体的适应度值,误差越大,适应度越小 .

( 8 ) 根据适应度在遗传空 间进行选优操作. 选择若干适 应度 函数值大 的个体 直接进入下一代 ,适应度小 的个体被淘汰 .

( 9 ) 利用交叉、 变异等遗传算子对当前一代群体进行处理,并产生下一代群体.

( 1 O ) 重复 步骤 ( 5 ) 一( 1 O ) ,对新一代 群体 进行新一轮的迭代,直到训练练目标满足终止条件为止,即得到一组优化的权值.

最后将这组优化后 的连接权值作 为神经 网络的新的权值应用到 B P神经网络中去.

5 结束语

遗传算法和神经网络都是计算智能领域重要的算法,遗传算法借鉴生物界适者生存,优胜劣汰遗传机制的规律,来寻找一个问题的最优解。神经网络则是模拟生物神经网络的结构和功能的数学模型或计算模型。大量细胞构成各种神经网络。通过在遗传算法调整神经网络的结构,使得神经网络获得动态的结构,从而更加智能。用遗传算法调整权重,获得更快的速度,同时更大程度的避免出现局部最优情况下收敛。将遗传算法应用于神经网络,大大提高神经网络的性能。

…………以上很多内容摘自课本和一些文献,对此表示感谢


相关内容

  • 十大经典数学模型
    十大经典数学模型 1.蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,是比赛时必用的方法) 2.数据拟合.参数估计.插值等数据处理算法(比赛中通常会遇到大量的数据需要处理,而 ...
  • 粒子群优化算法及其应用
    2006年第1期信息技术 InformationTechnology 中图分类号:TP391.9 文献标识码:A 文章编号:1009-2552(2006)01-0053-04 粒子群优化算法及其应用 范 娜,云庆夏 (西安建筑科技大学管理科 ...
  • 各种算法介绍
    各种分类算法比较 最近在学习分类算法,顺便整理了各种分类算法的优缺点. 1决策树(Decision Trees)的优缺点 决策树的优点: 一. 决策树易于理解和解释.人们在通过解释后都有能力去理解决策树所表达的意义. 二. 对于决策树,数据 ...
  • 生鲜农产品物流网络优化的研究现状
    生鲜农产品物流网络优化的研究现状※ 为提高生鲜农产品物流网络规划水平,从物流网络概念.运输管理和共同配送三个方面分析了摘要: 生鲜农产品物流网络优化的定性研究成果,从物流设施选址的多属性决策方法.物流网络优化的混合整数规划方法和融入生鲜农产 ...
  • 遗传算法编码方案比较
    第28卷第3期2011年3月 计算机应用研究ApplicationResearchofComputers Vo.l28No.3 Mar.2011 遗传算法编码方案比较 张超群,郑建国,钱 洁 1,2 1 1 * (1.东华大学旭日工商管理学 ...
  • 基于遗传算法的网格资源调度算法
    第41卷第12期2004年12月 计算机研究与发展 JOURNAL OF COM PUTER RESEARCH AND DEVELOPM EN T V ol . 41, No . 12Dec . 2004 基于遗传算法的网格资源调度算法 林 ...
  • [人工智能导论]教学大纲
    <人工智能导论>教学大纲 大纲说明 课程代码:3235042 总学时:32学时(讲课32学时) 总学分:2学分 课程类别:限制性选修 适用专业:计算机科学与技术,以及有关专业 预修要求:C程序设计语言,数据结构 课程的性质.目的 ...
  • 遗传算法概述
    遗传算法概述 摘要:遗传算法(genetic algorithms, GA)是人工智能的重要新分支,是基于达尔文进化论,在微型计算机上,模拟生命进化机制而发展起来的一门学科.它根据适者生存.优胜劣汰等自然进化规则来进行搜索计算机和问题求解. ...
  • 人工智能在自动控制中的应用浅析
    人工智能在自动控制系统中的应用浅析 姓名:蔡志威 学号:2011080911 专业:电路与系统 摘 要:现如今,计算机技术已经成为全球最普及的信息技术, 人类的大脑是最为发达的机器,计算机所有的编程都是效仿人类的电脑,对其信息进行采集.分析 ...
  • 冷链物流一体化的多配送中心选址优化
    冷链物流一体化的多配送中心选址优化 周群凯 殷允健 2013-02-07 16:59:20 来源:<铁路采购与物流>(京)2012年8期第52-54页 [作者简介]周群凯,上海海事大学交通运输学院. [内容提要]针对冷链物流多配 ...