Artelys Knitro - Artelys Knitro

Artelys Knitro
Разработано
  • Ричард Вальц
  • Хорхе Нокедаль
  • Тодд Плантенга
  • Ричард Берд
РазработчикArtelys
Впервые появился2001 (2001)
Стабильный выпуск
12.2 / 29 мая 2020 г.; 6 месяцев назад (2020-05-29)
Операционные системыКроссплатформенность
ЛицензияПроприетарный
Интернет сайтArtelys Knitro

Artelys Knitro это коммерческий пакет программного обеспечения для решения крупномасштабных нелинейных математическая оптимизация проблемы.

KNITRO - (исходное название решателя) сокращение от "Nонлайнар явнутренняя точка Тржавчина рЭгион ООптимизация »(буква« К »молчит) - была создана в соавторстве с Ричардом Вальцем, Хорхе Нокедаль, Тодд Плантенга и Ричард Берд. Впервые он был представлен в 2001 году как результат академических исследований Северо-Западный университет (через Ziena Optimization LLC) и с тех пор постоянно улучшается разработчиками Artelys.

Задачи оптимизации должны быть представлены Knitro в математической форме и должны обеспечивать способ вычисления производных функций с использованием разреженные матрицы (Knitro может вычислять приближение производных, но в большинстве случаев полезно указывать точные производные). Часто более простой подход - разработать задачу оптимизации в язык алгебраического моделирования. Среда моделирования вычисляет производные функций, а Knitro называется «решателем» изнутри среды.

Классы задач, решаемые Artelys Knitro

Knitro специализируется на нелинейная оптимизация но также решает широкий спектр задач оптимизации:

  • Общие нелинейные задачи (НЛП), в том числе невыпуклые
  • Системы нелинейных уравнений
  • Линейные задачи (ЛП)
  • Квадратичные задачи (QP / QCQP / SOCP), как выпуклые, так и невыпуклые
  • Задачи наименьших квадратов / регрессия, как линейные, так и нелинейные
  • Математические программы с ограничениями дополнительности (MPCC / MPEC)
  • Смешанно-целочисленные нелинейные задачи (MIP / MINLP)
  • Задачи оптимизации без производных (DFO)

Алгоритмы

Artelys Knitro содержит широкий спектр алгоритмов оптимизации.

Решатель нелинейного программирования (NLP)

Knitro предлагает четыре различных варианта оптимизации алгоритмы для решения задач оптимизации.[1] Два алгоритма относятся к внутренняя точка типа, а два из активный набор тип. Как известно, эти алгоритмы имеют принципиально разные характеристики; например, методы внутренней точки следуют пути через внутреннюю часть возможный регион в то время как методы активного набора имеют тенденцию оставаться на границах. Knitro предоставляет оба типа алгоритмов для большей гибкости при решении проблем и позволяет переходить в процессе решения от одного алгоритма к другому. Код также предоставляет возможность многозадачности для ускорения вычисления глобальный минимум.

  • Внутренний / Прямой алгоритм
  • Алгоритм внутреннего / сопряженного градиента
  • Алгоритм активного набора
  • Алгоритм последовательного квадратичного программирования (SQP)

Решатель смешанного целочисленного нелинейного программирования (MINLP)

Knitro предоставляет инструменты для решения моделей оптимизации (как линейных, так и нелинейных) с двоичными или целочисленными переменными. Код смешанного целочисленного программирования (MIP) Knitro предлагает три алгоритма смешанного целочисленного нелинейного программирования (MINLP):[2]

  • Нелинейный переход и граница
  • Алгоритм Кесада Гроссмана
  • Последовательное квадратичное программирование со смешанным целым числом (MISQP)

Функции

Artelys Knitro поддерживает множество языков программирования и моделирования, в том числе.[3]

  • Объектно-ориентированные интерфейсы для C ++, C #, Java и Python
  • Матрично-ориентированные интерфейсы для Julia, C, Fortran, MATLAB и R
  • Ссылки на языки моделирования: AIMMS, AMPL, GAMS и MPL
  • Ссылки на Excel через Frontline Solvers

Artelys Knitro также включает в себя ряд ключевых функций:

  • Большой набор хорошо задокументированных пользовательских опций[4] и автоматический тюнер
  • (Параллельный) мультистарт для глобальной оптимизации
  • Аппроксимация и проверка производных
  • Внутренний предварительный преобразователь

Рекомендации

  • Нокедаль, Хорхе; Райт, Стивен Дж. (2006). Численная оптимизация (2-е изд.). Издательство Springer. ISBN  0-387-30303-0.
  • Берд, Ричард Х .; Нокедаль, Хорхе; Вальс, Ричард А. (2006). «Knitro: интегрированный пакет для нелинейной оптимизации» (PDF). Архивировано из оригинал (PDF) 12 октября 2016 г.. Получено 17 ноября, 2017. Цитировать журнал требует | журнал = (помощь)

внешняя ссылка