Должен ли я преобразовать оптимизацию ограничений в безусловную оптимизацию? - PullRequest
0 голосов
/ 21 мая 2019

У меня есть вопрос из двух частей, основанный на задаче оптимизации:

  max f(x) s.t. a <= x <= b

, где f - нелинейная функция, а a и b - конечные.

(1) Я слышал, чтоесли возможно, следует попытаться преобразовать эту ограниченную задачу оптимизации в безусловную (меня интересует не найти локальные максимумы, но это также может ускорить оптимизацию).В целом ли это так?

Для решения конкретной проблемы я использую функцию «optim» в R с «Nelder-Mead», которая использует недифференцируемую оптимизацию.

(2) Есть ли «лучшее» преобразование, которое можно использовать для преобразования ограниченной задачи в неограниченную?

Я использую + (ba) * (sin (x) +1) / 2, потому что он включен и непрерывен (и поэтому я надеюсь не находить локальные максимумы путем поиска по всему интервалу).Смотрите https://math.stackexchange.com/questions/75077/mapping-the-real-line-to-the-unit-interval для некоторых преобразований.Тогда проблема без ограничений:

  max f(a +(b-a)*(sin(x)+1)/2)

Также в случае одностороннего ограничения a

...