首页 > 编程语言 >基于反向策略的麻雀搜索算法 -附代码

基于反向策略的麻雀搜索算法 -附代码

时间:2023-05-04 13:04:53浏览次数:38  
标签:种群 初始化 学习策略 搜索算法 麻雀 反向


基于反向学习策略的麻雀搜索算法


文章目录

  • 基于反向学习策略的麻雀搜索算法
  • 1.反向学习策略
  • 2.基于反向学习策略的麻雀搜索算法
  • 3.算法结果:
  • 4.Matlab代码
  • 5.python代码


1.反向学习策略

反向学习策略是由 Tizhoosh 于 2005 年提出的,目前已在 GA、DE、ACO 和 BBO 等群体智能优化算法中得到了成功的应用。

定义1. 反向点。假设在基于反向策略的麻雀搜索算法 -附代码_搜索算法上存在数 基于反向策略的麻雀搜索算法 -附代码_搜索算法_02,则 基于反向策略的麻雀搜索算法 -附代码_搜索算法_02 的反向点定义为 基于反向策略的麻雀搜索算法 -附代码_算法_04。将反向点的定义扩展到 基于反向策略的麻雀搜索算法 -附代码_算法_05 维空间,设 基于反向策略的麻雀搜索算法 -附代码_初始化_06基于反向策略的麻雀搜索算法 -附代码_算法_05 维空间中的一个点,其中 基于反向策略的麻雀搜索算法 -附代码_初始化_08基于反向策略的麻雀搜索算法 -附代码_搜索算法_09,则其反向点 基于反向策略的麻雀搜索算法 -附代码_python_10,其中基于反向策略的麻雀搜索算法 -附代码_python_11

根据上述定义,采用反向学习策略来产生初始种群个体的
步骤如下:

a) 在搜索空间中随机初始化 N 个麻雀个体位置基于反向策略的麻雀搜索算法 -附代码_python_12作为初始种群基于反向策略的麻雀搜索算法 -附代码_python_13;

b) 根据定义 1,初始种群基于反向策略的麻雀搜索算法 -附代码_python_13中的每个麻雀个体 基于反向策略的麻雀搜索算法 -附代码_初始化_15 的反向
个体 基于反向策略的麻雀搜索算法 -附代码_搜索算法_16 构成反向种群 基于反向策略的麻雀搜索算法 -附代码_搜索算法_17;

c) 合并种群 基于反向策略的麻雀搜索算法 -附代码_python_13基于反向策略的麻雀搜索算法 -附代码_搜索算法_17,将其 2N 个麻雀个体按照适应度值
进行升序排序,选取适应度值前 N 个麻雀个体作为初始种群。

2.基于反向学习策略的麻雀搜索算法

该改进主要是在初始化种群时,利用反向学习策略初始化种群

算法流程

Step1: 利用反向学习策略初始化种群,迭代次数,初始化捕食者和加入者比列。

Step2:计算适应度值,并排序。

Step3:麻雀更新捕食者位置。

Step4:麻雀更新加入者位置。

Step5:麻雀更新警戒者位置。

Step6:计算适应度值并更新麻雀位置。

Step7:是否满足停止条件,满足则退出,输出结果,否则,重复执行Step2-6;

3.算法结果:

基于反向策略的麻雀搜索算法 -附代码_算法_20

4.Matlab代码

5.python代码


标签:种群,初始化,学习策略,搜索算法,麻雀,反向
From: https://blog.51cto.com/u_16095618/6242627

相关文章

  • 基于麻雀算法改进的DELM预测-附代码
    麻雀算法改进的深度极限学习机DELM的回归预测文章目录麻雀算法改进的深度极限学习机DELM的回归预测1.ELM原理2.深度极限学习机(DELM)原理3.麻雀算法4.麻雀算法改进DELM5.实验结果6.参考文献7.Matlab代码1.ELM原理自动编码器AE(AutoEncoder)经过训练可以将输入复制到输出。因为不需......
  • 基于麻雀算法优化的相关向量机RVM回归预测算法
    基于麻雀算法优化的相关向量机RVM回归预测算法文章目录基于麻雀算法优化的相关向量机RVM回归预测算法1.RVM原理2.基于麻雀算法优化的相关向量机RVM3.算法实验与结果3.参考文献:4.MATLAB代码摘要:本文主要介绍相关向量机RVM的基本原理,以及在预测问题中的应用。1.RVM原理RVM算法是......
  • 基于麻雀算法优化的核极限学习机(KELM)分类算法 - 附代码
    基于麻雀算法优化的核极限学习机(KELM)分类算法文章目录基于麻雀算法优化的核极限学习机(KELM)分类算法1.KELM理论基础2.分类问题3.基于麻雀搜索算法优化的KELM4.测试结果5.Matlab代码摘要:本文利用麻雀搜索算法对核极限学习机(KELM)进行优化,并用于分类1.KELM理论基础核极限学习......
  • 【愚公系列】2023年04月 .NET CORE工具案例-YARP反向代理
    (文章目录)前言1.YARP是什么YARP(YetAnotherReverseProxy)是一个轻量级的.NET反向代理。它支持HTTP和HTTPS协议,可以将请求转发到其他服务器上。YARP可以用于许多用途,包括加载平衡、内部网络隔离、隐藏内部服务器的IP地址等。它支持使用规则来转发请求,并且可以在......
  • nginx 正则反向代理到k8s
    代码:nginx正则反向代理到k8s的服务:http{resolverkube-dns.kube-system.svc.cluster.local;server{listen80;#serviceslocation~/(\w+)/{ proxy_passhttp://$1.default.svc.cluster.local:8888;}}配置:  ......
  • Nginx七层反向代理和负载均衡
    Nginx七层反向代理和负载均衡介绍Nginx不仅是一个出色的web软件,其七层代理和负载均衡也是相当出色。Nginx做前端代理,当用户请求服务时,可以根据url进行判断,然后分配到不同的后台webserver上。Nginx的负载均衡实现原理:首先在http模块中配置使用upstream模块定义后台的webserver的池......
  • MSSQL2K - SQL Injector - Query String Parameter Attack结合netcat获得反向cmdshell
    fasttrack操作:root@bt:~#cd/pentest/exploits/fasttrack/root@bt:/pentest/exploits/fasttrack#./fast-track.py-i******************************************************Performingdependencychecks...******************************************************......
  • MSSQL2K - SQL Injector - Query String Parameter Attack获得反向cmdshell
    上次没有成功获得cmdshell,因为fasttrack没有这方面的代码,这次编写了server.py。importsocketHOST=''PORT=4444s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((HOST,PORT))s.listen(1)conn,addr=s.accept()cmd="\n"try:whileTrue:......
  • JEECG使用反向代理 积木报表无法正常使用的解决方法
    发现JEECG反向代理开启后  重设了Host头,导致积木框架的数据接口url拼接异常Nginx配置增加:#通过反向代理访问积木报表,Jeecg框架内的菜单配置需要写成绝对路径:http://localhost:3000/jeecg-boot/jmreport/list?token=${token}location^~/jeecg-boot/jmreport/{#p......
  • 【优化指派】基于禁忌搜索算法求解指派优化问题(耗时最短)附Matlab代码
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......