2014-12-15 5 views
1

Я хочу выяснить, выгодно ли инвестировать в дополнительное производственное помещение, и, следовательно, я должен учитывать капитализацию в своей целевой функции.AMPL «Блокировка» производной переменной на значение

Как таковой, мне интересно, можно ли, например, если y [t] = 1, тогда y [g] = 1 для g! = T, g> t и где g, t - подмножество интервала времени, заданного Т.

Моя первая мысль была иметь:

subject to Constraint1: 
    y[t] = y[t-1] for all t in T 

Но это, безусловно, должно оказать решение у, чтобы стать стартовое значение в у [0], которая является то, что я, очевидно, не хочу.

Для уточнения. Предположим, что y [t] - двоичная переменная, значение которой равно 1, если инвестиции осуществляются за время t, иначе 0.

Надеюсь, кто-нибудь может пролить свет на это!

Привет

ответ

1

ограничение y[t] = 1, then y[g] = 1 for g != t, g > t может быть представлено в AMPL как нечто вроде:

s.t. c{t in T: t != t0}: y[t + 1] >= y[t]; 

, где t0 является первым элементом множества T. Обратите внимание на использование >= вместо =. Если y[t] составляет 1 для некоторого t, он будет вести y для всех последующих значений t до 1.

+1

Спасибо за ваш ответ. Моя модель теперь работает правильно! – Cenderze

 Смежные вопросы

  • Нет связанных вопросов^_^