Archive for '博客'

采用领域结构的改进进化策略

进化策略中的变异算子是直接在父体上添加变异量,这里描述的采用领域结构的改进进化策略并不直接采用父体,而是采用与个体相邻的部分个体形成的小群体,这样可以利用相邻个体的信息,加大交流,从而使得进化策略得以改进。
阅读全文 >

动态调整视野和步长的改进人工鱼群算法

人工鱼群算法一种模拟动物行为的群体智能优化算法,目前在许多方面的的优化问题中有较好的表现,但存在后期搜索精度较低的缺陷,针对这一问题,不少学者进行了相关研究,研究结果表明,视野对人工鱼群算法中各种行为和收敛性能有较大影响。若视野Visual范围较大,则人工鱼的全局搜索能力强并能快速收敛;若视野范围较小,则人工鱼的局部搜索能力强。步长Step越大,收敛速度越快,但有时会出现振荡现象;步长越小,收敛速度越慢,但求解精度越高。
阅读全文 >

Python实现的粒子群优化算法源代码

使用Python实现的粒子群优化算法,需要引用到Numpy,需要对自定义问题进行优化只需要更改f6函数即可,智能算法本身的参数亦可以自行设定,具体源代码如下:
阅读全文 >

粒子群和人工鱼群协同进化的混合优化算法

协同进化思想

协同进化的原理可以解释为,算法采用多个种群,或将一个种群分为多个子群,各种群(或子群)在各自独立进化的同时相互间共享和交互信息,各种群不仅利用从外界获得的信息指导自身的搜索,同时还把探索得到的经验与其他种群分享,从而使得整个系统协同进化,直至获得最优解。
阅读全文 >

VBA中实现对数组随机排序

在许多智能算法中,需要对群体进行随机排序(或称为混洗)。假定一个数组中保存了各个个体的索引,则对此索引数组进行随机排序就相当于对群体进行了随机排序。这里提供了两个函数ShuffleArray与ShuffleArrayInPlace,前者会返回排序后的数组,而后者对传入的数组进行随机排序,更新的是传入的数组,不返回任何数值。具体代码如下:
阅读全文 >

混沌局部搜索策略的差分进化算法

鉴于混沌的遍历性特征,不少人结合了混沌对差分进化算法进行改进,目前提出的混沌差分进化算法可以分为3类:

① 用混沌的方法改变DE的2个参数,即缩放因子F和交叉因子CR;

② 用混沌的方法产生变异个体 ;

③ 是用混沌的方法产生初始种群和子群体。

这里描述的混沌局部搜索策略的差分进化算法属于另外一种类型,可以称之为混沌局部搜索方法。这种方法就是用差分进化算法找出每一代中的最佳个体,然后在最佳个体附近用混沌的方法进行一定次数的局部搜索。
阅读全文 >

水文资料的合理性检查

水文资料的合理性检查主要指的是对水文资料的完整性、可靠性、一致性进行审查,目的是使水文资料三性审查达到各类项目对水文资料的要求,避免所使用的水文资料失真,保证项目的规划或设计更加科学合理。
阅读全文 >