一种提高遗传算法的时间效率的方法及装置、用户设备与流程

文档序号:12597502阅读:205来源:国知局
一种提高遗传算法的时间效率的方法及装置、用户设备与流程

本发明涉及遗传和计算机技术领域,尤其涉及一种提高遗传算法的时间效率的方法及装置、用户设备。



背景技术:

目前,一般的遗传算法是一个迭代搜索的过程,通过多次迭代将初始的种群进化至一个接近用户设定的优化目标的种群。在迭代的过程中,算法会不断产生新的种群然后进行个体评估,评估后经过遗传算法的个体选择,杂交和变异的操作淘汰掉弱势个体产生新的个体,新的个体会再次评估。这样的迭代优化过程并没有预先分析和估计产生的新的个体的适应度,而是直接通过用户的适应度函数进行计算,如果用户提供的适应度函数计算适应度的过程非常耗时,那么这种没有预先分析和估计产生新的个体适应度好坏程度的做法将耗费特别长的时间,特别是用户设定的种群数量非常大的情况,更会加剧这一搜索过程的时间代价。



技术实现要素:

本发明实施例公开了一种提高遗传算法的时间效率的方法及装置、用户设备,有利于提高遗传算法的时间效率。

本发明实施例第一方面公开一种提高遗传算法的时间效率的方法,包括:

获取第一种群和第一种群的适应度矩阵及适应度平均值,并进入遗传算法的迭代搜索过程;

将第一种群通过遗传算法计算产生第二种群;

将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群,其中,第三种群中所有个体的适应度都大于所述适应度平均值;所述机器学习回归模型是根据初始种群的适应度矩阵选取的机器学习算法构建的,用于对种群的适应度预测;

判断第三种群是否为最优解,如果不是最优解,则视第三种群为新的第一种群获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程,直至得到最优解。

作为一种可选的实施方式,在本发明实施例第一方面中,所述方法在获取第一种群和第一种群的适应度矩阵及适应度平均值的步骤包括:

随机产生初始种群作为第一种群;

根据预设的适应度评估函数对第一种群进行适应度评估,并计算得到第一种群适应度矩阵及适应度平均值。

作为一种可选的实施方式,在本发明实施例第一方面中,在根据预设的适应度评估函数对所述初始种群进行适应度评估,并计算得到初始种群适应度矩阵及种群适应度平均值的步骤之后,所述方法还包括:

根据初始种群的适应度矩阵构建关于适应度预测的机器学习回归模型,所述机器学习回归模型用于对种群的适应度预测。

作为一种可选的实施方式,在本发明实施例第一方面中,所述方法中根据初始种群的适应度矩阵构建关于适应度预测的机器学习回归模型的步骤包括:

通过五折的交叉验证的方法进行机器学习算法的验证手段,从机器学习算法中选择精度最高的机器学习算法作为构建关于适应度值的模型的算法,构建出关于适应度预测的机器学习回归模型。

作为一种可选的实施方式,在本发明实施例第一方面中,所述方法中将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群的步骤包括:

将第二种群通过机器学习回归模型进行适应度预测,并将适应度低于所述适应度平均值的个体通过遗传算法产生新的个体,再将新的个体通过所述机器学习回归模型进行适应度预测,直至产生第三种群,其中,第三种群中所有个体的适应度都大于所述适应度平均值。

本发明实施例第二方面公开一种提高遗传算法的时间效率的装置,包括:

获取模块,用于获取第一种群和第一种群的适应度矩阵及适应度平均值,并进入遗传算法的迭代搜索过程;以及获取第三种群的适应度矩阵及适应度平均值,并进入下一个遗传算法的迭代搜索过程;

第二种群产生模块,用于将第一种群通过遗传算法计算产生第二种群;

第三种群产生模块,用于将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群,其中,第三种群中所有个体的适应度都大于所述适应度平均值;所述机器学习回归模型是根据初始种群选取的机器学习算法构建的,用于对种群的适应度预测;

判断模块,用于第三种群是否为最优解。

作为一种可选的实施方式,在本发明实施例第二方面中,所述获取模块包括:

初始种群产生单元,用于随机产生初始种群作为第一种群;

适应度评估单元,用于根据预设的适应度评估函数对第一种群进行适应度评估,并计算得到第一种群适应度矩阵及适应度平均值。

作为一种可选的实施方式,在本发明实施例第二方面中,所述装置还包括:

机器学习回归模型构建模块,用于根据初始种群的适应度矩阵构建关于适应度预测的机器学习回归模型,所述机器学习回归模型用于对种群的适应度预测。

作为一种可选的实施方式,在本发明实施例第二方面中,所述第三种群产生模块包括:

适应度预测单元,用于将第二种群通过机器学习回归模型进行适应度预测;

新个体产生单元,用于将适应度低于所述适应度平均值的个体通过遗传算法产生新的个体;

其中,所述适应度预测单元还用于将新个体产生单元产生的新的个体通过所述机器学习回归模型进行适应度预测。

本发明实施例第三方面公开一种用户设备,包括本发明实施例第二方面公开的所述提高遗传算法的时间效率的装置。

与现有技术相比,本发明实施例具备以下有益效果:

本发明实施例中,通过获取第一种群的适应度矩阵及适应度平均值,再将第一种群进入遗传算法迭代搜索过程,具体先将第一种群通过遗传算法计算产生第二种群,再将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群,其中,第三种群中所有个体的适应度都大于所述适应度平均值,再判断第三种群是否为最优解,如果不是最优解,则视第三种群为新的第一种群获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程,直至得到最优解。本发明实施例能够通过预先分析和预测产生的新的个体的适应度,进而淘汰大量的适应度差的个体,在用户的适应度函数计算时间代价太大、种群多的情况下,本发明实施例所描述的方法能有效的节约时间成本,提高搜索算法的时间效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例公开的一种提高遗传算法的时间效率的方法的流程示意图;

图2是本发明实施例公开的另一种提高遗传算法的时间效率的方法的流程示意图;

图3是本发明实施例公开的一种提高遗传算法的时间效率的装置的结构示意图;

图4是本发明实施例公开的另一种提高遗传算法的时间效率的装置的结构示意图;

图5是本发明实施例公开的一种用户设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本发明实施例公开了一种提高遗传算法的时间效率的方法及装置、用户设备,有利于提高遗传算法的时间效率,节约时间成本。以下进行结合附图进行详细描述。

实施例一

请参阅图1,图1是本发明实施例公开的一种提高遗传算法的时间效率的方法的流程示意图。如图1所示,该提高遗传算法的时间效率的方法可以包括以下步骤:

101、获取第一种群和第一种群的适应度矩阵及适应度平均值,并进入遗传算法的迭代搜索过程;

获取第一种群,如果是遗传算法的第一次迭代搜索过程,则第一种群为初始种群,初始种群可以由用户提供,也可以是随机产生的,此处不做限制。如果不是遗传算法的第一次迭代搜索过程,那么,第一种群为上一次迭代搜索过程中产生的新的种群。

获取第一种群的适应度矩阵,即先对第一种群的适应度进行评估,再根据评估结果计算出第一种群的适应度平均值。然后第一种群进入遗传算法的迭代搜索过程。

102、将第一种群通过遗传算法计算产生第二种群;

第一种群通过遗传算法计算,即通过个体的选择,杂交和变异的操作产生新的种群。

103、将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群;

新产生的第二种群,通过机器学习回归模型进行适应度预测,并将适应度低于所述适应度平均值的个体通过遗传算法产生新的个体,再将新的个体通过机器学习回归模型进行适应度预测,直至产生第三种群,其中,第三种群中所有个体的适应度都大于在步骤101中获取的第一种群的适应度平均值。并且,机器学习回归模型是根据初始种群的适应度矩阵选取的机器学习算法构建的,用于对种群的适应度预测。

104、判断第三种群是否为最优解;

判断遗传算法迭代搜索过程结束后产生的新的种群,即步骤103中产生的种群是不是本遗传算法的最优解,如果为最优解,则流程结束;如果不是最优解,则视第三种群为新的第一种群获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程,即返回步骤102,直至得到最优解。

在图1所描述的方法,通过获取第一种群的适应度矩阵及适应度平均值,再将第一种群进入遗传算法迭代搜索过程,具体先将第一种群通过遗传算法计算产生第二种群,再将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群,其中,第三种群中所有个体的适应度都大于所述适应度平均值,再判断第三种群是否为最优解,如果不是最优解,则视第三种群为新的第一种群获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程,直至得到最优解。可见,图1描述的方法通过预先分析和预测产生的新的个体的适应度,进而淘汰大量的适应度差的个体,在用户的适应度函数计算时间代价太大、种群多的情况下,图1描述的方法能有效的节约时间成本,提高搜索算法的时间效率。

实施例二

请参阅图2,图2是本发明实施例公开的另一种提高遗传算法的时间效率的方法的流程示意图。如图2所示,该提高遗传算法的时间效率的方法可以包括以下步骤:

201、随机产生初始种群作为第一种群;

如果是遗传算法的第一次迭代搜索过程,首先随机产生初始种群作为第一种群;例如,第一种群为:

202、根据预设的适应度评估函数对第一种群进行适应度评估,并计算得到第一种群适应度矩阵及适应度平均值;

适应度评估的函数一般由用户提供,适应度评估函数的功能是计算输入的每一个个体的适应度值,通过适应度评估函数计算输入的每个个体的适应度值S,最终得到一个适应度矩阵:

同时可以计算得到种群的适应度平均值=(S1+S2+…Sm)/m。

203、根据第一种群的适应度矩阵构建关于适应度预测的机器学习回归模型;

当初始种群评估完后,会得到一个适应度矩阵,利用这个矩阵构建一个合适的关于适应度的机器学习回归模型,在构建模型之前,本发明实施例增加了一个模型选择的过程,通过该过程可以在通用的机器学习算法中选择一个合适的算法构建关于适应度的模型,该模型能够实现较高的预测精度,能准确地预测产生的新个体的适应度值。本实施例中通过五折的交叉验证的方法进行机器学习算法的验证手段,从比较流行的机器学习算法,例如:支持向量机、回归树、随机森林以及人工神经网络等等算法中选择精度最高的机器学习算法作为构建关于适应度值的模型的算法。当选择了合适的算法后,就利用该算法构建关于适应度的机器学习回归模型。

204、将第一种群通过遗传算法计算产生第二种群;

第一种群通过遗传算法计算,即通过个体的选择,杂交和变异的操作产生新的种群。

205、通过机器学习回归模型进行适应度预测;

将当前的种群通过机器学习回归模型进行适应度预测。

206、判断第二种群中个体的适应度是否高于适应度平均值;

通过机器学习回归模型进行适应度预测后,再判断当前种群中个体的适应度是否高于适应度平均值,如果是,则执行步骤208,如果否,则执行步骤207。

207、将适应度低于适应度平均值的个体通过遗传算法产生新的个体;

对于适应度值低于适应度平均值的个体将被提前淘汰,被淘汰的个体将通过遗传算法的选择,杂交和变异过程产生新的个体。再返回步骤205通过机器学习回归模型进行适应度预测,直到适应度是否高于适应度平均值。

208、生成第三种群;

如果当前种群中个体的适应度高于适应度平均值,则当前种群为第三种群。

209、判断第三种群是否为最优解,如果是,则执行步骤211结束流程,如果否,则执行步骤210。

210、视第三种群为新的第一种群获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程;

如果第三种群中个体的适应度高于适应度平均值,但还不是本遗传算法的最优解,则获取第三种群的适应度矩阵及适应度平均值,并进入到下一个遗传算法的迭代搜索过程。返回步骤204,直至得到最优解。

其中,实施图2所描述的方法能够通过预先分析和预测产生的新的个体的适应度,进而淘汰大量的适应度差的个体,在用户的适应度函数计算时间代价太大、种群多的情况下,图2描述的方法能有效的节约时间成本,提高搜索算法的时间效率。

实施例三

请参阅图3,图3是本发明实施例公开的一种提高遗传算法的时间效率的装置的结构示意图。如图3所示,该提高遗传算法的时间效率的装置可以包括:

获取模块301,用于获取第一种群和第一种群的适应度矩阵及适应度平均值,并进入遗传算法的迭代搜索过程。获取第一种群,如果是遗传算法的第一次迭代搜索过程,则第一种群为初始种群,初始种群可以由用户提供,也可以是随机产生的,此处不做限制。如果不是遗传算法的第一次迭代搜索过程,那么,第一种群为上一次迭代搜索过程中产生的新的种群。获取第一种群的适应度矩阵,即先对第一种群的适应度进行评估,再根据评估结果计算出第一种群的适应度平均值。然后第一种群进入遗传算法的迭代搜索过程。

第二种群产生模块302,用于将第一种群通过遗传算法计算产生第二种群,即通过个体的选择,杂交和变异的操作产生新的种群。

第三种群产生模块303,用于将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群。新产生的第二种群,通过机器学习回归模型进行适应度预测,并将适应度低于所述适应度平均值的个体通过遗传算法产生新的个体,再将新的个体通过机器学习回归模型进行适应度预测,直至产生第三种群,其中,第三种群中所有个体的适应度都大于在获取模块301获取的第一种群的适应度平均值。并且,机器学习回归模型是根据初始种群的适应度矩阵选取的机器学习算法构建的,用于对种群的适应度预测。其中,第三种群中所有个体的适应度都大于适应度平均值;并且机器学习回归模型是根据初始种群选取的机器学习算法构建的,用于对种群的适应度预测。

判断模块304,用于第三种群是否为最优解。

获取模块301,还用于获取第三种群的适应度矩阵及适应度平均值,并进入下一个遗传算法的迭代搜索过程。如果判断模块304判断出第三种群不是当前遗传算法的最优解,则视第三种群为新的第一种群获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程。

在图3所描述的装置,获取模块301获取第一种群的适应度矩阵及适应度平均值,再将第一种群进入遗传算法迭代搜索过程,具体第二种群产生模块302先将第一种群通过遗传算法计算产生第二种群,第三种群产生模块303再将第二种群通过机器学习回归模型进行适应度预测及遗传算法进行计算,直至产生第三种群,其中,第三种群中所有个体的适应度都大于适应度平均值,再由判断模块304判断第三种群是否为最优解,如果不是最优解,则视第三种群为新的第一种群由获取模块301获取其适应度矩阵及适应度平均值进入下一个遗传算法的迭代搜索过程,直至得到最优解。可见,图3所示装置通过预先分析和预测产生的新的个体的适应度,进而淘汰大量的适应度差的个体,在用户的适应度函数计算时间代价太大、种群多的情况下,图3所示的装置能有效的节约时间成本,提高搜索算法的时间效率。

实施例四

请参阅图4,图4是本发明实施例公开的另一种提高遗传算法的时间效率的装置的结构示意图。其中,图4所示的提高遗传算法的时间效率的装置是由于图3所示的提高遗传算法的时间效率的装置进行优化得到的。与图3所示的提高遗传算法的时间效率的装置相比,图4所示的提高遗传算法的时间效率的装置还可以包括:

机器学习回归模型构建模块302,用于根据初始种群的适应度矩阵构建关于适应度预测的机器学习回归模型,其中,机器学习回归模型用于对种群的适应度预测。具体的,利用这个适应度矩阵构建一个合适的关于适应度的机器学习回归模型,在构建模型之前,本发明实施例增加了一个模型选择的过程,通过该过程可以在通用的机器学习算法中选择一个合适的算法构建关于适应度的模型,该模型能够实现较高的预测精度,能准确地预测产生的新个体的适应度值。本实施例中通过五折的交叉验证的方法进行机器学习算法的验证手段,从比较流行的机器学习算法,例如:支持向量机、回归树、随机森林以及人工神经网络等等算法中选择精度最高的机器学习算法作为构建关于适应度值的模型的算法。当选择了合适的算法后,就利用该算法构建关于适应度的机器学习回归模型。

进一步的,获取模块301包括:

初始种群产生单元3011,用于随机产生初始种群作为第一种群。

适应度评估单元3012,用于根据预设的适应度评估函数对第一种群进行适应度评估,并计算得到第一种群适应度矩阵及适应度平均值。

进一步的,第三种群产生模块304包括:

适应度预测单元3041,用于将第二种群通过机器学习回归模型进行适应度预测。

新个体产生单元3042,用于将适应度低于适应度平均值的个体通过遗传算法产生新的个体。

其中,适应度预测单元3041还用于将新个体产生单元产生的新的个体通过机器学习回归模型进行适应度预测。

其中,本实施例中描述的装置,通过初始种群适应度矩阵构建一个合适的关于适应度的机器学习回归模型,能够通过预先分析和预测产生的新的个体的适应度,进而淘汰大量的适应度差的个体,在用户的适应度函数计算时间代价太大、种群多的情况下,图4所示的装置能有效的节约时间成本,提高搜索算法的时间效率。

实施例五

请参阅图5,图5是本发明实施例公开的一种用户设备的结构示意图。其中,图5所示的用户设备包括图3~图4任意一种提高遗传算法的时间效率的装置。实施图5所示的用户设备,能够通过预先分析和预测产生的新的个体的适应度,进而淘汰大量的适应度差的个体,在用户的适应度函数计算时间代价太大、种群多的情况下,图5所示的用户设备能有效的节约时间成本,提高搜索算法的时间效率。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。

以上对本发明实施例公开的一种提高遗传算法的时间效率的方法及装置、用户设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1