Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!!!Лабораторный практикум ПМ.doc
Скачиваний:
7
Добавлен:
21.08.2019
Размер:
4.97 Mб
Скачать
    1. Питання для захисту роботи

1. Які вам відомі способи завдання неорієнтованого графа. Наведіть приклади?

2. Поняття циклу на графі.

3. Що таке матриці сміжності та матриці інциденції на графах? У якому разі їх доцільно використовувати?

4. У чому полягає алгоритм задачі знаходження економічного дерева?

5. Що таке дерева, ліс на множені вершин?

6. Покривні дерева. Теорема про кількість ребер покривного дерева.

7. Маршрути та ланцюги на графі.

8. Розкрийте алгоритм задачі відшукання найкоротшого ланцюга на графі.

  1. Лабораторне практичне заняття №8 Сіткові графи. Транспортні сітки

8.1. Мета роботи

Сформувати у студентів представлення про застосування орієнтованих графів до розв'язання задач планування за допомогою сіткових графів та знаходження максимального потіку на транспортної мережі.

8.2. Порядок виконання роботи

  1. Вивчити теоретичну частину.

  2. Розглядаючи граф як сітковий графік (із заданими тривалостями робіт), знайти критичний година і критичний шлях на ньому;

  3. Розглядаючи граф як транспортну мережу (ТМ) (із заданими пропускними спроможностями дуг), знайти максимальний потік на ТМ і його розподіл за дугами.

  4. Виконати завдання, що відповідають Вашим індивідуальним даним.

  5. Оформите звіт по лабораторній роботі, що повинний містити:

  • титульний лист;

  • вихідні дані варіанта;

  • рішення задачі;

  • результати рішення задачі.

8.3. Методичні рекомендації

8.3.1. Задача сіткового планування і керування

Припустимо, що визначено комплекс робіт , необхідних для реалізації даного проекту, і множину стадій , де початок, кінець, проміжні події (в залежності від взаємозв’язку робіт). Задачі, в яких ставиться питання про відшукання мінімального часу виконання всіх робіт комплексу , називаються оптимізаційними задачами за критерієм часу. Для розв’язання таких задач на основі теорії графів розроблено спеціальні математичні методи так званого сіткового планування і управління (СПУ).

Орієнтований зв’язний граф без петель і контурів, який відображає природний порядок виконання робіт комплексу в часі, в поєднанні з певними числовими даними – характеристиками проекту, – називається сітковим графіком (СГ) комплексу робіт (даного проекту). У задачах сіткового планування розглядається орграф , де  − множина вершин, а  – множина дуг, у якому виділені дві вершини: (джерело) і (стік). З джерела повинні тільки виходити дуги, а в стік – тільки входити. Орграф повинний бути ациклічним і зі зваженими дугами. Вершини називаються подіями, дуги − роботами; вага дуги − це час виконання даної роботи. Джерело  − це подія-початок роботи над проектом; стік − це подія-закінчення роботи.

Орієнтований зв'язний граф без петель і контурів, який відображає природний порядок виконання робіт комплексові в часі, у поєднанні з певними числовими даними – характеристиками проектові, – називається сітковим графіком (СГ) комплексові робіт (даного проектові).

Функція grPERT вирішує стандартну задачу сіткового планування. Синтаксис виклику:

[Cr,Ts,Td] = grPERT(E) − для ациклического орграфа E (або ) знаходить критичний шлях Cr, час настання кожної події Ts і запас часу для кожної роботи Td.

Вхідний параметр E(m,2) або E(m,3) − список дуг орграфа і їхньої ваги. Перший і другий елементи кожного рядка − це номера вершин дуги (її початок і кінець); третій (якщо він є) − вага дуги (обмеження на пропускну здатність); m − кількість дуг. Якщо ваги не задані, вони вважаються одиничними.

Вихідний параметр Cr ( ) − критичний шлях: вектор-рядок з номерами вершин, що входять у нього.

Вихідний параметр Ts(1,n) − час початку кожної події.

Вихідний параметр Td(m,1) − запас часу для кожної роботи.

Приклад звертання (скопіюйте цей фрагмент у командне вікно або редактор MATLAB):

clear all % очистили пам'ять

V=[1 1;0 0;1 0;1 -1;2 1;2 0;2 -1;3 1;...

4 0;3 -1;3 0]; % координати вершин-подій

E=[2 1 5;2 3 5;2 4 5;1 3 2;3 4 2;1 5 3;...

1 6 2;3 6 5;3 7 2;4 7 3;5 6 1;6 7 1;...

5 8 5;6 8 2;6 11 3;7 11 2;7 10 3;8 11 2;...

11 10 2;8 9 5;11 9 4;10 9 4]; % дуги-роботи і їхні ваги-часи

grPlot(V,E,'d','%d','%d');

set(get(gcf,'CurrentAxes'),...

'FontName','Times New Roman Cyr','FontSize',10) % встановили шрифт

title('\bfсхема проекту')

[Cr,Ts,Td]=grPERT(E); % вирішуємо задачу

grPlot([V Ts'],[Cr(1:end-1);Cr(2:end)]','d','%d','');

set(get(gcf,'CurrentAxes'),...

'FontName','Times New Roman Cyr','FontSize',10) % встановили шрифт

title('\bfкритический шлях і момент кожної події')

grPlot([V Ts'],[E(:,1:2) Td],'d','%d','%d');

set(get(gcf,'CurrentAxes'),...

'FontName','Times New Roman Cyr','FontSize',10) % встановили шрифт

title('\bfмоменти часу подій і можливі затримки часу робіт')

Визначення критичного шляхові зображено на рисунках 8.2. та 8.3.

Рис. 8.1. Схема проекту

Воно здійснюється наступним чином: рухаючись від до , відшукують орланцюг довжини , події якого мають нульовий резерв години (критичні події); це визначає відповідні критичні роботи і критичний шлях у цілому.

Рис. 8.2. Результати підрахунків для визначення критичного часу та критичного шляху СГ

Рис. 8.3. Результати підрахунків для визначення , для різних моментів години

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]