CN1450493A - 实现遗传算法的神经网络系统 - Google Patents

实现遗传算法的神经网络系统 Download PDF

Info

Publication number
CN1450493A
CN1450493A CN 03122949 CN03122949A CN1450493A CN 1450493 A CN1450493 A CN 1450493A CN 03122949 CN03122949 CN 03122949 CN 03122949 A CN03122949 A CN 03122949A CN 1450493 A CN1450493 A CN 1450493A
Authority
CN
China
Prior art keywords
module
genetic algorithm
generation
colony
parent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 03122949
Other languages
English (en)
Inventor
龚道雄
阮晓钢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN 03122949 priority Critical patent/CN1450493A/zh
Publication of CN1450493A publication Critical patent/CN1450493A/zh
Pending legal-status Critical Current

Links

Images

Abstract

实现遗传算法的神经网络系统,由计算机(1)神经网络模块组件(2)及之间的接口组成。特征包括:1.当通过计算机设定遗传算法的种群大小、编码方式和长度、遗传操作概率以及算法终止条件之后,神经网络模块组件以种群规模并行实现包括选择、交叉、突变和个体适应度值评价在内的全部遗传操作,并通过计算机输出其的优化计算过程和结果;2.设计了实现多父辈交叉操作和多基因突变操作的遗传操作神经网络模块,实现了二值编码遗传算法的多父辈交叉和多基因突变操作及实数编码遗传算法的多父辈算术交叉和多基因非均匀突变操作;3.设计了实现遗传算法赌盘选择操作的权值计算模块,采用了基于个体代龄的赌盘选择概率计算方案。本发明的优化计算具有结构化、柔性化、并行化、硬件化、寻优速度高、质量好的特点。

Description

实现遗传算法的神经网络系统
技术领域:
实现遗传算法的神经网络系统,涉及一种遗传算法的物理实现系统,特别涉及一种基于神经网络模块的遗传算法的物理实现系统。本系统以提高遗传算法的优化计算效率为目的,属于人工智能的优化计算领域。
背景技术:
遗传算法通过模拟进化来实现解空间的搜索和寻优,其流程框图如图17所示,其一般步骤如下:
第一步,初始化,置进化代数为0,随机地产生第0代群体编码,并分别评价群体中每一个个体的适应度值大小;
第二步,根据预先设定的终止条件判断是否符合优化准则,若符合,输出最优个体及其所编码的最优解,计算结束。否则,转向第3步;
第三步,依据个体的适应度值从群体中选择一些个体作为父代,适应度值较高的个体被选中的几率较大,反之则较小;
第四步,按照一定的交叉概率和交叉方法生成新的个体,按照一定的突变概率和突变方法生成新的个体,这些个体构成子代群体;
第五步,分别计算子代群体中每一个个体的适应度值,根据适应度值的大小完成子代群体和父代群体的生存竞争,优胜劣汰。返回到第二步。
可见遗传算法在进行优化计算时必须反复进行许多代的进化运算,每一代由许多个体构成,对于每一个个体都必须进行适应度值计算,由于遗传算法自身这种对于种群多样性的要求和个体适应度值频繁计算的要求,造成了运行速度瓶颈,当所搜索的解空间庞大或者个体的适应度值评价函数非常复杂时,遗传算法的运行就变得非常缓慢。
针对这个问题,当前有两种研究方向:
1)并行遗传算法(parallel genetic algorithms)
以孤岛模型(island model)和邻域模型(neighborhood model)为代表的并行遗传算法通过并行计算机或由多个数字计算机构成的计算机网络来提高遗传算法的运行速度。它将整个遗传算法的种群分成若干个子种群,由不同的计算机对每个子种群分别实行遗传算法的运算,每隔一定的进化世代数就在子种群之间进行一定量的个体交换。可见并行遗传算法只是在一定的程度上实现了遗传算法的并行化处理,在各个子种群中遗传算法的内在并行机制仍然得不到发挥,而且子种群之间的个体迁徙还会增加系统的同步和通信的负担,影响算法寻优速度的提高。总之,目前并行遗传算法的研究还远没有达到突破遗传算法速度瓶颈的目标。
2)硬件遗传算法(hardware genetic algorithm)
硬件遗传算法的基本策略是采用专门的高速硬件来实现遗传算法的各种操作,从而达到提高遗传算法运行效率的目的。在目前硬件遗传算法的研究中,以FPGA为基础的硬件实现方案旨在通过硬件的高速计算性能提高遗传算法的运行速度,但此类方案的操作时钟频率受到存储器反应时间的限制。遗传算法需要大量的内存来存储群体的信息,因而该存储器瓶颈是不可避免的,而且高速存储器的使用也将使硬件遗传算法的花费昂贵。此外,硬件遗传算法还面临着编码串长度、群体规模、适应度值函数以及遗传操作算子的复杂性等方面的限制。总之,硬件遗传算法也远没有使得遗传算法的运行速度问题得到解决。
发明内容:
本发明的主要目的在于克服以上缺点,提出一种实现遗传算法的物理系统,使之能够最大限度地达到遗传算法的并行化实现,同时还能够容易的硬件实现,以达到较高的优化计算速度和优化计算质量,从而提高遗传算法的实时性能,扩大遗传算法的应用领域。
本发明的思考思路如下:
通常遗传算法内在的并行性为通过并行计算来提高其运行效率提供了可能。从背景技术中给出的遗传算法的流程可知,由于进化代概念的存在,遗传算法并行化处理只能以代为规模的上限,即以种群的规模作为并行处理的最大规模。同时遗传算法模拟进化的特点决定了在其并行处理方案中也一定具有反馈和迭代机制的存在。神经网络具有并行计算、信息分布存储和易于硬件实现的特点,正合乎遗传算法并行实现和硬件实现的要求,同时还有可能克服硬件遗传算法所面临的存储器瓶颈,因而可望通过神经网络实现遗传算法来克服遗传算法的运行速度瓶颈,实现遗传算法的内在并行机制,提高遗传算法的实时处理性能,从而突破遗传算法的运行速度瓶颈,扩大遗传算法的应用范围。
特别需要说明的是,以前关于遗传算法和神经网络相结合的文献都是以遗传算法为手段,以神经网络为目的,即探讨如何应用遗传算法来进行神经网络的优化和设计。本发明是反过来应用神经网络实现遗传算法。
本发明的技术方案设计结构参见见图1和图2。本系统主要由一个数字计算机(1)和实现遗传算法的神经网络模块组件(2)以及它们之间的接口组成。神经网络模块组件(2)通过不同的神经网络模块完全并行地实现遗传算法的选择、交叉、突变和个体适应度值评价等全部操作。在图2中用圆角矩形框表示的父代群体和新生子代不是一个物理的模块,而是分布存储在神经网络模块组件中的关于遗传算法当代群体的信息。本系统中由数字计算机(1)向神经网络模块组件(2)的接口将遗传算法运行的预置参数传向神经网络模块组件(2),其中,群体规模和编码长度传向初始化模块(3),群体规模还传向竞争模块(8),终止条件传向终止条件判断模块(5),交叉概率与突变概率传向遗传操作模块(7);由神经网络模块组件(2)向数字计算机(1)的接口将遗传算法每一代运行的中间结果和整个算法运行的最终结果(即图2中的父代群体)传给数字计算机(1),该结果被存储下来以便分析和显示。
本系统中,神经网络模块组件(2)完成一个反馈迭代的运算过程,图2中由个体适应度值评价模块(4)、终止条件判断模块(5)以及遗传操作模块(7)所组成的反馈回路对应于前述遗传算法完成循环过程,其中反馈迭代的次数即为遗传算法的进化代数,遗传算法中每一代遗传进化对应于本系统中的一次反馈循环。
本技术方案的特征在于,神经网络模块组件(2)在进化代的规模上通过神经网络模块完全并行地实现遗传算法的全部操作,整个系统依次包括如下工作步骤:
1、系统初始化;数字计算机(1)向神经网络模块组件(2)发送遗传算法的初始参数,包括群体规模m,染色体编码长度为n,作为遗传算法终止条件的最大进化代数Gmax和最大适应度值稳定代数Gmax,以及遗传算法的交叉概率和突变概率Px,Pm。其中,群体规模和染色体编码长度发送给初始化模块(3),终止条件发送给终止条件模块(5),交叉和突变概率发送给遗传操作模块(7),并保存在神经网络模块组件(2)的各个子模块中。在遗传算法的每一代和整个优化计算终止时,计算机(1)还将从神经网络模块组件(2)中读取有关当前群体的最优值、平均值以及最小值等有用的信息并显示出来。
2、群体初始化;群体初始化模块(3)接受来自计算机(1)的群体规模和染色体编码长度信息输入后,随机地产生遗传算法的原始(第零代)群体编码。
在本系统所实现的二值编码遗传算法中,群体初始化模块3随机产生m个长度为n的0-1编码个体(染色体)如下:
          P0={C(1)|i=1,2,…,m}    (1) C ( i ) = ( c 1 ( i ) , c 2 ( i ) , … , c n ( i ) ) - - - - - ( 2 ) 其中, c j ( i ) ∈ { 0,1 } 为第i个染色体的第j个基因编码。
在本系统所实现的实数编码遗传算法中,个体采用归一化实数编码,初始化模块随机产生m个长度为n的介于0-1之间的第0代群体的归一化实数编码如下:
         P0={C(i)|i=1,2,…,m}    (3) C ( i ) = ( g 1 ( i ) , g 2 ( i ) , … , g n ( i ) ) - - - - - ( 4 ) 其中, g j ( i ) ∈ [ 0,1 ] 为第i个染色体第j个基因的编码。
3、适应度值评价;适应度值评价模块(4)接受来自群体初始化模块(3)的群体编码信息输入,进行译码并对第零代群体进行译码和个体适应度值评价;遗传算法是由评价函数驱动的一类优化算法,其评价函数因具体的问题而异。因为三层前向神经网络已被证明可以逼近任意的适应度值评价函数,所以在本系统中采用针对具体问题训练的多层感知器(Multiple Layer Perceptron,MLP)作为适应度值评价子模块(4)。适应度值评价模块(4)由m个MLP组成,每个MLP完成对一个个体的适应度值计算。一个MLP由三层神经元构成(见图3),在输入层有n个输入节点,对应于一个个体的n维编码向量;中间隐层的节点数视具体的评价函数而定;输出层只有一个输出节点,输出所评价个体的适应度值。
对每一个个体的译码公式如下:
        Vi=(Vi,max-Vi,min)×gi+Vi,min    (5)其中,Vi为gi所编码的变量值,Vi,max为第i个自变量定义域的上限,Vi,min为第i个自变量定义域的下限。
适应度值评价模块(4)将群体的评价值输出到竞争模块(8),并将最优的适应度值输出到终止条件模块(5)。此外,计算机(1)还从本模块中读取当前代的最大、平均和最小适应度值记录。
4、终止条件判断;终止条件判断模块(5)接收来自适应度值评价模块(4)的当前代最优适应度值和来自竞争模块(8)的遗传算法当前进化代信息,并以此判断当前代群体是否满足算法终止条件,如果满足,则向计算机输出优化结果,否则,以当前代群体作为父代群体,继续下一步操作。
终止条件判断模块(5)由两个公知的比较器和计数器组合构成(见图4),分别完成两类终止条件的判断:第一个组合由比较器和计数器各一个组成,计数器A对整个系统的反馈迭代次数(即遗传算法的进化代数)计数,比较器A则对计数器A的计数和预先设定的最大进化代数Gmax进行比较,如果两者相等则模块输出为1。这里实现的是遗传算法的最大代数终止条件判断。另一个组合由两个比较器和一个计数器组成,比较器B比较当前代的最大适应度值和上一代的最大适应度值,如果两者不等,计数器B清零,否则计数器B加1。比较器C将计数器B的计数(即遗传算法寻优过程中最优值稳定的代数)和预先设定的最大适应度值稳定代数Gmax进行比较,如果两者相等则模块输出为1。这里实现的是遗传算法的最大适应度值稳定代数终止条件,即指定如果遗传算法的寻优值经过多少代不变则算法终止。
终止条件判断模块(5)中的输入有三个来源:最大进化世代数和最优值稳定的最大世代数由计算机(1)给定;遗传算法的实际进化代数从竞争模块(8)读入;本代和上代的最优值从评价模块(4)中读入。上述两个比较器和计数器组合的输出是或的关系,当满足上述两个条件之一时,模块输出为1,遗传算法运行终止,计算机(1)将从神经网络模块组件(2)中读取遗传算法的优化计算结果并显示出来。
5、权值计算;权值计算模块根据父代群体中个体的代龄计算遗传操作模块(7)中的连接权值矩阵,为实现遗传算法的赌盘选择操作提供依据,同时作为决定每一个在交配竞争中获胜的父代个体对其子代贡献的大小的依据。权值模块(6)接受来自竞争模块(8)的父代群体中个体信息(是上一代在生存竞争中的幸存者还是新生的个体),并以此计算群体在交叉操作模块中所对应的连接权值。本模块是一个多输入多输出的多层前向神经元网络(见图5),它通过改变遗传操作模块(7)的连接权值矩阵(12)决定父代个体对其子代贡献大小,该权值还被作为遗传操作模块(7)中交配竞争的依据,从而实现遗传算法的赌盘选择操作。依据个体代龄的权值计算公式如下: W i = ( Gage i g / ΣGage i g ) * rand ( 0,1 ) - - - - - ( 6 )
Figure A0312294900172
其中Gagei g为第g代中个体i的代龄,age0为新生个体的代龄,age1为生存竞争中幸存者的单位代龄增加量,rand(0,1)用于在交配竞争中引入一定的随机因素,实现赌盘选择操作。
因为适应度值高的个体将存活得更久,从而具有更高的代龄,所以代龄可以用来作为个体交配竞争的依据,并且在多父辈交叉操作中决定其对于子代个体贡献的大小。基于代龄的选择操作具有以下两个优点:其一,可以象在神经网络中通常所采用的那样,在两个连续代的权值矩阵之间建立起明确的计算关系,W(t+1)=f(W(t)),而基于个体适应度值的选择操作则做不到这一点;其二,适应度值较高的个体的代龄将随着进化计算的过程逐渐增加,从而可以有效地避免由于超级个体的存在而导致的遗传算法的早熟现象。这是基于个体适应度值的选择操作所做不到的。
权值计算模块(6)的输入为经竞争模块(8)选择之后的参与遗传操作的父代群体的代龄;其输出权值矩阵一方面将被输出到遗传操作神经网络模块(7)的交叉操作子模块(9)中作为交配竞争的依据,另一方面将被输出到交叉操作子模块(9)中作为该模块输入层神经元到交叉操作层神经元的连接权值(12),从而确定每一个在交配竞争中获胜的父代个体对其子代贡献的大小。
6、遗传操作模块;遗传操作模块(7)根据权值矩阵完成父代群体的交配竞争,并由这些竞争获胜的父代个体完成遗传算法的多父辈交叉和多基因突变操作,产生子代群体的编码;遗传操作模块(7)包括多父辈交叉(9)和多基因突变(10)两个子模块,它接收来自经竞争模块(8)淘汰之后的父代群体编码信息输入,实现遗传算法的交叉和突变操作,并输出子代群体的编码到评价模块(4);每个遗传操作单元模块(7)产生一个子代个体。在本系统中我们提出了实现多父辈交叉操作和多基因突变操作的神经网络结构(见图7、8)以及相应的人工神经元模型(见图9、10、11、12)。每个遗传操作单元模块(7)产生一个子代个体,因而系统中遗传操作单元模块(7)的数量与遗传操作所产生新个体的数量相同。图7为产生一个子代个体的多父辈交叉单元模块的网络结构图。多父辈交叉操作模块(9)为一个三层的网络结构,网络的输入层具有m×n个输入节点,当系统产生的随机数小于由计算机(1)给定的交叉概率时,输入经过竞争模块选择过的父代群体编码;中间层由一个m输入m输出的竞争子模块控制m个开关的通断,用于根据个体的代龄和随机因素的作用从全部m个父代个体中选择k∈[2,m]个个体进行繁殖,完成交配竞争功能。输出层由多父辈交叉神经元组成,完成遗传操作并将新个体的n位基因编码输出到多基因突变子模块(10)。
在本系统的多父辈交叉操作模块(9)中,整个群体的每一个个体都根据其代龄大小和随机因素的作用或多或少的对其后代做出贡献。所产生的后代个体虽然只有一个,却可能综合了整个父代所有个体的信息,因而有可能获得更好的解空间搜索效果。图9为二值编码遗传算法多父辈交叉操作神经元,它完成如下操作: Y ( i ) = sign ( Σ j = 1 m W ( j ) * Z j ( i ) ) - - - - - ( 9 ) 其中,Xj(i)为第j个父代个体的第i位基因编码,W(j)为第j个父代个体在遗传操作模块(7)中的权值,Y(i)为遗传操作产生的子代个体的第i位基因编码,i={1,2,…,n},j={1,2,…,m}。
本系统还提出实数编码遗传算法多父辈算术交叉操作的神经元(14)如图11所示。在通常遗传算法中算术交叉操作都在两个父代个体之间进行,本系统将该操作拓展到多父辈的情形,并将算术交叉操作的随机参数α(这里记为λ)与基于父代个体代龄的权值相联系。设k为参与繁殖的父代个体的数目, C k p = ( g 1 k p , … , g i k p ) 为第七个父代个体的染色体编码,
Figure A0312294900202
为第k个父代个体的第i位基因编码,则交叉操作神经元(14)完成多父辈算术交叉操作并产生子代个体的染色体编码如下:
     offs.C=(offs.g1,…,offs.gn)               (10) g i offs . = ( Σ j = 1 k λ j · g i j p ) mod 1 - - - - - ( 11 ) λ j = W j / Σ j = 1 k W j - - - - - ( 12 ) 其中, 分别表示个体的编码长度和参与交叉操作的父代个体的数目,λ为一组系数, Σ j = 1 k λ j = 1 , Wj为根据参与繁殖的父代个体的代龄所计算出的连接权值矩阵(12),模运算用于确保子代个体中每一位基因的实数编码在归一化范围[0,1]之间。
当系统产生的随机数小于由计算机(1)给定的突变概率时,突变模块对于来自交叉模块的新个体进行突变操作。图8为产生一个子代个体的多基因突变操作单元模块(10)的网络结构图。在本系统的多基因突变操作中,突变操作可能在染色体的任何一个位点上发生。由于多基因突变操作能够同时在多个维数上改变个体的编码,因而可以更为高效的跳出局部极小,从而获得更好的探测效果。突变操作单元模块(10)的输入为交叉操作模块(9)所产生的新个体编码,其输出为整个遗传操作所产生的子代个体编码,该子代个体编码被输出到评价模块(4)进行适应度值计算,如果该子代个体不在生存竞争中被竞争模块(8)所淘汰的话,其编码还将被输出到遗传操作模块(7)作为下一个父代群体的一员。
图10为二值编码多基因突变神经元(14),它通过随机生成一个n位0-1码串r作为掩码,根据掩码某一位上1或0的取值确定个体编码相应位上的值取反或保留原值不变,从而达到多基因突变的目的。即:鉴于非均匀突变操作能够随着遗传操作代数的增加而缩小其搜索的区域,实现局部微调,是最能体现实数编码遗传算法优势的算子之一,在本系统中还提出了实现多基因非均匀突变操作的神经元(15)(见图12),该神经元首先生成一个n位0-1码串r作为掩码,根据掩码某一位上1或0的取值确定个体编码相应位上的值取反或保留原值不变,从而达到多基因突变的目的。其突变操作如下:
Figure A0312294900212
Δ ( t , y ) = y · ( 1 - q ( 1 - t / g max ) b ) - - - - - ( 16 ) 其中,pgioffs.gi分别为父代和子代个体的第i位基因编码,τ∈{0,1}为一个随机数,q为一个0-1之间的随机数,t为遗传算法的当前代数,gmax为遗传操作的总代数,b为用户指定的系数。
在本系统中,一次交叉操作的主体可以遍及整个种群,交叉操作的位点遍及个体的每一个基因。即一次交叉操作在整个群体的范围和整个染色体的长度上进行,最终产生一个子代个体。有关研究表明,多父辈交叉操作能较明显的提高遗传算法的性能。本系统将多父辈交叉操作的范围拓展到整个父代群体的每一位基因编码,同时将突变算子的操作位点拓展到个体的整个编码长度。对于二值编码遗传算法而言,扫描交叉(Scanning Crossover)算子和单点突变算子是本系统中遗传操作算子的子集,对于实数编码遗传算法而言,算术交叉算子和非均匀突变算子是本系统中遗传操作算子的子集。如果将二值编码遗传算法多父辈交叉操作中每个个体的权值系数设定为1,将多基因突变算子的操作位点限定为1,则该操作将退化为扫描交叉操作和单点突变操作;如果将多父辈交叉操作中的K值固定为2,将多基因突变算子的操作位点限定为1,则该操作将退化为算术交叉操作和单点非均匀突变操作。因此本系统至少可以获得与普通遗传算法相同的寻优质量。
7、适应度值评价模块对子代群体进行译码和个体适应度值评价;该步骤与第3)步相似,将子代群体的编码从遗传操作模块(7)输出到评价模块(4),分别计算其个体适应度值并将个体的适应度值输出到竞争模块(8)。
8、竞争模块;竞争模块(8)接受来自评价模块(4)的父代群体和子代群体的适应度值信息,竞争模块实现实现父代群体和子代群体之间的生存竞争,从而形成新一代群体,输出群体生存竞争的结果。
本模块采用公知的K-MAXNET特殊神经元网络,其原理见图13。它通过所有神经元的完全互联(包括自联)和侧抑制机理实现赢家通吃(Winner-Take-All,WTA)的策略,使得具有最大输入值的一个神经元输出为1,其余的输出为0。K-MAXNET是其推广形式,它能从全部N个输入值中选择出K个最大值。遗传算法生存竞争的依据是个体的适应度值。设L为参与竞争的子代群体规模,则本模块的输入输出节点数均为m+L,其输入为参与竞争的父代和子代群体的适应度值;模块的参数K固定为m,即选择m个适应度值最大的个体组成下一代;模块的输出为m个1和L个0,分别对应于m个存活的个体和L个被淘汰的个体。或者表述如下:
设第t进化代时参与生存竞争的群体适应度值集合为 E t = E t p ∪ E t o - - - ( 17 ) 其中, E t p ( i ) , i = { 1,2 , … , m } 为父代群体的适应度值集合, E t o ( i ) , i = { 1,2 , … , L } 为遗传操作所产生的新群体的适应度值集合,则K-MAXNET竞争模块(8)的输入和输出分别为:
         X(i)=Et(i),i={1,2,…,m+L}              (18)
         Y(i)=St+1(i)∈{0,1},i={1,2,…,m+L}其中,St+1具有m个1和L个0。对于i,j∈[1,m+L],有
               if  St+1(i)=1,St+1(j)=0,           (19)
               thenEt(i)≥Et(j).即选择适应度值较高的m个个体成为新的父代群体,其余的被淘汰。
竞争模块(8)的输入为来自评价模块(4)的参与竞争的父代群体和子代群体的适应度值,其输出为由0、1表示的竞争结果:生存或淘汰。该输出将决定父代群体和子代群体中有哪些个体的编码能够作为遗传操作模块(7)的输入。
9、重复第4到第8步操作,直到满足算法的终止条件后,由计算机(1)从神经网络模块组件(2)中读取优化计算结果并输出显示。
本发明具有如下的技术效果:
1.本系统兼具并行实现和硬件实现两方面的优势并弥补其各自的不足。遗传算法模拟生物进化的迭代计算的特点决定了遗传算法代与代之间的进化计算只能依次进行,所以并行计算只能在每一个进化代之内实现。我们的系统正是在整个进化代的基础上实现遗传算法的并行计算,因而是遗传算法最大限度的并行实现,克服了并行遗传算法在各子种群内并行化程度不够以及由于子种群间个体迁徙所带来的通信和同步负担的缺点。此外,神经网络信息分布存储和容易硬件实现的特点也使得我们的系统可以容易地通过硬件实现,从而克服了硬件遗传算法造价昂贵和存储器瓶颈等缺点。
2、本系统可以大幅度的提高遗传算法的运行速度和效率。本系统将因为神经网络模块的硬件实现带来运行速度的大幅度提高。更为重要的是,在遗传算法的实现中,繁殖子代个体的所有遗传操作包括选择、交叉、突变和适应度值评价等对于每一个新个体都得依次进行,而在本发明的方案中,整个进化代中的所有遗传操作都可完全并行地完成,即在本系统中整个群体的繁殖操作用时与单个个体的繁殖操作用时相同。仅此一项,本系统的计算效率就将相对于同等硬件运行速度的硬件遗传算法实现方案提高种群规模倍,所需的时间开销约为同等硬件条件的遗传算法实现方案全部计算时间的种群规模大小分之一。不计算法运行的其他开销,在本系统中遗传算法一次运行的计算时间为: T ≤ T 1 × G max ≈ T G 4 × 1 P size - - - - - ( 20 ) 其中,T1为繁殖单个子代个体的计算时间,Gmax为最大进化计算的代数,Psize为种群规模。通常情况下,种群的规模为数十或数百,也就是说,本系统将使得遗传算法相对于同等硬件运行速度条件下的硬件遗传算法实现方案的优化计算速度提高1-2个数量级。
3、在本系统中采用受训练的多层感知器作为适应度值适应度值评价模块(4),当更换不同的适应度值评价模块时,整个系统立即变成一个新的优化问题解决者,因此本系统具有很好的柔性,拓宽了遗传算法的应用领域,并使得遗传算法从一种算法变成为一个机器。
4、本系统实现多父辈交叉操作和多基因突变操作,多父辈交叉操作已被许多研究者证明具有较两父辈的交叉操作更好的优化性能,因此本系统反映了遗传算法研究领域的最新研究成果,可以取得比普通遗传算法更好的优化质量。
                  附图说明图1本发明的系统方框图;初始化信息如种群规模、终止条件、交叉突变概率等由计算机(1)输出到神经网络模块组件(2);遗传算法的中间计算结果和最终结果包括种群的进化代数、最优个体等由神经网络模块组件(2)输出到计算机(1);图2完成遗传算法全部操作的神经网络系统方框图;输入为来自计算机(1)的遗传算法初始化信息;输出遗传算法的中间计算结果和最终结果到计算机(1);图3适应度值评价模块的神经网络结构图;输入来自群体初始化模块(3)或遗传操作模块(7),输出到竞争模块(8);图4是终止条件判断模块的结构图;输入:遗传算法进化代数来自于竞争模块(8)的竞争次数(进化代数),最大世代数和最大优化值稳定世代数来自计算机(1),本代和上代的最优值来自评价模块(4);输出:算法终止与否的信息,用于控制将神经网络模块组件(2)的优化结果输出到计算机(1);图5是权值计算模块的神经网络结构图;输入来自评价模块(4),输出到遗传操作模块(7);图6是遗传操作模块的方框图;输入包括:父代群体信息,来自初始化模块(3)或竞争模块(8)选择之后的结果,权值矩阵W来自权值模块(6);输出到评价模块(4);图7为多父辈交叉模块的网络结构图;输入包括:父代群体编码来自初始化模块(3)或遗传操作模块(7),权值矩阵W来自于权值模块(6);输出到突变模块(10);图8为多基因突变模块的网络结构图;输入为来自交叉模块(9)的个体编码和随机产生的掩码,输出子代个体编码到评价模块(4);图9为二值编码的多父辈交叉操作神经元;输入为父代群体的当前位编码,来自初始化模块(3)或竞争模块(8)之后选择的结果,输出为子代个体的当前位编码,输出到突变模块(10);图10为二值编码的多基因突变操作神经元;输入来自交叉模块(9),输出到评价模块(4);图11为实数编码的多父辈交叉操作神经元;输入来自初始化模块(3)或竞争模块(8)选择之后的结果,输出到突变模块(10);图12为实数编码的多基因突变操作神经元;输入来自交叉模块(9),输出到评价模块(4);图13为k-MAXNET竞争网络;输入来自评价模块(4),输出用于控制父代群体的构成,改变遗传操作模块(7)的输入;图14为大海捞针测试函数的解空间曲面图;图15和图16分别为本发明和普通遗传算法对于大海捞针函数的20次优化计算结果的对比;图17为遗传算法的一般流程图。
具体实施方式:
本实施例中以本系统优化经典测试函数大海捞针函数(Needle-in-a-Haystack)的过程为例来说明本系统的工作过程。大海捞针函数要求寻优极大值点,其解空间地形(Landscape)如图14所示,在定义域四角各有一个局部极大值点y=2748.78,中间唯一的全局极大值点ymax=f(0,0)=3600被无数的全局极小值点孤立包围在一个很小的区域之内,这使得该全局极大值点很难寻优,因而该函数被广泛的用于检验算法的寻优能力。鉴于大海捞针函数的解空间地形在其中央区域变化剧烈,在该区域内的寻优要求有较高的精度,本例采用实数编码遗传算法,并将遗传算法的参数设定为交叉概率0.80,每位编码的突变概率0.01,群体规模20,终止条件为最多进行20000次个体适应度值评价,算法重复运行20次。为了准确地评价算法的寻优质量,我们定义了两个性能指标,它们分别为最慢寻优速度和寻优成功率,其中最慢寻优速度为在N次重复试验中算法首达(逼近)全局最优值的最大进化代数,寻优成功率为在N次重复试验中算法找到全局最优值的次数占总试验次数的百分比。算法逼近全局最优值表征为在一次试验中,算法的寻优值As与函数全局最优值Fop之差的绝对值占函数值域的百分比小于某一个预先给定的范围:
          Er=(|Fop-As|/‖y‖)×100%≤ε=0.001    (21)
本系统的具体实施过程如下:
第一步,由图1中的数字计算机(1)向神经网络模块组件(2)设定遗传算法运行的参数包括群体规模20,染色体编码长度为2,交叉概率0.80,每位编码的突变概率0.01,终止条件为最多进行20000次个体适应度值评价,系统重复运行的次数为20。其中,群体规模和染色体编码长度发送给初始化模块(3),终止条件发送给终止条件模块(5),交叉和突变概率发送给遗传操作模块(7);
第二步,由图2中的种群初始化模块(3)随机地产生20个原始(第零代)群体编码并由适应度值评价模块(4)计算其适应度值,得到群体编码和相应的适应度值见表一,并由图1中的神经网络模块组件(2)向数字计算机(1)输出当前代的群体信息(个体的编码和适应度值);
第三步,由图2中的终止条件模块(5)判断是否满足算法终止条件,因不满足条件,转下一步;
第四步,由图2中的权值模块(6)根据父代群体的代龄计算群体中每一个个体在遗传操作模块(7)中所对应的连接权值矩阵W如表二所示;
第五步,产生随机数,如果该随机数小于在第1步中给定的交叉概率,则由图2中的遗传操作模块(7)根据权值矩阵W完成交配竞争,对在交配竞争中获胜的父代个体进行多父辈算术交叉操作。再次产生随机数,如果该随机数小于在第1步中给定的突变概率,则由突变操作模块(10)对交叉操作产生的新个体完成多基因非均匀突变操作。上述操作共产生20个子代个体编码,并由图2中的适应度值评价模块(4)计算其适应度值如表三所示;
第六步,根据该适应度值由竞争模块(8)完成父代群体与子代群体之间的生存竞争,优胜劣汰,形成新的父代群体如表四所示,并由图1中的神经网络模块组件(2)向计算机(1)输出算法当前的中间结果;对比原始的第零代群体和目前形成的第一代群体可知,在这一次生存竞争中共更新了10个个体的编码,即第零代中有10个适应度值较低的个体被第一次遗传操作所产生的子代中相对较优秀的10个个体所取代,它们分别是第1、4、5、6、8、11、13、14、19和20号个体;
第七步,由图2中的终止条件模块(5)判断是否满足算法终止条件,因不满足条件,重复第三步至第七步操作直至满足算法的终止条件;
第八步,由图1中的神经网络模块组件(2)向数字计算机(1)输出算法的最终寻优结果并显示。在本次算法运行的第350进化代,本系统成功地逼近大海捞针函数的全局极大值点,其寻优所得的全局最优值为:f(-0.0000000051242219,0.0004263378393965)=3599.9738261334442000;
第九步,重新向神经网络模块组件(2)发送初始化参数,重复上述第一步到第七步的操作,直至完成在数字计算机(1)中预设的系统重复运行次数,最终在数字计算机(1)中显示系统运行的结果。
本系统对于大海捞针测试函数所进行的20次寻优结果如图15所示。在这20次重复试验中,本系统的寻优成功率为100%,最慢寻优速度为650进化代。作为对比试验的普通遗传算法的20次重复试验结果如图16所示,显而易见,普通遗传算法的这两个衡量指标都不及我们的系统好。由此可见本系统的寻优效果非常理想,试验结果充分说明了本系统的寻优能力,这是由于本系统采用了多父辈交叉操作和多基因突变操作的结果。
必须指出的是,在图15和图16的优化曲线图中,横坐标均采用的是遗传算法的进化代数,侧重于体现本系统在收敛性能方面与普通遗传算法的比较,也就是说重点在寻优质量方面的比较。关于本系统相对于遗传算法的软件实现在计算速度方面的提高因子已经在关于发明效果的部分指出,不计因为神经网络硬件实现所带来的速度提高因素,本系统将比软件实现方案的速度提高遗传算法的种群规模倍,具体到本实施例而言,仅仅由于本系统的完全并行性,本系统的运行速度将比同等条件下的其他实现方案快20倍。表一:第0代群体的编码和适应度值
个体编  个体编码        适应度号                      值 个体编  个体编码        适应度号                      值
1       0.4331  0.1412  195.2 11      0.2832  0.7548  137.8
2       0.4767  0.0024  677.23       0.9221  0.0842  1355.44       0.4244  0.2545  48.05       0.5000  0.3710  5.86       0.5412  0.2471  47.67       0.4874  0.8986  278.28       0.5793  0.1947  108.99       0.9866  0.2436  1006.510      0.2640  0.8999  511.2 12      0.0871  0.0519  1515.513      0.1888  0.5552  109.714      0.6022  0.5116  7.915      0.0201  0.5071  583.616      0.8213  0.8816  680.817      0.7120  0.8727  371.618      0.8900  0.7039  412.419      0.4360  0.6260  6.320      0.4991  0.5786  18.9
表二:第零代群体所对应的权值矩阵
个体编  连接权号      值 个体编 连接权号     值 个体编 连接权号     值 个体编 连接权号     值
1       0.03712       0.03403       0.00944       0.02045       0.0299 6       0.01817       0.01088       0.02079       0.033210      0.0493 11     0.008212     0.032813     0.033914     0.003815     0.0023 16     0.010417     0.041418     0.018919     0.005920     0.0357
表三:第0代群体经遗传操作所产生的子代群体编码及评价值
个体编 子代个体编码    适应度号                     值 个体编 子代个体编码    适应度号                     值
1      0.4855  0.4272  23.22      0.4855  0.4394  43.23      0.4979  0.5042  3287.74      0.9315  0.9221  1459.35      0.4686  0.8875  251.16      0.4979  0.5042  3287.77      0.4569  0.4467  30.88      0.2091  0.9807  1095.99      0.4686  0.8875  251.110     0.4829  0.4356  34.1 11     0.4689  0.5392  91.812     0.4979  0.5042  3287.713     0.4583  0.6708  11.314     0.4583  0.6708  11.315     0.0506  0.603   1496.916     0.0412  0.5466  497.317     0.4642  0.4317  20.218     0.0083  0.9319  2017.419     0.4965  0.4511  98.720     0.4569  0.4467  30.8
表四:第0代群体及其子代群体经过生存竞争所产生的第1代父代群体
个体编 新的父代个体编  适应度号     码              值 个体编 新的父代个体编  适应度号     码              值
1      0.0083  0.9319  2017.42      0.4767  0.0024  677.23      0.9221  0.0842  1355.44      0.4686  0.8875  251.15      0.4686  0.8875  251.16      0.2091  0.9807  1095.97      0.4874  0.8986  278.28      0.4979  0.5042  3287.79      0.9866  0.2436  1006.510     0.2640  0.8999  511.2 11     0.0412  0.5466  497.312     0.0871  0.0519  1515.513     0.0506  0.6031  496.914     0.4979  0.5042  3287.715     0.0201  0.5071  583.616     0.8213  0.8816  680.817     0.7120  0.8727  371.618     0.8900  0.7039  412.419     0.4979  0.5042  3287.720     0.9315  0.9221  1459.3

Claims (6)

1、一种实现遗传算法的神经网络系统,本系统主要由一个数字计算机(1)和实现遗传算法的神经网络模块组件(2)以及它们之间的接口组成,它是由数字计算机(1)设定遗传算法的全部初始参数,并通过与神经网络模块组件(2)的接口将遗传算法运行的预置参数传向神经网络模块组件(2),然后由神经网络模块组件(2)以群体规模并行实现全部遗传操作,并通过与数字计算机(1)的接口将遗传算法每一代运行的中间结果和整个算法运行的最终结果传给数字计算机(1),由计算机(1)将系统优化计算的结果存储下来进行显示,本发明的特征在于,神经网络模块组件(2)在进化代的规模上通过神经网络模块完全并行地实现遗传算法的全部操作,整个系统依次包括如下工作步骤:
1)系统初始化;数字计算机(1)向神经网络模块组件(2)发送遗传算法的初始参数,包括群体规模m,染色体编码长度为n,作为遗传算法终止条件的最大进化代数Gmax和最大适应度值稳定代数Gmax,以及遗传算法的交叉概率Px和突变概率Pm,其中,群体规模和染色体编码长度发送给初始化模块(3),终止条件发送给终止条件模块(5),交叉和突变概率发送给遗传操作模块(7),并保存在神经网络模块组件(2)中;
2)群体初始化;群体初始化模块(3)接受来自计算机(1)的群体规模和染色体编码长度信息输入后,随机地产生遗传算法的原始(第零代)群体编码;
3)适应度值评价;适应度值评价模块(4)接受来自群体初始化模块(3)的群体编码信息输入,进行译码并对第零代群体进行译码和个体适应度值评价;适应度值评价模块(4)将群体的评价值输出到竞争模块(8),并将最优的适应度值输出到终止条件模块(5);
4)终止条件判断;终止条件判断模块(5)接收来自适应度值评价模块(4)的当前代最优适应度值和来自竞争模块(8)的遗传算法当前进化代的信息,并以此判断当前代群体是否满足算法终止条件,如果满足,则向计算机(1)输出优化结果,否则,以当前代群体作为父代群体,继续下一步操作;终止条件判断模块(5)的输出到遗传操作模块(7);终止条件判断模块(5)中的输入有三个来源:最大进化世代数和最优值稳定的最大世代数由计算机(1)给定;遗传算法的实际进化代数从竞争模块(8)读入;本代和上代的最优值从评价模块(4)中读入;
5)权值计算;权值计算模块(6)根据父代群体中个体的代龄计算遗传操作模块(7)中的连接权值矩阵,为实现遗传算法的赌盘选择操作提供依据,同时作为决定每一个在交配竞争中获胜的父代个体对其子代贡献的大小的依据;权值计算模块(6)的输入为经竞争模块(8)选择之后的参与遗传操作的父代群体的代龄,其输出的权值矩阵一方面将被输出到遗传操作神经网络模块(7)的交叉操作子模块(9)中作为交配竞争的依据,另一方面将被输出到交叉操作子模块(9)中作为该模块输入层神经元到交叉操作层神经元的连接权值(12);
6)遗传操作;遗传操作模块(7)根据权值矩阵完成父代群体的交配竞争,并由这些竞争获胜的父代个体完成遗传算法的多父辈交叉和多基因突变操作,产生子代群体的编码;遗传操作模块(7)包括多父辈交叉(9)和多基因突变(10)两个子模块,它接收来自经竞争模块(8)淘汰之后的父代群体编码信息输入,实现遗传算法的交叉和突变操作,并输出子代群体的编码到评价模块(4);每个遗传操作单元模块(7)产生一个子代个体,系统中遗传操作单元模块(7)的数量与遗传操作所产生新个体的数量相同;
7)适应度值评价;适应度值评价模块(4)对子代群体进行译码和个体适应度值评价;该步骤与第3)步相似,将子代群体的编码从遗传操作模块(7)输入到评价模块(4),分别计算其个体适应度值并将个体的适应度值输出到竞争模块(8);
8)生存竞争;竞争模块(8)接受来自评价模块(4)的父代群体和子代群体的适应度值信息,竞争模块实现实现父代群体和子代群体之间的生存竞争,实现优胜劣汰,从而形成新一代群体;
9)重复第4)到第8)步操作,直到满足算法的终止条件;
前述的神经网络模块组件(2)中用圆角框表示的父代群体和新生子代不是物理的模块,而是分布存储在神经网络模块组件中的关于遗传算法当代群体的信息。
2、根据权利要求1所述的实现遗传算法的神经网络系统,其特征在于,在本系统中采用由m个针对特定的评价函数训练过的多层感知器(Multiple LayerPerceptron,MLP)组成的MLP族作为适应度值评价模块(4),每个MLP子模块完成对一个个体的适应度值计算,由于采用自变量的归一化编码,对每一个个体的译码公式如下:
              Vi=(Vi,max-Vi,min)×gi+Vi,min    (1)
其中,Vi为gi所编码的变量值,Vi,max为第i个自变量定义域的上限,Vi,min为第i个自变量定义域的下限。
3、根据权利要求1所述的实现遗传算法的神经网络系统,其特征在于,终止条件判断模块(5)由两个公知的比较器和计数器组合构成,分别完成两类终止条件的判断:
第一个组合由比较器和计数器各一个组成,计数器A对整个系统的反馈迭代次数(即遗传算法的进化代数)计数,比较器A则对计数器A的计数和预先设定的最大进化代数Gmax进行比较,如果两者相等则模块输出为1;这里实现的是遗传算法的最大代数终止条件判断;
另一个组合由两个比较器和一个计数器组成,比较器B比较当前代的最大适应度值和上一代的最大适应度值,如果两者不等,计数器B清零,否则计数器B加1;比较器C将计数器B的计数(即遗传算法寻优过程中最优值稳定的代数)和预先设定的最大适应度值稳定代数Gmax进行比较,如果两者相等则模块输出为1;上述两个比较器和计数器组合的输出是或的关系,当满足上述两个条件之一时,模块输出为1,遗传算法运行终止。
4、根据权利要求1所述的实现遗传算法的神经网络系统,通过权值计算模块计算并确定交叉操作模块中输入层神经元到交叉操作神经元的连接权值矩阵,其特征在于,采用了基于个体代龄的权值计算公式: W i = ( Gage i g / ΣGage i g ) * rand ( 0,1 ) 其中Gagei g为第g代中个体i的代龄,age0为新生个体的代龄,age1为生存竞争中幸存者的单位代龄增加量,rand(0,1)用于在交配竞争中引入一定的随机因素,本模块为实现遗传算法的赌盘选择操作提供了依据。
5、根据权利要求1所述的实现遗传算法的神经网络系统,其中实现遗传算法的遗传操作模块的特征在于,设计了实现选择、交叉和突变操作的神经网络模块,实现了遗传算法的赌盘选择操作、二值编码遗传算法的多父辈交叉和多基因突变操作以及实数编码遗传算法的多父辈算术交叉和多基因非均匀突变操作,其具体的计算步骤如下:
1)在交叉操作模块(9)的竞争层中通过一个竞争网络子模块实现父代群体的交配竞争,该竞争子模块的输入为权值网络计算出的权值矩阵,输出用于控制交叉操作模块中从输入层到交叉操作层的m个开关的通断,即根据种群的权值矩阵决定每一个父代个体参与交叉操作与否,从而实现了遗传算法的赌盘选择操作;在本系统中,参与每一次交叉操作的父代个体数量在2到群体规模之间随机确定;
2)在交叉操作模块(9)中从输入层每个输入节点到交叉操作层每个神经元的连接权值W由权值计算模块(6)在每一代从外部注入,通过该连接权值的改变,系统实现每一个参与交配的父代个体对于其子代个体贡献大小的改变;
3)在交叉操作模块(9)和突变操作模块(10)中分别设计了二值编码遗传算法的多父辈交叉操作和多基因突变操作神经元以及实数编码遗传算法的多父辈算术交叉和多基因非均匀突变操作神经元,并由这些神经元分别实现相应的遗传操作如下:
二值编码遗传算法多父辈交叉操作为,
Figure A0312294900071
Y ( i ) = sign ( Σ j = 1 m W ( j ) * Z j ( i ) ) 其中,Xj(i)为第j个父代个体的第i位基因编码,W(j)为第j个父代个体在遗传操作模块(7)中的权值,Y(i)为遗传操作产生的子代个体的第i位基因编码,i={1,2,…,n},  j={1,2,…,m};
实数编码遗传算法的多父辈算术交叉操作为,
                  offs.C=(offs.g1,…,offs.gn) g i offs . = ( Σ j = 1 k λ j · g i j p ) mod 1 λ j = W j / Σ j = 1 k W j 其中,分别表示个体的编码长度和参与交叉操作的父代个体的数目,λ为一组系数, Σ j = 1 k λ j = 1 , Wj为根据参与繁殖的父代个体的代龄所计算出的连接权值矩阵(12),模运算用于确保子代个体中每一位基因的实数编码在归一化范围[0,1]之间;
在多基因突变操作中,本模块通过随机生成一个n位0-1码串r作为掩码,根据掩码串某一位上1或0的取值确定个体编码相应位上的值取反或保留原值不变,从而达到多基因突变的目的,其中二值编码遗传算法的多基因突变操作为,
Figure A0312294900085
实数编码遗传算法的多基因非均匀突变操作为,
Figure A0312294900086
Figure A0312294900087
Δ ( t , y ) = y · ( 1 - q ( 1 - t / g max ) b ) 其中,pgioffs.gi分别为父代和子代个体的第i位基因编码,τ∈{0,1}为一个随机数,q为一个0-1之间的随机数,t为遗传算法的当前代数,gmax为遗传操作的总代数,b为用户指定的系数。
6、根据权利要求1所述的实现遗传算法的神经网络系统,其特征在于采用了K-MAXNET竞争网络实现了遗传算法的生存竞争和交配竞争。其中,竞争模块(8)接受来自评价模块(4)的父代群体和子代群体的适应度值信息,实现实现父代群体和子代群体之间的生存竞争,从而形成新一代群体;嵌入在交叉操作模块(9)中的交配竞争子模块接受来自权值计算模块(6)的基于父代群体代龄的权值信息,输出用于控制交叉操作模块(9)中开关的通断,从而实现父代个体之间的生存竞争,完成遗传算法赌盘选择操作,竞争模块(8)的输入为参与竞争的父代和子代群体的适应度值,输出为m个1和L个0,分别对应于m个存活的个体和L个被淘汰的个体,
                X(i)=Et(i),i={1,2,…,m+L}
                Y(i)=St+1(i)∈{0,1},i={1,2,…,m+L}其中,St+1具有m个1和L个0。对于i,j∈[1,m+L],满足条件
                if  St+1(i)=1,St+1(j)=0,
                thenEt(i)≥Et(j)。
CN 03122949 2003-04-25 2003-04-25 实现遗传算法的神经网络系统 Pending CN1450493A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 03122949 CN1450493A (zh) 2003-04-25 2003-04-25 实现遗传算法的神经网络系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 03122949 CN1450493A (zh) 2003-04-25 2003-04-25 实现遗传算法的神经网络系统

Publications (1)

Publication Number Publication Date
CN1450493A true CN1450493A (zh) 2003-10-22

Family

ID=28684417

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 03122949 Pending CN1450493A (zh) 2003-04-25 2003-04-25 实现遗传算法的神经网络系统

Country Status (1)

Country Link
CN (1) CN1450493A (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100356402C (zh) * 2003-11-29 2007-12-19 国际商业机器公司 遗传最优化方法和系统
CN100373942C (zh) * 2004-06-25 2008-03-05 中国科学院软件研究所 面向瘦终端的多视频流显示方法与系统
CN102356399A (zh) * 2009-03-17 2012-02-15 阿尔卡特朗讯公司 通过遗传规划在电信网络中用于网络节点控制的进化算法
CN101414353B (zh) * 2007-10-18 2012-06-13 索尼株式会社 信息处理装置、信息处理方法
CN102521484A (zh) * 2011-11-22 2012-06-27 盐城市真鹿高科技发展有限公司 基于自适应参数域遗传算法的机油泵性能曲线的估计方法
CN102611140A (zh) * 2012-03-23 2012-07-25 合肥工业大学 基于小波变换与神经网络的并网逆变器孤岛检测方法
CN102680646A (zh) * 2012-06-12 2012-09-19 南京理工大学常熟研究院有限公司 一种不饱和聚酯树脂反应釜中反应物浓度软测量方法
CN103268222A (zh) * 2013-04-23 2013-08-28 湖南工学院 数字化人机界面监视单元布局方法及布局系统
WO2014020455A1 (en) * 2012-07-30 2014-02-06 International Business Machines Corporation Multi-scale spatio-temporal neural network system
CN103761568A (zh) * 2014-01-23 2014-04-30 国家电网公司 基于som神经网络聚类算法的日负荷特征曲线提取方法
CN103974388A (zh) * 2013-01-29 2014-08-06 中国人民解放军总参谋部第六十一研究所 一种无线传感器网络数据融合方法及装置
WO2014139395A1 (en) * 2013-03-12 2014-09-18 International Business Machines Corporation Early generation of individuals to accelerate genetic algorithms
CN104599668A (zh) * 2014-12-18 2015-05-06 清华大学 基于稀疏矩阵快速语音识别方法和装置
CN104866904A (zh) * 2015-06-16 2015-08-26 中电科软件信息服务有限公司 一种基于spark的遗传算法优化的BP神经网络并行化方法
CN104867164A (zh) * 2015-04-29 2015-08-26 中国科学院上海微系统与信息技术研究所 一种基于遗传算法的矢量量化码书设计方法
CN106991364A (zh) * 2016-01-21 2017-07-28 阿里巴巴集团控股有限公司 人脸识别处理方法、装置以及移动终端
CN107977726A (zh) * 2016-10-21 2018-05-01 中国科学院声学研究所 用户关系预测模型的建立及用户动态关系的预测方法
CN108287666A (zh) * 2018-01-16 2018-07-17 中国人民公安大学 用于云存储环境的数据存储方法及装置
CN108542402A (zh) * 2018-05-17 2018-09-18 吉林求是光谱数据科技有限公司 基于自组织竞争神经网络模型和红外光谱的血糖检测方法
CN108764474A (zh) * 2018-05-25 2018-11-06 中国传媒大学 一种神经元参数拟合方法
CN109615074A (zh) * 2018-12-14 2019-04-12 北京深极智能科技有限公司 游戏的怪物配置生成方法及装置
CN112036567A (zh) * 2020-09-18 2020-12-04 北京机电工程研究所 遗传编程方法、装置和计算机可读介质

Cited By (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100356402C (zh) * 2003-11-29 2007-12-19 国际商业机器公司 遗传最优化方法和系统
US9047569B2 (en) 2003-11-29 2015-06-02 International Business Machines Corporation Genetic optimization method and system
CN100373942C (zh) * 2004-06-25 2008-03-05 中国科学院软件研究所 面向瘦终端的多视频流显示方法与系统
CN101414353B (zh) * 2007-10-18 2012-06-13 索尼株式会社 信息处理装置、信息处理方法
CN102356399A (zh) * 2009-03-17 2012-02-15 阿尔卡特朗讯公司 通过遗传规划在电信网络中用于网络节点控制的进化算法
CN102521484A (zh) * 2011-11-22 2012-06-27 盐城市真鹿高科技发展有限公司 基于自适应参数域遗传算法的机油泵性能曲线的估计方法
CN102521484B (zh) * 2011-11-22 2014-12-10 盐城市真鹿高科技发展有限公司 基于自适应参数域遗传算法的机油泵性能曲线的估计方法
CN102611140A (zh) * 2012-03-23 2012-07-25 合肥工业大学 基于小波变换与神经网络的并网逆变器孤岛检测方法
CN102680646A (zh) * 2012-06-12 2012-09-19 南京理工大学常熟研究院有限公司 一种不饱和聚酯树脂反应釜中反应物浓度软测量方法
US9715653B2 (en) 2012-07-30 2017-07-25 International Business Machines Corporation Multi-scale spatio-temporal neural network system
US9400954B2 (en) 2012-07-30 2016-07-26 International Business Machines Corporation Multi-scale spatio-temporal neural network system
WO2014020455A1 (en) * 2012-07-30 2014-02-06 International Business Machines Corporation Multi-scale spatio-temporal neural network system
US9715654B2 (en) 2012-07-30 2017-07-25 International Business Machines Corporation Multi-scale spatio-temporal neural network system
CN103974388A (zh) * 2013-01-29 2014-08-06 中国人民解放军总参谋部第六十一研究所 一种无线传感器网络数据融合方法及装置
CN103974388B (zh) * 2013-01-29 2017-11-07 中国人民解放军总参谋部第六十一研究所 一种无线传感器网络数据融合方法及装置
WO2014139395A1 (en) * 2013-03-12 2014-09-18 International Business Machines Corporation Early generation of individuals to accelerate genetic algorithms
US10755175B2 (en) 2013-03-12 2020-08-25 International Business Machines Corporation Early generation of individuals to accelerate genetic algorithms
US9311597B2 (en) 2013-03-12 2016-04-12 International Business Machines Corporation Early generation of individuals to accelerate genetic algorithms
WO2014173272A1 (zh) * 2013-04-23 2014-10-30 湖南工学院 数字化人机界面监视单元布局方法及布局系统
CN103268222B (zh) * 2013-04-23 2016-05-04 湖南工学院 数字化人机界面监视单元布局方法及布局系统
CN103268222A (zh) * 2013-04-23 2013-08-28 湖南工学院 数字化人机界面监视单元布局方法及布局系统
CN103761568A (zh) * 2014-01-23 2014-04-30 国家电网公司 基于som神经网络聚类算法的日负荷特征曲线提取方法
CN104599668B (zh) * 2014-12-18 2018-02-02 清华大学 基于稀疏矩阵快速语音识别方法和装置
CN104599668A (zh) * 2014-12-18 2015-05-06 清华大学 基于稀疏矩阵快速语音识别方法和装置
CN104867164A (zh) * 2015-04-29 2015-08-26 中国科学院上海微系统与信息技术研究所 一种基于遗传算法的矢量量化码书设计方法
CN104866904B (zh) * 2015-06-16 2019-01-01 中电科软件信息服务有限公司 一种基于spark的遗传算法优化的BP神经网络并行化方法
CN104866904A (zh) * 2015-06-16 2015-08-26 中电科软件信息服务有限公司 一种基于spark的遗传算法优化的BP神经网络并行化方法
CN106991364A (zh) * 2016-01-21 2017-07-28 阿里巴巴集团控股有限公司 人脸识别处理方法、装置以及移动终端
CN106991364B (zh) * 2016-01-21 2020-06-12 阿里巴巴集团控股有限公司 人脸识别处理方法、装置以及移动终端
CN107977726A (zh) * 2016-10-21 2018-05-01 中国科学院声学研究所 用户关系预测模型的建立及用户动态关系的预测方法
CN107977726B (zh) * 2016-10-21 2021-03-16 中国科学院声学研究所 用户关系预测模型的建立及用户动态关系的预测方法
CN108287666A (zh) * 2018-01-16 2018-07-17 中国人民公安大学 用于云存储环境的数据存储方法及装置
CN108287666B (zh) * 2018-01-16 2021-01-26 中国人民公安大学 用于云存储环境的数据存储方法及装置
CN108542402A (zh) * 2018-05-17 2018-09-18 吉林求是光谱数据科技有限公司 基于自组织竞争神经网络模型和红外光谱的血糖检测方法
CN108764474A (zh) * 2018-05-25 2018-11-06 中国传媒大学 一种神经元参数拟合方法
CN109615074A (zh) * 2018-12-14 2019-04-12 北京深极智能科技有限公司 游戏的怪物配置生成方法及装置
CN109615074B (zh) * 2018-12-14 2023-02-17 北京字节跳动网络技术有限公司 游戏的怪物配置生成方法及装置
CN112036567A (zh) * 2020-09-18 2020-12-04 北京机电工程研究所 遗传编程方法、装置和计算机可读介质
CN112036567B (zh) * 2020-09-18 2023-10-31 北京机电工程研究所 遗传编程方法、装置和计算机可读介质

Similar Documents

Publication Publication Date Title
CN1450493A (zh) 实现遗传算法的神经网络系统
Ezugwu Enhanced symbiotic organisms search algorithm for unrelated parallel machines manufacturing scheduling with setup times
Eiben et al. Parameter control in evolutionary algorithms
US20030055614A1 (en) Method for optimizing a solution set
Li et al. A survey on firefly algorithms
Zhao et al. A reinforcement learning brain storm optimization algorithm (BSO) with learning mechanism
CN109932903A (zh) 多父代优化网络和遗传算法的风机控制多目标优化方法
CN102662642B (zh) 一种基于嵌套滑动窗口和遗传算法的并行处理方法
Blum et al. An introduction to metaheuristic techniques
CN108510050A (zh) 一种基于混洗蛙跳的特征选择方法
Wong et al. A novel approach in parameter adaptation and diversity maintenance for genetic algorithms
CN109242021A (zh) 一种基于多阶段混合模型的分类预测方法
Gu et al. A discrete particle swarm optimization algorithm with adaptive inertia weight for solving multiobjective flexible job-shop scheduling problem
Rahimi-Vahed et al. A new particle swarm algorithm for a multi-objective mixed-model assembly line sequencing problem
Ersoy et al. Memetic algorithms and hyperhill-climbers
CN107400935A (zh) 基于改进elm的熔融纺丝工艺的调节方法
Sadeghi Hesar et al. A quantum multi-objective optimization algorithm based on harmony search method
Varghese et al. A hybrid multi-task learning approach for optimizing deep reinforcement learning agents
Pelikan et al. Genetic algorithms
CN108596339A (zh) 一种构建子种群和子问题的多目标优化遗传算法
CN109102203A (zh) 一种基于多串染色体遗传算法的目标分配优化方法
La Cava et al. Behavioral search drivers and the role of elitism in soft robotics
Alapati Discrete optimization of truss structure using genetic algorithm
CN110033118A (zh) 弹性网络建模且基于遗传算法的风机多目标优化控制方法
Zhang et al. Multiobjective Harris hawks optimization with associative learning and chaotic local search for feature selection

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication