Классификация задач — различия между версиями
Shagal (обсуждение | вклад)  | 
				м (rollbackEdits.php mass rollback)  | 
				||
| (не показаны 24 промежуточные версии 9 участников) | |||
| Строка 1: | Строка 1: | ||
==Нотация Грэхема==  | ==Нотация Грэхема==  | ||
| − | <tex> \alpha   | + | <tex> \alpha \mid \beta \mid \gamma </tex>  | 
Поле <tex> \alpha </tex> описывает тип обработки. Задается одним значением.  | Поле <tex> \alpha </tex> описывает тип обработки. Задается одним значением.  | ||
| Строка 11: | Строка 11: | ||
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Одна машина''' (Single machine, ''  | + | '''Одна машина''' (англ. ''Single machine'', ''<tex>1</tex>''). В системе находится одна машина.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Параллельные одинаковые машины''' (Parallel and Identical Machines,   | + | '''Параллельные одинаковые машины''' (англ. ''Parallel and Identical Machines'', ''<tex>P_{m}</tex>''). В системе находится <tex>m</tex> одинаковых машин, работающих параллельно.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Параллельные однородные машины''' (Uniform Machines,   | + | '''Параллельные однородные машины''' (англ. ''Uniform Machines'', ''<tex>Q_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. У машин разные скорости выполнения работ.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Параллельные несвязанные машины''' (Unrelated Machines,   | + | '''Параллельные несвязанные машины''' (англ. ''Unrelated Machines'', ''<tex>R_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. У машин разные скорости выполнения разных работ.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Job shop''' (  | + | '''Job shop''' (''<tex>J_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. У каждой работы свой упорядоченный список машин, на которых они должны быть выполнены.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Flow shop''' (  | + | '''Flow shop''' (''<tex>F_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. Машины упорядочены. Работы должны выполняться сначала на первой машине, потом на второй и так далее до последней.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Open shop''' (  | + | '''Open shop''' (''<tex>O_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. Каждая работа должна быть выполнена один раз на каждой машине. Порядок не важен}}  | 
==Характеристики работ==  | ==Характеристики работ==  | ||
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Время работы''' (Processing time, <tex>p_{i,j}</tex>) Если работа j выполняется на машине i, то <tex>p_{i,j}</tex> является временем обработке работы j на машине i}}  | + | '''Время работы''' (англ. ''Processing time'', ''<tex>p_{i,j}</tex>''). Если работа <tex>j</tex> выполняется на машине <tex>i</tex>, то <tex>p_{i,j}</tex> является временем обработке работы <tex>j</tex> на машине <tex>i</tex>}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Время появления''' (Release date, <tex>r_{j}</tex>) <tex>  | + | '''Время появления''' (англ. ''Release date'', ''<tex>r_{j}</tex>'') является временем появления в системе работы <tex>j</tex>, минимальное время в которое можно начать обработку работы <tex>j</tex>}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Время окончания''' (Due date, <tex>d_{j}</tex>) <tex>  | + | '''Время окончания''' (англ. ''Due date'', ''<tex>d_{j}</tex>'') является временем до которого ожидается выполнения работы <tex>j</tex>. Если работа <tex>j</tex> была выполнена после <tex>d_{j}</tex>, то налагается штраф}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Дедлайн''' (Deadline, <tex>d_{j}</tex>)   | + | '''Дедлайн''' (англ. ''Deadline'', ''<tex>d_{j}</tex>'') {{---}} тоже самое что и время окончания, но после дедлайна выполнять работу нельзя.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Вес''' (  | + | '''Вес''' (англ. ''Weight'', ''<tex>w_{j}</tex>'') {{---}} величина, отражающая значение работы <tex>j</tex>.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Прерывание''' (Preemption, <tex>pmtn</tex>) Работа может быть прервана и продолжена позже.}}  | + | '''Прерывание''' (англ. ''Preemption'', ''<tex>pmtn</tex>''). Работа может быть прервана и продолжена позже.}}  | 
| + | |||
| + | ==Зависимость между работами==  | ||
| + | Работа может начаться только после выполнения некоторых других работ. Зависимость между работами может быть представлена в виде [[Основные определения теории графов#oriented_grath|ориентированного графа]]. При этом каждой вершине сопоставляется работа таким образом, что если <tex>i</tex> выполняется перед <tex>j</tex>, то существует ребро из вершины <tex>i</tex> в <tex>j</tex>.  | ||
| + | |||
| + | {{Определение  | ||
| + | |definition =  | ||
| + | '''Prec''' {{---}} произвольный ациклический граф зависимостей.  | ||
| + | }}  | ||
| + | |||
| + | {{Определение  | ||
| + | |definition =  | ||
| + | '''Chains''' {{---}} ациклический граф зависимостей, причём в каждую вершину входит не более одного ребра и выходит не более одного ребра.  | ||
| + | }}  | ||
{{Определение  | {{Определение  | ||
| + | |id = intree  | ||
|definition =  | |definition =  | ||
| − | '''  | + | '''Intree''' {{---}} дерево зависимостей, из каждой вершины которого выходит не более одного ребра.  | 
| − | + | }}  | |
| − | |||
| − | |||
| − | |||
| + | {{Определение  | ||
| + | |definition =  | ||
| + | '''Outtree''' {{---}} дерево зависимостей, в каждую вершину которого входит не более одного ребра.  | ||
| + | }}  | ||
==Критерий оптимизации==  | ==Критерий оптимизации==  | ||
| Строка 76: | Строка 91: | ||
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Цель оптимизации''' минимизировать   | + | '''Цель оптимизации''' {{---}} минимизировать тот или иной критерий.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | + | <tex> {-} </tex> (англ. ''None''). Цель {{---}} просто сделать.}}  | |
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''  | + | '''Время окончания работы''' (англ. ''Completion time'', ''<tex>C_{j}</tex>'') {{---}} время окончания обработки работы <tex>j</tex>.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''Опоздание''' (  | + | '''Опоздание''' (англ. ''Lateness'', ''<tex>L_{j}</tex>''). <tex>L_{j} = C_{j} - d_{j}</tex>.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''  | + | '''Медлительность''' (англ. ''Tardiness'', ''<tex>T_{j}</tex>''). <tex>T_{j} = \max(L_{i}, 0)</tex>.}}  | 
{{Определение  | {{Определение  | ||
|definition =  | |definition =  | ||
| − | '''  | + | '''Штраф''' (англ. ''Unit penalty'', ''<tex>U_{j}</tex>''). Если <tex>C_{j} > d_{j}</tex>, то <tex>U_{j} = 1</tex>, иначе <tex>U_{j} = 0</tex>. }}  | 
| − | ==Источники==  | + | |
| + | ==См. также==  | ||
| + | *[[Методы решения задач теории расписаний]]  | ||
| + | *[[Правило Лаулера]]  | ||
| + | |||
| + | ==Источники информации==  | ||
*[http://books.google.ru/books?id=MAY1ZstmGPkC&dq=HandBook+of+Scheduling&hl=ru&sa=X&ei=O8PMT8nYEKjh4QTKgsHsBw&ved=0CDMQ6AEwAA Handbook of scheduling: algorithms, models, and performance analysis, Joseph Y-T. Leung ]  | *[http://books.google.ru/books?id=MAY1ZstmGPkC&dq=HandBook+of+Scheduling&hl=ru&sa=X&ei=O8PMT8nYEKjh4QTKgsHsBw&ved=0CDMQ6AEwAA Handbook of scheduling: algorithms, models, and performance analysis, Joseph Y-T. Leung ]  | ||
*[http://books.google.ru/books?id=FrUytMqlCv8C&printsec=frontcover&dq=scheduling+algorithms&hl=ru&sa=X&ei=0MPMT4HqKYSk4gSBm6gp&sqi=2&ved=0CDEQ6AEwAA#v=onepage&q=scheduling%20algorithms&f=false Scheduling Algorithms, Peter Brucker]  | *[http://books.google.ru/books?id=FrUytMqlCv8C&printsec=frontcover&dq=scheduling+algorithms&hl=ru&sa=X&ei=0MPMT4HqKYSk4gSBm6gp&sqi=2&ved=0CDEQ6AEwAA#v=onepage&q=scheduling%20algorithms&f=false Scheduling Algorithms, Peter Brucker]  | ||
| + | |||
| + | [[Категория:Алгоритмы и структуры данных]]  | ||
| + | [[Категория:Теория расписаний]]  | ||
Текущая версия на 19:39, 4 сентября 2022
Содержание
Нотация Грэхема
Поле описывает тип обработки. Задается одним значением.
Поле описывает характеристики работ. Задает параметры работ, и то, какими свойствами должно обладает расписание.
Поле описывает критерий оптимизации. Содержит функцию, которую нужно оптимизировать.
Типы обработки
| Определение: | 
| Одна машина (англ. Single machine, ). В системе находится одна машина. | 
| Определение: | 
| Параллельные одинаковые машины (англ. Parallel and Identical Machines, ). В системе находится одинаковых машин, работающих параллельно. | 
| Определение: | 
| Параллельные однородные машины (англ. Uniform Machines, ). В системе находится машин, работающих параллельно. У машин разные скорости выполнения работ. | 
| Определение: | 
| Параллельные несвязанные машины (англ. Unrelated Machines, ). В системе находится машин, работающих параллельно. У машин разные скорости выполнения разных работ. | 
| Определение: | 
| Job shop (). В системе находится машин, работающих параллельно. У каждой работы свой упорядоченный список машин, на которых они должны быть выполнены. | 
| Определение: | 
| Flow shop (). В системе находится машин, работающих параллельно. Машины упорядочены. Работы должны выполняться сначала на первой машине, потом на второй и так далее до последней. | 
| Определение: | 
| Open shop (). В системе находится машин, работающих параллельно. Каждая работа должна быть выполнена один раз на каждой машине. Порядок не важен | 
Характеристики работ
| Определение: | 
| Время работы (англ. Processing time, ). Если работа выполняется на машине , то является временем обработке работы на машине | 
| Определение: | 
| Время появления (англ. Release date, ) является временем появления в системе работы , минимальное время в которое можно начать обработку работы | 
| Определение: | 
| Время окончания (англ. Due date, ) является временем до которого ожидается выполнения работы . Если работа была выполнена после , то налагается штраф | 
| Определение: | 
| Дедлайн (англ. Deadline, ) — тоже самое что и время окончания, но после дедлайна выполнять работу нельзя. | 
| Определение: | 
| Вес (англ. Weight, ) — величина, отражающая значение работы . | 
| Определение: | 
| Прерывание (англ. Preemption, ). Работа может быть прервана и продолжена позже. | 
Зависимость между работами
Работа может начаться только после выполнения некоторых других работ. Зависимость между работами может быть представлена в виде ориентированного графа. При этом каждой вершине сопоставляется работа таким образом, что если выполняется перед , то существует ребро из вершины в .
| Определение: | 
| Prec — произвольный ациклический граф зависимостей. | 
| Определение: | 
| Chains — ациклический граф зависимостей, причём в каждую вершину входит не более одного ребра и выходит не более одного ребра. | 
| Определение: | 
| Intree — дерево зависимостей, из каждой вершины которого выходит не более одного ребра. | 
| Определение: | 
| Outtree — дерево зависимостей, в каждую вершину которого входит не более одного ребра. | 
Критерий оптимизации
| Определение: | 
| Цель оптимизации — минимизировать тот или иной критерий. | 
| Определение: | 
| (англ. None). Цель — просто сделать. | 
| Определение: | 
| Время окончания работы (англ. Completion time, ) — время окончания обработки работы . | 
| Определение: | 
| Опоздание (англ. Lateness, ). . | 
| Определение: | 
| Медлительность (англ. Tardiness, ). . | 
| Определение: | 
| Штраф (англ. Unit penalty, ). Если , то , иначе . |