找回密码
 注册
关于网站域名变更的通知
查看: 429|回复: 4
打印 上一主题 下一主题

Matlab的fmincon一个问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-3 14:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
求教大神:
( }9 P* i9 ~2 r+ y# z
function f=nsllh(x)
$ _: \* b( _) aclose=xlsread('HW_3_Part2Data','#3','D31257');
5 b/ L2 q8 B% Envix=xlsread('HW_3_Part2Data','#3','H4:H1257');
/ v' G! K8 i+ ]% L& salpha=zeros(1,1);beta=zeros(1,1);theta=zeros(1,1);gamma=zeros(1,1);
4 k+ Z& e* Y( i! W' Y, e9 ]. ix=[alpha,beta,theta,gamma];
/ t  j2 Z2 z) t, l& jr=zeros(1254,1);: a: F( X$ J( v2 d  f% p
for i=1:12544 `& g0 W2 T6 X
    r(i+1,1)=log(close(i+1,1)/close(i,1));" S5 W' o: g) z% Z8 u8 \" u
end
: N: N4 c. r0 r3 a$ f5 `8 Q0 qsigma=var(r);
& f$ d6 q9 J5 V+ e+ L. B" tomega=sigma*(1-alpha*(1+theta^2)-beta);
) j% H1 b; `+ [npsigma=ones(1254,1);6 i- ^: l+ s& m: t8 \" f% ~. c
npsigma(1,1)=sigma;
: U# A1 F- I9 \9 g. \; C: cfor i=1:1253
* ^; J. S; V: V1 @npsigma(i+1,1)=omega+alpha*(r(i,1)-theta*npsigma(i,1)^0.5)^2+beta*npsigma(i,1)+gamma*nvix(i,1)^2/252;7 m4 B/ i0 B. x2 e3 o8 `
end
+ _0 ^1 B3 P& o5 v/ halpha=x(1);beta=x(2);theta=x(3);gamma=x(4);
# S% R4 W) r/ a4 ^; U# N) d" `0 Cfor i=1:1254
- D. @$ ]! y+ [$ {nllh(i,1)=0.5*log(2*3.1415926)+0.5*log(npsigma(i,1))+0.5*(r(i,1)^2/npsigma(i,1));4 _8 \6 U' ?  |& p4 L4 b
end8 X9 @- g& ]2 c% P  a2 m. q
f=sum(nllh);9 k! f. K( |" p) d

4 F  |# N. K* s0 r+ m4 b3 [/ f另外nonlcon的code是:5 ~" ^2 f( T. |& U8 y
function [c,ceq]=mycon(x)+ f/ N: B/ S0 l' W
alpha=zeros(1,1);beta=zeros(1,1);theta=zeros(1,1);% v3 R- i$ r0 ?
x=[alpha,beta,theta];
, N" y( r% o  n3 b5 Ic=alpha*(1+theta^2)+beta-1;, @- J% G! f2 Y, b# z
ceq=[];
+ t$ o6 ?, r  C& W3 p! r* [# i  Y* G4 ~. T# w9 @: G& V4 k; s4 _9 J! g3 b
run出来显示:: _/ M  N' d8 @0 `; c0 C
x0=[0.04;0.5;2;0.07];5 _2 W2 e$ `& X* i0 R
Optimization terminated: first-order optimality measure less7 K' a6 S) ^" x" a  R3 ]% ?" F' k
than options.TolFun and maximum constraint violation is less
; R# x1 c6 c5 Dthan options.TolCon.
* Q: r  g5 j/ `- A  I4 f# ^9 _# g0 g* NNo active inequalities.
( o  Z4 w) E: ^- [1 \# o) z' h# r; {- n, b7 E2 X/ _. D0 |
x =' S+ Q8 y! S& Z+ M

8 j# S  b& X3 {4 {1 L% W4 n5 e    0.0400
7 E, N5 N4 ]/ Z+ G5 H$ _    0.5000
+ M  N/ g, }. J  ?, S) B    2.0000- B. ~9 R' F' e- `" |
    0.0700
5 s  S9 C( O- p8 S& t7 F# z8 V, I% |# W# \+ p2 ]

6 O( v1 q, J: |; s% B: ?fval =, I  \( r; p7 y! ]$ k
& F/ Y3 M. _9 Z& \2 p" J
-3.6963e+0030 J6 i. E- ^) Z, ^$ k- S# M. V. M
/ X9 c7 \. A& a; a, a
3 x$ ^. g5 @: F; N. U/ ^
exitflag =
/ }/ y, m# `6 ^* I4 y9 }! o  i0 S; M  ]1 u8 o# J( @
     1
3 S+ t& E" s2 ~% _; K/ X- k3 o) b
* T4 n* x7 s9 f% f: R/ h- _7 V
3 S' P1 W0 ]8 U9 _- _' e4 |output =; j; [9 A# |# k

& n1 I) D# X0 r  K       iterations: 15 N' l% g/ H0 {* J& A/ l9 ]" @  h
        funcCount: 10
+ x0 z0 b1 a" |, X3 h! k         stepsize: 1. f- I9 K2 F% T0 I7 s
        algorithm: 'medium-scale: SQP, Quasi-Newton, line-search'4 j9 `1 u( o7 P  ]' i4 J( `* F
    firstorderopt: 00 l/ Q2 F' U( M- H6 r
     cgiterations: []) L; s$ @! E6 P( ?0 V6 d
          message: [1x144 char]  }; s! o# ]- X# j" C  s0 B& o  c
5 U' [5 l4 O' ~9 o; y

/ j' R) r8 y: c: A! r1 tlamda =/ r. W2 {9 H' C' [

- j/ v; _2 P$ V( Q9 x0 X8 J         lower: [4x1 double]
% n* S. [+ f  G' x. i1 Z         upper: [4x1 double]
' I4 o8 L9 n0 Z2 e( f- H7 l) X         eqlin: [1x0 double]
5 {# q2 m& Y/ V1 {0 s- w0 q      eqnonlin: [1x0 double]1 p/ A. A1 a2 }- P) F: v+ M4 I, e: F) E
       ineqlin: [1x0 double]8 g$ C! A$ X! U- E  j; s
    ineqnonlin: 0
* {5 V$ f( ^' j; k1 T' g* i6 l: o; z
为什么会这样呢?fval已经改变了但是x不会变?而且iteration只有1
% X/ D- Y- z0 e: p/ E. T7 U
5 U; N: ]& \. G) I. M

该用户从未签到

2#
发表于 2020-8-3 14:34 | 只看该作者
帮你顶一下

该用户从未签到

3#
发表于 2020-8-5 13:17 | 只看该作者

7 h: K; x( g3 b( j" u1 }+ M' ^1、没有你的xls数据文件,没有进行测试;/ z$ ~- t& N( q# |4 P' R
2、你在哪儿使用了fmincon,没加上啊;8 O4 B2 i4 y* `3 D' o$ V
3、调整初值,再测试;& b8 @) B2 ]. I4 g
4、设置fmincon的options进行测试;

点评

好的,我先去试试,谢谢  详情 回复 发表于 2020-8-6 13:25

该用户从未签到

4#
发表于 2020-8-6 13:21 | 只看该作者
来学习一下

该用户从未签到

5#
 楼主| 发表于 2020-8-6 13:25 | 只看该作者
shuddkk 发表于 2020-8-5 13:17/ b9 G; t5 C4 S# T
1、没有你的xls数据文件,没有进行测试;; H/ W) d& [, d$ Y" B2 w+ u7 \. }
2、你在哪儿使用了fmincon,没加上啊;
. F+ Q" N: `; S$ G  U3、调整初值,再测试 ...

- A/ P+ [$ t! s7 c/ c( |1 _好的,我先去试试,谢谢
" r( a6 y* U5 I+ A
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-23 01:43 , Processed in 0.093750 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表