CN105373831A - 一种基于群体阶段性样本训练的k-近邻预测全局优化方法 - Google Patents
一种基于群体阶段性样本训练的k-近邻预测全局优化方法 Download PDFInfo
- Publication number
- CN105373831A CN105373831A CN201510648422.4A CN201510648422A CN105373831A CN 105373831 A CN105373831 A CN 105373831A CN 201510648422 A CN201510648422 A CN 201510648422A CN 105373831 A CN105373831 A CN 105373831A
- Authority
- CN
- China
- Prior art keywords
- individuality
- individual
- population
- new
- trial
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Genetics & Genomics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Physiology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种基于群体阶段性样本训练的k-近邻预测全局优化方法,在差分进化算法为框架,基于k-近邻预测方法,通过k-近邻预测值来代替新个体的实际目标函数值,从而减少函数评价次数;在进化过程中,根据种群中个体的拥挤度,即各个体之间的平均距离将算法分为两个阶段,从而分阶段进行样本训练,第一阶段,根据平均距离判断何时终止对所有个体进行样本训练,避免前期样本训练代数设置不恰当而影响算法性能;第二阶段,当样本训练达到一定数量后,根据k-近邻预测值与实际目标函数值之间的误差保存样本个体,避免样本个体过多而导致空间复杂度较高。本发明不需要进行样本训练代数设置,且空间复杂度较小。
Description
技术领域
本发明涉及一种智能优化、计算机应用领域,尤其涉及的是,一种基于群体阶段性样本训练的k-近邻预测全局优化方法。
背景技术
全局优化作为最优化学科领域中一个独立的学科分支,已成为人们研究实际问题时进行建模和分析的重要手段之一。在科学、经济和工程设计中,如生物信息学、机械设计、化学工程设计和控制、环境工程、以及图形处理等,许多进展都依赖于计算相应的优化问题的全局最优解的数值技术。同时,随着工程优化问题的日趋复杂,优化问题的目标函数的性态也变得越来越复杂,通常是不连续、不可微、高度非线性的,没有明确的解析表达式,且具有多个峰值、多目标的特征。因此,解决常规的优化问题已成为计算机科学和优化领域的一个挑战性课题。
近年来,进化算法在经济、科学、工程等领域等到了广泛应用。典型的进化算法包括差分进化算法(DE)、遗传算法(GA)、粒子群算法(PSO)、进化规划(EP)和进化策略(ES)等,这些算法不需要目标函数的导数信息,对目标函数的性态没有要求,而且适用范围广、鲁棒性强,因此在电力系统、化工、通信、机械工程和生物信息学等领域得到了广泛应用。然而,进化算法面临的一个共同的问题就是求解时需要大量的目标函数评价次数,从而导致较高的计算代价,尤其对于一些实际应用问题,由于其仿真模型运行时间的限制,对目标函数评价一次极其费时。例如,蛋白质结构预测问题中,能量函数通常具有上千个自由度,而且对能量函数评价有时需要调用第三方能量包,从而导致评价一次需要数分钟。因此,如何减少进化算法在优化求解时所需的目标函数评价次数极其重要。
k-近邻预测方法利用新个体的近邻个体来预测其目标函数值,从而减少目标函数评价次数。在算法进化前期,对所有的个体进行目标函数评价,并将这些个体记录为训练样本,进而在进化后期,根据新个体的近邻样本个体的目标函数值来估计新个体的目标函数值,同时根据估计值对种群个体进行排名,并对排名靠前的部分个体进行目标函数评价,并加入样本中。然而,在k-近邻预测方法中,如何确定前期样本训练代数是一项极其重要的工作,对于一些简单的优化问题,因此无法提前知道算法需要进化到多少代才能找到最优解,若样本训练代数设置的较大,则当算法已找到最优解时,还在进行样本训练,从而无法达到减少函数评价次数的效果;对于一些复杂的优化问题,可能需要进化很多代才能达到最优,若训练样本代数设置的较小,会导致后期的近邻预测值与实际目标函数值误差较大,从而影响算法性能;另外,为了获得更加精确的近邻预测值,算法需要保存大量样本个体,从而导致空间复杂度较高。
因此,现有的k-近邻预测方法在训练样本的代数设置和样本保存方面存在缺陷,需要改进。
发明内容
为了克服现有k-近邻预测方法在训练样本的代数设置和样本保存方面的不足,本发明根据种群中个体的拥挤度来判断算法所达到的阶段,从而分阶段进行样本训练,同时根据预测值与实际目标函数值的误差值保存样本,从而提出一种不需要进行样本训练代数设置,且空间复杂度较小的基于群体阶段性样本训练的k-近邻预测全局优化方法。
本发明解决其技术问题所采用的技术方案是:
一种基于群体阶段性样本训练的k-近邻预测全局优化方法,所述方法包括以下步骤:
1)初始化:设置种群规模NP,交叉概率CR,增益常数F,置进化代数g=0连续进化代数T,预测误差值θ,个体重新评价数量η和η*,其中η*>η;
2)随机生成初始种群P={x1,g,x2,g,...,xNp,g},并计算出各个体的目标函数值,其中,进化代数g=0,xi,g,i=1,2,…,Np表示第g代种群中的第i个个体;;
3)根据公式(1)计算出初始种群中各个体之间的平均距离dinitial;
其中,表示第g代种群中第i个个体xi,g的第j维元素,表示第g代种群中第k个个体xk,g的第j维元素,N为问题维数,NP为种群规模;
4)对种群中的每个个体根据式(2)进行变异:
其中,j=1,2,…,N,N为问题维数,g为进化代数,为第g代种群中第i个目标个体的变异个体的第j维元素,分别为第g代种群中第a、b、c个个体的第j维元素,a,b,c∈{1,2,...,Np},a≠b≠c≠i,i为当前目标个体的索引;
5)根据公式(3)对每个变异个体进行交叉生成新个体triali,g:
其中,j=1,2,…,N,表示第g代种群中第i个目标个体对应的新个体triali,g的第j维元素,表示第g代种群中第i个个体xi,g的第j维元素,randb(0,1)表示为随机产生0到1之间的小数,rnbr(j)表示随机产生1到N之间的整数,CR表示交叉概率;
6)根据公式(1)计算出当前种群中各个体之间的平均距离dave;
7)根据如下操作进行样本训练:
7.1)如果则对所有新个体进行目标函数评价,即计算新个体的目标函数值,并将这些个体作为训练样本记录;
7.2)如果则进行如下操作:
7.2.1)根据公式(4)计算新个体与各训练样本个体之间的距离;
其中,表示第s个训练样本,s=1,2,…,S,S为训练样本的数量;
7.2.2)选取与新个体距离最近的k个样本个体,并根据公式(5)计算新个体的k-近邻预测值;
7.2.3)根据k-近邻预测值对所有新个体按从小到大进行排序;
7.2.4)计算当前种群的最优值如果最优值连续T代没有变化,则选举前η*个新个体进行目标函数评价,否则选取前η个新个体进行目标函数评价,其余个体的目标函数值用代替,其中,xbest,g为当前第g代种群中的最优个体;
7.2.5)计算已评价个体的预测误差值将误差值大于θ的个体加入训练样本中;
8)根据公式(6)对每个新个体进行种群更新:
其中, 公式(6)表明,如果新个体优于目标个体,则新个体替换目标个体,否则保持目标个体不变;
9)判断是否满足终止条件,如果满足,则保存结果并退出,否则返回步骤4)。
进一步,所述步骤9)中,终止条件为函数评价次数。当然,也可以为其他终止条件。
本发明的技术构思为:在差分进化算法为框架,基于k-近邻预测方法,通过k-近邻预测值来代替新个体的实际目标函数值,从而减少函数评价次数;在进化过程中,根据种群中个体的拥挤度,即各个体之间的平均距离将算法分为两个阶段,从而分阶段进行样本训练,第一阶段,根据平均距离判断何时终止对所有个体进行样本训练,避免前期样本训练代数设置不恰当而影响算法性能;第二阶段,当样本训练达到一定数量后,根据k-近邻预测值与实际目标函数值之间的误差保存样本个体,避免样本个体过多而导致空间复杂度较高。
本发明的有益效果表现在:1)根据新个体的k-近邻预测值代替实际目标函数值,有效减少目标函数评价次数;2)根据各个体之间的平均距离将算法分为两个阶段,只在第一阶段对所有个体进行评价并作为样本保存,避免样本训练代数设置难的问题;3)在第二阶段,仅保存k-近邻预测值与实际目标函数值之间的误差较大的样本个体,避免样本个体过多而导致空间复杂度较高的问题。
附图说明
图1是基于群体阶段性样本训练的k-近邻预测全局优化方法的基本流程图。
图2是基于群体阶段性样本训练的k-近邻预测全局优化方法对10维Ackley优化求解时的平均距离变化曲线图。
图3是基于群体阶段性样本训练的k-近邻预测全局优化方法对10维Ackley优化求解时的平均收敛曲线图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1~图3,一种基于群体阶段性样本训练的k-近邻预测全局优化方法,包括以下步骤:
1)初始化:设置种群规模NP,交叉概率CR,增益常数F,置进化代数g=0连续进化代数T,预测误差值θ,个体重新评价数量η和η*,其中η*>η;
2)随机生成初始种群P={x1,g,x2,g,...,xNp,g},并计算出各个体的目标函数值,其中,进化代数g=0,xi,g,i=1,2,…,Np表示第g代种群中的第i个个体;;
3)根据公式(1)计算出初始种群中各个体之间的平均距离dinitial;
其中,表示第g代种群中第i个个体xi,g的第j维元素,表示第g代种群中第k个个体xk,g的第j维元素,N为问题维数,NP为种群规模;
4)对种群中的每个个体根据式(2)进行变异:
其中,j=1,2,…,N,N为问题维数,g为进化代数,为第g代种群中第i个目标个体的变异个体的第j维元素,分别为第g代种群中第a、b、c个个体的第j维元素,a,b,c∈{1,2,...,Np},a≠b≠c≠i,i为当前目标个体的索引;
5)根据公式(3)对每个变异个体进行交叉生成新个体triali,g:
其中,j=1,2,…,N,表示第g代种群中第i个目标个体对应的新个体triali,g的第j维元素,表示第g代种群中第i个个体xi,g的第j维元素,randb(0,1)表示为随机产生0到1之间的小数,rnbr(j)表示随机产生1到N之间的整数,CR表示交叉概率;
6)根据公式(1)计算出当前种群中各个体之间的平均距离dave;
7)根据如下操作进行样本训练:
7.1)如果则对所有新个体进行目标函数评价,即计算新个体的目标函数值,并将这些个体作为训练样本记录;
7.2)如果则进行如下操作:
7.2.1)根据公式(4)计算新个体与各训练样本个体之间的距离;
其中,表示第s个训练样本,s=1,2,…,S,S为训练样本的数量;
7.2.2)选取与新个体距离最近的k个样本个体,并根据公式(5)计算新个体的k-近邻预测值;
7.2.3)根据k-近邻预测值对所有新个体按从小到大进行排序;
7.2.4)计算当前种群的最优值如果最优值连续T代没有变化,则选举前η*个新个体进行目标函数评价,否则选取前η个新个体进行目标函数评价,其余个体的目标函数值用代替,其中,xbest,g为当前第g代种群中的最优个体;
7.2.5)计算已评价个体的预测误差值将误差值大于θ的个体加入训练样本中;
8)根据公式(6)对每个新个体进行种群更新:
其中, 公式(6)表明,如果新个体优于目标个体,则新个体替换目标个体,否则保持目标个体不变;
9)判断是否满足终止条件,如果满足,则保存结果并退出,否则返回步骤4)。
进一步,所述步骤9)中,终止条件为函数评价次数。当然,也可以为其他终止条件。
本实施例以经典的10维Ackley函数为实施例,一种基于群体阶段性样本训练的k-近邻预测全局优化方法,其中包含以下步骤:
1)初始化:设置种群规模NP=50,交叉概率CR=0.9,增益常数F=0.5,置进化代数g=0连续进化代数T=12,预测误差值θ=0.04,个体重新评价数量η=15和η*=25;
2)随机生成初始种群P={x1,g,x2,g,...,xNp,g},并计算出各个体的目标函数值,其中,进化代数g=0,xi,g,i=1,2,…,Np表示第g代种群中的第i个个体;;
3)根据公式(1)计算出初始种群中各个体之间的平均距离dinitial;
其中,表示第g代种群中第i个个体xi,g的第j维元素,表示第g代种群中第k个个体xk,g的第j维元素,N为问题维数,NP为种群规模;
4)对种群中的每个个体根据式(2)进行变异:
其中,j=1,2,…,N,N为问题维数,g为进化代数,为第g代种群中第i个目标个体的变异个体的第j维元素,分别为第g代种群中第a、b、c个个体的第j维元素,a,b,c∈{1,2,...,Np},a≠b≠c≠i,i为当前目标个体的索引;
5)根据公式(3)对每个变异个体进行交叉生成新个体triali,g:
其中,j=1,2,…,N,表示第g代种群中第i个目标个体对应的新个体triali,g的第j维元素,表示第g代种群中第i个个体xi,g的第j维元素,randb(0,1)表示为随机产生0到1之间的小数,rnbr(j)表示随机产生1到N之间的整数,CR表示交叉概率;
6)根据公式(1)计算出当前种群中各个体之间的平均距离dave;
7)根据如下操作进行样本训练:
7.1)如果则对所有新个体进行目标函数评价,即计算新个体的目标函数值,并将这些个体作为训练样本记录;
7.2)如果则进行如下操作:
7.2.1)根据公式(4)计算新个体与各训练样本个体之间的距离;
其中,表示第s个训练样本,s=1,2,…,S,S为训练样本的数量;
7.2.2)选取与新个体距离最近的k个样本个体,并根据公式(5)计算新个体的k-近邻预测值;
7.2.3)根据k-近邻预测值对所有新个体按从小到大进行排序;
7.2.4)计算当前种群的最优值如果最优值连续T代没有变化,则选举前η*个新个体进行目标函数评价,否则选取前η个新个体进行目标函数评价,其余个体的目标函数值用代替,其中,xbest,g为当前第g代种群中的最优个体;
7.2.5)计算已评价个体的预测误差值将误差值大于θ的个体加入训练样本中;
8)根据公式(6)对每个新个体进行种群更新:
其中, 公式(6)表明,如果新个体优于目标个体,则新个体替换目标个体,否则保持目标个体不变;
9)判断目标函数评价次数是否达到20000,如果已经达到,则保存结果并退出,否则返回步骤4)。
以10维Ackley函数为实施例,30次独立运行的平均成功率为100%(规定算法在100000次目标函数评价次数内找到的最优解的精确度为0.00001时为成功求解),20000次函数评价次数内所求得的解的平均值为3.46E-10,标准偏差为1.18E-10。
以上阐述的是本发明给出的一个实施例表现出来的优良优化效果,显然本发明不仅适合上述实施例,而且可以应用到实际工程中的各个领域(如蛋白质结构预测,电力系统,路径规划等优化问题),同时在不偏离本发明基本精神及不超出本发明实质内容所涉及内容的前提下可对其做种种变化加以实施。
Claims (2)
1.一种基于群体阶段性样本训练的k-近邻预测全局优化方法,其特征在于:所述优化方法包括以下步骤:
1)初始化:设置种群规模NP,交叉概率CR,增益常数F,置进化代数g,连续进化代数T,预测误差值θ,个体重新评价数量η和η*,其中η*>η;
2)随机生成初始种群P={x1,g,x2,g,...,xNp,g},并计算出各个体的目标函数值,其中,进化代数g=0,xi,g,i=1,2,…,Np表示第g代种群中的第i个个体;;
3)根据公式(1)计算出初始种群中各个体之间的平均距离dinitial;
其中,表示第g代种群中第i个个体xi,g的第j维元素,表示第g代种群中第k个个体xk,g的第j维元素,N为问题维数,NP为种群规模;
4)对种群中的每个个体根据式(2)进行变异:
其中,j=1,2,…,N,N为问题维数,g为进化代数,为第g代种群中第i个目标个体的变异个体的第j维元素,分别为第g代种群中第a、b、c个个体的第j维元素,a,b,c∈{1,2,...,Np},a≠b≠c≠i,i为当前目标个体的索引;
5)根据公式(3)对每个变异个体进行交叉生成新个体triali,g:
其中,j=1,2,…,N,表示第g代种群中第i个目标个体对应的新个体triali,g的第j维元素,表示第g代种群中第i个个体xi,g的第j维元素,randb(0,1)表示为随机产生0到1之间的小数,rnbr(j)表示随机产生1到N之间的整数,CR表示交叉概率;
6)根据公式(1)计算出当前种群中各个体之间的平均距离dave;
7)根据如下操作进行样本训练:
7.1)如果则对所有新个体进行目标函数评价,即计算新个体的目标函数值,并将这些个体作为训练样本记录;
7.2)如果则进行如下操作:
7.2.1)根据公式(4)计算新个体与各训练样本个体之间的距离;
其中,表示第s个训练样本,s=1,2,…,S,S为训练样本的数量;
7.2.2)选取与新个体距离最近的k个样本个体,并根据公式(5)计算新个体的k-近邻预测值;
7.2.3)根据k-近邻预测值对所有新个体按从小到大进行排序;
7.2.4)计算当前种群的最优值如果最优值连续T代没有变化,则选举前η*个新个体进行目标函数评价,否则选取前η个新个体进行目标函数评价,其余个体的目标函数值用代替,其中,xbest,g为当前第g代种群中的最优个体;
7.2.5)计算已评价个体的预测误差值将误差值大于θ的个体加入训练样本中;
8)根据公式(6)对每个新个体进行种群更新:
其中, 公式(6)表明,如果新个体优于目标个体,则新个体替换目标个体,否则保持目标个体不变;
9)判断是否满足终止条件,如果满足,则保存结果并退出,否则返回步骤4)。
2.如权利要求1所述的一种基于群体阶段性样本训练的k-近邻预测全局优化方法,其特征在于:所述步骤9)中,终止条件为函数评价次数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510648422.4A CN105373831A (zh) | 2015-10-09 | 2015-10-09 | 一种基于群体阶段性样本训练的k-近邻预测全局优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510648422.4A CN105373831A (zh) | 2015-10-09 | 2015-10-09 | 一种基于群体阶段性样本训练的k-近邻预测全局优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105373831A true CN105373831A (zh) | 2016-03-02 |
Family
ID=55376012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510648422.4A Pending CN105373831A (zh) | 2015-10-09 | 2015-10-09 | 一种基于群体阶段性样本训练的k-近邻预测全局优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105373831A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407738A (zh) * | 2016-04-08 | 2017-02-15 | 浙江工业大学 | 一种基于种群拥挤度识别的差分进化蛋白质结构预测方法 |
CN108167133A (zh) * | 2017-12-20 | 2018-06-15 | 北京金风慧能技术有限公司 | 风速误差模型的训练方法、装置及风力发电机组 |
CN106096328B (zh) * | 2016-04-26 | 2018-09-07 | 浙江工业大学 | 一种基于局部Lipschitz支撑面的双层差分进化蛋白质结构预测方法 |
-
2015
- 2015-10-09 CN CN201510648422.4A patent/CN105373831A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407738A (zh) * | 2016-04-08 | 2017-02-15 | 浙江工业大学 | 一种基于种群拥挤度识别的差分进化蛋白质结构预测方法 |
CN106096328B (zh) * | 2016-04-26 | 2018-09-07 | 浙江工业大学 | 一种基于局部Lipschitz支撑面的双层差分进化蛋白质结构预测方法 |
CN108167133A (zh) * | 2017-12-20 | 2018-06-15 | 北京金风慧能技术有限公司 | 风速误差模型的训练方法、装置及风力发电机组 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104866692B (zh) | 一种基于自适应代理模型的飞行器多目标优化方法 | |
CN104200087B (zh) | 用于机器学习的参数寻优及特征调优的方法及系统 | |
CN107506865B (zh) | 一种基于lssvm优化的负荷预测方法及系统 | |
CN104914835A (zh) | 一种柔性作业车间调度多目标的方法 | |
CN105279397A (zh) | 一种识别蛋白质相互作用网络中关键蛋白质的方法 | |
CN104539601B (zh) | 动态网络攻击过程可靠性分析方法及系统 | |
CN106934722A (zh) | 基于k节点更新与相似度矩阵的多目标社区检测方法 | |
CN102693452A (zh) | 基于半监督回归学习的多模型软测量方法 | |
CN104765690A (zh) | 基于模糊遗传算法的嵌入式软件测试数据生成方法 | |
CN102663514A (zh) | 一种基于可行均衡机制的约束优化进化算法 | |
CN105335619A (zh) | 适用于高计算代价数值计算模型参数反分析的协同优化法 | |
Wongrat et al. | Modified genetic algorithm for nonlinear data reconciliation | |
CN105373831A (zh) | 一种基于群体阶段性样本训练的k-近邻预测全局优化方法 | |
CN106372458A (zh) | 基于邻居接近中心性和直系同源信息的关键蛋白质识别方法 | |
Chowdhury et al. | Adaptive regulatory genes cardinality for reconstructing genetic networks | |
CN106296434B (zh) | 一种基于pso-lssvm算法的粮食产量预测方法 | |
CN111832839B (zh) | 基于充分增量学习的能耗预测方法 | |
CN106599610A (zh) | 预测长链非编码rna和蛋白质联系的方法及系统 | |
CN113449919A (zh) | 一种基于特征和趋势感知的用电量预测方法及系统 | |
Gilan et al. | Sustainable building design: A challenge at the intersection of machine learning and design optimization | |
CN105740949A (zh) | 一种基于随机性best策略的群体全局优化方法 | |
CN103353895A (zh) | 一种配电网线损数据的预处理方法 | |
CN102521655A (zh) | 基于非支配邻域免疫算法的动态网络社区检测方法 | |
Xiao et al. | A locating method for reliability-critical gates with a parallel-structured genetic algorithm | |
CN105302976A (zh) | 基于spea2算法的铝电解生产优化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160302 |
|
RJ01 | Rejection of invention patent application after publication |