- •Практичне заняття №1 Марковські моделі інформаційних процесів
- •Практичне заняття №2 Розробка моделі системи оперативної обробки
- •Практичне заняття №3 Розробка спрощеної мережевої моделі ос
- •Практичне заняття №4 Розрахунок характеристик якості функціонування ос
- •Практичне заняття №5 Дисципліни обслуговування, що задаються матрицями пріоритетів
- •Практичне заняття №6 Використання апарату мереж Петрі при розробці імітаційних моделей
- •Практичне заняття №7 Способи опису мереж Петрі
- •Навчальне видання
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ТЕХНОЛОГІЧНИЙ ІНСТИТУТ СХІДНОУКРАЇНСЬКОГО НАЦІОНАЛЬНОГО УНІВЕРСИТЕТУ ІМЕНІ ВОЛОДИМИРА ДАЛЯ (м. Сєвєродонецьк)
МЕТОДИЧНІ ВКАЗІВКИ
до практичних занять
з курсу “Комп’ютерне моделювання процесів і систем”
для студентів напряму підготовки 6.050102 “Комп’ютерна інженерія”
денної ті заочної форм навчання
Сєвєродонецьк 2011
УДК 004.94
Методичні вказівки до практичних занять з курсу “Комп’ютерне моделювання процесів і систем” (для студентів що навчаються за напрямом 6.050102 “Комп’ютерна інженерія” денної та заочної форм навчання)/ Укл.: Скарга-Бандурова І.С. – Сєвєродонецьк, Вид-во ТІ СНУ ім. В. Даля (м. Сєвєродонецьк), 2011. – 37 с.
Методичні вказівки до практичних робіт з дисципліни “Комп’ютерне моделювання процесів і систем” є частиною циклу підготовки бакалаврів за напрямком за професійним напрямом “Комп’ютерна інженерія”. Основною метою практичних робіт є систематизація і закріплення отриманих теоретичних знань, формування практичних навичок студентів, поглиблення та розширення знань, розвиток пізнавальних здібностей, творчої ініціативи, самостійності.
Тематика практичних робіт включає вивчення прийомів і методів які знайшли широке використання в області створення моделюючих середовищ для комп’ютерних систем і мереж; вивчення ряду класичних завдань моделювання.
Затверджено методичною комісією ТІ СНУ імені В. Даля (м. Сєвєродонецьк) за напрямком ЕА та КІ.
Протокол №___від___.______.2011 р.
Укладачі: |
І.С. Скарга-Бандурова, к.т.н. |
Відповідальний за випуск: |
О.І. Рязанцев, доцент, к.т.н. |
Рецензент: |
Є.В.Щербаков, доцент, к.т.н. |
ЗМІСТ
Практична робота №1 4
Практична робота №2 7
Практична робота №3 16
Практична робота №4 20
Практична робота №5 24
Практична робота №6 28
Практична робота №7 32
Практичне заняття №1 Марковські моделі інформаційних процесів
Мета роботи: набуття навичок побудови марковських моделей програм і обчислювальних процесів.
Короткі теоретичні зведення і приклад виконання роботи
Задача 1. Побудувати Марковську модель програми підрахунку кількості голосних літер у масиві М (N). Нехай М (N) - послідовність літер, МГЛ (10) - масив голосних літер. Поруч з блоками графа визначеними ним стану S0,...,S11. В якості часової моделі програми використовуємо дискретні поглинаючі марковські ланцюги. При створені програми моделювання ланцюга ототожнюються з блоками програми. На рис. 1.1 зображено граф марковського ланцюга, що є моделлю програми.
Рисунок 1.1 – Граф марковського ланцюга
Граф побудований з урахуванням наступних умов. Якщо з вершини i виходить єдина дуга, то ймовірність Pi,j =1. Якщо з вершини i виходить кілька дуг, то ймовірності переходів повинні задовольняти умові:
Ймовірність влучення в початковий стан P0=1.
Стан S11 є поглинаючим. Можливості попадання в стан S8 і S9 вважаються рівноімовірними. З урахуванням кількості повторень циклів визначені ймовірності повторного виконання циклів і виходу з них.
Марковський ланцюг заданої програми визначається множиною станів {S0,...,S11}; вектором початкових ймовірностей П0 = {1,0 ,..., 0} і матрицею ймовірностей переходів:
|
|
S0 |
S1 |
S2 |
S3 |
S4 |
S5 |
S6 |
S7 |
S8 |
S9 |
S10 |
S11 |
|
||
|
S0 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
S1 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
S2 |
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
S3 |
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
S4 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
S5 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
P=[Pij]= |
S6 |
|
|
|
|
|
|
|
|
0,5 |
0,5 |
|
|
|
|
|
|
S7 |
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
S8 |
|
|
|
|
|
|
0,9 |
|
|
|
0,1 |
|
|
|
|
|
S9 |
|
|
|
|
N-1/N |
|
|
|
|
|
|
N-1/N |
|
|
|
|
S10 |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
S11 |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
Незаповнені в матриці поля відповідають нульовим ймовірностями.
Задача 2. Побудувати Марковську модель обчислювального процесу, породжуваного алгоритмом, трудомісткість якого характеризується наступними параметрами:
q = 200 млн. операцій,
N1 = 20 звернень до файлу F1;
N2 = 100 звернень до файлу F2;
q1 = 2000 байт;
q2 = 300 байт;
q3 = 500 байт за одне звернення до файлу;
N3 =9 звернень до файлу F3.
Середнє число етапів рахунку при одному прогоні алгоритму:
N = N1 + N2 + N3 + I = 130.
Ймовірності переходу процесу зі стану рахунку S0 в стан S1, S2, S3, S4, (S4 - поглинає стан) визначаються формулою P0, K+1=1/N і дорівнюють відповідно:
P01 = N1 / N = 20/130 = 0.154;
P02 = N2 / N = 100/130 = 0.77;
P03 = N3 / N = 9 / 130 = 0.07;
P04 = I / N = 0.007.
Підставимо ці значення в матрицю ймовірностей переходів:
Середня трудомісткість етапу рахунку q0 =q/N = 1.54 млн. операцій.
Практична частина
Вивчити методичні вказівки й обрати довільну програму з циклами.
У відповідність з обраним варіантом побудувати Марковську модель.
Побудувати Марковську модель обчислювального процесу, породжуваного алгоритмом, трудомісткість якого характеризується наступними параметрами.
Оформити і захистити звіт про практичну роботу.
Контрольні питання
1. Що таке складність завдання і на що вона впливає?
2. З яким ресурсом НД пов'язане поняття складності алгоритму?
3. Які властивості завдань визначають клас завдань, що вирішуються на ПС загального призначення?
4. Що таке трудомісткість алгоритму?
5. Які параметри визначають трудомісткість алгоритму?
6. Сформулюйте загальні вимоги до моделей обчислювальних процесів?
7. Які параметри визначають дискретний кінцевий марковський ланцюг?
8. Як визначити вірогідність переходів зі стану Si в стан Sj?
Варіанти індивідуальних завдань.
Побудувати Марковську модель довільної програми з циклами.
Побудувати Марковську модель обчислювального процесу, породжуваного алгоритмом, трудомісткість якого характеризується наступними параметрами:
Варіант 1 Варіант 2
q = 100 млн операцій; N1 = 99 звернень до файлу F1; N2 = 180 звернень до файлу F2;
N3 =30 звернень до файлу F3.
q1 = 1000 байт; q2 = 500 байт за звернення до файлу;
q3 = 800 байт за одне звернення до файлу.
q = 300 млн операцій; N1 = 130 звернень до файлу F1; N2 = 120 звернень до файлу F2;
N3 =40 звернень до файлу F3.
q1 = 5000 байт; q2 = 800 байт за звернення до файлу;
q3 = 700 байт за одне звернення до файлу.
