Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2.2.Параллельные машины.Полиномиально разрешимые задачи

.pdf
Скачиваний:
27
Добавлен:
28.03.2016
Размер:
821.33 Кб
Скачать

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Задачи Q|| °Cj è Q|pj 1| °wjCj

Док.-во Теоремы 3 подсказывает метод решения Q|| ° Cj. Пусть

si производительность Mi,

J i мн.-во работ, выполняющихся на Mi, ni |J i| количество работ на Mi,

pi1; pi2; : : : ; pini длит.-сти (нормативные) работ из J i â порядке вып. на Mi.

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Вклад работ из J i

в целевую функцию равен:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

ni

 

 

 

 

 

 

 

Cj

 

 

 

p1i

pp1i

p2i q

 

pji

 

 

 

 

 

 

 

 

 

 

 

 

 

 

¸P

i

 

 

si

 

 

 

 

 

 

 

 

 

j¸1

 

 

 

 

 

Jj J

 

 

 

 

ni

 

 

 

ni 1

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

p1i

 

p2i

 

 

 

pni i :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

si

 

 

 

si

 

 

 

 

 

 

si

 

 

 

 

Сам функционал:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

m

 

 

 

 

 

 

m

 

ni

 

 

 

 

ni 1

 

 

 

 

 

1

 

 

 

 

Cj

 

 

Cj

 

p1i

 

p2i

 

 

pni i :

 

 

 

 

 

 

 

 

j¸1

i¸1

¸P

i

 

 

i¸1 si

 

 

 

si

 

 

 

si

 

 

 

 

 

Jj J

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Каждая величина pj входит в эту сумму с коэффициентом

k

 

si

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Jj назначена на Mi и вып. k-ой с конца.

По Лемме 1, длинным работам должны соответствовать маленькие коэффициенты.

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Algorithm 4 (Решения Q|| ° Cj)

1:Упорядочим работы по невозрастанию величин pj.

2:В ряду из mn элементов

 

1

;

2

; : : : ;

n

;

1

;

2

; : : : ;

n

; : : : ;

1

;

2

; : : : ;

n

 

 

 

 

 

 

 

 

sm

s1

s1

s1

s2

s2

s2

sm

sm

выбрать n наименьших (упор. их по неубыванию):

 

k1

¤

k2

¤ : : :

 

kj

¤ : : :

kn

:

 

 

 

 

 

 

si1

 

si2

 

sij

sin

3: Назначить работу Jj

íà Mij

kj-ой с конца.

 

 

 

 

 

 

 

 

 

 

 

 

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

числители принимают все значения

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Теорема 5

Алгоритм 4 строит решение Q|| ° Cj ñ òðóä. Opnm lnpnmqq.

Доказательство. Очевидно.

Заметим только, что в ряду наименьших коэффициентов у дробей со знаменателем si

от 1 до некоторого ni (без пропусков), поэтому назначение корректно.

Замечание 2

Подобным образом можно решить Q|pj 1| ° wjCj.

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Пример

Решим задачу Q|| ° Cj с параметрами: n 6, p p16; 12; 8; 8; 6; 4q.

m 3, s p1; 2; 4q.

Ищем 6 наименьших в ряду

11; 21; 31; 41; 51; 61; 12; 22; 32; 42; 52; 62; 14; 24; 34; 44; 54; 64:

Упорядочим: 14 ; 12 ; 24 ; 34 ; 11 ; 22 Расписание:

 

M1

 

 

 

J5: 6/1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

M1

: J5,

 

 

 

 

 

 

 

 

 

 

 

M2

J6

: 4/2

 

 

J2: 12/2

 

M2

: J6 Ñ J2,

 

 

 

 

 

 

 

 

 

 

 

M3

J4

: 8/4

J3: 8/4

 

J1: 16/4

 

M3 : J4 Ñ J3 Ñ J1.

 

 

 

 

 

 

 

 

 

 

0

 

 

2

 

4

 

6

 

8

 

 

 

 

 

 

 

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Задача R|| °Cj

Пусть

pij время обработки Jj íà Mi,

J i tJi1 ; Ji2 ; : : : u упор. мн.-во работ, вып. на Mi, ni |J i| количество работ на Mi.

Вклад работ из J i в целевую функцию равен:

 

 

 

 

Cj ni

pi;i1 pni 1q pi;i2

1 pi;in

 

:

Jj¸PJ i

 

 

 

 

 

i

 

 

 

 

 

 

 

Сама целевая функция:

 

 

 

 

 

n

m

 

 

m ni

 

 

 

 

Cj

 

Cj

pi;ik pni k 1q:

 

j¸1

i¸1

¸P

i

i¸1 k¸1

 

 

 

 

 

Jj J

 

 

 

 

 

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Èäåÿ: сведем к задаче о назначениях.

Каждая работа может быть назначена в одну из nm позиций: быть k-ой с конца на машине Mi.

xj;pkiq " 1; åñëè Jj в позиции pk; iq 0; иначе.

Здесь k P t1; : : : ; nu, i P t1; : : : ; mu, j P t1; : : : ; nu.

При назначении Jj в pk; iq ц.ф. увеличивается на kpij. Задача принимает вид:

xj;pkiq kpij Ñ min;

$ i;j;k°

 

txu

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'

 

xj;pkiq 1; @j

&

 

i;k°

 

 

xj;pkiq ¤ 1; @k@i:

'

 

°j

 

xj;pkiq P t0; 1u @j@k@i:

%

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тахонов

Иван Иванович

Параллельные машины. Точное решение задач

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Полиномиально разрешимые задачи

Кратчайшее расписание с прерываниями

Псевдополином. точные алгоритмы

Суммарное взвешенное время прохождения работ

 

 

Теорема 6

Существует алгоритм, строящий решение R|| ° Cj ñ трудоемкостью Opn3mq.

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Минимизация длины расписания

Псевдополином. точные алгоритмы

Суммарное взвешенное время завершения работ

 

 

Псевдополиномиальные точные алгоритмы для

P m Cmax è P m °wjCj

Тахонов Иван Иванович

Параллельные машины. Точное решение задач

 

 

Полиномиально разрешимые задачи

Минимизация длины расписания

Псевдополином. точные алгоритмы

Суммарное взвешенное время завершения работ

 

 

Динамическое программирование для P m||Cmax

Пусть

 

 

C некоторая верхняя оценка на длину оптимального

расписания. Например,

 

n

 

pj.

C

 

 

j°1

Введем функции:

 

 

1;

D допуст. расп. для tJ1; : : : ; Jju;

Fjpt1; t2; : : : ; tmq &$

в котором Mi освобождается в ti;

0

иначе.

%

Вычислим значения Fj äëÿ âñåõ j ¤ n è ti ¤ C, а затем среди всех единиц функции Fn выберем ту, у которой наименьшая максимальная координата.

Тахонов Иван Иванович

Параллельные машины. Точное решение задач