前言

帐篷映射,是一种分段线性映射,其主要是根据确定的映射系统生成随机的混沌序列,混沌序列的取值范围通常在0,1之间,有研究表明混沌序列在算法初始化方便比随机初始化的性能更加优越,故混沌序列常用于粒子群算法、遗传算法等群体智能算法中的种群初始化,因混沌序列的原理属于数学范畴,本文主要讨论混沌序列在初始化时的应用。


映射关系

帐篷映射由于其函数图像类似于帐篷而得名,通其他混沌映射一样,帐篷映射具有‘局部确定性,长期随机性’的特点,帐篷映射对对初值有较强的敏感性,在进行随机序列生成时,一般要注意以下几点:

  1. α的取值最好不要取0.5,当α为0.5时,混沌序列可能会呈现出较强的周期性

  1. α的取值越接近0.5,则生成的序列 越‘混沌’

  1. 初值的取值不应与α以及端点0,1值相等

  1. 在实际编程中,混沌序列的生成还与计算机浮点数据的精度和计算过程中产生的数据截断有关,具体的生成可能与实际理论值有所区别


代码测试--生成混沌序列

代码的编写是基于python,调用了python中的numpy库与random库,具体的代码如下:

Position = np.zeros(100)for i in range(100):temp = 0.5if i == 0:Position[i] = random.random()print(Position[i])else:if Position[i - 1] < temp:Position[i] = Position[i - 1] / tempelse:Position[i] = (1 - Position[i - 1]) / (1 - temp)
print(Position)
plt.figure(0)
plt.plot(Position, linestyle='-', marker='o')
plt.show()

代码中temp的的值为α的取值,用于对函数进行分段

1、当 temp的取值为0.5时,生成的混沌序列为:

在计算过程中,由于计算机存储精度以及计算精度的影响,序列在迭代一定次数后可能会等于0,并且以后该值不会发生改变

2、当 temp的取值为0.45时,生成的混沌序列为:

在计算过程中,序列值不会趋近于0,并且生成的序列分布也比价均匀

3、当 temp的取值为0.3时,生成的混沌序列为:

在计算过程中,序列值也不会趋近于0,但是生成的混沌序列在中间段分布的较多,两端分布的较少


代码测试--生成混沌坐标

1、temp为0.4时

2、temp为0.1时


后记

在种群算法的优化中,种群的初始化越均匀,越有利于算法搜索到全局最优值。根据帐篷映射产生的混沌坐标在空间范围内具又较好的遍历性与随机性,所以适合应用在群体智能算法中。

帐篷混沌映射在优化算法中的应用相关推荐

  1. 混沌麻雀搜索优化算法-附代码

    混沌麻雀搜索算法 文章目录 混沌麻雀搜索算法 1.麻雀搜索算法 2.Tent 混沌及高斯变异 2.1 Tent 混沌 2.2 高斯变异 3.混沌麻雀搜索优化算法 4.实验结果 5.参考文献 6.Mat ...

  2. 混沌麻雀搜索优化算法

    文章目录 一.理论基础 1.麻雀搜索算法 2.Tent混沌及高斯变异 2.1 Tent混沌 2.1.1 Tent混沌序列 2.1.2 Tent混沌扰动 2.2 高斯变异 3.改进麻雀搜索算法 二.仿真 ...

  3. 基于混沌映射的粒子群算法

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.混沌映射的粒子群算法 二.CPSO算法中用到的主要公式包括以下几个: 三.基于Python语言实现的CPSO算法示 ...

  4. 为什么在优化算法中使用指数加权平均

    本文知识点: 什么是指数加权平均? 为什么在优化算法中使用指数加权平均? β 如何选择? 1. 什么是指数加权平均 指数加权平均(exponentially weighted averges),也叫指 ...

  5. 机器学习优化算法中梯度下降,牛顿法和拟牛顿法的优缺点详细介绍

    1.梯度下降法 梯度下降法实现简单,当目标函数是凸函数时,梯度下降法的解是全局解.一般情况下,其解不保证是全局最优解,梯度下降法的速度也未必是最快的. 梯度下降法的优化思想:用当前位置负梯度方向作为搜 ...

  6. 优化算法中的鞍点与梯度下降

    摘要:本文将讨论寻找凸路径( convex path )时可能会遇到的不同类型的临界点( critical points),特别是基于梯度下降的简单启发式学习方法,在很多情形下会使你在多项式时间内陷入 ...

  7. Adam优化算法中的指数移动平均

    机器学习经典算法(三)--指数加权平均 机器学习经典算法(三)–指数加权平均 指数加权平均(Exponentially Weighted Averages)是一些改进梯度下降法重要理论,如上篇博文梯度 ...

  8. 优化算法中的零次优化详解

    零次优化公式算法收敛 无梯度优化 minf(x)minf(x)minf(x) 无梯度方法适用于梯度难以得到.获得昂贵 传统无梯度方法: 基于直接搜索的方法:坐标搜索,广义模式搜索和网格自适应直接搜索 ...

  9. 【预测模型】基于Logistic混沌映射改进麻雀算法改进BP神经网络实现数据预测matlab源码

    1  模型 简介见这里. 2 部分代码 function [FoodFitness,FoodPosition,Convergence_curve]=SSA(N,Max_iter,lb,ub,dim,f ...

最新文章

  1. 个人博客二|创建项目
  2. ping连接linux无法访问目标主机,无法访问目标主机是什么情况【解决方法】
  3. linux ubuntu 16.04下deb文件的安装以及一些问题的解决
  4. html比较难记的点
  5. ReactJS入门之前端开发的演变
  6. 问题: 将N个元素使用push_back插入到vector中, 求push_back操作的复杂度。
  7. mysql json 创建索引_MySQL · 最佳实践 · 如何索引JSON字段
  8. WebView起步1
  9. BP神经网络算法:将参数矩阵向量化
  10. UML/ROSE学习笔记系列二:UML的概念模型
  11. SpringBoot:第一篇 新建spring boot 应用
  12. Linux命令行上传本地文件到服务器 、 下载服务器文件到本地
  13. 卷积神经网络训练准确率突然下降_从MobileNet看轻量级神经网络的发展
  14. Kalman Filter—Step by step Derivation of Kalman Gain
  15. 【数据分享】学生受欢迎程度评价数据集
  16. 【iOS】屏幕适配之NSLayoutConstraint
  17. 现金支票打印模板excel_好用的支票打印软件
  18. ibm服务器维修论坛,IBM通病
  19. vant文件上传Uploader图片压缩
  20. spring常用注解剖析

热门文章

  1. C# List排序和数字处理(三位加一撇)
  2. DDD 实战 (11):冲刺 1 代码 TDD 实现之道
  3. 食饵捕食者模matlab,食饵——捕食者数学模型研究.doc
  4. 用netty实现zcool_Netty 系列一(核心组件和实例).
  5. 再见华为!一位嵌入式大佬的8年励志总结
  6. eChats折线图更新数据不自然,要闪一下,动态数据解决
  7. MFC程序每次启动前修改文件名
  8. Xamarin for mac学习笔记(一)
  9. FTPClientUtil FTP客户端工具
  10. 早该消失的埃菲尔铁塔为何存在至今?