на людина власником продукту, чи ні.
Задамо поведінки агента Поведінка агента задається візуально за допомогою стейтчарта (діаграми станів). Для створення відкриємо структурну діаграму класу Person, зробивши подвійне клацання мишею по елементу Person у вікні Проект. Кликнемо мишею спочатку по кнопці панелі інструментів Стейтчарт, а потім по діаграмі. На діаграмі з'явиться значок стейтчарта. Зробимо подвійне клацання мишею по цьому значку. Автоматично відкриється діаграма з наступним стейтчартом рис 7.
В
Рис. 6. Сейтчарт
У вікні Властивості, задамо нове Ім'я стейтчарта: adoption. Клацнемо мишею станом state, натиснемо F2 і перейменуємо стан в PotentialAdopter. Це початковий стан, про що свідчить вказівник початкового стану, спрямований в цей стан. Якщо стейтчарт буде перебувати в цьому стані, то це означатиме, що ця людина ще не купив продукт. Намалюємо наступний стейтчарт рис 7. p> Потім додали ще одне стан, клацнувши мишею спочатку по кнопці панелі інструментів Стан, а потім по діаграмі під станом PotentialAdopter. Назовалі його Adopter. Якщо стейтчарт буде перебувати в цьому стані, це означатиме, що цей людина вже купив продукт. Потім додали перехід зі стану PotentialAdopter в стан Adopter. Для цього клацніть мишею по кнопці панелі інструментів Перехід, потім клацніть спочатку по межі верхнього стану, а потім по кордоні нижнього. Цей перехід буде моделювати покупку продукту. br/>В
Рис. 7. Сейтчарт
У вікні Властивості, вибераем З таймаут зі списку. Час, через яке людина купить продукт, експоненціально залежить від
ефективності реклами продукту. Крім функції експоненціального розподілу exponential (), AnyLogic надає функції та інших випадкових розподілів, таких як нормальне, рівномірне, трикутне і т.д.
Порахуємо споживачів продукту. Головне завдання моделі розповсюдження продукту - вивчення того, як швидко люди купують новий продукт. Тому додали можливість відстеження того, скільки людей вже купило продукт, а скільки - ще ні. Підраховується число споживачів і потенційних споживачів продукту за допомогою спеціально створених змінних.
Створили дві змінні: adopters і potential_adopters. Змінили стейтчарт. Відкрили діаграму стейтчарта, зробивши подвійне клацання мишею по елементу statechart у вікні Проект. Клацнули мишею станом PotentialAdopter. У вікні Властивості, задали Дія при вході в стан і Дія при виході з цього стану: при вході в стан ми будемо збільшувати на одиницю значення змінної, підраховує кількість потенційних споживачів продукту. При виході зі стану ми будемо зменшувати значення цієї змінної. Для того щоб підтвердити вироблене зміна, викликали функцію setModified () об'єкта, моделює оточення. Крім того, ізмерілоі значення змінної isAdopter, щоб показати, чи купив ця людина наш продукт (якщо так, то значення змінної одно true, якщо ні, то false). Аналогічно задалісвойства стану Adopter. Запустимо модель. Побудує...