2017-05-21 120 views
1

我正在使用AMPL來優化我的模型,並剛開始使用該項目。重新定義變量

我有兩個變量,說A和B,我在我的目標函數使用:

A[d,t]*costA-B[d,t]*costB 

後來我有以下限制:

G[d,t]-U[d,t]-R[d,t]=A[d,t] 

在這裏,我意識到,我可以使用只是A,但問題是,取決於這個變量是正面還是負面,我應該使用costA或costB。

我的問題是,我可以重新定義A [d,t]的B [d,t]的如果A [d,t]的小於0?如果可以,我該怎麼辦?或者還有其他方法嗎?

回答

1

我覺得你以後有什麼是一樣的東西(在一些數學般的符號):

min sum((d,t), APlus[d,t]*CostA + AMin[d,t]*CostB) 
s.t. A[d,t] = APlus[d,t]-AMin[d,t] 
positive variables APlus,AMin 

這就是所謂的「可變分裂」。