Matlab遗传算法工具箱求函数最小值

您所在的位置:网站首页 遗传算法求的是最小值还是最大值 Matlab遗传算法工具箱求函数最小值

Matlab遗传算法工具箱求函数最小值

2024-07-12 05:20| 来源: 网络整理| 查看: 265

题目

在这里插入图片描述

先上代码 %%%%%%%%%%%%%%% %% test.m %% %% Feng1909 %% %%%%%%%%%%%%%%% function result = test(a) is_max = 0; x = a(1); y = a(2); PI = 3.141592653; if is_max == 0 result = -(sin(3*PI*x)*cos(4*PI*y)+cos(5*PI*x*sin(2*PI*y)))*(1); end if is_max == 1 result = (sin(3*PI*x)*cos(4*PI*y)+cos(5*PI*x*sin(2*PI*y)))*(1); end end 代码解释

定义函数名为test,传入变量为向量a,该向量是一个二维向量,在函数中分别令x和y取a向量的两个值作为待优化函数的输入,当计算函数最大值时,将is_max变量赋值为1,否则为0,通过函数计算返回函数值

GA工具箱

打开Matlab中的GA工具箱,设置如下:在这里插入图片描述 然后点击Start按钮开始优化

结果

min: -1.9999999999719975 x = 0.16666739259256413 y = -0.5000001466254731

max: -1.9638487135569358 x= 0.19121141960284982 y = 1.2499963437299235



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3