В Matlab мы можем определить нелинейные ограничения для каждой переменной.Допустим, у нас есть 2 переменные x1
и x2
в x[x1, x2]
.поэтому мы решили иметь ограничение для этого, мы должны определить его как c = [c1, c2]
, из которых c1
специально определено для x1
и c2
для x2
.Таким образом, я думаю, что модель оптимизации понимает, как управлять каждой переменной.
Теперь я хотел бы сделать то же самое в Python и Platypus
.Хотя есть опция для определения ограничений, я не знаю, как определить ее как одно особенное ограничение для каждой переменной.
def funtion1()=
...
return [goal1, goal2] , [c1, c2]
или
def funtion1()=
...
return [goal1, goal2] , c
Я думаю, что я должен поставить ограниченияво втором параметре return
в функции, но это должен быть список или число?Я имею в виду, скажем, в итерации, c1
в порядке, но c2
нет, это должен быть список типа c = [-1, 1]
или просто c = 1
?(учитывая «<=» как ограничение) </p>
Не могли бы вы показать мне хорошо структурированную Platypus
оптимизационную модель с такими ограничениями?