leiyayong 发表于 2006-4-1 20:49

求助!急!优化程序出现的错误。

<P>问题是这样的:<BR>      我用MATLAB优化凸轮曲线。<BR>凸轮加速度曲线为目标函数:<BR>       f(x)=|x(1)*sin(2*pi*x(3))+x(2)*sin(4*pi*x(3))|<BR> 求这个函数最大值中的最小值。<BR>约束函数为:<BR>   1、 《0;<BR>    2、x(1)/(2*pi)+x(2)/(4*pi)=1;<BR>    3、0《x(3)《1;<BR>    4、|x(1)|&lt;=2*pi;<BR>    5、|x(2)|&lt;=2*pi;<BR>   我该怎么编译这个程序呢。<BR>我编了这样的程序,可是根本达不到要求。<BR>function y=ff3(x)<BR>y=x(1)*sin(2*pi*x(4))+x(2)*sin(4*pi*x(4))+x(3)*sin(6*pi*x(4)); %定义函数<BR><BR>function =ff32(x)<BR>c1=;<BR>c2=0;<BR><BR>clc;clear;<BR>A1=;<BR>b1=1;<BR>x0=;<BR>lb=[-2*pi,-2*pi,-3*pi,0];   %定义下限<BR>ub=;   %定义上限<BR>=fminimax(@ff3,x0,[],[],A1,b1,lb,ub,@ff32)%最大最小值的优化方式<BR><BR>参照别人用复合形法优化的值是:x(1)=5.9062,x(2)=0,x(3)=1.129<BR>因为我后面要进行加速度和跃动度进行比较,用我这个优化的值差很远。<BR><BR><BR>希望论坛的老师及时给我指点迷津!<BR>在此我衷心的感谢。<BR>因为这个问题设计到我做研究生毕业课题。有可能的话,我也可以和老师们电话联系或其他方式联系都可。<BR></P>

happy 发表于 2006-4-2 09:42

回复:(leiyayong)求助!急!优化程序出现的错误。

<DIV class=quote><B>以下是引用<I>leiyayong</I>在2006-4-1 20:49:36的发言:</B><BR>
<P><FONT color=#ff0000>因为我后面要进行加速度和跃动度进行比较,用我这个优化的值差很远。</FONT><BR><BR></P></DIV>
<P>你想问什么问题?是不是感觉这个优化结果有问题?导致后边的结果相差很远?<BR>可以确定是因为这个优化结果造成的吗?</P>

leiyayong 发表于 2006-4-2 13:47

<P>是的,我就感觉这个优化结果不理想。应该是优化造成的!</P>

happy 发表于 2006-4-3 16:32

回复:(leiyayong)求助!急!优化程序出现的错误。

如果你的函数没有写错的话应该不会有问题的<BR><BR>你没有设置options,TolCon = 1e-006,这应该是能达到要求的
页: [1]
查看完整版本: 求助!急!优化程序出现的错误。