Исходная задача. 6 страница

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

 

3.6.3 Средства описания поведения объектов

Основным средством спецификации поведения объектов в AnyLogic являются переменные, таймеры и стейтчарты. Переменныеотражают изменяющиеся характеристики объекта. Таймерыможно взводить на определенный интервал времени и по окончании этого интервала выполнять заданное действие. Стейтчарты(карты состояния) позволяют визуально представить поведение объекта во времени под воздействием событий или условий, они состоят из графического изображения состояний и переходов между ними. Любая сложная логика поведения объектов модели в AnyLogic может быть выражена с помощью комбинации стейтчартов, дифференциальных и алгебраических уравнений, переменных, таймеров и программного кода на Java. Алгебраические и дифференциальные уравнения, как и логические выражения, записываются в AnyLogic аналитически.

Интерпретация любого числа параллельно протекающих процессов в модели AnyLogic скрыта от пользователя. Никаких календарей событий разработчик модели на AnyLogic не ведет, отслеживание событий во всех процессах, определенных в модели, выполняется системой автоматически.

Модельное и реальное время. Понятие модельного времени является базовым в системах имитационного моделирования. Модельное время– это условное логическое время, в единицах которого определено поведение всех объектов модели. В моделях AnyLogic модельное время может изменяться либо непрерывно, если поведение объектов описывается дифференциальными уравнениями, либо дискретно, переключаясь от момента наступления одного события к моменту наступления следующего события, если в модели присутствуют только дискретные события. Моменты наступления всех планируемых событий в дискретной модели исполнительная система хранит в так называемом календаре событий, выбирая оттуда наиболее раннее событие для выполнения связанных с ним действий. Значение текущего времени в моделях AnyLogic может быть получено обращением к функции getTime.

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

Интерпретация модели выполняется на компьютере. Физическое время, затрачиваемое процессором на имитацию действий, которые должны выполняться в модели в течение одной единицы модельного времени, зависит от многих факторов. Поэтому единица физического и единица модельного времени не совпадают.

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

В режиме реального временипользователь задает связь модельного времени с физическим временем, то есть устанавливается ограничение на скорость процессора при интерпретации модели. В этом режиме задается количество единиц модельного времени, которые должны интерпретироваться процессором в одну секунду. Обычно данный режим включается для того, чтобы визуально представить функционирование системы в реальном темпе наступления событий, проникнуть в суть процессов, происходящих в модели. Соотношение физического и модельного времени при работе модели в режиме реального времени можно понять на таком примере. При коэффициенте ускорения 4, если процессор успевает выполнить менее чем за 1 с все операции, которые в модели определены в течение четырех единиц модельного времени, он будет ждать до конца секунды. Если же процессор не успевает сделать это, то у него не будет интервала ожидания, и коэффициент ускорения будет меньше того, который установлен пользователем.

 

3.6.4 Анимация поведения и интерактивный анализ модели

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

Многие системы моделирования позволяют менять параметры модели только до запуска модели на выполнение. AnyLogic позволяет пользователю вмешиваться в работу модели, изменяя параметры модели в процессе ее функционирования. Поэтому окно анимации можно назвать «стендом» для проведения компьютерного эксперимента с моделью.

Итак, мы видим, что система моделирования AnyLogic обеспечивает поддержку всех этапов имитационного моделирования для различных типов динамических моделей, рассмотренных нами в первой главе (п.1.6), дискретных, непрерывных и гибридных, детерминированных и стохастических в любых их комбинациях в рамках одного инструмента. Создание модели, ее выполнение, оптимизация параметров, анализ полученных результатов, верификация модели все эти этапы удобно выполнять в среде AnyLogic. Данный инструмент обладает большим спектром разнообразных возможностей проведения как отдельных прямых экспериментов типа «если-то», так и серий подобных экспериментов для решения всевозможных обратных задач, направленных на поиск параметров модели, оптимизирующих ее функционирование. Удобный интерфейс и различные средства поддержки разработки в AnyLogic делают не только использование, но и создание компьютерных имитационных моделей в этой среде моделирования доступными даже для тех, кто в области вычислительной техники и программирования не является профессионалом.

 

3.6.5 Примеры имитационного моделирования

Проиллюстрируем возможности имитационного моделирования с помощью системы AnyLogic на двух примерах.

Пример 1. Рассмотрим задачу моделирования учебного процесса, рассмотренную ранее в п. 3.2. Структурная модель системы в нотации системы Anylogic приведена на рисунке 3.9 и соответствует цепи Маркова на рисунке 3.1. Численные значения вероятностей переходов между состояниями и трудоемкостей отдельных процессов соответствуют принятым в п.3.2. При имитационном моделировании был организован поток из 1000 обучаемых и получены показатели, приведенные в таблице 3.1.

Таблица 3.1

Результаты имитационного моделирования

S1 S2 S3 S4 S5 S6 S7 S8 S9 S10
Среднее число посещений каждого состояния
1,528 0,763 0,756 1,109 1,528 0,762 0,756 1,109 0,756 1,109
Среднее время пребывания в каждом состоянии, минут
91,68 9,144 9,072 66,54 67,68 4,092 4,884 4,332 4,332

.

Рис. 3.9. Карта состояний (StateShart)
моделируемой системы в нотации Anylogic

 

Средняя трудоемкость процесса обучения составила 267,15 минут, или 4 ч 27 мин. Мы видим, что эти результаты хорошо согласуются с результатами аналитического моделирования на основе цепей Маркова в разделе 3.2.

Пример 2 также связан с учебным процессом. На рисунке 3.10 приведена экранная форма имитационной модели процесса прохождения учебного курса группой обучаемых, состоящей из 20 человек.

Процесс обучения происходит следующим образом. Обучаемый поступает в систему и приступает к изучению курса, содержащего 8 модулей. После изучения каждого модуля он проходит тестирование, которое включает три тестовых задания. При неверном ответе процедура тестирования повторяется (без ограничения числа попыток). При завершении процедуры изучения и тестирования по материалу текущего модуля начинается изучение следующего модуля. После завершения изучения всех модулей обучаемый покидает систему.

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

 

Рис. 3.10. Схема имитационной модели прохождения интерактивного курса, построенной с помощью системы Anylogic:

1 - Карта состояний (StateChart) системы,

2 – анимационная схема смены состояний обучаемых,

3 – временные диаграммы процессов (фрагмент)

Приведем численный пример.

Исходные данные:

количество обучаемых – 20,

количество одновременно изучающих модуль – 10,

количество одновременно проходящих тест – 1,

вероятность правильного написания теста – 0,7,

закон распределения времени изучения модуля и написания теста – треугольный.

Результаты моделирования:

среднее время изучения модуля: 4,16 часа,

среднее время написания теста: 1,61 часа.

В заключение отметим, что приведенные примеры иллюстрируют лишь малую долю моделирующих возможностей системы AnyLogic.








Дата добавления: 2015-09-07; просмотров: 1917;


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

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.