Рандомізація значень
У цій вправі ви застосуєте й порівняєте різні методи рандомізації. Мета — щоб ви впевнено працювали з різними методами та розуміли, як вони впливають на спосіб генерування випадкових чисел. Кожен із цих методів корисний у різних ситуаціях, тому важливо розуміти їхні відмінності.
Уявімо, що у вас є бізнес-процес, який триває близько 15 хвилин. Водночас ви знаєте, що фактична тривалість коливається приблизно на пʼять хвилин (у більший або менший бік). Застосуйте різні методи рандомізації з пакета random, щоб у контрольований спосіб згенерувати варіації цієї тривалості.
Ця вправа є частиною курсу
Дискретно-подієве моделювання в Python
Інструкції до вправи
- Згенеруйте 1000 випадкових тривалостей процесу як цілі числа на основі поданої інформації.
- Згенеруйте 1000 випадкових тривалостей процесу як числа з плаваючою комою на основі поданої інформації.
- Згенеруйте 1000 псевдовипадкових тривалостей як числа з плаваючою комою на основі нормального (Gaussian) розподілу із середнім 15 і стандартним відхиленням 5.
- Згенеруйте 1000 псевдовипадкових тривалостей як числа з плаваючою комою на основі експоненційного розподілу з параметром lambda 1.5 (додатний) і піком у 15.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Generate random integer numbers
randint_array = np.array([____ for i in range(1000)])
# Generate random float numbers
uniform_array = np.array([____ for i in range(1000)])
# Generate random float numbers based on the Gaussian distribution
gauss_array = np.array([____ for i in range(1000)])
# Generate random float numbers based on the Exponential distribution
expon_array = np.array([____ + 15 for i in range(1000)])
plot_all(randint_array, uniform_array, gauss_array, expon_array)