AMPL
AMPL (англ. A Mathematical Programming Language, буквально «мова математичного програмування») — мова алгебраїчного моделювання для описування і розв'язування задач високої складності для великомасштабних математичних обчислень (наприклад, великомасштабної оптимізації і задач планування).[1] Вона була розроблена англ. Robert Fourer, англ. David Gay і Браяном Керніганом у Bell Laboratories. AMPL підтримує дюжину розв'язувачів, як з відкритим вихідним кодом, так і комерційних, у тому числі CBC, CPLEX, FortMP, Gurobi, MINOS, IPOPT, SNOPT і KNITRO. Задачі передаються розв'язувачам як nl файли. Особливою перевагою AMPL є подібність її синтаксису і математичного запису задач оптимізації. Це дозволяє сформулювати дуже коротко і легко для читання задачу в галузі оптимізації. Багато сучасних розв'язувачів, що доступні на сервері NEOS[2] наданому Аргонською національною лабораторією, сприймають введення моделей на AMPL. За даними статистики NEOS AMPL є найпопулярнішим форматом для представлення задач математичного програмування. ОсобливостіAMPL підтримує широкий діапазон типів задач, у тому числі:
AMPL викликає розв'язувача в окремому процесі, що має такі переваги:
ДоступністьAMPL доступна для багатьох популярних 32- і 64-бітових платформ, включаючи Linux, Mac OS X і Windows. Сам транслятор є пропрієтарним програмним забезпеченням, що в наш час[коли?] підтримується AMPL Optimization LLC. Однак існує декілька онлайн-послуг[2][3], що забезпечують безплатні можливості моделювання і розв'язування з використанням AMPL. Також доступна для студентів безкоштовна версія з обмеженими функціональними можливостями.[4] Бібліотека AMPL Solver Library (ASL), яка дозволяє читати nl-файли і забезпечує автоматичне диференціювання функцій, має відкритий вихідний код. Вона використовується в багатьох розв'язувачах для здійснення зв'язку з AMPL. ІсторіяУ цій таблиці представлено значні події в історії AMPL.
Приклад моделі
Див. також
Примітки
|
Portal di Ensiklopedia Dunia