楼主: blliufan
958 2

[有偿编程] 求解答 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

84%

还不是VIP/贵宾

-

威望
0
论坛币
887 个
通用积分
0.0003
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2530 点
帖子
138
精华
0
在线时间
200 小时
注册时间
2009-9-28
最后登录
2021-10-9

楼主
blliufan 发表于 2014-3-16 21:11:03 |AI写论文
20论坛币
我得到别人一个程序,他想通过
lb = .0001 * ones(1,4);
ub = 20 * ones(1,4);
initial = ones(1,4);
[params ll] = fmincon('pareto_nbd_ll',initial,[],[],[],[],lb,ub)
来优化pareto_nbd_ll这个函数。
而后我又得到他对pareto_nbd_ll的定义
function [f,g]=pareto_nbd_ll(param)
global p1x tx T
r     = param(1);
alpha = param(2);
s     = param(3);
beta  = param(4);
maxab = max(alpha,beta);
absab = abs(alpha-beta);
param2 = s+1;
if alpha < beta
    param2 = r+p1x;
end   
part1 = (alpha^r*beta^s/gamma(r))*gamma(r+p1x);
part2 = 1./((alpha+T).^(r+p1x).*(beta+T).^s);
if absab == 0
   F1=1./((maxab+tx).^(r+s+p1x));
   F2=1./((maxab+T).^(r+s+p1x));
else
   F1=h2f1(r+s+p1x,param2,r+s+p1x+1,absab./(maxab+tx))./...
       ((maxab+tx).^(r+s+p1x));
   F2=h2f1(r+s+p1x,param2,r+s+p1x+1,absab./(maxab+T))./...
       ((maxab+T).^(r+s+p1x));
end
f = -sum(log(part1.*(part2+(s./(r+s+p1x)).*(F1-F2))));
[f/1000 param]
g=[];

我很想知道为何要定义这个g。[f/1000 param]
g=[];这两句是为了什么而存在?
如果我只定义f,我试了下,依然有结果,但是会warning,说trureg不解决此类问题。。

求解答。。跪谢。。

关键词:求解答 function Initial warning fmincon function initial 程序
jennings!

沙发
hiv5 发表于 2014-3-17 12:51:31
怀疑你的程序拷贝过来漏了什么东西。

藤椅
blliufan 发表于 2014-3-17 17:32:15
hiv5 发表于 2014-3-17 12:51
怀疑你的程序拷贝过来漏了什么东西。
没有,我可以把程序给你看。要是你能给我个解答,我可以加论坛币
jennings!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-16 12:00