2016-07-05 5 views
1

AMPLの制約をどのように上書きできるのか疑問です。非常に基本的な例では:はAMPLの制約をオーバーライドします

var x >= 0 ; 
var y >= 0; 

minimize cost : x^2 + y^4; 

subject to constraint1 : x+2*y >= 100; 

subject to constraint1 x+2*y <= 10; 

--------------------------------- 

"constraint1 is already defined" 

AMPLは、その制約として最初の「制約1」を使用して2つ目を無視し、AMPLは最後の「制約1」を使用していることをどのような方法はありますか?

+0

第2の制約に異なる名前を使用する – kindoflost

+0

2つの制約を使用したくないので、前の制約を新しい制約で上書きしたいだけです。 – Mahraz

+0

データと実行ファイルがあれば、おそらくデータファイルにx + 2 * y> = low_limとx + 2 * y <= up_lim、制約をlow_lim = 100とup_lim = 999999と書くことができます。ファイルを実行してlow_lim = 0、up_lim = 10にする – kindoflost

答えて

0

同じ変数名で制約を上書きすることはできません。

条件付きロジックを使用して同じ名前に割り当てられた制約を切り替えることができます(ただし、文が気になる場合)。ただし、上書きすることはできません。

関連する問題