【问题标题】:Optim() Function for multiple variables with different boundary conditions in RR中具有不同边界条件的多个变量的Optim()函数
【发布时间】:2014-11-25 20:19:52
【问题描述】:

有人可以帮我为两个具有不同边界条件的变量设置函数“optim()”吗?

    x = rnorm(1:100)
    y = rnorm(1:100)*50+2
    #ndays is a vector of two values

    test=function(ndays, x, y){ sum(x*ndays[1] - (x^2)*ndays[2] + y^2) }

    optim(par = c(2,10),test, x=x, y=y, lower=c(1,10),upper=c(20,30), method="L-BFGS-B")
    $par
    [1] 20 30

显然,此优化不起作用,因为 ndays[2] 应该是 10。

如果optim() 不是在这里应用的好功能,您会推荐其他功能吗?

【问题讨论】:

    标签: r optimization statistics


    【解决方案1】:

    optim 最小化了函数test,当ndays[2] 增加时它正在减少。

    所以得到 30 是正确的。如果mean(x) < 0ndays[1] 将等于 20,如果mean(x) > 0,则等于 1

    【讨论】:

    • 谢谢,你是对的,当我试图编造一个例子来证明我的问题时,我感到很困惑。所以让我们假设这个函数更复杂,模拟值总是在边界上,我该如何处理呢?你有什么我可以借鉴的技巧吗?
    猜你喜欢
    • 2017-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-07
    • 1970-01-01
    相关资源
    最近更新 更多