掙扎我在爲r的功能,我想在optim
或constrOptim
受到最大限度一些簡單的限制,但我努力讓我的頭周圍ci
和ui
適合我的約束。簡單的約束constrOptim
My功能是:
negexpKPI <- function(alpha,beta,spend){
-sum(alpha*(1-exp(-spend/beta)))
}
alpha
哪裏和beta
是固定的載體,以及spend
是向量花費c(sp1,sp2,...,sp6)
我想以最大化的negexpKPI
輸出而變化。我想約束spend
三種不同的方式:
1)最小和最大爲每個sp1,sp2,...,sp6
,即
0 < sp1 < 10000000
5000 < sp2 < 10000000
...
2)合計金額:
sum(spend)=90000000
3)一種用於一些單個組分和:
sum(sp1,sp2)=5000000
請幫忙嗎?開放給任何其他可行的方法,但如果可能的話會更喜歡基礎R.
所有載體是長度爲6的只想改變'spend'矢量的分量。所以我們有'alpha < - c(a1,a2,...,a6)','beta < - c(b1,b2,...,b6)'這是固定的,我想改變'c sp1,sp2,...,sp6)'來使功能最大化。 –
對不起,我正在使用我沒有完全檢查過的示例數據;真正的優化是針對具有92個約束的40個「sp」值,如果我在這裏完整地複製將會使問題更難以解釋。我已經添加了一些額外的零以使其現在可行。 –