`# 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非线性优化相同的结果。