Языки моделирования
Чтобы реализовать на ЭВМ модель сложной системы, нужен аппарат моделирования, который в принципе должен быть специализированным. Он должен предоставлять исследователю:
· удобные способы организации данных, обеспечивающие простое и эффективное моделирование;
· удобные средства формализации и воспроизведения динамических свойств моделируемой системы;
· возможность имитации стохастических систем, т. е. процедур генерации ПСЧ и вероятностного (статистического) анализа результатов моделирования;
· простые и удобные процедуры отладки и контроля программы;
· доступные процедуры восприятия и использования языка и др.
Вместе с тем существующие языки программирования общего назначения для достаточно широкого круга задач позволяют без значительных затрат ресурсов создавать весьма совершенные имитационные модели. Можно сказать, что они способны составить конкуренцию специализированным языкам моделирования. Для систематизации представлений о средствах реализации имитационных моделей приведем основные определения и краткие сведения о подходах к выбору соответствующего языка.
Языком программирования называют набор (систему) символов, распознаваемых ЭВМ и обозначающих операции, которые можно реализовать на ЭВМ. Выделяют машинно-ориентированные, проблемно (процедурно)-ориентированные и объектно-ориентированные языки.
Классические языки моделирования являются процедурно-ориентированными и обладают рядом специфических черт. Можно сказать, что основные языки моделирования разработаны как средство программного обеспечения имитационного подхода к изучению сложных систем.
Языки моделирования позволяют описывать моделируемые системы в терминах, разработанных на базе основных понятий имитации. С их помощью можно организовать процесс общения Заказчика и Разработчика модели. Различают языки моделирования непрерывных и дискретных процессов.
В настоящее время сложилась ситуация, когда не следует противопоставлять языки общего назначения (ЯОН) и языки имитационного моделирования (ЯИМ). На рис. 3 представлена классификация языков программирования по различным основаниям, которая может служить основой для формирования рационального подхода к выбору конкретного языка реализации имитационной модели исследуемой ИС.
Легко заметить из названий, что некоторые ЯИМ базируются на конструкциях ЯОН: например, FORSIM — на языке FORTRAN; ПЛИС — на языке PL и т.д.
В силу своего целевого назначения при правильном выборе и использовании языки моделирования обладают рядом понятных достоинств.
Вместе с тем им присущи и определенные недостатки, главными из которых являются сугубо индивидуальный характер соответствующих трансляторов, затрудняющий их реализацию на различных ЭВМ; низкая эффективность рабочих программ; сложность процесса отладки программ; нехватка документации (литературы) для пользователей и специалистов-консультантов и др. В ряде случаев эти недостатки способны перечеркнуть любые достоинства.
Существует несколько подходов к выбору языка, на котором будет реализовываться разрабатываемая имитационная модель. Предлагается классическая двухэтапная схема выбора, имеющая широкое практическое применение.
На первом этапе следует найти ответы на следующие вопросы:
1. Имеются ли руководства и инструкции для пользователей?
2. Совместим ли язык транслятора с имеющимися вычислительными системами?
3. Можно ли данный язык использовать на других вычислительных системах, способных решать задачи пользователя?
4. Обеспечивает ли транслятор языка выдачу информации об ошибках и глубокую их диагностику?
5. Насколько эффективен данный язык с учетом общего времени подготовки, программирования, отладки программы, компиляции и прогона ее на ЭВМ?
6. Какова стоимость внедрения, эксплуатации и обновления программного обеспечения для данного языка?
7. Знаком ли язык и, если нет, легко ли его изучить?
8. Оправдает ли частота использования языка в различных будущих моделях затраты на его изучение и освоение?
Рис. 3. Классификация программных средств моделирования систем.
По результатам ответов на данные вопросы, как правило, отбираются несколько языков. Окончательный выбор основывается на учете характеристик конкретной задачи при ее решении на определенной машине.
Второй этап выбора предусматривает поиск ответов на такие вопросы:
1. Какова область применения языка и его пригодность для описания явлений реального мира (методы прогнозирования; ориентация; способность генерировать случайные факторы)?
2. Насколько легко осуществляется хранение и извлечение данных, характеризующих состояния системы и работу отдельных ее частей?
3. Обеспечивается ли необходимая гибкость и каковы возможности языка в отношении модифицирования состояний системы?
4. Насколько легко данный язык может описывать динамическое поведение?
5. Каковы выходные формы документов, чем они полезны и какой статистический анализ возможен на основе этих данных?
6. Насколько просто вставлять в модель стандартные подпрограммы, написанные пользователями?
Приведенные вопросы можно конкретизировать или расширять с учетом современного уровня и перспектив развития технических, программных средств и информационных технологий, но изложенный подход к выбору языка является неизменно актуальным и конструктивным.
Если попытаться обобщить направленность данных вопросов, то можно заметить, что важнейшими проблемами применения языков моделирования являются их эффективность, совместимость с другими программными средствами и возможность установки на имеющиеся технические средства, а также затраты различных ресурсов. Иными словами, при выборе программного средства моделирования следует руководствоваться известным критерием "эффективность–время–стоимость", причем зачастую важность каждого из этих частных показателей меняется в зависимости от существа задачи; объема располагаемых ресурсов; резерва (дефицита) времени; сложившихся условий и т.п.
Дата добавления: 2016-01-11; просмотров: 1373;