10电动葫芦:基于Matlab的函数优化遗传算法程序

来源:百度文库 编辑:高考问答 时间:2024/04/28 05:05:47
我的函数是f=0.5-((sin(sqrt(x(1)^2+x(2)^2)))^2-0.5)/(1+0.001*(x(1)^2+x(2)^2))^2)求最小值是的x,精度是0.00005

新建一个函数 baidu_f.m
function f=baidu_f(x)
f=0.5-((sin(sqrt(x(1)^2+x(2)^2)))^2-0.5)/(1+0.001*(x(1)^2+x(2)^2)^2)
然后用fmins函数寻找极值。
x = fmins('baidu_f', [0 0], [2 2]);

另外你的语句中有错,少写了一个括号,你再自己检查一下。