- •Зав. Кафедрою кітПіВ а. М. Тігарєв
- •Декан факультету ткс, доц. І. В. Хіхловська
- •1 Структура залікового модуля 1
- •2 Зміст змістових модулів (лекційних годин – 22):
- •1 Структура залікового модуля 2
- •2 Зміст змістових модулів (лекційних годин – 10):
- •1 Структура залікового модуля 3
- •1 Мета роботи
- •2 Основні положення
- •2.1 Загальна характеристика системи AnyLogic
- •2 Зміст змістових модулів (лекційних годин – 10):
- •Основи роботи з середовищем імітаційного моделювання AnyLogic
- •2.2 Види моделей
- •2.3 Підтримка моделювання в середовищі AnyLogic
- •2.4 Візуалізація виконання моделі
- •3 Робота у середовищі AnyLogic
- •3.1 Початок і завершення сеансу робіти
- •3.2 Створення нового проекту AnyLogic
- •3.3 Виконання моделі у середовищі AnyLogic
- •4 Контрольні запитання
- •5 Домашнє завдання
- •6 Лабораторне завдання
- •6 Зміст протоколу
- •2.1 Розробка імітаційної моделі безперервної системи
- •2.2 Створення нового проекту
- •2.3 Побудування моделі
- •2.4 Побудування часових діаграм
- •2.5 Анімація моделі
- •2.5 Запуск моделі
- •3 Контрольні запитання
2.3 Підтримка моделювання в середовищі AnyLogic
Для опису об’єкту в середовищі AnyLogic використовується низка понять, до котрих входять: класи й змінні.
Активний об’єкт є екземпляром класу активного об’єкту. Для створення моделі AnyLogic, необхідно створити класи активних об’єктів (або використовувати стандартні об’єкти бібліотек AnyLogicТМ) і визначити зв’язки між ними. Активний об’єкт визначається власною структурою (складом об’єктів, з яких він складається) й поведінкою, відповідно до якої змінюється його стан впродовж експерименту. Коренем ієрархії включень екземплярів класів активних об’єктів є клас активного об’єкту, який по замовченню отримує ім’я main, який є моделлю, що розробляється і яка представлена єдиним екземпляром з ім’ям root.
AnyLogicТМ інтерпретує графічні класи створюваних активних об’єктів в класи JavaТМ. Тому мова моделювання AnyLogicТМ дозволяє користуватися усіма перевагами об’єктно-орієнтованого програмування: наслідуванням, поліморфізмом і т.і.
Наслідування дозволяє значно спростити процес розробки моделей. При цьому, створивши будь-який базовий клас об’єкту з певними характеристиками, можливо використовувати його характеристики в наступних підкласах, доповнюючи їх при наступній модифікації об’єкту.
Активні об’єкти можуть вміщувати вкладені об’єкти з будь-яким рівнем вкладення. Це дозволяє виконувати декомпозицію моделі на будь-яку кількість рівнів деталізації.
Інкапсуляція об’єктів дозволяє приховувати неважливі, для конкретного втілення, деталі об’єкту, який моделюється.
Активні об’єкти взаємодіють з оточенням за допомогою тільки власних інтерфейсних елементів. Це дозволяє розділити внутрішню побудову об’єкту і будь-яку інформацію про його оточення, що дозволяє створювати систему з складною структурою і копіювати створений активний об’єкт.
Змінні в моделі визначають стан динамічного об’єкту. Вони змінюють власні значення з часом, відповідно законам функціонування системи.
Змінні можуть бути внутрішніми або інтерфейсними. Інтерфейсні змінні є спрямованими: змінні можуть визначатися в одному активному об’єкті, а використовуватися в інших.
Змінні можуть бути скалярного або векторного типу. Скалярні типи в процесі роботи моделі можуть задаватися також у вигляді графіків.
Векторний тип визначається як прямокутна матриця. AnyLogic вміщує досить багато засобів обробки матриць.
Також змінні можуть бути представленими як масиви. Масиви використовуються для представлення багатомірних масивів дійсних значень.
Ф
ормули,
системи алгебраїчних і диференційних
рівнянь дозволяють описувати
безперервну зміну значень змінних.
Рівняння можливо записувати як для
скалярних змінних, так і матриць. Рівняння
і формули можуть бути зв’язаними
з активними об’єктами
і любим станом виконання моделі.
Диференційні рівняння задаються у формі
Коші –
,
де
– арифметичний вираз, до якого може
входити спеціальний символ t,
котрий позначає
модельний час. Алгебраїчні вирази
подаються у вигляді
,
де х – змінна
типу double
чи матричного типу. Для
кожної системи рівнянь повинні наявно
визначені невідомі змінні за допомогою
оператора find
(x,y,t,…).
Ім’я змінної або виклик функції можливо
вставити в рівняння за допомогою майстра
автоматичного вводу, який є списком,
котрий вміщує: змінні (позначка ),
параметри (позначка ) і функції
(позначка ), які розташовано за
алфавитом. Можливо лише вибирати ім’я
зі списку і воно автоматично буде
розміщено у виразі. Для визову майстра
необхідно натиснути на кнопку fх
, після чого подвійне натискання на
кнопку миші на вибраному імені дозволить
вставити відповідний елемент зі списку
у поле, в якому записується вираз.
AnyLogic використовує бібліотеку чисельних методів розв’язання систем звичайних диференційних рівнянь (як лінійних, так і нелінійних), алгебраїчних рівнянь для будь-яких комбінацій змінних для жорстких і нежорстких систем. При проведенні комп’ютерних експериментів користувач може самостійно вибирати чисельний метод або дозволити зробити це виконавчій системі, яка вибере найкращій.
Параметри це певні характеристики об’єкта, які не можуть змінюватись у зовнішньому середовищі. Для об’єкта вони є статичними величинами. Параметри об’єкта можуть змінюватися у різних експериментах або інтерактивно у ході експеримента користувачем, для чого використовуються слайдери, вікна редагування або безпосередньо у дереві кореневого об’єкту – root. Параметри поділяються на прості й динамічні. Простий парметр – це константа, значення котрої не змінюється при відпрацюванні моделі. Динамічний параметр – має іншу природу й звернення до нього викликає виконання певної функції, яка проводить обчислення й формує нове значення певного типу.
