У меня есть эта проблема, и я знаю ответ, но я должен быть в состоянии решить ее с помощью R
. Существует 5 кампаний, называемых A, B, C, D, E, существует максимально возможный бюджет, которыйможно потратить на каждую кампанию и рентабельность инвестиций за каждый доллар, потраченный на каждую кампанию.
будет выглядеть так
Campaign Max Budget ROI
A 156.09 0.77
B 73.92 1.46
C 65.8 2.14
D 43.68 0.77
E 41.01 1.81
есть два ограничения, вы можете потратить всего 100во всех кампаниях, и вы не можете тратить больше, чем ваш максимальный бюджет, на каждую кампанию, и вы пытаетесь максимизировать свою прибыль, и это ваш ROI, умноженный на бюджет, потраченный на кампанию.
Я знаю ответбудет потратить 65,8 на кампанию C, потому что она имеет более высокий ROI, чем потратить 34,2 на кампанию E, потому что у вас будет второй по величине ROI, и при этом вы достигнете ограничения максимальных затрат 100.
Если кто-то можетпомогите мне настроить это с помощью lpSolveAPI или lpsolve, заранее спасибо
это то, что я пробовал до сих пор
library("lpSolveAPI")
model<-make.lp(ncol=5)
m1<-lp.control(model, sense="max", verbose="neutral")
m2<-set.objfn(model, obj=c(120.1893,107.9232,140.812,33.6336,74.2462))
m3<-set.bounds(model, upper =c(156.09,73.92,65.8,43.68,41.02))
m4<-add.constraint(model, c(1,1,1,1,1), "<=",100)
solve(model)
get.variables(model)
34.2 0.0 65.8 0.0 0.0
Почему я получаю 65,8 на кампанию C, но 34,2на A, это должно быть на E ??Я предполагаю, что моя целевая функция неверна, для целевой функции я умножаю ROI на максимальный бюджет и использую эти коэффициенты.