116 Для каждого разбиения уровней по зонам, которое задается вектором L=(Li L2, ... , LJ можно вычислить целевую функцию T(L) , которая определяет минимальное количество перегрузок сегментов в зависимости от разбиения L : 7} = T(L). Ставиться задача оптимального разбиения уровней по зонам и применяется поисковый алгоритм оптимизации Зейделя. Свободными переменными будут Li L2, ... , Ln , на которые накладываются ограничения: ZL„ = L Ln>l. (3.39) N a Li определяется через L2L3,..., Ln Ll = L-^L„. Ищется такое разбиение, при котором 7} = min T(L). Приращение уровней обозначим через AL : AL=±1. Начальное распределение уровней выбирается произвольно. В данном случае его можно определить по приближенному равенству уровней, входящих в зону. Алгоритм разбиения. Шаг 0. Выбор начального распределения уровней: n=2..N, £, = Z N -1), где целая часть от деления L на N. Вычисление Т,, То=Т[/ n=2; AL=1. Шаг 1. Если выполнено условие: N (3.40) то переход к шагу 3, иначе к шагу 2. Шаг 2. £’„=£n+AL; £’,=£ГА,; £’,=£, i=2..N ten, TR=T(L’) Ln>l Если 7r<7t, to шаг считается успешным, L=L’ и переход к шагу 1. |
Последняя таблица говорит о стопроцентной правильности классификации наших выборочных значений. Алгоритмы распределения объемов складирования Помимо комплектации материалов в складских помещениях, актуальна задача минимизации перегрузок, связанных с подготовкой материалов к отправке. При создании структуры склада включающего в себя большое количество складских помещении стоит задача построения рациональной структуры склада, так как суммарный объем комплектов поставок с учетом последующего комплексирования может превышать суммарный выделенный объем. Разбиение уровней по зонам. Задача оптимального разбиения комплектов каждой зоны склада решается методами целочисленного программирования. Как показано в главе 1 , после этапа разбиения комплектов на уровни получили: L число уровней: Ki число комплектов на 1-ом уровне. Если задано количество зон N , Ln) можно вычислить целевую функцию T(L) , которая определяет минимальное количество перегрузок сегментов в зависимости от разбиения L : 21= T(L) Ставиться задача оптимального разбиения уровней по зонам и применяется поисковый алгоритм оптимизации Зейделя. Свободными переменными будут Li L2, ... , Ln , на которые накладываются ограничения N = l L„Zl (3.86) п 1 vV a Li определяется через L2 L3, ... ,Ь„ А = ^ 1 4 п1 Ищется такое разбиение, при котором TL= min T(L) Li Приращение уровней обозначим через AL : AL=±1 Начальное распределение уровней выбирается произвольно. В данном случае его можно определить по приближенному равенству уровней, входящих в зону. Алгоритм разбиения. Шаг 0. Выбор начального распределения уровней n=2..N, Ц = L целая часть от деления L на N. Вычисление Tl , Тo=Tl: n=2; Al=1 Шаг 1. Если выполнено условие N \ Y.Ii = L1 П АL /=2 1 и (4 =1п А J L (3.87) то переход к шагу 3, иначе к шагу 2 . Шаг 2. L\=Ln+Al ;L\=Lr AL:L'x=h i=2..N i*n, TR=T(L’) Ln>l Если 7 r < 7 t , t o шаг считается успешным, L=L’ и переход к шагу 1 Если Tr>Tj , т о шаг считается неудачным. Если при этом Al=1, то положить Al=~ 1и перейти к шагу 1, иначе перейти к шагу 3 Шаг 3. Аь=1 Если n^N то положить n=n+ 1 и перейти к шагу 1, иначе перейти к шагу 4 Шаг 4. Если TrATqто положить To=TRп=2 и перейти к шагу 1. |