Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5 (1124147), страница 10
Текст из файла (страница 10)
Рисунок 4.2 показывает основные составляющие пользовательского интерфейса этого редактора. Рассмотрим их поочередно. Окно Проект обеспечивает навигашпо по элементам проекта (рис. 4.3 для модели Ва!1з). Проект всегла организуется иерархически, поэтому он отображается в виде дерева: сам проект (с именем ьа11в) образует корень дерева рабочего проекта, классы активных объектов и сообщений — следующий уровень, в классах активных обьектов могут быть включены анимация, функции и т. д.
Активный объект является основным структурным элементом модели в Ануа.оя)с. Акгпивиылг обьектпом называется сущность. которая инкапсулирует (включает в себя) данные (атрибуты объекта), функции (методы) и поведение как елиное целое. Активный объект строится как класс, который может включать в качестве составных элементов экземпляры других классов активных объектов. Наш проект ьепв включает два класса активных объектов: класс вв11 и класс лоос. На лереве проекта (рис. 4.3) как составные элементы класса ва1тв показаны кол и стейтчарт с именем вевсесьатс, у класса аоот составнылги его элементами показаны кол и анимация с именем впгваегоо.
Рис. 4.3. Окно проекта Одна из ветвей в дереве проекта имеет название эксперимеввьх этот объект объединяет группу экспериментов, которые люгут быть выполнены с моделью. В открытом нами проекте в группу экспериментов входит только один эксперимент с именем эь твсгоп, выделенный жирным шрифтом — это текущий эксперимент, именно в соответствии с установленными в текущем Глава 4. Имитационное мсдеяироееиие и среде Ял од!с. Общие понятия 37 эксперименте параметрами будет происходить выполнение модели после ее компиляции. Открыть окно проекта, если оно закрыто, можно с помошью гцелчка мышью по кнопке Проект Щ панели инструментов или командой Вид ~ Проект из главного меню.
Окно любого элемента дерева проекта (классов активных объектов, стейтчартов, анимации и т. и.) можно открьпь двойным щелчком мышью по имени этого элемента в лереве проекта. Открытая нами среда создания проекта (рис. 4.2) содержит несколько окон. Структура активного объекта задается графически в специальном окне редактора — стлрукглурной диогрпмме. В окне ВаП.в(а(есваг( представлен стейтлчпрт (или корта состполиий), который определяет реакции активного объекта на внешние события — логику его действий во времени. Стейтчарт является удобным расширением графического представления классического конечного автомата, он состоит из состояний и переходов между состояниями.
В окне анимации можно построить анимированное поведение активного объекта. Поле в любом окне можно двигать, нажав на нем правой кнопкой мыши. При этом также можно менять масштаб изоб ажения в этом иоле с помошыо двух кнопок и окна масштаба сг июв - "-~, если окно активно. Закройте и откройте окно проекта ье11е, а также каждое из окон элементов, включенных в дерево проекта. Измените масштаб изображений в окнах. 4Л Л. Структурная диаграмма При построении любой модели задается ее структура (т.
е. ее компоненты и связи этих компонентов) и поведение отдельных компонентов. В Апу).орс активный объект имеет структуру и поведение. Структуру активного объекта составляют его параметры. переменные, стейтчарты, а также экземпляры других активных объектов„включенные как компоненты в данный активный объект (и, возможно, их связи).
На рис. 4.2 для нашего простого примера структурная лиаграмма активного объекта — мяча — задается в окне с именем Вай прямоугольником, внутри которого содержатся его переменные (координаты мяча и, у и его скорости чх и чу) и иконка повеления Я с именем есесесьетс. Поскольку этот простой объект (веЩ не содержит экземпляров лругих объектов, то в прямоугольнике с именем ве11 нег других вложенных прямоугольников и связей (рис. 4.4).
Структура корневого активного объекта лоос задана в окне с именем Квоб Именно корневой активный объект является верхним уровнем структурной иерархии в нашем проекте. В модели (рис. 4.2) активный объект аоое солержит олин прямоугольник с именем ьеп — один экземпляр активного объекта ве11. Часть 1 Общие вопросы имитационного моделирования Рис 4.4.
Окно структуры активного объекта ва11 4.1.2. Окна свойств объектов модели В редакторе Апу(.ой1с для каждого элемента модели существует свое окно свойств, в котором указываются свойства (параметры) этого элемента. При выделении какого-либо элемента в любом из окон редактора (в окне структуры, окне поведения, окне анимации или в окне проекта) справа появляется окно свойств именно этого выделенного элемента. Выделить элемент можно щелчком левой кнопки мыши на этом элементе. Окно Свойства (рис.
4.5) используется лля просмотра и изменения свойств элементов. Открыть это окно, если оно закрыто„можно кнопкой [ф панели инструментов. Рис. 4.5. Окно свойств класса Ва11 Например, при выделенном окне редактора структуры объекта вв11 справа появится окно свойств, которое содержит три вклалки: Общие, Изображение и Описание. На вкладке Общие кроме имени этого объекта указаны его параметры. Смысл параметров очевиден: с — ускорение свободного падения, Глава 4.
Имитационное моделирование в среде Алу1 од(с. Общие лонвтин 39 к — радиус мяча и х — коэФФициент, определяющий уменьшение скорости мяча при каждом отскоке, ко и уо — начальные значения координат. 4.1.3. Окно поведения активного объекта Поведение мяча представлено в окне Вайл1атесЬагт, содержащем простейший стейтчарт (карту состояний), который можно считать расширенным граФом переходов конечного автомата. Рис. $.6.
Окно стейтчарта Стейтчарт модели прыгающего мяча (рис. 4.6) состоит из одного состояния с именем мотовиле и одного перехода. Переход срабатывает при наступлении события касания поверхности земли при движении мяча вниз. Условие наступления этого события можно записать выражением: у =савву<о Это выражение означает, что вертикальная координата у центра мяча с радиусом к отстоит от поверхности на к и при этом скорость мяча ту направлена вниз, в сторону уменьшения координаты у. Именно это выражение записано в поле Событие окна свойств перехода (рис. 4.7), которое открывается при выделенном переходе стейтчарта.
При наступлении данного события мяч отскакивает, т. е. его скорость меняет свой знак, уменьшаясь при этом на долю к, показывающую потерю энергии при отскоке. Это отражено в поле Действие окна свойств перехода. Таким образом, стейтчарт в этой модели следит за событиями. При наступлении нужно~о события выполняется необходимое действие. И условие наступления события, и само действие, меняюгцее переменные молели, записываются здесь обычными алгебраическими соотношениями. В настоящее время стейтчарты широко используются как удобное средство визуального описания поведения сложных систем. В частности, стейтча(пы являются основным срелством представления поведения в языке ()МЕ (()п)Г1ес) Модейпя Еапяцаяе).
Часть!. Общие вопросы имитационного моделирования Рис. 4.7. Окно свойств перехода 4.1.4. Окно редактора анимации активного объекта В этом окне для модели строится двумерное анимационное представление, которое показывает, что происходит с моделью с течением времени. Именно здесь визуально представляется имитация поведения моделируемой системы.
Для модели вапв в окне анимации построено изображение мяча, представленного закрашенным кругом. В другом окне можно построить трехмерное анимационное представление. Анимация в Апу) орс создается в виде динамических графических объектов, которые дают возможность наглядно представить динамику моделируемой системы, т. е. поведение сс во времени. Основная идея здесь состоит в том, что параметры элементов анимационной картинки (для круга это его координаты центра, радиус, цвет и т. и.) связываются с переменными и параметрами модели. Изменение переменных модели во времени заставляет изменяться во времени графический образ, что позволяет наглядно представить динамику моделируемой системы с помощью динамически меняющейся графики.
На рис. 4.3 показано, что когда в нашей модели в окне анимации выделен синий круг (щелчком правой кнопкой мыши). то в окне свойств представлены свойства этого круга. А именно координаты Х и У центра круга анимационной картинки имеют статические значения (значения этих параметров в редакторе) 90 и 400, а в поле динамических значений этих параметров они связаны с переменными к и у экземпляра ьат1 активного объекта ваты Таким образом, изменение данных переменных будет вызывать перемещение центра графического образа мяча на анимационной картинке при работе модели. Глава 4. Имитациотетое моделирование в среде Апу~.од~о. Общие понятия 4т Рис. 4.6. Окно анимации и окно свойств щелкните мышью на нескольких элементах окон редактора (на переменных и на поле окна редактора структуры, на переходе и состоянии окна стейтчарта„на графических элементах окна редактора анимации, на объекте виястастоп дерева проекта и т.
п.). Вы увидите, что лля каждого элемента модели окно свойств имеет свою структуру и содержит специфическую информацию и параметры, характеризуютцие именно данный элемент. Например, щелкните мышью в окне анимации на поясняющем тексте. В окне свойств на вкладке Текст будет представлен только один параметр — сам текст. Его можно редактировать и наблюдать, как в поле текста окна анимации он изменяется.