Компьютерное моделирование нашло практическое применение во всех сферах деятельности человека, начиная от моделей технических технологических и организационных систем и заканчивая проблемами развития человечества и вселенной. Еще с детства человек через игрушки и игры узнает мир и таким образом моделирует действительность. Вместо того, чтобы учиться на своих ошибках или на ошибках других людей, целесообразно закреплять и проверять познание реальной действительности полученными результатами на компьютерной модели. В этом случае есть возможность «проигрывать» на модели любые ситуации, включая те, при которых реальная система вышла бы из строя. Это позволяет моделировать катастрофы, редкие события и т. п. Одно из преимуществ компьютерного моделирования - это также моделирование того, что не существует на самом деле, то есть моделирование виртуальной реальности. Вспомним компьютерные игры: сидя в самолете или космическом корабле, мы осуществляем полет так, как будто мы действительно находимся там.
Когда же необходимо использовать компьютерное моделирование? Всегда, когда можно поставить вопрос, «что будет, если...?». Следовательно, компьютерное моделирование используют, прежде всего, для принятия решений. Модель позволяет проигрывать любые ситуации и получать наиболее эффективные решения проблемы.
Из всех видов моделирования, а это в первую очередь математическое, графическое и прочее, рассмотрим имитационное моделирование. Обзор систем моделирования в работе [3] показывает, что имитационное моделирование является едва ли не самым популярным средством, используемым на практике для этих целей. Основная его ценность состоит в применении методологии системного анализа. Имитационное моделирование разрешает осуществить исследование анализируемой или проектируемой системы по схеме операционного исследования, которое содержит взаимосвязанные этапы:
- содержательная постановка задачи;
- разработка концептуальной модели;
- разработка и программная реализация имитационной модели; проверка правильности,
- достоверности модели и оценка точности результатов моделирование;
- планирование и проведение экспериментов;
- принятие решений.
Это позволяет использовать имитационное моделирование как универсальный подход для принятия решений в условиях неопределенности с учетом в моделях трудно формализуемых факторов, а также применять основные принципы системного подхода для решения практических задач.
Широкому внедрению этого метода на практике препятствует необходимость создания программных реализаций имитационных моделей, которые воссоздают в модельном времени динамику функционирования моделируемой системы. В отличие от традиционных методов программирования разработка имитационной модели требует перестройки принципов мышления. Недаром принципы, положенные в основу имитационного моделирования, дали толчок к развитию объектного программирования. Поэтому усилия разработчиков программных средств имитации направлены на упрощение программных реализаций имитационных моделей: для этих целей создаются специализированные языки и системы. Программные средства имитации в своем развитии изменялись на протяжении нескольких поколений, начиная с языков моделирования и средств автоматизации конструирования моделей [4] до генераторов программ [5], интерактивных и интеллектуальных систем [6], распределенных систем моделирования. Основное назначение всех этих средств - уменьшение трудоемкости создания программных реализаций имитационных моделей и экспериментирования с моделями.
Одним из первых языков моделирования, облегчающих процесс написания имитационных программ, был язык GPSS, созданный в виде конечного продукта Джеффри Гордоном в фирме IBM в 1962 г. Этот язык в свое время входил в первую десятку лучших языков программирования, опережая транслятор с языка АЛГОЛ, и был реализован практически на всех типах ЭВМ. В настоящее время есть трансляторы для операционных систем DOS - GPSS/PC, для OS/2 и DOS - GPSS/H и для Windows - GPSS World. Изучение этого языка и создания моделей позволяет понять принципы разработки имитационных программ и научиться работать с имитационными моделями.
GPSS (General Purpose Simulation System - система моделирования общего назначения) - язык моделирования, который используется для построения событийных дискретных имитационных моделей и проведения экспериментов на ЭВМ.
Модели систем на GPSS могут быть записаны в виде блок-схем или представлены в виде последовательности строк программы, эквивалентных блок-схеме. Блок-схема - это набор фигур с характерными контурами блоков языка GPSS, соединенных между собою линиями. Блоки - это подпрограммы, реализованные средствами макроассемблера. В разных версиях языка количество блоков для создания имитационных программ разное и составляет около 40. В язык моделирования GPSS входят специальные средства для описания динамического поведения систем через изменение состояний в дискретные моменты времени, то есть время моделирования изменяется случайно от события к событию.
Система GPSS представляет собой язык и транслятор. Как каждый язык он содержит словарь и грамматику, с помощью которых могут быть разработаны модели систем определенного типа. Транслятор языка работает в две фазы. На первой фазе компиляции проверяется синтаксис и семантика написания строк GPSS - программы или всей программы в целом, а на второй (интерпретирующей) осуществляется продвижение транзактов по модели от блока к блоку.






