黄金正弦算法(Python)

本文介绍了黄金正弦算法(GSA),一种由Tanyildizi在2017年提出的基于正弦函数和黄金分割的优化算法,它在寻优能力、参数设置等方面具有优势。文章概述了算法原理、伪代码,并展示了在水文地质参数优化中的应用实例。
摘要由CSDN通过智能技术生成

黄金正弦算法(Golden Sine Algorithm)是Tanyildizi等于2017年提出的一种新型元启发式优化算法,其灵感来源于正弦函数单位圆内扫描类似于待优化问题解的空间搜索,并通过黄金分割率缩小搜索空间以逼近算法最优解。与传统元启发式优化算法相比,GSA算法具有原理简单、设置参数少、寻优能力强等特点。
算法伪代码:
在这里插入图片描述
部分主函数:

def GSA(pop,dim,lb,ub,maxIter,fun):
    '''Golden Sine Algorithm'''
    '''
    Input
    pop:种群数量
    dim:个体的维度
    lb:变量的下边界
    ub:变量的上边界
    maxIter:最大迭代次数
    fun:适应度函数
    Output
    GbestScore:最优解对应的适应度值
    GbestPosition:最优解
    Curve:迭代曲线
    '''
    a=-math.pi
    b=math.pi
    gold=(np.sqrt(5)-1)/2
    x1=a+(1-gold)*(b-a)
    x2=a+gold*(b-a)
    X=initialization(pop,ub,lb,dim)

测试函数:

def F(X):
    R=np.sum(-X*np.sin(np.sqrt(np.abs(X))))
    return R

在这里插入图片描述测试结果:

# The best score : [-837.94846574]
# The best solution: [[421.23600577 421.22512639]]

在这里插入图片描述
参考文献:

[1]周有荣,李娜,周发辉.黄金正弦算法在水文地质参数优化中的应用[J].人民珠江,2020,41(06):117-120+128.

[2]肖子雅,刘升.精英反向黄金正弦鲸鱼算法及其工程优化研究[J].电子学报,2019,47(10):2177-2186.

[3] Tanyildizi E, Demir G. Golden Sine Algorithm: A Novel Math-Inspired Algorithm[J]. Advances in Electrical and Computer Engineering, 2017, 17(2): 71-78.

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值