- •Сеть дорог можно представить в виде графа с положительными весами. Вершины
- •ПОИСК В ГРАФАХ
- •ПОИСК В ГРАФАХ
- •Кратчайшим путем между двумя вершинами s и d в сети называется такой направленный
- •Задаа́ча о кратчаа́йшем пути— задача́
- •ПОИСК КРАТЧАЙЧЕГО ПУТИ В
- •Существуют различные постановки задачи о кратчайшем пути:
- •кратчайший путь (А,B,D,F)
- •Алгоритм Дейкстры
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальныхмаршрутов на графе S
- •S повтор
- •Пример
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе
- •. Поиск оптимальных маршрутов на графе
- •Алгоритм
- •• Алгоритм Джонсона — позволяет найти кратчайшие пути между всеми парами вершин взвешенного
- •Такая весовая функция строится с помощью так называемой потенциальной функции
- •Задача о кратчайшем пути - задача поиска самого короткого пути (цепи) между двумя
- •ПОСТАНОВКА ЗАДАЧИ: Дано
- •Эта задача называется иногда задачей двухпроцессорного обслуживания задач, или задачей Джонсона (по имени
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Построение алгоритма
- •Тем самым, мы :
- •Можно упростить сортировку.
- •Тем самым мы получаем другую форму алгоритма: отсортировать детали по минимуму из
- •Повтор
- •Повтор Алгоритм Джонсона
- •ПРИМЕР
- •ОБОЗНАЧЕНИЯ ДЛЯ ФОРМАЛЬНОЙ ПОСТАНОВКИ ЗАДАЧИ
- •Формальная постановка задачи
- •Алгоритм решения задачи Джонсона (первые 6 шагов)
- •Алгоритм Джонсона. Задача о двух станках
- •Пример. Пусть информация о времени обработки задана таблицей:
- •В итоге упорядоченная информация принимает вид
- •Время простоя второй машины (сотрудника/тестировщика) при первичном порядке равно:
- •Пример . Пусть информация о
- •Самостоятельно
- •Задача распределения работы между сотрудниками
- •Решение
- •Рассчитываем общие затраты времени на
- •Данные заносим в табл:
- •Распределение задач по командам/сотрудникам
- •Построим диаграмму Ганта
- •Построим диаграмму Ганта
- •Тогда имеем
ОБОЗНАЧЕНИЯ ДЛЯ ФОРМАЛЬНОЙ ПОСТАНОВКИ ЗАДАЧИ
-начало обработки i –ой детали на станке А;
-завершение обработки i –ой детали на станке А;
-начало обработки i –ой детали на станке В.
-завершение обработки i –ой детали на станке В;
-время обработки i –ой детали на станке А;
-время обработки i –ой детали на станке В;
Формальная постановка задачи
max max tiK,C min; - минимизация времени обработки всех партий |
||||
i 1,2,... C A,B |
|
|
||
tiK, A tiH,A |
ti, A ; i 1,2,..., n; |
- время обработки i - ой партии деталей на станке А; |
||
|
|
ti,B ; i 1,2,..., n; |
- время обработки i - ой партии деталей на станке В |
|
tiK,B tiH,B |
||||
|
i j,tiH,B |
tiK, A ; - последоват ельность обработки i й партии на станках А и В |
||
|
||||
|
H |
H |
|
|
|
i j,ti,C |
t j,C ;C A, B |
|
|
|
i j,tiH,C t Hj,C tiK,C t Hj,C ;C A, B; |
|||
|
|
|
|
|
|
i,tiH,C 0;tiK,C 0;C A, B. - неотрицательность переменных |
|||
|
|
|
|
|
Задача Джонсона является задачей:
-с непрерывно меняющимися и неотрицательными переменными;
-с минимаксной целевой функцией.
Алгоритм решения задачи Джонсона (первые 6 шагов)
Шаг 1. Ввод числа партий деталей n. Шаг 2. Ввод матрицы М времен обработки
каждой партии на каждом станке. Шаг 3. k = 1.
Шаг 4. q = n.
Шаг 5. Выбор минимального элемента матрицы М: М(p,d).
Шаг 6. Если M(p,d) = ∞, то перейти к шагу 16, в противном случае – к шагу 7.
Алгоритм Джонсона. Задача о двух станках
РЕШЕНИЕ
Пример. Пусть информация о времени обработки задана таблицей:
2 3
8 3
4 6
95
68
9 7
Шаг № 1.
Минимальное из значений соответствует A1: 1-ая задача обрабатывается первой
1 |
2 |
3 |
2 |
8 |
3 |
3 |
4 |
6 |
4 |
9 |
5 |
5 |
6 |
8 |
6 |
9 |
7 |
23
--
--
--
--
- -
Шаг № 2.
|
Минимальное из значений равно 3 и соответствует B2: 2-ая задача обрабатывается |
||||||||
|
последней |
|
|
|
|
2 |
3 |
1 |
|
1 |
2 |
3 |
2 |
3 |
|||||
- |
- |
|
|||||||
2 |
8 |
3 |
- |
- |
|
||||
- |
- |
|
|||||||
3 |
4 |
6 |
|
- |
- |
|
|||
|
|
||||||||
|
|
||||||||
4 |
9 |
5 |
- |
- |
- |
- |
|
||
5 |
6 |
8 |
- |
- |
- |
- |
2 |
||
6 |
9 |
7 |
- |
- |
8 |
3 |
Шаг № 3.
Минимальное из значений соответствует A3: 3-ая деталь обрабатывается первой
2 3
8 3
4 6
9 5
6 8
9 7
2 3
--
--
--
--
- -
2 3 |
2 3 |
1 |
|||
- |
- |
4 6 |
3 |
||
- |
- |
- |
- |
|
|
- |
- |
|
- |
- |
|
|
|
||||
- |
- |
- |
- |
2 |
|
8 3 |
8 3 |
Шаг № 4.
Минимальное из значений равно 5 и соответствует B4: 4-ая деталь обрабатывается последней
2 3
8 3
4 6
9 5
6 8
9 7
2 3
--
--
--
--
- -
2 3 |
2 3 |
2 3 |
1 |
|||||
- |
- |
4 6 |
4 6 |
3 |
||||
- |
- |
- |
- |
|
- |
- |
|
|
- |
- |
|
- |
- |
|
- |
- |
4 |
|
||||||||
|
|
|||||||
- |
- |
- |
- |
9 5 |
||||
8 3 |
8 3 |
8 3 |
2 |
Шаг № 5
Минимальное из значений соответствует A5: 5-ая деталь обрабатывается первой
2 3
8 3
4 6
9 5
6 8
9 7
2 3
--
--
--
--
- -
2 3 |
2 3 |
2 3 |
2 |
3 |
1 |
||||||
- |
- |
4 6 |
4 6 |
4 |
6 |
3 |
|||||
- |
- |
- |
- |
|
- |
- |
6 |
8 |
5 |
||
- |
- |
|
- |
- |
|
- |
- |
|
- |
- |
4 |
|
|
||||||||||
|
|
||||||||||
|
|
|
|||||||||
|
|
|
|||||||||
- |
- |
- |
- |
9 5 |
9 |
5 |
|||||
8 3 |
8 3 |
8 3 |
8 |
3 |
2 |
Шаг № 6
Минимальное из значений равно 7 и соответствует B6: 6-ая деталь обрабатывается последней
2 |
3 |
1 |
4 |
6 |
3 |
6 |
8 |
5 |
9 |
7 |
6 |
9 |
5 |
4 |
8 |
3 |
2 |