Классификация задач — различия между версиями
Shagal (обсуждение | вклад) (Новая страница: «<div style="background-color: #ABCDEF; font-size: 16px; font-weight: bold; color: #000000; text-align: center; padding: 4px; border-style: solid; border-width: 1p...») |
м (rollbackEdits.php mass rollback) |
||
(не показано 27 промежуточных версий 9 участников) | |||
Строка 1: | Строка 1: | ||
− | < | + | ==Нотация Грэхема== |
− | < | + | <tex> \alpha \mid \beta \mid \gamma </tex> |
+ | |||
+ | Поле <tex> \alpha </tex> описывает тип обработки. Задается одним значением. | ||
+ | |||
+ | Поле <tex> \beta </tex> описывает характеристики работ. Задает параметры работ, и то, какими свойствами должно обладает расписание. | ||
+ | |||
+ | Поле <tex> \gamma</tex> описывает критерий оптимизации. Содержит функцию, которую нужно оптимизировать. | ||
+ | |||
+ | ==Типы обработки== | ||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Одна машина''' (англ. ''Single machine'', ''<tex>1</tex>''). В системе находится одна машина.}} | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Параллельные одинаковые машины''' (англ. ''Parallel and Identical Machines'', ''<tex>P_{m}</tex>''). В системе находится <tex>m</tex> одинаковых машин, работающих параллельно.}} | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Параллельные однородные машины''' (англ. ''Uniform Machines'', ''<tex>Q_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. У машин разные скорости выполнения работ.}} | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Параллельные несвязанные машины''' (англ. ''Unrelated Machines'', ''<tex>R_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. У машин разные скорости выполнения разных работ.}} | ||
+ | |||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Job shop''' (''<tex>J_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. У каждой работы свой упорядоченный список машин, на которых они должны быть выполнены.}} | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Flow shop''' (''<tex>F_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. Машины упорядочены. Работы должны выполняться сначала на первой машине, потом на второй и так далее до последней.}} | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Open shop''' (''<tex>O_{m}</tex>''). В системе находится <tex>m</tex> машин, работающих параллельно. Каждая работа должна быть выполнена один раз на каждой машине. Порядок не важен}} | ||
+ | |||
+ | ==Характеристики работ== | ||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Время работы''' (англ. ''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 = | ||
+ | '''Время появления''' (англ. ''Release date'', ''<tex>r_{j}</tex>'') является временем появления в системе работы <tex>j</tex>, минимальное время в которое можно начать обработку работы <tex>j</tex>}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | ''' | + | '''Время окончания''' (англ. ''Due date'', ''<tex>d_{j}</tex>'') является временем до которого ожидается выполнения работы <tex>j</tex>. Если работа <tex>j</tex> была выполнена после <tex>d_{j}</tex>, то налагается штраф}} |
− | |||
− | ''' | ||
− | + | {{Определение | |
− | ''' | + | |definition = |
+ | '''Дедлайн''' (англ. ''Deadline'', ''<tex>d_{j}</tex>'') {{---}} тоже самое что и время окончания, но после дедлайна выполнять работу нельзя.}} | ||
− | + | {{Определение | |
− | + | |definition = | |
+ | '''Вес''' (англ. ''Weight'', ''<tex>w_{j}</tex>'') {{---}} величина, отражающая значение работы <tex>j</tex>.}} | ||
− | <tex> | + | {{Определение |
− | + | |definition = | |
+ | '''Прерывание''' (англ. ''Preemption'', ''<tex>pmtn</tex>''). Работа может быть прервана и продолжена позже.}} | ||
− | <tex> | + | ==Зависимость между работами== |
− | + | Работа может начаться только после выполнения некоторых других работ. Зависимость между работами может быть представлена в виде [[Основные определения теории графов#oriented_grath|ориентированного графа]]. При этом каждой вершине сопоставляется работа таким образом, что если <tex>i</tex> выполняется перед <tex>j</tex>, то существует ребро из вершины <tex>i</tex> в <tex>j</tex>. | |
− | <tex> | ||
− | |||
− | |||
− | + | {{Определение | |
+ | |definition = | ||
+ | '''Prec''' {{---}} произвольный ациклический граф зависимостей. | ||
+ | }} | ||
− | + | {{Определение | |
+ | |definition = | ||
+ | '''Chains''' {{---}} ациклический граф зависимостей, причём в каждую вершину входит не более одного ребра и выходит не более одного ребра. | ||
+ | }} | ||
− | + | {{Определение | |
+ | |id = intree | ||
+ | |definition = | ||
+ | '''Intree''' {{---}} дерево зависимостей, из каждой вершины которого выходит не более одного ребра. | ||
+ | }} | ||
− | + | {{Определение | |
+ | |definition = | ||
+ | '''Outtree''' {{---}} дерево зависимостей, в каждую вершину которого входит не более одного ребра. | ||
+ | }} | ||
− | == | + | ==Критерий оптимизации== |
− | |||
− | |||
− | + | {{Определение | |
+ | |definition = | ||
+ | '''Цель оптимизации''' {{---}} минимизировать тот или иной критерий.}} | ||
− | <tex> | + | {{Определение |
+ | |definition = | ||
+ | <tex> {-} </tex> (англ. ''None''). Цель {{---}} просто сделать.}} | ||
− | <tex> | + | {{Определение |
− | + | |definition = | |
− | + | '''Время окончания работы''' (англ. ''Completion time'', ''<tex>C_{j}</tex>'') {{---}} время окончания обработки работы <tex>j</tex>.}} | |
− | |||
− | |||
− | |||
− | </tex> | ||
− | + | {{Определение | |
+ | |definition = | ||
+ | '''Опоздание''' (англ. ''Lateness'', ''<tex>L_{j}</tex>''). <tex>L_{j} = C_{j} - d_{j}</tex>.}} | ||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Медлительность''' (англ. ''Tardiness'', ''<tex>T_{j}</tex>''). <tex>T_{j} = \max(L_{i}, 0)</tex>.}} | ||
+ | {{Определение | ||
+ | |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=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, | ). Если , то , иначе .