Как правильно определить ограничения в утконосе - PullRequest
0 голосов
/ 16 апреля 2019

В 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 оптимизационную модель с такими ограничениями?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...