0
   `# objective function
      eval_f0 <-function(x) {

          v=rep(0,length(x))
            for (i in 1:length(x)){
           v[i]=tab$beta0[i]+((tab$new.beta[i]*tab$avg.current.adstock[i]* 
       ((x[i]/tab$media.spends[i])^tab$dr[i])))
        }
      return(mean(v))
        }
      # constraint function
      eval_g0 <- function(x) {
      constr <- x
       return(constr)
        }

        eval_g1 <- function(x){
         h <- sum(x)-sum(tab$media.spends)*1.01
          return(h)
         }

         res1 <- nloptr( x0=tab$lower.limt,
            eval_f=eval_f0,
            lb = tab$lower.limt,
            ub = tab$upper.limt,
            eval_g_ineq = eval_g0,
            eval_g_eq = eval_g1,
            opts = list("algorithm"="NLOPT_GN_ISRES"
                        ,maxeval=100000,xtol_abs=1e-8))


 `

我正在尝试使用 nloptr 从 R 中的 excel 求解器中复制 GRG 非线性优化问题,但结果与它相去甚远。有没有人尝试过同样的方法?

我也尝试了solnp,但没有运气。请分享包信息以获得与 excel GRG 非线性优化相同的结果。

4

0 回答 0