- •Методическое руководство по выполнению курсовой работы
- •B ведение
- •Раздел 3 содержит материал, который будет полезен для правильного оформления курсовой работы.
- •1.2 Задание 1
- •Варианты задания 1
- •2 Pасписания
- •2.1 Минимизация длины расписания для системы поточного типа (Fm| |Cmax)
- •2.2 Задание 2
- •Варианты задания 2
- •2.3 Минимизация максимального времени обслуживания требований с различными маршрутами
- •2.4 Задание 3
- •Варианты задания 3
- •3 Методические указания по оформлению курсовой работы
- •Требования к оформлению курсовой работы
- •Условные обозначения и сокращения
- •Список литературы
- •Применение методов теории расписаний в управлении воздушным движением и обеспечении безопасности полетов
Варианты задания 1
Для всех вариантов:
1) n = 5;
2) значения элементов матрицы (матрицы расстояний) для каждого варианта определяются следующим образом:
,
где – элемент матрицы А из типового примера задания 1,
А = ;
NС – номер курсанта в списке группы, при этом если Nс < 15, то равенство берется со знаком «+», то есть выполняется операция сложения, а если Nс > 15, то равенство берется со знаком «–», то есть выполняется операция вычитания; отрицательные значения следует включать в матрицу А по их абсолютной величине;
3) в полученной матрице А значения нескольких элементов по желанию курсанта (и при необходимости, когда получается много нулей или одинаковых чисел) можно дополнительно изменить, согласуя эти изменения с руководителем курсовой работы.
2 Pасписания
ДЛЯ МНОГОСТАДИЙНЫХ СИСТЕМ ОБСЛУЖИВАНИЯ
2.1 Минимизация длины расписания для системы поточного типа (Fm| |Cmax)
Рассмотрим задачу (Fm| |Cmax) построения оптимального по быстродействию расписания для системы поточного типа. Имеется множество М = {1, 2,..., m}, m 2, последовательных приборов, обслуживающих множество N = {1, 2,..., n} требований, которые поступают в систему в момент времени d = 0. Каждое требование
i N обслуживается прибором 1, затем прибором 2 и т. д. до тех пор, пока оно не будет обслужено прибором m. Иными словами, каждое требование имеет маршрут обслуживания (1, 2,..., m). Длительности tiL 0 обслуживания каждого требования i N каждым прибором L, L {1, 2, …, m}, предполагаются заданными в виде матрицы . Операции выполняются без прерываний. Тогда если процесс обслуживания требования i прибором L начинается в момент времени , то он протекает непрерывно (нет прерываний) и завершается в момент времени = + tiL. Каждый прибор одновременно обслуживает не более одного требования. Каждое требование обслуживается не более чем одним прибором в любой момент времени.
Как и для всякой задачи обслуживания без прерываний, так и в рассматриваемом случае любое расписание s обслуживания требований однозначно определяется заданием матрицы моментов начала или матрицей моментов завершения обслуживания каждого требования каждым прибором. При этом момент завершения обслуживания всех требований всеми приборами будет =
= max{ i N, L = 1, 2, …, m}, определяющий общее время обслуживания.
Таким образом, задача состоит в построении расписания s*, которому соответствует наименьшее значение . Это расписание будем называть оптимальным (по быстродействию) расписанием.
Теорема 2.1
При m 3 оптимальное расписание s* можно искать в классе S расписаний, при которых все m приборов обслуживают требования в одной и той же для данного расписания последовательности.
Иными словами, во множестве S существует расписание такое, что ( ) (s), где S, а s произвольное допустимое расписание. При m > 3 это свойство не выполняется.
Задача F2| |Cmax. Далее рассмотрим задачу F2| |Cmax построения оптимального по быстродействию расписания для системы поточного типа при условии, что приборов в системе только два, т.е. m = 2. Так как в этой задаче m = 2, следовательно, исходя из теоремы 2.1, оптимальное расписание можно искать в классе S расписаний, при которых все приборы обслуживают требования в одной и
той же последовательности, задаваемой некоторой перестановкой
= (i1, i2,..., in) элементов множества N. Обслуживающие приборы обозначим через А и В, а длительности обслуживания требования
i N ={1, 2,..., n} приборами А и В – через ai и bi соответственно,
т. е. – длительность первой операции (включая настройку, если она необходима) обслуживания i-го требования прибором А; – длительность второй операции (включая переналадку, если она необходима) обслуживания i-го требования прибором В; – момент завершения обслуживания i-го требования; Сmax – момент завершения обслуживания всех требований двумя приборами.
Маршрут обслуживания каждого требования равен (А, В), т. е. каждое требование характеризуется парой длительностей его операций: . Такое разбиение существует для обслуживания всех требований, хотя, возможно, некоторые и могут быть равными 0 (обслуживание некоторых требований может состоять только из одной операции). Другими словами, данная задача состоит в следующем: задано 2n неотрицательных действительных чисел . Необходимо упорядочить требования так, чтобы при сделанных допущениях минимизировать общее время обслуживания Cmax.
Теорема 2.2
В задаче F2| |Cmax при одновременной доступности всех требований упорядочение, минимизирующее максимальную длительность обслуживания, таково, что требование j предшествует требованию j + 1,
если . (2.1)
Упорядочение требований в соответствии с теоремой 2.2 приводит к оптимальному расписанию, которое определяется перестановкой Джонсона, т. е. перестановкой = (i1, i2,..., in), удовлетворяющей условию (2.1). Если для каждой пары требований имеет место строгое неравенство в соотношении (2.1), то перестановка Джонсона – единственная. Если же существуют такие пары требований, для которых это неравенство превращается в равенство, то существует множество перестановок Джонсона.
Заметим, что условие (2.1) является достаточным условием оптимальности перестановки, но не является необходимым условием оптимальности. Иными словами, помимо перестановок Джонсона оптимальными могут быть и другие перестановки, не удовлетворяющие условию (2.1).
Алгоритм 1
Пункт 1. Построить множество Na = {i N } и множество = {i N }.
Пункт 2. Сформировать перестановку * требований множества N, упорядочив требования множества Na по неубыванию значений , а затем требования множества по невозрастанию значений . Конец алгоритма.
Теорема 2.3
Если перестановка * требований множества N построена по алгоритму 1, то она является оптимальной для задачи
F2| |Cmax.
Алгоритм 2
Пункт 1. Требованию i N приписать вес
,
где w – достаточно большое число: {min{ } i N}.
Пункт 2. Построить перестановку *, упорядочив требования по неубыванию весов.
Конец алгоритма.
Рассматриваемую задачу еще называют задачей Джонсона или задачей о двух станках.
Алгоритм 3 (алгоритм Джонсона)
Пункт 1. Выбрать среди невычеркнутых элементов векторов и минимальное число.
Пункт 2. Если это минимальное число принадлежит вектору { } (пусть это ), то требование j назначить первым среди невычеркнутых, и j-е элементы вычеркиваем из векторов и . Если минимальное число принадлежит вектору { } (пусть это ), то требование j назначить последним среди невычеркнутых, и j-е элементы также вычеркиваем из векторов и .
Пункт 3. Если все и вычеркнуты, то конец алгоритма, иначе следует вернуться к пункту 1.
Асимптотическая сложность построения оптимальной перестановки по приведенным алгоритмам не превосходит 0 (n log2 n) операций.