在博客上看到了一些函数,为了练习python画图能力,所以就都绘制了部分函数

文章目录

  • 函数
  • 代码和图像
    • 画图部分
    • 获取x和y的值
    • Ackely's function
    • Sphere function
    • Rosebrock function
    • Beale's function
    • GoldsteinPrice function
    • Booth's function
    • Bukin function
    • Matyas function
    • Levi function
    • Three-hump camel function
    • Eason function
    • Cross-in-tray function
    • Holder table function
    • McCormick function
    • StyblinskiTang function

函数



代码和图像

画图部分

def draw_pic_3D(x, y, z, title, z_min, z_max, offset):fig = plt.figure()ax = Axes3D(fig)ax.plot_surface(x, y, z, rstride=1, cstride=1, cmap = plt.get_cmap('rainbow'),color='orangered')# 绘制等高线ax.contour(x,y,z,offset=offset,colors='green')ax.set_zlim(z_min, z_max)ax.set_title(title)plt.savefig("image")plt.show()

获取x和y的值

def get_x_and_y(x_min, x_max, y_min, y_max):x = np.arange(x_min, x_max, 0.1)y = np.arange(y_min, y_max, 0.1)x, y = np.meshgrid(x, y)  # 生成网格点坐标矩阵return x, y

Ackely’s function

def Ackelys_function(z_min = 0,z_max = 15, offset = 0):x, y = get_x_and_y(-5,5,-5,5)z = -20 * np.exp(-0.2 * np.sqrt(0.5 * (x ** 2 + y ** 2))) - np.exp(0.5 * (np.cos(2 * np.pi * x) + np.cos(2 * np.pi * y))) + 20 + np.ereturn x, y, z, 'Ackely function', z_min, z_max, offset

Sphere function

def Sphere(z_min = 0,z_max = 20,offset = 0):x,y = get_x_and_y( -3,3,-3,3)z = x ** 2 + y ** 2return x,y,z, "Sphere function", z_min, z_max, offset

Rosebrock function

def Rosebrock_function(z_min = 0,z_max = 1500,offset = 0):x, y = get_x_and_y(-1, 1, -1, 1)z = 100 * ((y - x ** 2) ** 2 + (x -1) ** 2)return x,y,z, "Rosebrock function", z_min, z_max, offset

Beale’s function

def Beale_function(z_min = 0,z_max = 2000,offset=0):x, y = get_x_and_y(-4.5, 4.5, -4.5, 4.5)z = (1.5 - x + x * y) ** 2 +  (2.25 - x + x * y) ** 2 + (2.625 -x + x * y) ** 2return x, y, z, "Beale function", z_min, z_max, offset

GoldsteinPrice function

def GoldsteinPrice_function(z_min =0 ,z_max =1000000 ,offset=0):x, y = get_x_and_y(-2,2,-2,2)z = (1 + ((x + y + 1) ** 2) * (19 - 14 * x + 3 * (x ** 2) - 14 * y + 6 * x * y + 3 * (y **2))) * (30 + ((2 * x - 3 * y) ** 2) * (18 - 32 * x + 12 * (x ** 2) + 48 * y - 36 * x * y + 27 * (y ** 2)))return x, y, z, "GoldsteinPrice function", z_min, z_max, offset

Booth’s function

def Booth_function(z_min=0, z_max=2500, offset=0):x, y = get_x_and_y(-10,10,-10,10)z = (x + 2 * y -7) ** 2 + (2 * x + y - 5) ** 2return x, y, z, "Booth function", z_min, z_max, offset

Bukin function

def  Bukin_function(z_min =0 ,z_max =250 ,offset=0):x, y = get_x_and_y(-15,-5,-3,3)z = 100 * np.sqrt(np.fabs(y - 0.01 * (x ** 2))) + 0.01 * np.fabs(x + 10)return x, y, z, "Bukin function", z_min, z_max, offset

Matyas function

def MAtyas_function(z_min =0 ,z_max =100 ,offset=0):x, y = get_x_and_y(-10,10,-10,10)z = 0.26 * (x ** 2 + y ** 2) - 0.48 * x * yreturn x, y, z, "Matyas function", z_min, z_max, offset

Levi function

def Levi_function(z_min =0 ,z_max =450 ,offset=0):x, y = get_x_and_y(-10,10,-10,10)z = np.sin(3 * np.pi * x) ** 2 + ((x - 1) ** 2) * (1 + np.sin(3 * np.pi * y) ** 2) + ((y - 1) ** 2) * (1 + np.sin(2 * np.pi * y) ** 2)return x, y, z, "Levi function", z_min, z_max, offset

Three-hump camel function

def Three_hump_camel_function(z_min =0 ,z_max =2000 ,offset=0):x, y = get_x_and_y(-5,5,-5,5)z = 2 * (x ** 2) - 1.05 * (x ** 4) + (x ** 6) / 6 + x * y + (y ** 2)return x, y, z, "Three-hump camel function", z_min, z_max, offset

Eason function

def Eason_function(z_min =-1.5 ,z_max =0 ,offset=-1.5):x, y = get_x_and_y(-10,10,-10,10)z = -np.cos(x) * np.cos(y) * np.exp(-((x - np.pi) ** 2 + (y - np.pi) ** 2))return x, y, z, "Eason function", z_min, z_max, offset

Cross-in-tray function

def Cross_in_tray_function(z_min =-4 ,z_max =0 ,offset=-4):x, y = get_x_and_y(-10,10,-10,10)z = -0.0001 * (np.fabs(np.sin(x) * np.sin(y) * np.exp(np.fabs(100 - (np.sqrt((x ** 2) + (y ** 2)) / np.pi)))) + 1) ** 0.1return x, y, z, "Cross-in-tray function", z_min, z_max, offset

Holder table function

def Holder_table_function(z_min =-30 ,z_max =0 ,offset=-30):x, y = get_x_and_y(-10,10,-10,10)z = -np.fabs(np.sin(x) * np.cos(y) * np.exp(np.fabs(1 - (np.sqrt(x ** 2 + y ** 2))/np.pi)))return x, y, z, "Holder table function", z_min, z_max, offset

McCormick function

def McCormick_function(z_min =0 ,z_max =50 ,offset=0):x, y = get_x_and_y(-1.5,4,-3,4)z = np.sin(x + y) + (x - y) ** 2 - 1.5 * x + 2.5 * y + 1return x, y, z, "McCormick function", z_min, z_max, offset

StyblinskiTang function

def StyblinskiTang_function(z_min =-200 ,z_max =250 ,offset=-200):x, y = get_x_and_y(-5,5,-5,5)z1 = x ** 4 -16 * (x ** 2) + 5 * xz2 = y ** 4 -16 * (y ** 2) + 5 * yz = (z1 + z2) / 2return x, y, z, "StyblinskiTang function", z_min, z_max, offset

欢迎指正,共同进步

单目标优化算法测试函数python绘制及相关代码相关推荐

  1. 【智能优化算法】基于全局优化的改进鸡群算法求解单目标优化问题(ECSO)附matlab代码

    1 简介 智能算法分为两种,一种是群体智能算法(swarmintelligencealgorithm),该算法大多模拟自然界中动植物的特有行为,并将其表达成数学语言,从而进行迭代寻优,如模拟蝙蝠回声定 ...

  2. 基于对立非洲秃鹫优化算法求解单目标优化问题(OAVOA)含Matlab代码

    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.

  3. 【单目标优化算法】樽海鞘群算法(Matlab代码实现)

  4. 【单目标优化算法】杂草优化算法(Matlab代码实现)

  5. python多目标优化_多目标优化算法(四)NSGA3(NSGAIII)论文复现以及matlab和python的代码...

    前言:最近太忙,这个系列已经很久没有更新了,本次就更新一个Deb大神的NSGA2的"升级版"算法NSGA3.因为multi-objective optimization已经被做烂了 ...

  6. 多目标优化算法(四)NSGA3(NSGAIII)论文复现以及matlab和python的代码

    前言:最近太忙,这个系列已经很久没有更新了,本次就更新一个Deb大神的NSGA2的"升级版"算法NSGA3.因为multi-objective optimization已经被做烂了 ...

  7. Python遗传算法工具箱的使用(一)求解带约束的单目标优化

    加了个小目录~方便定位查看~ 前言 正文 一. 基础术语: 二. 遗传算法基本算子: 三.完整实现遗传算法: 四.后记: 前言 网上有很多博客讲解遗传算法,但是大都只是"点到即止" ...

  8. 【单目标优化求解】基于matlab增强型黑猩猩优化器算法求解单目标优化问题【含Matlab源码 2013期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[单目标优化求解]基于matlab增强型黑猩猩优化器算法求解单目标优化问题[含Matlab源码 2013期] 点击上面蓝色字体,直接付费下 ...

  9. 【单目标优化求解】基于matlab黑猩猩算法求解单目标问题【含Matlab源码 1413期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[单目标优化求解]基于matlab黑猩猩算法求解单目标问题[含Matlab源码 1413期] 点击上面蓝色字体,直接付费下载,即可. 获取代 ...

最新文章

  1. 判定Java源文件名称_JAVA
  2. CopyOnWrite容器
  3. 为什么玩我的世界老提示Java se错误_我的世界error错误信息 error could解决方法
  4. 大数相关计算(c语言版)
  5. 【Flink】Flink Committing offsets to Kafka takes longer than the checkpoint interval
  6. led数字字体_技术丨体育场馆LED显示屏设计与安装要求
  7. mysql基础操作(二)
  8. python嵌套循环_关于Python嵌套循环代码优化
  9. pixel1代android11,Pixel用户吐槽Android 11:升级后性能被劣化
  10. php-学通PHP的24堂课-设置PHP的系统当前时间
  11. 如何将zipoutputstream返回_嫦娥五号返回器要“跳”一下再回地球!这一“跳”大有讲究...
  12. 在Vue文件中引用模块的相对路径“@“符号表示什么意思?
  13. LeetCode之验证二叉搜索树
  14. android.os.DeadObjectException的解决办法
  15. DotNetBar SuperGridControl控件
  16. 计算机服务中无spool,print spool自动关闭,print spooler
  17. latex排版原理 常用算法排版伪代码模块 添加注释以及注意事项
  18. 计算机技术的发展包括几个阶段,目前电子计算机处于哪个阶段?计算机发展的四个阶段...
  19. python限制输入字数_iOS 限制输入字数完美解决方案
  20. esc中文是什么意思_Esc 是什么意思? 有什么含义吗?

热门文章

  1. java代理模式解析
  2. 堆外内存的介绍及释放
  3. arduino使用oled代码_Arduino指纹传感器模块使用方法(FPM10A)
  4. PCM开发板模块实验指导--有刷直流马达正反转实验
  5. 停车还能360全方位影像_360°全景倒车影像、自适应巡航买的时候觉得没用,现在发现错了...
  6. Communication error with Jack server
  7. 人工智能之语音识别技术(四)
  8. 安装Glusterfs
  9. 后端返回数据中的换行符,在标签中不显示换行的解决方法
  10. 《计算机应用》期刊审稿周期