- •Конспект лекций По дисциплине «Моделирование систем» Содержание
- •1.Системы и моделирование
- •1.1.Система как предмет моделирования
- •1.2.Модели
- •1.3.Математическое моделирование
- •2.Математические схемы моделирования систем
- •2.1.Основные подходы к построению математических моделей систем
- •2.2.Задачи теории массового обслуживания
- •2.3.Поток заявок. Время обслуживания
- •2.4.Простейшие смо и их характеристики
- •3.Этапы машинного моделирования систем
- •3.1.Построение концептуальной модели системы и ее формализация
- •3.2.Алгоритмизация модели системы и ее машинная реализация
- •3.3.Получение и интерпретация результатов моделирования системы
- •4.Принципы имитационного моделирования сложных систем
- •4.1.Понятие модельного времени
- •4.2.Способы имитации
- •4.3.Моделирующий алгоритм
- •5.Моделирование случайных факторов
- •5.1.Принципы моделирования случайных элементов
- •5.2.Требования к генератору случайных чисел
- •5.3.Методы построения программных датчиков бсв
- •5.4.Моделирование случайных воздействий на системы
- •6.Программные средства моделирования систем
- •6.1.Машинная реализация имитационных моделей
- •6.2.Классификация языков моделирования
- •6.3.Средства языков моделирования
- •7.Язык и система моделирования gpss
- •7.1.Транзакты
- •7.2.Списки
- •Процедура просмотра списка текущих событий:
- •7.3.Устройства
- •7.4.Многокнальные устройства (мку)
- •7.5.Логические ключи
- •7.6.Очереди и регистраторы очередей
- •7.7.Таблицы
- •7.8.Ячейки (Сохраняемые величины)
- •7.9.Матрицы
- •7.10.Функции
- •7.11.Переменные
- •8.Обработка результатов имитационного моделирования
- •8.1.Точечные оценки неизвестных параметров
- •8.2.Статистические методы обработки
- •8.3.Задачи обработки результатов моделирования
- •9.Планирование имитационных экспериментов
- •9.1.Общие принципы и задачи планирования экспериментов
- •9.2.Планирование экспериментов по исследованию систем методами дисперсионного анализа
- •10 Тактическое планирование машинных экспериментов с моделями систем
- •10.1 Стратегии запуска
- •10.1.1 Задание начальных условий
- •10.1.2 Процедуры отсечения
- •10.2 Определение объема имитационных экспериментов
- •9.3.Методы понижения дисперсии
- •Дополняющая выборка
- •Общие потоки случайных чисел
- •Использование априорной информации
- •Использование управляющих переменных
- •9.4.Правила остановки
- •10.Планирование экспериментов по оптимизации систем
- •10.1.Общие положения
- •10.2.Метод крутого восхождения
6.Программные средства моделирования систем
6.1.Машинная реализация имитационных моделей
При использовании ЭВМ для ИМ важное место в создании и реализации модели занимают вопросы разработки моделирующего алгоритма и преобразования его в форму, пригодную для обработки на машине. В этом случае говорят об имитационной программе, управляющей ЭВМ и базе данных, содержимым которой манипулирует эта программа.
При разработке имитационных программ используют следующие средства: языки программирования общего назначения (Fortran, Pascal, C и др.); языки моделирования; пакеты прикладных программ (ППП).
Языки программирования общего назначения (ЯПОН) — это система записи и набор правил, определяющих синтаксис (набор правил, в соответствии с которыми можно получать правильные конструкции) и семантику (набор правил, позволяющих однозначно выполнять алгоритмы, написанные на языке) фраз, используемых для отображения программ и их операционного значения. Принято делить существующие языки программирования на два больших класса: машинно-ориентированные и языки высокого уровня (процедурно-ориентированные и проблемно-ориентированные).
Языки первого класса (низкого уровня) характеризуются явно выраженной связью с ЭВМ (структура команд, памяти и т.д.), что позволяет создавать эффективные программы, эквивалентные программам, написанным непосредственно в кодах машины. Однако для их использования требуется высокая квалификация разработчика. Для моделирования сложных систем подобные языки не используются.
Языки программирования высокого уровня являются машинно-независимыми и позволяют создавать компактные и обозримые программы, в частности имитаторы. Частому использованию языков способствует наличие на ЭВМ различных классов средств реализации — трансляторов. Трансляторы делятся на два вида: компиляторы и интерпретаторы.
Компилятор преобразует весь текст программы на ЯПОН в машинный код или программу на языке ассемблера, которая может быть непосредственно выполнена процессором. Интерпретатор представляет собой языковой процессор, который транслирует каждый оператор исходной программы в некоторый промежуточный код, интерпретирует его в виде одной или нескольких команд, а затем выполняет. При этом объектный код не генерируется, а выдается лишь результат последовательно выполняемых операторов входного языка.
Универсальные языки общего назначения характеризуются широкой распространенностью, наличием трансляторов на ЭВМ различных классов, они допускают использование различных типов данных. Но их существенным недостатком являются трудоемкость разработки прикладных программ и значительное время на их отладку.
Специфика языка имитационного моделирования (ЯИМ) проявляется в заложенном в нем принципе описания моделируемых систем. Такой принцип может быть в общем виде представлен следующей схемой: объекты моделирования (системы и процессы) описываются своими атрибутами; атрибуты взаимодействуют с конкретными процессами, для реализации которых должны быть выполнены определенные условия, задающие временную последовательность таких взаимодействий; результатом взаимодействия являются события, происходящие внутри объекта и при взаимодействии с внешней средой; события приводят к изменению состояния модели имитируемого объекта.
Другим важным элементом ЯИМ является механизм системного времени, определяющий последовательность событий и процессов в модели на конечном интервале времени. Механизм выполняет две основные функции: запуск и продвижение “модельных часов” и обеспечение согласованности различных блоков и событий в системе, т.е. синхронизацию их функционирования по времени. Механизм системного времени должен “развязывать” временные узлы (одновременно происходящие события в моделируемом объекте).
В настоящее время используются два метода задания времени (подробно рассмотрены ранее). Принцип особых состояний позволяет экономить машинное время при длительном отсутствии событий в системе, не требует априорного выбора шага Δt, который влияет на точность модели и продолжительность цикла моделирования. Этот принцип может использоваться при неравномерном распределении событий на временной шкале. Поэтому такой механизм системного времени наиболее часто используют при имитации на ЭВМ систем с дискретными событиями.
При выборе ЯИМ необходимо учитывать многие факторы. Его можно проводить в два этапа: 1) изучить возможности языков и их операционные характеристики; 2) выбрать язык, ориентированный на имитацию определенного класса систем на конкретной ЭВМ.
Другой формой машинной имитации сложных систем являются ППП. Часто они ориентированы на моделирование систем определенного класса. Отметим лишь, что для эффективного использования ППП в целях моделирования систем необходимо, помимо программных средств, располагать пользовательской документацией, необходимой для эксплуатации пакета, и проектной документацией, подготовленной разработчиками.