
- •Сеть дорог можно представить в виде графа с положительными весами. Вершины
- •ПОИСК В ГРАФАХ
- •ПОИСК В ГРАФАХ
- •Кратчайшим путем между двумя вершинами s и d в сети называется такой направленный
- •Задаа́ча о кратчаа́йшем пути— задача́
- •ПОИСК КРАТЧАЙЧЕГО ПУТИ В
- •Существуют различные постановки задачи о кратчайшем пути:
- •кратчайший путь (А,B,D,F)
- •Алгоритм Дейкстры
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальныхмаршрутов на графе S
- •S повтор
- •Пример
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •. Поиск оптимальных маршрутов на графе
- •Алгоритм
- •• Алгоритм Джонсона — позволяет найти кратчайшие пути между всеми парами вершин взвешенного
- •Такая весовая функция строится с помощью так называемой потенциальной функции
- •Задача о кратчайшем пути - задача поиска самого короткого пути (цепи) между двумя
- •ПОСТАНОВКА ЗАДАЧИ: Дано
- •Эта задача называется иногда задачей двухпроцессорного обслуживания задач, или задачей Джонсона (по имени
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Тем самым, мы :
- •Можно упростить сортировку.
- •Тем самым мы получаем другую форму алгоритма: отсортировать детали по минимуму из
- •Повтор
- •Повтор Алгоритм Джонсона
- •ПРИМЕР
- •ОБОЗНАЧЕНИЯ ДЛЯ ФОРМАЛЬНОЙ ПОСТАНОВКИ ЗАДАЧИ
- •Формальная постановка задачи
- •Алгоритм решения задачи Джонсона (первые 6 шагов)
- •Алгоритм Джонсона. Задача о двух станках
- •Пример. Пусть информация о времени обработки задана таблицей:
- •В итоге упорядоченная информация принимает вид
- •Время простоя второй машины (сотрудника/тестировщика) при первичном порядке равно:
- •Пример . Пусть информация о
- •Самостоятельно
- •Задача распределения работы между сотрудниками
- •Решение
- •Рассчитываем общие затраты времени на
- •Данные заносим в табл:
- •Распределение задач по командам/сотрудникам
- •Построим диаграмму Ганта
- •Построим диаграмму Ганта
- •Тогда имеем

В итоге упорядоченная информация принимает вид
2 |
3 |
1 |
4 |
6 |
3 |
6 |
8 |
5 |
9 |
7 |
6 |
9 |
5 |
4 |
8 |
3 |
2 |
я простоя при оптимальной перестановке равно:
max(2 , 2 + 4 - 3 , 2 + 4 + 6 - 3 - 6 , 2 + 4 + 6 + 9 - 3 - 6 - 8 , 2 + 4 + 6 + 9 + 9 - 3 - 6 - 8 - 7 , 2 + 4 + 6 + 9 + 9 + 8 - 3 - 6 - 8 - 7 - 5 ) = max(2, 3, 3, 4, 6, 9) = 9

Время простоя второй машины (сотрудника/тестировщика) при первичном порядке равно:
max(2 , 2 + 8 - 3 , 2 + 8 + 4 - 3 - 3 , 2 + 8 + 4 + 9 - 3 - 3 - 6 , 2 + 8 + 4 + 9 + 6 - 3 - 3 - 6 - 5 , 2 + 8 + 4 + 9 + 6 + 9 - 3 - 3 - 6 - 5 - 8 ) =
max(2, 7, 8, 11, 12, 13) = 13
2 3
8 3
4 6
9 5
68
9 7

Пример . Пусть информация о
времени обработки задач задана таблицей
1 |
6 |
3 |
2 |
8 |
5 |
3 |
4 |
5 |
4 |
4 |
2 |
5 |
5 |
8 |
6 |
8 |
4 |

Самостоятельно
1 63
2 85
3 45
4 42
5 58 6
84
- |
- |
- |
- |
4 |
5 |
4 |
5 |
4 |
5 |
4 |
5 |
4 |
5 |
- |
- |
- |
- |
- |
- |
- |
- |
5 |
8 |
5 |
8 |
5 |
8 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
8 |
5 |
8 |
5 |
- |
- |
- |
- |
- |
- |
8 |
4 |
8 |
4 |
8 |
4 |
8 |
4 |
- |
- |
6 3 |
6 |
3 |
6 |
3 |
6 |
3 |
6 |
3 |
6 |
3 |
|
4 |
2 |
4 |
2 |
4 |
2 |
4 |
2 |
4 |
2 |
4 |
2 |
4 |
2 |
Время простоя второй машины при первичном порядке равно: max(6 , 6 + 8 - 3 , 6 + 8 + 4 - 3 - 5 , 6 + 8 + 4 + 4 - 3 - 5 - 5 , 6 + 8 + 4
+4 + 5 - 3 - 5 - 5 - 2 , 6 + 8 + 4 + 4 + 5 + 8 - 3 - 5 - 5 - 2 - 8 ) = max(6, 11, 10, 9, 12, 12) = 12 Время простоя при оптимальной перестановке равно:
max(4 , 4 + 5 - 5 , 4 + 5 + 8 - 5 - 8 , 4 + 5 + 8 + 8 - 5 - 8 - 5 , 4 + 5 + 8
+8 + 6 - 5 - 8 - 5 - 4 , 4 + 5 + 8 + 8 + 6 + 4 - 5 - 8 - 5 - 4 - 3 ) = max(4,
Задача распределения работы между сотрудниками
Надо выполнить четыре проекта:
проект 1 – 100 задач, проект 2 – 200 задач, проект 3 – 50 задач, проект 4 – 75 задач.
Задачи любого проекта может выполнить любой из четырех сотрудников/команд А, В, С, Д.
Время выполнения проектов разное.
Каждый сотрудник/команда обладает ограниченным ресурсом времени выполнения проектов.
Проект должен быть выполнен одной командой.
Решение
Введем следующие обозначения: N – номер проекта;
V – объем проекта (количество задач проекта);
tik – норматив выполнения i-й задачи k-им сотрудником/командой;
Tik – общие затраты времени на i-го проект при его выполнении k-ой командой;
Rk – ресурс времени k-го сотрудника/команды;
• Pk – использованное время k-ой командой.
Строим таблицу в которую заносим данные (табл. ниже).

№ |
V |
tiA TiA IiA |
tiB TiB IiB tiC TiC IiC |
Ti |
|
tiД Д IiД |
|||||
1 |
10 |
1 |
0,6 |
0,8 |
1,3 |
0 |
7 |
3 |
|||
2 |
20 |
2 |
1 |
0,9 |
1,7 |
0 |
|||||
3 |
50 |
2 |
1,3 |
1 |
2,5 |
3 |
|||||
4 |
75 |
1 |
0,8 |
0,6 |
1,2 |
7 |
5 |
||||
Rk |
|
80 |
15 |
25 |
10 |
|
0 |
0 |
0 |

Рассчитываем общие затраты времени на
Рассчитываем индикатор Iik следующим образом: команде
имеющему наибольший норматив tik присваивается значение индикатора равное 1,
для остальных команд индикатор рассчитывается по формуле:

Данные заносим в табл:
№ |
V |
tiA TiA |
IiA |
tiB |
TiB |
IiB |
tiC |
TiC |
IiC |
tiД |
TiД |
IiД |
|
1 |
10 |
1 |
10 |
1,3 |
0,6 |
149, |
1,9 |
0,8 |
125, |
1,6 |
1,3 |
75,2 |
1 |
0 |
0 |
3 |
7 |
3 |
9 |
0 |
6 |
3 |
|||||
2 |
20 |
2 |
10 |
1 |
1 |
200, |
2,0 |
0,9 |
222, |
2,2 |
1,7 |
117, |
1,1 |
0 |
0 |
0 |
0 |
2 |
2 |
6 |
8 |
||||||
3 |
50 |
2 |
25 |
1,2 |
1,3 |
37,6 |
1,8 |
1 |
50,0 |
2,5 |
2,5 |
20,0 |
1 |
5 |
3 |
8 |
0 |
||||||||||
4 |
75 |
1 |
75 |
1,2 |
0,8 |
93,8 |
1,5 |
0,6 |
111, |
1,8 |
1,2 |
60,0 |
1 |
5 |
6 |
7 |
9 |
7 |
5 |
||||||||
Rk |
|
|
80 |
|
|
150 |
|
|
250 |
|
|
100 |
|
Pk |
|
|
75 |
|
|
0 |
|
|
222 |
|
|
95,2 |
|
Распределение задач по командам/сотрудникам
происходит следующим образом: проект отдается
команде с минимальным значением индикатора при условии, что команда имеет достаточный ресурс времени.
В примере проекты распределились следующим образом:
•проект1 команде /сотруднику Д
•проект2 команде /сотруднику С
•проект3 команде /сотруднику Д
•проект4 команде /сотруднику А
