楼主: midhome
4482 5

用matlab 的 fminu 函数做非线性最优化 出现错误, 求高手帮忙 [推广有奖]

  • 0关注
  • 2粉丝

大专生

1%

还不是VIP/贵宾

-

威望
0
论坛币
55 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
365 点
帖子
27
精华
0
在线时间
29 小时
注册时间
2006-12-25
最后登录
2014-5-5

楼主
midhome 发表于 2012-3-4 21:01:32 |AI写论文
50论坛币
myfun.rar (342 Bytes) 本附件包括:
  • myfun.m


syms a1 a2 a3 a4 a5 x;
t=a1*x+a2*x^2+a3*x^3+a4*x^4+a5*x^5;
f=(1+t+t^2/2+t^3/6+t^4/24+t^5/120);
f1=int(x*f,x,0.5779,13.5993);
g=int(f,x, 0.5779,13.5993);
r1=1-f1/(6.86*g);
f2=int(x^2*f,x,0.5779,13.5993);
r2=1-f2/(54.39*g);
f3=int(x^3*f,x,0.5779,13.5993);
r3=1-f3/(478.14*g);
f4=int(x^4*f,x,0.5779,13.5993);
r4=1-f4/(4534.51*g);
f5=int(x^5*f,x,0.5779,13.5993);
r5=1-f5/(45534.81*g);
r=r1^2+r2^2+r3^2+r4^2+r5^2;
a=[a1,a2,a3,a4,a5];
a0=[0,0,0,0,0];
options=[];
a=fminu(r,a0,options);
这是源码,用matlab的时候提示下面的错误
??? Error: File: fminu.m Line: 270 Column: 42
The expression to the left of the equals sign is not a valid target for an
assignment.
fminu.m函数已经有了,我在网上下载的,对matlab不是很了解,改了别人的一个程序却怎么也算不出来,请高手指正


貌似 fminunc  这个函数也可以,只要更改后能在matlab中运行 能求出a的5个数值,就给分

如果上面有写的不对的地方,请高手指正

fminu.m下面有下载

关键词:MATLAB matla atlab Min Mat 函数 matlab

沙发
aibieli731001 发表于 2012-3-4 22:25:50
你的 fminunc  函数没有放在搜索路径上,所以找不到。

藤椅
midhome 发表于 2012-3-5 09:00:11
aibieli731001 发表于 2012-3-4 22:25
你的 fminunc  函数没有放在搜索路径上,所以找不到。
非常感谢,我用path 查看了一下 有很多路径,包含了用的函数

这是个 多元 非线性 最优化的问题~~

不知道用什么方法比较合适

板凳
wfls2008 发表于 2013-5-10 22:40:20
请问这个函数能正常工作么?

报纸
jennydong 发表于 2014-11-13 16:30:58
请问你的fminu.m在哪下载的?

地板
lowbrow 发表于 2014-11-13 18:34:44
优化还是不要用matlab了,很麻烦,而且结果不一定准确。用lingo或gams。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-1 05:09