добавить правило ограничения pyomo - PullRequest
0 голосов
/ 15 сентября 2018

Я пытался создать ограничение на основе определенного условия, которое является двоичным выводом моей функции ('Check_Condition'). Тип ограничения - это просто основное «конфликтующее» ограничение, чтобы избежать выбора двух конфликтующих переменных. Ограничение, похоже, игнорируется (я включил оператор print в качестве проверки), хотя я не получаю никакой ошибки. Вот код Я не хочу использовать вложенные циклы, поскольку они значительно замедляют код. Спасибо!

model.n = RangeSet(n_operations)
model.triangular = Set(within=model.n * model.n, filter=lambda i, j: j < i)

def con(model, i, j):
        if Check_Condition(operations[i],operations[j])==1:
            print('added constraint')
            return model.x[i] + model.x[j] <= 1
        else:
            return Constraint.Skip

model.OverlapConst = Constraint(model.triangular, rule=con)
...