Математическое моделирование. Оптимальное управление Вестник Нижегородского университета им. Н.И. Лобачевского, 2014, № 4 (1), с. 428-432
УДК 519.863
ПОСТРОЕНИЕ ОПТИМАЛЬНЫХ ПО БЫСТРОДЕЙСТВИЮ РАСПИСАНИЙ ПРИ ПРОИЗВОДСТВЕ СВЕРХБОЛЬШИХ ИНТЕГРАЛЬНЫХ СХЕМ
© 2014 г. С.Е. Власов, В. С. Власов
Нижегородский госуниверситет им. Н.И. Лобачевского
Поступила в редакцию 01.07.2014
Рассматривается задача построения оптимальных по быстродействию расписаний при изготовлении изделий микроэлектроники с субмикронными топологическими нормами. Для решения предлагаются вычислительные процедуры метода ветвей и границ с использованием эвристических схем нахождения верхних оценок.
Ключевые сеова: микроэлектроника, сверхбольшие интегральные схемы, субмикронные топологические нормы, метод ветвей и границ, эвристическая схема, верхняя оценка.
Введение
При изготовлении сверхбольших интегральных схем используется позаказная система планирования. Каждый заказ включает в себя наборы партий пластин, для которых определены директивные сроки выполнения. С учетом процента выхода годной продукции, каждая партия пластин определяет количество кристаллов, которые поступят на операцию сборки. Технология изготовления кристаллов, определяемых одной партией пластин, до операции сборки одинакова. Каждое изделие микроэлектронного производства состоит из партий пластин. Для каждой партии пластин задан перечень технологических операций, которые выполняются на оборудовании, причем для каждой технологической операции однозначно определено оборудование, на котором она должна выполняться. Для каждой технологической операции определено количество материалов, необходимых для ее выполнения, а также время выполнения на оборудовании. До операции сборки время выполнения технологической операции любого изделия одинаково и определяется оборудованием, на котором эта технологическая операция выполняется. Часть технологических операций объединяются в группы (групповые операции), которые должны выполняться последовательно и без перерывов. Для некоторых технологических операций задано время пролеживания - минимально возможный интервал времени до начала следующей технологической операции (время, меньше которого не должно пройти до выполнения следующей по технологии операции). Для некоторых технологических операций задано межоперационное время - максимально возможный интервал
времени до начала следующей технологической операции (время, больше которого не должно пройти до выполнения следующей по технологии операции). Определены завершающие операции для изделий - операции, для которых заданы сроки их выполнения (директивные сроки).
Все оборудование производственной системы разбивается на группы:
• оборудование, работающее по общему графику: заданы рабочие дни, число смен, время начала и окончания работы каждой смены, время обеденного перерыва;
• кластерное оборудование: оборудование, представляющее собой совокупность нескольких «камер». Каждая «камера» представляет собой отдельную единицу оборудования и может работать независимо от остальных «камер». Если кластерное оборудование находится в нерабочем состоянии, то все его «камеры» находятся в нерабочем состоянии;
• оборудование химических ванн: оборудование, представляющее собой совокупность нескольких ванн. Все ванны обслуживаются одним манипулятором, одновременно может производиться работа только с одной ванной. Каждая ванна может находиться в нерабочем или рабочем состоянии независимо от остальных ванн.
Особенностью субмикронного производства является наличие операций проверки технологического оборудования по точности, направленных на снижение брака при осуществлении технологических процессов на оборудовании. Причем кластерное и оборудование химических ванн может участвовать в нескольких технологических процессах. Проверка технологических процессов по точности осуществляется периодически, период проверки для каждого обору-
дования назначается индивидуально в зависимости от его типа. Оборудование, не прошедшее периодическую проверку по точности, не может использоваться в технологическом процессе. Проверка технологического оборудования по точности технологического процесса осуществляется путем проверки ряда контролируемых параметров. Проверка каждого контролируемого параметра происходит путем выполнения последовательности определенных операций. Проверка контролируемых параметров может осуществляться с привлечением дополнительного технологического оборудования. В ходе проверки технологического оборудования по точности оно считается занятым.
Общая проблема планирования заключается в нахождении расписания изготовления изделия, удовлетворяющего всем требованиям, предъявляемым к функционированию системы. В работе предложена модель систем типа «конвейер - сеть», включающая в себя чередование стадий производства, каждую из которых можно отнести либо к классу последовательного выполнения работ (конвейерные технологии), либо к классу распределения ресурсов в сетевых структурах. Выделение данного класса систем позволило сократить время решения, используемые аппаратные ресурсы, а также оптимизировало поиск расписаний.
Для решения задач, относящихся к системам типа «конвейер - сеть», выделен метод, соединяющий в себе подход, связанный как с упрощением исходной задачи (а следовательно, со снижением ее математической сложности), так и с применением различных комбинаций конфигурируемых эвристических алгоритмов. Ключевая идея подобного подхода состоит в том, что размерность задачи сокращается путем ее разбиения, для полученных таким образом задач меньшей размерности проводится поиск решения, после чего происходит оценка решения исходной задачи объединением полученных решений.
Общая математическая модель
Исходные параметры математической модели
Пусть Т = {0,1, 2,..., Т0} - множество тактов планирования. Объемы производства определяют состав партий пластин {Я1,Я2,...,ЯМо} .
Для партий пластин могут быть заданы директивные сроки (срок, к которому партия пластин должна пройти полный цикл обработки). Пусть Я° - множество партий пластин, для которых заданы директивные сроки, а
Dr, Dr eT, - директивный срок, определенный для партии пластин r e RD. В случае если r g Rd , будем полагать, что Dr = T0.
Обозначим через W = {1, 2, ...Nw} набор всех технологических операций. Для технологических операций определены порядки их выполнения. Множество всех операций, непосредственно предшествующих операции с номером w , обозначим через K(w) , w с W .
Пусть Wmin - множество операций, для которых определено минимальное время проле-живания, а t™n - минимальное время пролежи" _ TT/min тг/max
вания w-й операции, w eW ; W - множество операций, для которых определено межоперационное время, а tWж - межоперационное
время w-й операции, w e Wmax.
Пусть I = {0,1, ...,M} - множество, которое включает в себя все оборудование, на котором выполняются технологические операции. Здесь через 0 обозначено оборудование, используемое для операций, не требующих ресурсных затрат.
Обозначим через <p(w) = {i1,i2...} множество видов оборудования, на котором может выполняться операция w, w eW, i1, i2...e I.
Для каждого оборудования определено множество "q (i) = {[/'1s, if ],[i2, i2e ]...}, i e I, промежутков времени (множество рабочих интервалов), в которые оборудование может осуществлять выполнение операций.
Пусть C— множество единиц оборудования, для которых необходимо проводить проверки технологического оборудования по точности технологического процесса, ctc - максимальный интервал между проверками, prcc = {prc1,..., prc,Nc } - множество параметров, которые необходимо проверить, c e C, C с I. Обозначим множество операций, которые необходимо выполнить для l -й по счету проверки параметра
Prc,
как
W(Prc,k ) = {wi > w2'...' wNl }
w
, w
eW, l = 1,
ctr.
Во время выполнения проверки технологического оборудования по точности технологического процесса занято как проверяемое оборудование се С , так и оборудование, используемое для проверки
C K
C .K
г £ф(»'), ^' еу' (ртСк),
к = 1,NС,м' еW,I = 1,
Т_
Обозначим через О = {£;,...,gNg } множество
групповых операций - операций, которые должны выполняться последовательно друг за другом со строгим соблюдением всех межоперационных времен и для которых недопустимы перерывы в их выполнении. Каждая групповая операция определяется цепочкой операций
§к =%к Xw,е К
или хк > xw + г м для всех тех w, к, г, для которых г м Ф 0 , г к Ф 0, г е I, w, к е W.
Условия, определяющие необходимость выполнения операции в допустимое время для оборудования:
Xw, Уw е -п(г'),г е ф(w), w еW.
Ограничения для операций с минимальными сроками пролеживания:
х. > Ук + С",к е (К(1) nWтп),1 еW.
Условия, определяющие необходимость выполнения групповых операций без перерывов:
' = 1, N0 -1, wl еW, к = 1, Ng, где w1, м!д0 задают соответственно начало и
конец групповой операции.
Обозначим через ( м время выполнения w-й операции на г-м оборудовании, г е I, w еW.
В системе присутствует определенный набор материалов (02....,О,), где ( = {1, 2,...,-множество видов материалов. На выполнение w-й операции необходимо затратить определенное количество материалов каждого из видов
Чм = , Я™).
В качестве варьируемых параметров математической модели выступают Nw -мерные целочисленные векторы X и у, компоненты которых определяют такты начала и окончания выполнения операций, а также матрица
% = к 1,,, ,, элемент которой 7 .. = 1, если опе-
II .|1|1 |х 1
рация . выполняется на оборудовании , и = 0 в противном случае, г е 1,1 е W .
Ограничения математической модели Естественные ограничения на переменные:
Xw е Т, Уw е Т, г» е{0,1}, w еW,iе I. Каждая операция должна выполняться на возможном для нее оборудовании:
V * = 1, V 7 = 0, w еW, г е I.
iеI г'ф( м)
Взаимозависимость операций, определяющая каноничность сетевой модели:
Хм > У,,, е К(м), м еW. Условия выполнения операций на оборудовании без перерывов:
Ум - Хм = С , М е W ,ге ф(w), 7 м Ф 0 . Условия, определяющие невозможность одновременного выполнения на одном и том же оборудовании разных операций: хм > хк + гк
у - х =У (л + ?т1П).
для всех
§к = ^мык Xк = 1 Ng,Кк е <0,
Яд
где е Ф(м), 7 м Ф
Условия, определяющие необходимость проведения проверок технологического оборудования по точности технологического процесса не реже максимального интервала между проверками:
0 - (хм+ ) - таХ (Ум ) - С1с ,
X =1,М+К wS S=1^С К м
для всех
ргск е ргсс, с е С, ' = 1,
-1,
где мТ е V+1(Ргс,кX м е У' (Ргс,к).
Условия, определяющие невозможность одновременного выполнения на одном и том же оборудовании операций и проверок технологического оборудования: если
( г \\
х „, = тт
тт (х ,)
т т
чм', еу1 (ргск 5=1,К ' м
с е С,' = 1,
сгс
У\,! = таХ I ' т'аХ I тах(Ум'
Ргс к еРгсс ^еу' (ргск )\ ))
с е С,' = 1, тогда для всех с,', м, где с е С,' = 1,
сг.
м еW,
м 'У (ргс,к X ргс,к е ргсс Ф 0
'=1
ргс,к ергсс
Исходная задача G
Выделение класса задач конвейерного типа G1
1 г
Получение решения конвейерной задачи F(G1)
Выделение класса задач с сетевыми технологиями G2
1 г
Получение решения сетевой задачи F(G2)
xw ^ y'cj или x'c,l ^ yw •
Ограничение на наличие материалов для выполнения операции:
Е qw ^ Qk, k e q.
weW
В качестве критерия оптимальности будем рассматривать функционал F(x, y) ^ min , определяющий количество тактов суммарного простоя оборудования на интервале от такта начала планирования до такта, соответствующего окончанию выполнения всех запланированных операций. Минимизация функционала отображает стремление максимизировать загрузку оборудования и оптимизировать быстродействие расписания.
Алгоритмы решения
В работе используются основные вычислительные процедуры метода ветвей и границ с применением комбинирования эвристических алгоритмов для оценки верхних значений. Используются четыре основные вычислительные процедуры метода ветвей и границ:
- процедура оценок;
- процедура ветвления;
- процедура отсева;
- процедура останова.
Процедура оценок включает в себя определение верхней (достижимой) оценки V и нижней оценки H. В качестве верхней оценки выбирается минимальное значение критерия для перестановок, сгенерированных различными стохастическими и детерминированными алгоритмами.
Нахождение значений нижних оценок определяется с учетом как длительностей выполнения операций, так и каноничности сетевой модели.
Процедура ветвления рассматривает допустимые варианты построения перестановок -на каждом шаге ветвления выбор осуществляется только из тех операций, непосредственно предшествующие для которых уже выполнены.
Процедура отсева предполагает, что если значение верхней (достижимой) оценки в одной из вершин дерева ветвлений не больше значения нижней оценки в другой вершине, то вторая вершина исключается из рассмотрения не в ущерб оптимальности.
Процедура останова определяет окончание процесса вычислений. Если осталась неотбро-шенной лишь одна вершина, в которой значения оценок совпадают, то найдено оптимальное решение задачи, которое определяется перестановкой, соответствующей верхней (достижимой) оценке.
Основным достоинством метода ветвей и границ является то, что, остановив вычисления в любой момент времени, лучшее значение верхней оценки (рекорд) можно принять за эвристическое решение задачи. Основным недостатком метода является необходимость определения оценок в каждой вершине дерева ветвления, а при большом числе исходных параметров число вершин становится очень большим, что не позволяет провести рассмотрение всех вершин дерева ветвлений.
Для получения совокупности верхних оценок используется набор стохастических алгоритмов: генетический алгоритм, алгоритм 81ши-
lated annealing и алгоритм ant colonies. Так как алгоритмы используют перестановку (или набор перестановок) в качестве исходных данных, а результатом работы алгоритмов также являются перестановки, то для наиболее эффективного решения задачи предлагается последовательное использование алгоритмов. Перестановка, соответствующая лучшему значению критерия рассматриваемой задачи, полученная одним из алгоритмов, используется как начальная для другого алгоритма. При построении решения используется алгоритм декомпозиции общей задачи на подклассы задач конвейерных и сетевых технологий.
Программная реализация
На основании построенной математической модели и с использованием описанных в работе алгоритмов на языке программирования C# в среде Microsoft.Net создана диалоговая программная система ПО «Кристалл», входящая в состав автоматизированной системы управления кристальным производством в ФГУП «ФНПЦ НИИИС им. Ю.Е. Седакова». Программный комплекс ПО «Кристалл» предназначен для решения задач оптимального планирования и управления процессом производства изделий микроэлектроники с субмикронными топологическими нормами.
Заключение
В работе рассмотрены задачи распределения ресурсов и упорядочения работ. Выделен класс задач, связанный с чередованием конвейерных и сетевых технологий.
Построена общая математическая модель, поставлена оптимизационная задача нахождения оптимального по быстродействию расписания. Для решения предложен алгоритм, в основу которого заложены процедуры метода ветвей и границ с использованием комбинирования стохастических алгоритмов для получения граничных оценок. Программная реализация предложенных в работе алгоритмов показала их высокую степень качества на ряде тестовых примеров с известными оптимальными решениями. Теоретические результаты работы легли в основу диалоговой программной системы, применяемой при планировании производства изделий микроэлектроники в ФГУП «ФНПЦ НИИИС им. Ю.Е. Седакова».
Список литературы
1. Афраймович Л.Г., Власов В.С., Куликов М.С. и др. Планирование и оперативное управление процессом изготовления сложных изделий // XII Всероссийское совещание по проблемам управления (ВСПУ-2014). Москва, 16-19 июня 2014 г.
2. Прилуцкий М.Х., Власов В.С. Построение оптимальных по быстродействию расписаний в канонических системах «конвейер-сеть» // Информационные технологии. 2011. № 3(175).
3. Прилуцкий М.Х., Власов В.С. Оптимизационные задачи распределения ресурсов при планировании производства микроэлектронных изделий// Системы управления и информационные технологии. 2009. № 1(35). С. 38-43.
4. Прилуцкий М.Х., Власов С.Е. Многокритериальные задачи объёмного планирования. Лексикографические схемы// Информационные технологии. 2005. № 7. С. 61-66.
OPTIMUM OPERATION SPEED SCHEDULES IN THE PRODUCTION OF SUPER-LARGE-SCALE INTEGRATED CIRCUITS
S.E. Vlasov, V.S. Vlasov
The article considers the problem of optimum operation speed schedules in production of microelectronic products with submicron topological norms. Computing techniques of the branch and bound method with heuristic procedures for upper bound estimation are proposed.
Keywords: microelectronics, super-large-scale integrated circuits, submicron topological norms, branch and bound method, heuristic procedure, upper bound.
References
1. Afrajmovich L.G., Vlasov V.S., Kulikov M.S. i dr. Planirovanie i operativnoe upravlenie processom izgotovleniya slozhnyh izdelij // XII Vserossijskoe soveshchanie po problemam upravleniya (VSPU-2014). Moskva, 16-19 iyunya 2014 g.
2. Priluckij M.H., Vlasov V.S. Postroenie optimal'nyh po bystrodejstviyu raspisanij v kanonicheskih sistemah «kon-vejer-set'» // Informacionnye tekhnologii. 2011. № 3(175).
3. Priluckij M.H., Vlasov V.S. Optimizacionnye zadachi raspredeleniya resursov pri planirovanii proizvodstva mikroehlektronnyh izdelij// Sistemy upravleniya i informacionnye tekhnologii. 2009. № 1(35). S. 38-43.
4. Priluckij M.H., Vlasov S.E. Mnogokriterial'nye zadachi ob"yomnogo planirovaniya. Leksiko-graficheskie skhemy// Informacionnye tekhnologii. 2005. № 7. S. 61-66.