Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Особенно острый дефицит общего времени на контроль испытывается обычно на этапе предполетной подготовки при проведении тестового контроля работоспособности бортового оборудования. Поэтому минимизация общего времени контроля всех параметров объекта за счет расчленения процедур контроля на модули и оптимального их проведения представляет практическую ценность.
Модули Zi включают в себя непосредственно длительность контрольных операций ti ,а также интервалы tij, к примеру ожидания переходных процессов, или длительности настроек при переходе от операции zi к zj, а также времени для переключения соответствующих цепей коммутации. Минимизация общего времени контроля Tk заключается в оптимальном заполнении указанных времен ожидания контрольно-измерительными операциями других модулей. Однако при этом необходимо, в некоторых случаях, учитывать частичную априорную технологическую упорядоченность модулей в виде ограничений на отношение порядка U, которые задаются в виде графа G(Z,U)
, к примеру рис. 2.1, где вершина Z0 (мажоранта), для которой t0 и t 0i равны нулю, фиксирует начало процесса построения множества возможных вариантов (допустимых) решений W(S0). Висячая вершина графа (в примере Z v) фиксирует окончание процесса ветвление вариантов.
Путем в графе G(Z,U) является последовательность ориентированных дуг U, которые выражают ограничения порядка между вершинами на этом пути. Длина пути от начала процесса (мажоранты) до некоторой вершины соответствует глубине расположения проверяемого подмножества и равна числу дуг на нем. В дальнейшем, говоря о глубине расположения проверяемого подмножества, подразумевается нахождение соответствующей вершины на некотором k -м уровне графа G, что предполагает преобразование его в дерево. Такое преобразование необходимо потому, что граф, построенный из непосредственного анализа объекта, обычно получается слишком сложным и нуждается в предварительном упорядочении.
Поставленная задача примыкает по своей сущности к классу экстремальных комбинаторных задач. В принципе она может быть решена простым перебором вариантов, однако необходимый при этом объем вычислений не позволяет получить оптимального результата даже в простейшем случае.
Перспективным способом решения оптимизационных задач контроля является метод ветвей и границ.
Идея этого метода заключается в следующем. Множество W(S0) всех допустимых вариантов решения разбивается на непересекающиеся подмножества W(Sk), которые, в свою очередь, разбиваются на подмножества меньшей мощности W(Si) до получения подмножества W(Sν), состоящего из единственного варианта. Процесс разбиения множества допустимых вариантов W(S0) на их непересекающиеся подмножества называется ветвлением вариантов, а получаемое при этом дерево D (S,ГD) - деревом решений (ветвлений) (рис. 2.2). Здесь S={Sk} множество вершин этого дерева, а ГD отношение порядка на этом множестве. Каждой вершине дерева решений соответствует некоторый модуль zi Î Z графа G (Z,U), а любой путь по дереву определяет соответствующий граф очередности V[Y(S), ГV]. Множество вершин Y(S) описывает определенный вариант процесса (незаконченный, если YÌZ и законченный, если Y=Z), а ГV отношение порядка на множестве Y(S).
Пусть Y(Sk) —множество вершин в графе очередности V, соответствующих пути от S0 до Sk в дереве D. Из каждой вершины Sk выходит столько ветвей, сколько допустимых модулей (претендентов для упорядочения) имеется в подмножестве Z\Y(Sk). Множество допустимых на каждом шаге процесса ветвления модулей образует фронт упорядочения. Наглядное представление об образовании фронта упорядочения дает преобразованный граф G. Очевидно, на первом шаге процесса построения дерева D фронт упорядочения образуют вершины, которые соединены с мажорантой одной дугой, на втором шаге к ним добавляются все последователи включенной в D вершины, в которую не входят дуги из других вершин, и т. д. Hа произвольное шаге фронт упорядочения образуют те модули, для которых Го -1zi= .
Метод ветвей и границ предполагает построение дерева ветвления вариантов D и фактически представляет собой процедуру последовательного анализа вариантов, дополненную прогнозированием такого направления поиска, в котором с наибольшей вероятностью находится оптимальное решение. Идея прогнозирования заключается в оценке нижних границ минимизируемой целевой функции для разветвляемых подмножеств
W(Sk). На каждом шаге, ветвление продолжается из вершины, имеющей минимальную оценку. Задача сводится к отысканию па дереве конечной вершины, соответствующей оптимальному допустимому решению со значением целевом функции, меньшим или равным оценкам висячих вершин дерева D.
Как показывает практика применение метода ветвей и границ, его эффективность значительно зависит от способа представления решения в виде дерева вариантов и метода оценки нижней границы целевой функции.
Для минимизации Tk этот метод может быть применен следующим образом.
На основе исходной информации, заданной графом G, строится -размерные квадратные матрицы || bij || и || dij || такие, что
(2.2)
(2.3)
Вводится понятие Tн (zk)- наиболее раннее время начала модуля zk
. (2.4)
Обозначим H ={ Lij }—множество всех независимых путей (путей, отличающихся друг от друга хотя бы одной дугой) на графе, ведущих от вершины zi к zj и — множество всех независимых путей, ведущих от вершины zk к миноранте (висячей вершине графа G).
Некоторый путь Lk по этому дереву представляет собой частичный подграф G (Zk, Uk), при этом длина пути:
T (Lk) = (2.5)
Длина критического пути вычисляется из рекуррентного соотношения наиболее длинного пути из вершины zk к миноранте графа G.
. (2.6)
На основании приведенных выражений процесс преобразования графа G (Z,U) в граф очередности V =(Y,ГD) может быть интерпретирован следующим образом. Находится для каждой вершины Sk S дерева ветвления вариантов D множество
|
где - предшественники вершины zi на множестве Y (Sk) графа V,
которое определяет фронт упорядочения. Согласно априорной частичной упорядоченности модулей, выражаемой отображением Гk, очередной модуль при пошаговом построении графа D может быть выбран только из |N(Sk)|, выражающего мощность фронта упорядочения.
На основе (2.6) можно записать выражение для оценки нижних границ для произвольного подмножества вариантов W(Sk) в следующем виде:
. (2.8)
Tоц(Sk) = t*(Sk) + max { t(L*i) +max[ 0,TH(zi)-t*(Sk) ]},
i:ziЄN(Sk)
где t*(Sk)=Στi + Στkl.
i:zi Є-Y(Sk) (k,l Є ГD)
На каждом шаге для дальнейшего разветвления выбирается вершина S*k, для которой справедливо равенство
Тоц (Sk)= min { Тоц (Sk) } | Sk Є S* }, Sk
где S* Є S - подмножество вершин , из которых можно продолжать ветвление на данном этапе построения дерева очередности.
Выбранная вершина Sk Є S* в итоге получает N (Sk) последователей, определяющих разбиение множества возможных вариантов W (Sk) на N (Sk) непересекающихся подмножеств.
При достижении в процессе ветвления W (Sν), состоящего из единственного варианта V [ Y (Sν), Гν) ], при этом Y (Sν)= Z и последний вариант будет оптимальный, если
Tоц(Sν) ≤ { Тоц (Sk) } | Sk Є S* }. (2.9)
Рассмотрим применение данного алгоритма на численном примере.
Допустим задан следующий граф G(Z,U) (рис. 2.1) и таблицы длительности операций (таблица 2.1), и времён переходов (таблица 2.2):
Рис. 2.1 – Граф исходного множества модулей
Таблица 2.1 – Длительность операций
Вершины zi | Z1 | Z2 | Z3 | Z4 | Z5 |
Длительность τi |
Таблица 2.2 – Минимальное время задержки между модулями
Дуги графа U | (0,1) | (0,2) | (1,4) | (2,3) | (2,5) | (3,4) | (4,6) | (5,6) |
Длительность перехода tij |
Требуется определить оптимальную последовательность проведения проверок с использованием метода ветвей и границ.
2.3.1. Составляется граф D (рис. 2.2), заключающий в себе все множество вариантов последовательностей проверок некоторого объекта контроля (рис. 2.1)
Рисунок 2.2 – Дерево ветвления вариантов.
2.3.2. На основе исходных данных стоится z -размерная квадратная матрица bij по формуле (2.2):
2.3.3. Определяется наиболее раннее время начала модуля zk, используя формулы (2.3) и (2.4):
TH(z0) = 0;
TH(z1) = 0;
TH(z2) = 0;
TH(z3) = max {TH(z2) + b23} = 0 + 16 = 16;
TH(z4) = max {TH(z1) + b14 , TH(z3) + b34} = max {0 + 18, 16 + 12} = 28;
TH(z5) = max {TH(z2) + b25} = 0 + 8 = 8;
TH(z6) = max {TH(z4) + b46 , TH(z5) + b56} = max {28 + 3, 8 + 8} = 31;
2.3.4. Определяются длины критических путей юля каждой из вершин zi, которые ведут от вершины zi к миноранте по формулам (2.5) и (2.6):
T[L*(z0)] = τ0 +τ2 +τ3 +τ4 +t02 +t23 +t34 +t46 = 31
T[L*(z1)] = τ1 +τ4 +t14 +t46 = 21
T[L*(z2)] = τ2 +τ3 +τ4 +t23 +t34 +t46 = 31
T[L*(z3)] = τ3 +τ4 +t34 +t46 = 15
T[L*(z4)] = τ4 +t46 = 3
T[L*(z5)] = τ5 +t56 = 8
T[L*(z0)] = τ6 = 0
Полученные данные сводятся в таблицу (таблица 2.3)
Таблица 2.3
Zi | τi | TH(zi) | T[L*(zi)] | U | tij |
z0 | (0,1) | ||||
z1 | (0,2) | ||||
z2 | (1,4) | ||||
z3 | (2,3) | ||||
z4 | (2,5) | ||||
z5 | (3,4) | ||||
z6 | (4,6) | ||||
(5,6) |
2.3.5. Рассчитывается по шагам оценка нижних границ для подмножества вариантов W(Sk) c использованием формул (2.7), (2.8) и (2.9)
ШАГ 1
S0, z0;
N (S1) = { z1, z2 };
Y (S1) = { z0 };
t*(S0) = τ 0 = 0;
T оц(S0) = t*(S0) + max { t (L*1) + max[0, TH (z1) – t* (S0)], t (L*2) + max[0, TH (z2) – t* (S0)]} = 0 + max {21 + max[0,0];31 + max[0,0]} = 31.
ШАГ 2
S1, z1;
N (S1) = { z2 };
Y (S1) = { z0,z1 };
t* (S1) = τ0 + t01 + τ1 = 2;
Tоц (S1) = t* (S1) + max { t (L*2) + max[0, TH (z2) – t* (S1)]} = 2 + max {31 + max[0,-2]} = 33.
ШАГ 3
S2, z2;
N (S2) = { z3,z5, z1 };
Y (S2) = { z0, z1 };
t* (S2) = τ0 + t02 + τ2 = 4;
Tоц (S0) = t* (S2) + max { t (L*3) + max[0, TH (z3) – t* (S2)], t (L*5) + max[0, TH (z5) – t* (S2)], t (L*1) + max[0, TH (z1) – t* (S2)]} = 4 + max {15 + max[0, 16-4],8 + max[0,8-4],21 + max[0,0-4]} = 4 + max{27, 12, 21} = 31.
Рис. 2.3 – Результат ветвления шагов 1 3
ШАГ 4
S3, z3;
N (S3) = { z1,z5 };
Y (S3) = { z0, z2, z3 };
t* (S3) = τ0 + t02 + τ2 + t23 + τ3 = 21;
Tоц (S3) = t* (S3) + max { t (L*1) + max[0, TH (z1) – t* (S3)], t (L*5) + max[0, TH (z5) – t* (S3)]} = 21 + max {21 + max[0, 0-21],8 + max[0,8-21]} = 21 + max{21, 8} = 42.
ШАГ 5
S4, z5;
N (S4) = { z1,z3 };
Y (S4) = { z0, z2, z5 };
t* (S4) = τ0 + t01 + τ2 + t25 + τ5 = 16;
Tоц (S4) = t* (S4) + max { t (L*1) + max[0, TH (z1) – t* (S4)], t (L*3) + max[0, TH (z3) – t* (S4)]} = 16 + max {21 + max[0, 0-16],15 + max[0,16-16]} = 16 + max{21, 15} = 37.
ШАГ 6
S5, z1;
N (S5) = { z5,z3 };
Y (S5) = { z0, z2, z1 };
t* (S5) = τ0 + t02 + τ2 + t21 + τ1 = 6;
Tоц (S5) = t* (S5) + max { t (L*5) + max[0, TH (z5) – t* (S5)], t (L*3) + max[0, TH (z3) – t* (S5)]} = 6 + max {8 + max[0, 8-6],15 + max[0,16-6]} = 6 + max{10, 25} = 31.
|
|
Рис. 2.4 – Результат ветвления шагов 1 6
ШАГ 7
S6, z5;
N (S6) = { z3 };
Y (S6) = { z0, z2, z1, z5 };
t* (S6) = τ0 + t02 + τ2 + t21 + τ1 + t15 + τ5 = 16;
Tоц (S6) = t* (S6) + max { t (L*3) + max[0, TH (z3) – t* (S6)]} =16 + max {15 + max[0, 16-16]} = 31.
ШАГ 8
S7, z3;
N (S7) = { z5, z4 };
Y (S7) = { z0, z2, z1, z3 };
t* (S7) = τ0 + t02 + τ2 + t21 + τ1 + t13 + τ3 = 11;
Tоц (S7) = t* (S7) + max { t (L*5) + max[0, TH (z5) – t* (S7)], t (L*4) + max[0, TH (z4) – t* (S7)]} = 11 + max {8 + max[0, 8-11],3 + max[0,28-11]} = 11 + max{8, 20} = 31.
| |||
Рис. 2.5 – Результат ветвления шагов 1 7
ШАГ 9
S8, z3;
N (S8) = { z4 };
Y (S8) = { z0, z2, z1, z5, z3 };
t* (S8) = τ0 + t02 + τ2 + t21 + τ1 + t15 + τ5 + t53 + τ3 = 21;
Tоц (S8) = t* (S8) + max { t (L*4) + max[0, TH (z4) – t* (S8)]} =21 + max {3 + max[0, 28-21]} = 31.
Рис. 2.6 – Результат ветвления шагов 1 9
ШАГ 10
S9, z4;
N (S9) = { z6 };
Y (S9) = { z0, z2, z1, z5, z3, z4 };
t* (S9) = τ0 + t02 + τ2 + t21 + τ1 + t15 + τ5 + t53 + τ3 + t34 + τ4 = 29;
Tоц (S9) = t* (S9) + max { t (L*6) + max[0, TH (z6) – t* (S9)]} =29 + max {3 + max[0, 31-29]} = 31.
Поскольку условие t* (S9) ≤ min { Tоц (Sk) │ Sk S* } выполняется, то получено оптимальное решение.
Рис. 2.7 – Результат ветвления шагов 1 10
Все полученные ранее данные сводятся в таблицу для определения оптимального варианта ветвления исходного графа (таблица 2.4)
Таблица 2.4
S | zi/i=Sk | N(Sk) | Y(Sk) | t*(Sk) | Tоц(Sk) |
S0 | z0 | z1, z2 | z0 | ||
S1 | z1 | z2 | z0, z1 | ||
S2 | z2 | z3, z5, z1 | z0, z2 | ||
S3 | z3 | z5, z1 | z0, z2, z3 | ||
S4 | z5 | z1, z3 | z0, z2, z5 | ||
S5 | z1 | z5, z3 | z0, z2, z1 | ||
S6 | z5 | z3 | z0, z2, z1, z5 | ||
S7 | z3 | z5, z4 | z0, z2, z1, z3 | ||
S8 | z3 | z4 | z0, z2, z1, z5, z3 | ||
S9 | z4 | z6 | z0, z2, z1, z5, z3, z4 |
Окончательно дерево решений в соответствии с таблицей 2.4 имеет вид:
|
|
Рис. 2.8 – Дерево решений (последовательность проведения проверок)
Таким образом оптимальному процессу проведения проверок соответствует следующая стратегия прохождения модулей и их порядков проведения z1, z2, z5, z3, z4. При этом общее время контроля составит Tk = 31 ед.
Дата публикования: 2014-11-03; Прочитано: 348 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!