Основные черты языков моделирования


Разработка языков моделирования началась в конце 70-х годов, когда в Мировом банке был создан GAMS (General Algebraic Modeling System)[8].

В языке моделирования модель записывается в форме, близкой к математической записи, что является важной чертой алгебраических языков моделирования.

Запись модели стала независимой от формата данных решателя. К языку моделирования могут быть подключены различные решатели, при этом процесс перевода модели и данных в соответствующий входной формат решателя выполняется компьютером автоматически, что позволяет сделать ошибки перевода невозможными (разумеется, после тщательной отладки). В языке моделирования модели и данные хранятся раздельно, т.е. имеется четкое разделение модели и данных для нее. Это позволяет многократно использовать одну и ту же модель для решения различных задач, изменяя только данные.

Многие системы используют интерфейс ODBC (open database connectivity) для автоматического доступа к данным, а также интерфейс к большинству табличных процессоров (таких, как Excel). Это освобождает пользователя от трудоемкой обязанности поиска соответствующих данных при каждом использовании модели. Вторым преимуществом концепции разделения модели и данных является возможность использования в период разработки модели «игрушечных» моделей с небольшими искусственными массивами данных, а в дальнейшем отлаженная на этих простых примерах модель без каких-либо изменений может быть использована для решения больших производственных задач с реальными объемами информации. Вычисление производных данных может быть автоматизировано с помощью использования автоматического дифференцирования.

После того, как модель запрограммирована, далее используется решатель, способный решать описанные выше задачи оптимизации. Алгебраические языки моделирования (АЯМ) берут на себя задачу перевода математической постановки задачи в форму, понятную для соответствующего решателя (т.е. программы, решающей оптимизационную задачу). После решения задачи решателeм АЯМ выдают отчет в удобной для пользователя форме.

АЯМ позволяют работать с моделями, заданными во входном файле в виде алгебраических уравнений и неравенств. АЯМ транслирует входной файл в понятный для решателя вид и осуществляет вызов этого решателя. В данном случае решатель рассматривается как «черный ящик» (известно, какие исходные данные требуются для него и что будет получено в результате его работы). В ряде случаев решатель может запросить дополнительную информацию, необходимую для его работы. Как только решатель решит задачу, решение будет возвращено АЯМ и результаты будут сообщены пользователю.

АЯМ позволяют специалисту в области математического моделирования записать модель в математической форме, использующей множества индексов, параметры, переменные и константы. Очень важна возможность АЯМ записывать подобные ограничения в виде множеств, к которым затем можно обращаться, используя соответствующие индексы. Это позволяет компактно записывать модели в виде, близком к естественной математической записи.

 

2.2. Алгебраический язык моделирования AMPL.



Дата добавления: 2016-06-05; просмотров: 970;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.