Описание алгоритма оптимизации. Оптимизация алгоритмов оптимизации. Краткое описание используемых алгоритмов

Данный раздел Стандартные алгоритмы представляет собой введение в простановку задач различных методов оптимизации и включает в себя описание алгоритмов средней размерности (т.е. стандартных алгоритмов), используемых в данном тулбоксе. Указанные алгоритмы были выбраны вследствие их достаточно высокой устойчивости и итерационной эффективности. Выбор постановки задачи (например, без наличия ограничений, метод наименьших квадратов, при наличии ограничений, задача минимакса, многоцелевая задача или задача достижения цели) определяется сущностью решаемой задачи и требуемой эффективностью решения.

Данный раздел включает в себя следующие пункты.

Обзор методов оптимизации.

В разделе содержится представление оптимизации как метода поиска некоего набора параметров, которые можно будет в неком смысле считать оптимальными.
Данный набор параметров находится путем поиска минимума или максимума некой целевой функции и удовлетворяющей условиям ограничений типа равенств или неравенств и/или параметрическим ограничениям.

Оптимизация без наличия ограничений

Обсуждается применение квазиньютоновского метода и метода линейного поиска для оптимизации без ограничений. Так же приводятся детали выполнения коррекции матрицы Гессе и этапов линейного поиска в квазиньютоновском алгоритме применительно к функции fminunc.

Оптимизации методом наименьших квадратов

Обсуждается применение метода Ньютона-Гаусса и метода Левенберга-Маркварда для нелинейной оптимизации с применением метода наименьших квадратов (LS). Так же приводятся детали реализации методов Ньютона-Гаусса и Левенберга-Маркварда применительно к подпрограмм нелинейной оптимизации методом наименьших квадратов при использовании функций lsqnonlin и lsqcurvefit

Системы нелинейных уравнений

Обсуждается применение метода Ньютона-Гаусса, метода Ньютона и метода ломаных доверительных областей для решения систем нелинейных уравнений. Так же приводятся детали реализации методов Ньютона-Гаусса и метода ломаных доверительных областей применительно к функции fsolve.

Оптимизации при наличии ограничений

Обсуждается применение уравнений Куна-Таккера (KT) как некой базы метода Последовательного Квадратичного Программирования (SQP). Так же приводятся детали реализации методов корректировки матрицы Гессе, решения задач квадратичного программирования, а так же линейного поиска и этапы расчета по алгоритму SQP применительно к функциям fmincon, fminimax, fgoalattain иfseminf

Многоцелевая оптимизация

Приводится введение в многоцелевую оптимизацию, а также обсуждаются стратегии обращения с конкурирующими целями. Кроме того приводятся детали реализации метода Достижения цели и предлагается их посдедующее улучшение посредством SQP метода применительно к данной задаче.

Избранная библиография

Приводится список литературы в обоснование использованных методов применительно к алгоритмам средней размерности

Примечание. Термин средней размерности не является общестандартным термином и используется только как для введения отличия используемых алгоритмов от алгоритмов большой размерности, представленных в разделе "Алгоритмы большой размерности".

Обзор методов оптимизации

Методы оптимизации используются для того, что бы найти некий набор параметров х={x 1 , х 2 , … х n } которые в некотором смысле могут быть определены как оптимальными. В узком смысле это может быть поиск минимума или максимума некой функции как параметра от х={x 1 , х 2 , … х n }. В более широком смысле эта формулировка представляет собой минимизацию или максимизацию целевой функции, f(x) , при наличии ограничений в форме

Равенств

или неравенств

а также и/или ограничений,

на пределы изменения параметров.

Общая формулировка (GP) задачи параметрической оптимизации представляется следующим образом: следует найти вектор х={x 1 , х 2 , … х n }, обеспечивающий

(3-1)

при условии

где х - вектор оптимизируемых параметров (), f(x) - скалярная целевая функция (критерий) векторного аргумента (), G(x) - также некоторые скалярные функции векторного аргумента как некие функции от х () (при этом задача максимизации может сводиться к задаче минимизации при замене f(x) на -f(x) ).

Эффективность и точность решений данной задачи зависит как от числа параметров и ограничений, так и от вида целевой функции. При линейных ограничениях и линейной целевой функции приведенная задача оптимизации называется задачей линейного программирования (LP). Задача квадратичного программирования (QP) представляет собой минимизацию или максимизацию квадратичной (по аргументам) целевой функции при наличии ограничений линейного вида. Постановки задач типа (LP) и (QP) представляют собой достаточно реалистически достижимыми задачами. Более сложной является обобщающая задача нелинейного программирования (NP), когда целевая функция и ограничения представляют собой некие нелинейные функции от исходных аргументов. (NP), в общем случае, решается с помощью итерационных методов с коррекцией направления поиска на каждой итерации. Такая постановка задачи обычно решается через решение отдельных промежуточных задач (LP) и (QP)/

Оптимизация без наличия ограничений

Существующие алгоритмы оптимизации без наличия ограничений могут быть разделены на две группы - алгоритмы, базирующиеся на использовании производных минимизируемой функции (градиентные и методы второго порядка), и алгоритмы, использующие только значения функции (безградиентные).

Безградиентные методы (например, симплексный метод Нелдера-Мида ) более пригодны для задач, где минимизируемая функция является существенно нелинейной функцией или имеет разрывы. Градиентные методы (методы первого порядка) обычно эффективны в случаях целевых функций, непрерывных вместе с первыми производными. Методы второго порядка, такие как метод Ньютона, применяются реже, поскольку требуют больших вычислительных затрат для расчета матриц вторых производных.

Градиентные методы используют информацию о наклоне функции для выбора направления поиска экстремума. В одном из таких методов - наискорейшего спуска - на каждой итерации движение к точке минимума осуществляется в направлении (где - вектор-градиент целевой функции f(x) . Этот метод весьма неэффективен в ситуациях, когда поверхность целевой функции имеет узкие "овраги", как, например, у известной функции Розенброка

(3-2)

Минимальное значение данной функции, как нетрудно видеть, равно нулю при . Графическое представление изолиний данной функции приведено на Рис. 3, где также представлено траектория продвижения по направлению к точке минимума согласно метолу наискорейшего спуска из начальной точки [-1.9,2].

Рис. 3-1: Метод наискорейшего спуска для функции Розенброка (уравнение 3-2).

Оптимизация была прервано после 1000 итераций, хотя все еще на значительном расстоянии от точки минимума. Пунктиром представлены области, где согласно данному методу проходит непрерывный зигзагообразный переход с одной стороны оврага на другую. Отметим, что при направлении к центру данного графика число увеличенных шагов отмечается в случае, когда они лежат точно в центре оврага. Эту функцию из-за своеобразной формы линий равного уровня часто называют "банановой" функцией и используют как тестовую при проверке различных методов оптимизации. Изолинии представлены с экспоненциальным приращением вследствие резкого изменения наклона для U-образных оврагов.

интегральных схем типа ТТЛ">Технических наук: 05.13.06 / Салеев Дмитрий Владимирович;[Место защиты: Тамбовский государственный технический университет], 2016">

480 руб. | 150 грн. | 7,5 долл. ", MOUSEOFF, FGCOLOR, "#FFFFCC",BGCOLOR, "#393939");" onMouseOut="return nd();"> Диссертация - 480 руб., доставка 10 минут , круглосуточно, без выходных и праздников

Салеев Дмитрий Владимирович. Алгоритмическое обеспечение подсистемы оптимизации технологического процесса производства интегральных схем типа ТТЛ: диссертация... кандидата Технических наук: 05.13.06 / Салеев Дмитрий Владимирович;[Место защиты: Тамбовский государственный технический университет], 2016

Введение

1 Анализ исследований в области управления качеством при производстве интегральных схем 13

1.1 Исследование существующих теорий контроля качества продукции 13

1.2 Анализ технологического процесса производства интегральных схем 16

1.3 Анализ технологического процесса производства интегральных схем как объекта управления 20

1.4 Целевая функция технологического процесса производства интегральных схем 23

1.5 Анализ современных методов оптимизации технологических процессов и контроля качества производства интегральных схем и постановка задачи

исследования 27

Выводы к главе 1 37

2 Разработка подсистемы оптимизации технологического процесса производства интегральных схем 38

2.1 Сравнение статистических и адаптивных методов оптимизации технологических процессов 38

2.2 Анализ современных САПР для проектирования интегральных схем 39

2.3 Разработка подсистемы адаптивного управления как части автоматизированной системы управления технологического процесса производства интегральных схем 42

2.4Задача оптимизации и анализ методов многокритериальной оптимизации технологических процессов 46

2.5 Алгоритм выделения главного критерия качества технологического процесса производства интегральных схем 50

2.6 Модификация метода анализа иерархий Т. Саати для выбора лучшего технического решения при производстве интегральных схем 54

2.7 Алгоритм выбора технологического оборудования при производстве новой серии интегральных схем 58

2.8 Алгоритм управления технологическим процессом производства интегральных схем 64

2.9Алгоритм выбора режима построения модели технологического процесса 76

Выводы к главе 2 83

3 Моделирование управления технологическим процесом производства интегральных схем с использованием алгоритма управления технологическим процессом производства интегральных схем (с подстройкой модели) 84

3.1 Моделирование управления технологическим процессом производства интегральных схем с подстройкой модели 84

3.2 Реализация алгоритма управления технологическим процессом производства для интегральных серий 130 и 533 91

Выводы к главе 3 105

4 Формирование математических моделей технологических операций при производстве интегральных схем 106

4.1 Классификация и анализ методов аппроксимации нелинейных характеристик 106

4.2 Построение модели операции ионной имплантации 116

4.3 Алгоритм построения модели технологических операций производства интегральных схем 120

Выводы к главе 4 124

Заключение 125

Список литературы

Введение к работе

Актуальность темы. Повышение эффективности производства с целью обеспечения требуемого уровня качества изделий в условиях налаженного технологического процесса (ТП) рассматривается как важная научно-техническая проблема, решение которой особенно важно при производстве интегральных схем (ИС).

В научно-технической литературе большое внимание уделяется проблемам регулирования и управления ТП: известны работы авторов по данной тематике Я. Е. Львовича, В. В. Токарева, А. Е. Егорова и других Алгоритмы оптимизации и регулирования ТП производства ИС строятся в работах российских ученых В. К. Дорошевича, Ю. А. Долгова, в США исследования в данной области проводятся Д. А. Ходжсом, Д. Хурингом, Г. Смитом, в Белоруссии вопросы надежности ИС изучает группа ученых под руководством Д. Л. Ануфриева.

В сложившихся экономических условиях – с учетом роста курса доллара и евро, действующих в отношении России санкциях западных стран по запрету на продажу высокотехнологичного оборудования, в том числе для производства изделий микроэлектроники, а также реализующимися программами по созданию «Отечественной электронной компонентной базы, используемой при производстве вооружений, военной и специальной техники» и «Импортозамещению технологического оборудования и комплектующих изделий для производства вооружений, военной и специальной техники», необходимо проведение мероприятий, позволяющих производить на отечественном оборудовании ИС для различных отраслей промышленности.

Эффективное управление производством ИС может быть достигнуто при использовании современных подсистем оптимизации ТП с учетом его особенностей: влияния качества и неоднородности исходных материалов на качество ИС, групповой характер производства, многокритериальность, возможностью изготовления новой серии и (или) нового типа ИС с уровнем качества, отличным от ранее требующегося.

Таким образом, актуальность темы определяется необходимостью алгоритмизации подсистемы оптимизации конкретного класса ИС с целью повышения выхода годных.

Цель диссертационной работы – обеспечение заданного уровня качества производимых ИС типа ТТЛ и алгоритмизация соответствующей подсистемы оптимизации ТП производства ИС с целью повышения процента выхода годных ИС.

Для достижения поставленной цели ставятся следующие задачи :

провести исследование ТП производства ИС как объекта управления и современных САПР, выявить существующие недостатки и поставить задачу оптимизации;

разработать на основе проведенного анализа функциональную схему подсистемы оптимизации ТП процесса ИС;

проанализировать существующие подходы к многокритериальной оптимизации для применения в подсистеме оптимизации ТП производства ИС;

построить алгоритмы поиска оптимальных вариантов производства ИС – алгоритм построения математических моделей в условиях недостатка практиче-

ских данных, алгоритм выбора оборудования, алгоритм управления ТП с подстройкой модели;

провести имитационное моделирование работы ТП производства ИС с подстройкой модели, а также выдать рекомендации по корректировке настройки оборудования для важнейших процессов (операций) ТП производства ИС;

разработать алгоритм формирования математических моделей отдельных технологических операций при производстве ИС.

Методы исследования. При проведении исследований в работе использовались методы многокритериальной оптимизации, системного анализа, дискриминационный метод оптимизации, элементы нечеткой логики, теории принятия решений, численные методы.

В диссертации получены следующие основные положения, выносимые на защиту и характеризующиеся научной новизной :

разработан алгоритм управления ТП производства ИС, компенсирующий влияние возникающих в ходе ТП неконтролируемых параметров (случайной и постоянной составляющих, в том числе устаревание оборудования) на итоговое качество производимых ИС;

разработаны алгоритмы корректировки параметров ТП производства наиболее трудоемких технологических операций для отечественных серий ИС, обеспечивающие получение ИС с заданными параметрами и направленные на повышение процента выхода годных, с учетом особенностей конкретного оборудования, на котором изготавливаются данные ИС;

предложена математической модель температуры кремниевой пластины в ходе операции некогерентного отжига, позволяющая с высокой точностью реали-зовывать температурно-временные режимы отжига пластин по заданной программе;

сформирован алгоритм построения модели технологических операций, отличающийся тем, что он позволяет с большей точностью в сравнении с используемыми в настоящее время в ТП моделями аппроксимировать функциональные зависимости технологических операций ТП производства ИС;

разработана функциональная схема подсистемы оптимизации ТП производства ИС, отличающаяся наличием модулей оптимизации и управления, определяющая механизм взаимодействия разработанных алгоритмов.

Практическая значимость результатов работы:

применение разработанного алгоритма управления ТП производства ИС с подстройкой модели в подсистеме оптимизации процесса производства позволяет добиться улучшения выходных параметров ИС;

функциональная схема подсистемы оптимизации ТП производства ИС определяет основные требования к алгоритмам управления и составу технологического оборудования;

использование алгоритмов поиска оптимального управленческого решения позволяет получать ИС с заданным уровнем качества с учетом их дальнейшего применения;

применение предложенного алгоритма аппроксимации позволяет проводить аппроксимацию практических данных с меньшими вычислительными затратами и большей точностью по сравнению с известными методами аппроксимации.

Тематика работы соответствует следующему пункту паспорта специальности 05.13.06 – Автоматизация и управление технологическими процессами и производствами (по отраслям):

4. Теоретические основы и методы математического моделирования организационно-технологических систем и комплексов, функциональных задач и объектов управления и их алгоритмизация.

Достоверность результатов обусловлена строгим математическим обоснованием используемых методов, результатами математического моделирования, а также сравнением с теоретическими данными, известными в литературе.

Основные положения, выносимые на защиту:

    алгоритм управления ТП производства ИС с подстройкой модели с использованием обобщенного критерия качества;

    алгоритм выбора режима построения модели ТП производства ИС;

    алгоритм построения аппроксимационной модели технологических операций производства ИС;

    функциональная схема подсистемы адаптивного управления ТП производства ИС.

Полученные теоретические и практические результаты были использованы при выполнении работ ФКА «Роскосмос» ОАО «Турбонасос» (с привлечением соисполнителей). Разработанные алгоритмы внедрены в учебный процесс «Воронежского института высоких технологий» – АНОО ВО.

Апробация работы. Основные положения диссертационной работы докла
дывались и обсуждались на следующих научно-технических конференциях: Меж
дународной молодежной конференции «Математические проблемы современной
теории управления системами и процессами», г. Воронеж, 2012 г.; Международ
ной молодежной конференции «Микроэлектронные информационно-
управляющие системы и комплексы», г. Воронеж, 2012 г.; IX Международной
научно-практической конференции «Техника и технология: новые перспективы
развития», г. Москва, 2013 г.; XII Всероссийской научно-технической конферен
ции «Новые технологии в научных исследованиях, проектировании, управлении,
производстве (НТ ВГТУ – 2013)», г. Воронеж, 2013 г.; XV Международной науч
но-практической конференции «Современное состояние естественных и техниче
ских наук», г. Москва, 2014 г.; XVI Международной научной конференции «Ак
туальные вопросы современной техники и технологии», г. Липецк, 2014 г.; VII
Международной научно-практической конференции «Фундаментальные и при
кладные исследования в современном мире», г. Санкт-Петербург, 2014 г.; конфе
ренции и семинары направления САПРИС Воронежского института высоких тех
нологий (2011-2015 гг.).

Публикация результатов работы. По теме диссертации опубликовано 14 научных работ, в том числе 5 в изданиях, рекомендованных ВАК РФ,

1 работа – в иноязычном издании, включенном в международную систему цитирования Web of Science, 2 работы написаны с другими авторами.

Структура и объем диссертации. Диссертационная работа состоит из введения, четырех глав, заключения, списка используемой литературы и приложений. Общий объем работы составляет 144 страницы машинописного текста, включая 41 рисунок, 11 таблиц, список литературы состоит из 127 наименований.

Анализ технологического процесса производства интегральных схем как объекта управления

Оценка степени влияния, наличия связей между входными и выходными параметрами должна быть получена на основе анализа данных в ходе ТП: формируется модель процесса (теоретическая / эмпирическая), формируемая на основе анализа физических или химических процессов, либо статистическая, составляемая на основе анализа практических данных) и каждой технологической операции.

На основе этих моделей строятся алгоритмы управления, определяются (рассчитываются) значения управляющих параметров, обеспечивающих требуемое качество производимых изделий. Операции в ходе ТП можно разделить на несколько групп: - операции контроля (измерения) – т.е. операции, в ходе которых определяются или измеряются параметры ТП; - формирующие или производственные операции – формируются параметры изготавливаемого изделия; вспомогательные – различные подготовительные операции, операции коррекции процесса (воздействия на процесс со стороны системы управления) и другие.

Схема ТП производства ИС В общем случае схема ТП производства ИС представлена на рисунке 1.5. ТП изготовления ИС относится к классу дискретных : операции разделены во времени: только по окончании одной операции, начинается следующая: то есть операция (n+1, n=0,1,2 …m) начинается по окончании операции n, затем начинается n+2) . Таким образом, при разработке подсистемы оптимизации необходимо учитывать, что значения выходных параметров на большинстве технологических операции при производстве ИС могут быть измерены только по ее окончании и до начала следующей и фактически измерения (операции контроля) также проходят дискретно.

ИС состоит из множества соединенных между собой микроэлектронных элементов в поверхностном слое кристалла. Как отмечено ранее, одной из особенностей развития микроэлектроники является уменьшение размеров изготавливаемых ИС при одновременном увеличении числа элементов .

В настоящее время технологии позволяют изготавливать ИС, состоящих до одного миллиона элементов и более – БИС и СБИС.

ТП производства таких ИС состоит из сотен последовательных операций по формированию структурных слоев . Главной технологической задачей является формирование этих структурных слоев с наиболее высокой точностью.

Этого можно достичь с использованием различных методов оптимизации, адаптивного управления, корреляционным анализом и прочим в алгоритмах управления ТП: проводится учет неконтролируемых параметров на ТП и на каждую операцию .

Общая модель ТП это последовательность частных моделей, описывающих все технологические операции. При производстве ИС, необходимо составить модель ТП или отдельной операции в целом для использования в алгоритме управления.

Данная модель в дальнейшем будет корректироваться в ходе опытной отработки оборудования, а также с учетом конкретных технических требований для конкретного изделия.

Управление ТП позволяет создать алгоритмы выбора, уточнения и корректировки режимов работы, для улучшения качества изготавливаемой продукции и на увеличение процентного выхода годных изделий .

Главным показателем эффективности ТП производства ИС является значения показателя выхода годных, что, в свою очередь, зависит от стабильности условий производства (качества исходных материалов, налаженности ТП, правильности технологии контроля и т.д.) .

Необходимость управления ТП определяется тремя основными факторами: 1. технические характеристики входных и выходных компонентов должны поддерживаться на требуемом уровне от партии к партии; 2. остановка каждой технологической операции должна выполняться в соответствии и имеющимися алгоритмами, синхронизирующими включение или отключение или изменение воздействия на процесс со стороны различного оборудования; 3. постоянный технологический износ оборудования требует регулярной коррекции параметров процесса. Запишем полную модель ТП как последовательность отдельных технологических операций. Рассмотрим (7-1)-ю операцию ТП. ut=F(ut_1,vt), где щ это параметры качества ИС на текущей операции (конструктивные), v,- -вариант производства, то есть некоторая совокупность воздействующих на процесс изготовления параметров, задаваемых системой управления. Однако необходимо учитывать, что фактически требуются не параметры качества ИС (глубина р-п перехода, доза внедренных ионов и прочие), а конструктивные параметры, зависящие от них (быстродействие, стойкость к радиационным воздействиям и прочие), то есть: gt=F\ut_1,kt), где gt - это контролируемые параметры текущей операции, kt - это конструктивные параметры.

Процесс изготовления ИС является по существу последовательным переходом из одного состояния в другое по некоторой траектории.

Так как целью проведения ТП является получение заданных характеристик производимых ИС, то для использования в управлении режимами производства и в ТП, необходимо получить несколько (множество) функций (траекторий), позволяющих управлять ТП: происходит коррекция (подстройка) по конечному состоянию. Фактически, необходимо решить задачу траекторного управления, то есть найти оптимальное решение из множества с учетом заданных характеристик изготавливаемой ИС - то есть подобрать такие значения управляющих воздействий, чтобы выходные характеристики изготавливаемой ИC ,"(где п -общее число операций в ТП) были максимально совпадающими с требуемыми .

Исходными данными к разработке системы управления является некоторая базовая технология производства ИС. Выбор такой технологии означает, что существует последовательность технологических операций и установлены ограничения на управляющие переменные.

Анализ современных САПР для проектирования интегральных схем

Основная задача для повышения эффективности ТП состоит в создании и настройке (подстройке под конкретные параметры выходных характеристик ИС в зависимости от типа изделия, производимого в данный момент): в АСУ ТП помимо функции управления текущим ТП, должна быть реализована возможность хранения данных (система баз данных), являющихся характеристиками ТП и (или) влияющими на конечные характеристики изготавливаемых ИС – настроек оборудования в зависимости от типа производимой ИС, показания КИП (датчиков) в момент производства ИС, записи сообщений о сбоях и ошибках в ТП, которые впоследствии можно будет использовать для прогнозирования выхода годных изделий при производстве новой серии аналогичных ИС, для анализа параметров ТП – настроенности, эффективности с целью их улучшения, поиска ошибок в ТП, оценки экономической эффективности производства ИС данной серии .

АСУ ТП должна состоять из нескольких модулей (подсистем) – подсистемы управления технологическими операциями (каждой технологической операции), управления режимами ТП, модуля управления транспортными операциями, подсистемы межоперационного контроля и работать в режиме реального времени.

Таким образом, АСУ ТП производства ИС должна обеспечивать трансляцию информации от конструктора до производства, имея при этом обратные связи, которые позволяют вести разработку новых модификаций, устранять ошибки, выявленные в ходе производства, производить текущий контроль производства.

Для оптимизации производства в составе АСУ ТП применяются различные системы управления качеством производимых изделий, в состав которых входят подсистемы оптимизации производства .

Под предлагаемой автором данной работы подсистемой оптимизации понимается автоматизированная система, обеспечивающая различные виды воздействий на ТП производства ИС на любом этапе производства с целью улучшить качество выпускаемой продукции: уменьшить количество бракованных (или не соответствующих техническим требованиям, предъявляемым к изделиям согласно техническому заданию (негодных)), улучшить качество производимой в данной момент серии ИС, используя ранее полученные данные .

Структура подсистемы оптимизации ТП производства ИС определяется требованиями к эффективности процесса производства, разнообразием изготавливаемых устройств, а также возможностью гибкой настройки типов изготавливаемых микросхем, загрузки ранее используемых значений параметров ТП, возможностью изменения параметров в ходе ТП оператором или технологом.

Функциональная схема подсистемы оптимизации производства интегральных схем может быть построена в соответствии с принципами, изложенными в известных работах по данной проблеме .

Разработанная нами функциональная схема подсистемы оптимизации представлена на рисунке 2.2.

Основой модуля автоматизированного задания является головная программа, осуществляющая передачу настроек и параметров ТП производства ИС с целью корректировки настроек оборудования и поддержания заданного уровня качества производимых изделий. Для возможности корректировки ТП в ручном режиме предназначены программы обработки сообщений и программы диалогового взаимодействия. Программы ИС С помощью модуля ввода и вывода оператор может выгрузить из базы данных текущие настройки, либо задать их в ручном режиме (посредством ручного ввода или загрузки из файла историй настроек, использовавшихся при производстве микросхем ранее), а также указать характеристики используемых материалов (сырья).

В модуле оптимизации составляется список операций, получаемого из системы управления верхнего уровня для данного конкретного ТП и проводится его анализ: задается точность оптимизации и параметры производства (настройки оборудования).

Полученная информация передается в модуль прикладных моделей, который характеризуется наличием аналитических, статистических моделей (теоретических, а также практических, составленных с использованием метода регрессионного анализа ) основных операций ТП производства ИС: отжига, окисления, имплантации и прочих для определения «точек контроля». Здесь происходит определение входных и выходных параметров для каждой последовательной операции ТП и формирование целевой функции оптимизации.

Ключевой особенностью предлагаемой нами подсистемы оптимизации производства ИС является модуль управления. В нем используется алгоритмы управления (с подстройкой модели) . Данный модуль в процессе производства формирует и уточняет математическую модель, полученную из модуля прикладных моделей, а также передает ее в модуль автоматизированного задания: проводятся процедуры максимизации целевой функции ряда дискретных аргументов при наложении функциональных, топологических ограничений . Полученные настройки оборудования, параметры процесса и выражения для управления заносятся в базу данных для возможности анализа процесса и загрузки при производстве следующих партий ИС.

Реализация алгоритма управления технологическим процессом производства для интегральных серий 130 и 533

Фактическое значение рассчитывается путем подстановки в целевую функцию вместо текущих значений Yтек, величин, измеряемых на выходе ТП.

Расчетное значение нами предлагается найти подстановкой значений выходных переменных Y1i и Y2i, рассчитанных по математической модели.

При этом если модуль разности не превышает некоторого допустимого значения, считается, что математическая модель адекватно описывает реальный ТП и может использоваться для управления процессом. В остальных случаях математическая модель требует уточнения.

Значения управляющих и выходных переменных для i-гo момента обозначим через U1i, U2i, U1i, U2i. Взаимодействие с системой управления предлагается организовать следующим образом: Передача данных в систему управления начинается в момент времени t=t0=0. С момента начала ТП требуется некоторый промежуток времени (с момента t=t0 до t=ti, i=1,2…n) для сбора сведений о текущем состояний системы: настройках оборудования, заданных алгоритмах производства ИС и прочего. В момент времени t=ti начинается реализация алгоритма управления. Включение системы управления (то есть управление ТП) начинается с момента времени ti ,то есть с момента включения технологического оборудования. В процессе управления передаваемые данные заносятся в систему управления и записываются в файлы истории ТП через определенный промежуток времени.

При оптимизации ТП следует ограничить данные передаваемые в систему управления, используемые в настоящий момент: нужно применять данные за последний промежуток времени – t, так как ранее записанные данные являются устаревшими. Начало Измерение выходных переменных текущей операции Вычисление расчетного и фактического значений целевой функций Fфактич_i , Fрасч_i Уточнение параметров модели и параметров уравнений адаптивных уравнений I Расчет Xопт Передача сигнала в АСУ на корректировку режима работы Нет Рисунок 2.11 – Алгоритм управления ТП производства ИС Момент времени t=0 – момент первого измерения параметров ТП. Величина t подбирается с учетом времени проведения каждой технологической операции.

Таким образом, АСУ ТП получает и передает данные, необходимые для адаптации под фактическое состояние ТП. Для определения влияния степени воздействия с помощью системы управления под фактическое состояние процесса для производства последующих серий изделий используется регрессионный анализ и данные, переданные в АСУ ТП.

Одним из основных элементов разрабатываемой подсистемы оптимизации ТП является модуль управления (параграф 2.3), одним из назначений которого является получение математической модели, связывающей параметры качества выпускаемой продукции на каждой технологической операции в зависимости от выбранных настроек технологического оборудования, исходных данных от предыдущих операций (входных параметров для текущей операции), а также величины текущего воздействия на производимое изделие.

Полученная таким образом модель используется в алгоритме управления ТП по любому из параметров качества .

Для практической реализации, необходимо информационно-вычислительное устройство, канал передачи данных с технологической системой с обратной связью (двунаправленный), использование данных контрольно-измерительных приборов (датчики) системы управления ТП производства ИС для контроля входных, выходных параметров процесса, а также воздействий на процесс . Рисунок 2.12 – Структурная схема модуля управления

Предлагаемая структурная схема блока подстройки математических моделей технологической системы представлена на рисунке 2.12. Систему автором предлагается разрабатывать на базе существующей системы управления ТП производства ИС (блок АСУ на рисунке 2.1), в составе: системы технологического оборудования (ТО); системы датчиков (КИП), снимающих информацию о текущем значении параметров качества; ПЛК.

Контроллер предназначен для организации обмена информацией датчиков с ЭВМ и технологической системой. Связь ЭВМ с контроллером осуществляется через стандартный интерфейс RS-485 / RS-232 .

Функциональная схема блока подстройки математических моделей технологической системы представлена на рисунке 2.13.

Программное и алгоритмическое обеспечение блока подстройки математических моделей можно разделить на две части.

Первая часть относится к алгоритмическому обеспечению аппаратной части системы управления ТП производства ИС и выполнение заданного режима работы и запись информации в базу данных для возможности в дальнейшем оценки качества производимой в данной партии ИС.

Алгоритм можно разделить на несколько блоков: блок «Анализ исходных данных» предназначен анализа исходных данных перед началом текущей операции.

К исходным данным относятся: исходное сырье (материалы), режимы работы, перечень параметров качества которые необходимо обеспечить в ходе производства, и их требуемые значения. По введенным данным модуль управления устанавливает, существует ли ранее использовавшаяся математическая модель, полученная при производстве предыдущих партий ИС .

Построение модели операции ионной имплантации

Рассмотрим в качестве примера график зависимости толщины окисла от времени при постоянных температуре и давлении газообразного окислителя.

На рисунке 4.2 представлена теоретическая зависимость толщины окисла от времени окисления при постоянных температуре и давлении газообразного окислителя, на рисунке 4.3 – экспоненциальная аппроксимация вышеуказанной характеристики.

Существенным недостатком экспоненциальной аппроксимации является ограниченность его применения .

Данный метод аппроксимации обеспечивает высокую точность аппроксимации нелинейных характеристик на требуемом участке, но для ограниченного числа характеристик: характеристика функции должна быть по форме похожа на экспоненту, в противном случае погрешность аппроксимации существенно возрастает .

К преимуществам использования данной аппроксимации стоит отнести достаточно простые расчеты коэффициентов аппроксимации. Кусочно-линейная аппроксимация.

Основной принцип кусочно-линейной аппроксимации состоит в том, чтобы исходная зависимость разбивается на несколько отрезков небольшой длины, на которых она имеет вид близкий к линейному. Таким образом, на каждом участке зависимость аппроксимируется функцией вида: F(x) = Kx + b где К и Ъ это некоторые коэффициенты. Результатом аппроксимации будет некоторая функция: (К0х + Ь0,х = 0...х0 K1x + b1,x = x0...x1 F(x)=.... Кхп + bn,x = xn_1...xn Недостатком аппроксимации такого вида является возможность разрыва аппроксимирующей функции в местах х0, xh…, xn. Однако, исходя из принципов формирования полупроводниковых подложек и ИС, разрывы в аппроксимационной функции физически не могут быть обоснованы.

Исходя из этого, при применении данного вида аппроксимации, требуется выполнение условия согласованности (сходимости) соседних отрезков: F(xt) = Ktxt + bt = Ki+1xt + bi+1 i = 0...n что может привести в конечном итоге к увеличению числа отрезков, либо к существенному возрастанию погрешности аппроксимации.

Для недопущения разрыва функции в точках перехода, для каждой линии из двух отрезков (ломаная линия из двух прямолинейных отрезков) используются выражение вида: F(x) = -(\x\ + x) Достоинством кусочно-линейной аппроксимации является простая форма аппроксимирующей функции (выражения для расчета коэффициентов) и малые вычислительные затраты. Аппроксимация зависимости представлена на рисунке 4.4.

Результаты кусочно-линейной аппроксимации (сплошная линия) зависимости толщины окисла от времени окисления при постоянных температуре и давлении газообразного окислителя (число разбитий = 16). Существенным недостатком кусочно-линейной интерполяции – в точках стыка двух отрезков имеется излом. При аппроксимации нелинейных характеристик с высокой степенью точности, необходимо увеличение количества отрезков, на которых данная функция рассматривается, что в конечном итоге потребует значительных вычислительных затрат. При этом увеличение числа отрезков требует увеличения числа практических (экспериментальных) данных, что возможно далеко не всегда.

Полиномиальная аппроксимация. Для полиномиальной аппроксимации используется следующее выражение: т=Ъу (4.2) г=0 где п (п=0,1,2…т - степень полинома, Kt - коэффициенты аппроксимации, т -порядок полинома. При порядке полинома равном единице, выражение (4.2) представляет собой по сути выражение для линейной аппроксимации. С увеличением порядка полинома (степени полинома), ошибка аппроксимации уменьшается .

Для нахождения коэффициентов аппроксимации наиболее часто для широкого круга задач используется метод наименьших квадратов , который состоит в следующем: проводится поиск таких значений коэффициентов регрессии, при которых сумма квадратов отклонений теоретического распределения от фактического (экспериментального) была бы наименьшей: m .-F(jc,.))2- min V 2=1 где (хь F(x{)), (х2, F(x2))… (xN, F(xN)) - заданный набор точек (экспериментальные данные). Аппроксимационная функция ищется в виде многочлена т-ой степени: F(xt) = К0 + K1xt + K2x2 +... + Ктх = J К$ 7=0 Требуется найти набор коэффициентов аппроксимации Ц}, для которых значения функции/ будет максимально приближена к практическим данным. Для этого (4.1) дифференцируется по каждому из параметров я,- и приравнивается к нулю.

В общем случае получается система уравнений, которая решается в матричном виде. Результаты аппроксимации экспериментальных данных зависимости глубины залегания бора в кремнии. Вид аппроксимации Вид функции аппроксимации Погрешность аппроксимации Числоопераций(асимптотическаяоценка) Экспоненциальная F(x) = F0-exp(Kx-b) 2,510-2 O(log n) Кусочно-линейная F{x) = Kx + b 1,14 Ю-2 Зависит отчисла разбиений0(п2) Полиномиальная(метод наименьшихквадратов) г=0 2,16 КГ4 (п=4) О(п) Сравнение результатов аппроксимации зависимости толщины окисла от времени окисления при постоянных температуре и давлении газообразного окислителя представлены в таблице 4.2.

Таким образом, наибольшую точность показал метод наименьших квадратов, предлагается использовать его для аппроксимации функциональных зависимостей в алгоритме построения моделей технологической операции подсистемы оптимизации ТП производства ИС.

Рассмотрим процесс ионной имплантации на примере имплантации бора в кремнии, как одним из наиболее часто используемых при производстве ИС в настоящее время .

Из теоретических данных известно, что профиль внедренных ионов представляется в виде гауссовой кривой с максимумом концентрации примеси на глубине Rp: где Щх) - концентрация внедренной примеси, L доза ионов, Rp - средний пробег ионов, ARP - дисперсия среднего проективного пробега. Однако на практике при имплантации, форма профиля внедренных ионов может существенно отличаться от гауссовой. Причины данного несоответствия теоретических и практических данных связаны, в частности, с тем, что происходит диффузионное перераспределение примеси, а также наблюдается эффект каналирования, а также влияют другие факторы .

В данном разделе рассматриваются задачи оптимизации, возникающие в многоэтапных (многошаговых) процессах принятия решений, излагается метод оптимизации Р. Веллмана и анализируются условия его применимости. Приводятся примеры и практические задачи, решаемые по этому методу, который называется динамическим программированием. Некоторые из этих задач рассматриваются и в последующих разделах при изложении методов линейного и нелинейного программирования, что позволяет оценить сравнительные возможности различных методов. Кроме того, излагается модификация метода Веллмана «Динамическое программирование на множествах Парето», которая для широкого круга задач более эффективна, чем оригинальный метод. Приводятся практические задачи из различных областей, которые решаются с помощью нового метода.

Многоэтапные процессы принятия решений

Динамическое программирование - это особый метод оптимизации, наиболее эффективный при решении задач, распадающихся на ряд последовательных этапов (шагов), таких как планирование производства и инвестиций на ряд временных интервалов (лет, кварталов, месяцев), последовательность тестовых испытаний при контроле аппаратуры, поиск оптимальной траектории движения и др. В любом случае, речь идет о процессах, в которых окончательное решение (план, проект, последовательность управляющих воздействий, обеспечивающая нужную траекторию и т. д.) вырабатывается последовательно (по шагам), причем на каждом шаге приходится решать однотипные задачи, которые существенно проще, чем решение исходной задачи в целом. В этом и состоит основная идея метода: свести решение одной сложной задачи к решению множества однотипных, иногда совсем простых задач, например выборка чисел из массива, суммирование и сравнение результатов.

Возникновение динамического программирования связано с исследованием многошаговых процессов, возникающих в теории создания запасов и распределения ресурсов.

Основная идея, которая привела к созданию вычислительного метода, была сформулирована в начале 50-х годов прошлого века Р. Веллманом (R. Bellman), сделавшим самый большой вклад в развитие метода, который он назвал «динамическое программирование» , но который чаще называют просто методом Веллмана.

Метод не является универсальным, причем далеко не всегда в конкретной практической задаче удается обосновать без дополнительного анализа возможность его применения, а тем более отсутствие такой возможности.

Реализация метода для каждого конкретного многошагового процесса принятия решений, как правило, требует разработки нового алгоритма. Многие практические задачи, которые можно решать с помощью этого метода, были рассмотрены его автором совместно с Дрейфусом (S. Dreyfus) .

Первоначально метод предлагался для решения сравнительно узкого класса задач, возникающих в процессах, которые развиваются во времени. Отсюда и название: динамическое программирование, причем слово программирование скорее означало планирование, чем разработку компьютерных программ. Фактически этот метод, как и рассматриваемый ниже симплекс-метод Данцига для решения задач линейного программирования, был разработан на заре «компьютерной эры», то есть до массового применения вычислительной техники. Тогда слово «programming» на русский язык переводилось как «планирование», и метод Р. Веллмана первоначально назывался «динамическое планирование». Через некоторое время после появления первых работ Р. Веллмана выяснилось, что для многих задач, которые не являются многоэтапными в явном виде, эту многоэтапность можно организовать искусственно и применить метод Веллмана.

Для изложения основной идеи метода рассмотрим сначала простую задачу поиска оптимального пути на двумерной прямоугольной сетке, в которой разрешены переходы из одного узла в другой только по горизонтали (вправо) или по вертикали (вверх). Заданы затраты на каждый из возможных переходов и требуется найти путь с минимальными суммарными затратами из левого нижнего угла сетки (рис. 2.1 точка А) в правый верхний угол (точка В). Такой путь называется оптимальным. Узлы сетки пронумерованы так, как показано на рис. 2.1, где шип задают соответственно вертикальный и горизонтальный размеры сетки (число шагов по вертикали и горизонтали соответственно).

Затраты на переход в узел i, j по горизонтали (из узла i, j-1) обозначим как gy ; а по вертикали (из узла i-1, j) - vy. В точке А соответствующие величины равны нулю. Таким образом, исходными данными в этой задаче являются: m, п и все шаговые затраты gy и vy (i = 0, 1,2, ..., m; j = 0, 1,2, ..., п). Всего n(m + 1) чисел gy и m(n + 1) чисел vy, то есть всего 2mn + m + п переходов и соответствующих им затрат.

Рис. 2.1.

При небольших размерах сетки можно попытаться решить задачу методом полного перебора вариантов возможных путей из точки А в точку В. Однако эта идея абсолютно бесперспективна уже при величинах шип порядка 10 из-за резкого роста числа вариантов возможных путей из точки А в точку В с увеличением размеров сетки. Действительно, каждому варианту пути из точки А в точку В соответствует ровно m шагов по вертикали и ровно п шагов по горизонтали, но последовательность этих шагов для каждого варианта своя. Если шагу по горизонтали поставить в соответствие 0, а шагу по вертикали 1, то очевидно, что вариант пути - это выбор размещения m единиц по m + п возможным местам (оставшиеся п мест займут нули). Для размещения первой единицы имеется m + п возможностей, для второй - m + n - I возможностей и т. д. В итоге получаем формулу для числа вариантов пути N.

Уже при m = п = 10 N = 184756.

Следующая идея состоит в том, чтобы из точки А идти в том направлении, которое требует минимальных затрат на первом шаге (первый ход), не думая о затратах на последующих шагах, и так в каждой точке. То есть рассматривать только затраты на данном шаге и выбирать тот переход, для которого на данном шаге затраты минимальны. Легко убедиться в ошибочности этой идеи даже при m = n = 1 (рис. 2.2).

Действительно, если первый шаг выбрать по вертикали в точку С (затраты 2 против 7), то в итоге после второго шага получим суммарные затраты, равные 12, а при выборе на первом шаге «неоптимального» решения (точка D) суммарные затраты равны всего лишь 8.

Рис. 2.2.

Приходим к выводу об ошибочности этой простой идеи принятия решения без учета его последствий. Иначе говоря, надо смотреть далее, чем на один ход вперед.

Поиск оптимального пути можно рассматривать как многошаговый процесс. На первом шаге находимся в точке А и имеем две возможности: пойти вверх или направо. Мы убедились на рассмотренном примере (рис. 2.2), что сделать выбор нельзя, так как нужно учитывать последствия этого выбора. При любом выборе попадем мы в точку (0, 1) или (1, 0), встанет та же задача выбора из двух возможностей и опять выбор сделать нельзя и т. д. Однако существуют точки, находясь в которых мы не имеем выбора. Эти точки С и D находятся в одном шаге от последней точки В и имеют координаты (m, n- 1) и (т- 1, п) (рис. 2.3).


Рис. 2.3.

Для каждой из этих точек запомним затраты на оставшийся до точки В путь и рассмотрим предпоследний шаг. В двух шагах от финиша мы можем быть в точках Е, F или G. В точках Е и G выбора нет, и мы просто запомним для каждой из них суммарные затраты на весь оставшийся путь. На рис. 2.3 это 10 для точки Е и 8 для точки G. А что делать, если мы в двух шагах от финиша окажемся в точке F? Ответ кажется простым: надо идти в точку С, а не в точку D, так как несмотря на то, что на предпоследнем шаге затраты больше (2 против 1), но с учетом затрат на оставшийся путь (4 против 7) суммарные затраты на путь до точки В окажутся меньше (6 против 8). Конечно, из точки F надо идти в точку С, но при одном непременном условии: ничто не может помешать нам это сделать, нет никакой связи с тем, как мы попали в данную точку, или, как говорят, нет «предыстории». В нашей задаче такой связи нет, но в более сложных задачах она вполне возможна. Например, могло быть задано дополнительное условие: суммарное количество изменений направления (поворотов) не больше заданного числа. Тогда мы, во-первых, должны знать, сколько было сделано поворотов до попадания в точку F и каким образом (по горизонтали или по вертикали) мы попали в эту точку, то есть должны знать предысторию. Может оказаться, что мы попали в точку F по горизонтали и уже исчерпали заданный «лимит» поворотов, тогда переход из точки F в точку С просто невозможен, так как это уже лишний поворот. Получается, что сделать оптимальный выбор в точке F нам может помешать предыстория.

Продолжим поиск оптимального пути в нашей задаче, в которой таких осложнений нет и предыстория не имеет значения. В точке F мы запомним затраты на весь оставшийся путь при условии, что выбран оптимальный вариант: переход в точку С. Сделав еще шаг назад, то есть оказавшись за три шага до финиша, мы увидим, что ситуация полностью аналогична предыдущей. Выбора или нет (точки на крайней верхней или крайней правой стороне сетки), или есть две возможности, но для каждой из них уже известны последствия выбора. Так, оказавшись в точке М, мы выберем не точку F, для которой затраты до конца пути равны 6, а казавшуюся бесперспективной точку Е, для которой эти затраты равны 10, но суммарные затраты на весь оставшийся путь меньше (13 против 14). При этом выборе мы решаем совсем простую задачу: суммируем затраты на каждый из возможных переходов на данном шаге (в точку Е или в точку F) с уже известными затратами на дальнейший путь по оптимальному для выбранной точки варианту. Поступая аналогичным образом, мы рано или поздно в своем обратном движении придем в начальную точку А (рис. 2.4). Но при этом уже будут известны последствия для каждого из вариантов выбора (пойти по вертикали в точку К или по горизонтали в точку L), так как для каждой из них уже вычислены и записаны затраты на весь оставшийся путь до точки В. Это ситуация аналогична той, что представлена на рис. 2.4.

Теперь ничто не мешает нам сделать выбор, куда идти из точки А. Просуммируем затраты из А в К с тем, что записано для точки К на весь оставшийся путь от К до В. Затем просуммируем затраты из А в L с тем, что записано для L на путь из Lb В, выберем наименьшую из сумм, которая и будет равна суммарным затратам по оптимальному пути. В примере на рис. 2.4 получаем для точки

Рис. 2.4.

К число 99, а для точки L 100, и, следовательно, теперь ясно, что идти надо в точку К. Но нам нужны не только эти минимальные из всех возможных затраты, но и сам оптимальный путь. Пока мы знаем, куда идти из точки А на первом шаге. А дальше? Дальше знаем только затраты на весь оставшийся путь. Чтобы не оказаться в такой ситуации неопределенности, при записи затрат на оставшийся путь в каждой из промежуточных точек (С, D, Е, F, G, М и т. д., рис. 2.3) нужно записывать и сделанный выбор: куда идти из этих точек. Если это сделано, то при выборе, куда идти из точки А: в точку К или L, в любой из них уже будет записано, куда идти дальше (по вертикали или по горизонтали, то есть 1 или 0) и т. д. Обратным разворотом мы дойдем до точки В и восстановим оптимальный путь.

Заметим, что если при сравнении вариантов на любом из этапов попадутся два варианта с равными затратами, то можно выбрать любой из них. Это означает, что оптимальный путь может быть не единственным, но каждому из таких оптимальных путей соответствует одно и то же минимальное из всех возможных в заданных условиях значение суммарных затрат.

В данной задаче мы исследовали многошаговый процесс от последнего шага к первому. Но ничто не мешает развернуть его и рассмотреть шаги в прямом направлении, то есть от точки А к точке В, ничего не меняя в методе Р. Веллмана по существу.

Применительно к рассматриваемой нами задаче поиска оптимального пути на двумерной сетке алгоритм примет следующий вид.

  • 1. Из точки А делаем шаг в каждом из возможных направлений, запоминаем в точках К и L затраты и направление, по которому пришли в эту точку (0 по горизонтали и 1 - по вертикали). Соответственно для точки К запомним 12 и 1, а для точки L 5 и 0.
  • 2. На втором и всех последующих шагах, кроме последнего, если в точку ведет один путь (шаги по левой и нижней сторонам сетки), то просто запоминаем суммарные затраты на путь от начала и направление, откуда пришли, а если в точке сходятся два варианта (на рис. 2.4 это точка Н, а на рис. 2.3 точки М, F и др.), то сравниваем две возможности: придти в эту точку по горизонтали или по вертикали. Для каждой из них вычисляем суммарные затраты на путь от начала до данной точки, выбираем тот вариант, для которого эти суммарные затраты минимальны, запоминаем их и соответствующее им направление. Таким образом, происходит отбраковка вариантов, сходящихся в точке: вариант с наибольшими затратами отбрасывается и все его продолжения далее не анализируются. Естественно, это можно сделать только в таких простых задачах «без предыстории», как наша, когда совпадают множества возможных продолжений сравниваемых вариантов и отбраковка варианта никак не влияет на возможности выбора в дальнейшем.
  • 3. На последнем шаге в точку В ведут два направления, и по каждому из них все известно: для каждой точки (на рис. 2.3 это точки С и D) записаны затраты на весь путь от начала и направление, откуда пришли в эту точку. Снова суммируем затраты по вариантам, выбираем наименьшие, а затем обратным разворотом восстанавливаем оптимальный путь.

В реальных задачах многоэтапные процессы могут иметь не один исход (точку финиша) или начало (точку старта), а несколько. Однако это не мешает применить метод Р. Веллмана.

Во-первых, для упрощения алгоритма всегда можно ввести еще один фиктивный этап с нулевыми затратами на нем. Например, ввести единственную фиктивную точку финиша, которая достигается из реальных точек финиша без дополнительных затрат.

Во-вторых, можно просто сравнить варианты финиша в каждой из точек, если их несколько. Аналогично можно поступить и при наличии нескольких точек старта, но в этом случае необходимо либо добавить фиктивную точку старта, из которой затраты на первый шаг равны нулю, либо, что одно и то же, сразу рассматривать несколько вариантов и анализировать их продолжения.

Один из способов решить сложную проблему оптимизации - сначала свести её к соответствующей, но более простой задаче, а затем постепенно увеличивать сложность, каждый раз решая новую проблему, и, в свою очередь, используя это решение в качестве руководства к решению последующей задачи. Такой подход, кажется, довольно хорошо работает на практике, но он никогда не был описан и подтвержден теоретически.

Эта последовательность графиков иллюстрирует применение метода исследователей к реальной проблеме компьютерного зрения. Решение каждой задачи (красные шарики) используется для инициализации (зеленые стрелки) поиска решения в последующей.

В январе на Международной конференции по методам геометрической оптимизации в компьютерном зрении и распознавании образов, Хоссейн Мобэхи (Hossein Mobahi), учёный, проводящий докторские исследования в Массачусетском технологическом институте информатики и лаборатории искусственного интеллекта (Computer Science and Artificial Intelligence Laboratory - CSAIL), и Джон Фишер (John Fisher), старший научный сотрудник в CSAIL, описали способ генерации последовательности упрощенных функций, что гарантирует наилучшее приближение у применяемого в настоящее время метода.

«На некоторые фундаментальные вопросы об этом методе мы отвечаем впервые», - говорит Мобэхи. - «Например, я сказал вам, что надо начинать с простой задачи, но не сказал, как выбрать эту простую задачу. Существует бесконечно много функций, с которых вы можете начать. Какая из них лучше? Даже если я скажу вам с какой функции стоит начать, есть бесконечно много способов её преобразования для определенной задачи. И это преобразование влияет на то, что вы получите в конце».

Достижение минимума

Чтобы понять, как работает оптимизация, предположим, что вы ритейлер консервированных продуктов. Вы пытаетесь сэкономить деньги на стали и хотите, чтобы соотношение площади поверхности банки к её объёму сводилось к минимуму. Это соотношение является функцией от высоты и радиуса, так что если вы сможете найти минимальное значение функции, то будете знать оптимальные размеры банки. Если вы дизайнер автомобилей, который старается сбалансировать затраты на компоненты, изготовленные из различных материалов, с весом и аэродинамическим сопротивлением автомобиля, ваша функция - известная в оптимизации как «функция затрат» - будет намного сложнее, но принцип останется все тем же.

Алгоритмы машинного обучения часто пытаются выявить особенности наборов данных, что полезно для задач классификации - скажем, визуальные черты, характерные для автомобилей. Поиск наименьшего такого набора функций с наибольшей прогностической ценностью также является проблемой оптимизации.

«Большинство эффективных алгоритмов, которые применяются в настоящее время для решения задач оптимизации, работают на основе локального поиска. При этом на начальном этапе вам необходимо задать им какое-либо значение, являющееся предполагаемым решением. Далее алгоритмы определяют в каком направлении стоит двигаться, чтобы улучшить его, а затем осуществляют этот шаг», - говорит Мобэхи. - «Используя эту технику, они могут сходиться к значению под названием ‘локальный минимум’, который является точкой, которая в сравнении с соседними, лежащими в окрестности, находится ниже. Но найденное решение не будет являться глобальным минимумом: может существовать, которая находится намного ниже, но дальше».

Однако локальный минимум гарантированно будет глобальным, если функция - выпуклая вниз. Функция f(x) = x 2 выпуклая, так как описывает параболу с центром в начале координат. Функция f(x) = sin х - нет, так как описывает синусоиду, которая колеблется вверх и вниз.

Сглаживание

Метод Мобэхи и Фишера пытается найти выпуклую аппроксимацию задачи оптимизации, используя технику, называемую сглаживание (фильтром) Гаусса. Сглаживание Гаусса преобразует функцию затрат в зависимую функцию, которая дает не значение, описывающее функцию стоимости, а взвешенное среднее всех ближайших значений. Это позволяет сглаживать резкие спады или подъемы на графике функции затрат.

Веса, присвоенные близлежащим значениям, определяются функцией Гаусса или нормальным распределением - колоколообразной кривой, знакомой из статистики. Близлежащие значения рассчитываются преимущественно по средним, а не отдаленным значениям.

Ширина гауссовой функции определяется одним параметром. Мобэхи и Фишер начали с очень широкого гауссиана (Gaussian) , который при определенных условиях дает выпуклую функцию. Затем они постепенно уменьшали ширину гауссиана, создавая серию промежуточных задач. На каждом этапе они используют решение последней задачи для инициализации поиска решения последующей. К тому времени, когда ширина распределения сократилась до нуля, они восстановили первоначальную функцию затрат, так как каждое значение представляло собой просто среднее значение.

«Метод продолжения оптимизации на самом деле широко используется в практике, в компьютерном зрении, для решения проблемы выравнивания, отслеживания и во многих других задачах, но сам он не очень понятный», - говорит Джон Райт (John Wright), доцент кафедры электротехники в Колумбийском университете. - «Самое интересное в работе Хоссейна в целом, и этой статье, в частности, в том, что он действительно копается в этом методе и пытается узнать, что можно сказать о нем с точки зрения аналитики».

«Практическая польза состоит в том, что может быть любое число различных способов, которыми вы могли бы пойти при выполнении сглаживания или попытке осуществить «грубо-точную» оптимизацию», - добавляет Райт. - «Но если вы заранее знаете о правильном пути, то вам не нужно тратить много времени на неверные методы. У вас уже есть рецепт, так зачем искать что-то иное?»