在生产设计,算法设计等应用中,参数的选择对结果具有重要的影响,而参数一般是靠经验或统计确定,对于实际来说需要多次试验来确定最终的参数。即使这样也不能保证参数就是最有的,同时也浪费时间,人力财力。现代应用中的经常采集大量的数据,这些数据及其关系人工一般是很难理解、辨认和优化的,没有确定的数学模型。这时要迅速的建立优化的加工参数,按照传统的技术和方法,难度是较大的。而神经网络具有很好的模拟能力,由输入到输出的映射,并且具有很好的映射能力。遗传算法具有很好的寻优能力,在求最值方面有很好的应用。可以利用神经网络的拟合的能力和遗传算法的寻优能力还确定最优的参数。
首先利用神经网络的拟合能力,根据已有数据从输入到输出映射。作为遗传算法的评价准则。
然后应用遗传算法,根据评价准则进行选择,交叉,变异操作产生个体,经过若干代后计算出最有工艺参数。
伪代码过程 (谢菲尔德大学的遗传算法工具箱)如下:
1.根据已有的数据,应用神经网络进行拟合,得到神经网络模型参数
2.设置遗传算法的参数
3.while gen<MAXGEN %小于进化代数
FitnV=ranking(-ObjV); %分配适应度值
SelCh=select(‘sus’,Chrom,FitnV,GGAP); %选择
SelCh=recombin(‘xovsp’,SelCh,px); %重组
SelCh=mut(SelCh,pm); %变异
XY=bs2rv(SelCh,FieldD); %子代个体的十进制转换
将子代个体代入神经网络模型,得到评价准则。
重插入子代到父代,得到新种群
代计数器增加
记录每代的最优解及其序号
end