
Мезенцев Имитационное моделирование / Мои вопросы / 2
.docx2. Постановка задачи оптимизации расписаний параллельной системы с задержками поступления заявок
Пусть имеется ряд заявок, которые необходимо распределить между параллельными приборами при известной (различной) производительности таким образом, чтобы минимизировать суммарное время обслуживания всех заявок (минимизировать время окончания работы всей ОС, минимизировать суммарные затраты, либо максимизировать некоторый показатель качества обслуживания заявок). Прерывания обслуживания запрещены. Пусть также известно расписание поступления заявок в параллельную обслуживающую систему. В этом случае необходимо учитывать величины задержек поступления заявок.
Обозначим задержку поступления j-й заявки в ОС через Ʈ0j и упорядочим
В качестве базового рассмотрим линейное обслуживание. Для описания двух других случаев внесем соответствующие корректировки. Построим общую математическую модель, синтезирующую расписания параллельной системы с задержками на входе.
τij имеет смысл фактической задержки начала выполнения j-й заявки i-м прибором после завершения обслуживания им предшествующей заявки. Компенсирующие переменные yi, j вводятся для того, чтобы избежать появления отрицательных задержек τi, j . Действительно, наличие неравенств (1.4), (1.6) гарантируют выполнение условий:
Условия (1.1)–(1.3) характерны для задачи о назначениях.
(1.1) обеспечивают назначения любой заявки только на один прибор;
(1.2)
– назначения не менее
и не более
заявок на любой прибор i.
(1.5)–(1.6) вычисляют фактические задержки обслуживания j-й заявки i-м прибором, после окончания обслуживания им предшествующей заявки. Фактическая задержка- это разность задержки поступления заявки (задается в условии задачи) и суммы времени обслуживания всех предшествующих заявок (вычисляется как сумма всех фактических задержек обслуживания l-х заявок и их длительности обработки). l меняется от 1 до j-1.
Пример ввода компенсирующей переменной yij :
Номер заявки (j) |
Время обслуживания (ti,j) |
Задержка поступления заявки (τ0j) |
||
Номер прибора (i) |
||||
1 |
2 |
|||
1 |
2 |
4 |
0 |
|
2 |
3 |
3 |
0 |
|
3 |
3 |
2 |
2 |
|
4 |
1 |
1 |
4 |
|
5 |
4 |
3 |
5 |
Назначение на приборы (рассчитано в Ilog CPLEX)
X0
=
τ 2,3 = τ03 – ( (τ 2,1 + t 2,1)x2,1 + (τ 2,2 + t 2,2)x2,2 )
τ 2,3= 2-((4+0)*0+(3+0)*0)=2
Так как τ 2,3 > 0 , ввод y23 не требуется
τ 1,2 = 0 – (2+0)*1 = -2 так как обработка первой и второй детали не может начаться одновременно, следовательно, обслуживание второй детали начнется как минимум через 2 ед. времени, поэтому вводится компенсирующая переменная y1,2 =2.
Суть ограничения (1.7): сумма всех фактических задержек j-х заявок, назначенных на прибор i и длительности обработок этих заявок не должна превышать λ
Если для модели (1.1)–(1.7) определен критерий качества (или эффективности) расписания, например
λ min , (1.8)
то (1.1)–(1.8) определяют задачу синтеза оптимальных по быстродействию расписаний параллельной системы с задержками на входе. (1.7) и (1.8) реализуют минимаксный критерий, имеющий смысл критерия максимального быстродействия (иногда называемого также критерием равномерной загрузки) вида