| ²é¿´: 886 | »Ø¸´: 3 | ||||
guan0603гæ (³õÈëÎÄ̳)
|
[ÇóÖú]
ÄÄλMATLAB¸ßÊÖÄܰïæµ÷ÊÔһϳÌÐò£¬²»ÊÇÓöµ½ÕâÎÊÌâ¾ÍÊÇÄÇÎÊÌâ ÒÑÓÐ1È˲ÎÓë
|
|
function [x,val,k]=frcg(fun,gfun,x0) % ¹¦ÄÜ: ÓÃFR¹²éîÌݶȷ¨Çó½âÎÞÔ¼ÊøÎÊÌâ: min f(x) %ÊäÈë: x0Êdzõʼµã, fun, gfun·Ö±ðÊÇÄ¿±êº¯ÊýºÍÌÝ¶È %function g=gfun(x) g=[400*x(1)*(x(1)^2-x(2))+2*(x(1)-1),-200*(x(1)^2-x(2))]'; %function f=fun(x) f=100*(x(1)^2-x(2))^2+(x(1)-1)^2; %Êä³ö: x, val·Ö±ðÊǽüËÆ×îÓŵãºÍ×îÓÅÖµ, kÊǵü´ú´ÎÊý. maxk=5000; %×î´óµü´ú´ÎÊý rho=0.6;sigma=0.4; k=0;epsilon=1e-4; n=length(x0); while(k<maxk) g=feval(gfun,x0); %¼ÆËãÌÝdu itern=k-(n+1)*floor(k/(n+1)); itern=itern+1; %¼ÆËãËÑË÷·½Ïò if(itern==1) d=-g; else beta=(g'*g)/(g0'*g0); d=-g+beta*d0; gd=g'*d; if(gd>=0.0) d=-g; end end if(norm(g)<epsilon),break;end %¼ìÑéÖÕÖ¹Ìõ¼þ m=0;mk=0; while(m<20) %ArmijoËÑË÷ if(feval(fun,x0+rho^m*d)<feval(fun,x0)+sigma*rho^m*g'*d) mk=m;break; end m=m+1; end x0=x0+rho^mk*d; val=feval(fun,x0); g0=g;d0=d; k=k+1; end x=x0; val=feval(fun,x); %ÊäÈëx0=[-1.2 1]'; %[x,val,k]=frcg('fun','gfun',x0) ÔÚÃüÁî´°¿ÚÊäÈë x0=[-1.2 1]'; >> [x,val,k]=frcg('fun','gfun',x0) ??? Undefined command/function 'frcg'. Ôõô»ØÊÂÄØ |
» ²ÂÄãϲ»¶
ѰÕÒµ÷¼Á
ÒѾÓÐ8È˻ظ´
289Çóµ÷¼Á
ÒѾÓÐ16È˻ظ´
312Çóµ÷¼Á
ÒѾÓÐ8È˻ظ´
263Çóµ÷¼Á
ÒѾÓÐ10È˻ظ´
Ò»Ö¾Ô¸C9²ÄÁÏÓ뻯¹¤×¨Òµ×Ü·Ö300Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´
296Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
0703»¯Ñ§/290Çóµ÷¼Á/±¾¿Æ¾Àú·á¸»/¹¤¿ÆÒ²¿É
ÒѾÓÐ5È˻ظ´
284Çóµ÷¼Á
ÒѾÓÐ4È˻ظ´
»¯Ñ§¹¤³Ì085602 305·ÖÇóµ÷¼Á
ÒѾÓÐ12È˻ظ´
¿¼Ñе÷¼Á
ÒѾÓÐ4È˻ظ´
» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:
¸ßÊÖÖ¸µã£ºÈçºÎʹÓÃmatlabʹÊý¾ÝÐÐÓëÐмä¿ÕÒ»ÐÐ
ÒѾÓÐ6È˻ظ´
matlab±à³Ì ODE45
ÒѾÓÐ4È˻ظ´
linux Ï matlab µÄµ÷ÓÃÎÊÌâ
ÒѾÓÐ3È˻ظ´
matlab»Í¼ÎÊÌâ: ÔõÑùÓÃСͼ±ê»ò×Ô¶¨ÒåͼÐδúÌæ+ x . oµÈ×öͼ
ÒѾÓÐ10È˻ظ´
Ò»¸ö¹ØÓÚmatlabµÄsimulinkµÄ±äƵ¿Õµ÷PI¿ØÖƵÄÎÊÌâ
ÒѾÓÐ9È˻ظ´
Çë´óÏÀÖ¸½ÌmatlabµÄÕâ¸ö´íÎóÌáʾµ½µ×ÊǸöÉñÂíÒâ˼£¿
ÒѾÓÐ12È˻ظ´
Óиömatlab³ÌÐò£¬µ«ÊÇÔËÐв»ÏÂÀ´£¬Çó¸ßÊÖ
ÒѾÓÐ23È˻ظ´
matlab³ÌÐòÖе÷ÓÃmÎļþµÄÎÊÌâ
ÒѾÓÐ13È˻ظ´
fortranµÄdebugµ÷ÊÔ
ÒѾÓÐ10È˻ظ´
Çó¸ßÊÖ½â´ðMatlabÇó½â΢·Ö·½³ÌµÄ³õʼֵºÍ±ß½çÖµÎÊÌâ
ÒѾÓÐ5È˻ظ´
Çëmatlab¸ßÊÖ¿´Ò»ÏÂÕâ¸öÎÊÌâÔõÑù±à³Ì²ÅºÃ£¬¸½³ÌÐò´úÂ룬лл£¡
ÒѾÓÐ9È˻ظ´
MATLAB³ÌÐòµ÷ÊÔ
ÒѾÓÐ9È˻ظ´
ÇóMatlab¸ßÊÖ½â¾öÏßÐÔ·½³Ì×éµÄµü´úÇó½âÎÊÌâ
ÒѾÓÐ17È˻ظ´
MatlabÖÐÈçºÎ×Ô¼º¶¨ÒåÒ»¸öк¯Êý£¬È»ºó¼ÆËãʱ¿ÉÒÔµ÷Óã¿
ÒѾÓÐ12È˻ظ´
matlabµ÷ÊÔÎÊÌâ
ÒѾÓÐ3È˻ظ´
matlab³ÌÐòÎÊÌ⣬×ÜÊdzö´í£¬Âé·³´ó¼Ò¿´¿´ÎÊÌâÔÚÄÇÀ
ÒѾÓÐ6È˻ظ´
matlabÖØ¸´µ÷ÓÃ×Ó³ÌÐòµÄÎÊÌâ
ÒѾÓÐ6È˻ظ´
ÇóÖú´óÏÀ°ï棬ÓйØmatlabÄ£ÄâÊý¾Ý
ÒѾÓÐ29È˻ظ´
ÇóÖúmatlab±à³Ì
ÒѾÓÐ13È˻ظ´
VS2005ÏÂmatlabµ÷ÓÃ
ÒѾÓÐ8È˻ظ´
¡¾ÇóÖú¡¿Ò»¸öMATLAB³ÌÐò£¬¶Á²»¶®£¬ÀÏʦ˵ÊÇÓÃËæ»úÓÎ×ßËãpiµÄÖµ¡¾ÒÑÍê½á¡¿
ÒѾÓÐ6È˻ظ´
wurongjun
ר¼Ò¹ËÎÊ (Ö°Òµ×÷¼Ò)
-

ר¼Ò¾Ñé: +831 - ÊýѧEPI: 9
- Ó¦Öú: 791 (²©ºó)
- ¹ó±ö: 0.308
- ½ð±Ò: 24609
- É¢½ð: 310
- ºì»¨: 75
- Ìû×Ó: 3004
- ÔÚÏß: 881.4Сʱ
- ³æºÅ: 1368482
- ×¢²á: 2011-08-14
- ÐÔ±ð: GG
- רҵ: ¼ÆËãÊýѧÓë¿ÆÑ§¹¤³Ì¼ÆËã
- ¹ÜϽ: Êýѧ
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
guan0603: ½ð±Ò+10, ¡ï¡ï¡ïºÜÓаïÖú 2014-12-24 11:58:46
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
guan0603: ½ð±Ò+10, ¡ï¡ï¡ïºÜÓаïÖú 2014-12-24 11:58:46
|
¼òµ¥Ð޸ľÍÐÐ,ÈçÏÂ: function [x,val,k]=frcg(fun,gfun,x0) % ¹¦ÄÜ: ÓÃFR¹²éîÌݶȷ¨Çó½âÎÞÔ¼ÊøÎÊÌâ: min f(x) %ÊäÈë: x0Êdzõʼµã, fun, gfun·Ö±ðÊÇÄ¿±êº¯ÊýºÍÌÝ¶È %Êä³ö: x, val·Ö±ðÊǽüËÆ×îÓŵãºÍ×îÓÅÖµ, kÊǵü´ú´ÎÊý. maxk=5000; %×î´óµü´ú´ÎÊý rho=0.6;sigma=0.4; k=0;epsilon=1e-4; n=length(x0); while(k<maxk) g=feval(gfun,x0); %¼ÆËãÌÝdu itern=k-(n+1)*floor(k/(n+1)); itern=itern+1; %¼ÆËãËÑË÷·½Ïò if(itern==1) d=-g; else beta=(g'*g)/(g0'*g0); d=-g+beta*d0; gd=g'*d; if(gd>=0.0) d=-g; end end if(norm(g)<epsilon),break;end %¼ìÑéÖÕÖ¹Ìõ¼þ m=0;mk=0; while(m<20) %ArmijoËÑË÷ if(feval(fun,x0+rho^m*d)<feval(fun,x0)+sigma*rho^m*g'*d) mk=m;break; end m=m+1; end x0=x0+rho^mk*d; val=feval(fun,x0); g0=g;d0=d; k=k+1; end x=x0; val=feval(fun,x); function g=gfun(x) g=[400*x(1)*(x(1)^2-x(2))+2*(x(1)-1),-200*(x(1)^2-x(2))]'; function f=fun(x) f=100*(x(1)^2-x(2))^2+(x(1)-1)^2; ÏÂÃæÊÇÔËÐнá¹û: >> x0=[-1.2 1]' x0 = -1.2000 1.0000 >> [x,val,k]=frcg('fun','gfun',x0) x = 0.9999 0.9999 val = 2.9396e-009 k = 44 |
» ±¾ÌûÒÑ»ñµÃµÄºì»¨£¨×îÐÂ10¶ä£©

2Â¥2014-12-24 11:13:16
guan0603
гæ (³õÈëÎÄ̳)
- Ó¦Öú: 0 (Ó×¶ùÔ°)
- ½ð±Ò: 67.1
- Ìû×Ó: 8
- ÔÚÏß: 9.8Сʱ
- ³æºÅ: 3599995
- ×¢²á: 2014-12-17
- רҵ: Ô˳ïѧ
3Â¥2014-12-24 11:58:06
guan0603
гæ (³õÈëÎÄ̳)
- Ó¦Öú: 0 (Ó×¶ùÔ°)
- ½ð±Ò: 67.1
- Ìû×Ó: 8
- ÔÚÏß: 9.8Сʱ
- ³æºÅ: 3599995
- ×¢²á: 2014-12-17
- רҵ: Ô˳ïѧ
4Â¥2014-12-24 14:26:39













»Ø¸´´ËÂ¥
guan0603
6