Optprob/Планирование задач с приоритетом и временами перенастройки — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) м (StasFomin переименовал страницу Optprob/Планирование задач с приоритетом и временами настройки в [[Optprob/Планирование задач с приоритетом и вре…) |
StasFomin (обсуждение | вклад) |
||
Строка 2: | Строка 2: | ||
{{checked|}} | {{checked|}} | ||
− | Пусть имеется набор из n= | + | Пусть имеется набор из n=10 производственных задач. |
Каждая задача имеет время выполнения. | Каждая задача имеет время выполнения. | ||
+ | |||
{| class=wikitable | {| class=wikitable | ||
Строка 18: | Строка 19: | ||
| 9 | | 9 | ||
| 10 | | 10 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | | + | | |
| 14 | | 14 | ||
| 25 | | 25 | ||
Строка 39: | Строка 30: | ||
| 11 | | 11 | ||
| 18 | | 18 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
Надо составить график выполнения заданий на производственном станке. | Надо составить график выполнения заданий на производственном станке. | ||
Для этого устанавливаются n позиций в последовательности обработки, так что каждая задача должна быть назначена на позицию. | Для этого устанавливаются n позиций в последовательности обработки, так что каждая задача должна быть назначена на позицию. | ||
− | |||
Строка 80: | Строка 60: | ||
| 7 | | 7 | ||
| 1 | | 1 | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 10 | | 10 | ||
| 5 | | 5 | ||
| 8 | | 8 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
− | |||
* Между задачами нужна перенастройка станка. Если задача i находится на позиции k, а задача j — на позиции k + 1, добавляется дополнительное машинное время, s_ij. | * Между задачами нужна перенастройка станка. Если задача i находится на позиции k, а задача j — на позиции k + 1, добавляется дополнительное машинное время, s_ij. | ||
− | {{WikiCutBegin|матрица | + | {{WikiCutBegin|матрица 10×10}} |
{| class=wikitable | {| class=wikitable | ||
|- | |- | ||
Строка 123: | Строка 82: | ||
| 9 | | 9 | ||
| 10 | | 10 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 1 | | 1 | ||
− | | | + | | |
| 1 | | 1 | ||
| 2 | | 2 | ||
Строка 143: | Строка 92: | ||
| 6 | | 6 | ||
| 7 | | 7 | ||
− | | | + | | 8 |
− | | | + | | 9 |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 2 | | 2 | ||
Строка 167: | Строка 106: | ||
| 0 | | 0 | ||
| 9 | | 9 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 3 | | 3 | ||
Строка 182: | Строка 111: | ||
| 1 | | 1 | ||
| 0 | | 0 | ||
− | |||
− | |||
| 2 | | 2 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 3 | | 3 | ||
| 4 | | 4 | ||
− | | | + | | 5 |
+ | | 6 | ||
+ | | 7 | ||
+ | | 8 | ||
|- | |- | ||
| 4 | | 4 | ||
Строка 208: | Строка 127: | ||
| 2 | | 2 | ||
| 2 | | 2 | ||
− | | | + | | 13 |
− | | | + | | 12 |
− | | | + | | 11 |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 5 | | 5 | ||
| 4 | | 4 | ||
| 1 | | 1 | ||
− | | | + | | 10 |
− | | | + | | 20 |
| 0 | | 0 | ||
| 2 | | 2 | ||
Строка 233: | Строка 142: | ||
| 2 | | 2 | ||
| 2 | | 2 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 6 | | 6 | ||
| 4 | | 4 | ||
− | | | + | | 15 |
| 6 | | 6 | ||
| 3 | | 3 | ||
Строка 252: | Строка 151: | ||
| 0 | | 0 | ||
| 1 | | 1 | ||
+ | | 10 | ||
| 1 | | 1 | ||
− | | | + | | 20 |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
| 7 | | 7 | ||
Строка 277: | Строка 166: | ||
| 1 | | 1 | ||
| 0 | | 0 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 8 | | 8 | ||
Строка 299: | Строка 178: | ||
| 1 | | 1 | ||
| 2 | | 2 | ||
− | | | + | |- |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
| 9 | | 9 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
| 9 | | 9 | ||
− | |||
| 1 | | 1 | ||
| 1 | | 1 | ||
Строка 320: | Строка 189: | ||
| 4 | | 4 | ||
| 0 | | 0 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 3 | | 3 | ||
|- | |- | ||
| 10 | | 10 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 8 | | 8 | ||
− | |||
− | |||
− | |||
− | |||
| 2 | | 2 | ||
− | |||
| 4 | | 4 | ||
− | |||
− | |||
| 4 | | 4 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 4 | | 4 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 4 | | 4 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
| 4 | | 4 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 4 | | 4 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 7 | | 7 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| 0 | | 0 | ||
|} | |} |
Версия 13:24, 27 ноября 2022
Пусть имеется набор из n=10 производственных задач.
Каждая задача имеет время выполнения.
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
14 | 25 | 10 | 13 | 18 | 7 | 9 | 11 | 18 |
Надо составить график выполнения заданий на производственном станке. Для этого устанавливаются n позиций в последовательности обработки, так что каждая задача должна быть назначена на позицию.
Кроме того:
- Между задачами существуют условные прецеденты: Задача i должна быть обработана после j, если задача t была обработана до i. Это собрано в бинарном атрибуте A_ijt.
I | j | t |
1 | 2 | 3 |
4 | 6 | 3 |
3 | 10 | 8 |
8 | 7 | 1 |
10 | 5 | 8 |
- Между задачами нужна перенастройка станка. Если задача i находится на позиции k, а задача j — на позиции k + 1, добавляется дополнительное машинное время, s_ij.
матрица 10×10
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
2 | 1 | 0 | 2 | 2 | 2 | 2 | 1 | 1 | 0 | 9 |
3 | 1 | 1 | 0 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
4 | 2 | 2 | 3 | 0 | 1 | 2 | 2 | 13 | 12 | 11 |
5 | 4 | 1 | 10 | 20 | 0 | 2 | 1 | 1 | 2 | 2 |
6 | 4 | 15 | 6 | 3 | 0 | 0 | 1 | 10 | 1 | 20 |
7 | 1 | 2 | 2 | 2 | 0 | 0 | 0 | 1 | 1 | 0 |
8 | 1 | 3 | 3 | 3 | 0 | 0 | 0 | 0 | 1 | 2 |
9 | 9 | 1 | 1 | 1 | 4 | 3 | 3 | 4 | 0 | 3 |
10 | 8 | 2 | 4 | 4 | 4 | 4 | 4 | 4 | 7 | 0 |
Цель задачи — минимизировать общее время производства.