楼主: BBQFYSY
4898 4

[问答] R语言做拉格朗日乘数法是用BB包吗?自变量非负这个约束该怎么设置呢? [推广有奖]

  • 1关注
  • 0粉丝

本科生

5%

还不是VIP/贵宾

-

威望
0
论坛币
18 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
152 点
帖子
8
精华
0
在线时间
134 小时
注册时间
2012-8-22
最后登录
2021-3-1

楼主
BBQFYSY 发表于 2015-7-6 20:47:01 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
R语言做拉格朗日乘数法是用BB包吗?自变量非负这个约束该怎么设置呢?用spg吗?
我的代码和软件提示错误如下:
p0=c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
lo=c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
ans<-spg(par=p0,lower=lo,fn=piandao)
ans


Error in spg(par = p0, lower = lo, fn = piandao) :
  function must return a scalar numeric value!


请高手帮忙解答
二维码

扫码加我 拉你入群

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

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

关键词:拉格朗日乘数法 拉格朗日乘数 拉格朗日 自变量 R语言 拉格朗日乘数法 约束条件

沙发
enxizheng 发表于 2015-7-7 10:15:05
目测你的piandao写的有问题
function must return a scalar numeric value
这句话的意思是函数应该返回数值型标量结果
估计你的函数piandao不满足这个条件

藤椅
BBQFYSY 发表于 2015-7-8 18:33:55
enxizheng 发表于 2015-7-7 10:15
目测你的piandao写的有问题
function must return a scalar numeric value
这句话的意思是函数应该返回数 ...
函数是数值型的数学方程,应该没有问题。看了spg函数的代码,提到
func <- if (maximize)
        function(par, ...) c(-fn(par, ...))
    else function(par, ...) c(fn(par, ...))
    f.time <- system.time(f <- try(func(par, ...), silent = TRUE))
……
else if (!is.numeric(f) || 1 != length(f))
        stop("function must return a scalar numeric value!")
这个问题我现在也没有找到解决办法

板凳
enxizheng 发表于 2015-7-8 19:29:21
BBQFYSY 发表于 2015-7-8 18:33
函数是数值型的数学方程,应该没有问题。看了spg函数的代码,提到
func
数值型也有标量和向量的区别, 再检查检查吧

报纸
BBQFYSY 发表于 2015-7-8 20:41:02
谢谢你的帮助~
我再看看吧

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

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