楼主: 饽饽成
3164 2

[求助]急!非线性优化时用call nlpnra出错,请高手指点,万分感谢!在线等~ [推广有奖]

  • 0关注
  • 0粉丝

小学生

92%

还不是VIP/贵宾

-

威望
0
论坛币
4 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
135 点
帖子
10
精华
0
在线时间
4 小时
注册时间
2007-11-10
最后登录
2009-11-3

楼主
饽饽成 发表于 2009-4-6 12:07:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

下面的程序:

proc iml;
reset deflib=resdat;
start F_BETTS(x);/*定义似然函数模块*/
use resdat.agarch;
read all var{r} into r;
read all var{v} into v;
read all var{lagr} into lagr;
read all var{lagv} into lagv;
read all var{dr} into dr;
read all var{dv} into dv;
c1=14.309529;c2=-0.010198;c3=-0.004288;c4=-0.001506;
sumx1=sum((x[1]**2*dr-dv)##2/(x[6]**2*lagr-lagv));
sumx2=sum(1/(x[6]**2*lagr-lagv));
sumx3=sum((x[6]**2*r-v)/(x[6]**2*lagr-lagv));
deltax=365/(x[6]##2-x[3]##2)#sumx1+x[1]##2#(1/365)#(x[6]##2-x[3]##2)#sumx2
       +x[2]##2/(365#(x[6]##2-x[3]##2))#(x[6]##2#c1-c2)-2#x[1]#x[2]#655/365
    -2#x[1]#sumx3+2#x[1]#655+2#x[2]#(x[6]##2#c3-c4)/(x[6]##2-x[3]##2);

f=deltax;
return(f);
finish F_BETTS;
con={-1 -1 -1 -1 -1 -1,1 1 1 1 1 1};
x={0 0 0 0 0 0};
optn={1 3};
call nlpnra(rc,xres,"F_BETTS",x,optn,con);
store xres;
quit;

是对f函数进行最大化,求出待估参数向量x,

可是运行的时候出现错误:

WARNING: Division by zero, result set to missing value.

 operation : / at line 1242 column 17
 operands  : _TEM1001, _TEM1006

_TEM1001      1 row       1 col     (numeric)

 -69.94136

_TEM1006      1 row       1 col     (numeric)

         0

 statement : ASSIGN at line 1242 column 1
 traceback : module F_BETTS at line 1242 column 1

ERROR: Execution error as noted previously. (rc=100)

 operation : NLPNRA at line 1249 column 1
 operands  : *LIT1031, X, OPTN, CON

*LIT1031      1 row       1 col     (character, size 7)

 F_BETTS

X      1 row       6 cols    (numeric)

         0         0         0         0         0         0

OPTN      1 row       2 cols    (numeric)

         1         3

CON      2 rows      6 cols    (numeric)

        -1        -1        -1        -1        -1        -1
         1         1         1         1         1         1

 statement : CALL at line 1249 column 1
1250  store xres;
NOTE: Opening storage library RESDAT.IMLSTOR
ERROR: Matrix XRES has not been set to a value.

 statement : STORE at line 1250 column 1
1251  quit;
NOTE: Exiting IML.
NOTE: Storage library RESDAT.IMLSTOR closed.
NOTE: SAS 系统由于错误而停止了该步的处理。
NOTE: PROCEDURE IML 所用时间(总处理时间):
      实际时间         0.01 秒
      CPU 时间         0.01 秒

Rc100是什么意思?不懂啊。。。

请教高手,谢谢了先!

[此贴子已经被作者于2009-4-6 12:15:29编辑过]

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:nlpnra 非线性优化 万分感谢 call 高手指点 高手 指点 非线性 call nlpnra

沙发
杜林木 发表于 2009-4-6 12:09:00
不好意思啊,这个我也不熟悉哦!

藤椅
饽饽成 发表于 2009-4-6 12:12:00
还是要谢谢你!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-29 17:17