Текст
                    бфб. 5
А 75
УДК 62-50
MAGMILLAN SERIES IN APPLIED COMPUTER SCIENCES
INTRODUCTION
TO OPTIMIZATION
TECHNIQUES
FUNDAMENTALS AND APPLICATIONS
OF NONLINEAR PROGRAMMING
MASANAO AOKI
University of California, Los Angeles
THE MACMILLAN COMPANY, NEW YORK
COLLIER-MACMILLAN LIMITED, LONDON
Введение в методы оптимизации. А о к и М. Пе-
рев. с англ., Главная редакция физико-математической
литературы издательства «Наука», М., 1977, 344 стр.
Основное содержание книги посвящено рассмот-
рассмотрению методов оптимизации без ограничений и с ог-
ограничениями. Рассматриваются условия регулярности
ограничений, теоремы Ф. Джона и Куна — Танкера,
двойственные задачи. Показано применение математи-
математического программирования к большому числу задач,
взятых из практики самых различных областей техни-
техники и организации. В книге приводятся необходимые
математические сведения.
Илл. 60, библ. 155.
А30501-056152.77
053@2)-77
Перевод на русский язык,
Главная редакция
физико-математической литературы
издательства «Наука», 1977


бфб. 5 А 75 УДК 62-50 MACMILLAN SERIES IN APPLIED COMPUTER SCIENCES INTRODUCTION TO OPTIMIZATION TECHNIQUES FUNDAMENTALS AND APPLICATIONS OF NONLINEAR PROGRAMMING MASANAO AOKI University of California, Los Angeles THE MACMILLAN COMPANY, NEW YORK COLLIER-MACMILLAN LIMITED, LONDON Введение в методы оптимизации. А о к и М. Пе- рев. с англ., Главная редакция физико-математический литературы издательства «Наука», М., 1977, 344 стр. Основное содержание книги посвящено рассмот- рассмотрению методов оптимизации без ограничений и с ог- ограничениями. Рассматриваются условия регулярности ограничений, теоремы Ф. Джона и Куна — Танкера, двойственные задачи. Показано применение математи- математического программирования к большому числу задач, взятых из практики самых различных областей техни- техники и организации. В книге приводятся необходимые математические сведения. Илл. 60, библ. 155. А30501-056152.77 053@2)-77 Перевод на русский язык, Главная редакция физико-мате.матической литературы издательства «Наука», 1977
ОГЛАВЛЕНИЕ От редактора перевода ' Предисловие ^ Обозначения 12 Глава 1. Предварительные сведения из математики ¦ 15 1.1. Векторы в n-мерном евклидовом пространстве ... 15 1.1.1. Норма A5). 1.1.2. Линейные подпространства и линей- линейные многообразия A6). 1.1.3. Гиперплоскости A7). 1.1.4. Ор- Ортогональные векторы A8). 1.1.5. Q-сопряшенные векторы A9). 1.1.6. Область значений и нуль-пространство B1). 1.1.7. Ор- Ортогональная проекция B2). 1.2. Функции п переменных 24 1.2.1. Разложение в ряд Тейлора B4). 1.2.2. Локальный и глобальный экстремумы B9). 1.2.3. Критические точки C0). 1.2.4. Седловые точки C1). 1.3. Квадратичные формы «... 32 1.3.1. Собственные значения и собственные векторы C3). 1.3.2. Положительная определенность C6). 1 4. Выпуклые множества и выпуклые функции .... 38 1.5. Норма и число обусловленности матрицы .... 44 1.5.1. Анализ чувствительности D4). 1 6. Разложение матрицы в произведении двух треугольных 51 1.7. Линейное программирование 54 1.7.1. Стандартная форма E4). 1.7.2. Геометрия допустимо- допустимого множества E5). 1.7.3. Характеристика крайних точек E7). 1.7.4. Базисные решения и обход соседних вершин много- многогранника E9). 1.7.5. Начальное базисное решение F4). 1.7.6. Симплекс-алгоритм F5). 1.7.7. Таблица. Метод веду- ведущего элемента (GG). 1.7.8. Канонические формы и базисные решения (G9). Задачи 71 Глава 2. Целевая функция 77 2.1. Функция, определяющая расстояние 79 2.2. Примеры целевых функций 82 2.2.1. Монтаж цифровой вычислительной машины (82). 2.2.2. Оценка параметров (84). 2.2.3. Регрессионный анализ и выравнивание (85). 2.2.4. Решение алгебраических урав- уравнений (85). 2.2.5. Расчет линз с помощью вычислительной
ОГЛАВЛЕНИЕ машины (86). 2.2.6. Расчет транзисторного усилителя по постоянному току (88). 2.2.7. Синтез цепей (89). 2.2.8. Задачи поиска (90). 2 2.9. Распознавание образов (92). 2.2.10 Об- Обработка сейсмической информации (92). 2.2.11. Минимиза- Минимизация межеимволыюй интерференции: корректирующий транс- версальный фильтр (94). 2 2.12. Задача оптимального рас- распределения ресурсов (95). 2.2.13. Оптимизация деталей кон- конструкции: расчет трехбалочной фермы (96). 2.2 14. Задачи оптимального управления: максимальное быстродействие (99). Задачи 101 Глава 3. Задачи размещения 104 3.1. Двумерный случай 104 3.1.1. Прямая задача A05). 3.1.2. Двойственная задача A06). 3.2. w-мерный случай 107 3.2.1. Квадрат евклидова расстояния A08). 3.2.2. Евклидово расстояние A08). 3.2.3. Перемещение по прямоугольной сетке A09). 3.3. Задача размещения: частный случай 112 Задачи 113 Глава 4. Минимизация функций без ограничений . , 115 4.1. Градиентные методы 119 4.1.1. Алгоритм A19). 4.1.2. Ускорение (метод параллельных касательных) A26). 4.1.3. Сходимость A28). 4.1.4. Скорость сходимости A31). 4.2. Метод сопряженных направлений 133 4.3. Метод сопряженных градиентов 136 4.3.1. Алгоритм A37). 4.3.2. Получение Q-сопряжеиных и ор- ортогональных векторов A38). 4.4. Метод Ньютона — Рафсона 144 4.4.1. Описание A44). 4.4.2. Модификация A45). 4.4.3. Ско- Скорость сходимости A48). 4.5. Метод Дэвидопа (метод переменной метрики) . . . 149 4.5.1. Основные положения A49). 4.5.2. Свойства алгоритма A53). 4.5.3. Влияние масштабирования A57). 4.5.4. Модифи- Модификации метода A58). 4.6. Методы одномерного поиска 167 4.6.1. Дифференциальные методы A67). 4.6.2. Прямой метод: полиномиальная аппроксимация A69). 4.6.3. Прямой метод: метод Фибоначчи A71). 4.7. Метод прямого поиска 174 4.7.1. Метод конфигураций A74). 4.7.2. Релаксационный ме- метод A76). 4.7.3. Метод Розснброка A78). 4.7.4. Метод Пауэлла A79). 4.7.5. Метод случайного поиска A81). 4.7.6. Другие методы A86). Задачи , ,187
ОГЛАВЛЕНИЕ гЛава 5. Минимизация функций с ограничениями . . 191 5.1. Множители Лагранжа 192 5.2. Линейные ограничивающие неравенства 200 5.3. Нелинейные ограничивающие неравенства .... 203 5.3.1. Теорема Куна — Танкера и регулярность ограничений B06). 5.3.2. Методы возможных направлений B14). 5.4. Чувствительность оптимальных решений . . . '. 217 5.5. Способы минимизации при линейных ограничениях . 219 5.5.1. Метод проекции градиента B19). 5.5.2. Метод приведен- приведенного градиента B22). 5.6. Нелинейные ограничения: метод штрафных функций 225 5.7. Линейная аппроксимация 231 Задачи 234 Глава 6. Двойственность в задачах оптимизации . . . 239 G.I. Задача линейного программирования 241 6.2. Задача квадратичного программирования .... 246 6.3. Задача нелинейного программирования 250 6.4. Задача геометрического программирования .... 254 6 4.1. Подход Даффина B57). 6.4.2. Применение теоремы о мшшмаксе BG2). Задачи 2В6 Глава 7. Сравнение методов оптимизации 269 Глава 8. Оптимизация в некоторых технических задачах 278 8.1. Задача идентификации параметров 278 8.2. Задача оптимального управления 281 8.2.1. Общая формулировка B81). 8.2.2. Задача линейного регулятора с квадратичной целевой функцией B84). 8.3. Синтез входного сигнала при импульсно-кодовой моду- модуляции 287 8.4. Распознавание принадлежности к классам: пример рас- распознавания образов 290 8.5. Задача распределения ресурсов: пример декомпози- декомпозиции 294 8.6. Модель для определения стоимости проекта космическо- космического корабля 206 Приложения .... 299 1. Неравенство Коши — Шварца 299 2. Доказательство свойства 1 (параграф 1.3) .... 299 3. Некоторые основные свойства выпуклых функций . . 301 4. Вычисление градиента относительно неевклидова рассто- расстояния 303 5. Неравенство Канторовича — Бергстрема 304
б оглавления: 6. Сходимость градиентных методов 307 7. Еще о скорости сходимости градиентных методов . . 309 8. Лемма Фаркаша 314 9. Условия регулярности ограничений Куна — Таккера . 316 10. Преобразование Лежандра 319 Перечень и блок-схемы алгоритмов 321 Библиографические указания 330 Литература 332 Предметный указатель 341
ОТ РЕДАКТОРА ПЕРЕВОДА Автор предлагаемой книги, профессор Калифорнийско- Калифорнийского университета М. Аоки известен советским читателям главным образом по изданной у нас его книге «Оптими- «Оптимизация стохастических процессов» («Наука», 1971) и на- написанной им главе 8 в книге «Современная теория уп- управления» под редакцией Леондеса («Наука», 1970). Настоящая книга посвящена методам нелинейного программирования, получившим широкое применение в самых различных областях техники, экономики, военного дела и др., так что нет необходимости доказывать акту- актуальность этих вопросов. Математическому и, в частности, нелинейному про- программированию посвящен ряд изданных у нас моногра- монографий советских и зарубежных авторов. Особенность пред- предлагаемой книги заключается в том, что она носит явно выраженный учебный характер: это руководство для пер- первоначального изучения предмета. Книга требует от чи- читателя лишь минимальной математической подготовки в объеме программ технических, экономических и т. п. ву- вузов. Необходимые математические сведения излагаются в первой главе книги и в ее 10 приложениях. Книга возникла из лекций, прочитанных автором, и близка к ним по своему построению и характеру изложе- изложения материала. Этим в известной мере определяются ее достоинства, всегда присущие .лекциям крупных специа- специалистов, равно как и некоторые, характерные для лекцион- лекционных курсов недостатки (не всегда ровное изложение, по- порой излишний лаконизм). Хотя книга и представляет собой введение в предмет и, вероятно, частью читателей будет использована для получения общих представлений о математическом про-
3 ОТ РЕДАКТОРА ПЕРЕВОДА граммировании, тем не менее наибольшую ценность она представляет отнюдь не как материал для легкого чтения, а как руководство для овладения интересными идеями и практически важными методами. Важную роль при этом могут сыграть задачи (их около восьмидесяти), приведен- приведенные в первых шести главах. Эти, не всегда легкие, задачи не только иллюстрируют содержание книги, но и разви- развивают и доцолняют его, а главное помогают читателю ов- овладеть основными понятиями и практическими приемами оптимизации. Заслуживает упоминания восьмая глава книги, посвя- посвященная примерам применения математического программи- программирования к задачам, взятым из практики различных облас- областей техники и организации. Читатель найдет здесь задачи оптимизации управления системами, задачи исследо- исследования операций (оптимальное размещение, распределение ресурсов), задачи .техники связи (минимизация межсим- межсимвольной интерференции и синтез сигнала), задачи проек- проектирования монтажа электронных схем вычислительных машин, синтеза электрических цепей, обработки информа- информации, фильтрации и идентификации, распознавания обра- образов и др. Такое разнообразие примеров позволит читате- читателю расширить свои представления о возможностях нели- нелинейного программирования. В то же время оно наглядно показывает, что предлагаемая книга в равной мере пред- предназначена читателям различных специальностей, При переводе и редактировании, стараясь сохранить характер изложения, играющий особенно важную роль в учебном руководстве, мы избегали сколько-нибудь су- существенных изменений и дополнений. Были лишь устра- устранены замеченные опечатки и неточности, а список лите- литературы дополнен изданными у нас монографиями. До- Добавлены также библиографические указания, которые помогут читателю ориентироваться в литературе по ме- методам оптимизации и смежным вопросам. Книга будет полезна специалистам различных облас- областей, аспирантам и студентам, как приступающим к изучению методов оптимизации, так и стремящимся рас- расширить и углубить свои знания. Б. Поляк Декабрь 1975
ПРЕДИСЛОВИЕ Хотя нелинейному программированию посвящен ряд серьезных монографий и учебников для студентов вы- выпускных курсов, тем не менее представляется, что отсут- отсутствуют книги, которые могли бы служить руководством для студентов 3—4 курсов и в которых излагались бы основные факты и результаты по нелинейному програм- программированию и их применению к задачам оптимального проектирования. Настоящая книга, возникшая из курса лекций, читавшегося в Калифорнийском университете в Лос-Анжелесе, написана в первую очередь для студентов 3—4 курсов, специализирующихся в области техники, исследования операций, организации производства и т. п. Книга задумана как введение в основные методы отыска- отыскания экстремумов (минимумов и максимумов) функций нескольких переменных. Потребность в подобной книге естественно возникает в различных задачах оптимизации проектирования и планирования. В настоящей книге была сделана попытка изложить основные методы определения экстремумов функций без ограничений. Рассмотрены градиентные методы с малым и большим шагом, методы, использующие вторые частные производные функции, как, например, методы Ньютона — Рафсона и Дэвидона — Флетчера — Пауэлла, и несколько прямых методов поиска. В книге также уделяется внима- внимание рассмотрению элементарных вопросов отыскания экстремума функции при линейных и нелинейных огра- ограничениях в предположении дифференцируемости и вы- выпуклости целевых функций и ограничений. Рассмотрены, например, понятие регулярности ограничений, теоремы Фритца Джона и Куна — Таккера, метод штрафных функ- функций и т. п. В книге приводятся различные стандартные алгоритмы определения экстремумов функций.
ДО ПРЕДИСЛОВИЕ Для иллюстрации возможных применений методов рас- рассматривается несколько упрощенных задач оптимизации, взятых из различных областей техники и исследования операпий. Книга построена следующим образом. Часто используемые в данной книге математические вопросы, выходящие за рамки курса анализа и элемен- элементов векторных пространств изложены в главе 1. В за- зависимости от уровня подготовки студентов преподава- преподаватель может частично расширить или сократить этот ма- материал. В главе 2 кратко рассматривается несколько задач, связанных с выбором целевой функции. Здесь же вво- вводятся такие понятия, как масштабирование и расстоя- расстояние. Приводится также краткое описание нескольких задач оптимизации для ознакомления с типами целевых функций, которые можно встретить на практике. В главе 3 для иллюстрации некоторых положений, из- изложенных в предыдущей главе, несколько различных це- целевых функций используются при решении одной и той же задачи размещения. Здесь вводится и применяется к задаче размещения понятие двойственности. Далее по- понятие двойственности рассматривается в главе 6. Главы 4, 5 и 6 составляют основную часть книги. В главе 4 приведены методы оптимизации без ограниче- ограничений. Эти методы классифицированы в соответствии с по- порядком используемых производных. Рассматриваются прямые методы, методы первого порядка и методы вто- второго порядка. Методам минимизации с ограничениями посвящена гла- глава 5. Множители Лагранжа, регулярность ограничений, теорема Куна — Таккера, замена переменных и метод штрафных функций — вот некоторые из основных вопро- вопросов этой главы. Понятие двойственности, введенное в главе 3, рас- рассматривается более подробно в главе 6. Выводятся двой- двойственные формы задач линейного программирования и квадратичного программирования. В этой же главе дает- дается элементарное представление о геометрическом програм- программировании главным образом с целью дать дополнитель- дополнительную иллюстрацию того, как двойственная задача может быть получена из прямой.
ПРЕДИСЛОВИЕ И Краткое сравнение различных алгоритмов оптимиза- оптимизации приведено в главе 7. В главе 8 рассматриваются примеры задач оптимиза- оптимизации, вкратце упоминавшихся в главе 2. Большая часть книги написана без использования линейного программирования. Только в нескольких мес- местах глав 5 и 6 упоминаются некоторые результаты, тесно связанные с линейным программированием. Одна- Однако, чтобь* не заставлять читателя обращаться к другим источникам, в конце главы 1 кратко изложены некото- некоторые теоретические вопросы линейного программирова- программирования, в том числе описание симплекс-алгоритма. Допол- Дополнительный материал читатель найдет в книгах, перечис- перечисленных в списке литературы. Задачи с дискретными переменными в книге не рас- рассматриваются, поскольку методы их решения существен- существенно отличаются от используемых при определении экстре- экстремумов непрерывных функций в конечномерном евклидо- евклидовом пространстве. Наконец, приведены наименования имеющихся про- программ для ЦВМ, реализующих некоторые из алгоритмов, рассмотренных в данной книге, а также некоторые блок- схемы программ. Автор считает своим долгом выразить искреннюю при- признательность доктору X. А. Спенгу III, прочитавшему большую часть рукописи и высказавшему много предло- предложений, способствовавших улучшению книги; профессо- профессору Д. Луенбергеру, который также прочел часть раннего варианта книги и высказал свои замечания, а также профессору Г. Эстрину, редактору этой серии, за его по- постоянный интерес к моей работе над книгой и ценные предложения. Автор отмечает большую помощь, которую оказали ему дискуссии с доктором М. Д. Кэноном. Автор во многом обязан доктору Г. Дж. Бирману, который ока- оказал помощь в чтении корректуры; работникам факуль- факультета техники и прикладных знаний, а также мисс Сью- Сьюзен Бергер за квалифицированное оформление несколь- нескольких вариантов рукописи. М. Аоки
ОБОЗНАЧЕНИЯ Rn будет обозначать гс-мерное евклидово пространство. х, "у, z п т. д. будут обозначать векторы. Например, хе/?п будет указывать, что х является и-мерпым вектором. Веществен- Вещественные функции п переменных x^Rn будут обозначаться •/(•)> #(•)» h(-) п т. д., а их значения —/(х), g(x), h(x) и т. д. Нижними индексами будут обозначаться компоненты вектора. Например, х$, Х7 являются третьей и седьмой компонентами векто- вектора х. Для обозначения различных векторов будут использоваться верхние индексы: х1, х2, ... Векторы обычно представляют вектор-столбцами; так, на- например, -С;] есть вектор-столбец с тремя компонентами. Для экономии места мы обычно представляем вектор-столбцы транспонированными вектор-строками в виде хт = (х\, Х2, х$) или х= (х\, х2, хз)т, где верхний индекс «т» обозначает транспони- транспонирование. В некоторых случаях х> будет обозначать вектор-столбец, а <х — вектор-строку. Так, например, вместо (х])т и (х2)т будем писать <х! и <х2 и тем самым исключим двойную ипдексацию. Обычно мы будем писать просто х> <Лу вместо х (Ау). Иног- Иногда будем записывать хту и хут в виде <х, у> и х> <у. Будем использовать Л, Б, С и т. д. для обозначения матриц.
ОБОЗНАЧЕНИЯ 13 Запись А >> В означает, что (А — В) является положительно определенной матрицей,, а А ^ В означает, что (А — В) положи- положительно полуопределена, х > О означает, что все компоненты х положительны, ах^О- что все компоненты х неотрицательны. Элементы матрицы обозначаются двойными индексами; так до- доесть (У)-й элемент, т. е. элемент, находящийся на пересечении i-й строки и /-го столбца. Иногда будем писать А = (ац), / = 1, ..., /г, / = 1, ..., ттг, для обозначения матрицы с п строками и т столбцами: а.„ ... а.; 2т А = лп1 ••• Диагональная матрица с элементами аь а2, ..., ап обозна- обозначается diag (яь а2, ..., яп). Верхний индекс «т» также используется для обозначения тран- транспонированной матрицы; таким образом, (i, /)-м элементом матри- матрицы А7 является а л. Будем использовать а, 6, к, а, |3 и т. д. для обозначения скаля- скаляров. Элементы векторов и матриц, а также скаляры предполага- предполагаются вещественными, если не будет оговорено иное. Определитель матрицы А записывается в виде \А\ пли del (А). Как обычно, ||-|| будет обозначать норму вектора (см. главу 2). Если А = Лт, то матрица называется симметричной. Существует тождество (Лх)ту = хМту. (А) Его легко можно доказать, если раскрыть выражения, стоящие в левых и цраиых частях. Используя ранее введенные обозначения, эту формулу можно записать в виде <Лх, у>. Множество (или класс) всех векторов, для которых Р(х) ис- истинно, обозначается через {х : Р(х)}.
14 ОБОЗНАЧЕНИЯ В ссылках на формулы, например, C,3), (А.7) и т. д. цифры в скобках указывают главу и номер формулы. Так C.3) указыва- указывает третью нумерованную формулу главы 3. Аналогично, рис. 4.11 указывает на одиннадцатый рисунок главы 4. Символ Л будет использоваться для обозначения конца дока- доказательства или примера. Формулы, ссылки на которые встречаются лишь в ближайшем тексте, отмечаются буквами, с тем чтобы избежать таких выраже- выражений, как «... в вышеприведенной формуле...», «... в следующей фор- формуле...» и т. д.
ГЛАВА 1 ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ В этой книге рассматривается ряд методов и алгорит- алгоритмов нахождения максимума или минимума (совместно называемых экстремумом) вещественных функций п ве- вещественных переменных, удовлетворяющих некоторой системе дополнительных уравнений, называемых уравне- уравнениями ограничений. Существуют различные методы оты- отыскания экстремума, зависящие от природы функций и уравнений ограничений. Мы будем рассматривать методы, которые легко могут быть реализованы на цифровых вы- вычислительных машинах. Другими словами, в этой книге излагаются некоторые основные вопросы нелинейного программирования и его приложений. В этой главе приводятся некоторые часто используе- используемые в книге определения из области векторных прост- пространств, современного курса математического анализа, теории матриц и численного анализа. Для более деталь- детального и систематического изучения читателю можно ре- рекомендовать ряд книг, излагающих эти вопросы. Напри- Например, книги Франклина A968), Форсайта иМолера A967), Флеминга A965), см список литературы *). 1.1. Векторы в n-мерном евклидовом пространстве 1.1.1. Норма. Вещественную функцию п переменных }(х\, #2, ..-, хп) удобно записывать в виде /(х), где *) Здесь и далее ссылки автора на литературу не всегда полны п часто относятся к труднодоступным изданиям. Читателю реко- рекомендуется обратиться к библиографическим указаниям в конце книги. (Прим. ред.)
16 ГЛ. i. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ И^МАТЕМАТИКИ есть вектор в тг-мерном евклидовом пространстве Rn. Будем рассматривать х как точку/^в евклидовом прост- пространстве Rn). Для каждого вектора х= (х\, х^ .-.-. хпу следующим образом определимого длину: (хтхI/2=(^ + 4+... + 4I/2. Здесь хту называется внутренним (или скалярным) произведением двух векторов хт = (х\, ..., хп) и ут = = (Уи •••> Уп), равным хту = х\ух +... +хпуп. Внутреннее произведение х и у будем записывать так- также в виде (х, у). Будем понимать под (евклидовым) расстоянием меж- ДУ Двумя векторами х и у в Rn длину вектора х—у, т. е. <х—у, х—у>1/2. Эту величину называют также нормой вектора х—у и обозначают ||х—у||. Таким образом, дли- длина вектора есть расстояние между данным вектором и ну- нулевым вектором (вектором, у которого все компоненты равны нулю); например, 2 и Неравенство Коши — Шварца устанавливает связь между скалярным произведением и нормами. (Доказательство приведено в приложении 1.) Дальнейшее рассмотрение нормы дано в параграфе 1.5. 1.1.2. Линейные подпространства и линейные много- многообразия. Рассматриваемые в главах 4 — 6 алгоритмы оп- оптимизации часто предусматривают поиск максимума или минимума в подмножествах пространства Rn. Некоторые из этих подмножеств являются подпространствами, а дру- другие — линейными многообразиями. Непустое подмножество М пространства Rn называ- называется (вещественным) линейным подпространством, если оно удовлетворяет следующим двум условиям: (I) Если х и у принадлежат М, то х + У также при- принадлежит М. (II) Если х принадлежит М, то Хх при любом веще- вещественном значении числа X также принадлежит М. Из (II) видно, что если xgI, то — х <= М. Тогда из (I) следует, что 0 = х+(—х) также принадлежит М.
1.1. ВЕКТОРЫ В ЕВКЛИДОВОМ ПРОСТРАНСТВЕ 17 Если мы осуществим смещение, определяемое фикси- фиксированным вектором х°, всех векторов непустого подпро- подпространства М пространства Дп, то получим подмножество х° + М^ {х; х = у + х°, у <= М). Это подмножество пространства Rn не является линейным подпространством, так как оно не содержит 0. Такое под- подмножество называют линейным многообразием {аффин- {аффинным подпространством) пространства Rn. Пример. Прямая в i?n, проходящая через начало, является одномерным подпространством пространства Rn. Если сместить эту прямую, то мы получим линейное многообразие (см. рис. 1.1). Заметим, что одно и то же Рис. 1.1. Подпространство п лпкейное ыногообразпе. линейное многообразие может быть получено в результате смещений подпространства М различными векторами. А 1.1.3. Гиперплоскости. При заданном ненулевом век- векторе аен/?'1 уравнение (а, х> = 0 определяет (замкну- (замкнутое) подпространство в Rn. Это подпространство называ- называется гиперплоскостью. Другими словами, Н = {х: <а, х> = 0, хе= Rn}. Заметим, что при любом вещественном числе а урав- уравнение (а, х) = а определяет линейное многообразие. Из уравнения для // видно, что а является вектором, нормальным к И. Если задай некоторый вектор Ьбй\ такой, что (а, Ь) = а, то линейное многообразие, опреде- определяемое уравнением (а, х) = а, можно рассматривать как смещение Н на Ь.
18 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ 1.1.4. Ортогональные векторы. Понйтие ортогонально- сти и связанные с ним понятия вводятся здесь для фор- формулировки так называемой задачи о минимальной норме (см. Предложение на стр. 24). ф главе 4 рассматрива- рассматриваются некоторые алгоритмы поиска максимума или миниму- минимума функций во взаимно ортогональных или сопряженных направлениях, определяемых в параграфе 1.1.) Два вектора х и у называются взаимно ортогональны- ортогональными (или взаимно перпендикулярными), если их скаляр- скалярное произведение равно нулю. Если задано множество m линейно независимых я-мер- ных векторов, m :g n, то всегда можно построить такую их линейную комбинацию, которая преобразует их во множество взаимно ортогональных векторов, на которых натянуто то же самое пространство. Этот процесс, назы- называемый ортогонализацией Грома — Шмидта, сводится к следующему. Пусть дано множество линейно независи- независимых векторов х1, ..., хш. Нормализацией х1 образуем век- вектор и1, и1 = х!/(х!, х1I72. и2 полагаем равным такой ли- линейной комбинации векторов и1 и х2, при которой (и1, и2) = 0 и (и2, и2) = 1. Аналогично продолжая, мы представим хг* в виде линейной комбинации векторов и1, и2, ..., и', коэффициенты которой будут определяться условиями ортогональности и нормирования. Можно выполнить эту процедуру в два этапа. Во-пер- Во-первых, мы переходим от векторов х1, ..., xw ко множеству ортогональных векторов у1, ..., ут следующим образом. Вычитая из хг* векторы, совпадающие по направлению с векторами у1, ..., у1'", и обозначая результат через у\ мы получим векторы у1, ..., у1", ортогональные к векто- вектору х*. Таким образом, мы построим векторы у1, ..., ут, равные V1 = X1 7—1 /| jv v* — х* — V >х * у ? v? / — 2 m 5 = 1 N> ' ^ Далее, нормируя это множество векторов, мы получим * векторы
1.1. ВЕКТОРЫ В ЕВКЛИДОВОМ ПРОСТРАНСТВЕ 19 Например, для т == 2 vi _ xi V2 _ Х2 Убедимся, что у1 и у2 ортогональны. Действительно, <у2, у'> = <Х2, у1>-<Х2?У1> = 0. . Затем нормируем векторы у, и1 = У1 и2 = У2 <у1;у1>1/2> <у2, у2>1/2 (см. задачи 2 — 4). Пусть дано подпространство V в Rn. Обозначим через Ух множество всех векторов, ортогональных к любому вектору в F, т. е. V1- = {z : z <= Rn, xTz = 0 для всех х е V}. Легко показать, что V1" также является подпространст- подпространством. Оно называется ортогональным дополнением к V. Размерность V1- (т. е. максимальное число линейно не- независимых векторов в Ух) равна Любой вектор х в Rn однозначно может быть пред- представлен в виде х = х1 + х2, где x'g7 hx2g V1-. Этой связи соответствует представ- представление Rn в виде так называемой прямой суммы V и V1" 1.1.5. Q-сопряженные векторы. В главе 4 нам понадо- понадобится обобщенное понятие так называемой Q-ортогоналъ- ности, где под Q понимается симметричная положительно определенная матрица*). Два вектора х и у Q-ортогошлъ- ны по отношению друг к другу (или можно сказать Q-сопряжены, т. е. сопряжены по отношению к Q), если *) См. п. 1.3.2.
20 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ ^ТЕМАТИКИ ас \TQy = 0. Ортогональность является частным случавхМ со- сопряженности, когда Q есть единичная матрица. Применим процедуру, аналогичную ортогонализации Грама — Шмидта, для преобразования любого множества п линейно независимых векторов в множество п (?-сопря- женных векторов. Пусть v1, ..., vn линейно независимы. Построим векторы и1, ..., ип так, чтобы (и1', Q\x]) = 0 при i ф /. Положим U2 = V2 + G^ill1, где скаляр аъ\ выбран так, чтобы и1 и и2 были Q-сопря- жепы. Иначе говоря, 0 = (Си1, и2> = <<?и\ v2> + a2i<u!, <?и'> ИЛИ <v2, Qub _ 21 "" <и\ где знаменатель положителен, если матрица Q положи- положительно определена. Предположим, что v1, ..., vk исполь- используются для построения (^-сопряженных векторов и1, и2, ... ..., и\ При этом Чтобы определить скаляры akh необходимые для построе- построения G-сопряженных векторов и1, и2, ..., и\ образуе^м из левой и правой частей уравнения (А) скалярные произ- произведения с Quj: 0 = (nh+\ Qu>) = (vk+\ Quj) + aw<u', Qu>). Следовательно, Эта процедура является точным аналогом метода Гра- Грама — Шмидта (см. задачу 3). Уравнение (А) может быть
i.i. ВЕКТОРЫ В ЕВКЛИДОВОМ ПРОСТРАНСТВЕ 21 переписано в следующем виде: Следовательно, вектор vh+l является линейной комбина- комбинацией векторов и1, ..., u*+I. Поэтому вектор vJ является (^-сопряженным к векторам и* при i >'/, или 1.1.6. Область значений и нуль-пространство. Если А — (тХп)-матрица, то уравнение у = Ах выражает линей- линейное отображение (преобразование) вектора х в Rn в век- вектор у в Rm. Областью значений Si (А) матрицы А называется мно- множество значений всех векторов у, соответствующих всем возможным в Rn значениям вектора х. Запишем А в виде Л = [а1, а2, ..., а"], где а?— i-й (тг-меряый) вектор-столбец, i = 1, ..., п, а х — в виде х = (хи х2, ..., хп)\ Тогда имеем i=l Отсюда видно, что &(А) есть подпространство простран- пространства Rm, натянутое на вектор-столбцы а1, ..., а\ Нуль- простраиством Jf(A) матрицы А называется множество Jf(A)= {x: 4x = 0,xe Rn}. Связь между областью значений и нуль-пространством мо- может быть выражена с помощью ортогонального допол- дополнения. Предложение. Доказательство. Пусть уЕ JDT) и z() По определению области значений существует х е Rn такое, что z = Лх. Тогда yTz = уМх = (Лту)тх = Ох = = 0. Следовательно, у ортогонально к 0?{А), т. е.
22 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Jf(AT)a [Й?(Л)]Х. Чтобы показать, что выполняется и отношение включения выберем и е [^?(Л)]Х, для которого uT^4v = 0 для всех vEfl" и, следовательно, (^Tu)Tv = 0 для всех v e R\ Таким образом, Ат\х = 0 или u e Jf(Ar). Тем самым до- доказано, что [^(A)]±czjr(AT). A 1.1.7. Ортогональная проекция. В данной книге мы бу- будем часто встречаться с алгоритмами оптимизации, в ко- которых используются проекции векторов на некоторые подпространства. Пусть дано подпространство 1вй"и точка х вне это- этого подпространства, х & М. Мы называем точку z в этом подпространстве ортогональной проекцией х на М если, представив х в виде х = (х —z) + z, мы возьмем такое z, что х — z ортогонально к М, т. е. ко всем векторам в М. Например, подпространство М может являться областью значений некоторой матрицы. Рассмотрим (mX/г)-матрицу А ранга тг, m ^ nt Пусть а\ 1=1, 2, ..., п, — tfi-мерные вектор-столбцы матрицы Л, т. е. А = [а1, а2, ..., ап], и эти вектор-столбцы линей- линейно независимы. Если х = (х\, ..., ?п)т, то Ах = ^ ача{ г=1 есть вектор в пространстве, натянутом на вектор-столбцы матрицы А. Вектор в ЙD) можно выразить в виде Ах, x<^Rn. Пусть z = Ах является ортогональной проекцией у на 31{А). Тогда у — Ах ортогонально к a', i = 1, ..., п, или Поскольку А1 А имеет ранг га, предшествующее уравнение разрешимо относительно х. Имеем х = (АтА)~1Ату. При этом Ах = А{АтА)-1Ату
1.1. ВЕКТОРЫ В ЕВКЛИДОВОМ ПРОСТРАНСТВЕ 23 есть вектор в М(А). Оператор называют оператором ортогональной* проекции (или прос- просто проектором) на Я(А), т. е. на линейное подпростран- подпространство, натянутое на вектор-столбцы матрицы А. Это наз- название определяется тем, что Ра(у) является ортогональ- ортогональной проекцией любого вектора у на &1{А). Разность Im — — РА является оператором проекции на подпространство, ортогональное к подпространству, натянутому на векто- векторы а*, 1 ^ i 2§ п. Применяя аналогичные соображения, легко убедиться, что при заданной (р X п) -матрице В ранга /?, р < я, где (Ь')т-—га-мерный вектор-строка матрицы В, i = 1, 2, ... ..., р, оцератор ортогональной проекции на подпростран- подпространство, натянутое на векторы b?, i = 1, 2, ...,/?, может быть записан в виде При этом 1п — Рв есть оператор ортогональной проекции на JP(B), т. е. на подпространство, ортогональное к подпространст- подпространству, натянутому на векторы Ь', 1 ^ i ^ р. Пример. Найдем ортого- ортогональную проекцию вектора OY на прямую L, лежащую в пло- плоскости рис. 1.2. Прямая L явля- является одномерным подпространством плоскости, натянутой на вектор Следовательно, рис. 1.2. Ортогональная проекция на прямую L. А — L : B х 1)-матрица. Оператор проекции задается следующим образом: р ' Г1 Ч
24 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Для любого вектора ут = (уи у2) имеем n v _ Это выражение представляет вектор OQ, являющийся ортогональной проекцией вектора OY на прямую L. Д Из нижеследующего предложения вытекает значение ортогональной проекции для многих задач оптимизации. Предложение. Пусть М является подпространством в Rn, ах — произвольный вектор в Rn. Если существует вектор xg! такой, что ||х — xJ^Jх — т[| при всех т е 1, то х — х ортогонально к М. Доказательство. Предположим обратное. Тогда существует вектор m e= M такой, что < х — х, ш> = б ф 0. Без потери общности предположим, что 5>0 и Цт|| = = 1. Тогда 1 х — х — fim f = | х — х f — <х — х, 6т> — -<6т, х —х> + б2 =||х —xf —62<I!x —х|2. Из этого выражения видно, что х не является минимизи- минимизирующим вектором. Можно показать, что в замкнутом подпространстве М в Rn всегда существует единственный минимизирующий вектор х. Но всякое подпространство М в Rn является замкнутым. Л Многие задачи, использующие принцип наименьших квадратов и другие критерии «ошибки», могут быть сфор- сформулированы в виде задач о минимальной норме. Несколь- Несколько таких примеров приведено в главах 2, 3 и 8. 1.2. Функции п переменных Часто поиск минимума или максимума значений функ- функций может быть облегчен путем обследования функции в направлениях, определяемых частными производными этой функции. В следующем параграфе вводятся вектор- градиенты и матрицы Гессе. 1.2.1. Разложение в ряд Тейлора. Пусть / (х) по мень- меньшей мере имеет непрерывные первую и вторую производ-
1.2. ФУНКЦИИ п ПЕРЕМЕННЫХ 25 ные в открытом подмножестве D в Нп. Пусть х° е D. Тог- Тогда f(x\, X2, ..., хп) может быть представлена в виде ряда Тейлора относительно (#i, x%, ..., &п) • г = 1 П П до. л П П 4-S 2 + a(xx°)|x x0]J. A.1) При этом lim e(x, x°) = 0. x-*x° Все частные производные определяются для точки х°. В данной книге последний член формулы A.1) будет обозначаться также Введем вектор-градиент f df и вещественную (пХп) -матрицу, называемую матрицей Гессе (гессиан): Так как d2jldxtdxj=d2jldxjdxh то Н (х°) есть веществен- вещественная симметричная матрица. Важность вектор-градиентов и матриц Гессе опреде- определяется их использованием во многих алгоритмах поиска экстремума функций. Они широко применяются во мно- многих методах оптимизации, рассматриваемых в главах 4 и 5. Используя введенные вектор-градиент и матрицу Гес- Гессе, уравнение A.1) можно записать в следующем виде: - <х - х°, U (х<>) (х - х°)> + е (х, х")|| х -
26 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Ряд Тейлора можно записать также в виде где 0 < 0 < 1. Из анализа известно, что векторный диф- дифференциал dx = (dxh dx2, ..., dxny на поверхности /(x)=const удовлетворяет соотношению Таким образом, вектор-градиент нормален ко всем вектор- векторным дифференциалам вблизи х. Другими словами, V/(x) есть вектор, нормальный в точке х к поверхности /(х) = = const. В качестве примера функцию от двух переменных можно записать в виде /(х)=хт5х/2, где хт = (х\, х2) и В = Q ^ . Геометрическое место то- точек, соответствующее /(х)= const, является окружно- окружностью, ректор-градиент равен V/(x)=Bx= (x\, х2)т. Векторный дифференциал в точке х удовлетворяет со- соотношению О = df (х) = xxdxx + x2dx2 = (xv х2) \dfrl] = <у / (х), dx>, а вектор-градиент V/(x) нормален (ортогонален или пер- перпендикулярен) к dx. Матрица Гессе этой функции равна единичной матрице размерности BX2).
1.2. ФУНКЦИИ п ПЕРЕМЕННЫХ 27 В качестве другого примера рассмотрим / (х) = х\ + 2*1 + 4 + 0,4^ *2 + *Л + 3*х + *2 + 5. Эта функция может быть записана также в виде /(х)= хт5х+'атх + 5, ' где Г 1 0,2 0, 51 Г а?! 1 ат = [3,1,0], 5-0,2 2 0 , х= х2 [ L0,5 0 1 J L*tJ В данном случае уравнение /(х)= const описывает эл- эллипсоид. Вектор-градиент V/(x) = 2(*! + 0,2л:2 + 0,5*3 + 1,5, 0,2*i +2*2 + 0,5, 0,5*! + хгу= 25х + а. Легко убедиться в том, что вектор-градиент нормален к dx. Геометрически вектор-градиент определяет направле- направление наибыстрейшего роста значений функции. Это станет ясным, если рассмотреть поведение функции при измене- изменении х по всем возможным направлениям от фиксирован- фиксированной точки х°: х = х° + tyf yTy = 1, где t — малая скалярная переменная, а у — произвольный вектор единичной длины, задающий направление, по ко- которому х изменяется от первоначальной точки х°. Рас- Рассмотрим изменение значений функции, равное Полагая, что вектор-градиент существует, запишем разложение в ряд Тейлора: /(x° + <y)-/(xe) + «<V/(xe), y)+o(t), (В) где o(t) обозначает член более высокого порядка малости относительно ?, * 0
28 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Из (В) следует, что Предел в формуле A-2), если он существует, назы- называется производной функции /(х) по направлению упри х== х°. На основании неравенства Коши — Шварца (см. при- приложение 1) можно показать, что <V/(x°), y>2:S(yTy)<V/(x0), V/(x°)> = <V/(x°), V/(x°)>, поскольку уту = 1, и равенство выполняется, если и толь- только если у направлен так же, как и V/(x°). Таким обра- образом, имеем I [/(*° + *У) - /(хи) ]ft| =S<V/(x°), V/(x») >'/» + о@/«, причем равенство справедливо тогда и только тогда, ког- когда у пропорционален V/(x°). Это показывает, что, пре- пренебрегая членами высшего порядка относительно ?, т. е. ограничиваясь малой областью вблизи х°, мы получаем наибольшую скорость изменения функции /(х) при пере- перемещении х из х° по направлению вектор-градиента в х°. (Доказательство см. в приложении 4.) Это обстоятельст- обстоятельство является основой градиентного метода, рассматривае- рассматриваемого в главе 4. Таким образом вектор-градиент задает направление с максимальной производной по направлению или — нап- направление наискорейшего роста значений функции в ок- окрестности точки х°. Эта трактовка используется при опре- определении вектор-градиента при неевклидовой метрике (см. приложение 4). Иногда удобно представлять совместно несколько ве- вещественных функций gi(x), #2(x), ...» ?™(х), определен- определенных в Rn, в качестве компонент некоторой яг-мерной век- векторной функции в Rn: Предполагая, что все &-(х), / = 1, ..., яг, имеют непре- непрерывные производные в открытом множестве, содержащем
1.2. ФУНКЦИИ п ПЕРЕМЕННЫХ 29 х, можно разложить функцию g(x) в ряд Тейлора, раз- разлагая каждую компоненту и объединяя результаты в виде вектора g(x+th)=g(x)+tVxg(x)b + o(t), где Vxg (х) = (х), ..., (х)]т = dJl dxj : (га х п)-матрица. 1.2.2. Локальный и глобальный экстремумы. Как из- известно из анализа, функция скалярной переменной мо- может иметь в заданном интервале более одного локально- локального или относительного экстремума (см. рис. 1.3). Анало- Аналогично, функция п переменных в заданной области прост- пространства Rn может обладать несколькими экстремумами. Рис. 1.3. Максимум и минимум функции. Точки А и С — локальные максимумы. Точка С является также глобальным максимумом фун- функции /на S = {х : а ^ х ^ Ь). Точки В, D и все точки в [а', Ьг] являются локальными минимумами. Точка В является также гло- глобальным минимумом / на 5. Функция называется унимодальной в данной области, если она в этой области имеет единственный экстремум. В противном случае она называется мулътимодальной. Множество всех х, близких к х°, называют окрестностью N точки х°. Окрестность N является множеством всех та- таких х (евклидово), расстояние которых от х° меньше не- некоторой малой положительной величины е. Таким обра- образом, окрестность состоит из всех таких точек в /Г, для которых (jx — х°|]^е (см. рис. 1.4).
30 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Пусть f(x) определена в подмножестве 5 пространст- пространства Дп. Функция /(х) достигает локального (строгого ло- локального) минимума в точке х° е S, если существует ок- окрестность N(x°) такая, что для всех х в N(x°) и S отлична от х°. То, что х° является локальным минимумом, не исклю- исключает возможности существования другой точки х* ^ S вне малой окрестности N(x°I для которой Если/(х*M2/(х)[/(х*)</(х)] Рис. 1.4. Окрестность N при всех х в 5, отличных от х*, точки х° и область 5 то х* является глобальным (стро- определеиия функции. ^ ч v r ^J гим глобальным) минимумом функции /(х) на S. Число /(х*) есть минимальное значение функции на S. Аналогичные определения могут быть даны для ло- локального максимума и глобального максимума. Если функция не унимодальна в 5, то в общем слу- случае локальный и глобальный экстремумы могут разли- различаться. Все известные методы позволяют определять локальный, а не глобальный экстремум. В задачах мини- минимизации часто приходится сталкиваться со многими ло- локальными минимумами. Только при некоторых дополни- дополнительных условиях локальный минимум будет совпадать с глобальным. При решении трудной задачи отыскания глобального минимума существенное значение имеет поня- понятие выпуклости. Это понятие рассматривается в парагра- параграфе 1.4. 1.2.3. Критические точки. Точка х°, где вектор-гради- вектор-градиент обращается в нуль, называется критической точкой. Таким образом, х° есть критическая точка, если V/(x°)=0. Покажем, что если /(х) достигает относительного экст- экстремума в х° и если / дифференцируема, то х° является критической точкой. Будем рассматривать /(x° + fy) как функцию скалярной переменной t при некотором фикси-
1.2. ФУНКЦИИ п ПЕРЕМЕННЫХ 31 рованном единичном векторе у и будем обозначать ее ср(?). Полагая, что эта функция обладает относительным экстремумом при t = 0, получим ~~~ ЧГ Поскольку это справедливо при любом единичном* векто- векторе у, имеем V/(x°)=0. Иначе говоря, если /(х°) является относительным экст- экстремумом функции /(х) и вектор-градиент существует, то V/(x°)=0. Таким образом, х° есть критическая точка функции /(х). Из курса анализа известно, что равенство нулю пер- первой производной является необходимым, но не достаточ- достаточным условием для того, чтобы функция скалярной пере- переменной при этом достигала экстремума. Например, в точ- точке 0 производная функции одной переменной f(x) = хъ также обращается в нуль. Достаточное условие формули- формулируется в терминах второй производной. Для функций нескольких переменных аналогичную роль играют матрицы Гессе. Если х° является критиче- критической точкой и в окрестности точки х° существуют непре- непрерывные вторые частные производные, то согласно фор- формуле A.1А) / (X) = / (Х°) + i- <Х - Х°, Я (Х°)(Х — Х°)> + О ( || X -Х° ||2) . ¦ A.1В) Второй член в A.1В) определяет, является ли х° точ- точкой относительного максимума, точкой относительного минимума, либо — не является ни тем и ни другим. На- Например, если второй член сохраняет положительный знак при всех х Ф х° в окрестности точки х°, то х° есть отно- относительный минимум. В следующем параграфе после изло- изложения основных свойств квадратичных форм мы приве- приведем правила определения экстремума. 1.2.4. Седловые точки. Точка (х*, у*) вещественной функции ф(х, у), где x^SaRn и уеГсг/?т, называется
32 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ седловой точкой, если Ф(х*, у) rgcp(x*, у*) ^Ф(х, у*) для всех х ^ S и у ^ Т. Таким образом, если у зафикси- зафиксировать равным у* и рассматривать ср(х, у*) как функцию только х, то х* будет точкой глобального минимума. Ана- Аналогично, если рассматривать эту функцию как функцию от у при фиксированном х, равном х*, то у* будет точ- точкой глобального максимума. 1.3. Квадратичные формы Как мы уже видели, чтобы определить, имеет ли функция относительный §кстремум в критической точке, мы должны рассмотреть в разложении в ряд Тейлора по- поведение члена, содержащего матрицу Гессе, в окрестности критической точки*). Этот член является примером так называемой квадратичной формы. В этом разделе мы рас- рассмотрим свойства квадратичных форм. Числовая функция Л(х, у) двух векторов х и у на- называется билинейной формой, если она является линей- линейной функцией вектора х при любом фиксированном зна- значении у и линейной функцией вектора у при любом фик- фиксированном значении х. Пусть, например, В есть (тХп)-матрица, х — я-мер- ный вектор и у — m-мерный вектор, В = (btj), I ^ i ^ п, 1 ^ / ^ т, х = (хи х2, ..., хп)\ У = (УU */2, ..., Ут)Т. Выражение является примером билинейной формы. Если п = т и х и у представляют собой адин и тот же вектор, то били- билинейная форма называется квадратичной формой (?(х)» *) В некоторых случаях оказывается необходимым исследовать члены, содержащие частные производные третьего и более высо- высоких порядков.
1.3. КВАДРАТИЧНЫЕ ФОРМЫ 33 Например, С(х) = Л(х,х) = V V bijXiZ, i = \ j=\ есть квадратичная форма. Необходимость применения билинейных и квадратичных форм часто возникает в за- задачах оптимизации, так как во многих подобных зада- задачах критерий оптимальности выражается в виде квадра- квадратичных форм, в которых х является вектором, составлен- составленным из расчетных параметров. (Эти вопросы обсужда- обсуждаются в главе 2. Заметим, что к изучению квадратичных форм нас привело проведенное в конце предыдущего раз- раздела рассмотрение разложения в ряд Тейлора.) Часто оказывается удобным представлять функцию где b их есть гс-мерные векторы, a Q — симметричная (пХп) -матрица, простыми выражениями в виде сумм квадратов переменных. При этом, например, вопрос о зна- знаке квадратичной формы решается очень просто. Выполне- пие необходимых для этого преобразований требует зна- знакомства с некоторыми свойствами матриц и квадратичных форм, к изложению которых мы и перейдем. Любая (п X п) -матрица А может быть представлена в виде суммы симметричной и антисимметричной частей Первый член представляет собой симметричную часть, а второй — антисимметричную часть. Следует подчерк- подчеркнуть, что только симметричная часть матрицы А образу- образует квадратичную форму хМх. Поэтому в дальнейшем без потери общности мы будем считать А симметричной мат- матрицей при рассмотрении квадратичной формы хМх. 1.3.1. Собственные значения и собственные векторы. Любой, не равный нулю вектор х, удовлетворяющий со- соотношению Ах = Хх, A.3) где А— (п X п) -матрица, называется собственным векто- вектором матрицы А, а скаляр X — ее собственным значением.
З-i ГЛ. i. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Так как х ф О, то из A.3) следует, что собственные значения К определяются корнями характеристического уравнения dct (Л -Л/„) =0, A.4) где /„ — единичная (п X /г)-матрица. Свойство 1. Собственные значения и собственные век- векторы вещественной симметричной матрицы всегда ве- вещественны. (Доказательство приведено в приложении 2.) Предположим, что к и \х — два различных собственных значения вещественной симметричной матрицы Л, а х и у — соответствующие собственные векторы, т. е. Лх = Я.х и л у = иу. Тогда <Лх, у> = <Хх, у>=Л<х, у) <х, Лу> = <х, иу> = j^<x, у>. Так как для вещественной симметричной матрицы <х, Лу>=<Лх, у> (в этом легко убедиться, выразив результат умножений через компоненты), то, вычитая из первой формулы вто- вторую, получим 0 ( пли так как Я ф |л, то 0 = <х, у>. Таким образом, получаем Свойство 2. Собственные векторы, соответствующие различным собственным значениям, взаимно ортогональ- аы (т. е. их скалярное произведение равно нулю). Свойство 3. Пусть дана произвольная вещественная квадратичная форма <?(х)= V V 7=1 ;-1 причем матрица А = (а„)
1.3. КВАДРАТИЧНЫЕ ФОРМЫ 35 симметрична. Тогда существует ортогональная матрица Т *) такая, что Т1 AT-диагональная матрица Л = diag(Xi, ..., кп), где diag(^i, • •., Хп) означает (п X п)-матрицу, у которой (/, /)-й элемент равен Хи 1 ё= i ^? п, а остальные элементы равны нулю. Говорят, что матрица А диагонализирована с помощью ортогональной матрицы Т. Заметим, что неко- некоторые собственные значения X могут быгь равны нулю. Доказательство. Можно показать [Уилкинсон A965)], что у симметричной матрицы всегда можно най- найти п линейно независимых собственных векторов. Свой- Свойство 2 утверждает, что собственные векторы, соответ- соответствующие различным собственным значениям, всегда взаимно ортогональны. Даже в том случае, когда соб- собственные значения повторяются, можно выбрать ортого- ортогональные собственные векторы, так как они линейно не- независимы. Другими словами, собственные векторы вещест- вещественной симметричной матрицы можно выбрать взаимно ортогональными, а именно: Эта система уравнений может быть записана в виде АТ=ТА, где т- [и, и,..., tn] Нормируем векторы t{ с помощью условия tjt, =1, i=l, ...,/г. Тогда имеем Т~] = Т\ так как ТТТ есть единичная матрица, в чем легко убе- убедиться непосредственным умножением. Тем самым дока- доказано свойство 3, поскольку Л = ГАТ. Л *) Матрица называется ортогональной, если Гт = Т~\
36 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ПЗ МАТЕМАТИКИ Читателю рекомендуется ознакомиться с другим дока- доказательством этих свойств, в котором используется метод исключения Гаусса [Беллман, стр. 56—63 A969)]. Это доказательство показывает, что днагонализация симмет- симметричных матриц может осуществляться с помощью ряда операций ведущего элемента, которые являются основны- основными в линейном программировании. (См. также параг- параграф 1.6.) 1.3.2. Положительная определенность. Квадратичная форма Q(x)= xTAx положительно определена, если (?(х) > 0 для всех х Ф 0. В этом случае матрица А также положительно опреде- определена. Если (?(x)ig:0, то квадратичная форма Q(x) и мат- матрица А являются положительно полу определенными. Для указания положительной определенности или полуопреде- полуопределенности вещественной симметричной матрицы А исполь- используются обозначения А > 0 или А ^ 0. Пусть А — вещественная симметричная матрица, а Г — ортогональная матрица такая, что ГАТ^Л, где Л — диагональная матрица. Введем новую перемен- переменную у, У = Гтх. Преобразуем квадратичную форму в следующую сумму квадратов: Q (х) = хтЛх = утТтАТу = утЛу = | Kvl При таком представлении легко определить, является ли <?(х) положительно определенной или нет. Это позво- позволяет сформулировать Свойство 4. Q (х) положительно определена, если и только если все собственные значения матрицы А поло- положительны. (?(х) положительно полуопределена, если и только если все собственные значения матрицы А неотри- неотрицательны. Если матрица А не является ни положительно, ни от- отрицательно полуопределенной (т. е. имеет и положитель-
1.3. КВАДРАТИЧНЫЕ ФОРМЫ 37 пые, и отрицательные собственные значения), то гово- говорят, что она знаконеопределена. Имеем следующую проверку на экстремум. Пусть х° является критической точкой функции /. Пусть, кроме того, все вторые частные производные функции / непре- непрерывны вблизи х°. Обозначим через Н(\°) значение мат- матрицы Гессе в точке х°. Тогда (I) Если //(х°)>0, то /(х°) является относительным минимумом. (II) Если 7/(х°)< 0, то /(х°) является относительным максимумом. (III) Если 7/(х°) знаконеопределена, то /(х°) не яв- является ни максимумом, ни минимумом; эта точка явля- является седловой. (IV)*) Если #(х°) полуопределеиа, то эта проверка не дает результата и нужны до- дополнительные вычисления для оп- определения характера функции в точке х°. В качестве примера для слу- случая (IV) рассмотрим функцию /(*, у) = *2 + у\ Здесь начало является критиче- критической точкой. Имеем dz и Я@, 0) полуопределена. При этом / имеет минимум в начале. Рпс- *-5- Лпнип постоян- Рассмотрим далее функцию TeIbHo3Ha4eoLpcAe.ieHHoi1 /(#> У) — х2 — у4. Начало являет- квадратичной функции. ся ее критической точкой, и Я @,0) вновь полуопределена. Эта функция не имеет минимума в начале, которое в действительности является ее седло- вой точкой. (На рис. 1.5 изображена положителъпо опре- определенная функция на плоскости.) Применяя метод диагонализации, мы получим Свойство 5. Пусть положительно определенная матри- матрица А имеет собственные значения Х\ ^ A,2^...2S А.„. *} Подробности, касающиеся этого случая, см. в книге Хенкока.
*ss гл. i. йредварительнЫе сведения и!з математики Тогда а хтАх а . хтЛх A1=max—— HXn=min . х^0 ХТХ Кфо ХГХ Таким образом, определение максимума (или минимума) положительно определенной квадратичной формы хтЛх равносильно определению наибольшего (или наимень- наименьшего) собственного значения матрицы А. Далее мы уви- увидим, что некоторые технические задачи можно свести к определению максимума отношения двух квадратичных форм вида <х, Лх>/<х, ?х>, (С) где В положительно определена. Можно показать*), что если В положительно определена, то существует неосо- неособенное преобразование выражения (С) в г=1 где Яь ..., Хп удовлетворяют характеристическому урав- уравнению 0 = | А — ХВ |. 1.4. Выпуклые множества и выпуклые функции Ранее уже указывалось, что при дополнительном пред- предположении о выпуклости функции локальный минимум совпадает с глобальным. В этом разделе мы будем изучать свойства выпуклых функций, определенных на выпуклом множестве. Множе- Множество S в Rn называется выпуклым множеством, если для любых х1, х2 е S точки х = цх!+A — ц)х2 A.5) принадлежат S при всех 0 f§ jli ^ 1. Формула A.5) может быть записана также в следую- следующем виде: x = x1+tfi, Og^l, *) См. Г а и 1 м а х е р, 1966, параграф 1.6.
1.4. ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИИ 39 где h = х2 — х1 Геометрически это означает, что если х1 и х2 принад- принадлежат S, то отрезок прямой, соединяющей эти две точки, также принадлежит S. Таким образом, A.5) является параметрическим представлени- представлением отрезка прямой, соединяю- соединяющей х1 и х2 (см. рис. 1.6). Функция /(х), определенная на выпуклом множестве -S, на- называется выпуклой, если выпол- выполняется неравенство Рис. 1.6. Выпуклое мно- множество на плоскости. ^ ц^ 1, A.G) или Заметил!, что все точки jlix1 + A — jli)x2, 0 ^g \i 5?1, при- принадлежат S, так как S является выпуклым множеством. Рис. 1.7. Выпуклая функция. С геометрической точки зрения уравнение A.6) устанав- устанавливает, что между любыми двумя точками на графике
40 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ функции график лежит ниже хорды, соединяющей [х1, /(х1)] и [х2, /(х2)]*). Рис. 1.7 иллюстрирует при- пример, в котором х является скалярной переменной. Точка Р имеет координаты [ц*1 + A - »)х*, ц/(*') + A _ ц)/(*»)]. Пример. Множество точек х, удовлетворяющих не- неравенству хт<?х =g I, (D) является выпуклым, когда матрица Q вещественна, сим- симметрична и положительно полуопределена. Это можно не- непосредственно проверить следующими вычислениями: <цх' +A - ц)х2, ?>(цх< +A - fx)x2)>=- l, <?х2> + (l-(iJ<x2, <?х2> ^ Следовательно, действительно принадлежит множеству, определяемому неравенством (D). Для получения третьей строки из вто- второй, было использовано неравенство Коши — Шварца |<х\ <?х2> |^К<х*, Qx*) <x2, <?х2> ^1. Если матрица Q положительно полуопределена, то вы- выражение, стоящее под корнем, неотрицательно. Когда раз- *)Для функции /(х) на выпуклом множестве SaRn рассмот- рассмотрим множество S+ в пространстве Rn+\ определяемое следующим образом: 5+={(х, у); хе5, /(х)<у). (Это множество называется надграфиком /.) Если даны две точки в S+: (х1, у1), (х2, у2), где f(xl)^yl и f(x2)^y2, то сегмент прямой, соединяющей эти две точки, может быть представлен параметрически в виде Отметим, что этот сегмент целиком лежит в 5+, поскольку + A-[1)х2е5в силу выпуклости множества S и Таким образом, выпуклую функцию можно определить следу- следующим образом: если S+ выпукло, то / выпукла, и обратно. Упомя- Упомянутое множество S+ может иметь важные применения. (См., на- например, книгу Рокафеллара A970).
1.4. ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИЙ 41 мерность п = 2, то это множество представляет собой со- совокупность точек, лежащих внутри эллипса. Д В предыдущем примере положительная полуопреде- полуопределенность матрицы Q существенна. Возьмем для примера размерность « = 2и удовлетворяют ; -м- Тогда точки, координаты которых х\ и условию образуют заштрихованную область, показанную на рис. 1.8. Это множество — невыпуклое. Так, например, -У -1,5 Рис. 1.8. Невыпуклое множество на плоскости. отрезок, соединяющий точки А и В, не содержится в за- заштрихованной области (см. рис. 2.2, а — г, на которых представлены дополнительные примеры выпуклых мно- множеств). Другой пример выпуклой функции встретится нам в главе 3 при рассмотрении задач размещения. В формуле C.5) /(х)—выпуклая функция, что следует из C.8). Значение выпуклых функций для задач минимизации вытекает из следующего свойства. Свойство 1. Локальный минимум выпуклой функции всегда является глобальным минимумом. Доказательство
42 1\Л. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ этого важного фактора см., например, у Зойтендейка A960). (См. также задачи 20 и 21 данной главы.) Если функция /(х) имеет первую или первую и вто- вторую производные, то выпуклость функции можно характе- характеризовать с помощью вектор-градиента и матриц Гессе. Рассмотрим вначале одномерный случай. Пусть j(x) — дифференцируемая выпуклая функция, определенная на интервале / вещественной прямой. Согласно определению выпуклости f(x + th) ^tj(x + h) + (l при х1 x-\-h^I. Если вычесть из обеих частой неравен- неравенства f(x) + tf'(x)h и разделить на ty то получим При ?->0+ левая часть обращается в нуль согласно оп- определению производной fix), которая предполагается существующей. Таким образом, имеем j(x + h)^J(x)+j'(x)li. A.7) С геометрической точки зрения это означает, что кривая, изображающая выпуклую функцию, лежит выше прямой, касательной к этой кривой в точке [#, /(#)] (см. рис. 1.9). Применяя формулу A.7) для двух точек х и у на / таких, что х < у, получаем два неравенства: Объединяя эти неравенства, можно записать Г{у)(у-х)ШП*)(х-у), пли так как по предположению у — х > 0, то Таким образом, имеем Свойство 2. Если на интервале / функция f(x) выпук- выпукла и дифференцируема, то производная на интервале / на.убывает.
1.4. ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИИ 43 Если }(х) при всех х па интервале / имеет вторую производную, то, как нетрудно видеть, справедливо обрат- обратное утверждение. Таким образом, имеем Свойство 3. Если функция f(x) обладает непрерывной второй производной при каждом х пз интервала /, то/(х) f(x) Рис. 1.9. Дифференцируемая выпуклая функция одной переменной. является выпуклой функцией, если и только если f"(x) ^ ^ 0 (для любого х е /, поскольку f (х) не убывает на 5). Обобщая эти результаты для xeSc R\ где S — вы- выпуклое множество, получаем следующее Свойство 4. Если функция f(x) выпукла и вектор- градиент V/(x) существует, то Свойство 5. Если функция / (х) выпукла и обладает непрерывными вторыми частными производными на от- открытом выпуклом множестве S, то матрица Гессе поло- положительно полуопределена, #(х) ^0 для любого x^S. Справедливо также и обратное утверждение. Доказательства этих свойств представляют собой обоб- обобщение доказательств для скалярных случаев. (См., на- например, Зойтендейк A960).) Дадим без доказательства теорему, которая нам пона- понадобится в главе 5 в задачах минимизации с ограничения- ограничениями при доказательстве существования множителей Лаг- ранжа. :
44 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ * Теорема отделимости. Пусть А — непустое выпуклое множество в Нп, не содержащее начала. Тогда существу- существует гиперплоскость, определяемая уравнением (с, х) = О, с ф О, такая, что при всех х е А (с, х> ^ 0. Если при этом А замкнуто, то найдется г >> 0 такое, что (с, х) ^ 8 при всех х^ А. Доказательство читатель может найти в ряде книг по фунциональному анализу либо выпуклым функциям (на- (например, Рокафеллар A970)). Теорема, аналогичная приведенной, может быть также названа конечномерной теоремой Хана — Банаха или теоремой Мазура (см., кро- кроме того, приложение 3 и Мангасарян A969), стр. 46—53). 1.5. Норма и число обусловленности матрицы*) 1.5.1. Анализ чувствительности. При разработке тех- технических и других сложных систем возникают различные вопросы, связанные с чувствительностью. Так, например, необходимо знать, как влияют на оптимальные расчетные значения небольшие изменения величин компонент (обу- (обусловленные, например, старением). Бывает желательно также исследовать влияние небольших изменений в струк- структуре системы или в установленных ограничениях, влия- влияние неопределенности в расчетных данных и т. п. В качестве простейшего примера решения вопросов чувствительности рассмотрим систему линейных алгебра- алгебраических уравнений. Очевидно, что решение двух линей- линейных алгебраических уравнений с двумя неизвестными равносильно отысканию точки пересечения двух прямых на плоскости. Ясно также, что, когда две прямые почти параллельны друг другу, даже небольшое изменение кру- крутизны любой из них, или отрезков, отсекаемых ими на осях, приводит к большим смещениям точки пересечения. Такая система уравнений называется плохо обусловлен- обусловленной (т. е. очень чувствительной к малым изменениям параметров) (см. рис. 1.10). В общем случае мы назы- называем систему уравнений плохо обусловленной, если ма- малые изменения параметров уравнений вызывают большие изменения решения. В этом разделе мы введем так назы- *) Частично основывается на книге Форсайта и Молера A967).
1.5. НОРМА И ЧИСЛО ОБУСЛОВЛЕННОСТИ МАТРИЦЫ 45 ваемое число обусловленности матриц, являющееся коли- количественной мерой «плохой обусловленности». Число обу- обусловленности играет важную роль при определении схо- сходимости различных итеративных операций, которые ис- используются в следующих главах. Рис. 1.10. Пример плохо обусловленной системы линейных уравне- уравнений. Точка пересечения (решение) смещается от А к В при неболь- небольшом изменении от 2 к 2'\ а) отрезка, отсекаемого на оси координат; б) крутизны. Рассмотрим линейное алгебраическое уравнение Лх = Ь, A.8) где А— (п X п) -матрица. Будем полагать, что матрица А имеет обратную. В качестве примера будем интерпрети- интерпретировать уравнение A.8), полагая, что b представляет со- собой множество величин, точные значения которых не оп- определены, матрица А известна точно, а вектор х задает оптимальные расчетные значения или оптимальную уста- установку управляющих воздействии или нечто тому подоб- подобное. Тогда А (х + бх) = b + 6b или Лбх = 6Ь, A.9)
46 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ где 6Ь есть вектор, представляющий собой неопределен- неопределенность вектора Ь, а 8х- результирующая неопределен- неопределенность расчетных значений вектора х. Мы можем также встретиться со случаем, когда мат- матрица Л не задана точно, а вектор b известен точно. Для этого случая имеем (Л+бЛ)(х + бх) =Ь, A.10) где 6Л представляет собой неопределенность матрицы Л. Для того чтобы судить о том, велико или мало бх по сравнению с 6Ь, необходимо ввести понятие величины или длины вектора и матрицы. Речь идет о понятии нор- нормы, кратко упомянутой в параграфе 1.1. Мы увидим, как с помощью нормы можно сделать точным утверждение о том, что векторы х и у близки друг к другу. Определение. Скалярная функция ||х|| га-мерного век- вектора х называется нормой вектора х, если она удовлетво- удовлетворяет следующим трем условиям: (I) Цх|| > 0 для х ф 0, ||х|| = 0 для нулевого вектора (т. е. вектора, все компоненты которого равны нулю); (II) llx + y||=S llx|| + llyli; (III) ||ax|| = \a\ • ||x||, где a— скаляр. Обычная длина вектора в евклидовом пространстве при тг ^ 3 удовлетворяет приведенным трем условиям. Таким образом, понятие нормы есть обобщение понятия длины вектора. Например, мы можем убедиться, что евклидово рас- расстояние есть норма в Лп, так как \\x\\ = V<^0 A.11) удовлетворяет приведенным трем условиям и, следова- следовательно, является нормой. Норму (пХп)-матрицы можно определить, например, следующим образом: ^. A.12) х II Легко показать, что для этой нормы выполняются все три условия. Действительно, (I) || Л || > 0, если Л не является нулевой матрицей*), и равна нулю, если Л — нулевая матрица; *) У нулевой матрицы все элементы равны нулю.
1.5. НОРМА II ЧИСЛО ОБУСЛОВЛЕННОСТИ МАТРИЦЫ 47 (III) ||лЛ|| = \а\ • ||Л||, где а — скаляр. Из формулы A.12) следует ЦЛхЦ^ЦЛЦ.ЦхЦ; A.13А) имеем также || АВ 11^1 А || • || ВЦ. A.13В)' Эти неравенства будут очень часто применяться. Могут быть определены и другие нормы. Так, на- например, п IIх! ^ У kil или lix!l= max l*i I удовлетворяют трем условиям, определяющим норму вектора х. Согласно A.12) можно различным образом определить норму матрицы Л, используя различные нормы вектора *). Так, например, при норме вектора согласно A.11) имеем для нормы матрицы || А ||2 = max —-— . Поскольку АТА есть симметричная (пХ п) -матрица, то из свойства 3 параграфа 1.3.1 следует, что ,M« = Hi>0, AЛ4) где }л7 есть наибольшее собственное значение матри- матрицы Л74. Для неособенной матрицы А (т. е. имеющей обратную) из уравнения Ах = Хх следует, что Таким образом, М!^1, A.15) где |^in есть наименьшее собственное значение матри- матрицы АТА. Теперь можно вернуться к вопросу о чувстви- *) Некоторые нормы матриц, однако, не имеют соответствую- соответствующе й нормы вектора [У л к и н с о н, 1963].
48 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ тельпости. Из уравнений A.9) и A.13А) при точно за- заданной матрице А и векторе Ь, неопределенность которо- которого выражается вектором 6Ь, следует, что A.16) Так как номинальный вектор х удовлетворяет уравне- уравнению Ах = b и, следовательно, то, полагая, что b ф 0, имеем Из формул A.16) и A.17) следует, что для относитель- относительного изменения решения уравнения A.8) имеем ^[А-^. A.18) Формула A.18) показывает, что относительная неоп- неопределенность векторд х в ||Л || • ||Л1| раз меньше отно- относительной неопределенности вектора Ь. Это число назы- называется числом обусловленности матрицы А1 cond (А) А || А || -М!. A.19А) Таким образом, число обусловленности зависит от при- применяемой нормы. Если используется норма, определяемая формулой A.11), то согласно A.14) и A.15) l, A.19В) т. е., вообще говоря, ||бх||/||х|| больше чем ||6b||/||b||. Если А — ортогональная матрица, то АТА = / и, следовательно, для ортогональных матриц cond (А) = 1. Число обусловленности, определяемое формулой A.19А), согласно A.14) и A.15) геометрически можно трактовать как меру искажения отображения матрицей А единичной сферы. Действительно, cond (А) есть отноше- отношение наибольшего к наименьшему расстояний между точ- точками на единичной сфере после ее отображения матри- матрицей Л. Чем больше cond (А), тем больше искажение еди-
1.5. НОРМА И ЧИСЛО ОБУСЛОВЛЕННОСТИ МАТРИЦЫ 49 ничной сферы при ее преобразовании в эллиптическую форму. Так, например, при минимизации квадратичной формы /(х) = хтЛх + атх + с поверхность постоянного значения f(x) = const будет со- совершенно отличаться от (гипер) сферической формы, если cond(^) велик, что может привести к известным трудностям при локализации минимума (см. главу 4). Пример. Рассмотрим матрицу А = diag A0, 1). Ко- Коэффициент обусловленности равен 10, что не является очень большой величиной. Эта матрица преобразует еди- единичную окружность на плоскости в очень удлиненный эллипс (см. рис. 1.11). а ( К 'г Ч Л t */+*?-/ >1*.|х|-/ Рис. 1.11. Случай числа обусловленности, не равного единице. При анализе других вопросов, относящихся к чувстви- чувствительности, также используется число обусловленности. Чтобы убедиться в этом, перепишем формулу A.10) сле- следующим образом: бх= (А + 6А)-1Ъ - А-1Ъ = [{А + бЛ)-1-Л~1]Ь. A.20) Легко убедиться в справедливости следующего равенства: (А + б^)-1 ~ А = —А-1бА(А + 6А)~К A.21) Подставляя A.21) в A.20), получим 6х = - А-^ЬА (А + 8А)"'Ь = - А-1&(А) (х + 6х), пли, переходя к нормам обеих частей и используя A.13В), получим или i^L^i| A.22)
50 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Формула A.22) вновь показывает, что cond (А) можно рассматривать как коэффициент усиления, определяющий соотношение между относительной неопределенностью матрицы А и относительной неопределенностью векто- вектора х, являющегося решением уравнения A.8). Пример*). Пусть А = | 0,9 0,8j* При этом cond (Л) =328,0. Система совместных уравнений xi + 0,9*2 = 1.9, 0,9*i +0,8*2= 1,7 имеет решением х\ = х2 = 1. Заменим теперь Х\ и х-} на х\ = 3,00, Х2 = —1,22. В результате получим Х{ + 0,9.г2== 1.902, 0 9*i -4- 0 8*о = 1,724. Таким образом, изменение 6Ь - @,002, О,О24)т вызвало изменение fix - B,00, - 2,22)т; или ~~| - 0,0094-i вызвало изменение II ^ || __q I|X|| """ Коэффициент усиления равен 2 • Ю2 0,0094\ — = ?ро 7 *) Малым значениям определителя н? обязательно соответст- соответствует плохая обусловленность матрицы. Например, А = diag (и,, Ц2, ..., |ып), где \ii = 10~l, I fg / s; л При лтом conrl (Л) = 1, од- однако |Л| = 10~п. (См. Форсайт и Мол ер A067).)
i.6. РАЗЛОЖЕНИЕ МАТРИЦЫ 51 Хотя в этом примере коэффициент усиления меньше чем cond (А), можно так выбрать А или 6х, что коэффи- коэффициент усиления достигнет значения коэффициента обус- обусловленности *). 1.6. Разложение матрицы в произведение двух треугольных Во многих задачах оптимизации важную роль играет решение системы совместных алгебраических уравнении вида Ах = Ъ. A.23) Ряд задач, относящихся к оптимизации, принятию решений и планированию, подробно рассматриваемых в главе 2, формулируются в виде задач минимизации квад- квадратичных форм. При этом оптимальные решения могут быть получены путем решения линейного уравнения вида A.23). Опыт показывает, что, кроме случаев некоторых спе- специальных структур матрицы А, лучшими являются мето- методы систематического исключения переменных (метод Гаусса). Основная идея метода Гаусса заключается в раз- разложении (п X п)-матрицы А в произведение двух тре- треугольных матриц в соответствии с равенством A = LU, где L — нижняя треугольная (п X п) -матрица, a U — верхняя треугольная (пХ п) -матрица. Естественно, удоб- удобно все диагональные элементы матрицы L выбрать рав- равными единице. В этом случае L и U будут определены однозначно. Если разложение возможно, уравнение A.23) может быть записано в виде Ly = b, A.24A) i7x = y. A.24B) Тогда решение уравнения A.23) находится путем реше- решения вначале уравнения A.24А) относительно у и затем — *) См. пример у Форсайта п Молсра A967), стр. 24, и Ван Дерслуиса (J970).
52 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ уравнения A.24В) относительно х. Поскольку L и U яв- являются треугольными матрицами, эти вычисления выпол- выполняются легко. Компоненты вектора у получаются в по- порядке возрастания индексов, а именно: у\, Jte, •••, Уп- Компоненты вектора х получаются в порядке убывания индексов, а именно: хп, хп-\, ..., х\. Разложение на матрицы L и U можно получить пу- путем индукции. Предположим, что матрицы Ак1 к = 1, ... ..., п—1, главных миноров (п X п) -матрицы А все не- неособенные*). Допустим, что (к X к) -матрица Ак главного минора матрицы А представлена в виде произведения Ak=LkUk. Тогда, чтобы разложить на множители [(&+1) X матрицу главного минора Ah+\1 запишем A.25) +iJ бцы. Запишем К1 aJ L где а) и р) — fc-мерные вектор-столбцы. Запишем Г \Lh °1 Т1 \Uh К1 aJ L о К J L о Тогда ] () Теперь согласно предыдущему можно записать LhUh = Ак. Сравнивая A.25) и A.26), имеем L/ta> = a>, A.27A)" <«7л = р>, A.27Б) (Z, u) + uk+lth+i = ak+i)k+i. A.27C) Согласно предположению матрица Ак неособенная, следовательно, Lk и Uk также неособенные. Решая урав- уравнения A.27А) и A.27В), получаем *) См. также Гантмахер, параграф 2.4. Речь идет о верх- верхних левых минорах.
1.6. РАЗЛОЖЕНИЕ МАТРИЦЫ 53 Подставляя эти выражения в уравнение A.27С), имеем Таким образом, начав с равенств А\ = Яц, L\ = 1, Ui = a\\ можно представить матрицу А(=Ап) в виде произведения LU, где L = Ln и U = С/п. Матрицу С/п можно вновь разложить на множители в виде Un = DnVn, где Dn — диагональная матрица, a Vn — верхняя треуголь- треугольная матрица с диагональными элементами, равными еди- единице. Матрица Vn получена из Un путем деления всех элементов строки на диагональный элемент. Тогда А = LDV. В частности, если матрица А симметрична, то, так как A =='LDV = A* = VTDL\ получаем Если А — симметричная и положительно определен- определенная матрица, то det A = det L • det D • det U = d{d2.. .dni (E) так как detL= 1 и D = diag(<2b d2, ..., dn). Из уравне- уравнения (E) видно, что di > 0, i = 1, 2, ..., п. (Если матри- матрица А положительно определена, то все ее верхние левые главные миноры положительны. Из этого следует, что d«>0, l^i^n.) Таким образом, положительно определенную матри- матрицу А можно представить в виде А = ВВ\ положив В = LDV\ где DI/2=diag(dl/2, 4/2, ...>dl!2),bB является нижней треугольной матрицей с положительны- положительными диагональными элементами.
5'i ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ 1.7. Линейное программирование*) Особый класс задач оптимизации с линейной целевой функцией и областью, в которой осуществляется оптими- оптимизация, определяемой системой линейных уравнений, со- составляют задачи линейного программирования. В этом параграфе дается краткий обзор некоторых основных идей линейного программирования. Некоторые дополнения будут приведены в главах 5 и 6. Для подроб- подробного рассмотрения читателю рекомендуется обратиться к специальным руководствам. Рассмотрим задачу минимизации скаляра z, заданного в виде z = <c, x) + d A.28) при условии Тх ^ Ь, И ^ 0, : где А—постоянная (тХр)-матрица коэффициентов. Та- Таким образом, с и х — р-мерные векторы, b — яг-мерный вектор и d — вещественный скаляр. 1.7.1. Стандартная форма. Задачу линейного програм- программирования называют заданной в стандартной форме, если она сформулирована следующим образом: минимизировать z = <с, х> + d при условии Лх = Ь, х^О, A.29) где А теперь— (тХ п)-матрица ранга т, т < п. Зада- Задачу A.28) можно преобразовать к стандартной форме -A.29), если положить (~т \т х > *?р+Ь • • •» хр-\-т) > т -г Р с=(с,О,...,О)т, Л =(i, -/m). A.30) t*) Этот параграф по является необходимым для понимания дальнейшего содержания книги п может быть опущен читателем. Частично основан на книге Кэтюна и др; A970).
1.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ 55 Переменные хр+\, ..., xp+m называются ослабляющими (или дополнительными) переменными. Они вводятся для того, чтобы преобразовать систему линейных неравенств в систему линейных равенств. Предположим, что задача уже сформулирована в стандартной форме. Обозначим вектор-столбцы матрицы А через а1, ..., а", а1 е Rn\ i = 1, ..., п. 1.7.2. Геометрия допустимого множества. Множество S = {х; х S> 0, Ах = Ь}, т. е. множество всех х в R\ удовлетворяющих указанным ограничениям, называется допустимым множеством, а любое xeS называется допу- допустимой точкой (решением). Если х1 и х2 принадлежат S, то множеству S принадлежит и цх1 + A — |х)х2, О ёг |х ^i 1, т. е. S представляет собой выпуклое множе- множество. Фактически S является выпуклым многогранником в Я", образованным системой линейных неравенств. С геометрической точки зрения это означает следую- следующее. Если решение данной задачи линейного программи- программирования ограничено, то, сместив в Rn гиперплоскость (с, х) = 0 параллельно самой себе до соприкосновения с «крайним углом» множества S, мы увидим, что либо оптимальное решение х* совпадает с крайней точкой*) множества ?, либо существует другое оптимальное реше- решение, совпадающее с другой крайней точкой. В последнем случае одпа из «граней» многогранника S окажется ле- лежащей на смещенной гиперплоскости. Пожалуй, интуитивно легче представить себе эти точ- точки, когда задача линейного программирования сформули- сформулирована не в стандартной форме. Для иллюстрации изло- изложенного рассмотрим пример. Пример. Минимизировать Z = Х\ + Х2 при условии 2*1 - Х2 ^ — 2, Х{ + Х2 ^ 1, Х\ — Х2 gi 1, Х\ 2^ О, Х2 2^ 0. Допустимое множество S показано на рис. 1.12. Это множество не ограничено. Гиперплоскость Н= {(xi, т2); *) Точка х выпуклого множества S называется крайней точ- точкой выпуклого множества, если не существует двух, отличных от к точек ytze5 таких, что х = [лу + (I — n)z, 0 <? ц *? *•
56 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ х\ + #2 = 0} и смещенная гиперплоскость х\-\- Х2 = const также показаны на рис. 1.12. Данная задача имеет бесконечно много оптимальных решений. Любая точка отрезка АВ прямой L% является Рис. 1.12. Неограниченная допустимая область. оптимальным решением. Точки А и В — это оптимальные решения, являющиеся крайними точками множества S. В стандартной форме эта задача формулируется сле- следующим образом: минимизировать при условии 2х\ — Х2 — %г = —2, х «1 — Я2 + Я5 = 1, Хг ^ 0, или Ах = Ь, где 4=1,2,.. ., 5, [2—1—1 0 0] 1 1 0—10, .1—1 0 0 1 J = (— 2, х = г, х2, х3, В рассмотренной задаче оптимальное решение суще- существовало, хотя множество S было неограниченным. Если
i.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ 57 нам надо было бы максимизировать ту же целевую функ- функцию при тех же условиях (ограничениях), то ограничен- ограниченного оптимального решения не существовало бы, так как z может принимать бесконечные значения. В таких слу- случаях неограниченных решений говорят, что задача линей- линейного программирования не имеет решений. 1.7.3. Характеристика крайних точек. Из предыдуще- предыдущего ясно, что крайние точки представляют для нас инте- интерес, поскольку они могут оказаться оптимальными реше- решениями. В случае двух- или трехмерного пространства крайние точки выпуклого многогранника легко себе пред- представить геометрически. Однако нам необходимо иметь сп- стематические способы их распознавания в пространст- пространстве /?п, размерность п которого может быть очень большой. Возникает вопрос: как можно удобно охарактеризовать крайние точки выпуклого многогранника? Прежде всего отметим, что линейные неравенства в крайних точках обращаются в равенства. В этих точках ослабляющие переменные уравнений фактически стано- становятся равными нулю. Можно сказать, что ограничения становятся активными, когда ограничивающие неравенст- неравенства удовлетворяются как равенства. Определим множество индексов активных (эффектив- (эффективных) ограничений, подмножество множества {1, 2, ...,п}, следующим образом: /(х) = {*; *, = 0}с{1, 2, ..., п}. Определение. Будем называть х базисным решением, если (I) х допустимо; (II) {a*, i&I(x)} есть множество линейно независи- независимых вектор-столбцов матрицы А. Нетрудно видеть, что х является крайней точкой мно- множества S, если и только если {a*, i&I(x)} есть множест- множество линейно независимых векторов, т. е. если х — базисное решение. Теперь уточним утверждение, относящееся к выбору крайних точек в качестве оптимальных решений. Теорема. Если задача линейного программирования в стандартной форме имеет оптимальное решение, то суще- существует и оптимальное решение х* такоеf что а*, г^/(х*),
58 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ линейно независимы. Другими словами, х* есть башсиое решение. Доказательство. Пусть a', г<^/(х*), линейно за- зависимы. Тогда существуют такие скаляры а,-, ?^/(*) не все равные нулю, что Определим х(8) для любого веществепного скаляра 0 следующим образом: х{ + ()ah 1ф /(x*). Заметим, что по определению множества индексов актив- активных ограничений х\ = 0для /g/(x*). Таким образом, Xi(Q) = 0 при i'e/(x*), а при г^/(х*) при достаточно малом |0| имеем #,@)> 0. Кроме того, Ах @) = V х, @) а* = V (х* + Ga,) a^ - ЛГ1 2'*а* 4- 0 ^ G-а^ = Л.х* = b Следовательно, функция х@), построенная согласно A.31), при достаточно малом |0| определяет допустимую точку. Целевая функция = 2 с,(л:Г + ва,) + й = <с,х*> + й + в 2 Так как х* является оптимальным решением, должно вы- полняться равенство 2 = 0, где не все af, г^/(х*), равны нулю. Пусть хотя бы один из скаляров а отрицателен*) и XiZ>0 при i'^/(x*). *) В противном случае дол ж по существовать неограниченное решение, что противоречит сделанному предположению,
1.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ 59 Введем ех -max |0>О;яг|(в) = х* + 6а, ^0, i ф I (х*)}. Поскольку хотя бы один из скаляров af отрицателен, 0i конечно. Обозначим x@i) через х1. Вектор х1 также яв- является оптимальным решением. Рассмотрим множество индексов активных ограничений вектора х1. Имеем 7(х*)с:/(х1). Это включение справедливо, поскольку х1 построен так, что он имеет по меньшей мере на одну нулевую компо- компоненту больше, чем х*. Другими словами, множество {аг, i*?I(x1)} имеет по меньшей мере на один вектор меньше. Если теперь векторы а1, i&I(xl), не являются линей- линейно независимыми, то процедура должна быть повторена. Так как число линейно независимых векторов среди век- векторов а1, ..., а71 не должно превышать m, m <С я, эта про- процедура закончится через конечное число шагов. Л 1.7.4. Базисные решения и обход соседних вершин многогранника. Оставшаяся часть настоящего параграфа посвящена описанию симплекс-алгоритма, при котором реализуется систематический метод обхода вершин много- многогранника при минимизации целевой функции A.29). Согласно теореме предыдущего параграфа задача ли- линейного программирования, обладающая решениями, име- имеет и оптимальные решения, являющиеся базисными. Так как среди а1, ..., ап может быть не больше т линейно независимых векторов, то базисное решение х может иметь не больше т положительных компонент. Определение. Будем называть х невырожденным ба- базисным решением, если (I) х есть базисное решение; ; (II) {а\ i&I(x)} образуют базис в Нт. Следовательно, число положительных компонент не- невырожденного базисного решения х равно т. При данном базисном решении х мы всегда можем выбрать из векторов а1, ..., ап такой базис для простран- пространства Лт, где т — ранг матрицы А, что он будет включать все линейно независимые векторы а*, где i^/(x). Обоз- Обозначим такой базис через {а1, iG/(x)} и назовем /(х) множеством базисных индексов вектора х.
60 ГЛ. i. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Из определения следует, что {1,2,.., w}-/(x)cz/(x). Отметим также, что если х есть невырожденное базисное решение, то J(x) в точности равно {1, 2, .., п) — /(х). Для простоты будем полагать, что каждое базисное реше- решение является невырожденным базисным решением. Отложим на время обсуждение алгоритма нахождения базисного решения и рассмотрим сперва алгоритм улуч- улучшения базисного решения, т. е. построения базисного ре- решения с меньшим значением целевой функции. Пусть х° есть базисное решение, а /(х°) —соответству- —соответствующее ему множество базисных- индексов. Поскольку х°г = 0 для i & /(х°), то имеем Ах°= 2 Si°a*=b. A.32) Для любого / Ф /(х°) а;'= 2 ociju\ A.33) г&/(х°) так как {а\ i^/(x0)} есть базис пространства Rm. Из уравнений A.32) и A.33) следует, что 0г?-6а^)а' + еа' = Ь. A.34А) Пусть аг;-> 0 по меньшей мере при одном t Построим далее х@) следующим образом: х} = в A.34В) О в прочих случаях. Из A.34А) следует, что ЛхF)=Ь для 8 > 0, т. е. хF) удовлетворяет одному из условий, определяющих *) Если atj ^ 0 при всех i е /(х°) и / <? У(х°), то не существу- существует крайних точек, соседних с х°.
1.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ 61 допустимые решения. Чтобы выполнить условие х(9) ^ ^ 0, выберем 6 следующим образом: l[!ij; () ц ] Если минимум отношения достигается одновременно более чем для одного индекса &, то это затруднение мож- можно преодолеть любым способом, например выбором наи- наименьшего к. Определим х1 следующим образом: Х1=ХF1). Вектор х1 является допустимым. Действительно, 4 = 4 — а& А = О, x\=x°i-aifil>Of ie=/(x°), 1ф х) = 6lf х\ — О в прочих случаях* Отметим существенное изменение вектора х1, заключаю- заключающееся в том, что к-я компонента становится равной ну- нулю, а /-я компонента становится положительной, т. е. A.35) Вектор х1 отличается от х°, если только 0i не равно нулю. Это может случиться, когда х° является вырожден- вырожденным базисным решением. Вектор х1 действительно явля- является базисным решением, т. е. {а*, i&I(x1)} есть базис пространства Дт. Чтобы показать это, предположим об- обратное. Тогда существуют [$», i e /(х1), не все равные ну- нулю, такие, что S М{-0, A.36) где 7(х1)=/(х0) — {*} + {/}. В частности, ^ ф 0. Иначе 0= S р|а«= S Р,а« означает, что все E равны нулю. Действительно, {a*, i e ^/(х°), г =^= А'} есть подмножество множества линейно независимых векторов {a', ie/(x0)}. Из уравнения A.36)
62 ' ГЛ. I. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ следует, что Из уравнения A.33) Из этих двух уравнений вытекает, что aftJ = 0, что противоречит использованному при вычислении 8i пред- предположению о том, что akj > 0. Поэтому х1 является базис- базисным решением. Перейдем к оценке влияния на целевую функцию пе- перехода из х° в х1. Так как х1 = x@i), где х(Э) опреде- определяется из уравнения A.34В), то целевая функция может быть представлена в виде °>-6j 2 с&п-сХ A.37) \ieJ(°) / где a,j определяется уравнением A.33). Поэтому для то- того, чтобы выявить влияние хF) на целевую функцию, мы должны вычислить а» Последнее можно осуществить с помощью уравнения A.39). Обозначим через А3 (тХ т)- нодматрицу матрицы А: Aj =[а\...,аН где {i\, h, ..., im} = ^(х0)- Так как ранг подматрицы Aj равен ттг, то обратная AJх существует. Для любого / Ф ^/(х°) aj - 2 а*;а* =^aJt A.38) isJ(x°) где () Уравнение A.38) повторяет A.33). Решая A.38) от- относительно со, имеем cxj =47Vf A.39)
1.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ G3 Подставляя это решение в уравнение A.37), получим <с, х1) - <с, х°> - вг «с,, а,) - cj) =, = <с, х°> - 0, U(A])-]cj, аЪ - с*], где Cj определяется аналогично (Xj. Возможны три случая: (I) Для заданного j&J(x°) существует но меньшей мере одно i <= /'(х°) с таким ац > 0, что где Следовательно, при этом х1 лучше чем х°. (II) Для заданного /^/(х°), а0 ^ 0 для всех iG €=/(х°) и <kj, aJ>—с, > 0. В этом случае каждый вектор на луче {х(8), 0^0} является допустимым и, как видно из уравнения A.37), целевая функция стремится к — оо. В этом случае задача линейного программирования ко имеет решения. (III) Для каждого j<?J(x°) (kj, aj)-cj ^ 0. В этом случае х° не может быть улучшено и, следо- следовательно, является оптимальным. В главе 5 будет показано, что эти условия оптималь- оптимальности решений могут быть получены из теоремы Куна — Таккера. Условие оптимальности для (III) можно полу- получить непосредственно следующим образом. После опреде- определенной перестановки столбцов матрицы А и соответству- соответствующих элементов вектора х можно записать где Aj — неособенная (т X т)-матрица. Индекс N ука- указывает, что хл> и AN составлены из элементов и вектор- столбцов с индексами, не принадлежащими /(х).
64 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ Решая вышеприведенное ограничивающее равенство относительно х,г, имеем xj = AJ{ (b - ANxN) и, подставляя х^ в целевую функцию, получим <с, х> + d = <Cj, Xj-> + <c-v, x^> + d = « d + <Cj, Л71Ь> + <cN - ATN (А] = d + <cj, ^71Ь> где, как и ранее, %j =(^J)-Ic,7. Если теперь Aj^b^O и с^у —Ajv^j^O, то оптимальное решение запишется в следующем виде: Условие cN — AlfXj^.0 в точности совпадает с ус- условием (III). (См. также задачу 5.8.) 1.7.5. Начальное базисное решение. Сейчас мы уже подготовлены к рассмотрению алгоритма для получения начального базисного решения. В уравнении Ах = Ь мож- можно положить b ^ 0. (Если некоторая компонента вектора Ь отрицательна, умножим ее и соответствующую строку матрицы А на — 1.) Рассмотрим следующую задачу линейного программи- программирования: минимизировать г=1 при условии, что [А,1т][;] = Ъ, х^О, у^О. Для этой задачи (О, Ь)Т является базисным решением, поскольку b ^ 0 и на вектор-столбцы матрицы 1т натя- натянуто пространство Rm. Поэтому мы можем улучшить это решение, используя рассмотренную ранее процедуру об- обхода соседних вершин.
1.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИИ 65 Пусть полученное таким способом оптимальное реше- решение есть Если у* = 0, то Лх* = Ь, х* ^ 0. Поскольку получено с помощью алгоритма обхода соседних вершин, то, так как у* = 0, множество базисных индексов будет определять выбор m линейно независимых векторов из вектор-столбцов матрицы А. (При этом предполагается, что матрица А неособенная.) Другими словами, X* явля- является базисным решением уравнения A.29). Если же у* ф 0, то допустимого решения не существует. 1.7.6. Симплекс-алгоритм. Подводя итоги, перечислим этапы решения задачи A.29). 1. Начало. С помощью симплекс-алгоритма решить следующую задачу: минимизировать при условии, что Лх + у-Ь, х^О, у^О, Ь>0. В качестве начальной точки возьмем Пусть результатом этапа 1 является базисное решение х°. 2. Вычислить где ~~ J = J(x°). 3. Если (Kj, aj> — Cj g; 0 для всех / Ф /, то х° является оптимальным решением. В противном случае выбрать j & J равным наименьшему из таких индексов, что и перейти к этапу 4. Я \1 А оки
66 ГЛ. i. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ 4. Вычислить где Aj~i — было уже вычислено на этапе 2. Если некото- некоторая компонента вектора ocj положительна, то перейти к этапу 5. В противном случае оптимального решения не существует. 5. Вычислить Если одинаковый результат одновременно достигается при нескольких &, взять наименьшее к. 6. Вычислить Вычислить /(х')=/(х°)- {к} + {/}. Возвратиться к этапу 2, предварительно положив х° = = х1. (Описание алгоритма для вырожденной задачи см. у Кэнона и др. A970).) 1.7.7. Таблица. Метод ведущего элемента. Задачу ли- линейного программирования в стандартной форме часто представляют в виде так называемой табличной формы Верхнюю строку и левый столбец называют соответ- соответственно нулевой строкой и нулевым столбцом. Тогда за- задачу линейного программирования можно сформулировать в следующем виде; минимизировать z при условии х ^ ?= 0, где В этом параграфе устанавливается связь результатов предыдущих параграфов с табличной формой решения задачи линейного программирования. При решении зада- задачи линейного программирования с помощью таблицы од- щш из *ищ)чевых этапов двляется преобразование табли-
i.7. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ 67 цы в каноническую форму. При этом по таблице можно определить, существует или не существует оптимальное решение, и в последнем случае — найти его значение. Модификация таблицы производится так называемым методом ведущего элемента, который эквивалентен полу- получению из старого множества базисных индексов /(х°) но- нового множества /(х1). Это достигается введением в базис нового вектор-столбца afe матрицы А и исключением из старого базиса вектор-столбца aj. Далее мы покажем, что как старая, так и новая таб- таблицы являются точными представлениями одной и той же задачи линейного программирования. Грубо говоря, ме- метод ведущего элемента сводится к решению системы ли- линейных уравнений относительно одной переменной и ее исключению. В сущности, это специальный случай исклю- исключения методом Гаусса — Жордана. Чтобы пояснить основную идею, рассмотрим пару ли- линейных уравнений: ... ахг + ... + bXj + ... = а, : ... cXi + ... + dxj + ... = p. : Пусть d ф 0 и требуется решить второе из уравнений от- относительно Xj и исключить Xj из первого. В результате получим или Первое уравнение пары теперь примет вид .. .(а - bc/d)xt + ... + Оя, + ... = а — Задача заключается в исключении переменной Xj из первого уравнения путем A) нормализации: разделить второе уравнение на d и B)*) исключения: вычесть нор- мализованное уравнение, умноженное на множитель *) Обычно располагают зависимые (т. е. относительно которых решается уравнение) и независимые переменные по разные сто- стороны от знака равенства. Однако в этом нет необходимости. Собе- Соберите все переменные по одну сторону знака равенства и исходите из того, что система уравнений разрешается для тех переменных, коэффициенты при которых равны единице. 3*
68 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ (в данном случае — &), необходимый для исключения пе- переменной Xj. Так как Ах — Ъ является системой линейных уравне- уравнений, то рассмотренная операция ведущего элемента явля- является операцией над строками матричного уравнения и ис- исключает одну переменную, скажем, xh из остальных т — 1 уравнений. Метод ведущего элемента, который сводится к преоб- преобразованию одной таблицы в другую, кратко можно выра- выразить следующим образом: М' = где М' — новая таблица, полученная из М после выпол- выполнения операции над ведущим элементом, расположенным на пересечении h-ik строки и &-го столбца. Только следу- следующие элементы матрицы Q являются ненулевыми: ?ол — —cjahkt qih = —uik/ahhi i ф h. После конечного числа преобразований методом веду- ведущего элемента новая таблица будет выражаться произве- произведением QM, где Q имеет вид . ^ ~ \о}'р Такое представление придает симплекс-методу форму произведения, что приводит к упрощению вычислений (см., например, П. Вулф (P. Wolfe), The Product Form of the Simplex Method в сборнике под ред. Абади (Aba- die), 1967, стр. 303-309). Как указывалось ранее, операция под ведущим эле- элементом ahk представляет собой решение /г-го уравнения относительно хк и исключение хк из остальных уравнений. Поэтому ведущие элементы никогда не выбираются из 0-й строки или 0-го столбца, поскольку эти строка и стол- столбец составлены из постоянных величин. Так как
1.7. ЛИНЁЙЙОЕ ПРОГРАММИРОВАНИЕ б5 то новая целевая функция z' теперь равна z' = М' [""х] = d + стх + гЦ-Ъ + Ах) = d + стх. Легко видеть, что получаемая путем преобразований но- новая таблица эквивалентна старой в том смысле, что мно- множества векторов х, которые удовлетворяют ограничиваю- ограничивающим уравнениям, соответствующим этим таблицам, одни и те же и что для любого такого вектора значение целе- целевой функции одно и то же. 1.7.8. Канонические формы и базисные решения. На- Настоящий раздел мы начнем с рассмотрения случая, когда условие (Ш) (стр. 63) ясно отображается в табличной форме, а именно, когда таблица имеет каноническую форму, которая будет сейчас определена. Определение. Форму задачи A.29) называют канони- канонической по отношению к множеству базисных индексов /, если (а) \j = /m, - (б) С, = 0, (в) Ь^О. , Условие (а) означает, что A.29) разрешима относи- относительно х\х,х\%, ...,ximi которые выражены через осталь- остальные (небазисные) переменные. Условие (б) утверждает, что базисные переменные исключены из целевой функ- функции. Условие (в) означает, что в этой форме постоянные члены уравнений неотрицательны. Каждой канонической форме соответствует допустимый вектор %а = bj, I ^ i ^ /тг, и соответствующая целевая функция, равная в этом случае z = d. Это решение является базисным решением, соответ- соответствующим множеству базисных индексов /. Теорема. Рассмотрим задачу линейного программиро- программирования в канонической форме. При этом либо (I) b ^ О и соответствующее базисное решение оптимально, либо (II) существует такое к, что сл < 0 и ал ^ 0, при этом целевая функция не имеет нижней границы, либо (III) существует такое А, что сл<0, и такое ц что а^>0.
70 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ В случае (III) в к-м столбце существует позиция, для которой операция ведущего элемента приводит к эквива- эквивалентной задаче в канонической форме с уменьшенным значением целевой функции (исключая случаи вырожде- вырождения)*). Чтобы вектор х оставался допустимым, ведущие элементы Л, к выбираются согласно условию min {bt/aih \aih>0} = bh/ahk. Предположим теперь, что условие (с) определения канонической формы не удовлетворяется. Рассмотрим вспомогательную подзадачу Ъ' \ А' где 0-я строка матрицы М' представляет собой любую пз строк матрицы М, содержащих отрицательный член Ь, a {WA') состоит из всех строк матрицы Л/, в которых члены Ь равны нулю или положительны. Отметим, что матрица М' представлена в канонической форме. Приме- Применяя последовательность операций ведущего элемента для преобразования М в Л/*, получим либо (I) с* ^ 0, либо (II) существует такое /с, что с* и а* неположительны. Если имеет место (I) и — d* < 0, то это означает, что исходные ограничения несовместны. Есль: (I) имеет место и — d* ^ 0, то эта строка включается в новую под- подзадачу Л/** в канонической форме, имеющую по меньшей мере на одну строку больше, чем М\ Если имеет место (II), например, при c*k<0 и а^О, примем строку целевой функции матрицы М* в качестве ведущей строки, а столбец к — в качестве ведущего столб- столбца, выбрав тем самым с* в качестве ведущего элемента. *) Возможно возникновение цикла. Если это происходит, то задача наливается вырожденной. Вырожденные задачи встречают- встречаются на практике очонь редко. Поэтому применяют некоторые ис- искусственные приемы, позволяющие избежать зацикливания при доказательстве сходимости преобразования данной таблицы к ко- конечной таблице.
ЗАДАЧИ 71 Тогда d** =d*/c*b>0 ч для любого i матрицы М. Таким образом, после конечного числа вспомогатель- вспомогательных подзадач возрастающего размера либо будет обнару- обнаружена несовместность ограничивающих уравнений, либо задача примет каноническую форму. ЗАДАЧИ . 1. Доказать, что для двух векторов х п у в выполняется равенство пространстве Rn (так называемое равенство параллелограмма). 2. Даны линейно независимые векторы х1 и х2. Преобразовать пх в множество ортогональных векторов вида и1 = х1/ || х11|, и2 = а (х2 — ри1). Показать, что Ри1, делающая и1 и и2 ортогональными, является проекцией вектора х2 на подпространство, натянутое на и1. 3. Дано множество линейно независимых векторов х1, х2,..., х". Другое множество линейно независимых векторов у1, у2,..., уя выбирается так, чтобы у* являлось линейной комбинацией х1, х2, ..., х». Показать, что они связаны следующим соотношением: хп] __ г 1 V2 Yni где Чи ф 0, 1 ^ i ^ п. 4. (Ортогонализация Грама — Шмидта.) Доказать, что множе- множество ортогональных векторов с единичной нормой (ортонормиро- ванные векторы) мо?кет быть построено из множества линейно не- независимых векторов х% i=l, ..., /г, с помощью преобразования Tn 0 0 0 Tl2 T22 •.. 0 ... ... 0 Tin T2n j V • n11 _ (х1, х1) <х2, х1) <х\ хО I x xi г—1
72 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ u где <х\ х1)...^*, х1) Укажем, что предшествующую формулу нужно расшифровать путем разложения определителя по последней строке. Следующий пример иллюстрирует это: 5. Показать, что область значений Ш(А) (т X л)-матрицы А есть Rm, если и только если среди вектор-столбцов а1, ..., а71 есть т линейно независимых векторов. 6. Показать на примерах, что критические точки не обязатель- обязательно являются точками локальных экстремумов. 7. Исследовать поведение функции f(x, у) =х2 — у* вблизи начала. 8. Рассмотреть функцию (задача предложена Пеано) f(x, у) = abx4 — (а + b)x2y -f- y\ а, Ь > 0. Найти вектор-градпент и матрицу Гессе для начальной точки. Является ли начало экстремумом функции? Какое значение имеет производная по направлению вблизи начала? (Указание. Реко- Рекомендуется разложить функцию на множители.) 9. Пусть функция /(х) вблизи своей критической точки х° имеет непрерывную частную производную второго порядка. Пока- Показать, что в случае знаконсоп ре деленной матрицы Гессе х° являет- является седловой точкой этой функции. 10. Если /(х) в области 5 обладает более чем одним относи- относительным минимумом, то матрица Гессе #(х) не является положи- положительно определенной для всех х в 5. 11. Дана матрица a) Найти ее собственные векторы и собственные значения. b) Найти ортогональную матрицу Г, которая диагонализиру- ет А, т. е. при которой ТТАТ является диагональной матрицей. 12. Определим квадратный корень из диагональной матрицы D следующим образом: Как можно определить квадратный корень из подожительно опре- определенной матрицы Q?
Задачи Примените это определение, чтобы показать, что <х, Qy>2 <л <х, <?х><у, Qyyt Q>Q. 13. Главная ось эллипса (или эллипсоида) есть вектор из на- начала в такую точку х на эллипсе (или эллипсоиде), что вектор оказывается нормальным к эллипсу (или эллипсоиду) в этой точ- точке х. Рассмотреть эллипс Представьте уравнение эллипса в виде хМх, где х = (хь х2)т. Най- Найдите его главные оси. Докажите, что главные оси ортогональны. 14. В задаче 13 найти такие новые координаты у\ и t/г, при ко- которых уравнение эллипса принимает вид 15. Показать, что главные оси являются собственными векто- векторами вещественной симметричной' матрицы Л, для которой урав- уравнение эллипса (или эллипсоида) записывается в следующем виде: хМх = const. Показать, что длина главной оси, соответствующей собствен- собственному значению к, обратно пропорциональна V^ • 16. Пусть А — положительно определенная симметричная (л X X п) -матрица с собственными векторами иь ..., un и соответству- соответствующими собственными значениями ki, ..., кп. Показать, что И ЧТО ?гЧ7 г=1 17. Дана симметричная матрица А с собственными значениями а,1 ^ а*^ ... ^п, и <о. Каковы собственные значения матрицы (А'+- XI) ? При каком значении к эта матрица будет положительно определенной? 18. Вектор-столбцы (п X г) -матрицы В линейно независимы. Показать, что Q = ВТВ — положительно определенная матрица. 19. Пусть /(х) и g(x) —выпуклые функции, определенные на выпуклом подмножестве 5 пространства Rn. Показать, что а/(х) I+- + Р#(х) — выпуклая функция, если а, р ^ 0. 20. Пусть X и У —выпуклые множества пространства Лп. Оп- Определим Z = аХ + bY условием Z = {z : z = ах + by, x е= Х% у е Г},
ГЛ. i. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ где а и b — вещественные числа. Показать, что Z — выпуклое мно- множество. 21. Прямое пропзведенпе двух множеств X aRn с Y czRm оп- определим следующим образом: Таким образом, прямое произведение является подмножеством пространства #л+™. Показать, что оно является выпуклым множе- множеством, если X и Y — выпуклые множества. 22. Пусть /(•) является выпуклой функцией в пространстве Rn. Тогда выпуклым является множество Показать, что прп любом хе! ,x-a>^0. (F) Если предположить, что V/(a) Ф 0, то <V/(a), х — а> = 0 будет уравнением гиперплоскости, касательной в точке а к гиперповерх- гиперповерхности /(х) = /(а). Следовательно, уравнение (F) показывает, что множество X расположено по одну сторону гиперплоскости, каса- касательной в точке а. 23. Пусть /(•) —-дифференцируемая выпуклая функция в про- странстве Rn. Тогда, если <V/(x), h> ^ 0, то /(х + h) ^ /(х). Од- Однако, если /(•)—просто дифференцируемая функция, то условия <V/(x), h> i^O недостаточно для того, чтобы выполнялось условпе /(x + h) ^/(х). 24. Пусть /(х) — выпуклая функция на выпуклом замкнутом множестве 5. Пусть ц = min/(x). а) Показать, что подмножество множества 5, на котором /(х) = ц, выпукло. б) Если х° —локальный минимум функции /, то /(х°) = \х и, следовательно, х° есть глобальный минимум. 25. Псевдовыпуклость и квазивыпуклость [М а н г а с а р я н, 1965]. Дифференцируемая вещественная функция /(х) называется псевдовыпуклой на непустом подмножестве С пространства R'\ если для каждого х и у из С из условия <V/(x), у — х> 2^ 0 сле- следует, что /(у) ^ /(х). Вещественная функция /(х) называется квазивыпуклой, если С выпукло и для каждого х и у из С из условия /(x)i^ /(у) сле- следует, что /[8(у) + A — 9)х] ^ /(у) при любом 0, 0 ^ 6 ^ 1. Или, в эквивалентной формулировке, /(х) квазивынуклая па С\ если из условия /(у) =i /(x) следует, что <V /(x), у —х> ^0. а) Показать, что функция f(x) — х + хъ псевдовыпуклая. б) Привести примеры псевдо- и кваянвыпуклых функций. в) Показать, что множество SH = {х; /(х) <i а} выпукло прп любом а и любых кнаапиынуклых функциях.
ЗАДАЧИ 75 г) Показать, что выпуклая функция лсевдрвыиукла. д) Показать, что пссвдовыиуклая функция квазивыпукла. е) Привести пример функции, которая квазивыпукла, но не псевдовыпукла. ж) Предположим, что /(х) псевдовыпукла на С. Тогда ее кри- критическая точка является глобальным минимумом функции /(х) на С. 26. Доказать, что пять определений расстояния, сформулиро- сформулированных в уравнениях B.1) —B.5), удовлетворяют трем свойствам нормы. 27. Пусть Ах = Ь, где =[1 с U] Ь = причем а, Ь и с не равны нулю. а) Показать, что малые изменения е и б могут привести к то- тому, что система уравнений будет иметь бесконечное число реше- решений, не будет иметь решений или будет обладать единственным решением. Доказать, что в случае единственного решения это ре- решение может изменяться в широких пределах даже при добавле- добавлении к с и Ъ очень малых |е| и |б|. б) Предположим, что в качестве приближенного решения этой же системы нам задано х = b/а, у = 0. Вычислим г = Ах — b (эта величина называется невязкой и часто используется как указатель, насколько хорошим является приближение). Показать, что при плохо обусловленных системах уравнений малые невязки не обя- обязательно указывают на хорошее приближение. (В качестве при- примера попробуйте а = Ъ — с = 1, е= 10~б, б = 10~4.) Можете ли вы выбрать такие а, 6, с, е, б и два приближенных решения, что приближенное решение с меньшей невязкой фактически будет яв- являться худшим приближением? 28. Пусть в системе уравнений Ах = b элемент ац матрицы А изменен на а^ + 6atj при малом |6flij|, в то время как остальные элементы остались неизменными. Вывести выражение для Xi/(xi-\- -J-бя,), где Хг и Xi+8xi являются i-ми компонентами решений со- соответственно х и х + бх. Показать, что ai} || del A где Ац есть алгебраическое дополнение элемента atj. Так как то Поэтому uij(A~x)n является мерой обусловленности матрицы А до
76 ГЛ. 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ ИЗ МАТЕМАТИКИ отношению к малым изменениям элемента ац. Убедитесь в том, что этот коэффициент инвариантен к изменениям масштаба*). 29. Часто, прежде чем решать систему линейных алгебраиче- алгебраических уравнений Ах = Ь, производят умножение некоторых строк и столбцов матрицы А на постоянные величины. Как это влияет на cond(/4)? Заметим, что умножение столбца (строки) на постоян- постоянную величину эквивалентно умножению матрицы А справа (сле- (слева) на некоторую диагональную матрицу. Вначале рассмотрите BX2)-матрицу. ¦)В некоторых многомерных системах управления это число используется как мера взаимодействия между различными вхо- входами системы. (См.; например, Е. Н. Bristol, On a new measure of interaction for multi-variable process control. IEEE Trans. Autom. Contr., v. 11, January 1966, pp. 43—44.)
ГЛАВА 2 ЦЕЛЕВАЯ ФУНКЦИЯ При решении многих технических задач ряд «расчет- «расчетных параметров» принимают в качестве меры «нежела- «нежелательных» свойств или стоимости, которую нужно миними- минимизировать, либо ряд параметров рассматривают как меру «качества», которую нужно максимизировать. При этом минимизация или максимизация должна быть выполнена при условии соблюдения определенных ограничений. Это в равной мере справедливо применительно к са- самым различным объектам: электромеханическим устрой- устройствам, электронным схемам, различным структурам или системам управления. В данной книге рассматривается задача оптимизации в конечномерном евклидовом пространстве. Другими сло- словами, речь идет о задаче оптимизации (это может быть минимизация или максимизация), в которой мера качест- качества или целевая функция является функцией конечного числа переменных. Задачи оптимизации в бесконечномер- бесконечномерном пространстве рассматриваться нами не будут. Начнем наше рассмотрение с предположения, что задана соответ- соответствующая скалярная мера качества *). Мы ни в коей мере не будем затрагивать вопрос о выборе меры качества, ко- которая отражала бы различные качественные и количест- количественные особенности, интуитивно приписываемые опти- оптимальной системы. Ясно, однако, что вопрос о том, оп- оптимальна или не оптимальна какая-либо совокупность расчетных данных, в общем случае зависит от выбора критерия. ^ *) Мы не будем рассматривать задачи оптимизации с вектор- векторной мерой качества, т. е. с несколькими скалярными показателя- показателями качества. Задачи оптимизации с векторными критериями свя- связаны с многими тонкими и трудными вопросами,
78 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ Для иллюстрации этого положения в следующей главе мы исследуем так называемую задачу размещения, при- применяя несколько различных целевых функций. Задача оп- оптимизации может быть сформулирована как задача опти- оптимизации заданной целевой функции при условии выпол- выполнения ряда заданных ограничений. Любое решение, которое удовлетворяет этим ограни- ограничениям, называется допустимым или субоптималъиым. Таким образом, оптимальное решение является лучшим допустимым решением в смысле заданного критерия. Мы интересуемся как оптимальным, так и субоптимальными решениями, так как есть много задач, для которых опти- оптимальное решение или неизвестно, или из-за своей слож- сложности практически неприемлемо. Даже когда мы имеем практически приемлемые оптимальные решения, мы все же интересуемся субоптимальными решениями, близкими к оптимальным. Изучая такие решения, мы получаем воз- возможность оценивать, насколько чувствительны оптималь- оптимальные решения основных задач к небольшим изменениям в формулировках задач, выражающимся то ли в изменении каких-то ограничений, то ли определяемым «практически- «практическими» соображениями, которые не содержались в ясной форме в целевых функциях. При формулировке задачи оптимизации важно найти правильное представление целевой функции и масштабы Рис. 2.1. Влияние изменения в 2 раза масштаба х\ на вектор- градиент. входящих в нее переменных. Трудность определения ми- минимума функции /(#i, ..., хп) в значительной мере зави- зависит от этих факторов. Простое изменение масштабов или единиц измерения целевой функции и переменных, т. е. замена f{x\, #2, «t.a хп) на cj{S[X\, s2x2, ..., sazn), где
2.1. ФУНКЦИЯ, ОПРЕДЕЛЯЮЩАЯ РАССТОЯНИЕ 70 с, $ь • • •> sn — скаляры, не изменяет в принципе характер целевой функции. Важно, однако, учесть, что эти измене- изменения масштабов могут существенно повлиять на вычисли- вычислительные трудности, возникающие при поиске экстремаль- экстремальных точек целевой функции. Далее у нас будет несколько возможностей вернуться к этому вопросу. Так, например, изменение масштабов переменных приводит к изменению частных производных целевой функции и тем самым вли- влияет на скорость сходимости поиска оптимальной точки (см. рис. 2.1). 2.1. Функция, определяющая расстояние Начнем с обобщения геометрического понятия расстоя- расстояния. Мы далее увидим, что различные определения рас- расстояния меняют характер задачи оптимизации. С тем что- чтобы отразить особенности оптимальности в различных усло- условиях, в различных задачах приходится применять различ- различные определения расстояния. Определение. Расстоянием называется вещественная функция, определенная для любых двух точек х и у в про- пространстве Rnj обладающая следующими тремя свойствами: 1. d(x, x)=0, d(x, y)>0, х^у, 2. d(x, у) = d(y, х), 3. <Г(х, у) <d(y, z)+d(x, z). Заметим, что свойство 3 является обобщением извест- известного неравенства треугольника. Примером расстояния является |/ Д-у, х-у>. B.1) где х =* (хи ..., хп)\ У= {Уи ..., Уп)\ Эта функция определяет евклидово расстояние между двумя точками х и у в Rn. В качестве других примеров расстояния приведем также следующие функции: <*(х,У)= 2!|*|-У!| B.2) d(x,y)= max |ar,-у,I, B.3)
80 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ Широко применяется расстояние, определяемое следу- следующей функцией: d(x, у) = <х - у, М(к - у) У'\ B.4) где М — положительно определенная симметричная (пХп) -матрица. На рис. 2.2, а—2.2, г. показаны точки в пространстве Я2, расположенные на равных расстояниях от начала для Рис. 2.2. Точки, равноудаленные от начала, соответствующие четы- четырем различно определенным расстояниям. d(-, •), заданных соответственно уравнениями B.1) — B.4). Как появляются эти расстояния в задачах оптимиза- оптимизации? Рассмотрим в качестве примера простую задачу раз- размещения, в которой исток (например, склад) должен об- обслуживать п стоков (например, магазинов). Если материа- материалы можно доставлять в магазин по прямой, то уравнение B.1) подходящим образом определяет расстояние. В этом случае равным расстояниям до истока соответствует окружность, показанная на рис. 2.2, а. Однако, если материалы транспортируются вдоль до- дорог, образующих прямоугольную сетку, то надо будет ис- использовать уравнение B.2), а точки, находящиеся на рав- равных расстояниях от истока, расположатся, как показано на рис. 2.2, б. (См. 2.2.11 и главу 3, где приведены задачи
2.1. ФУНКЦИЯ, ОПРЕДЕЛЯЮЩАЯ РАССТОЯНИЕ 81 оптимизации, использующие расстояние, заданное урав- уравнением B.2).) Пример, где подходящим является опреде- определение расстояния согласно B.3), приводится ниже, в на- настоящем параграфе. Применение уравнения B.4) подроб- подробно рассматривается в главе 4. В качестве еще одного примера обратимся к задаче построения системы, обладающей некоторой заданной вы- выходной реакцией. Это может быть время установления сервомеханизма или частотная характеристика электрон- электронного усилителя. Обозначим требуемую характеристику реакции через d(xjI а фактическую реакцию — через г(Xj), где х — независимая переменная, как, например, время или частота (см. рис. 2.3). Рис. 2.3. Требуемая и фактическая реакции системы: d(x) —харак- —характеристика требуемой реакции; г(х) —характеристика фактической реакции. Как выразить математически, что эти две кривые близки друг к другу? Очевидно, ответ на этот вопрос за- зависит от задачи. Как и при измерении расстояния между двумя точками, мы можем ввести различные меры близо- близости двух функций. Обозначая d(x,) и r(Xj) через dt и rit где X), 1 ^ / = ni— выбранные типовые точки в области определения функций d(-) и г(*), в качестве расстояния между двумя функциями можно принять следующее оп- определение: где р — положительное целое число. Мы уже встречались с частным случаем этого определения при р = 2 в урав- уравнении B.1).
82 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ Для определения расстояния между двумя кривыми может использоваться уравнение B.3): doc (d, r) — max | dj — rj |, которое можно рассматривать как предел dp при /?-voo. При малых значениях р две кривые отделены друг от дру- друга большим расстоянием, в том случае, если они разли- различаются на большом интервале х. Когда р увеличивается, Рпс. 2.4. Близость кривых может изменяться в зависимости от вы- выбранного определения расстояния. расстояние между двумя кривыми все в большей мере бу- будет определяться максимальным расхождением двух кри- кривых. Например, при малых значениях р расстояние меж- между кривыми 3 и 1 на рис. 2.4 меньше чем расстояние меж- между кривыми 2 и 1. При большом же р положение меняется на обратное. 2.2. Примеры целевых функций Рассмотрим некоторые задачи оптимизации и примеры целевых функций, которые могут быть при этом заданы. (Дополнительные и более подробные примеры приведены в главе 8.) 2.2.1. Монтаж цифровой вычислительной машины. При разработке больших цифровых вычислительных машин или сложной электронной аппаратуры возникает много задач, связанных со стремлением оптимизировать разме- размещение элементов (разбиение их по платам и блокам)
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 83 и соединений между ними в соответствии с выполняемыми ими функциями. В частности, рассмотрим задачу оптими- оптимизации размещения ячеек и выбора межконтактных соеди- соединений и системы расположения проводов. Идеализирован- Идеализированная формулировка задачи разработки монтажа подобных электронных систем может быть описана следующим об- образом: при заданном числе N элементарных площадок, на которых должны быть размещены М элементов, М < N, и соединения между ними, и заданном числе проводов, идущих от каждого элемента, определить такое располо- расположение элементов, чтобы некоторая функция от длины про- проводов была бы минимальной. Элементарные площадки, на которых можно осуществлять монтаж, могут * размещать- размещаться в одномерном, двумерном или трехмерном пространстве. Цепям, к которым предъявляются более высокие требо- требования в отношении передачи импульсов, могут быть при- приписаны большие веса, чем другим соединениям, к которым предъявляются менее жесткие требования. Таким обра- образом, функция d«p, которая представляет собой «длину» провода между точкой {} и точкой а, может быть обычной геометрической длиной или взвешенной средней геометри- геометрической длиной, образованной умножением длин на соот- соответствующие веса, или в случаях, когда наиболее длинной цепи предъявляются более жесткие требования в отноше- отношении воспроизведения формы импульса или времени за- задержки, «длина» может быть определена следующим об- образом: daf* = ШаХ (К - *р И У а ~ Ур И Za - h l> <2'5) Соответственно этому в качестве целевой функции можно взять следующую сумму: ар ' ' где iva& — неотрицательные веса, а суммирование ведется по всем соединениям, при условии выполнения установ- установленных ограничений. В качестве других возможных целевых функций можно было бы взять число пересечений (чтобы минимизировать нежелательные связи) или общее число поворотов прово- проводов под прямым углом. Последний критерий может быть применен при машинном проектировании соединений.
84 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ (См. Ли A961), Лин A965) и Стайнберг A961).) Все эти задачи представляют собой трудные комбинатор- комбинаторные задачи. (Более подробно о комбинаторных задачах оптимизации см. у Лью A968).) 2.2.2. Оценка параметров. При проектировании систем связи, систем водохранилищ, при исследовании некоторых технических систем и т. п. возникает необходимость оцен- оценки параметров системы на основании имеющихся данных измерений, искаженных шумами. Практически часто используется оценка максималь- максимального правдоподобия*). Эта оценка получается путем оп- определения максимума функции плотности совместной ве- вероятности *(в предположении, что она существует) Р(У\ У2, •••> У*ь ••> *») векторов у1, у2, ..., у", рас- рассматриваемой как функция значений неизвестных пара- параметров х= (х\, ..., ХпУ- Другими словами, чтобы найти оценку х по максимуму правдоподобия, надо максимизи- максимизировать функцию плотности вероятности по пространству параметров X: max р (у\ у2, ..., у* | х) = р (у\ у2, ..., у* | х). ВХ Предположим, например, что у* является и-мерным вектором и что р(Уг YN |x)= constexp \-± J(У1 - *)*A(y< - *) • I i=i j (Это относится к случаю, когда шумы представляют со- собой независимые случайные гауссовы величины со сред- средним, равным х, и ковариационной матрицей Л.) Так как определение максимума р эквивалентно опре- определению то мы имеем дело с так называемой вадачей взвешенных наименьших квадратов. Другими словами, в изложенной *) Знания теории вероятностей для понимания основпых раз- разделов книги не требуется.
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 85 задаче оценки максимального правдоподобия целевая функция оказывается квадратичной. 2.2.3. Регрессионный анализ и выравнивание. Квадра- Квадратичные целевые функции используются также в линейном регрессионном анализе. В этом случае мы интересуемся выравниванием данных измерений у{ по линейной функ- функции aXi + Ь, где х{, 1 ^ i ^s N,— заданные независимые переменные. Для простоты будем полагать, что все эти переменные — скаляры. Задача заключается в выборе таких а и Ь, которые вы- выравнивают множество измерений по этой линейной функ- функции. Обычно это выполняется в виде решения задачи взвешенных наименьших квадратов N ^iViiiJi—aXi — bJ, где iv{ — соответствующие веса. Если ошибку определять величиной max I i/i — ахг — Ь|, i<i<N то мы приходим к так называемой задаче аппроксимации Чебышева. В более общем случае задачу можно сформулировать следующим образом: если требуется осуществить вырав- выравнивание по кривой ф(#; 0), где 6 — подлежащий опреде- определению вектор параметров выравнивающих функций, то в качестве целевой функции можно взять N г=1 ИЛИ max Ift—q>fa;e)|. (A) l<i<N В некоторых задачах по расчету электрических фильтров у{ является требуемой реакцией идеального фильтра на частоте х{, а ц>(хг; 8) —реакцией физически осуществимого фильтра с величинами параметров 6. Ког- Когда используется целевая функция (А), мы получаем так называемый фильтр равномерного приближения. 2.2.4. Решение алгебраических уравнений. Один из путей решения системы совместных алгебраических
86 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ уравнений <Pi(#i, х2, . . ., хп) = О, 1 ^ i Si т, заключается в образовании целевой функции /(х) вида т /(*)•= 2[ф;(*I2, где хт = (хи х2, ..., хп), и минимизации ее численными методами. Если исходная система совместных уравнений имеет единственное решение, то целевая функция будет иметь единственный минимум, и притом равный нулю. В каче- качестве примера рассмотрим систему уравнений Ах = Ь, • (В) встречающихся во многих задачах различной природы. Если определить целевую функцию /(х)= (Лх-Ь)тЩЛх-Ь), где WT = W > 0, то мы получаем задачу взвешенных наименьших квадратов. Если W = I, то задача сводится к наименьшим квадратам. (См. также Флетчер, 1969.) 2.2.5. Расчет линз с помощью вычислительной машины. Обычная процедура расчета системы линз заключается в определении хода ряда выбранных лучей из точек в пло- плоскости объекта через линзу к плоскости изображения. Изложим эту процедуру в упрощенном виде, достаточном лишь для обоснования выбора целевой функции исполь- используемой при расчете линз. (Более подробно смотри статью Федера в сборнике под редакцией Лави и Фогеля A966).) Точка (по, vq) выбрана в плоскости объекта. По закону Снелла луч, исходящий из щ, у0, проложим в направле- направлении, определяемом параметрами (а, [}), где (а, [}, у) — направляющие косинусы, удовлетворяющие условию а2 + Р2 + ? = 1. При этом в плоскости изображения мы получим точку (uF, vF). Эта точка изменяется с изменением таких пара- параметров, как расстояние по оси, кривизна поверхности линзы, коэффициент рефракции и т. п. Обозначим эти
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ g? расчетные параметры следующим образом: X = (Х\) . . ., Хп) . Хорошие системы линз должны давать четкие неиска- неискаженные изображения. Это означает, что в идеале (uFi vF) не зависит от (а, р), т. е. все лучи, исходящие из какой- либо точки объекта, сходятся в общей точке плоскости изображения, и при этом соблюдено геометрическое подобие uF = МиОу vF = Mvq, где М — постоянная величина (не зависит от щ, Vo, a, (J). Практически эти требования удовлетворяются только при- приближенно. Следовательно, функция, определяющая абер- аберрацию, G(u0, vo, а, р, х) = uF — Ми0, . - H(uo, Vq, a, p, x) = vF — Л/170 будет обладать некоторыми значениями, не равными ну- нулю. Соответствующая математическая задача должна обес- обеспечить значения G и Я, близкие к нулю, при всех воз- возможных и физически существенных значениях (м0, Уо, а, Р). Один из возможных путей формулировки этого требования заключается в следующем определении целевой функции: / (х) = J ... J Ф (G,tf) du0 dv0 da dp, B.6) где ф(-, •) —некоторая функция двух переменных, на- например Ф(С, Я)=С2 + Я2. B.7) Практически функции G ж Н оказываются слишком сложными для аналитического определения значений ин- интегралов B.6). Поэтому выражение B.6) заменяют сум- суммированием по т лучам т /00= 51ф (<?,,#,), где G< и #f — значения функции, определяющей аберрацию, для г-го луча, определяемого величинами (wqi yo» a\ P )•
88 ГЛ. 1. ЦЕЛЕВАЯ ФУНКЦИЙ Если выбрать ф согласно уравнению B.7), то т Таким образом, задача оптимального расчета линзы за- заключается в минимизации сумм квадратов функций G и Я на множестве заданных т лучей относительно расчетного параметра х при условии выполнения различных физиче- физических и геометрических ограничений, наложенных на х. Например, коэффициенты рефракции должны быть таки- такими, которые можно получить в реальных стеклах, должна быть установлена некоторая минимально допустимая тол- толщина линзы и т. п. Эти ограничения могут быть выражены в виде *(х)^0, l^i^p. 2.2.6. Расчет транзисторного усилителя по постоянному току*). Рассмотрим расчет по постоянному току однокас- кадного усилителя с непосредственной связью. Это пример задач оптимизации, связанных с проектированием элект- электронных схем. Задача заключается в выборе величин раз- различных сопротивлений, обеспечивающих нормальный режим транзистора по постоянному току (например, па- падение напряжения между коллектором и эмиттером и коллекторный ток). Необходимость такого выбора может определяться тем, что параметры транзистора задаются лишь для определен- определенных режимов по постоянному току. Необходимость такого выбора отпала бы, если была бы возможна регулировка, обеспечивающая получение требуемых характеристик транзисторной схемы по переменному току. Но при инте- интегральных схемах это невозможно. Поэтому очень важно получить заданные значения уровней постоянных напря- напряжений и токов. На рис. 2.5, а изображена проектируемая схема. На рис. 2.5, б представлена ее эквивалентная схе- схема по постоянному току. Величины сопротивлений R\, R?, #з и i?4 определяются используемыми транзистором и ис-* точниками питания. Величины сопротивлений /?5, #6, #7, ^8 являются параметрами, подлежащими расчету. Они долж- должны лежать в пределах заданных областей, определяемых *) Основано на работе Муррэй Лассо и Бейкера A967).
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 89 физической осуществимостью (например, для тонкопле- тонкопленочных резисторов) и требуемыми режимами по перемен- переменному току (например, необходимым усилением). Выбираются допустимые значения сопротивлений ре- резисторов, а также рассчитываются токи и напряжения в различных ветвях схемы. Особый интерес представляет ток коллектора ic и напряжение между коллектором и Вход Рис. 2.5. а) Транзисторный усилитель с непосредственной связью; б) его эквивалентная схема по постоянному току. эмиттером vec. Рабочая точка транзистора (?с, vec) в общем случае не совпадает с требуемой (ic, vtc). Ошибки, равные 4 en = . — vpr =* входят в целевую функцию ф(^с, ev), которую необходимо минимизировать при условии ограничений на сопротивле- сопротивления. Целевая функция ср должна быть монотонно возрас- возрастающей функцией ес и ev. Так как ошибки являются функ- функциями сопротивлений /?5, Re, R7 и /?з, то минимизируемая функция ф(ес, ev) = /(Д5, Лб, Ri, /?e). Решение подобной задачи, если оно существует, в общем случае не является единственным. Чтобы преодолеть возникшее затруднение, можно использовать другую функцию, отражающую ка- какие-то другие требования, как, например, требование уменьшения чувствительности. 2.2.7. Синтез цепей. Обычно в задачах синтеза пассив- пассивных цепей величины отдельных параметров L, R и С в об- общем случае ограничены. Эти ограничения можно выразить
90 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ следующим образом: gi[R,L,C) ^0, " *= 1, 2, ."..'" Например, ограничение 1 ^ RC ^ 100 можно записать в виде A00 —ДС) A — ДС) ^0. Требуемая частотная характеристика Fd((o) также должна быть задана. Фактическая частотная характери- характеристика при значениях параметров L, R и С вычисляется как функция F((O] L, R, С) при избранных значениях со = со», 1 Si i gi т. Примем следующую целевую функ- функцию: /(L, Д, С) = J2 ф [/^(©0, F(©,; L, R,C)]. Она указывает, в какой степени расчетные величины обеспечивают получение требуемой частотной характе- характеристики. В случае необходимости можно задать также другие величины: потери мощности, величины постоянных на- напряжений (см., например, задачу 1 к главе 5). 2.2.8. Задачи поиска*). Допустим, что требуется осу- осуществить поиск объекта, находящегося в заданной обла- области. Таким объектом может быть самолет, звезда, ракета или корабль. Это может быть также (глобальный) мини- минимум некоторой функции п переменных /(х). Областью, в которой должен производиться поиск, могут являться определенные части неба, океана или — в случае функ- функции /(х) — подмножества пространства Лп. Предположим также, что область, в которой произво- производится поиск, разбита на п частей S\, S2, ..., Sn и что нам априори известна вероятность pt обнаружения объекта в Si, причем п i=i l ' г Это предположение, во всяком случае приближенно, удов- удовлетворяется во многих практических задачах. Например, *) Основано на конспекте лекции по динамическому програм- программированию: Т. К а в а д а, Задачи по программированию. Токио, Япония A9G1). (На японском языке.)
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 91 если речь идет о пропавшем самолоте, то область поиска определяется последними сообщениями о его местонахож- местонахождении, скорости и курсе, временем, прошедшем с момен- момента потери связи, погодными условиями и т. п. Обозначим через w\, . .., wn (нормализованные) поис- поисковые усилия, которые должны быть затрачены в частях области поиска S\, .. ., 5rt, удовлетворяющие условию При условии, что объект находится в 5,, предположим, что вероятность обнаружения можно выразить следующей- функцией усилия wt: 1 - а.е \ где г — постоянная величина.*). Тогда вероятность обна- обнаружения объекта равна Задача оптимизации сводится к отысканию максиму- максимума функции P(w\, . . ., wn) при условии, что (Известно последовательное решение этой задачи с по- помощью динамического программирования.) *) Если вероятность успешного исхода (т. е. обнаружения объекта) одной попытки есть р и если сделано п независимых по- попыток, то вероятность успешного исхода п попыток будет равна гдо Таким образом, есть некоторые основания принять эту функцию для определения вероятности зависимости успешного исхода от за- затраченных усилий.
92 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЙ 2.2.9. Распознавание образов. Многие технические за- задачи и задачи биокибернетики можно сформулировать в виде задач распознавания образов. К таковым относят- относятся, например, осуществление автоматического чтения пе- печатных или рукописных букв, распознавание речи (на- (например, речевой вызов по телефону), автоматический диагноз по известным признакам и т. п. Рассмотрим частный случай задачи распознавания об- образов, в котором имеется два множества выборок (^-мер- (^-мерных векторов), принадлежащих классу #о и классу Н\. (Например, при автоматической обработке большого чис- числа клинических данных Яо может быть классом пациен- пациентов с определенным заболеванием, а Я1 — классом здоро- здоровых людей.) Задача заключается в построении такой функции в Rn, которая бы четко разделяла точки из классов Но и #1,или в выборе такой меры расстояния в Rn, при которой рас- расстояние между точками, принадлежащими классу Но и классу #i, было бы максимальным, а расстояние между точками, принадлежащими одному классу, было бы ми- минимальным. Одна из таких мер, используемых в задачах распозна- распознавания образов, называется расстоянием Махалонобиса и для линейного случая определяется следующим образом: г где \х{ — так называемое выборочное среднее, а 2* — вы- выборочная ковариационная матрица точек, принадлежащих классу Н{1 i = 0, 1. (Более детальное описание задачи распознавания образов см. в параграфе 8.4.) 2.2.10. Обработка сейсмической информации*). Зада- Задачи такого рода, как обнаружение подземных ядерных взрывов или установление того, что причиной возникно- возникновения сейсмических волн является землетрясение, являют- являются примерами обнаружения и оценивания сейсмических явлений с помощью ряда сейсмометров. Мы применим модель, согласно которой сигнал, вызванный сейсми- сейсмическим явлением, поступает на все N сейсмометров, но с разной временной задержкой. Если все задержки ском- *) На основе статьи Кобаяши A969).
2.2. ПРИМЕРЬ! ЦЕЛЕВЫХ ФУНКЦИЙ 93 пенсированы так, что все составляющие сигнала посту- поступают одновременно для всех сейсмометров, то можно предположить, что сигнал на входе к-то сейсмометра =s(t) +nh(t), к = 1, 2, ..., N, где s(t) —неизвестный сейсмический (скалярный), сиг- сигнал, a nk(t) — шум в к-м канале. Для обработки входных сигналов с целью получения выходного сигнала y(t) при- применим TV-мерный линейный фильтр, который можно пред- представить следующим выражением: У @ = 2 wT(*)x (t-s), L где X(t) = a w(s) называется (векторной) импульсной реакцией фильтра. Предполагается, что реакция фильтра имеет ко- конечную длительность L, так что w(s) = О при s &L, где L — заданное конечное множество. Так как сигнал требуется воспроизвести без искаже- искажений, применим следующую целевую функцию: -S(/)]2 t при дополнительном условии где Т — число моментов времени, по которым производит- производится суммирование, а 1 = A, 1, ..., 1)т. При отсутствии шума y(t) в точности равно s(t). Таким образом, задача заключается в определении такого w, которое минимизи- минимизирует J при условии ограничения (С). Кобаяши рассмот- рассмотрел расчет такого оптимального фильтра с помощью гра- градиентного метода и метода сопряженных градиентов. Эти методы рассматриваются в главе 4. Ясно, что многие задачи, относящиеся к обработке сигналов в технике связи и управления, можно сформу- сформулировать как задачи оптимизации аналогично тому, как это было сделано выше для задачи обработки сейсмиче- сейсмического сигнала.
ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ 2.2.11. Минимизация межсимвольной интерференции: корректирующий трансверсальный фильтр*). При пере- передаче по телефонному каналу последовательности прямо- прямоугольных сигналов (например, сигналов «О» и «1» при передаче информации в двоичном коде) на приемный ко- конец сигнал приходит в виде затухающих колебаний. На- Наличие колебаний, идущих вслед за сигналом, является главным фактором, ограничивающим скорость передачи по телефонному каналу. Для подавления этих колебаний может быть исполь- использован траисверсалъиый фильтр. В основном он представ- представляет собой цепь задержки с отводами через равные интер- интервалы в Т секунд, которые являются интервалами между выборками принимаемого сигнала. В результате на ?-м отводе будет наблюдаться входной сигнал, задержанный на iT секунд. Сигнал с каждого отвода проходит по цепи с переменным коэффициентом передачи и поступает на суммирующее устройство. Таким образом, связь между выходным сигналом фильтра y{t) и входным сигналом я@ будет определяться следующим выражением: у(<)= 2 w.x(t-iT), i=—N где Wi — коэффициент передачи цепи i-то отвода (см. Цс.пь задержки с от 3одами \щЫТ) Рис. 2.6. Схема трансверсального фильтра. рпс. 2.6). В идеале ненулевой сигнал на выходе при на- наличии сигнала на входе должен был бы появляться толь- только при выборках, следующих через интервалы в Т секунд. ¦) Частично основано на работе Лаки и др. A968).
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 95 Используя нормализацию, будем считать, что z/@) = l соответствует главному пику сигнала. Тогда для i ф О |у(гТ)| представляет собой величину помехи на выходе. Теперь мы можем сформулировать задачу оптимиза- оптимизации как минимизацию целевой функции следующего вида: N. J(w__N, w__N+v ...,ш0, ...,ww) = ^\уAТ)\ • при условии выполнения ограничения у@) = 1 = х@). Здесь 2 обозначает суммирование, в котором исключен член, соответствующий г = 0. Величина / называется пиковым искажением. В результате этой минимизации получаем фильтр, минимизирующий межсимвольную ин- интерференцию на интервале [—NT, NT]. Эта задача является примером использования опреде- определения расстояния согласно B.2). 2.2.12. Задача оптимального распределения ресур- ресурсов*). Предположим, что некоторое лицо А вкладывает капитал х, в /-е предприятие. Другие лица также участ- участвуют в этом предприятии, причем лицу А известен общий объем Sj вложений, сделанных другими лицами. Это может быть туристическая фирма, которая пла- планирует организацию п маршрутов, или это может быть финансовая организация, которая финансирует п финан- финансовых проектов. Наконец, это могут быть ставки на /-ю лошадь на ипподроме. В любом случае предположим, что вероятность успешного исхода вложения капитала в /-й проект известна и равна pj. Предположим далее, что при подведении итогов общий объем капитала, подлежащего распределению среди участников, представляет собой не- некоторую известную функцию ф(-) от общего вложенного п капитала S(^j+^j)« Если успешным оказался /-и проект, то лицо А получает капитал, пропорциональный его доле вложенного в /-и проект капитала, т. е. xJ(Xj-\-s}). Таким образом, ожидаемая им прибыль равна ;=1 *) Основано на статье Айзекса A953).
96 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ причем ф(-)> Sj, рз, / = 1, ..., га, известны. Задача опти- оптимизации при этом сводится к максимизации f(x\, ..., хп) при условии Xj ^ 0, / = 1, .,., п. Айзеке исследовал частный случай, когда Ф [.2 (X} + *>)] = Q где Q — константа, лежащая между 0 и 1, и получил оп- оптимальное решение и достаточное условие существования максимума. 2.2.13. Оптимизация деталей конструкции: расчет трех- балочной фермы*). С расчетом конструкций связано не- несколько классов задач оптимизации, таких, например, как выбор материала и конфигурации, оптимизация деталей при заданной геометрической структуре и т. п. Настоящий пример представляет собой краткое рас- рассмотрение оптимизации деталей симметричной плоской трехбалочной фермы. Задача заключается в расчете трех- балочной фермы заданной геометрии с минимальным ве- весом при условии выполнения ограничений, обеспечиваю- обеспечивающих отсутствие повреждений структуры. Ограничения, накладываемые на составные части конструкции, могут сводиться к установлению допустимых напряжений в каждой из частей, допустимых смещений системы или ее элементов и т. п. (Ряд других аналогичных примеров можно найти у Шмидта и Кикера A962) и у Дорна и др. A964).) Рассматриваемая конструкция изображена на рис. 2.7. Длины балок предполагаются заданными и не подлежат изменению. Таким образом, расчетными пара- параметрами являются площади поперечных сечений трех ба- балок Аи Принята симметричная конструкция, так что А\ = А$. Поэтому остается только два расчетных пара- параметра: А\ И Л 2. Условия нагрузки таковы, что действуют, как показа- показано на рис. 2.7, либо /?i, либо р2, но не совместно р\ и /?2. Обе они имеют одну и ту же величину р и прикладыва- прикладываются симметрично. Минимизируется целевая функция з / = 2 pxLA{ = 2P]L]A] + p2L2A2i B.8) il *) Основано на работе Острёма A967).
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 97 где pi — удельный вес, a L{ — длина г-го элемента фермы. Составим теперь уравнения ограничений. Для простоты будем полагать, что напряжения малы, так что эйлеров Pz Pi Рнс. 2.7. Трехбалочная ферма. изгиб и локальный изгиб не возникают. Можно записать следующее уравнение: р = К8и, B.9) где р и и — векторы приложенных сил и смещений, выра- выраженные в координатах системы, а К8 — матрица жестко- жесткости системы. Аналогично можно записать = Щ B.10) где f и б — векторы сил, действующих на элемент, и сме- смещений элемента, а К — матрица жесткости элемента. Связь между смещениями элемента и системы можно выразить следующим образом: б = 5и, B.11) где В называется матрицей сопряжений. Из уравнений B.9) и B.11) видно, что f и р связаны следующим соот- соотношением: t = KB(BrKB)'^. B.12) Здесь учтено, что, приравняв энергию напряжений всей
98 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ конструкции энергии напряжений ее элементов, получим В случае трехбалочной фермы, изображенной на рис. 2.7, \ ^i Ь2 ' Lz J L \Т/2' 2' ~]/2] где т - L 1</<ч и E — модуль упругости. Из геометрии рисунка 2.7 имеем иУг —\i\/tl\ о -1 \ B.14) -1/|/2 — 1/J 2J — cos 9i —sin Bj И Г — cos02 — sin G2 \ — \ — cos 93 — sinO3J |_- 5J- B.15) Уравнение ограничений для напряжений можно запи- записать следующим образом: [A]o = t, B.16) где [А] = diag(i4i, A2, Аъ) и где а —вектор допустимых или расчетных напряжений (растяжения и сжатия) трех элементов фермы. Из уравнений B.11) — B.14) следует, что при нагрузке р\ "M,-hV2/«r fl = а при нагрузке — А{А2 Поэтому при заданных допустимых р и о с помощью урав- уравнения B.16) можно построить ограничивающие кривые для элементов фермы. Подобные типовые кривые пред- представлены на рис. 2.8. Кривые, изображающие ограниче- ограничения, накладываемые на напряжения, определяют условия
2.2. ПРИМЕРЫ ЦЕЛЕВЫХ ФУНКЦИЙ 99 отсутствия повреждений. В данном примере ограничива- ограничивающим является растяжение, а не сжатие. Заметим также, что точка Л* является оптимальной расчетной точкой. \; . \; \ \ \-* \ 7** / / у 1 & ч I I /\ / / / §алниМ{иМ9 8растяжении ДкшЯ/; z/^j J сжатий Лшу Л^ 6растяжений Ъ*г'~-ВолнаMgtсждтш • Рис. 2.8. Оптимальная расчетная точка трехбалочной фермы. Балка Мч фермы не полностью напряжена. Заштрихован- Заштрихованная область является допустимым множеством S. 2.2.14. Задачи оптимального управления: максималь- максимальное быстродействие. Рассмотрим задачу о теле, движу- движущемся с помощью двигателя в заданную точку. Допустим, что силы, действующие на тело,— чисто инерционные, что Регулятор Движущееся тело Рис. 2.9. Блок-схема системы управления. максимальный момент вращения равен М и что направ- направление движения может мгновенно изменяться на обрат- обратное. Эта система схематически изображена на рис. 2.9. Тогда в предположении отсутствия трения уравнение движения может быть записано в виде '5 = «(9. B.17)
100 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ где е = xd — х, а х* их представляет собой требуемое и фактическое положения тела не — ошибку положения. Необходимо привести систему, описываемую уравнением B.17), в конечное состояние е = е = 0 в кратчайшее время. Допустим для простоты, что желательно использова- использование постоянного момента вращения между моментами изменения направления движения u(t) = kiM1 U-x ^t^ tt, \k\ ^ 1, где ?<-i и U — моменты изменения направления движе- движения. Например, ясно, что если е@) > 0 и е@) > 0, то в начале к должно быть меньше нуля, чтобы уменьшить ошибку. Затем надо изменить направление движения, иначе ошибка станет отрицательной. Попробуем использовать к\ < 0 при 0 ^ t < t\ и к2 > 0 при t\ :? t :g t2 и предположим, что e(t2) — = e(t2) = 0. Задача заключается в минимизацпи Т± t\ + t2 при условии —1 fS к\ ^ 0 и 0 f§ k2 fg 1. Из уравнения B.17) e(t) = ё{0) e(t) =e@) +Ue@)t + kxcW, 0 ^ t ^ tu e(t) = e(U) +k{c(t-ti), e(t) = e(tx) + e(t{) (t - tx) + k2c(t - ^J/2, ti^t^ t2, где с = Ж"//. После небольших алгебраических преобразо- преобразований из равенства e(t2) = e(t2) = 0 следует, что общее время, требуемое для достижения конечного состояния е = е = 0, равно Т (zlf я2) = ахг +V(a2x1 + Ъ) {хх + х2), 1^х B.18) где а = е{0)/с, Ъ = 2е@)/с, хх = — Цки х2 = 1/к2. На- Например, если е@) '= 0, то уравнение B.18) приводится
ЗАДАЧИ . 101 к виду ' T(xvXi)=Vb(xx + x2). Из этого выражения ясно, что общее время Т достигает минимума при х\ = xl = 1 или /с* = — 1 и kl = 1. Это означает, что полные моменты вращения —№ и +Л/ должны действовать в течение интервалов времени соот- соответственно [О, УЬ/2] и [Vb/2, У2b]. В общем случае имеем Поэтому вновь х* = Х1 — 1 • В более общем случае, когда ошибка определяется дифференциальным уравнением тг-го порядка, можно это уравнение преобразовать в уравнение первого порядка для вектора ошибки е размерности п • е = Ае + Ви. Эта общая задача очень сложна. Характер ее решения зависит от того, все ли собственные значения матрицы А являются вещественными и удовлетворяется ли для си- системы условие, называемое управляемостью*). ЗАДАЧИ 1. Как можно свести решение системы совместных (в том чи- числе нелинейных) уравнений к решению задачи минимизации? 2. Для нормальной эксплуатации сложных современных тех- технических систем часто оказывается желательным и даже необхо- необходимым иметь возможность автоматически проверять исправность и работоспособность системы. Эти функции может выполнять ЦВМ, которая последовательно опрашивает все контрольные точки и про- производит сравнение снятых с этих точек сигналов с записанными в ее памяти эталонными. Различие сигналов, выраженное в форме, определяемой соответствующей целевой функцией, приводит к ав- автоматическому обнаруживанию отказавшего или ненормально функционирующего элемента. Какую целевую функцию можно предложить для этого случая? *) См., например, работы Бушоу в сборнике под ред. Лефшеца «Contributions to the Theory of Nonlinear Oscillations», v. 4, pp. 29—52, Princeton University Press, Princeton, N. J., 1958, а также Уинг и Дезоэр, The Multiple-Input Minimum Time Regulation Problem (General Theory). Trans IEEE on Automatic Control, v. 8 (April 1963), pp. 125—136.
102 ГЛ. 2. ЦЕЛЕВАЯ ФУНКЦИЯ 3. Сформулируйте какую-либо задачу оптимизации (желательно с какими-то дополнительными условиями или ограничениями). Предположите несколько целевых функций для этой задачи. 4. (Регрессионный анализ.) Существует много практически применяемых моделей, в которых связь между входом и выходом предполагается линейной. Например, рассмотрим агротехнический эксперимент, заключающийся в выращивании некоторой культуры в теплице. Задача экспериментатора заключается в изучении ряда переменных: урожая у, который является выходной переменной, и количества воды, количества различных химикалий в удобрени- удобрениях, часов освещенности, которые могут рассматриваться как вход- входные переменные. В линейной модели этого эксперимента выходная переменная v может быть выражена следующим образом: п У = 2 atxt + e, (А) i=l где хг — количество, определяемое i-й входной переменной. Дейст- Действие всех остальных возможных факторов, от которых зависит у, и не включенных в число входных переменных объединено в виде ошибки эксперимента е. Предположим, что такие эксперименты повторялись Лг раз, где N > и, и дали значения у\, ..., ух, равные i = \ где Xi(j) является значением i-й входной переменной в /-м экспе- эксперименте. Как можно задачу оценивания коэффициентов аь ..., ап сформулировать в виде задачи оптимизации? 5. Предположим, что в уравнении (А) коэффициенты заданы. Сформулируйте задачу получения максимального у в виде задачи оптимизации. Назовите какие-либо из ограничений, которые могут быть наложены на переменные хи ..., хп в агротехническом экс- эксперименте задачи 4. 6. Из листового металла заданной толщины и заданного удель- удельного веса изготовляется контейнер. Сформулируйте задачу расчета конструкции контейнера, обладающего минимальным весом, при условии, что его объем должен быть не меньше заданной величины. Каковы целевая функция и ограничивающая функция? Эта задача является частным примером одного из классов вадач оптимизации. Задачи этого класса, называемые геометрическим программиро- программированием, будут подробно рассмотрены в параграфе 6.4. 7. Чтобы управлять поведением динамической системы, обыч- обычно оказывается необходимым знать ее «состояние» так же, как и входные воздействия, подаваемые на систему. Например, при уп- управление скоростью объекта нам необходимо, кроме положения дросселя (который является входом, соответствующим управляемой переменной), знать еще ускорение объекта. Обозначим перемен- переменную состояния системы через х(*), входную переменную — через u(t) и выходную переменную — через у(?). Инвариантные относи- относительно времени линейные системы [т. е. динамические системы,
ЗАДАЧИ ЮЗ характеристики которых не меняются во времени) можно описать следующим образом: = Ах @ + #и (/), (А) (В) где уравнение (А) описывает динамику системы, а уравнение (В) определяет связь между входом и выходом. Отметим наличие пе- переменной состояния х(*), которая отсутствовала в модели стати- статистической системы (использованной, например, в задаче регрес- регрессии). Рассмотрите в качестве примера движение по прямой уп- управляемого объекта (точечной массы): ^ . тх = и, х@) = 0, z@) = и, где т — масса объекта, х — положение, и — начальная скорость и и — приложенная сила. Предположим, что объект снабжен конеч- конечным количеством топлива (или энергии). Известно, что его расход пропорционален ср(и), где, например, ср(и) = и2. Предположим, что простой телеизмерительный прибор, находя- находящийся в объекте, устроен так, что и можно изменять только в мо- моменты t\ и t2. Таким образом, в течение интервала времени от ну- нуля до t\ приложенная сила равна ии в течение интервала времени от t\ до t2 приложенная сила равна и2, наконец, в течение оставше- оставшегося интервала времени от t2 до Т приложенная сила равна и3. Сформулируйте требования минимизации общего расхода топ- топлива (энергии) при условии, что к моменту Т будет достигнута за- заданная минимальная скорость. Если ф(и) пропорционально и2, то эта задача является задачей квадратичного программирования; эти задачи рассматриваются в главе 6. 8. Обозначим расстояния, определяемые уравнениями B.1), B.2) и B.3) соответственно через dE(x, у), dA (x, у) и dM (x, у). Покажите, что =¦ clA (X, у) ^ dE (x. у) < dA (х, у) п что _ dM (х, у) < dE(x, у) < ~]/п dM (х, у).
Г Л А В А 3 ЗАДАЧИ РАЗМЕЩЕНИЯ В данной главе мы введем важное понятие двойствен- двойственности и на примере задачи отыскания точки, находящейся на кратчайшем расстоянии от заданных трех точек, рас- рассмотрим пару задач оптимизации — прямую и двойствен- двойственную. Далее, обобщая эту задачу, мы рассмотрим отыска- отыскание точки Р в пространстве Rn, находящейся на кратчай- кратчайшем общем «расстоянии» от заданного множества N точек Р\, Pi, . •., Pn пространства R\ Обобщая соответствующим образом понятие расстояния, можно аналогичным образом сформулировать многие задачи размещения. 3.1. Двумерный случай Вначале рассмотрим задачу сга = 2и./У = 3. Расстоя- Расстояние будем определять обычной евклидовой длиной. Эта задача отыскания такой точки в плоскости, общее рас- расстояние которой от трех точек в той же плоскости являет- является минимальным, была в 17 ве- веке предложена французским ма- математиком Ферма итальянскому физику Торичелли и была реше- решена Торичелли с помощью гео- геометрических соображений *). Эта простая задача иллюстри- иллюстрирует понятие двойственной за- Рис. 3.1. Задача Ферма. Дачи, связанной с прямой (т. е. % исходной) задачей. Связь меж- между прямой и двойственной задачами представляет боль- большой интерес вообще в задачах программирования, как линейного, так и нелинейного. Поэтому этот ча5тный слу- случай прежде всего мы и рассмотрим (см. рис. 3.1). *) X. Дорие (H.-Dorrie), 100 Great Problems of Elementary Mathematics. New York, Doyer? 19G5, pp. 361—363,
6.1. ДВУМЕРНЫЙ СЛУЧАЙ 165 3.1.1. Прямая задача. Обозначим координаты заданных точек через (хи г/»), i = 1, 2, 3. Координаты искомой точ- точки Р обозначим через (х, у). Целевая функция, подлежа- подлежащая минимизации, представляет собой сумму расстояний от Р до Pif i = 1, 2, 3, J{x,y) = 2 где , У) =V {* — Zi)'1 + (У C.1) Если предположить, что точка Р не совпадает ни с од- одной из заданных точек (в противном случае одно из рас- расстояний d( в уравнении C.2) обратилось бы в нуль)*), то коэффициенты искомой точки должны удовлетворять уравнениям 0 = ^ = 24^ ! C.2) Уравнения C.2) можно переписать в виде 2 d.A —Уз C.3) Так как (x-xi)9- + (y-yi)* = dl i = 1,2,3, то уравнение C.3) можно привести к следующему виду: (г — х{) (х — ,г2) + (У — Уг) (У — У2) _ * /о /ч Так как числитель левой части уравнения C.4) является *) По доводу этого случая см. параграф 3.3.
106 ГЛ. 3. ЗАДАЧИ РАЗМЕЩЕНИЙ скалярным произведением векторов РР\ и РР2, то cos z РгРРг = - 4"' где ?-Р\РРъ есть угол в точке Р, образованный треуголь- треугольником Р\РРч и равный 120°. Из соображений симметрии получаем /_РХРРЪ = АР2РРз = 120°. На первый взгляд кажется, что приведенное сообра- соображение требует, чтобы прямые, соединяющие искомую точ- точку с заданными, образовывали углы в 120°. Однако такую точку найти не всегда возможно. Так обстоит дело, когда один из углов треугольника, образованного заданными точками, больше 120° (в этом случае точка Р совпадает с одной из ваданных точек)*). Предположим на мгнове- мгновение, что заданные три точки расположены так, что суще- существует точка Р такая, что прямые, соединяющие ее с за- заданными, образуют углы в 120°. Найденная при этом точ- точка является не только вообще стационарной точкой; это действительно оптимальная точка. Чтобы убедиться в этом, мы приведем геометри- геометрические соображения. 3.1.2. Двойственная задача. Рассмотрим любой равносто- равносторонний треугольник Q1Q2Q3, описывающий треугольник Р1Р2Р3, как показано на рис. 3.2. Возьмем точку Р внутри треугольника P\P<Jy>>. Опустим из нее три перпен- дикуляра на три стороны рав- постороннего треугольника. Обозначим через h сумму длин этих трех перпендикуляров. Тогда согласно неравен- неравенству треугольника Рис. S.2. Треугольник <?i(?2<?3 описывает треуголь- ник P\P2Pi. Равенство имеет место тогда и только тогда, когда РРи i — 1, 2, 3, являются перпендикулярами. Величина h рав- *) По доводу этого случая см. параграф 3.3.
3.2. n-МЕРНЫЙ СЛУЧАЙ ' Ю7 на высоте равностороннего треугольника и не зависит от положения точки Р. Рассматривая все равносторонние треугольники, опи- описывающие треугольник Р1Р2Р3, и все положения точки Р внутри треугольника Р1Р2Р3, мы видим, что max h = min {W1 + Pi7, + где максимизация осуществляется по всем равносторон- равносторонним треугольникам, описывающим заданный треугольник Р1Р2Р3. Таким образом, точка Р, лежащая в вершине углов в 120°, образованных прямыми, соединяющими точ- точку Р с заданными тремя точками, имеет наименьшее общее расстояние до заданных точек, а равносторонний треугольник, для которого перпендикулярами являются прямые PPi, /=1, 2, 2, имеет наибольшую высоту. То, что такая точка является оптимальной, явствует из того, что для любой другой точки сумма 2 РР\ возрастает. Тем самым мы можем связать задачу максимизации с исход- исходной задачей минимизации. Экстремальные значения целе- целевой функции в этих двух задачах равны между собой. Исходная задача называется прямой, а вторая, связанная с ней задача — двойственной к ней. Эта задача Ферма не является единственным примером таких двойственных по отношению друг к другу задач. В главе 6 мы более подробно рассмотрим связь между прямой и двойственной задачами. 3.2. и-мерный случай Рассмотрев двумерный случай, перейдем теперь к об- общей гс-мерной задаче. В качестве целевой функции при- примем следующую: /(х)= 2«yZ.(x), ш.>0, C.5) i = [ где Wi есть вес, приписанный расстоянию между Р и Р<, a ch(x) — евклидово расстояние от Р до Рг, 4(Х) = <х, —х, Xi-x>l/2. Как мы увидим в параграфе 3.2.2, эта задача сталовится удивительно сложной.
108 ГЛ. 3. ЗАДАЧИ РАЗМЕЩЕНИЯ 3.2.1. Квадрат евклидова расстояиня. Если целевую функцию взять в виде N / (х) = 2 м? (*). (з.б) то непосредственно из условия V/ = 0 получим для ми- минимальной точки x*=-V—< C.7) В разделе 3.2.3 мы рассмотрим ту же задачу при не- неевклидовой мере расстояния. Естественно, что.это измене- изменение целевой функции приводит к другим оптимальным точкам. Однако значения целевой функции не сильно раз- различаются, другими словами, они мало чувствительны к положению точки Р. (Для случая тг == 2, N = 3 см. рис. 3.3.) 3.2.2. Евклидово расстояние. Вернемся к целевой функ- функции, определяемой уравнением C.5). Прежде всего по- покажем, что /(х) есть выпуклая функция. Учитывая, что и используя неравенство Коши — Шварца <Х| — X, X, — У>2 ^ <Х< — X, X, — X><Xt — у, Xl — У>, мы видим, что ) @ г = U (х) + A - Л) / (у), 0 ^ X ^ 1. C.8) Другими словами, /(х) действительно выпуклая, /(х) — строго выпуклая, а C.8) представляет собой стро- строгое неравенство, если только N точек не расположены на одной прямой. Известно, что согласно общему свойству выпуклых функций /(х) имеет единственный минимум, сс.:и Лг точек не лежат па одной прямой. Так как J(x) — выпуктая
3.2. n-МЕРНЫЙ СЛУЧАЙ 109 функция, обладающая производной, то необходимым идо- статочным условием того, чтобы точка, не совпадающая ни с одной из TV точек, была бы минимальной точкой, яв- является равенство V/(x) =0, 1 ^ i^n. Если dt ф 0, 1 fS i fg /г, то это условие можнр запи- записать в виде N Уравнение C.9), однако, прсдстг.вляет собой неявную функцию, так как d{ зависит от х. Чтобы найти х, удов- удовлетворяющую C.9), необходимо применить какую-либо итеративную процедуру. Подробно этот вопрос будет рас- рассмотрен далее. 3.2.3. Перемещение по прямоугольной сетке. Перейдем к краткому рассмотрению задачи, относящейся к переме- перемещению по прямоугольной сетке. Эту задачу рассмотрел Нобль A967). Расстояние теперь измеряется следующим образом: <*W = 2 l*tl. где х = (#i, X2, ..., хп). Ранее мы уже рассматривали эту меру расстояния, когда нужно было оценивать перемеще- перемещения вдоль путей, образующих прямоугольную сетку. Обо- Обозначим координаты TV заданных точек через а координаты точки Р — через (х\, ..., хп). При этом це- целевую функцию можно записать в следующем виде: /to,..., хп) = Jj .2 щ | *» - *У | • (з.Ю) Непосредственно ясно, что функцию / можно записать в виде п J(xv •¦ •.. хп) = 2 h (*j)t
НО ГЛ. 3. ЗАДАЧИ РАЗМЕЩЕНИЯ где -M*i)- 2>j|*«-*ij)|t и что i-я координата точки Р влияет только на значение Л. Соответственно этому минимизация функции / относи- относительно п переменных х\, ..., хп распадается на п одно- одномерных задач минимизации. Таким образом, нам доста- достаточно исследовать лишь одномерный вариант этой задачи. В качестве общего обозначения переменной примем s. Целевая функция запишется теперь в виде N J (S) = 2 Щ | 8 — Stl Wt> О, г=1 где Si — координата точки Рг, i = 1, 2, ..., N. (Эти точки теперь принадлежат одномерному пространству, т. е. пря- прямой линии.) Если необходимо, переобозначим эти точки так, чтобы s\ fg 52 :g ... :§ sN. Мы можем предположить, что все веса положительны, так как точка с нулевым ве- весом не влияет на /. Теперь мы видим, что J(s) представ- представляет собой непрерывную ломаную функцию координаты s и может быть представлена следующим образом: J(s) ^Ajs + B, C.11) для любого интервала Ih где /о = (-—«>, $i], Ij=(shsj+\], / = 1, ..., iV — 1, IN = (sN, oo), а коэффициенты Aj и Bj можно легко вычислить. Например, N Л = — 2 Щ < 0. -4j+i — ^i = 2^j-fi > 0, ^4iv = 2 ^i > 0. Коэффициенты 4j при малых значениях / представля- представляют собой отрицательные числа, монотонно возрастают с возрастанием /ив конце становятся положительными. Следовательно, существует такое целое число к, lfg&fgTV, для которого либо (I) 4fc., <0, Л*>0, либо (II) Ак-{<0,..4к = 0, "ЛА+1>0. C.12)
а 2. тг-МЕРНЫЙ СЛУЧАЙ Ш В случае (I) /(**) - J(sh-i) = Ak-x(sh - sk-x) ^ 0, J(sh+i) — J(sh) = Ak(sk+{ — sk) ^ 0. Следовательно, Из условия C.12) следует, что k—i N г = 1 ' 2 г = 1 Таким образом, оптимальная точка Р совпадает с точ- точкой Ph. ¦ Оптимальная точна при квадратичной целевой пункции, расстояние равно 8,5 единиц и дптимальная точка при движении по прямо- прямоугольной сетке, 9 единиц о Оптимальная точка при евклидсёей метрике, 8,375 единиц Рис. 3.3. Геометрическое построение точки Р, минп.\шзирующей расстояние. В случае (II) имеем
112 ГЛ. 3. ЗАДАЧИ РАЗМЕЩЕНИЯ Следовательно, любое s в интервале [sk, sk+\] является координатой оптимальной точки. Из изложенного видно то, на первый взгляд удиви- удивительное, обстоятельство, что задача размещения оказыва- оказывается более трудной, когда в качестве меры расстояния ис- используется евклидово расстояние. Рис. 3.3 иллюстрирует оптимальное размещение для трех различных определе- определений расстояния. 3.3. Задача размещения: частный случай *) В 3.1.1 и 3.2.2 указывалось на трудность, возникаю- возникающую, когда одна из N заданных точек является оптималь- оптимальной точкой. При этом частные производные функции 7(х) в этой точке не существуют. В настоящем разделе мы рас- рассмотрим этот случай. Предположим, что одна из заданных точек, например X;, является точкой, где достигается минимум. Как указы- указывалось в параграфе 3.2, V/(x) в точке Xj не определена. Поэтому нам необходимо заменить градиенты (т. е. част- частные производные) на производные по направлению. По- Поступим следующим образом. Представим себе луч, исхо- исходящий из точки х^ в направлении нормализованного век- вектора z, (z, z) = 1. Будем рассматривать /(х, + Щ как функцию от t ^ 0. Тогда — {xj + tz) =w}~ <7lj,z\ C.13) 01 I-.-0 где •р < >^ ? \ / / / в Мы получили производную функции J по направлению z. Следовательно, х,- является локальным минимумом, если п только еслп **) *) Этот параграф частично основывается на статье Куна (А б а- ди, гл. 3, 1967). Содержание параграфа не является необходимым для понимания дальнейшего. **) Если Xj является локальным минимумом, то для всех направлений г производная dJ/dt\t=o > 0. Пояснение этого утвер- утверждения для части, определяемой словами «только если», получим, поменяв местами посылку и следствие.
ЗАДАЧИ 113 Таким образом, х} является локальным минимумом, если и только если производная dJ/dt\t=Q ^ 0 по направлению z = jyiliy. Из этого утверждения с учетом выпуклости функции /(х) следует, что х, является глобальным ми- минимумом. Следует отметить, что минимизирующая точка х при- принадлежит выпуклой оболочке векторов xi, ..., xN, так как х является либо одной из вершин (что обычно для выпук- выпуклой оболочки), либо точкой, определяемой формулой C.9), которая принадлежит выпуклой оболочке, поскольку ЗАДАЧИ 1. Найти оптимальную точку Р при трех различных целевых функциях C.5), C.6) и C.10), положив все веса w равными 1, а Л = D,3), Р2 = @,0) и Р3 = F,0). Найти также оптимальные значения функций /. 2. Используя обозначения раздела 3.1.1, найти оптимальную точку Р при целевой функции, равной * з J (*. У) = 2 h (*. У)> г-=1 где 1г(т, у) = тсх(\т. — х\, \У1 — у\). 3. Имеется N точек (стоков) и две дополнительные точки Si и ?2 (истоки). Распределите N точек (стоков) по дополнительным точкам (ис- (источникам) jSj и Бъ так, чтобы общее расстояние от каждого ис- источника до TV стоков было минимальным. Эта вадача может трак- трактоваться как модель снабжения N различных магазинов (или ма- машин) из двух складов (инструментальных кладовых). 4. Какой алгоритм применить для решения вадачи 3, если по- положения точек iSi и 5г также подлежат определению. 5. (Задача о минимальной норме.) В главе 3 рассматривалась задача определения точки Р с кратчайшим общим расстоянием от заданных ZV точек Рь ..., PN. Если рассматривать пространство то- точек как векторное пространство, то можно сформулировать ана- аналогичную задачу определения такой точки с кратчайшим рассто- расстоянием от Р, которая выражается как линейная комбинация Р\, ... ..., PN. К этому типу задач приводятся многие различные задачи. До сих пор мы рассматривали только задачи, которые можно сформулировать с помощью конечномерного евклидова простран-
Ц4 ГЛ. з. задачи размещения ства и не обращались к бесконечномерному векторному простран- пространству (функциональному пространству). Однако ту же идею можно обобщить для формулировки задачи аппроксимации заданной непре- непрерывной функции множеством данных функций, например, полино- полиномами или тригонометрическими функциями. Рассмотрим сейчас за- задачу аппроксимации в пространстве Rn. При заданных х и у1, ... ..., yw в пространстве Rn найти вектор х, минимизирующий |jx — х|| = <х — х, х —¦ х>'/2 при условии г=1 Таким образом, вектор х должен минимизировать норму «ошибки») аппроксимации. Поэтому задача и называется задачей о минималь- минимальной норме. Эта задача заключается в определении вектора а = = (а\, ..., flm)T, который минимизирует ||х— Уа||, где У = [у1, ... • • м Ут] есть (п X и*)-матрица. Предполагая независимость, имеем, что ранг матрицы У равен т. (В соответствии с подпараграфом 1.1.7 вектор х является проекцией вектора х на подпространство, натянутое на векторы у1, ..., yw, являющиеся вектор-столбцами матрицы У.) Таким образом, имеем I - У (V'rj-Vx, a = (VY)-lYrx
ГЛАВА 4 МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Мы будем изучать методы отыскания экстремума функции /(х) по всему пространству Rn, т. е. при усло- условии, что при поиске экстремальных точек каждая из пе- переменных #i, #2, ..., #п данной функции может принимать любое значение между — оо и оо. Для определенности предположим, что требуется найти минимум функции /(х) в пространстве Rn. Допустим также, что /(х) обладает единственным минимумом и что все частные производные, по крайней мере первого порядка, существуют при любом значении х в Rn. Важно, чтобы читатель обладал метода- методами отыскания экстремума функций без ограничений, пре- прежде чем перейти к более трудной задаче отыскания экс- экстремума с ограничениями, т. е. экстремума функции на подмножестве пространства Rn. Это необходимо уже по- потому, что алгоритмы минимизации с ограничениями часто строятся на основе алгоритмов минимизации без ограни- ограничений. Другая причина, требующая изучения в первую очередь методов оптимизации без ограничений, заключа- заключается в том, что задача оптимизации с ограничениями ча- часто решается путем преобразования ее в задачу оптими- оптимизации без ограничений. Методы отыскания экстремумов с ограничениями рассматриваются в главе 5. Таким образом, цель настоящей главы заключается в изучении процедур систематического получения после- последовательности векторов, т. е. точек х°, х1, ..., х* в Rn та- таких, что /(х°) >/(х') >...>/(**) >..., D.1) и оценке их эффективности при локализации точек мини- минимума. Любой метод получения точек, соответствующих
116 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ условию D.1), называется методом спуска *). Естественно, что нас интересуют методы, обладающие сходимостью, дру- другими словами, методы, позволяющие получать точки ми- минимума за конечное число шагов, или методы, которые позволяют, выполнив конечное число шагов, постепенно приближаясь, подойти к точке, достаточно близкой к точ- точке минимума. То, что подразумевается под этим, мы сфор- сформулируем, когда позднее в этой главе будем изучать во- вопросы сходимости методов спуска. При получении таких последовательностей точек в за- задачах с ограничениями прежде всего необходимо выбрать начальную точку х°, удовлетворяющую всем ограничени- ограничениям. В задачах без ограничений в качестве х° может быть взята любая точка в Rn. При этом, конечно, нужно исполь- использовать любую имеющуюся информацию о поведении функ- функции /(•)> с тем чтобы выбрать х° не слишком далеко от точки минимума. После того как какая-то точка выбрана, прежде чем получать следующую точку, нужно принять два решения: A) прежде всего необходимо выбрать направление, вдоль которого предполагается расположить следующую точку, и B) необходимо решить, какой величины шаг должен быть сделан в выбранном направлении. При любом методе спуска последовательность {хЛ} под- подчиняется условию х*-и = xk + ^ & = 0, 1. • - •• где dh есть направление, a \\thdk\\ — величина шага. Если dk нормализовано, ||dA|| = 1, то величина шага будет рав- равна \tk\. Изменяя процедуру выбора dh и tk (например, опреде- определяя эти величины в зависимости от ранее полученных то- точек), можно варьировать методы спуска. Для задач без ограничений любое направление являет- является возможным, поскольку здесь нет ограничений, которые бы препятствовали этому. Однако не все направления приемлемы. Например, явно неразумно использовать *) Если ищется максимум функции /(х), то речь будет пдти о методах подъема. [Такие методы чаще называют релаксационны- релаксационными, однако автор использует этот термин в другом смысле; см. 4.7.2. (Прим. ред.).]
ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Ц7 направление d, для которого не выполняется условие при достаточно малом t, т. е. если значение функции не уменьшается в направлении d хотя бы вблизи точки х. Для достаточно малых t запишем разложение в ряд Тей- Тейлора Используя эту формулу, дадим следующее Определение. Будем называть направление d в точке х приемлемым, если <V/(x),d><0. D.2) Для задач с ограничениями приемлемые направления должны удовлетворять условию D.2) и, кроме того, при достаточно малых t точка х + ^ не должна нарушать ни одного из ограничений. Зойтендейк A960) назвал методы спуска, позволяю- позволяющие систематически получать возможные направления, методами возможных направлений. К этой категории ме- методов можно отнести широкий класс методов, включаю- включающий в себя, в частности, те, которые имеют собственные названия. Эти методы изучаются в данной и следующей главах. Механизм образования последовательности точек и его эффективность в локализации точки минимума в сильной мере зависят от минимизируемой функции, а также от на- наших знаний или информации, которая может быть исполь- использована для определения следующей точки, т. е. следую- следующего прогноза точки минимума. Эти методы можно разбить на три группы*): (I) методы, использующие только значения функций, называемые прямыми методами (или методами поиска); (II) методы, использующие, кроме того, первые произ- производные; (III) методы, которые дополнительно к этому требуют знания вторых производных. ¦) Часто этп группы методов называют методами нулевого, первого и второго порядка соответственно. (Прим. ред.)
118 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Производные могут вычисляться аналитически или численно. Вообще говоря, методы группы (III) при наи- наименьшем числе шагов приводят к точкам, достаточно близ- близким в определенном смысле к точкам минимума. Это, однако, не означает, что они являются наиболее эффектив- эффективными методами в отношении расхода машинного времени, необходимого для решения задачи. Иногда /(х) представ- представляет собой настолько сложную функцию, что ее первая или вторая производные не могут быть получены анали- аналитически, а их численные приближения оказываются очень грубыми. Кроме того, вычисление этих производных мо- может потребовать больше машинного времени, чем вычис- вычисление значений функции в необходимом для отыскания минимума числе точек. Таким образом, невозможно выделить какой-либо ме- метод, . пригодный в любом случае. Для отыскания метода, наиболее пригодного для оптимизации заданной функции, могут оказаться необходимыми разумный подход, опыт, а может быть, и предварительные исследования. Мы еще вернемся к этим вопросам в главе 7. В главе 1 уже указывалось, что необходимым услови- условием достижения минимума функции /(х) в точке х* явля- является равенство V/(x*) = О, если вектор-градиент существует. Методы групп (II) и (III) вырабатывают следующую точку согласно условию: x*+i = xk _ ^a*V/(x*) . D.3) Матрица Ak может являться постоянной матрицей или зависеть от ранее полученных точек и вектор-градиента. В настоящей главе мы вначале изучим методы груп- группы (II), а затем — группы (III). Методы группы (I) будут изучаться последними в параграфе 4.7. Где это воз- возможно, будут указываться условия, при которых рассмат- рассматриваемые методы могут дать удовлетворительные резуль- результаты. Методы оптимизации без ограничений в основном будут рассматриваться на примере квадратичных функ- функций. Читатель может быть удивлен тем, зачем понадоби- понадобилось тратить усилия па рассмотрение минимизации квад- квадратичной функции, если эта функция /(х) = а + 2Ьтх +
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ + xTQx без труда минимизируется, давая в результате qx + b = 0 или х = — Q~lb. Читатель, очевидно, пони- понимает, что для отыскания такого х нет необходимости в по- поиске какого-то усовершенствованного метода*). Интерес, разумеется, представляет минимизация функ- функций более сложных, чем квадратичная. Квадратичные функции рассматриваются по двум причинам. Первая за- заключается в том, что если метод не пригоден для квадра- квадратичных функций, то очень мало шансов, что он пригоден для функций с более сложной структурой. Поэтому испы- испытание этого метода, во всяком случае — вначале, на квад- квадратичной функции является вполне разумным. Другая причина заключается в том, что неквадратичную функ- функцию можно аппроксимировать квадратичной функцией, если ограничиться в разложении в ряд Тейлора членами не выше второго порядка. При этом минимум функции может быть получен посредством минимизации последо- последовательности квадратичных функций, аппроксимирующих исходную функцию относительно точек, последовательно приближающихся к точке истинного минимума. 4.1. Градиентные методы 4.1.1. Алгоритм. Обозначим вектор-градиент в точке х* через гА, r*= V/(xA). Из разложения функции /(х) в ряд Тейлора видно, что —г* является приемлемым направлением. Однако, кроме того, это же разложение показывает, что если выбрать х — xk имеющим то же направление, что и —г*, то /(х) в окрестности xk будет иметь наибыстрейшее убывание (см. приложение 4). Предположим, что, начиная из точки х°, мы получили векторы х1, ..., х\ Градиентным методом называется ме- метод, согласно которому точка xh+l выбирается по отношению *) Итерационные методы представляют интерес и при миними- минимизации квадратичных функций. Во-первых, в ряде задач матрица Q не задана, а доступны лишь векторы Qx + Ъ для любого х. Во-вто- Во-вторых, итерационные методы бывают в некоторых случаях более эф- эффективными, чем конечные (например, для задач большой размер- размерности). (Прим. ред.)
120 гл. 4. минимизация Функций без ограничений к xft в направлении — г\ т. е. где t — некоторая положительная скалярная величина. Другими словами, в уравнении D.3) матрица Ак является единичной матрицей, и в направлении —тк производится поиск лучшего приближения к точке минимума. Отметим, что мы пришли к одномерной задаче поиска. Таким обра- образом, градиентный метод содержит в себе задачу одномер- одномерного или линейного поиска как подзадачу. В парагра- параграфе 4.6 рассматриваются некоторые методы одномерной ми- минимизации. В различных вариантах градиентного метода применяют различные способы выбора скаляра t. Этот вы- выбор может также зависеть от того, насколько близко точ- точка xft подошла к точке минимума. В том случае, когда t определяется путем решения одномерной задачи минимизации min/(xft — trh)t соответствующий вариант градиентного метода называет- называется оптимальным градиентным методом*). Согласно этому методу в качестве xft+1 выбирается такая точка, располо- расположенная в направлении —г\ в которой функция /(х) при- принимает минимальное значение. Далее определяется зна- значение вектор-градиента в точке xft+1 и процедура повто- повторяется. Варианты градиентного метода, в которых для t берутся относительно малые значения и несколько шагов делается в одном направлении, иногда называют градиент- градиентным методом с малым шагом. В градиентных методах с большим шагом в данном направлении делается един- единственный, сравнительно большой шаг. Оптимальный гра- градиентный метод является примером градиентного метода с большим шагом. Важно отметить, что эпитет оптимальный указывает просто па тот факт, что согласно методу в качестве сле- следующей точки выбирается точка, лежащая на прямой Xй — trh и являющаяся на этой прямой точкой минимума функции /(х). Это не означает, что этот метод обладает *) Чаще употребляют термин «метод наискорейшего спуска». (Прим. ред.)
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ 121 какими-либо иными оптимальными свойствами: например, способностью осуществлять отыскание минимальной точки за минимальное число шагов или при минимальном объ- объеме вычислений. Это можно иллюстрировать рассмотрени- рассмотрением следующей задачи минимизации: минимизировать . ±x*Qx, D.4) где Матрица Q — положительно определенная, и, следователь- следовательно, функция положительна при всех х и /@) = 0. Ясно при этом, что она обладает минимумом при х* = 0. Так как г = V/(x) = <?х, то в соответствии с оптимальным градиентным методом нужно найти min / (х — /г) = min xT (Q — 2tQ2 + t2Q3) x/2. Так как при х, не равном нулю, xTQ3x > 0, то минимум будет достигнут при ** = хт?2х/хт<?3х = rTr/rTQr. Используя неравенство Канторовича (доказательство не- неравенства см. в приложении 5), можно показать, что зна- значение функции при х' = х — ?*г определяется следую- следующим уравнением: . , 2/(х') = хт<?х - (хт(?2хJ/хт<23х = = гт^-!г - (гтгJ/гт0г ^ 0. D.5) Таким образом, поскольку f(x') > 0, точка х' будет яв- являться точкой минимума только в том случае, если (rQ-lr)(FQr) = (rTrJ. Если обратиться к геометрической интерпретации, то ста- станет ясно, что луч (х — ?r), t ^ 0, исходящий из точки х в направлении —г, не проходит через точку минимума х* = 0. Следовательно, за один шаг точки х* нельзя до- достичь, если только х* не оказывается собственным векто- вектором матрицы Q, так, что х лежит на одной из полуосей
122 ГЛ. 4. МИНШГНЗАЩТЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ эллипса, заданного функцией хт(?х/2 = const, или, если не оказывается, что Q является единичной матрицей так, что функция теперь определяет окружность. Направление, вдоль которого должен производиться поиск точки мини- минимума — это направление пря- прямой, соединяющей точку х с на- началом, а не направление, проти- противоположное направлению век- вектор-градиента в точке х (рис. 4.1 иллюстрирует двумерный слу- случай). Таким образом, если мы ведем поиск по направлению — Q~lr, то начало может быть до- Рис. 4.1. Направление, про- противоположное направле- направлению вектор-градиента, в общем случае не приводит к минимальной точке. стигнуто за один шаг при?*=1, так как ./(X-<?->! = /(х - Q~lQx) =/@) =0. Следовательно, в данном случае оптимальный гради- градиентный метод оказывается хуже чем метод, согласно кото- которому поиск* производится в направлении —Q~lr. В рассмотренной задаче t* вычислялось аналитически, в предположении, что Q известно. Поэтому можно была бы предположить, что этот метод не относится к методам второй группы. Шаг t* в этом примере вычисляется в яв- явной форме только для того, чтобы получить аналитиче- аналитическим способом выражение для /(х — t*r) и показать, что оно в общем случае не является оптимальным. На прак- практике значение шага ?* обычно находят линейным поиском с помощью цифровой вычислительной машины. Для этого нам не надо знания Q, а потому оптимальный градиент- градиентный метод является методом второй группы. При оптимальном градиентном методе приближение к точке минимума происходит зигзагообразно. Введем вектор * »+1 k Тогда вектор-градиент xft+1 ортогонален к вектору р*, поскольку xft+1 была выбрана путем минимизации функции /(хй —?гА). Таким образом,
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ 123 действительно, последовательность точек х1, х2, выра- вырабатываемых оптимальным градиентным методом, зигзаго- зигзагообразно приближается к точке х*. Рис. 4.2 иллюстрирует это для двумерного случая квадратичной функции. Заме- Заметим, что на рис. 4.2 р° параллелен вектору р2, а р1 па- параллелен вектору р3, и т. д. Это обстоятельство является Рис. 4.2. а) Оптимальный градиентный метод. Зигзагообразная тра- траектория приближения к точке минимума, б) Вычисление х1 и р1 при оптимальном градиентном методе. основой метода параллельных касательных, применение которого позволяет «ускорить» оптимальный градиентный метод (см. подпараграф 4.1.2). Пример. Рассмотрим задачу минимизации функции оптимальным градиентным методом при начальной точке х°= @, 0). Эту функцию использовали Витте и Холст A964) для испытания нескольких методов оптимизации. Она облада- обладает минимумом в точке A, 1). На рис. 4.3 показаны не- несколько линий постоянных значений функции, а также точки х°, х1, х2, х3, х4. Значения функции убывают следу- следующим образом: /(х°) = 1, /(х1) =0,289, /(х2) =0,174 /(х3) = 0,112, /(х4) = 0,087. А
124 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Ранее мы уже заметили, что при квадратичной целе- целевой функции D.4) к точке х° ведет не направление —г, а направление —Q~lr. Это же обстоятельство можно сфор- сформулировать иначе. Если в качестве определения метрики вместо ||х||2 = хтх использовать то в этой новой метрике поверхности постоянного значе- значения функции */(х) будут представлять собой (/г-мерные) сферы. Соответственно это- этому градиент (везде нор- нормальный к сфере) будет направлен к центру сферы. Таким образом, при по- подобном изменении метри- метрики градиентный метод схо- сходится за один шаг. Эти простые рассуждения ука- указывают на важную роль, которую играет изменение масштаба представления целевых функций. Это уже отмечалось в главе 2. В приложении 4 показано, что если принять опреде- определение нормы где <?т = Q > О, Рис. 4.3. Оптимальный гради- градиентный метод. то градиент функции /(х) будет равен <?-1V/(x), где V/(x), как и ранее, есть градиент функции /(х) при нор- норме ||х||2 = хтх. Таким образом, в новой метрике, опреде- определяемой нормой ||x||Q, точки х1, х2, ..., вырабатываемые градиентным методом, будут определяться следующим со- соотношением: x*+i = х* __ tQ-\T^ и = О, 1, ... Это имеет место, если в уравнении D.3) Ak = Q~l. Если мы имеем квадратичную целевую функцию D.4), то, как
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ 125 указывалось ранее, —Q~]v = —х и, следовательно, пере- переход к новой точке приводит нас в начало. Это обстоятель- обстоятельство используется в другом ускоренном градиентном ме- методе, который называется методом переменной метрики и рассматривается ниже. Таким образом, надо иметь в виду, что различному выбору нормы в Rn соответствуют различные вектор-гра- вектор-градиенты. В качестве другого примера возьмем норму п М = 2 N. г=1 при которой е-окрестность точки х°, т. е. область ||х —х°|| < е, является многогранником (см. рис. 2.2). Точка х, принадлежащая е-окрестности точки х° и мини- минимизирующая функцию /(х), в общем случае является вер- вершиной (если минимум не единственный, то выбор точки должен быть произведен одним из известных способов) и определяется следующим образом: — 8 sign df (х°) дх4 ' где / выбирается так, что \тг- > -г-н, 1ф]> \дх7 дх.\ г» О в противном случае. Напомним, что геометрически вектор-градиент определяет направление наиболее быстрого возрастания функции. Тогда при данной норме все компоненты вектор-градиен- вектор-градиента, кроме /-й, будут равны нулю, а /-я компонента будет равна 1. Таким образом, следующая точка xk+l будет опре- определяться равенством -; - я компонента. Другими словами, точка хА+1 будет отличаться от х* значе- значением только одной компоненты. Это обстоятельство позво- позволяет рассматривать метод поиска из группы (I) как част-
126 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ ный случай градиентных методов, относящихся к груп- группе (II). Метод, при котором следующая точка отличается от текущей значением только одной компоненты, называ- называется релаксационным *) и рассматривается в парагра- параграфе 4.7. (См. также метод Саусвелла, например, в обзоре Спенга A962).) Метод, в котором на каждом шаге изменяется только одна компонента вектора х, требует обычно больше ша- шагов для достижений той же точности, чем градиентный ме- метод, хотя отдельные шаги при этом могут вычисляться быстрее. Метод в этой простой форме не всегда сходится. Иногда его используют как основу для более сложных ме- методов поиска (см., например, метод Пауэлла в пара- параграфе 4.7). 4.1.2. Ускорение (метод параллельных касательных). При рассмотрении градиентных методов мы уже отмеча- отмечали, что при двумерной квадратичной функции /(х) точка минимума х* может быть найдена точно. Для этого, найдя оптимальным градиентным методом х1 и х2 по извест- известной х°, надо прекратить применение оптимального гради- градиентного метода и найти минимум значения функции пу- путем поиска вдоль луча, определяемого точками х° и х2 (см. рис. 4.2). Основываясь на этом, можно следующим образом до- добиться ускорения обычного градиентного метода (так на- называемый итерационный метод параллельных касатель- касательных). Будем обозначать точки не х°, х1, х2, ..., а х2;~4, Y2J-2 Y2J-1 j О Q X , X , / Z, О, . . . (I) При заданном х° выберем следующую точку опти- оптимально в направлении — г° (назовем эту точку х2, т. е. х2* при к = 1). (II) При заданных х2Л~2 и х2* выберем x2ft+1 оптималь- оптимально в направлении — г2\ Тогда в качестве х2М выбирается оптимальная точка на направлении x2fe+1 — x2ft~2 (шаг ускорения). (III) Повторить шаг (II), увеличив к на единицу. (IV) Начать процедуру заново через 2я — 1 шагов, где п = dim x. *)Обычно эти методы называют методами Гаусса — Зейделя или методами покоординатного спуска (см. также сноску на стр. ПС). (Прим. ред.)
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ 127 Рис. 4.4 иллюстрирует описанную процедуру. Существует другой вариант этого метода, называемый продолженным методом параллельных касательных, кото- который несколько отличается от итерационного метода. От- Отличие заключается в способе формирования шагов уско- ускорения. Как и в предыдущем случае, мы отказываемся от последовательной нумерации точек. Рис. 4.4. Метод параллельных касательных. @) При заданном х° следующие три точки (х2, х3, х4) определяем с помощью описанного итерационного метода. A) Точку х5 находим с помощью оптимального гради- градиентного метода на луче, определяемом направлением —г4. (II) Точку х6 находим на луче, соединяющем х2 их5. (III) Повторяем предыдущую процедуру, используя оптимальный градиентный метод в точках x2j, / = 2, 3, ..., и соединяя х20~п и x2j+1, / = 2, 3, ..., для получения ша- шагов ускорения. Подробное изложение см. у Уайлда и Бейтлера A967). На основании имеющегося опыта представляется, что этот метод уступает методу переменной метрики, который бу- будет рассматриваться далее. Поэтому в дальнейшем мы не будем возвращаться к методу параллельных касательных (см. задачу 6, где устанавливается связь между методом параллельных касательных и методом сопряженных гра- градиентов). Пример. Когда итерационный метод параллельных касательных используется при целевой функции J у р xz) = {z\ — xzJ + A — %\) u начальной точке
128 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ х° = @, 0)т, получаются те же первые две точки, что и при оптимальном градиентном методе. Третья точка, по- получаемая шагом ускорения, имеет Х\ = 0,804, хг = 0,458; при этом значение функции равно 0,073. Сравните эти данные с применением оптимального градиентного метода в примере на стр. 123. Даваемая ме- методом параллельных касательных третья точка оказыва- оказывается лучше не только третьей, но и четвертой точки, по- получаемой в этом примере оптимальным градиентным методом. А 4.1.3. Сходимость. До сих пор мы ничего не говорили о случаях, когда с помощью градиентного метода оказы- оказывается невозможной локализация точки минимума. Из конфигурации поверхностей постоянного значения функ- функции /(х) видно, что при заданной целевой функции /(х) = хт(?х/2 градиентный метод не всегда дает сходя- сходящуюся последовательность точек или даже последова- последовательность с монотонно убывающими значениями функции, если только Q не является положительно определенной или, другими словами, если только поверхности постоян- постоянного значения функции не образуют семейства поверхно- поверхностей, замкнутых вокруг начала. В качестве примера рассмотрим двумерный случай при знаконеопределенной матрице 0, О 100 J* Эта матрица является знаконеопределенной, так как в за- зависимости от выбора х квадратичная форма xTQx может быть как положительной, так и отрицательной. Линии по- постоянного значения функции образуют семейство гипер- гипербол, показанное на рис. 4.5. Для начальной точки х = @, 1)т значение вектор-градиента, взятого с обрат- обратным знаком, равно -г = -(?х= @, -100)\ Таким образом, согласно градиентному методу выбирает- выбирается следующая точка: К' = х — tv = @, 1 - 1000, * > 0t
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ 129 Значение функции в этой точке равно f(x') = 50A — 10002, * а минимум достигается при t* = —J— 10~2. г,о^— *t f=L2,0 Pnc. 4.5. Сходимость градиентного метода. С другой стороны, если в качестве начальной точки взять х = A, 0)т, то —г = A, 0)\ а функция в следую- следующей точке, равная /(х') =_4- не обладает минимумом при t > 0. Допустим, что мы из точки х = @,5, 1)т делаем шаг размером t = 0,01. Тогда следующая точка имеет коорди- координаты х[ = ^ A + 0 = 1,01^ = 0,505, х2= х2{1 —100/) = 0. При этом — г' = @,505, 0)т, а для точки х", получае- получаемой градиентным методом из х' при t = 0,01, имеем х]= 1,01*1= A,01)» *1в Это показывает, что при повторном применении градиент- градиентного метода мы получаем последовательность точек на оси хи смещающихся все дальше и дальше от начала (см. рис. 4.5). Как показывает предыдущий простой пример, в слу- случае, когда Q не является положительно определенной,
130 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ последовательность точек, получаемых градиентным ме- методом, не всегда сходится. Установим это для общего слу- случая га-мерной целевой функции Пусть х°, х1, х2, ...— последовательность точек, полу- получаемых с помощью градиентного метода, х1 = х° — гог°, X2 = X1 — *1Г\ . . ., Х'+1 = Х{ — *,Г*, где г' = Qx\ Таким образом, при заданном х° последова- последовательность {U} полностью определяет последовательность {хг}, получаемую градиептным методом. Другими слова- словами, полностью определяется поведение градиентного ме- метода. (Заметим, что речь идет не об оптимальном гради- градиентном методе, а о методе спуска, согласно которому точ- точка х<+1 находится смещением из хг в направлении — гг на расстояние ^ЦгЦ.) Так как х<+1 = xl __ fiQxi = (/ __ ttQ)Ki rf+l = QJ+1 = ?(/ _ tiQ)xi = (/ - 1$)Х\ то после (п— 1)-го шага вектор-градиент будет равен г» = (/ - *„-!<>) (/ - tn.2Q) ...(/- ^)г°. (AJ Таким образом, если х° выбрано, то уравнепие (А) пол- полностью определяет зависимость гп от номера шага (в виде функции от to, t\, ..., tn-\). Из параграфа 1.3 известно свойство 3, согласно кото- которому существует такая ортогональная матрица Г, что Поэтому без потери общности можно положить, что Q = diag(A,i, to, . -., К)- Известно, что для локализации точки минимума необхо- необходимо, чтобы гп->0 при п-*оо. Предположим, что Q не является положительно определенной матрицей. Тогда су- существует по меньшей море одно из ^<0 при некотором/. Следовательно, /-я компонента тп не сходится к нулю,
4.1. ГРАДИЕНТНЫЕ МЕТОДЫ 131 О л если только не выполняется равенство rj = U, поскольку из (А) следует, что Так как не все to, t\, . -., tn-\ равпы нулю (в противном случае не было бы смещения из точки х°), то 1 — tkXj ^ I для всех к = 0, 1, 2, ..., п — 1, а для некоторых к спра- п1 р п—1 ведливо строгое неравенство. Таким образом, П A — fc0 ) не сходится к нулю, и при и-> оо г) не сходится к нулю, если только г § не равно нулю. Учитывая это, в последую- последующем при рассмотрении градиентных методов* при квадра- квадратичной целевой функции мы будем в качестве Q брать положительно определенную матрицу. Далее будет пока- показано, что при таких функциях большинство методов, кото- которые будут рассматриваться в оставшейся части главы, дают решение, сходящееся за конечное число шагов. Карри A944) приводит по поводу сходимости сле- следующее утверждение. Пусть V/(x) существует и непре- непрерывна в замкнутой и ограниченной области S простран- пространства Rn. Предположим также, что получаемые с помощью оптимального градиентного метода точки х°, х1, ... при- принадлежат S. Так как область S ограничена, то последо- последовательность х°, х1, ... обладает по меньшей мере одной предельной точкой. Пусть такой предельной точкой явля- является х°°; тогда она принадлежит S. Можно показать, что точка х°° является стационарной точкой, т. е. V/(x°°) = 0. В действительности для получения сходимости к точке минимума нет необходимости осуществлять смещение точ- точно по направлениям градиентов (см. приложение 6, а так- также Голдстейн A962)). 4.1.4. Скорость сходимости. Перейдем теперь к рас- рассмотрению скорости сходимости и исследуем, насколько быстро сходится градиентный метод. Этот анализ прово- проводится лишь для квадратичных функций. Мы увидим, что скорость сходимости существенно зависит от отношения наибольшего собственного значения к наименьшему. Вновь будет видно значение числа обусловленности мат- матриц, которое было введено в подпараграфе 1.5.1, 5*
132 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Если /(х) = хт(?х/2, где <?т = Q > О, то, как следует из D.5), при применении оптимального градиентного метода /(х') = /(х)--1-<г, г>2/<г, где г = Qx. Следовательно, Согласно неравенству Канторовича (см. приложение 5) где Xi и Хл — соответственно наибольшее и наименьшее собственные значения матрицы Q. Из D.6) и D.7) сле- следует, что U = / (х) - Пусть х°, х1, ...— точки, получаемые оптимальным гра- градиентным методом. Тогда можно записать где а — постоянная, удовлетворяющая условию Если D.9) справедливо, то при достаточно больших к за- зависимость /(хй) от к определяется геометрической про- прогрессией /(х*) ^ Са\ где С = /(х°). Введем следующее определение порядка сходимости *): Порядок сходимости == lim п *)Еслн /(х*) ^=0, надо заменить 1п/(х*) на ln[/(xft)— f(x*)].
4.2. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ 133 Так, например, оптимальный градиентный метод имеет порядок сходимости, равный л , In a Как можно увидеть из предыдущего, порядок сходимо- сходимости, равный единице, означает, что значения целевой функции убывают в основном по закону геометрической прогрессии. (Более общее рассмотрение вопроса см. в приложении 7.) Порядок сходимости, равный 2 (иногда называемый квадратичной сходимостью), означает, что при достаточно больших к /(xfc+1) « [/(х*)]2. В этом случае, если к тому же f(xk) — малая величи- величина, например, аЮ~р при 0, 1 < а < 1, то f(xk+l) равно л210~2р, т. е. фактически удваивается число нулей после запятой. Далее мы увидим, что метод Ньютона — Рафсона, который является методом группы (III), поскольку он использует вторые производные, имеет порядок сходи- сходимости 2. 4.2. Метод сопряженных направлений Продолжим наше рассмотрение методов минимизации, которые используют градиент функции, т. е. методов группы (II). В предыдущих разделах мы указывали на возможность улучшения градиентного метода и ускорения его сходи- сходимости. В данном параграфе излагаются два таких метода. Они оба основываются на понятии сопряженности векто- векторов (определение сопряженности было дано в пара- параграфе 1.1). Два вектора х и у в пространстве Rn называют Q-со- Q-сопряженными (или сопряженными по отношению к мат- матрице Q, или Q-ортогоналъными), если xTQy = 0. Если вектор х сопряжен с любым вектором подпространства М пространства Rn, т. е. если xTQz = 0 для всех z е I, то х называют сопряженным с подпространством М. (Напом- (Напомним, что х и у называют взаимно ортогональными, если
134 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ хту = 0. Таким образом, понятие сопряженности является обобщением понятия ортогональности.) Рассмотрим квадратичную целевую функцию /(х) = <а, х> + хт(?х/2, где <?т = Q > 0. Метод сопряженных направлений вырабатывает после- последовательность таких точек х°, х1, .. ., что (р\ <?р5) = 0 для всех /с, /, к ф /, где Значение такой последовательности точек при минимиза- минимизации квадратичной целевой функции основывается на сле- следующей лемме. Лемма. Если целевая функция /(•)' на подпространст- подпространстве М пространства Rn достигает минимума в точке х и та же целевая функция в подпространстве N таком, что М cz N, достигает минимума в точке у, то вектор у — х сопряжен с подпространством М. Другими словами, если min / (z) = / (х) И min/(z) =/(y), где М d N, то (у — х, Qz) =0 для всех z^M. Отметим прежде всего, что поскольку /(х) достигает минимума в Ж, то (V/(x), z> = 0 для всех z e M. Аналогично (V/(y), z> t= 0 для всех z e AT. Поэтому 0 = (V/(y) - V/(x), z> = <(?(у - х), z> = = (у — х, Qz) для всех zell и вектор у — х со'пряжен с М (см. рис. 4.6 иллюстрирую- иллюстрирующий этот случай на плоскости).
4.2. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ 135 В параграфе 1.1 уже говорилось, как при заданной по- положительно определенной матрице Q и множестве, со- состоящем из п линейно независимых векторов, образовать множество из п (^-сопряженных векторов. Это осуществ- осуществляется аналогично построению множества из п ортого- ортогональных векторов. Рис. 4.6. х и х* — х —^-сопряженные векторы: /(х) на L достига- достигает минимума в точке х; /(х) на Я2, где L a R2, достигает минимума в точке х*. При заданном множестве из п ф-сопряженных векто- векторов минимум квадратичной функции /(х) (где Q — ее матрица Гессе) может быть найден не более чем за п ша- шагов от любой точки, если выполнить ряд одномерных по- поисков вдоль каждого из сопряженных векторов (см. зада- задачу 12). Другими словами, при заданном множестве Q-co- пряженных векторов р°, р1, ..., р71 локализовать мини- минимум можно следующим образом: (I) Исходя из х° в направлении р° выполнить одно- одномерный поиск минимума функции /. Положить к рав- равным 1. Найденную точку минимума принять в качестве х1. (II) Произвести поиск минимума функции /(х), исхо- исходя из хк в направлении р\ сопряженном с р°, р1, ..., р*. Найденную точку минимума принять в качестве xft+1. Со- Согласно построению имеем (р\ (?рг) = 0, i=0, 1, ..., й—1. (III) Увеличить к на единицу и перейти к (II). Тогда хп — точка минимума /(х) на /?\ Обычно множество сопряженных векторов заранее не бывает известным. Образование сопряженных векторов и одномерная минимизация, как правило, осуществляются
136 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ совместно. Примером этого является рассматриваемый в следующем разделе метод сопряженных градиентов, где сопряженные векторы образуются из вектор-градиентов. Если функция и ее градиенты определены только чис- численно так, что нет возможности построить матрицу Q, то задача построения множества (^-сопряженных векторов становится более трудной. Этот случай позже в данной главе будет рассмотрен подробно при описании метода сопряженных градиентов и метода переменной метрики. В случае неквадратичной функции метод сопряженных направлений становится итеративным и обычно не закан- заканчивается за п шагов. Неквадратичные функции локаль- локально аппроксимируют последовательность квадратичных функций, р-векторы определяются в соответствии с квад- квадратичными аппроксимациями этих неквадратичных функ- функций. Поэтому при функциях, локальные квадратичные аппроксимации которых быстро изменяются от итерации к итерации или для которых матрица Гессе перестает быть положительно определенной, метод сопряженных направлений может не сходиться. 4.3. Метод сопряженных градиентов Метод сопряженных градиентов является частным случаем метода сопряженных направлений. Первоначаль- Первоначально он был разработан Хестенсом и Штифелем A952) при- применительно к решению системы совместных уравнений с положительно определенной матрицей коэффициентов. Решение системы совместных уравнений Ах = Ь эквива- эквивалентно минимизации квадратичной функции /(х) == = (Ах— Ь)т(Лх — Ь). Поэтому нет ничего удивительно- удивительного, что метод сопряженных градиентов получил примене- применение как метод минимизации *). Вновь предположим, что функция /(х) — квадратич- квадратичная с положительно определенной матрицей Гессе Q. На- Напомним, что при неквадратичной целевой функции матри- матрица Q должна быть заменена на матрицу Гессе. Так как матрица Гессе изменяется при получении каждой новой *) Аналоптчпо молаю решить систему совместных нелинейных алгебраических уравнений, предварительно преобразовав ее к за- задаче минимизации неквадратичной функции.
4.3. МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 137 точки, то для того чтобы метод был применимым, необхо- необходимо, чтобы матрицы Гессе неквадратичных функций ме- менялись не очень быстро. 4.3.1. Алгоритм. Перейдем теперь к описанию вариан- варианта метода сопряженных градиентов, основывающегося на работе Флетчера и Ривса A964). Вместо того чтобы ис- использовать —гк в качестве направления спуска, метод со- сопряженных градиентов преобразует вектор-градиент, взя- взятый с обратным знаком в направление d\ (^-сопряженное с ранее найденными направлениями d. Эти векторы d вырабатываются следующим образом: d" = - r°, J ( ' где [Jft-i выбирается так, чтобы сделать d" ^-сопряженным с d*. Другими словами, учитывая условие О = <d\ <?d*->> = -<г\ <?dA-'> -f- ^-Kd*-1, <?d>-'>, Pjj-i должно быть равно P»-i = <г\ <?d*-'>/<d*-\ <?d*-'>. D.11) Следующая точка xh+1 отыскивается, исходя из х*, с по- помощью одномерного поиска в направлении d\ Поскольку /(х* + tdk) = /(xs) + г<г\ d*> + t\A\ <?d*>/2, то, выбирая t так, чтобы обеспечить min/(x*+ /<P) =/(x^+1), t для следующей точки можем записать - х*нн ^ х* + ^ D.12) где tk = -<г\ dft>/<dfe, Qdk). D.13) Другое соотношение, связывающее между собой век- тор-градиенты и векторы d, можно получить из D.12) Tk+i = rk + thQdk^ D.14) где th определяется уравнением D.13). Из D.10) следует,
138 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ ЧТО <г\ d*> = -<r\ rk>+pfc-i<r\ dft-1> = -<r\ г*>. D.15) Второй член равен нулю, поскольку г* есть вектор-гради- вектор-градиент в точке минимума функции /(х) в направлении d*. Так как векторы dfe-1 и dk являются взаимно <?-сопряжен- ными, то из D.10) следует также, что <d\ <?d*> = -<r\ Qdk) + h-^d*-1, Qdh) = -(r\ Qd>). D.16) Подставляя D.15) и D.16) в D.13), можно для tk полу- получить еще следующее выражение: tk = -<г\ rk>/<r\ <?d*>. D.13A) Из уравнения D.13А) видно, что поскольку rft+1 ортого- ортогонально к г\ то согласно уравнению D.14) можно за- записать 0 = <г*+', г>> = <г\ г*> + th(r\ <?d>> или, учитывая D.15) и D.16), к = -<r\ rh)l(v\ Qdk) - -<rft, dft>/<d\ Qdk). D.17) 4.3.2. Получение Q-сопряженных и ортогональных век- векторов. Уравнения D.10) — D.17) показывают характер связи, существующий между тремя последовательностями векторов: {d*}, {гг} и {х?}. При заданной начальной точ- точке х° в соответствии с D.12) одномерным поиском в на- направлении d° = —r° выбирается точка х1. Далее в точ- точке х1 определяется вектор-градиент г1 функции /(х). Так как х1 является точкой минимума функции на луче х° -f- M°, то г1 ортогонально к d°. Затем по известной точ- точке г1 с помощью D.10) определяется вектор d1, который является (^-сопряженным к d°. Вектор-градиент г1 связан с г° и d° соотношением D.14). Теперь отыскивается ми- минимум функции вдоль луча х1 + ^d1 и т. д. (см. рис. 4.7). Из изложенного следует, что последовательность {d/{} вырабатывается с помощью процедуры образования ^-со- ^-сопряженных векторов, применяемой к г°, г1, ..., а после- последовательность {г*} получается ортогонализацией векторов °Qd°QV
4.3. МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 139 Ниже мы покажем, что необходимые для получения этих двух последовательностей процедуры выработки (^-сопряженных векторов и ортогонализации векторов вы- выполняются параллельно. Покажем с помощью математиче- математической индукции, что {d*}, вырабатываемые с помощью Рис. 4.7. Метод сопряженных градиентов. уравнения D.10), являются (^-сопряженными, a {rft}, вы- вырабатываемые согласно D.14),— взаимно ортогональны- ортогональными. Известно, что это справедливо при к = 1, поскольку выбор Ро согласно D.11) делает (г и d1 (^-сопряжен- (^-сопряженными, а выбор to согласно D.13) делает г° и г1 взаим- взаимно ортогональными. Допустим теперь, что d°, ..., dft~! — взаимно (^-сопряженные векторы, а г°, ..., rh~l взаимно ортогональны при некотором к^2. Из D.14) известно, что г* ортогонально к г*. При 0 SS i 5g к — 2 имеем = (г*, г<> + tk-X{Q&-\ г'> = tk-i(Q&-\ О, D.18) так как вектор г* ортогонален ко всем г\ 0 ^ i ^ к—2, согласно сделанному предположению. В соответствии с D.10) г* является линейной комбинацией dt-1 и dl где (Li = 0, поскольку г° = d°, а коэффициенты (J с дру- другими индексами определяются из D.11). Подставляя г1 в D.18), можем записать (т\ г<> = th-x(Qdk-\ -d' + ^d*-*) = 0 для г = 0, 1, ..., &-2, поскольку dft-1 является (^-сопряженным со всеми df в со- соответствии со сделанным предположением. Это дока- доказывает, что векторы г°, ..., г* взаимно ортогональны.
140 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Обратимся теперь к вектору d\ Известно, что согласно D.10) d* ^-сопряжен с d". При 0 ^ i ^ к — 2 <d\ Q&) = <-г* + р^сМ, Q&) = = -<г\ Q&) + %-^-\ Qfr) = _<г\ <?d<>, D.19) где второй член равен нулю, поскольку мы предположили, что d* (^-сопряжен с dj, / = 0, 1, 2, ..., Л—2. Из D.14) видно, что Qdl является линейной комбинацией векторов ri+l и г*, а именно: ri+l ri Из D.17) видно, что U может быть равно нулю, только если г' равно нулю. В этом случае хг' является критической точкой, т. е. вычисления закончены. Подставляя последнее выражение в D.19), получим <d\ Q#) = -<rft, r'+I - г'>/Ь = 0, поскольку rft ортогонально ко всем rj, / = 0, ..., ft—1, и, в частности, ортогонально к г* и rl'+l, i = 0, 1, ..., ft — 2. Это завершает наше рассмотрение, которое показыва- показывает, что действительно d°, ..., dh являются <?-сопряженны- ми, а г°, ..., rk — взаимно ортогональными векторами. Подводя итоги, можно следующим образом сформули- сформулировать процедуру: 1. Выбрать начальную точку х°. 2. Определить направление d° = — г°. 3. х1 = х° + М°, где t0 = _<d°, r°>/<do, 9d°>. 4. Определить р° = x1 — x° = ?od° и вычислить г1. 5. Найти новое направление поиска dl, где Ро = <r', <?d°>/<d°, Qd*). Если записать это в более удобной форме <?d° = Qp°lt0 = (r1 - г»)//о,
4.3. МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 141 то получим Ро = (г1, г1 - r°>/<d°, г1 - г°> = = -<г\ r'>/<d°, г°> = <г\ г>>/<г°, г°>. При этом будет исключено умножение d° на Q. 6. В общем случае, достигнув х\ вычислить rf и опре- определить d- = _r' + p,_,d'-', где, учитывая ортогональность {г'} и D.15), р,_, = <г', г' - r'-'>/<d'-\ г' - г-') = 7. Найти xi+1 из соотношения где Заметим, что вычисление коэффициентов не требует знания матрицы Q в явном виде. Если матрица Гессе Q неизвестна, то одномерный поиск (шаг 7) надо осущест- осуществить численно. Флетчер и Ривс рекомендуют использо- использовать оценку U и интерполяцию (см. параграф 4.7). Су- Существует несколько других вариантов использования методов сопряженных направлений и сопряженных гра- градиентов. (См., например, работу Келли A960) и главу 7 настоящей книги. Применительно к оптимальному управ- управлению см. работу Леедона и др. A967).) Пример. С помощью программы FMCG метода со- сопряженных градиентов, входящей в состав библиотеки программ для научных исследований системы IBM-360, была осуществлена минимизация функции f(xu х2; а) = а(х\ — х2J + A — х{J. Ниже приводятся результаты нескольких итерационных шагов, чтобы дать некоторое представление о том, как протекает вычисление атим методом при нескольких на- начальных точках и при а = 0,1; 1,0; 10 и 100 (произве- (произведено округление до пяти знаков).
ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Номер итерации О 1 2 3 4 5 0,00000 1,00000 0,80291 1,02311 1,18331 1,04419 х2 0,00000 0,00000 0,00000 0,83980 1,67959 0,95032 1,00000 0,10000 0,07424 0,00484 0,04141 0,00391 —2,00000 0,40000 0,01717 0,13092 0,23440 0,14687 df/дхг 0,00000 —0,20000 -0,14892 —0,04139 0,05587 -0,02800 11 О 1 2 3 4 5 1,00000 2,00000 1,23171 0,46341 1,17315 1,07140 0,96966 1,00000 2,00000 2,08537 2,17073 2,09187 1,19361 0,29535 0,00000 1,40000 0,08598 0,67051 0,08119 0,00531 0,04251 -0,00000 3,60000 0,18344 -1,43574 0,01049 0,12322 0,18946 —0,00000 —0,40000 0,11365 0,39120 0,14312 0,00914 —0,12898 12 О 1 2 3 4 5 1,00000 2,00000 1,13333 0,26607 0,87945 1,05681 1,04311 1,00000 0,00000 0,13333 0,26607 0,17239 0,97145 0,90973 0,00000 2,60000 0,15028 0,54160 0,05066 0,00534 0,00504 -0,00000 5,20000 0,78850 -1,48752 -0,29660 0,17509 0,16064 0,00000 -0,80000 -0,23022 0,03911 -0,12021 -0,20908 -0,03567 11 1,00000 1,00000 0,00000 0,00001 —0,00000 0 0,00000 2,00000 1,40000 —2,00000 0,40000 1 0,83333 1,83333 0,15748 -0,71296 0,22778 2 1,66667 1,66667 0,56790 2,07407—0,22222 3 1,12745 1,77451 0,04158 0,02791 0,10067 4 0,95414 0,99647 0,00284 —0,12458 0,01722 5 0,96860 1,06137 0,00250 —0,11054 0,02464 10 Номер итерации О 1 2 3 1,00000 0,00000 1,00000 0,57735 0,88810 1,00000 0,00000 а=1,0 0,00000 —0,00000 0,00000 0,00000 0,00000 0,68925 1,00000 1,00000 0,28974 0,02242 2,00000 0,00000 4,00000 —2,00000 -0,07550 —0,66667 0,12960 -0,19896
4.3. МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 143 Номер итерации 4 5 1 1 *i ,19860 ,01293 1 0, ,34849 ,96611 0 0, / ,04300 00376 0, 0, df/dxt 67951 26862 —0 —0 df/dx* ,11753 ,11983 10 1,00000 1,00000 0,00000 —0,00001 —0,00001 0 1 2 3 4 5 2 00000 1,47059 0,94118 1,41136 1,27695 1,34834 2,00000 2,11765 2,23529 2,13081 1,26522 1,72495 5,00000 0,22348 1,82455 0,18850 0,21021 0,13000 18,00000 1,20577 —5,19804 0,03882 2,42021 1,19865 —4,00000 —0,08996 2,69896 0,27771 —0,73077 —0,18614 14 1,00000 1,00000 0,00000 —0,00000 0,00000 0 1 2 3 4 5 2,00000 1,19048 0,38095 0,70591 0,76576 0,73031 0,00000 0,19048 0,38095 0,30449 0,93825 0,56290 17,00000 1,54121 0,43884 0,12403 9,17868 0,07361 34,00000 6,22264 —1,59745 —0 04093 —1,54626 —0,62569 —8,00000 —2,45351 0,47166 —0,38762 0,70378 0,05909 16 1,00000 0,99999 0,00000 0,00006 —0,00003 0 1 2 3 4 5 15 Номер итерации 0 5 10 15 20 0,00000 0,33333 0,55557 1,33333 0,75419 1,14781 1,00000 ас, 0,00000 0,85419 0,99874 1,00039 1,00000 2,00000 1,33333 0,66667 —0,66667 0,49163 0,69170 1,00000 а х2 0,00000 0,67324 0,99643 0,99916 0,99999 5,00000 1,93827 0,16049 6,08641 0,06638 0,41342 0,ооооо =10 / 1,00000 0,05307 0,00001 0,00003 0,00000 —2,00000 —2,96296 —1,25926 13,70369 0,25883 3,16861 0,00000 df/dXi —2,00000 1,63547 0,03942 0,06563 0,00000 4,00000 2,44444 0,44444 —4,88890 —0,15434 —1,25162 0,00000 6f/0x» 0,00000 1,12802 0,02100 0,03241 —0,00000
144 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ = 100 Номер итера- итерации 0 5 10 15 20 0,00000 0,41018 0,46914 0,99589 0,81236 о.ососо 0,09279 0,21750 0,88252 0,67700 f 1,00000 0,91726 0,28248 1,19417 0,06436 —2,000С0 11,20058 —1,57546 43,52304 —5,92278 df/дхг 0,00000 —15,09133 —0,51824 —21,85542 3,41444 58 1,00018 1,00037 0,00000 —0,00002 0,00019 4.4. Метод Ньютона — Рафсона '• 4.4.1. Описание. Мы перейдем теперь к рассмотрению методов группы (III). В отличие от ранее рассмотренных методов группы (II), здесь при получении последователь- последовательности точек используются вторые частные производные. Прежде всего опишем метод, являющийся прямым об- обобщением метода Ньютона отыскания корня уравнения cp(t) = 0, где ф(?) —функция скалярной переменной. Разложение в ряд Тейлора позволяет переписать уравне- уравнение в следующем виде: Тогда при определенных условиях можно следующим об- образом улучшить приближение к значению корня: Нас интересует я-мерная задача минимизации, где тре- требуется определение корня уравнения v/(x) = 0. Приме- Применительно к определению корня уравнения ^/(х) = 0 раз- разложение в ряд Тейлора дает 0 = V/(xfe+1) « V/(xft) -f H(xk) (x*+1 — xft), а последовательность {хА} вырабатывается формулой X — П {X J у J (X J [Ч.?\)) при условии, что существует обратная матрица FI~](xk). Таким образом, мы получили градиентный метод с векто- тор-градиентом, модифицированным вторыми частными
4.4. МЕТОД НЬЮТОНА - РАФСОНА 445 производными функции. Если функция /(•) —квадратич- —квадратичная и равна /(х) = атх + хт()х/2, где Q — положительно определенная матрица, то, исходя из произвольной на- начальной точки х°, с помощью D.20) можно получить сле- следующую точку: х1 = х° — Q~] (а + <?х°) = — (На. Эта точка является точкой минимума функции /(х); та- таким образом, точка минимума может быть найдена за один шаг. Если для выработки последовательности {\k} используется D.20), то метод называется методом Ньюто- Ньютона — Рафсона (или методом Ньютона). Однако этот метод требует затраты значительного времени на вычисление вторых производных функции / и обращение (пХп)-мат- (пХп)-матрицы Гессе. В методе Дэвидона, который будет далее опи- описан, построение матрицы Н~1 производится не прямым вычислением, а с помощью {rft} и {xft}. 4.4.2. Модификация. Из опыта решения одномерных задач известно, что метод Ньютона — Рафсона определе- определения корня функции не всегда сходится. Исключение со- составляет случай, когда начальная точка «достаточно» близка к значению корня и при этом первая производная функции не меняет знака (см. рис. 4.8). Аналогично, № Рцс. 4.8. Случай, когда метод Ньютона отыскания корня не обес- обеспечивает сходимости. последовательность точек, вырабатываемых D.20), расхо- расходится, если матрица Гессе не является положительно определенной. Одпако и в этом случае ее можно сделать положительно определенной, добавив к ней XI, где X — достаточно большая скалярная величина. Таким обра- образом следующее направление поиска будет определяться
146 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ вектором — [Я (xft)-|-A,/]-1rft (см. задачу 1). Подробности см. в приложении 7. Гринстад предложил другой способ модификации не- неположительно определенной матрицы Гессе для метода Ньютона — Рафсона (Гринстад, 1967). Он вычисляет собственные значения и собственные векторы матрицы Гессе H(xh) и выражает эту матрицу в виде Hk(\h) = —PhAkP\, где Ph — ортогональная матрица, столбцами которой являются собственные векторы, a Ak — диаго- диагональная матрица, составленная из собственных значений. Одной из причин того, что метод Ньютона — Рафсона не сходится, могут быть отрицательные собственные зна- значения матрицы Нк. Учитывая это, Гринстад берет вместо матрицы Ah матрицу Лй, составленную из абсолютных ве- величин собственных значений, строит матрицу Hk~PkAkPh и в качестве следующего направления для поиска ис- использует - йт1* = - рЛЪГ* pi* Очевидным недостатком этого метода является необхо- необходимость решения задачи о собственных значениях. Рассмотренные кратко в этом параграфе две модифи- модификации могут, в частности, представлять интерес примени- применительно к задачам с недостаточно хорошими начальными оценками оптимальных точек. Когда направление поиска определяется вектором —G~!r\ так что xft+1 = xk — tkG~lrh является следующей точкой, где матрица G не есть матрица Гессе целевой функции, можно считать, что мы действуем согласно гра- градиентному методу при неевклидовой норме ||х||0. Геомет- Геометрически это означает поиск минимума функции на эллип- эллипсоиде hTGh = const с центром в х\ Пример. Рассмотрим функцию Ее вектор-градиент определяется следующим выражением: гт = 2 [хх1[х\ + х\ + IJ, xj(x\ + х\ + IJ]. Матрица Гессе равна
4.4. МЕТОД НЬЮТОНА — РАФСОНА 147 Минимальное значение функции (которого она достигает в начале) равно /(О, 0) = —1. В малой окрестности на- начала, где \х\\ и \х2\ достаточно малы по сравнению с 1, матрица Гессе приблизительно равна Г2 0 Я(х)=[02. Таким образом, матрица Гессе в малой окрестности наяа- ла является положительно определенной. Предположим теперь, что Х2 = 0, а х\ положительно и велико по сравнению с 1. Тогда I4 Заметим, что матрица Гессе уже больше не является положительно определенной. Так как rT ж [2/#?, 0], то согласно методу Ньютона — Рафсона следующая точка при итерации будет равна га о J ~Ч о Видно, что следующая точка при итерации ока- оказывается более удален- пой от точки минимума, чем предыдущая. Это означает, что метод бу- будет расходиться, если начальную точку выб- выбрать в соответствии со сделанным предположе- предположением (см. рис. 4.9). В некоторых случаях можно управлять сходимостью последовательности {х*}, изменяя размеры шагов. С этой целью уравнение D.20) преобразуется к следующему виду: vft+l -.ft. _ ТТ— 1 / vfc\ Х7 1 /v&\ // ОЛ \ X А — pkn {А ) V/^X Jy y^.dil) где 0 < pfe ^ 1. (Если вначале, когда х° может быть силь- сильно удалено от точки минимума, р выбрано малым, то позд- позднее р можно взять равным единице.) Рпс. 4.9. Случай, когда метод Нью- Ньютона — Рафсона не обеспечивает схо- сходимости при отыскании минимума.
148 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ 4.4.3. Скорость сходимости. Несмотря на указанную возможность расходимости метода Ньютона — Рафсона, он приобрел известную популярность, так как в достаточно малой окрестности минимума имеет порядок сходимости 2. Подойдем к этому вопросу эвристически. Положим, что в окрестности минимума функция /(•) обладает ограни- ограниченными третьими производными. Как и раньше, х* будет обозначать точку минимума. Разлагая v/(x) в ряд Тейлора относительно х* и учиты- учитывая, что v/(x*) = 0, запишем V/(x) « V/(x*) + Я(х*) (х — х*) = Я(х*) (х — х*). Учитывая, что матрица Гессе по предположению является неособенной, и подставив вместо х соответственно xh и xk+1, получим где обозначение а = О(Ь) означает, что а/Ь 5g const при Ъ -> 0. Пусть метод Ньютона вырабатывает сходящуюся последовательность {xft}. Разлагая Vf(xk+l) в ряд Тейлора теперь относительно xft, запишем V/^1) = V/(xft) + Я (ж*) (ж*+1 - х*) +O(|xfc+1 - xf). Согласно D.20) Я(хЛ) (xft+1 — х11) = — v/_(xk). Поэтому первые два члена в разложении взаимно унич- уничтожаются и мы получаем, что = О (|(xft+1 - х*) - (х* - x*)f) = О (Jx* - x*f). Таким образом, из D.20) и D.22) следует, что О (||xft+I - х*||) = О (Цх* - x*f). D.23) Поскольку - V/ (х*) (х - х*) + О (||х - х*1Р) = О (||х - x*f),
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 149 можно, положив /(х*) равной нулю, записать дх*) = 0([]хЬ-х*||2). D.24) Таким образом, из D.20) и D.24) следует, что /(xft+1) = О (||х*+1 - xf) = О (|]х* - х*||*) = О (/ (х*))«. Следовательно, порядок сходимости будет равен l2li^->2, *->oo. D.25) Грубо говоря, D.25) означает, что число значащих цифр удваивается после каждой итерации. При больших к функция /(xft) ведет себя как функция, пропорциональ- пропорциональная a2h при некотором \а\ < 1. Если / является квадра- квадратичной функцией, то, как указывалось ранее, х* можно получить за один шаг. Когда / является неквадратичной функцией, надо каждый раз производить обращение мат- матриц Гессе, что, вообще говоря, особенно при больших га, связано с громоздкими вычислениями. Если же произво- производить повторные обращения матрицы Гессе не на каждом шаге, а через определенное число шагов, то это приведет к уменьшению скорости сходимости. Поскольку при больших значениях ||х° — х*|| метод Ньютона — Рафсона может не сходиться, можно в начале вычислений применять какой-либо вариант градиентного метода. Далее, когда скорость сходимости градиентного метода существенно уменьшится, можно перейти к мето- методу Ньютона — Рафсона. 4.5. Метод Дэвидона (метод переменной метрики) 4.5.1. Основные положения. Чтобы получить возмож- возможность применить метод Ньютона — Рафсона, надо знать матрицу Гессе данной функции и осуществить обращение этой матрицы. Во многих случаях может оказаться, что матрицы Гессе неизвестны, либо их вычисление связано с большими трудностями, либо они могут быть получены только численными методами. Кроме того, известно, что число умножений при обращении (гаХгс)-матрицы прибли- приблизительно пропорционально га3, что представляет собой
150 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ большую величину уже при относительно небольших зна- значениях п. Мы рассмотрим сейчас метод, предложенный Дэвидо- ном A959), позволяющий обойти эти трудности. Представ- Представляется, что в тех случаях, когда есть возможность вычис- вычисления градиентов, этот метод оказывается наиболее эф- эффективным (см. главу 7). Будем считать, что целевая функция является квадратичной, /(х) = атх + хт(?х/2, Q > 0. D.26) Ее точка минимума х* равна х* = —^~1а. Зная вектор-градиент г в любой точке х и обратную мат- матрицу Q~l, можно вычислить точку минимума х* за один шаг, х* = -р-1 (г - Qx) = х - Q~lr. D.27) Как указывалось в параграфе 4.1, оптимальным направ- направлением спуска является не —г, а —Q~lr. Напомним так- также, что Q~lr является градиентом функции /(х), когда метрика задана выражением (х, Qx)l/2 (см. приложе- приложение 4). При неквадратичной функции /(х) метод близок к градиентному с метрикой [хт#(х)х]1/2. При этом матри- матрица, обратная матрице Гессе, строится постепенно, что и определяет название метода — метод переменной метри- метрики. Когда Q известно, это построение производится так же, как и в методе Ньютона — Рафсона в случае квадра- квадратичной функции. Когда Q неизвестно, в методе Дэвидона производится последовательная оценка Q~l построением последовательности матриц, являющихся обращением мат- матрицы Q на все больших и больших подпространствах про- пространства Rn. Перейдем теперь к деталям построения. Пусть Hk является оценкой матрицы в точке х\ Тре- Требуется построить алгоритм определения точки xft+1 со- согласно x*+i = х> _ thH^ Л = 0, 1 D.28) где tk должпо минимизировать функцию /(х) на лу- луче —Hkvh. Для квадратичной формы D.26) th будет
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 151 определяться следующим выражением: /Л н k\ tfc = ;4 I k \v Л = 0,1,... D.29) Воспользуемся уже применявшимся обозначением р" = xft+1 - х\ ^ D.30) Имея множество (^-сопряженных векторов d°, d1, ..., d*, можно записать Следовательно, в качестве приближения к матрице Q в пространстве Rh можно принять Фактически это означает, что /Д(? является единичной матрицей для любого вектора в подпространстве, натяну- натянутом на d°, d1, ..., d* (см. задачи 7, 9 и 10). Если появ- появляется дополнительный вектор dfe, (^-сопряженный к dl, i = 0, ..., к—1, то матрица ведет себя как матрица Q~l в подпространстве, натянутом на d°, ..., d\ После того как с помощью D.28) вычисле- вычислены х1, х2, ..., желательно получить векторы р°, р1, ..., соответствующие D.30) и, кроме того, ^-сопряженные, с тем чтобы при вычислении Hk по формуле (В) отпала необходимость отдельно определять (^-сопряженные век- векторы d°, d1, ... Однако за исключением случая, когда Hh точно равно Q~\ векторы р, вычисляемые с помощью D.28) и D.30), не будут взаимно (^-сопряженными. Сле- Следовательно, матрицы Я, определяемые формулой (В), в ко- которых вместо векторов d взяты векторы р, не будут равны матрице Q~~l даже на каких-либо подпространствах прост- пространства Rn. Чтобы можно было использовать формулу (В),
152 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ в которой векторы d заменены векторами р (напомним, что векторы р имеются в нашем распоряжении, а век- векторы d отсутствуют), будем вычислять последоват&ль- пость {Hh} по формуле где поправочный член Ch выбран так, чтобы векторы р\ i = 0, 1, ..., к, вычисляемые согласно D.30), оказались ^-сопряженными. Чтобы таким способом можно было сделать векторы р ^-сопряженными, Ck должно по меньшей мере удовлетво- удовлетворять условию ИЛИ где (Я, + р*><р7<р\ ?>Р*> + Ck)Qp* = Р" у* = Qp> = Q(xh+l - хА) = rA+1 - r\ Один из способов выполпения этого условия заключа- заключается в том, чтобы в формуле (С) взять Ch равным Желательно было бы построить алгоритм, применимый к любой нелинейной, а не только квадратичной функции. В этом отношении формула (С) оказывается неудовлет- неудовлетворительной, поскольку в нее входит матрица Q в явной форме. Отметим, что <Р\ ?У> = (х*+1 ~ xA)T()pft = (r*+1 - г") V = <У*, РА>. Таким образом, мы приходим к рассмотрению алго- алгоритма x*+1 = xh — thHkv\ D.31A) D.31В)
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 153 где Но — произвольная положительно определенная мат- матрица, apft= xft+1 — х и yh = rft+1 — г\ Таким образом, уравнение D.31А) является частным случаем уравнения D.3), где роль Ак играет матрица Нк. Далее будет показано, что матрицы Нк являются положи- положительно определенными для всех к = 1, 2, ..., если Яо взять положительно определенной. Позже мы рассмотрим другие способы получения последовательности {Hk}. 4.5.2. Свойства алгоритма. Докажем прежде всего, что {Нк} является последовательностью положительно опре- определенных матриц. Воспользуемся для этой цели методом математической индукции. Ясно, что при к = 0 всегда можно взять Но > 0. Предположим, что Нк положительно определена. Тогда из D.31В) для любого х Ф 0 следует, что = <х, Я;,х> - ^ <Pft. yk>' В соответствии с неравенством Коши — Шварца *) Поэтому числитель первого члена неотрицателен. Знаме- Знаменатель также положителен, поскольку согласно предполо- предположению матрица Нк — положительно определенная. Следо- Следовательно, ¦) Как известно (глава 1), любую положительно определенную (п X п)-матрицу, используя разложение на треугольные матрицы, можно представить в виде Применяя это правило, запишем
154 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Напомним, что rk+l ортогонален р\ Следовательно, с уче- учетом D.31А) знаменатель этого члена можно записать в виде <Р\ У*> = <Р\ rft+1> ~ <р\ П = -<р\ г*> = tk(Hhr\ r>>. D.32) Как tk (см. D.29)), так и (#ftr*, г*) являются положитель- положительными, поскольку по предположению матрицы Hh и Q яв- являются положительно определенными. Тогда <Р\ У*> = h{HhT\ г*> > 0. Так как х Ф 0 не может одновременно быть ортогональ- ортогональным к р* и пропорциональным <?р\ то Hk+\ является по- положительно определенной, что и требовалось доказать. Докажем теперь следующее утверждение. Если #о==/, а /(•) является квадратичной функцией с матрицей Гес- Гессе Q, то вырабатываемые этим методом векторы р°, р1, р2, ... образуют множество ^-сопряженных векторов и на многообразии, натянутом на р°, р1, ..., pfc-1, матрица Нк будет равна Q~l. Другими словами, надо доказать, что по- последовательность {рк} действительно является множеством ^-сопряженных векторов, a Hk удовлетворяет условию #fc0p'=p\ * = 0, 1 й-1. D.33) Используя D.31В), непосредственным вычислением по- получаем #*+1У* = Hk+lQp> = p\ D.34) Таким образом, D.33) справедливо для i = к — 1. Положим Но = /. Учитывая, что у0 = (?р°, из D.34) получаем #i(?p° = я1Уо = ро. D.35) Это доказывает справедливость D.33) для к = 1. Так как rft+1 всегда ортогонален к р\ то р° и г1 ортогональны. Поэтому, используя D.35) и учитывая, что согласно D.31А) можно записать 0 = <р°, П> = {Il.Qf, г»> = <<?р°, И^} - ? Р°, Рг>- D.36)
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 155 Поэтому р° и р1 являются сопряженными векторами относительно матрицы Q. Покажем теперь справедливость D.33) для к = 2. При i = 1 имеем в соответствии с D.34) H2Qpl = Н2у* = р1. D.37) Чтобы показать справедливость D.34) для к = 2, i = 0, заметим прежде всего, что согласно D.31В) Н2 представляет собой сумму Н\ и двух других членов. В ре- результате действия #2 на Qp° остается только член, содер- содержащий H\Qp° = р° (см. D.35)). Воздействие среднего члена формулы D.31В) на <?р° дает Последний член D.31В) также ничего не вносит, по- поскольку согласно D.36) р1 (^-сопряжено с р°. Из ортого- ортогональности р1 и г2 с учетом D.37) и по аналогии с D.36) следует, что <Р\ <?Р2> = 0. Из D.36), учитывая ортогональность р° и г1, для г2 = г1 + Qp\ имеем <Р°, г2> = 0. Так как р° = H2Qp°, то из условия (р°, QH2r2) = 0 сле- следует, что р° и р2 являются взаимно сопряженными векто- векторами, поскольку согласно D.31А) Н2т2 = —p2/t2. Теперь совершенно ясно, что соотношения HhQp{ = Р\ 0 ^ i ^ /с, D.38) <Р?, (?Pj> = 0, 0 ^ i < / < К D.39) (р'? г/{> ==0, 0 g i < /с, D.40) могут быть получены математической индукцией по /с. Справедливость формул D.38), D.39), D.40) для Лс=1,2 подтверждается предыдущими соображениями. Предполо- Предположим, что они справедливы для /с. Покажем вначале спра- справедливость D.40) для к + 1. Для i = к D.40) справед- справедливо по определению. Для i <L к справедливость этого равенства вытекает из D.38) п D.39) для случая Л, если эаписать г*+1 — г*+1 = Q{\M -x1+1) =
156 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ ИЛИ r»+i = r*+i + ^(р-+1 -f- . . . -f- р*), i < к. Тогда <р\ гА+1> = <р\ г'+'>+<р\ <?(р'+1+. • .+Рл)> = 0, I < к. Первый член этого выражения равен нулю, так как в точке хг+1 достигается минимум функции /(х) на на- направлении рг. Второй член обращается в нуль по предположению о (^-сопряженности векторов р°, ..., р\ Далее, D.38) спра- справедливо для к + 1, так как из D.31В) непосредственным вычислением получаем #fc+i(?pf = HkQV = Р\ О^Кк D.41) поскольку <//*у\ <?р'>=<уй, //^р'>=<9р\ р'> = о. Последние два равенства определяются предположением о справедливости D.38), D.39), D.40). Справедливость равенства при i = к была уже установлена уравнением D.33). Из ортогональности рА и rk+l с учетом D.40) следует = <Р\ Кроме того, rft + <?P*> = 0. Это доказывает справедливость равенства D.39) и тем завершает доказательство D.38), D.39), D.40). После того как выработано п таких векторов р, вектор гп должен обратиться в нуль, поскольку он ортогонален к п линейно независимым векторам р°, ..., рп"К Таким образом, Отсюда следует, что HnQ = In или Нп =
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 157 Действительно, очевидно, что " р"> <р* _ п-\ <Р*. Мы видим, что при последовательном построении мат- матрицы Q~l сумма членов левой части последнего равенства уничтожит влияние произвольного начального прибли- приближения Но. 4.5.3. Влияние масштабирования. Несмотря на то, что ряд машинных экспериментов, описанных в главе 7, как будто бы указывает на то, что при наличии производных целевой функции метод переменной метрики Дэвидона — Флетчера — Пауэлла оказывается достаточно эффектив- эффективным, тем не менее высказываются мнения о необходимо- необходимости совершенствования этого метода (Бройден A967), Келли и др. A966)). В частности, Бард указал, что не- некоторые из возникающих трудностей являются следствием того, что матрицы Я становятся особенными (Бард A968)). Следуя Барду, кратко обсудим этот вопрос. Если целевая функция /(х) масштабируется умноже- умножением на постоянную величину а, т. е. если минимизиру- минимизируется не /(х), а а/(х), то вектор-градиенты и векторы у также оказываются умноженными на а. Если х масштаби- масштабируется умножением на р, то векторы р также умножаются на р, а градиент и векторы у умножаются на 1/р. Таким образом, если по заданному Яо вычисляется #i, то в ре- результате масштабирования р°(р°O(У0)тР0 умножается на Р2/а. Неудачный выбор аир, при котором р2/а <С 1, при- приводит к значению матрицы я1« я0 - ну (Уу нЪ/(уГ ну. Эта матрица является особенной, поскольку (Яо - Ну (у°)т Н1/(уУ НУ) у" = 0. С другой стороны, если [52/а Э> 1, то ih « ри(р°O(Р0)гу°.
158 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Вновь матрица является особенной, так как эта (пХп)- матрица имеет раиг 1. Допустим, что матрица Н\ стано- становится особенной, т. е. ее ранг равен или меньше гг—1. Тог- Тогда существует такой ненулевой вектор z, что H\Z = 0 и (Н, - Ну (y')T#I/(yi)Ttfiyi)w = О для w = z и w = у1. Таким образом, если только z и у1 не являются линейно зависимыми, то ранг Н\ не превы- превышает п—2, а ранг матрицы Н2 не превышает п—1. Следо- Следовательно, если только Н\ становится особенной, то и все последующие матрицы Н также могут оказаться особен- особенными. Один из способов предотвращения вырождения матриц подсказывает предыдущее рассмотрение: надо масштаби- масштабировать функцию /(•) их так, чтобы в начальной точке соблюдалось приближенное равенство В случае необходимости это же следует выполнить и в дальнейшем. 4.5.4. Модификации метода. Как следует из рассмот- рассмотрения, приведенного в главе 7, представляется, что при выборе метода первым следует испытать метод перемен- переменной метрики. Например, Келли A960), сравпивая три вариан- варианта метода сопряженных градиентов и метод перемен- переменной метрики, делает вывод о том, что последний метод обеспечивает существенно более быструю сходимость, чем любой из методов сопряженных градиентов, но в большей мере подвержен влиянию ошибок вычислений. Келли мо- модифицировал метод переменной метрики, сохранив его преимущества по скорости сходимости перед методами со- сопряженных направлений, но уменьшив чувствительность к накоплению ошибок. Снижение чувствительности по от- отношению к накоплению ошибок осуществлено системати- систематическим гашением накопленных ошибок через каждые п шагов. Келли считает, что это обеспечивает лучшую схо- сходимость по сравнению с любым из пяти методов, испыты- вавшихся при вычислениях с однократной точностью (со- (соответствующей восьми десятичным разрядам).
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 159 Модифицированный алгоритм Дэвидона определяется следующим выражением: x'+I = х* - tjlj\ где Но > О, 7 Pj> V Так же как и метод сопряженных направлений, метод переменной метрики требует, чтобы нахождение миниму- минимума функции на данном направлении осуществлялось очень точно. В противном случае направления поиска не будут (^-сопряженными. Было бы очень желательным так модифицировать алго- алгоритм, чтобы, не требуя особой точности линейного поиска, он все же вырабатывал последовательность {#fc}, для ко- которой бы выполнялось условие Нп = Q~{. В этом случае алгоритм сохранит свойство быстрой сходимости, прису- присущее методу Ньютона — Рафсона, не будет требовать яв- явных обращений матрицы Гессе и будет быстрее, поскольку станут излишними очень трудоемкие вычисления много- многочисленных значений целевой функции, необходимые для точного поиска минимума на направлении (см. задачу 19). Опишем модифицированный таким образом алгоритм, следуя Пауэллу (Пауэлл, 1970). Предположим, что Нк строится таким образом, что Htfl = Q-lyi при * = 0, 1 Л—1. Так как pft = Q~lyh для любой квадратичной функции с матрицей Гессе <?, то <pft — Hky\ u) = ((Q~l — Hk)y\ u> при любом u e Rn. Таким образом, если Hh+\ строится из Hh согласно выражению Н ш h+ <i ТО
160 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ = Hhy\ 1 = 0, 1, ..., &-1, поскольку <р*- #»у\ У> = <(<?-' - Нк)у\ у') = =<у\ (9-'- Последняя строка следует из исходного предположения Hky = Q-ly\ г = о л—1. Из предыдущего следует, что Ип+\ = Q~l в пространстве /?п при условии, что векторы у0, ..., уп~! линейно незави- независимы (это будет иметь место, если р°, р1, ..., р*"*1 линейно независимы) и ни одно из скалярных произведений не равно нулю. Этот алгоритм дает большую свободу выбора линейно независимых векторов р (т. е. линейно независимых на- направлений поиска), чем алгоритм, описанный в подпара- графе 4.5.1, который требует, чтобы векторы р были ^-со- ^-сопряженными. Конечно-разностная модификация. Опи- Описывая метод Дэвидона, мы предполагали, что в нашем распоряжении имеются вектор-градиенты. В случае, когда вектор-градиенты нельзя получить в аналитической форме или их получение связано с вычислительными трудностя- трудностями, желательно аппроксимировать их отношениями ко- конечных разностей. Такая модификация метода Дэвидона была предложена Стюартом (Стюарт, 1967). Опишем модифицированный алгоритм, следуя Стгоар%. В методе Дэвидона, чтобы определить в точке х* новое направление поиска, надо иметь вектор-градиент г\ Стю- Стюарт предложил заменить dj/dXj величиной ^, вычисляемой с помощью разности = В этой формуле tj представляет некоторую малую величи- величину, a eJ — единичный вектор, у которого /-я компонента равна единице, а остальные равны нулю. К лучшей ап-
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 161 проксимации, как, например, к симметричной аппрокси- аппроксимации с помощью конечных разностей, следует обращать- обращаться, только когда данный простой способ оказывается не- непригодным, так как такое улучшение можно получить лишь ценой дополнительных вычислений значений функции. Как следует выбирать tj? Одно из важнейших сообра- соображений при построении модифицированного метода Дэви- дона заключается в выборе правильного соотношения между точностью и объемом вычислений. Выбор th осно- основанный на этих соображениях, будет изложен ниже. Рассмотрим Ф (*) = / (xft + И я* / (х*) + t <гь, е/> + -~ <е'\ Q (х*) е*>, где <?(х*) — матрица Гессе функции /(•) в точке х\ Пред- Представим приближенно /-ю компоненту вектора г* следую- следующим образом: ъ = <г\ е>> « При этом диагональный элемент матрицы (?(х*), равный (е?, (?(xft)ej), приближенно представим диагональным эле- элементом матрицы //jT1. Обозначим его а*). Две причины вызывают вычислительные ошибки: ошибки усечения, обусловленные отбрасыванием члена второго порядка относительно t, и ошибки округления, *) Как показано в подпараграфе 4.5.2, Hh является положи- положительно определенной матрицей, и, следовательно, обратная матри- матрица существует. Применяя тождество (А - ou> <v) -1 = А-1 - тЛ-^и) <Л~Ч где т-1 + а-1 = <v, A-lu\ можно определить диагональные элементы матрицы Я^ с по- помощью следующей итеративной формулы: где
162 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ вызванные отбрасыванием значащих разрядов, когда при вычислении разности ф(?) — ф@) значения ф(?) и ф@) записываются с конечным числом разрядов. Относительная ошибка усечения приближенно опреде- определяется следующим выражением: 1Аф/* —VI ^ 1 \Щ IVI = 2 . Ivl # Найдем верхнюю границу ошибок округления. Пусть ф(?) и ф@) в цифровой вычислительной машине представля- представляются величинами ф(?) и ф@) с точностью 8i и 82, ф@)=Ф@)A + е2). Предположим, что верхняя граница точности ц извест- известна, |ei|, |8г| ^ т]. Тогда можно записать |Лф| = |ф(*)-Ф@)| ^ < |Ф(*)-Ф(О)| + |е,ф@+еаФ@)| ^ ^ |Дф| + |ф@)|в8, где |ез| Sg 2т], при условии, что |ф@) | имеет тот же по- порядок величины, что и |ф(?) |. Относительная ошибка, обусловленная отбрасыванием значащих разрядов, равна Лф — Дф Аф < ф @) Eg Аф Ф@) Аф Заметим, что величина t оказывает на величину отно- относительной- ошибки усечения влияние, противоположное оказываемому ею на величину относительной ошибки округления. Так, например, уменьшение t приводит к уменьшению относительной ошибки усечения, но вели- величина ошибки округления растет. Правильное решение при этом заключается в выборе такой величины t, при кото- которой обе ошибки приблизительно равны между собой. В противном случае одна из причин ошибок будет пре- преобладать.
4.5. МЕТОД ДЭВИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 163 Таким образом, в конечно-разностном приближении величина t выбирается согласно следующему условию: 2г) Ф(О) Дф 1 2 tCJL У ИЛИ = 0- При оценивании /-й компоненты вектора тк с помощью f величина а берется равной /-му диагональному элемен- элементу матрицы Hh. Так как Дф« J +— at2, то для определе- определения t мы получаем кубическое уравнение _. ф2?з _|_ |а| . |у| ?2 — ^ |ф @)| • |y| ц = 0 при t > 0. Учитывая сложность кубического уравнения, Стюарт аппроксимирует t меньшим из двух корней уравнений, по- полученных отбрасыванием кубического или квадратичного члена t = min B (|ф @)/ос|) , 2 [|ф @) у\/а2] / ), и уточняет его одной итерацией по методу Ньютона 3\a\t или 3|а|* +4Iy|J" При этих вычислениях нам необходимо иметь оценку границы ошибок определения ф и rj *). Пусть б есть отно- относительная ошибка представления чисел, так что число t представляется в машине в виде ?т = ?A + е'), где |е'| <; б. Тогда Следовательно, верхняя граница величины rj равна ys't б. *) При заданном ф(-) такая оцеика может быть получена. (См., например, У ил к ин с он A965).)
164 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Если эта верхняя граница больше чем т), то при опреде- определении величины t надо взять ее в качестве rj. Если рас- рассчитанная таким образом величина t оказывается больше некоторой заданной верхней границы, то способ аппрок- аппроксимации нужно уточнить, например, обратясь к способу аппроксимации центральными разностями. (Подробности программирования и обсуждение некоторых численных ре- результатов см. у Стюарта.) Пример. С помощью реализующей метод переменной метрики программы FMFP из библиотеки программ для научных исследований системы IBM-360 (блок-схему про- программы см. в приложении) минимизирована функция / (хи х2\ а) = a (х\ — х2J + A — xxf. Ниже приводятся результаты нескольких итерацион- итерационных шагов, чтобы дать некоторое представление о том, как протекает вычисление данным методом при нескольких начальных точках и при а = 0,1, 1,0, 10 и 100 (произве- (произведено округление до пяти знаков). Номер итера- итерации 0 2 3 4 0,00000 1,00000 0,86291 0,87994 0,89697 0,00000 0,00000 0,00000 0,14937 0,29874 0,1 1,00000 0,1С000 0,07424 0,05347 0,03620 -2,00000 0,40000 -0,01717 -0,02017 -0,02458 df/dx» 0,00С00 -0,20000 -0,14892 -0,12498 -0,10116 11 1,С0000 0,99969 0,00000 0,00000 —0,С0004 0 1 2 3 4 5 2,00С00 1,23171 0,46341 1,17315 1,15068 1,12822 2,00000 2,08537 2,17073 2,09187 1,95052 1,80917 1,40000 0,08598 0,07051 0,08119 4,06195 0,04520 3,60000 0,18344 —1,43574 0,01049 0,01303 0,01443 • -0,40000 0,11365 0,39120 0,14312 0,12529 0,10726 10 1,00000 1,00000 0,00000 0,00000 0,00000
4.5. МЕТОД ДЭЕИДОНА (МЕТОД ПЕРЕМЕННОЙ МЕТРИКИ) 165 а = 0,1 Номер итера- итерации 0 1 2 3 4 5 2,00000 1,20231 0,04624 0,87763 0,88980 0,90197 Хг 0,00000 ' 0,15029 0,30058 0,17267 0,29524 0,41780 f 2,00000 0,08090 0,91856 0,05068 0,03080 0,02527 df/dxt 5,20000 0,41313 —1,91304 —0,03498 —0,04369 —0,05327 df/dx2 —0,80000 —0,17930 . 0,05969 —0,11951 —0,09930 —0,07915 16 0,99998 1,00000 0,00000 —0,00007 0,00001 0 1 2 3 4 5 15 Номер итера- итерации 0 1 2 3 4 5 0,00000 1,34615 1,10945 1,11288 1,11630 1,12316 1,00000 Х\ 0,00000 1,00000 0,57735 0,79793 1,01850 0,902690 2,00000 1,73077 1,77811 1,67069 1,56327 1,34844 1,00000 а хг 0,00090 0,00000 0,00000 0,61859 1,23718 0,91239 1,40000 0,12043 0,041.93 0,03142 0,02358 0,01592 0,00000 = 1,0 / 1,0.1000 1,00000 0,28974 0,04116 0,04027 0,01898 —2,00000 0,73612 —0,02395 0,03336 0,09100 '0,20725 0,00000 df/dxt —2,00000 4,00000 —0,07550 —0,34638 —0,77709 —0,54681 0,40000 —0,01627 0,10945 0,08644 0,06343 0,01739 —0,00000 д!/дхг —0,00000 —2,00000 —0,66667 —0,03620 0,39965 0,19508 12 1,00000 0,99999 0,00000 0,00001 —0,00001 0 1 2 3 4 5 2,00000 1,47059 0,94118 1,41436 1,34695 1,28182 2,00000 2,11765 2,23529 2,13081 1,85927 1,58774 5,00000 0,22348 1,82455 0,18850 0,12224 0,08248 18,00000 1,20577 —5,19804 0,03882 0,44560 0,84726 —4,00000 —0,08996 2,69896 0,27771 0,09193 —0,11064 18 1,0000 1,0000 0,00000 0,00003 —0,00002
166 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Номер итера- итерации 2,00000 1,05246 0,10492 0,68806 0,76492 0,84178 0,00000 0,22295 0,44590 0,30869 0,65920 1,00971 17,00000 0,78548 0,99030 0,12444 0,06075 0,11571 df/dxt 34,00000 3,82943 —1,97268 —0,17049 —0,69688 —1,33035 df/dx2 -8,00000 -1,76944 0,86979 -0,32947 0,14820 0,60224 19 1,00000 1,00000 0,00000 0,00000 0,00000 0 1 2 3 4 5 0,00000 1,00000 0,74536 1,07618 0,82337 0,84033 2,00000 0,00000 0,50929 0,62946 0,53763 0,58380 5,00000 1,00000 0,06698 0,28532 0,05090 0,04047 —2,00000 4,00000 —0,37134 2,42823 0,10883 0,09195 4,00000 —2,00000 —0,09254 —1,05739 —0,28061 —0,24472 15 1,00000 1,00000 0,00000 a = 10 0,00001 —0,00000 Номер итера- итерации 0 5 10 15 20 31 Номер итера- итерации 0 5 10 15 20 0,00000 0,64020 0,62260 0,87107 0,96898 1,00000 *> 0,00000 0,42882 0,30412 0,33948 0,45518 0,00000 0,28513 0,37105 0,73678 0,93026 1,00000 а хг 0,00030 0,10300 0,07507 0,11752 0,18898 f 1,00000 0,2$503 0,14518 0,02142 0,00171 0,00000 = 100 1,00000 0,98055 0,51461 0,43681 0,329999 df/дхг 2,00000 2,47453 —0,34195 0,50513 0,27325 —0,00004 —2,00000 12,7322 0,72813 —1,62956 2,22546 df/dXi 0,00000 —0,49462 —0,33156 —0,43796 —0,17302 0,00002 df/dxt 0,00000 —16,17769 —3,48521 0,45440 —3,64156 74 1,0000 1,00000 0,00000 0,00009 —0,00005
4.6. МЕТОДЫ ОДНОМЕРНОГО ПОИСКА 167 4.6. Методы одномерного поиска Общим для всех рассмотренных нами методов являет- является то, что все оки предусматривают поиок локальных ми- минимумов на последовательности направлений (лучей). Этот поиск является составной частью общей процедуры минимизации. Поиск локального минимума целевой функ- функции /(х) вдоль заданного направления у представляет собой задачу одномерной минимизации. Иначе говоря, мы приходим к задаче линейного поиска, поскольку точки луча можно параметризовать скалярной переменной t. При этом функция представляет собой вещественную функцию скалярной пе- переменной t. В связи с тем, что в большинстве методов широко попользуются алгоритмы линейного поиска, важ- важно иметь возможность выполнять этот поиск просто и эффективно. Некоторые методы не требуют точного определения минимума. Так, например, в методе Розенброка (см. под- параграф 4.7.3) делается шаг предварительно определен- определенной величины в заданном направлении. Цель линейного поиска считается достигнутой, если получено уменьше- уменьшение значения функции. Линейный поиск, применяемый во многих градиентных методах с малым шагом, а также в методе конфигураций, также не имеет целью точное оп- определение минимума. В некоторых методах при определении минимума ис- используется полиномиальная аппроксимация. Например, квадратичная функция определяется тремя точками, меж- между которыми находится точка минимума, и минимум этой квадратичной функции считается найденным, если удовлетворяется критерий сходимости. Вот некоторые из критериев сходимости, т. е. крите- критерии окончания линейното поиска: 1) длина шага меньше заданного значения; 2) разность между двумя оценками значения функции меньше заданной погрешности. 4.6.1. Дифференциальные методы. Если при заданной функции /(х) известны ее вектор-градиент и матрица
168 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Гессе, то, разлагая ф(?) в ряд Тейлора, можно записать Ф (*)~ Ф@) + Ф' @)t + -±-ф"@)г2+ ... = = /(*) + <v/W. У>t + -f <y' Я^Х)У> + • • • Точка минимума t* функции ф(?) при положительно оп- определенной матрице Н(х) приближенно определяется сле- следующим выражением: y, #(х)у>. Подчеркнем, что для вычисления t* необходимо знать вектор-градиент и матрицу Гессе в точке х. Если матрица Гессе отсутствует, но известны вектор-градиент и оценка минимального значения функции, то t* можно оценить следующим образом. Делается предположение, что точка минимума х* лежит на прямой, проходящей через точ- точку х в направлении d, и, следовательно, х* = х + t*d. Далее, разлагая /(х) и (V/(x), d) в ряд Тейлора, получим / (х)« / (х*) + ^! <d, Я (х*) d> D.42) и, .поскольку по предположению v/(x*) =0, , d> « ~i*<d, iy(x*)d>. D.43) Исключая из D.42) и D.43) скалярное произведение <d, #(x*)d>, получим ,* 2[/(х)-/(х*)] ^ <V/(x), d> или, обозначая оценку знаком «крышка», получим для оценки величины t* следующую формулу: 2[7(х*)-/(х)] Г* _ ), d> Оценка, определяемая формулой D.44), требует знания d, т. е. направления на истинный минимум. Так как оценка направления d может оказаться петочиой, т. е. х* мо-жет не лежать в принятом нами направлении, то оценка зна- значения функции /(х*) будет больше истинного минималь-
4.6. МЕТОДЫ ОДНОМЕРНОГО ПОИСКА 169 ного значения. Таким образом, оценка ?*, определяемая формулой D.44), будет превосходить t*. Чтобы предотвра- предотвратить это, Флетчер и Пауэлл A963) рекомендуют заме- заменять t* некоторым ее верхним предельным значением в тех случаях, когда ?*, определяемая формулой D.44), этот предел превосходит. Если известна производная функции ф(?) или, что эк- эквивалентно, — v/(x)> то точку минимума t* можно огра- ограничить двумя постоянными а и Ь, a^t*^b, ф'(а) < О, ф'(Ь) > 0. Эти постоянные а и Ъ можно найти, постепенно увеличивая t при постоянном шаге h, пока производная не станет неотрицательной или пока функция ф (•) не перестанет уменьшаться. Этот процесс можно» ускорить, каждый раз удваивая размер шага, т. е. оценивая функ- функцию ф(?) при t = 0, /г, 2А, 4А, ... 4.6.2. Прямой метод: полиномиальная аппроксимация. В ряде случаев вектор-градиенты или матрицы Гессе ока- оказываются неизвестными или их вычисление связано с большими трудностями. Здесь необходимо осуществлять минимизацию ф(?) другими способами. Перейдем к описанию прямого метода численной ми- минимизации. (Более подробное раосмотрение прямых мето- методов см. в параграфе 4.7.) Изложим метод, согласно кото- которому вначале устанавливаются границы для ?*, а затем ф(?) аппроксимируется квадратичным или кубическим полиномом для представления оценки t*. (В дальнейшем будет рассмотрен другой метод.) Если ф(а) ><р(а') < ср(Ь), а < а' < Ь, то a^t*^b. Эти постоянные а и Ъ можно, как и раньше, найти, уве- увеличивая t до тех пор, пока ф(*) не перестанет умень- уменьшаться. После того как t* ограничено, можно найти полином (квадратичный или кубический), проходящий через оце- оцениваемые точки [хг-, /(хг)], и оценить ?*, отыскивая ми- минимум полинома обычными методами математического анализа. Если ф(?*) оказывается меньше чем ф(а) или ф(Ь), то принимается оценка t*. В противном случае J* используется для уменьшения интервала [а, Ь] до [а, t*] или [t*, b]\ в зависимости от условий, и на этом умень- уменьшенном интервале производится новая интерполяция. Опишем теперь этот метод более подробно.
170 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ На луче, исходящем из точки х в направлении dT следующим образом определяется минимум путем ап- аппроксимации функции /(х + td) квадратичной функцией от t: (I) Вычислить /(х) и /(x + ^id), где t\— заданная настоявшая. (Па) Если /(х) < /(x + *id), вычислить f(x — t\d). (Иб) Если /(х) >/(x + ^d), вычислить /(x + 2^d). (III) Обозначить эти три значения функции через /(x + fld),/(x + bd) n/(x + cd). (IV) Аппроксимировать функцию/(х + *d) полиномом /(х + td) « а0 + ait + a2t2, D.45) где «о, ai, a2 определяются из уравнений /« = / (х b - а0 Далее t* оценивается из условия min/(x-|-?d) = /(х4- t + ?*d). Вычисляя минимум квадратичной формы D.45), найдем, что1 (fl2 _ b2) f 1 1 1 г fb /с а2 Ь2 с2 / / / 1 1 1 а Ь с ib _ С2) f + (C2 _ fl2) при условии существования минимума, которое может быть записано в виде Поскольку /М = а0, /(х a2g2, то ^* можно записать в виде D.4В)
4.6. МЕТОДЫ ОДНОМЕРНОГО ПОИСКА 171 (Va) Если G&2 < 0 или |?*| > mt\, где т — фиксиро1- ванная постоянная (максимально допустимое число ша- шагов), сделать т шагов в направлении уменьшения /(х). (V6) Критерий приемлемости t* заключается в сле- следующем. Если один из шагов от а, Ъ или с до предпола- предполагаемой минимальной точки х + t*d меньше заданного зна- значения, то предполагаемая точка минимума принимается в качестве минимума. В противном случае вычислить /( + d) ( (VI) Повторять предварительное определение миниму- минимума квадратичной аппроксимации в направлении d, пока с требуемой точностью не будет определен минимум. Как видно из D.46), после того ка<к вычислено аг по трем значениям функции, для продолжения одномерно- одномерного поиска в прежнем направлении d необходимо вычис- вычислить только одно новое значение функции /(x + ^d). 4.6.3. Прямой метод: метод Фибоначчи. Существует еще ряд методов одномерного поиска, как, например, метод Фибоначчи, метод золотого сечения, метод деления пополам {дихотомия) и др. Подробное изложение этих ме- методов см. у Уайлда A964) и Уайлда и Бейтлера A967). В качестве примера рассмотрим метод Фибоначчи. Этот метод сложнее описанного в предыдущем параграфе, од- однако, с другой стороны, может оказаться, что при его при- применении потребуется оценивать меньшее количество точек на заданном направлении. Метод применим, когда минимизируется унимодальная функция скалярной переменной, и известно, что на ко1- нсчном интервале по ^ t < bo существует минимум. Та- Такой интервал можно найти с помощью метода грубого поиска, например, удвоением интервала, когда <р(«) по- последовательно вычисляется в точках ао, яо + h, по + 2h, ао + 4Д, .., при фиксированном h до тех пор, по.ка функция не начнет возрастать. Предварительно должно быть определено об- общее число TV точек, в которых производится вычисление. Как будет показано ниже, это число может быть опре- определено на основании требований точности. Предположим, что после нескольких шагов интервал неопределенности, который вначале был равен [aoi bo], уменьшился до [ак, Ьк]. При этом выбираются две точки,
172 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ tk и t^ определяемые следующими равенствами: 1— к 1—ft где JP ___ Тр | Тр 77 ___ 77 ___ Л г / Т74 \ Если ф(^)<ф(А)> то следующий интервал неопреде- неопределенности берется равным [ак+\, Ьк+\] = [лл»*л]> а если Ф(*л)>ф(*а), то [afc+i, 6k+i] = [tk, bh]. Если ф(^) = = ф(*а), то в качестве сле!дующсго интервала можно взять либо [afc, tk], либо [*л,&л]» поскольку оба ин- интервала обладают одинаковой длиной [bh—tk= th — o.h) (см. рис. 4.10). Последние точки определяются следую- следующим образом: и где 8 — произвольное малое положительное число. Это число введено в последнюю итерацию, чтобы определить интервал, содержащий минимум. Если ф(^—i) <ф(^—1)> то минимум лежит в интервале [а#—i» Jjv—ij« В против- противном случае минимум ле- лежит в интервале [tN-\, Таким образом, дли- длина последнего интерва- интервала неопределенности приблизительно равна (bN-\ — aN-\)/2. Числа Fh, определяемые рскур- у 'д л " рентным уравнением Рис. 4.10. Метод Фибоначчи. (Е)> называют числами Фибоначчи. Это и опре- определило наименование метода. Можно показать, что при заданном числе точек, в которых производится оцеиива-
4.6. МЕТОДЫ ОДНОМЕРНОГО ПОИСКА 173 ние, поиск Фибоначчи является оптимальным в опреде- определенном точном математическом смысле (в смысле мини- минимизации максимально возможного интервала неопределен- неопределенности, в котором лежит минимум функции ф@)*)« [См. Кифер A953) и Джонсон A956).] Одна из двух то- точек, в которых производится вычисление, всегда лежит внутри уменьшенного интервала и служит одной из точек, в которых производится вычисление при следующей ите- итерации. Таким образом, если не считать начальной итера- итерации, каждая итерация требует только одну дополнитель- дополнительную точку. Величина последнего интерзала равна **) Ьи — aN = ^f (Ьо — а0) + е, где, например, FiQ = 89, Fn = 144, F20 = 10 946. Таким образом, если желательно уменьшить послед- последний интервал неопределенности до величины порядка од- одного процента от длины исходного интервала, то надо принять TV = 11. (Подробности и таблицы чисел Фибо'нач-. чи см. у Уайлда A964).) Известно также, что Fh-i/Fk+l-+ 0,382, FJFh+l-+ 0,618 при к-+оо. Таким образом, можно пользоваться следующей прибли- приближенной формулой: tk = 0,382F, -ак) +ah, t'k = 0,618 (bh-ah) + ak. Заметим, что ?z^e6J^= 0,618 bh-ak bk-ah и что bk — tk=tk — ак. Достоинством этого метода является то, что он не ¦) Это справедливо для класса унимодальных функций. Для более узких классов функций (например, выпуклых гладких) су- существуют и более быстро сходящиеся методы. (Прим' ред.) **) Если взять 8 равным нулю и не добавлять точки при вы- вычислении последнего интервала, то в выражение для последнего интервала будет входить FN+i вместо 2FN. Заметим, что l/F l/2F Л^2
174 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ требует предварительного определения числа точек, в которых производится оценивание. Метод поиска, использующий эту формулу, называют методом золотого сечения (см. Уайлд A964) или Спенг A962)). 4.7. Метод прямого поиска Рассмотрим методы минимизации, в которых исполь- используются только значения функции и не используются вектор-градиенты или матрицы Гессе. Таким образом, эти методы относятся к группе (I), упомянутой в на- начале этой главы. В тех случаях, когда градиенты или матрицы Гессе могут быть легко вычислены, прямой ме- метод оказывается, вообще говоря, менее эффективным, чем методы групп (II) и (III). Однако в ряде случаев пря- прямые методы являются единственными практически при- применимыми. Например, если функция /(х) имеет разрывы, первой производной, то методы группы (III) оказывают- оказываются неприменимыми. Если /(х) задана не в явном виде, а системой уравнений, относящихся к различным подси- подсистемам некоторой системы (это как раз имеет место при построении моделей реальных систем или процессов), то аналитическое или численное определение производных становится очень сложным или даже невозможным. И в этом случае методы групп (II) и (III) неприменимы. Дру- Другим случаем, когда методы группы (I) (особенно метод случайного поиска, описанный в подпараграфе 4.7.5) могут конкурировать с методами других групп, является случай, когда функция /(х) обладает несколькими локаль- локальными экстремумами. 4.7.1. Метод конфигураций. В 1961 году Хук и Дживс предложили эвристический метод гс-мерного прямого по- поиска, называемый методом конфигураций (см. перечень алгоритмов в конце книги). Этот метод вначале обследует окрестность выбранной точки х° (например, изменяя по одной или по несколько значений компонент вектора х°). После того как найдено приемлемое направление, в этом направлений производятся вычисления функции при по- постепенно увеличивающемся шаге (тем самым устанавлива- устанавливается конфигурация или тренд поиска). Это продолжается до тех пор, пока поиск в этом направлении продолжает
4.7. МЕТОД ПРЯМОГО ПОИСКА 175 приводить к точкам х с меньшим значением функции /(х). Когда в направлении установленной конфигурации не удается найти точку с меньшим значением функции, раз- размер шага уменьшают. После нескольких последователь- ных сокращений размера шага от принятой конфигурации отказываются и предпринимается новое обследование ок- окрестности. Таким образом, согласно этому методу делаются по- попытки найти направление оврага целевой функции, с тем чтобы двигаться по такому оврагу. Достоинством метода является то, что он позволяет поиском во время фазы об- обследования восстанавливать направление движения вдоль оврага в тех случаях, когда вследствие искривления ов- оврага установленная ранее конфигурация теряется. Приме- Применение этого метода обычно оказывается более успешным, чем применение метода Розенброка, описываемого1 в под- параграфе 4.7.3. Как следует из этого краткого описания, метод прост для программирования. Отметим, что метод не 'имеет строгого обоснования. Отметим также, что размер шага мо- может быть различным для различных компонент вектора х. Метод Розенброка можно рассматривать как вариант метода конфигураций, в котором фаза обследования ме- метода Хука и Дживса заменена систематическим поиском вдоль п взаимно ортогональных направлений. Метод конфигураций обладает еще следующими воз- возможными преимуществами перед более сложными мето- методами прямого поиска и методами групп (II) и (III): 1) Он не требует знания целевой функции в явном виде. Это является существенным достоинством в слож- сложных технических и экономических задачах, в которых си- система может описываться рядом связанных между собой уравнений подсистем, ш которых составлена вся система в целом. Метод конфигураций требует лишь описания динамики подсистем и связей между ними. 2) При этом методе легко могут быть учтены ограни- ограничения, накладываемые на отдельные переменные, так же, как и сложные ограничения, накладываемые на область поиска, как, например, нерегулярные границы и изолиро- изолированные запрещенные области. Имеются сообщения о том, что метод конфигураций с успехом применялся для решения задач в самых
176 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ различных областях, как, например, химические реакторы и электромеханические устройства. Недостаток метода конфигураций заключается в том, что оя может «застревать», т. е. он может остановиться вблизи локального минимума, будучи неспособным обеспе- обеспечивать дальнейшее улучшение. Избежать этого можно только путем значительного усложнения стратегии фазы обследования. Особенно это относится к случаям, когда поверхности постоянного значения целевой функции обла- обладают острыми углами или очень изогнуты. Однако, спра- справедливости ради, надо вспомнить, что некоторые гради- градиентные методы (особенно методы с малым шагом) также могут приводить к подобным затруднениям. Рассмотрим f(xf,z2)-CB а) б) Рис. 4.11. а) Прямой метод приводит к улучшению х°. б) Прямой метод не приводит к улучшению х°. случай, иллюстрированный рисунком 4.11, а. Шаг из точ- точки х° в точку х1 в направлении х\ не приводит к умень- уменьшению значения целевой функции. Если уменьшить вдвое шаг, то получим точку х2 с меньшим значением функции. Аналогичный результат дает направление Х2. Рассмотрим теперь случай, представленный на рис. 4.11, б. Каким бы малым ни брать шаг в направлении х\ или #2, в этом случае нельзя получить уменьшения значения функции. Таким образом, этот простой метод конфигураций в данном случае «застревает» в точке х°. 4.7.2. Релаксационный метод. Простой метод конфигу- конфигураций, согласно которому поиск минимума производится
4.7. МЕТОД ПРЯМОГО ПОИСКА 177 изменением одной компоненты вектора х при неизменных остальных, называется релаксационным методом*). Так, при минимизации функции f(x\, #2, • •., хп) i-я компонен- компонента вектора х при к + 1 итерации получается путем опре- определения ruin //V+1 r*+1 rk + i r rh t ih\ ПИП / \X\ , X2 , ..., %\ — l, ^b #i+l» •••> an)- xi Первая, вторая, ..., п-я компоненты варьируются цикли- циклически. В параграфе 4.1 было показано, что при выборе нормы ||х|| — maxl хц 1<г<п вектор-градиент имел только одну ненулевую составляю- составляющую. Поэтому релаксационный метод можно рассматри- рассматривать как градиентный метод с указанной нормой. При целевых функциях некоторого вида релаксационный ме- метод может обеспечить простой и эффективный путь опти- оптимизации. Например, ясно, что при /(*!,•..,**)= Hfi(Xi) D.47) минимальная точка может быть найдена поочередным изменением переменных, т. е. с помощью метода конфигу- конфигураций простейшего из возможных типов, при котором ок- окрестность обследуется поочередным изменением пере- переменных. Задачи нелинейного программирования этото типа на- называются задачами сепарабельного программирования. Когда все функции /(•) выпуклы, задачи называют вы- пуклым сепарабелъным программированием. Эти задачи решаются относительно легко. К сожалению, однако, мно- многие практически важные задачи не принадлежат к этому классу. В некоторых случаях, соответствующим образом фор- формулируя задачу или вводя в задачу ряд преобразований, целевую функцию, не принадлежащую к типу, определяе- определяемому уравнением D.47), можно успешно минимизировать релаксационным методом, если освободиться от связи между переменными. При осуществлении этого говорят, *) См. сноску на стр. 116 ц 126. (Прим. ред.)
178 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ что задача решается релаксационным методом с декомпо- декомпозицией переменных. Этот путь применялся для решения некоторых типоь нелинейных уравнений в частных производных. (См., на- например, Ж. Се а A964).) Однако рассмотрение этих при- применений выходит за рамки настоящей книги, пооколью для их понимания требуется знание функциональногс анализа. Вместо этого в главе 8 будет рассмотрен один частный случай решения задачи распределения ресурсов. 4.7.3. Метод Розенброка. В 1960 г. Розенброк предло- предложил прямой метод поиска, согласно которому в каждое цикле производится поиск вдоль п взаимно ортогональных направлений. Это подобно фазе обследования Хука и Дживса. Если, например, целевая функция имеет узкиг искривленный гребень, то поиск по п взаимно ортогональ- ортогональным направлениям эффективен тем, что результирующее направление стремится расположиться вдоль осп овраге Метод в первоначальном виде содержал очень просто*, линейный поиск. Отыскивается не минимум в заданно*, направлении, а просто точка с меньшим значением функ- функции. Если шаг в данном направлении приводит к меньше- меньшему значению функции (это называют успехом), то ж этой точки делается новый, в а раз больший шаг, где а — постоянная величина, большая 1, и регистрируется успех Если шаг приводит к увеличению значения функции, тс этот шаг признается неудачным и шаг умножается m другую постоянную, —р, 0 < Р < 1, и фиксируется не- неудача. Далее поиск производится в следующем направлр нии, в направлении, ортогональном ко всем предыдущим Эта процедура повторяется до тех пор, пока на каждом направлении по крайней мере одна проба не окажется ус- успешной и одна — неудачной. Это завершает один цикл Иначе это можно выразить так. Пусть аг — результи- результирующее расстояние (алгебраическая сумма), на которое мы продвинулись в ?-м направлении d\ Рассмотрим г>э- венство 'аг а, • • • а," 0 а2 : 0 0 0 . . . ап
4.7. МЕТОД ПРЯМОГО ПОИСКА 179 Таким образом, qn представляет собой вектор, соеди- соединяющий точку, в которой мы находимся в начале теку- текущего цикла поиска, с точкой, в которую мы попадаем к концу текущего цикла поиска. Надо ортогонализировать теперь с помощью процеду- процедуры Грама — Шмидта векторы q1, . . ., qn для получения п новых ортогональных направлений. Для этого в качестве нового (Г (первого направления нового цикла) примем qn (так как это направление располагается вдоль предпола- предполагаемого гребня функции). После того как произведен поиок по п начальным ортогональным направлениям и достигнута точка хп из начальной точки х°, в качестве первого из п ортогональных направлений следующего цик- цикла берется направление хп — х°. Этот процесс повторяется, пока не будет удовлетворен критерий сходимости. . 47.4. Метод Пауэлла. Из рассмотрения градиентных методов следует, что, когда поиск производится по взаим- взаимно сопряженным направлениям, при квадратичной функ- функции поиск заканчивается не более чем за п шагов. Поиск согласно методу Пауэлла производится таким образом, что при квадратичной функции /(х) поиск минимума этой функции в конечном счете производится в направлениях, которые являются «взаимно сопряженными. При неквад- неквадратичной функции /(х) направления поиска оказываются сопряженными относительно матрицы, аппроксимирую- аппроксимирующей матрицу Гессе функции /(х). Основное отличие этого метода от метода Розенброка состоит в том, что 1) совершенствуется линейный поиск, который теперь локализует действительно минимум, а не точки с меньшими значениями функции, и 2) поиск производится вдоль сопряженных, а не ортогональных направлений. Из дальнейшего будет ясно, что1 этот метод использует информацию о вторых частных производных целевой функции. Таким образом, вблизи точки минимума он об- обладает квадратичной скоростью сходимости. Поскольку при определении направления поиска учитывается ло- локальная кривизна функции, можно ожидать, что» сходи- сходимость в точках, удаленных от минимума, также будет удовлетворительной. Метод основывается на следующей особенности. Лю- Любая прямая, которая проходит через точку минимума
180 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ квадратичной формы пересекает под равными углами поверхности постоянного значения этой квадратичной формы (см. рис. 4.12, иллго- # + аГК + х TQx/2 = const QT=Q>0 стрирующии двумерный случай). Из этого следует что если два минимума х1 и х2 расположены на двух па- параллельных направлениях d, то минимум квадратич- квадратичной формы нужно искать на направлении х1 — х2. Это направление являет- является (^-сопряженным к d, поскольку dV = 0, i = 1, 2, где Рис. 4.12. Принцип метода Па- Г1' = V/(xl) = а + Qx\ уэлла. В то'м, что векторы d и х1 — х2 являются (^-сопряженными, можно легко убедить- убедиться вычитанием 0 = dT(r1-r2)= dT(?(x1~x2). Направления поиска определяются следующей про- процедурой. Обозначим начальную точку через х°. (I) Вначале в качестве d1, d2, ..., dn взять направле- направления п координат, т. е. d*=e\ где е*= @,..., 0, 1, 0,.., 0)т. (II) По известным d1, ..., dn найти U, которому соот- соответствует минимум /(х1' + и&). Определить х* = х*—1 + Ud\ i = l,..., п (III) Взять новое направление d = xn — х° и заменить направления d1, ..., dn на d2, ..., dn, d, присвоить этим направлениям обозначения d1, ..., dn. (IV) Минимизировать /(xn -f- tdn) и заменить х° на xn + t*dny где t* есть найденное значение t, соответствую- соответствующее минимуму. Принять эту точку в качестве х° для сле- следующей итерации. Перейти к (II).
4.7. МЕТОД ПРЯМОГО ПОИСКА 181 Результат этой процедуры заключается в поочередной замене принятых вначале координатных направлений поиска. При квадратичной форме после п шагов все на- направления поиска окажутся взаимно сопряженными. Это можно показать следующим образом. Пусть Предположим, что последние к направлений из {di, d2, ..., ..., dH} являются (^-сопряженными (после к итераций). Конкретно, будем считать, что ^-сопряженными являются направления d№~fc+1, AП~Л+2, ..., d\ Следовательно, началь- начальная точка х°(/с + 1)-й итерации является точкой миниму- минимума функции /(х) в подпространстве, натянутом на эти (^-сопряженные направления. Это следует из леммы пара- параграфа 4.2 и видно непосредственно. Предположим, что d1, ..., dl (^сопряжены. Тогда (ti(A\ Q* + d> + t\ <d*f (? Члены со взаимными произведениями обращаются в нуль в соответствии с предположением о (^-сопряженности. Таким образом, определение минимумов относительно t\, ..., ti моя^ет производиться независимо одно от другого. Из этой же леммы следует также, что определяемой в (й + 1)-й итерации точке хп соответствует хп — х°, сопря- сопряженное к dn~k+\ ..., dn. Таким образом, отпуская d1 и добавляя хп — х° к направлениям поиска, мы получим к + 1 взаимно (^сопряженных направлений. Следователь- Следовательно, после п итераций все направления поиска оказывают- оказываются взаимно (^-сопряженными. Существует метод, более простой, чем метод Пауэлла, но более сложный, чем метод Розенброка. Его предложили Дэвис, Сванн и Кэмпи. Согласно этому методу произво- производится поиск п взаимно ортогональных направлений, как и в методе Розенброка, но используется линейный поиск для локализации точек минимума. 4.7.5. Метод случайного поиска. Перейдем к рассмот- рассмотрению прямого метода, существенно отличающегося от
182 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ всех остальных методов, рассматриваемых в данной кни- книге. Своеобразие данного метода заключается в том, что он не является полностью итерационным. Во всех методах, кроме метода случайного вожжа, следующие точки определяются ранее полученными зна- значениями функции, а также вектор-градиентов или матриц Гессе. Вледствие этого указанные методы в областях, где трудно ожидать наличие экстремума, как правило, не предусматривают вычисления значений функции. Таким образом, если они вообще работают, то работают эффек- эффективно. В то же время следствием является и то, что при этих методах не исключены случаи «застревания» в точ- точках, не я-вляющихся оптимальными. Это относится как к прямым методам, так и к градиентным. Методы, основанные на использовании последователь- последовательного поиска, могут оказаться вовсе непригодными при сложных функциях, обладающих большим числом ло- локальных экстремумов. Одна из возможностей, позволяющих избежать «за- «застревания», заключается в оценке функции в ряде не свя- связанных между собою точек. Подобные методы мы называ- называем методами случайного поиска, поскольку выбор точек в области определения целевой функции осуществляется случайным образом. Вероятность осуществления поиска в некоторой части области определения функции зависит от априорного знания возможного расположения опти- оптимальных точек. Когда такое априорное знание отсутству- отсутствует, принимается одна и та же вероятность для всей обла- области, так что ни одна часть области не получает предпоч- предпочтения. Одним из применений, где метод случайного поиска может оказаться эффективным, являются задачи с дис- дискретными переменными (т. е. задачи целочисленного про- программирования). Задачи оптимизации с дискретными пе- переменными и смешанные задачи, с дискретными и непре- непрерывными переменными, следует отнести к числу наиболее трудных. Хотя в книге не рассматривается сколько-нибудь подробно этот класс задач, тем не менее полезно описать некоторые задачи этого типа, так как это позволяет по- показать важность субоптимальных решений и случайного поиска. Задача проектирования соединений, упомянутая в главе 2, является примером комбинаторной задачи опти-
4.7. МЕТОД ПРЯМОГО ПОИСКА 183 мизации. Другихми примерами являются задачи назначе- назначения и задача коммивояжера. Комбинаторные задачи характеризуются очень боль- большим числом допустимых решений, что делает невозмож- невозможным прямой перебор. Возьмем, например, задачу назначе- назначения п лиц на п работ, имея целью получить максимум целевой функции, достигаемый на всех возможных назна- назначениях. Число допустимых решений равно п\. Это слиш- слишком большое число, чтобы можно было осуществлять пе- перебор даже при относительно малом пу например при п = 100. Число допустимых решений в так называемой задаче коммивояжера равно (лг — 1) !/2, где п — число городов, в которых коммивояжер должен побывать один и только один раз. Другое свойство, характерное для некоторых комбина- комбинаторных задач, заключается в том, что их целевая функция ие обладает резко выраженным экстремумом. При этих условиях приходится пробовать различные эвристические методы, которые ограничивают область поиска оптималь- оптимального решения не слишком большим подмножеством до- допустимых решений. Этот подход дает хорошие шансы ло- локализации решения вблизи оптимума, если экстремум целевой функции не является резко выраженным. Это наблюдалось на опыте применения этого подхода к так называемой задаче размещения-распределения (Купер, 1964), которая является обобщением рассмотренной в главе 3 задачи размещения и формулируется следующим образом: при заданных п стоках и т источниках размес- разместить т источников так, чтобы минимизировать сумму расстояний от этих источников до п стоков. При т — 1 задача размещения-распределения сводится к простой задаче размещения, так как в этом частом случае отпа- отпадает связанная с комбинаторными трудностями часть задачи, относящаяся к распределению (анализ задачи размещения см. в главе 3). Если размещение источников известно, то задача определения оптимального распределе- распределения стоков по источникам становится тривиальной. С другой стороны, если дано распределение стоков, то опре- определение размещения источников является обычной зада- задачей минимизации того типа, который рассматривался в главе 3. Основная трудность заключается в том, что оп- оптимальное распределение априори неизвестно, а попытка
134 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ осуществить перебор всех возможных распределений об- обречена на неудачу даже при использовании самых сов- современных цифровых машин. Один из методов, который можно считать наиболее практичным, предусматривает случайный выбор стоков и произвольное совмещение их с источниками, после чего каждый из стоков распределяется по источникам при минимуме целевой функции. (Это решение можно улуч- улучшить путем изменения размещения источников при неиз- неизмененном распределении стоков по источникам). Сущест- Существует ряд других задач, которые успешно решаются мето- методами, предусматривающими случайный поиск или слу- случайный выбор. Для решения задач, для которых отсутствуют эффек- эффективные алгоритмы отыскания лучшего решения, Лин A965) предлагает разработанную методику, заключаю- заключающуюся в следующем. На основании некоторых локальных соображений, которые легко реализовать, вырабатывается ряд локальных оптимумом (субоптимальных с глобальной точки зрения) таских, что из них с достаточной вероят- вероятностью может быть выбрано оптимальное решение. Эти локальные оптимумы, естественно, можно получить очень быстро. Имеющиеся сообщения о результатах решения с помощью ЦВМ задачи коммивояжера подтверждают возможность получения очень близкого к оптимальному решения на основании выборки, содержащей менее одного процента допустимых решений. Таким образом, если р есть вероятность того, что неко1- торый локальный оптимум является глобальным оптиму- оптимумом, то после получения решений для к таких локальных оптимумов вероятность отыскания оптимального решения среди этих к локальных решений можно приближенно1 оценить величиной q = 1 — A — p)k. Например, при /? = ОД q равно 0,9 для к = 22 и 0,99 для к = 44 (см. Брукс A958), Спенг A9G2) или Уайлд A964), где даны таблицы д, вычисленные для различных комбинаций рик). При р = 0,01 9 = 0,9 для к = 230, q = 0,99 для к = 459. Предыдущие соображения показывают, что этот путь поиска глобального оптимума пригоден также и в случае некомбинационных задач. Эти соображения показывают также, что число вычислений, необходимых для определе-
4.7. МЕТОД ПРЯМОГО ПОИСКА 185 ния оптимальных решений, должно относительно мало зависеть от размерности п вектора х, поскольку можно ожидать, что получение локальных аптимумов не пот- потребует полной ^мерной оптимизации. Этим метод случай- случайного поиска существенно отличается от неслучайных ме- методов, при которых объем вычислений, по-видимому, ра- растет нелинейно -с увеличением размерпости вектора х' со скоростью, большей, чем при случайном поиске. Публика- Публикации о некоторых исследованиях как будто бы подтверж- подтверждают это предположение (ом., например, Тсудаи Кио- но A964), Шумер и Штайглиц A968)). Однако, исходя из других соображений, можно прий- прийти к противоположному заключению. Например, Спенг указывает следующее. Предположим, что положение ми- минимума в гс-мерном гиперкубе |^<|^а, i = 1, ...,/г, рав- равновероятно. Если каждая компонента тг-мерного вектора х должна быть определена с равной точностью а/а, не зави- зависящей от п, то вероятность того, что случайна выбранная точка скажется в малом гиперкубе, содержащем точку минимума, будет равна р= (а/а)\ Таким образом, вероятность того, что по меньшей мере одна из к случайно выбранных точек попадет в такой гиперкуб, равна При заданных рид & = log(l-?)Aog(l-p). Ограничиваясь очень малыми значениями р и разла- разлагая знаменатель по степеням /?, можно записать к Ж —log{l — q)/p = — (a/a)"log(l — q). Отсюда следует, что при одинаковой точности по каж- каждой переменной число точек с увеличением размерности п растет по экспоненте. С другой стороны, если считать р постоянной, не зависящей от п, то к не будет зависеть от п. По-видимому, для многих задач истина лежит где-то посредине между этими крайними случаями. Надо учесть, что для многих задач оптимизации боль- большой размерности больший интерес представляет ошибка
186 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ минимизации /(х) — /(х*), а не х — х*. Например, может представлять интерес получение какого-то параметра си- системы, характеризующего ее качество, отличающегося не более чем на 10% от оптимального значения этого пара- параметра. Если эта цель достигнута, то нас может не беспо- беспокоить то, что отдельная компонента вектора х не очень близка к соответствующей компоненте вектора х*. Как указывалось ранее, это особенно справедливо для задач с нерезко выраженным экстремумом. Интересный вариант метода случайного поиска был предложен Чичииадзе (Чичинадзе, 1969). Он улучшил случайный поиск с помощью так называемой г|)-функции. Эта функция г|)(?) определяется той частью точек х в до- допустимой области S задачи, для которых /(х)^?. Прак- Практически эта функция вычисляется следующим образом. Осуществляется случайный выбор точек и вычисляется отношение точек, для которых /(х)^ ?, к общему числу точек х е S. Котда случайная выборка точек производит- производится очень быстро, точки, оказывающиеся вне 5, просто от- отбрасываются (т. е. не теряется время на то, чтобы отыс- отыскать направление, по которому надо их сдвинуть, чтобы они оказались в допустимой области). Затем по несколь- нескольким значениям ? наносится график я|)(?) и с помощью экстраполяции находится ?*, для которого -ф(?;*)=0. Яс- Ясно, что это значение ?* является приближенным значени- значением максимума функции /(х) с отраничениями. Чтобы найти приближенное значение х*, можно осу- осуществить локальный поиск точки х, которой соответствует наибольшее значение функции /, т. е. найти локальный максимум. Если соответствующее значение функции со- согласуется с ?*, полученным ранее путем экстраполяции значений функции г|)(?), то тем самым будет найдено е* = /(х*). Можно дать вероятностный анализ погрешности этого метода (подробности см. в статье Чичинадзе). Вообще го- говоря, дисперсия ошибок обратно пропорциональна корню квадратному из общего числа точек в S. 4.7.6. Другие методы. Ряд прямых методов поиска не рассматривался в данном разделе. Среди этих методов надо назвать симплекс-метод Спендли, Хекста и Хинсвор- та (Спепдли и др., 1962) и его модификацию, пред- предложенную Недлером и Мидом (Недлер и Мид, 1965).
ЗАДАЧИ 187 В первом из этих методов определение следующих то- точек основывается только на том, больше или меньше не- некоторые значения целевой функции некоторых других значений этой функции. Таким образом, он представляет собой методику, подходящую к случаю, когда в вычислен- вычисленных значениях целевой функции имеются существенные случайные ошибки. (Существуют различные статистиче- статистические трактовки случайных ошибок. Рассмотрение случай- случайных ошибок, вносимых при вычислении функции, выхо- выходит за рамки данной книги.) Эксперименты Бокса (Бокс, 1966) как будто бы показывают, что метод Нед- лера и Мида определяет хороший алгоритм только для оптимизации точных значений функций малого числа пе- переменных. ЗАДАЧИ 1. Пусть при произвольном х° оптимальным градиентным мето- методом получены х1 и х2. Показать, что при поиске вдоль направле- направления, соединяющего х° и х2, точка минимума может быть достигнута за один шаг, если целевая функция задана выражением D.4) при п = 2. 2. Убедиться в том, что при целевой функции, определяемой D.4), вектор х1 — х° ортогонален к rl = Qxl. 3. Показать, что вектор, соединяющий начало с точкой (х, у) эллипса (х2/а) + (у2/Ь) = 1, a, b > 0, является ^-сопряженным с касательной к эллипсу в точке (х, у), где Q = diag (I/a, lib). При- Принять а = 1, b = 2, х° = A/}'2, 1)т. Вычислить х1 и х2 методом со- пряженпых градиентов. 4. Убедиться, что Цх [!Q = (хт(?хI/2, <?т удовлетворяет трем свойствам нормы. 5. Решение алгебраического уравнения Ах = Ь, где Л — сим- симметричная положительно определенная (п\п)-матрица, может быть найдено как решение задачи минимизации (без ограниче- ограничений) следующей функции: /(х) = Минимизация функции /(х) градиентным методом приводит к по- последовательности точек {хг}, определяемых следующим образом: = хг _ t.vit Щ где г* = Ах1 — Ь. (В) и где ti — некоторый неотрицательный скаляр. Выбор скаляра ti оптимальным градиентным методом был рассмотрен в иарагра фе 4.1.
188 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ Предположим, что все время используется неизменная велп- чпна t, т. е. вместо (А) теперь х<+1 = х* — tv\ (С) где t — постоянная. Подставляя далее (В) в (С), видим, что этот модифицированный градиентный метод определяет точки х* соглас- согласно уравнению xi+I = (/ — tA)xi + th. Таким образом, Ux'+i - х'Ц = || (/ - tA) (x' - x*-1) || ^ ^ ||/ - tA\\ ||x« - x'-'Ц ^ II/ ~ tA\\* Их1 - x°||. 1) Показать, что эта итеративная схема сходится, если 2) Отметим, что ||/— L4||2 равно наибольшему собственному значению матрицы (I — tAJ. Какое надо выбрать t, чтобы полу- получить минимум этой нормы? 6. Целевая функция квадратична и равна xTQx. Пусть итера- итерационный метод параллельных касательных определил три сосед- соседних точки х2*-2, х2к~1 и х2*. Показать, что направление x2/i — х2к~2 является ^-сопряженным с х2к — х2к~К Сравнить итерационный метод параллельных касательных с методом сопряженных направ- направлений. 7. Доказать, что множество ^-сопряженных векторов лп- нейно независимо. (Напоминаем, что по определению @-сопря- женных векторов матрица Q положительно определена.) Справед- Справедливо ли это заключение, если в квадратичной форме, определя- определяющей ^-сопряженные векторы, взять положительно полуопре- полуопределенную Q? То же при произвольной Q? 8. Показать, что если симметричная (п X п)-матрица Q имеет п различных собственных значений, то соответствующие соб- собственные векторы являются (^-сопряженными. 9. Для заданного множества ^-сопряженных векторов di, ... ..., dn, где Q — симметричная положительно определенная (п X п)~ матрица, представить любой гс-мерный вектор в виде линейной комбинации векторов dj, ..., dn. 10. Используя результат предыдущей задачи, показать, что 11. Получение ()-сопряженных и ортогональных векторов. Ранее было описано получение последовательностей {d'*}, {rH a {xh} с помощью уравнений D.10) — D.14). Показать непосред- непосредственным вычислением, что {г*} получается ортогопалнзацпей векторов г°, Qd°, Qdl, ..., (?dk и что {dk} получается путем по- построения из векторов г°, г1, ..., гк ^-сопряженных векто- векторов. Другими словами, на основании требований, предъявля- предъявляемых при получении ^-сопряженных и ортогональных векторов
ЗАДАЧИ 189 соответственно, определить коэффициенты а п Ъ в уравнениях 7—1 di=_r*+ 2 *,А 1 = 1....A do^-ro, Показать, что требования, предъявляемые процедурой получения ^-сопряженных и ортогональных векторов, могут быть выражены уравнениями D.10) и D.14) и что {гк} является последователь- последовательностью значений вектор-градиептов в точках {х**}, определяемых согласно D.12). 12. Поиск минимума функции xTQx производится вдоль п направлений ^-сопряженных векторов d1, ..., dn. Имеет ли зна- значение порядок обхода этих направлений? Есть ли необходимость осуществлять поиск в одном и том же направлении более одного раза? Полагать, что линейный поиск точно фиксирует минимум. 13. Выбрать несколько квадратичных и неквадратичных функ- функций. Минимизировать эти функции по меньшей мере тремя раз- различными методами. При каждом методе исходить из нескольких различных начальных точек. Испробовать функции с линиями постоянного значения, близкими к окружности, а также с резко искривленными линиями постоянного значения, образующими уз- узкие долины (гребни) (см. в главе 7 примеры функций). Испро- Испробовать различные п, например, п = 3, 5, 10, 20, 50, 100. Обратить внимание, как эти методы теряют эффективность при больших п. Попробуйте применить к той же задаче метод конфигураций и случайный поиск конфигураций при малых и больших п. Полез- Полезло выбрать симметричную положительно определенную матрицу Q и попробовать хтх а также сравнить точку минимума х и минимальное значение функции с наименьшим собственным значением и собственным вектором матрицы Q. Испытать различные матрицы с большим и малым числом обусловленности *). 14. Рассмотреть f(x) = хъ — х. Осуществить поиск минимума функции j(x) на [0,1], используя всего четыре точки. *) Находятся суеверные люди, которые боятся числа «13». Ав- Автор книги, по-видимому, постарался так составить задачу № 13, чтобы этот страх имел известные основания. Хотя переводчик и далек от мысли, что читателю удастся решить эту задачу в пол- полном объеме, даже получив достаточно машинного времени, темпе менее представлялось целесообразным сохранить ее в переводе книги. Даже решение части задачи и обдумывание организации решения остальной части принесет читателю несомненную поль- пользу. {Прим. перев.)
190 ГЛ. 4. МИНИМИЗАЦИЯ ФУНКЦИЙ БЕЗ ОГРАНИЧЕНИЙ а) Применить метод поиска Фибоначчи. Каков интервал неопре- неопределенности, в котором лежит минимум? Какова его длина? Срав- Сравнить результаты размещения трех точек плюс одной последней точки при 8>0 с размещением всех четырех точек при е =0. б) Применить вначале размещение двух точек при *-A-е)/2 и х— A + е)/2, где е — некоторое малое число, после чего разместить две остав- оставшиеся точки на расстоянии е симметрично относительно центра интервала неопределенности, который получается после размеще- размещения первых двух точек. Учесть, что после того, как определены значения функций при х=A±е)/2, длина интервала неопределенности равна A + е)/2. 15. Численно минимизировать функцию f(x, у) = (у2 — хJ+ + A—хJ. Учесть, что эта функция имеет два локальных миниму- минимума и одну седловую точку. Испробовать несколько начальных то- точек и определить границы, за которыми выбор начальной точки не приводит к успеху. 16. Оптимальным градиентным методом и методом Ньютона — Рафсона при х° = у0 = 0,1 минимизировать функцию /(я, у) = = х2/2 + у4/20. Выполнить вычисления для первых трех шагов. 17. Матрица Q квадратичной целевой функции /(х) = атх + +xTQx/2 обладает собственным значением Ки много меньшим дру- других собственных значений, 0<A,i<X2, Яз, ...An. Как это повлия- повлияет на поведение метода сопряженных направлений, метода Нью- Ньютона — Рафсона и метода переменной метрики? 18. Исследуйте влияние замены переменных z = Вх, где В = diagFi, &2, ..., Ьп), bi > 0, i = 1, ..., л, на метод сопряженных градиентов и метод переменной метрики. 19. Бокс показал на примере, что некоторые методы оказыва- оказываются неработоспособными из-за того, что они пытаются излишне точно определить местоположение минимума на прямой (Бокс, 1966). Пусть где суммирование производится на интервале [ОД; 1,0] с шагом 0,1. Оптимум имеет место при ?{ = 10, х2=1, я3 = —1. Од- Однако при х\ « 0,61 и хъ « 1,32 минимум относительно х2 не су- существует, и по этой причине метод Дэвиса, Сватша и Кэмпи (С ванн, 1964) и метод Пауэлла A964) оказываются неработо- неработоспособными. Попробуйте минимизировать эту же функцию, ис- используя метод сопряженных градиентов или метод переменней метрики. Предположите, что положение минимума на выбранном направлении не определяется точно. Как это повлияет на поведе- поведение метода Ньютона — Рафсона, метода сопряженных градиентов и метода переменной метрики. Используйте ЦВМ для эксперимен- экспериментирования.
ГЛАВА 5 МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ При формулировке реальных задач оптимизации — задач технического проектирования, задач распределения ресурсов и других — из физических, технических или эко- экономических соображений обычно приходится наклады- накладывать на переменные известные ограничения. Например, в пассивной RC-цепи не может быть отрицательной емко- емкости, нельзя распределять воду, если ее нет в резервуаре, нельзя увеличивать давление в сосуде, если этого не до- допускает прочность. Таким образом, хотя глава 4 и являет- является очень важной для ясного понимания основ методов оп- оптимизации, в ней не содержится всего необходимого материала для решения многих практических задач, в ко- которых невозможен произвольный выбор точек х. В по-, добных задачах этот выбор может производиться только из некоторого подмножества S пространства Rn. Подмно- Подмножество S обычно задается «неявно», системой дополни- дополнительных уравпений, называемых уравнениями ограниче- ограничений или просто ограничениями. Эта система может со- состоять из ограничивающих равенств, ограничивающих неравенств или тех и других вместе. Если S определяется у совокупностью всех точек х в /?п, которые удовлетворяют' системе уравнений то эту систему называют ограничивающими равенствами. Если S есть множество всех х в Rn, которые удовлетворя- удовлетворяют системе неравенств gi(x)^0, i= I, ..., m, то эту систему называют ограничивающими неравенства- неравенствами. В дальнейшем в данной книге предполагается, что функции g и h обладают непрерывными частными произ-
192 ГЛ. 5 МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ водными первого1 порядка на некотором открытом мно- множестве пространства Rn. В задачах оптимизации с ограничениями переменная х, являющаяся аргументом целевой функции /(х), долж- должна принадлежать заданнаму подмножеству 5, а не вообще пространству Лп, как это мы предполагали в предыдущей главе. Поиск точки оптимума х* должен теперь произво- производиться в области S. Любая точка х, принадлежащая S, называется допустимым решением, допустимым в то'М смысле, что х не нарушает ни одно из ограничений. Мно- Множество S называется допустимой областью. В этой главе, по-прежнему, для конкретности под оптимизацией будем понимать получение минимума. 5.1. Множители Лагранжа При рассмотрении задач с ограничениями очень важ- важным является ясное понимание роли множителей Лагран- Лагранжа. Обычно в математическом анализе множители Лаг- Лагранжа вводятся в связи с задачами отыскания экстрему- экстремума при дополнительных условиях, заданных в виде систе- системы ограничивающих равенств, например, в виде Ач(х) = О, г=1,2,..., I. В данном разделе мы вкратце изложим основную идею метода множителей Лагранжа, чтобы облегчить рассмот- рассмотрение задач оптимизации с ограничениями в виде ограни- ограничивающих неравенств или ограничивающих равенств и неравенств. Далее будет показано, что множители Лагран- Лагранжа можно трактовать как коэффициенты чувствительно- чувствительности точки оптимального решения х* относительно возму- возмущения ограничений. Кроме того, как будет показано ни- ниже, множители Лагранжа являются переменными задачи, двойственной к исходной. Все это позволит во многих задачах дать множителям Лагранжа физическую или экономическую трактовку. Чтобы иллюстрировать основную идею метода множи- множителей Лагранжа, рассмотрим следующую простую задачу минимизации с ограничениями в виде равенств: min /(#!, я2, хг)
6.1. МНОЖИТЕЛИ ЛАГРАНЖА 193 при условии hi(xu X2, хъ) = 0, h2(xu x2, хг) = 0. 'E.1) Следовательно, допустимая область S представляет со- собой кривую в Я3, определяемую пересечением двух по- поверхностей, заданных функциями h\ и h2. Предположим, что задача имеет точку минимума х* ={х],х*2,х*з) в S, что функции /, fti, /*2 обладают непрерывными производными первого порядка в некото- некотором открытом множестве, содержащем х*, и что V^i и V^a линейно независимы. Подобная задача может возникать в различных слу- случаях. Например, функция f(x\, #2, Хг) может представ- представлять собой давление, напряжение или температуру в точ- точке х металлической пластины, находящейся в печи, или плотность некоторого химического состава в точке х в резервуаре. При этом задача заключается в минимизации функции / на кривой, определяемой пересечением двух поверхностей, ваданных ограничивающими равенствами. Если две переменные уравнения E.1) можно выразить через третью, например, если х% и хз можно выразить через х\ в виде Х2 «= и(х\) и х% = v(x\), то, подставляя их в целевую функцию, можно преобразовать данную задачу в следующую задачу минимизации без ограничений, со- содержащую единственную переменную Х\\ min / [xlt и (хх), v (xx)]. (B.1 А) Поскольку вектор-градиенты yhu i — 1, 2, предпола- предполагаются непрерывными и линейно' независимыми, можно применить теорему о неявной функции и, следовательно, в принципе можно выполнить указанную подстановку. Этот подход в принципе можно распространить и на случай функций п переменных /(х), Хя (#ь .. м хп)т, подчиненных I ограничивающим равенствам, /<л> Мх)=0, ••-, ВД =0. (А) Если hu ..., hi удовлетворяют условиям теоремы о неяв- неявной функции, то I из п переменных уравнения (А) можно выразить через остальные п — I переменных и подставить их в /(х). Таким образом, в принципе можно преобразо- преобразовать задачу минимизации с ограничениями в задачу ми-
194 гл. 5. минимизация функций с ограничениями нимизации без ограничений с п — I переменными, если целевая функция и ограничивающие функции уравнения (А) удовлетворяют определенным условиям регулярности. Однако, вообще говоря, такой подход трудно практи- практически реализовать даже в том случае, если он теоретиче- теоретически возможен, так как не всегда легко решить уравнение (А) относительно I переменных. Желательно иметь более симметричный метод, в котором в равной степени ис- используются все переменные. Таким методом и является метод множителей Лаграятка. Продолжим рассмотрение примера, определяемого уравнением E.1), следующим образом. Пусть х\ есть точка мвгаимума, определяемого уравнением E.1А). Со- Согласно теореме о неявной функции и (•) и • v (•) в х\ имеют производные, и мы можем записать df , df du , df du __ p Jxl ~* dx~2 dx[ dxl dx[ ~ Из ограничивающих уравнений получаем два дополни- дополнительных соотношения: OXj OXn uXi 0X§ (xX-y Запишем эти три уравнения совместно в виде 4 du dXl = О, (В) где А — матрица размерности CX3), равная Из уравнения (В) следует, что det (A) =0, так как век-, тор A, du/dx\, dvJdx\Y не является нулевым вектором. Другими словами, вектор-строки матрицы А линейно зависимы. Следовательно, есть три таких скаляра а, Ъ и с, не все равные нулю, что <*V/(x*) + bVMx*) + cvMx*) = 0. (С) Постоянная а не может быть равна пулю, так как^ео- глаоно предположе«нию V^i и V ^2 линейно независимы.
5.1. МНОЖИТЕЛИ ЛАГРАНЖА 195 Поэтому после деления уравнения (С) на а можно за- записать V/(**) +hVhi(x*) +Х2уМх*) = 0. E.2) Таким образом, для задачи минимизации с ограниче- ограничениями, определяемой уравнением E.1), существуют такие постояпные Х\ и Х2, для которых справедливо уравнение E.2) и которые одновременно не обращаются в нуль. Постоянные Ai и Х2 называют множителями Лагранжа. Уравнение E.2) представляет собой необходимое условие того, что х* является точкой минимума с ограничениями. Следовательно, в задачах оптимизации с ограничивающи- ограничивающими равенствами должен производиться поиск не крити- критической точки целевой функции /(х), как это делалось в главе 4, а критической точки так называемой функции Лаграижа, определяемой следующим образом: Ф(х) =f(x)+Xlhl(x)+X2h2(x). Далее, для того чтобы выразить х* через Х\ и Х2, используются уравнения E.1) и E.2). Чтобы определить Ai и ^2, найденное выражение x*(Xi, Х2) подставляется в уравнение E.1). Теперь x*(A,i, Х2) при найденных значе- значениях Х\ и Х2 является точкой минимума с ограничениями нашей задачи. С геометрической точки зрения уравнение E.2) означает, что V/(x*) лежит в плоскости, натянутой на векторыуМх*). Дру- Другими словами, вектор- градиент у/ согласно ог- ра ппчениям должен ле- лежать в плоскости, нор- нормальной к касательной к кривой, определяемой равенствами hi = 0, i = = 1, 2, в точке х*. Это определяется тем, что производная функции / на этой кривой обра- Рпс. 5.1. Минимизация с ограничени- щаетея в нуль в точке ями ПРИ п = 3 и / « 2. минимума. Кроме того, пересечение плоскостей, касательных ¦ в точке х*, (\/h\, dx) = 0 и (у h2, dx) = 0, определяет прямую, касатель- касательную к кривой S в точке х*, где dx есть бесконечно малый элемент кривой (рис. 5.1),
196 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ Более точная геометрическая интерпретация общей п-мерной задачи оптимизация с ограничивающими равен- равенствами сводится к следующему. Пусть х* есть точка ми- минимума с ограничениями функции /(•)• Следовательно, функция /(•) в точке х* стационарная относительно ма- малых изменений точки х* в S. При соблюдении условий регулярности (при выполнении которых может быть при- применена теорема о неявной функции) функция /(•) будет стационарна в точке х* относительно малых смещений в многообразии, касательном к S в точке х*. Это дает воз- возможность локально заменить множество S касательным многообразием (натянутым на уА»(х*), i — 1, ..., Z), ко- которое имеет значительно более простую структуру, чем S. В дальнейшем нам понадобится следующая теорема. Теорема о множителях Лагранжа. Пусть /(•), Л<(«), i = 1, ..., Z, I < п,— вещественные функции в Rnt все первые частные производные которых непрерывны на открытом множестве Т в Rn. Пусть S — подмножество множества Т, на котором все функции Ы(-), J = 1, ..., ?, равны нулю: S = {х; х ее Т, ht(\) = 0, i = 1, ..., I}. Предположим, что х* е5 и что существует такая ок- окрестность JV(x*), что /(х*) rg /(x) для всех х, одновре- одновременно принадлежащих S и N (х*). д (hi, ..., fr Л Если ранг якобиана -^- ^-г- в точке х* равен I, то существует I вещественных чисел Х\, Хг, ..., h, не все из которых равны нулю, при которых V/(x*)+;b.,vMx*)=0. E.3) (Доказательство теоремы см. в книгах Апостола или Ку- Куранта.) Если вшести функцию Лагранжа i <р(х)=/(х) + 2 Х,Мх), i = i то эта теорема определяет условия, при которых задача с ограничивающими равенствами может быть сведена к задаче определения х*, удовлетворяющего уравнению
6.1. МНОЖИТЕЛИ ЛАГРАЙЖА 19? у<р(х*) =0. Это и является необходимым условием ми- минимума, которое запишем в следующем виде: 0 = у Ф (**) = V/ (**) + g КVhi (x*). E.3A) Заметим, что в силу ограничивающих равенств в точке х* имеет место равенство 2Mi(**)=0, E-ЗВ) г=1 и мы имеем /(х*) = ф(х*). Если уравнения ограничений линейны на выпуклой области пространства Rn, то существование множителей Лагранжа и необходимое условие для точки минимума можно установить непосредственно, без обращения к теореме о неявной функции, с помощью смещения по возможным направлениям. Этот способ определяется теоремой, предложенной Фапом, и леммой Фаркаша, приведенными соответствен- соответственно в приложениях 3 и 8. Мы их будем применять не- несколько позже в данном разделе, а также в следующем разделе. Но предварительно рассмотрим пример. Пример (минимизация с линейными ог- ограничивающими равенствами). Прежде всего с помощью обычного применения множителей Лагранжа получим необходимое условие для задачи минимизации функции /(х) при условии Ах = Ь, где А— (тгаХ ^-ма- ^-матрица, т<Сщ ранг которой равен т, b — /тг-мерный век- вектор, а функция /(•) предполагается имеющей непрерыв- непрерывные производные первого порядка. Вводя m-мерный век- вектор X, построим функцию Лагранжа , Ах-Ъ). Тогда из E.ЗА) и E.3В) получим необходимое условие в виде 0 Ь = 0, (Е) где х* — точка минимума. Л
1&8 гл. 5. минимизация функций с ограничениями Смещение по возможным направлениям. Те же условия можно получить, изучая влияние смеще- смещений из х* по возможным направлениям. Этот подход при- приводит к методике, которая будет в дальнейшем неодно- неоднократно применяться. Приведем следующий новый вывод уравнения (D). Если взять достаточно малое f>0 и по- потребовать, чтобы х* + td было допустимой точкой, т. е. чтобы defln представляло собой возможное направление, то будем иметь f(x* + td) =/(x*)-M<V/(x*), d> + p(O и Ad = 0. Так как х* является точкой минимума, то (v/(x*), d) g=? 0 для всех d, удовлетворяющих равенству Ad = 0. Другими словами, система уравнений <V/(x*),d><0, несовместна, т. е. не существует такого d в /?п, при ко- котором оба уравнения (F) удовлетворяются одновременно. Определим в пространстве Rm+l множество F, V = {[] {[]).d><i;Of id = vE^ для неко- некоторого d в Rn}. Как подробно показано в приложении 3, эта множество является непустым и выпуклым*). Начало пространства Rm+l не содержится в множестве F, посколь- поскольку система уравнений (F) несовместна. Таким образом, можно найти такую гиперплоскость, что > v> ^ ° Для всех (Доказательство этого положения см. в приложении 3.) Чтобы неравенство (G) не было нарушено при по- положительных и достаточно больших vo и V, необходимо иметь Хо ^ 0 и X ^ 0. Если задано произвольно малое ¦) Для фиксированного d определим F(d) аналогично тому, как в приложении 3 определено F(x). Тогда V есть объединение F(d) по всем d а Дп. ^~~
5.1. МНОЖИТЕЛИ ЛАГРАНЖА 19Э 8 > 0, то при всех d пространства R" точка, определяе- определяемая соотношением 141 r<V/(x*),d>] ГП Ы- м J + HoJ- принадлежит множеству V. Поэтому, поскольку е произ- произвольно, уравнение (G) можно переписать в следующем виде: ИЛИ Это справедливо для всех d e Rn. Отсюда следует, что АТК = 0. (Н) По предположению ранг матрицы А равен т. Это озна- означает, что вектор-строки матрицы А линейно независимы. Следовательно, Xq ф 0. Разделив уравнение (Н) на Яо и обозначив теперь к/Хо через X (что соответствует значе- значению Яо = 1), получаем уравнение (Н) точно в таком же виде, как и (D). При этом справедливость уравнения (Е) становится очевидной. (Попутно мы изложили вариант доказательства леммы Фаркаша с помощью теоремы о разделяющей гиперплоскости для выпуклого множества.) Обычно на практике ограничения задаются системой ограничивающих неравенств или системой, состоящей из ограничивающих неравенств и равенств. Например, в за- задачах линейного программирования ограничения обычно требуют, чтобы переменные были неотрицательными и удовлетворяли системе линейных уравнений. В задачах управления ограничения, накладываемые на векторы со- состояния х и векторы управления и, в общем случае зада- задаются уравнением вида g(x, u) ^0. В связи с этим боль- большой интерес представляет распространение метода множителей Лагранжа на задачи оптимизации с ограни- ограничивающими неравенствами или ограничивающими ра- равенствами и неравенствами. Рассмотрим задачу минимизации min/(x)
200 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ с ограничениями, заданными системой ограничивающих неравенств Далее будет показано, что ограничения, заданные в форме неравенств, также могут быть отражены с помощью множителей Лагранжа в целевой функции в форме, ана- аналогичной уравнениям E.ЗА) и E.3В). Для этого исполь- используется последовательность смещений по возможным направлениям, подобная только что рассмотренной в примере. В точке минимума х* с ограничениями ограничиваю- ограничивающие неравенства могут удовлетворяться как ограничи- ограничивающие равенства, в то же время могут быть случаи, когда ограничения удовлетворяются в точке минимума как строгие неравенства. Ограничение называют актив- активным в точке х, если ограничивающее неравенство факти- фактически удовлетворяется в точке х как ограничивающее равенство. Другими словами, если &(х)««0 при неко- некотором /, то /-е ограничение называют активным в точке х. 5.2. Линейные ограничивающие неравенства Используя геометрические свойства допустимой обла- области, найдем необходимые условия экстремума для задач минимизации с ограничивающими неравенствами. С этой целью полезна прежде всего рассмотреть частный случай, в котором все функции gi линейны. Основная цель рас- рассмотрения в данном разделе задач с линейными огра- ограничивающими неравенствами заключается в том, чтобы распространить применение множителей Лагранжа к за- задачам с ограничивающими неравенствами. Однако этот класс задач имеет большое самостоятельное значение, поскольку к нему применима большая часть теории ли- линейного программирования, и с этой точки зрения надо было бы расширить круг рассматриваемых вопросов при изучении этого класса задач. В дальнейшем мы вернемся к этим вопросам. Рассмотрим задачу минимизации min/(x)
б. 2. ЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 201 при условии *(х) - - <ntf х> + Ъ< ^ 0, 1 ^ i ^ т. E.4) Здесь каждое ограничивающее уравнение определяет по- полупространство в Rn. Догауютимая область S задается пе- пересечением т полупростравста, определяемых т уравне- уравнениями, и, следовательно, является многогранником. Век- Вектор п< является нормалью к гиперплосжоюти, определяе- определяемой уравнением #,(х)= 0. При этом вектор п< направлен внутрь области S. Пусть х* является точкой минимума с ограничениями. Введем множество индексов активных ограничений Предполагается, что множество / является непустым, по- поскольку в противном случае задача оказывается без огра- ограничений. На рис. 5.2 приведен пример задачи минимиза- минимизации с линейными ограничениями при п = 2, т = 3 и /={1,3}. Рис. 5.2. Входящий вектор в случае, когда все ограничивающие уравнспия являются линейными. Возьмем любую допустимую точку х из S. Вектор х — х* направлен из х* внутрь области S. Такой вектор х — х* будем называть входящим вектором. Для этого
202 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ вектора с учетом того, что п, = —ygi(x*), может быть записано следующее условие: <п,, х — х*>^0 или <vgi(x*), х — х*>^0 для всех /е/ и xeS. E.5) Таким образом, входящий вектор определяет допусти- допустимое направление при смещении из точки х*. Так как /(х) минимальна в точке х*, то при любом х — х*, удовлетво- удовлетворяющем E.5), имеем <у/(х*), х-х*>^0. E.6) Дальше можно было бы продолжать рассмотрение ана- аналогично тому, как это делалось в предыдущем разделе в отношении смещший по допустимым направлениям. Но мы остановимся на другом, эквивалентном подходе. Применим лемму Фаркаша. То, что из уравнения E.5) следует E.6), означает, что существует множество та- таких неотрицательных скалярных постоянных, что V/ (**) = 2 КЩ = - 2 hVffi (х*). E.7) iI il Здесь I является множеством индексов активных ограни- ограничений; множители Ki: s== 0 и не все равны 0. Отметим, что уравнение E.7) совершенно аналогично уравнениям E.2) и E.3). Если считать, что X] = 0 при ]&1, то это урав- уравнение можно переписать в виде *!^0. E.8) Кроме того, поскольку при / г / функция &(х*) = 0, а при ]Ф1 Xj=O, поскольку ft(x*) < 0 для всех / & I. (Надо также заметить, что это уравнение эквивалентно уравнениям Х,&(х*) = 0, / ==« lf .. .t m, так как каждый член этой суммы неполо- неположителен.) Итак, уравяенкя ограничений могут быть вклю- включены в целевую функцию следующим образом: Ф (х) - / (х) + 2 Xtgt (х),. h ^ 0. E.9)
5.3. НЕЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 203 Следовательно, х* удовлетворяет уравнению V(p(х*) = у/(х*) + ItKvgi (**) = 0 E.10) E.11) Так как множество индексов / вначале неизвестно, то формулировка условий экстремума уравнениями E.9), E.10) и E.11) обладает очевидными преимуществами. Здесь в уравнение E.11) входят совершенно симметрич- симметрично все ограничения. 5.3. Нелинейные ограничивающие неравенства Когда все уравнения g< линейны, для любого вектора, «входящего» в х* из S, справедливы уравнения E.5) и E.6), из которых следует ключевое соотношение E.7). Если функции gi нелинейны, то эти соотношения не обя- обязательно справедливы. Эта трудность иллюстрируется следующими двумя примерами. Пример. Минимизировать /(*i,*2)=(*i-2J + *2 при условии С\: g\(xu х2) = — zi ^0, С2: g2(xu х2) = — х2 <? 0, Cz:g3(xvx2) = — 1 +^1+^2^0. На рис. 5.3 показана допустимая область S и несколько линий постоянного значения функции /(•)• Ясно, что точ- точкой минимума является х* = A, 0)т. Активными ограни- ограничениями являются С2 и С3, т. е. / = {2, 3}. В точке ми- минимума имеем = (-4, 0У, = @, 1)\ ==(-2, -1)\
204 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ Направление этих векторов также показано на рис. 5.3. Так как Сг и С3 активны в точке х*, то Однако *i(x»)<0. Поэтому следует взять fa = 0. Решая уравнение E.10) 1 Us к-о 0 -0,5 • f-JJS ¦Г Sz-0 - Рис. 5.3. Для этой задачи минимизации с ограничениями существу- существуют множители Лагранжа. относительно Яг, Я3, получаем %% = 2, Кг = 2. Очевидно, что при этих значениях Ki имеем з Si^ft(x*)=0f Xt^0. Д Рассмотрим другой пример, совпадающий с предыдущим во всем, за исключением С3. Пример (Кун — Таккер, 1951). Минимизировать при условии С\: gi(xu х2) = — х2) = ^ 0, 0.
Б.З. НЕЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 205 На рис. 5.4 показана допустимая область и несколько линий постоянного значения функции /(•)• Имеем х*=A, 0)', у/(х*) = (-2, 0)'. В точке х* активны ограничения Сг и Сз, т. е. / = {2, 3}. Следовательно, W2(x*) = @, -1)* Wa(x*) = @, II. Поскольку у/ имеет ненулевую первую компоненту и х, yf-5 /f-4 f-f Рис. 5.4. Для этой задачи минимизации с ограничениями не суще- существует множителей Лагранжа. первые компоненты yg^ и у#3 равны нулю, то вектор-гра- вектор-градиенты уравнений активных ограничений линейно зави- зависимы и не существует таких ^2 и Хз, при которых х*) =0. Если умножить v/(x*) на ^ = 0, то получим выражение х*) =0, (I) справедливое при любых X? = А*. Д Вернемся к примеру параграфа 5.1. Там мы вначале получили уравнение (С) и затем, разделив его на а,
206 гл. б. минимизация функций с ограничениями получили окончательное выражение. Предположение о ли- линейной независимости вектор-строк матрицы А опреде- определяло отличие а от нуля. Далее будет получено общее соотношение типа (I), называемое теоремой Фритца Джона, и потребуются не- некоторые дополнительные условия, чтобы показать, что ко- коэффициент, на который умножается у/(х*)> не равен нулю. Линейная зависимость градиентов у#2 и \7?з не позволяет сделать заключение, что X ф 0 и, конечно1, в этом примере К = 0. Этот пример показывает, что не всегда в задачах ми- минимизации с ограничениями существуют множители Лаг- ранжа. Другими словами, при рассмотрении задачи ми- минимизации функции /(х) при условии gi(x) 5g 0, 1 ^S i 25 5g m, может оказаться, что не существует таких h, 1 ^ i ёз ш, при которых без дополнительных предполо- предположений о природе ограничивающих уравнений справедли- справедливы следующие уравнения: *i (**) = 0, где x* есть оптимальное решение задачи. Эти дополни- дополнительные предположения обычно называют условиями ре- регулярности ограничений. В случае ограничивающих ра- равенств параграфа 5.1 мы использовали в качестве условия регулярности ограничений линейную независимость век- вектор-градиентов ограничений. Уравнения ограничений в первом примере этого раздела, как видно из рис. 5.3, удов- удовлетворяют условиям регулярности. 5.3.1. Теорема Куна — Таккера и регулярность огра- ограничений. В данном параграфе будут рассмотрены различ- различные условия регулярности ограничений, одной из форм которых является линейная независимость градиентов V#. i=l, ..., m. Теорема Фритца Джона (дифференциальная форма). Пусть /, gi, i = l, ..., /тг, обладают непрерывными част- частными производными на некотором открытом множестве пространства Rn, содержащем х*. Если х* — точка мини-
б.З. НЕЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 207 мума с ограничениями функции /(х) при условии*) gi(x) gO, i = 1, ..., т, то существуют Х<, i = О, 1, ... . . ., m, we все равные нулю, удовлетворяющие следующим соотношениям: m S (I) Если допустить, что Xq равно нулю, то эта теорема теряет связь с интересующей нас задачей минимизации с ограничениями. Поэтому введем условие регулярности, обеспечивающее Xq ф 0. Предположение о том, что V?»(x*), i^l, линейна не- независимы, где / — множество индексов активных ограни- ограничений, называется условием регулярности в виде линей- линейной независимости. При предположении о линейной неза- независимости ао Ф 0, так как в противном случае все Х\, ... ..., Km должны быть равны нулю. Полагая Ко «=¦ 1 (что эквивалентно делению (J) на Хо и замене ХДо на А,<), придем к теореме Куна — Таккера, являющейся частным случаем теоремы Фритца Джона. Теорема Куна —Таккера (дифференциальная форма). Пусть /, gi, i SS i ^3 m, обладают непрерывными частными производными на некотором открытом множестве про- пространства Rn, содержащем х*. Если х* является точкой минимума функции /(х) при ограничениях ?*(x)sSO, 1 :g I :g rn, удовлетворяющих условию регулярности в виде линейной независимости, то существуют такие неот- неотрицательные множители Лагранжа Х\, . •., Хт9 что *) Если обозначить это открытое множество через X, то допус- допустимое множество S можно определить следующим образом: 5= {x;xEl,g(x) ^0}.
208 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ ; Определим функцию Лагранжа следующим образом: Ф(х, Я)=/(х)+<Х, g(x)>, ще Х-'(Xit ..., Xm)v и g(x) = [>i(x), ..., ?m(x)]\ Тогда теорему Куна — Таккера можно записать в виде следую- следующих уравнений и неравенств: V*q>(x*, Я) = 0, <?i,v^(x* где ух — градиент относительно х и V* — градиент отно- относительно X. Теорема «Куна — Таккера соответствует теореме о множителях Лагранжа (уравнение E.3)). Отметим, что множители Лагранжа в E.3) являются знаконеопределен- ными, в то (время как в теореме Куна — Таккера они не- неотрицательны. Причина этого будет видна, если записать ограничивающее равенство h(x) = 0 в виде двух систем ограничивающих неравенств h (х) ^ 0 и —h (x) s? 0. При этом функция Лагранжа будет равна где А+^0 и Аг^О, или <р(х) =/(х)+<*,, h(x)>, где X = Х+ — X". Таким образом, мы не можем судить о знаке множителя X. Доказательство теоремы Фритца Джона. Для достаточно малых t > 0 имеем /(х*+ fz) = /(х*) + t<v/(x»), z)+o(t), где o\t) обозначает такую величину, что o(t)lt-*-0 прп t-*-0. Пусть / есть множество индексов активных ограни- ограничений. Тогда gi(x*.+ U) = gi(x*) + t<V'ft(**), z> + o@ - -*<Vft(**), z> + o@, /e/. При этом система уравнений <v/(x*)J><0, несовместна. В противном случае при достаточно малом t > 0 для некоторого z будем иметь
D.3. НЕЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 209 что противоречит предположению об оптимальности точ- точки х*. Теперь обратимся к следующей лемме. Лемма. При любой матрице А 1) либо следующая система неравенств имеет решение: Лх<0, % (E1) 2) либо следующая система неравенств имеет решение: (Е2) Одновременно (Е1) и (Е2) выполняться не могут. Доказательство леммы вытекает из леммы Фаркаша (см. приложение 8). Для доказательства теоремы Фритца Джона нам необходима только та часть леммы, в которой утверждается, что если неравенства системы (Е1) несов- несовместны, то (Е2) имеет решение*). Применим лемму к (К). Для этого будем считать, что матрицу А леммы представляет матрица с вектор-строка- вектор-строками у/(х*)т и V?ft(x*)T» k^L Следовательно, существуют такие %о и %и что Kvf (х*) + 2 ^iS/8i (х*) = 0, где >0 но не равно тождественно нулю. Если положить теперь Я,- = 0 для i & 7, то теорема будет доказана. Д Заметим, что множители Лагранжа (Хо, X) получены в виде векторов, нормальных к разделяющей пшерпло- *) Несовместность системы (Е1) эквивалентна утверждению, что относительно хейп и j/ей следующая система неравенств не имеет решения: где ет = A, 1, ..., 1). Перепишем (Е'1) в виде Применение леммы Фаркаша показывает существование такого вектора К ^ 0, что [0, i]=^[4e]. Это доказывает вторую часть леммы.
210 ГЛ. 5 МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ скости (см. параграф 1.4). Следовательно, множители Лаг- ранжа не обязательно являются единственными (так как может быть больше одной разделяющей гиперплоскости) п при отсутствии дополнительных предположений, вообще говоря, не будут единственными. Понятие регулярности ограничений было введено Ку- Куном и Таккером A951). В отличие от приведенной выше регулярности ограничений в виде линейной независимо- независимости, условие регулярности ограничений Куна — Танкера использует понятия входящих векторов и дифференциаль- дифференциальных дуг и довольно сложно для понимания (см., напри- например, Мангасарян A969)). Ниже будет применяться другое условие регулярности ограничений, называемое условием регулярности Слейтера. Это условие применимо, когда целевая функция / и все функции g\, ..., gm явля- являются выпуклыми. Выпуклая векторная функция g(x), xei?n, называется функцией, удовлетворяющей условиям регулярности Слейтера, если существует такой х, что g(x)<0. Теорема о седловой точке. Рассмотрим теоремы, ана- аналогичные теоремам Купа — Танкера и Фритца Джона (в дифференциальной форме), не требующие диффереи- цируемости функций / и g. Вместо дифференцируемости здесь предполагается, что все функцип /, g\, ..., gm вы- выпуклы. Эти теоремы называют теоремами о седловой точке. Рассмотрим задачу минимизации с ограничениями: min/(x) при условии gi(x) ^0, i=l, 2, ..., m, (L) где функции /, gu * = 1, ..., m, выпуклы. Тогда и мно- множество S, выделяемое условиями (L), также выпукло. Следующим образом определим функцию Лагранжа: Теорема Фритца Джона о седловой точке*). Пусть х* является решением задачи минимизации с ограничениями ¦) В работе Джона A948) условия экстремума были приведены лишь в дифференциальной форме; впервые теорема о седловой точке получена Куном и Таккером A951). (Прим. ред.)
5.3. НЕЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 211 (L). Тогда при всех к^О и всех х в Rn существуют та- такие ^о?^ 0 и Я* i^ 0, не все равные нулю, что и что Если добавить соответствующее условие регулярности, то, как и в дифференциальном варианте теоремы Фритца Джона, здесь будет Яо>О. Положив Яо = 1, получим теорему Куна — Таккера о седловой точке. Теорема Куна — Таккера о седловой точке. Пусть х* является решением задачи минимизации с ограничениями, причем ограничивающие функции удовлетворяют усло- условию регулярности Слейтера. Тогда при всех ^0 и всех х в Rn существует такой вектор h*j^ 0, что где Обе теоремы о седловой точке имеют форму Ф(х*, Я) ^ ф(х», Я*) rg г|)(х, X*), (V) где г|)(-, ^ — скалярная функция двух векторов: вектора х, принадлежащего пространству Rnt и вектора X ^ 0, принадлея^ащего пространству Rm. В главе 6 будет пока- показано, что при соответствующих условиях (I/) может быть представлено в эквивалентной форме min max of) (х, А,) = max min гр (х, X). (М) Эта форма записи соответствует теореме о минимаксе. Ее можно использовать для изучения двойственности в нелинейном программировании. Связь теоремы о седло- седловой точке с двойственностью будет рассмотрена в следую- следующей главе. Доказательство теоремы о седловой точке вцовь осно- основывается на теореме о разделяющей гиперплоскости. От- Отличие заключается только в том, что теперь выпуклые мпожества определяются непосредственно с помощью
212 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ значений функций, а не градиентов, как это было в слу- случае доказательства теоремы Фритца Джона в дифферен- дифференциальной форме. Доказательство. Будем рассуждать точно так же, как и при определении множителей Лагранжа в примере на стр. 197; применяя следствие теоремы Фана (см. при- приложение 3), отметим прежде всего, что система уравнений не имеет решения, поскольку х* есть точка минимума с ограничениями. Заметим также, что из этого утвержде- утверждения следует, что следующая система также не имеет решения: /() Определим для каждого xsff множество Vx следующим образом: Vx = {|У|; Уоей,УЕ R™, / (х) - / (х*) < v0, g (х) < v}. Обозначим ^ По предположению V не содержит начала. Поскольку где v* = 9*1 + A - 9) vl xe = 0x1 + A-9)х2. Следовательно, множество V выпукло. Согласно теореме параграфа 1.4 для множества V (непустого, выпуклого и не содержащего начала) существует такая разделяющая
5.3. НЕЛИНЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 213 гиперплоскость, что» l <^*, v> ^0 для Так как Vq и каждая компонента вектора v могут быть сколь угодно большими, то необходимо, чтобы ^о = 0 и Взяв произвольное е>0, положим Уо=/(х)—/(х*) +е и v = g(x)+e, где г = е A, 1, ..., 1)т. Тогда (N) можно записать в виде Г0[/(х)-/(х*)] + X*oe + <Ji*,g(x)> + e 2^0. i=i Поскольку 8 Я!вляется произвольной величиной, можно записать Г0[/(х)-/(х*)] +<V*,g(x)>^0. (О) Так как Я* ^ 0 и g(x*)^ 0, то (X*, g(x)>^ 0. Если же в уравнении (О) положить х равным х*, то получим (К*, g(x*)>SiO. Следовательно, <X*,g(x*)>=0. Из уравнений @) и (Р) получаем l , g (х*)) ^ Г0/(х) + <Х*, g (x)>. Это неравенство представляет собой правое неравенство теоремы. Таккакг(х*)^ 0, то <Я, g(x*)>^0 при любом X ^ 0. Следовательно, ) + <Х, g (х*)>^ %*Qf (х*) = %lf (х*) + <^*, g (х*)>. Это выражеиие дает левое неравенство теоремы. Тем са- самым доказательство теоремы Фритца Джона завершается. Чтобы обеспечить %о > 0, надо предположить сущест- существование условия регулярности Слейтера.
214 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ Действительно, пусть Я0 = 0. Тогда 1*^0 и теорема1 Фритца Джона о седловой точке сведется к уравнению g(x*)>^<>.*, g(x)> (Q) для всех х, принадлежащих Rn. В то же время условие регулярности Слейгера утверж- утверждает, что существует такой вектор х, что g(x) < 0 и, сле- следовательно, (^*, g(x))<0. Так как это противоречит уравнению (Q), то предположения теоремы Фритца Джо*- на вместе с условием регулярности Слейтера доказывают теорему Куна — Таккера о седловой точке. Легко установить, что если (л*, х*), где Х*^ 0, х*е5, удовлетворяет теореме Куна — Таккера о седловой точке, то х* является решением задачи минимизации с ограниче- ограничениями. Действительно, из левой части неравенства, вхо- входящего в формулировку теоремы Куна — Таккера, следует <Х —X*, g(x*)>^0 для всех % ^ 0. Щ Следовательно, g(x*)^g 0, а ©ели учесть еще, что X* ^ 0, имеем (X*, g(x*))^g0. Положив в (R) Я = 0, получим (X*, g(x*)>^0. Сопоставив эти два соотношения, прихо- приходим к следующему равенству: <**, g(x*)>=0. Теперь правую часть того же неравенства можно запи- записать в виде Так как (Я*, g(x)>^0, имеем /(х*)<^/(х) для всех xeS, Другими словами, х* действительно является точ- точкой минимума с ограничениями. Заметим, что в приве- приведенных соображениях относительно достаточности оказа- оказалось ненужным какое-либо упоминание выпуклости. 5.3.2. Методы возможных направлений. Ряд алгорит- алгоритмов решения задач нелинейного программирования, в ко- которых все целевые функции и функции ограничений вы- выпуклы (задачи выпуклого программирования), был пред- предложен Зойтендейком (Зойтендейк, 1960). Автор наз- назвал эти алгоритмы методами возможных направлений. Хотя сходимость к глобальному минимуму может быть доказана только в случае задач выпуклого программиро-
5.3. НЕЛИЙЕЙНЫЕ ОГРАНИЧИВАЮЩИЕ НЕРАВЕНСТВА 215 вания, тем не менее можно показать, что методы возмож- возможных направлений сходятся к локальному минимуму при весьма слабых предположениях и в применении к задачам нелинейного программирования вообще (не обязательно выпуклого). Рассмотрим вкратце эти методы. (Подроб- (Подробности см. в книгах Зойтендейка A960) или Кэнона и др. A970).) В начале главы 4 было показано, что, имея допусти- допустимую точку х, удовлетворяющую всем ограничениям, необ- необходима принять два решения: 1) выбрать направление d — возможное и приемлемое, и 2) решить, какой вели- величины должен быть шаг в направлении d. -Vf(x) Уменьшенийt Рпс. 5.5. а) Возможные направления при линейном активном ог- ограничении, б) Зигзагообразное смещение по возможным направле- направлениям при нелинейных ограничениях, в) Зигзагообразное смеще- смещение по возможным направлениям. Вообще говоря, существует много возможных и прием- приемлемых направлений. При выборе «лучшего» направления d, надеясь по возможности уменьшить значение функции /, минимизируют (v/(x), d). Будем полагать, что в точке
216 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ х по меньшей мере одно ограничивающее уравнение яв- является активным, ибо в противном случав мы могли бы применить методы минимизации без ограничений. Пред- Предположим далее, что направление —- v/(x), противоположное направлению градиента, не является возможным направ- направлением, т. е. что оно нарушает по крайней мере одно ог- ограничивающее уравнение. Если ограничивающее уравне- уравнение линейно, то «лучшее» d поручается проекцией векто- вектора —v/(x) на многообразие, определяемое линейным ограничивающим уравнением, как это показано на рис. 5.5, а. Если активное ограничивающее уравнение является не- нелинейным, то излаженный способ определения d с по- помощью проекции вектора —V/(x) на плоскость, касатель- касательную к многообразию, определяемому ограничивающим уравнением, оказывается непригодным. Это определяется тем, что любое конечное смещение вдоль d, такое, что (Vg(x), d>=3 0, может нарушить ограничение g(x)<0, как это показано на рис. 5.5, б. В этих случаях за каждым смещением должно следовать «исправляющее» смещение, чтобы вернуть следующую точку в допустимую область S. Это вновь может привести к «зигзагообразному» смеще- смещению и сделать алгоритм неэффективным. Поэтому необ- необходимо не просто стремиться уменьшить / настолько, на- насколько это позволяют ограничения, а выбирать такое d, которое обеспечивает смещение в направлении, удаляю- удаляющем нас от активных границ. Другая трудность может возникнуть даже при линей- линейных активных ограничениях, если не уделить внимания «почти активным» ограничениям. Это может получиться вд-за того, что два или более ограничений попеременно становятся или активными или почти активными, что вновь может привести к зигзагообразному смещению, как это показано на рисунке 5.5, в. Чтобы избежать этого зигзагообразного смещения (на- (называемого иногда «заеданием», поскольку все вырабаты- вырабатываемые точки скапливаются вокруг точки, не являющей- являющейся решением вадачи), необходимо при выборе вектора d учитывать почти активные ограничения. Эти союбраженпя включены в аглоритм выбора направления. Алгоритмы выбора направления. Возможное и прием- приемлемое направление d получается путем решения следую-
Б.4. ЧУВСТВИТЕЛЬНОСТЬ ОПТИМАЛЬНЫХ РЕШЕНИЙ 217 щей задачи линейного программирования. Минимизиро- Минимизировать ? при условии x), d):g 8jg для всех таких /, что — в<^(х), где 0<9j^l и е > 0 — выбираемые параметры, а | и d — переменные. Если минимальное значение переменной | неотрица- неотрицательно, то d не существует и вычисление заканчивается. Текущее значение х, вообще говоря, является локальным минимумом с ограничениями. Если минимальное значе- значение | отрицательно, то смещение в соответствующем на- направлении d приводит к уменьшению значения функции и не нарушает никаких ограничений. После получения d размер шага определяется миними- минимизацией /(х + *d) при возможном х + td. 5.4. Чувствительность оптимальных решений В настоящем разделе будет дана интерпретация мно- множителей Лагранжа как коэффициентов чувствительности точек минимума относительно малых возмущений допу- допустимого множества S. После этого в параграфе 5.5 мы вернемся к задачам с линейными ограничивающими не- неравенствами и дадим несколько алгоритмов вычисления. В параграфе 5.3 было показано, что для задач оптими- оптимизации как с ограничивающими равенствами, так и, может быть, при некоторых дополнительных предположе- предположениях — для задач с ограничивающими неравенствами существуют множители Лагранжа этих задач оптимиза- оптимизации. Оказывается, что этим множителям можно приписать определенный физический смысл, а именно — смысл коэффициентов чувствительности. Так, например, в за- задачах оптимизации, относящихся к экономике, эти мно- множители можно трактовать как цены. С этой целью будет исследовано влияние изменений ограничивающих урав- уравнений и рассмотрена следующая задача: щт/(х)
218 гл. 5. минимизация функций с ограничениями при условии gi(x)^ Ьи l^i^m, где функции / и g{ удовлетворяют предположениям тео- теоремы Куна — Таккера. Когда все скаляры Ъ{ равны нулю, мы приходим к на- нашей исходной задаче оптимизации. При изменении ска- скаляров Ь{ множество допустимых решений S также изме- изменяется. Соответственно изменяется и точка минимума х*. Вычислим теперь производную Эта производная представляет собой чувствительность оп- оптимального значения относительно небольших изменений параметра, определяющего ограничения. Можно пока- показать, что *) 0/(х*)/дЬ«1ь-о = -К *€=/. Таким образом, —Я< является коэффициентом чувстви- чувствительности оптимального значения относительно малых изменений ограничивающего уравнения в случае, когда это ограничение активно. В противном случае чувстви- чувствительность равна нулю, так как такое ограничение не влия- влияет на целевую функцию. Существует более общий подход к изучению чувстви- чувствительности, которым приводит к общей формулировке двой- двойственных задач. Однако этот общий подход не будет нами рассматриваться, поскольку он выходит за рамки данной книги (см. статью Рокафеллара в сборнике под ред. Дан- Данцига и Вейпотта A969). Вопрос о двойственности для ограниченного класса задач нелинейного программирова- программирования будет рассматриваться в главе 6. *) Это равенство справедливо лишь при некоторых дополни- дополнительных предположениях. В частности, функции /, gi должны быть дважды дифференцируемы, и должно выполняться условие строгой дополняющей нежесткости (т. е. Ki > 0 для i е /, где / — множест- множество активных ограничений при b = 0). Приведенное автором дока- доказательство неверно и поэтому в переводе опущено (в связи с этим формулы E.12) —E.14) опущены также). Строгое доказательство можно найти, например, в книге Фпакко и Мак-Кормика, § 2.4. (Прим. ред.)
5.5. мийпМизаЦия при Линейный ограничениях 219 5.5. Способы минимизации при линейных ограничениях *) Как указывалось в параграфе 5.2, в случае, когда огра- ограничивающие уравнения линейны относительно х, приме- применимы некоторые специальные методы, использующие тео- теорию линейного программирования. В этом разделе мы рассмотрим два таких метода: метод проекции градиента и метод приведенного градиента. Оба метода являются частными случаями метода возможных направлений. С этой точки зрения они подробно рассмотрены у Кэнона и др. A970). В этом параграфе мы будем полагать, что все огра- ограничивающие уравнения ?г(х)<0, 1 ^ i < m, линейны, и представим их в видб Ах - Ь ^ 0, где А — (га X п)-матрица. Будем полагать, что m > п. Вектор-градиенты ограничивающих уравнений являются вектор-столбцами матрицы Лт, т. е. V?*(x) = (а«ь e<a?t ••• .... ain)\ В основе рассматриваемых двух методов лежит сле- следующее обстоятельство. Очевидно, что в точке минимума х* из т линейных ограничивающих уравнений некоторая часть будет активна, а другая — неактивна. Если рассмат- рассматривать х в подпространстве, определяемом активными ограничивающими уравнениями, то методы оптимиза- оптимизации без ограничений могут быть здесь использованы для определения х*. Подпространство, определяемое любой совокупностью активных ограничений, называется гранью (многогранника S). Таким образом, гранью в нашем пои нимании может являться также ребро или вершина мно- многогранника S. Естественно, что вначале неизвестная грань, содержащая х*. Она будет определяться постепенно в процессе работы алгоритма. 5.5.1. Метод проекции градиента. Предположим, что при заданном х е S наименьшая грань, содержащая xt ¦) Частично основано на статье П. Вулфа в сборнике под ред. Абади A967),
220 ГЯ. 5. минимизация Функций с определяется уравнением*) где /= {ii, i2i ..., гР}, р < т. Предположим, что любая (р X га) -подматрица матрицы А имеет ранг р, р^п. Пусть Ai есть подматрица, соответствующая р строкам матрицы А. По предположению Ai имеет ранг р. Таким образом, существует обратная (р X р) -матрица {AiA[)~{. Тогда, как было показано в параграфе 1.1, оператор ор- ортогональной проекции векторов пз пространства Rn на линейное подпространство {х; Л/Х = 0} определяется следующим образом: %. E.15) Подпространство Агх = 0 параллельно линейному много- многообразию, заданному пересечением гиперплоскостей gi(x) =0, is/. Идея метода проекции градиента заключается в опре- определении проекции градиента v/(x) на это подпространст- подпространство. Метод предусматривает (I) Вычислить ^x = PlVf(x), E.16) где Ах есть проекция градиента на грань, содержащую х. (II)**) Если Дх=^0, то г<Лтах {t: x — *Дх е S}. Следовательно, вектор х — ?сДх лежит на границе обла- области S, т. е. —?сДх определяет максимальное перемещение в направлении —Дх, которое может быть сделано, не вы- выходя за пределы S. Определим t* следующим образом: min / (х — *Дх) = / (х — **Дх). c Пусть х' = х — /*Дх. *) Если ни одно из ограничений не является активным в вы- выбранной точке х, то можно улучшить выбор х, применив методы оптимизации без ограничений. Поэтому будем полагать, что по меньшей мере одно ограничивающее уравнение активно. **) Если х лежит внутри S, то множество / пусто и Pi = /п. Следовательно, Дх = V/(x). В этом случае данный метод оказыва- оказывается обычным градиентным методом.
5.5. МИНИМИЗАЦИЯ ПРИ ЛИНЕЙНЫХ ОГРАНИЧЕНИЯХ 221 Если t* < te, то совокупность активных ограничивающих уравнений остается без изменений. Однако если t* = tcy то граница области S будет достигнута и новое ограничи- ограничивающее уравнение станет активным. Тогда если то нужно включить в / это /, определить новое Pi и вер- вернуться к шагу (I). (III) Если Дх = 0, вычислить При Дх = 0 согласно E.15) и E.16) v/(x) связан с \х следующим образом: Заметим, что jlx является ортогональной проекцией гра- градиента v/(x) на подпространство, натянутое на вектор- столбцы матрицы Ai. Таким образом, мы можем выразить вектор-градиент в виде Laln где или V/W+ 2(—^,) V^i (х) = 0. Согласно E.10) это выражение представляет собой ус- условие Лагранжа с компонентами множителя (—\и), 1 fg i ^ p. Таким образом, х* есть оптимальная точка, если \ii ^ 0 при i е /. Однако если некоторые из компо- компонент вектора \i положительны, то функция /(х) может уменьшаться дальше, если перемещаться от х в направ-
222 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ лении уменьшения g\(x), т. е. в направлении, где ?г(х) <0. При этом ограничение ?г(х) станет неактивным и i ис- исключается из /. Таким образом, далее должно следовать: (IVa) Если все компоненты вектора \х неположитель- пы, то остановиться, поскольку х оптимально1. (IV6) В противном случае исключить из Ai строку, соответствующую наибольшей положительной компоненте вектора |я и вернуться к шагу (I). 5.5.2. Метод приведенного градиента. Как и раньше, предполагается, что все ограничивающие уравнения ли- линейны. Кроме того, предполагается что любая гс-строчная подматрица матрицы А (составленной из коэффициен- коэффициентов dij) имеет ранг п. Введем т неотрицательных допол- дополнительных переменных (это является стандартным прие- приемом, используемым в линейном программировании; эти переменные называются ослабляющими переменными, поскольку они ослабляют ограничивающие неравенства), чтобы преобразовать систему неравенств в следующую систему равенств: Лх — H-w = 0, где w—тп-мерный ослабляющий вектор. Рассмотрим сле- следующее разбиение матриц А, Ьт — (Ьь ..., Ът) и vvT = = (wu ..., wm): ^1x + w1 = b1, ,42x + w2 = b2, E.17) где А\ — (nX /г)-подматрица матрицы Л, a b! n w1— иодвекторы, полученные .соответствующим разбиением векторов b и w. Допустимое решение х тогда опреде- определяется следующими условиями, накладываемыми на ос- ослабляющие переменные: w1 ^ 0. w2 2^ 0. Обращающиеся в нуль компоненты вектора ослабляющих переменны'х w определяют грань многогранника 5, которой принадле- принадлежит х. Если, например, равпы нулю п компонент век- вектора w, то х расположена на вершине ограничивающего многогранника S. Согласно предположениям, относящим- относящимся к матрице Л, в нуль могут обращаться пе более чем п компонент. Разбиение, определяемое уравнением E.17), произво- производится таким образом, что все обращающиеся в пуль ком- компоненты вектора w входят в w1. Тогда если х лежит па грани, та направление поиска локального минимума функ-
6.5. МИНИМИЗАЦИЯ ПРИ ЛИНЕЙНЫХ ОГРАНИЧЕНИЯХ 223 дни /(х) при условии, что х не выходит за пределы до- допустимых значений, совпадает с направлением Awj^O, если Wi = 0 и если это направление не приводит к от- отрицательному значению вектора w2. Поскольку w1 дает удобное средство представления допустимых перемещений, будем рассматривать w1 как независимую переменную и вычислять градиент функции /(х) относительно w1. С помощью простых вычислений получаем Этот вектор называют приведенным градиентом. До'пусти- мое перемещение теперь можно определить следующим образом: v) = — [Vw«/(x)]j, если [Vw»/Mb>0 или w}>0. Фактически можно взять любое направление; в котором /(х) уменьшается. Для определения Aw1 может быть применен ряд ускоренных методов, как, например, ме- метод параллельных касательных и другие методы, рассмот- рассмотренные в главе 4. При заданном Aw1 g: 0 из E.17) получаем Aw2 = A^r'Aw1. E.18) Чтобы получить перемещение максимальной длипы, не выходящее за пределы допустимых значений х, из- изменение w1 и w2 должно определяться следующими зна- значениями: где w1 е* б! еа = + 0*Aw' ¦ = пИп(в„ = max @; = max@; w и е2), W1 2 + + GAw1 jS: 6Aw2^0). 2( 0), При перемещении, определяемом выражениями w1 + 1 u w2 -f- 02Aw2, где О gi 0ь 02 ^ 0*, производится
224 гл. 5. минимизация функций с ограничениями поиск минимума функции /(х) min/(x + *Дх). t Если значение ?, при котором достигается этот минимум, меньше 6*, то перемещение заканчивается и вычисляет- вычисляется новое направление. В противном случае выбрать ком- компоненту вектора w2, которая обращается в нуль. Произ- Произвести взаимный обмен выбранной компоненты вектора w2 с наибольшей компонентой вектора w1. На основе нового состава независимых переменных вычислить новое на- направление. (Заметим, что эта процедура в точности со- соответствует операции ведущего элесмента в симплекс- методе, согласно которой производился обмен базисной (зависимой) переменной с небазисной (независимой) пе- переменной.) Когда Aw1 = 0, поиск закончен. Итак: I. Определить A^^j^r1];' если [у/ОО^ГЧ^О или ), J \ О в противном случае.. II. Если Aw1 = 0, то поиск закончен. В противном случае вычислить с, помощью E.18) векторы Дх и Aw2. III. Вычислить 0Х = max (G; w1 + GAw1 i? 0), 02 = max @; w2 + 0Дw2 ^ 0), /(х + **Дх) =min / (х+^Ах), 6* - min(9lf 6a). О</<0* E.19) Если t* < 0*, перейти к шагу (I); в противном случае произвести обмен обращающейся в нуль компо- компоненты вектора w2 с наибольшей компонентой векто- вектора w1. Переопределить А\, А2, Ь1 и Ь2. Возвратиться к шагу (I). Подобно тому как градиентный метод был приспособ- приспособлен к задачам с линейными ограничивающими неравен- неравенствами, метод Дэвидона был распространен на задачи с
6.6. НЕЛИНЕЙНЫЕ ОГРАНИЧЕНИЯ 225 линейными ограничивающими равенствами и неравен- неравенствами (см. статью Голдфарба A969)). Распространение метода приведенного градиента на случай нелинейных ограничений см. в сборнике под редакцией Флетчера A969) статью Абади. 5.6. Нелинейные ограничения: метод штрафных функций Так как осуществление минимизации без ограничений представляет собой более легкую задачу, чем минимиза- минимизация с ограничениями, то естественными являются попытки преобразования задач с ограничениями в задачи без огра- ограничений. Существует несколько подобных методов. Можно пы- пытаться осуществить это заменой переменных либо видои изменением целевой функции с помощью некоторых функ- функций ограничивающих уравнений. В некоторых случаях для исключения ограничений, накладываемых на х, может быть использована простая замела переменных. Напри- Например, если скалярная переменная % ограничена условием |#| =н 1, то можно использовать замену переменной х на О, где х = sin 6 или cos 0. Если х ограничена интерва- интервалом [0, оо], то снять ограничение на х можно, заменив х на г/, где х = еу или х = у2. Переменная у не ограничена. Если ограничения, накладываемые на х, заключаются в том, что х должен лежать между а и Ь, то простое пре- преобразование вида а+(&— a) sin29 позволит перейти к новой неограниченной переменной. Эти приемы, понятно, имеют ограниченною применение, но тем не менее ими пренебрегать нельзя. Более широкое применение получил так называемый метод штрафных функций. Принцип метода заключается в следующем. Целевая функция задачи минимизации с ограничениями соответствующим образом преобразуется с помощью некоторых функций ограничивающих уравне- уравнений. Минимум с ограничениями получается как предел последовательности минимумов преобразованной целевой функции без ограничений. Метод штрафных функций мо?кет использоваться для исключения части или всех ограничивающих уравнений.
223 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ Так, например, в задаче, содержащей как ограничиваю- ограничивающие равенства, так и ограничивающие неравенства, ог- ограничивающие равенства можно исключить, введя их в целевую функцию. Основная идея одного из вариантов метода штрафных функций, называемого методом внешней точки, ваклю- чается в таком преобразовании целевой функция /(•)» при котором значения преобразованной целевой функции в допустимой области в точности или приближенно рацны значениям функции /(•)» в то время как зна- значения вне области S очень велики по сравнению со значениями функции /(•)• Тогда минимум пер- первоначальной целевой функции не будет существенно отличаться от минимума преобразованной функции. Пре- Преобразовывать функцию /(х) можно путем суммирования с функциями ограничивающих уравнений или путем ум- умножения /(х) на некоторые функции ограничивающих уравнений. Обычным для метода штрафных функций яв- является аддитивное преобразование целевой функции. Гру- Грубо говоря, когда х нарушает одно или несколько ограни- ограничений, некоторый штраф накладывается на целевую функ- функцию /(х), увеличивая ее значение. Например, функцию /(х) можно преобразовать следующим образом (для слу- случая ограничений gi(x) ^0, i = lt .. .t m)\ F (x, k) = / (x) + k S [max(ft (x),0)]«, где k > 0, a ^ 1. Образуя последовательность миниму- минимумов функций F(x, kj) без ограничений, где /с^-^оо, полу- получают минимум с ограничениями как предел последова- последовательности минимумов без ограничений при соответствую- соответствующих условиях. В тех случаях, когда ограничивающие уравнения вво- вводятся в виде множителя, этот множитель иногда назы- называют множителем недопустимости (infeasibility factor). Ве- Величина множителя недопустимости в пределах допусти- допустимой области приблизительно равна единице и очень быстро растет при приближении х к границам области S и за ее пределами. Другой вариант метода штрафных функций, пожалуй, наиболее известный, был предложен Фиакко и Мак-Кор- миком. Этот метод иногда называют методом внутренней
6.6. НЕЛИНЕЙНЫЕ ОГРАНИЧЕНИЯ 227 точки. Согласно методу внутренней точки новая целевая функция образуется следующим образом: m Когда х приближается к границам области 5, значе- значение по меньшей мере одной из ограничивающих функ- функций приближается из области отрицательных значений к нулю. При этом к функции /(х) добавляется большая по- положительная величина. (Более подробное рассмотрение этого метода см. в книге Фиакко и Мак-Кормика A968), где он назван методом последовательной безусловной ми- минимизации. В этой книге содержится также исторический обзор методов. Описание программ для ЦВМ приведено в работе Мак-Кормика и др. A968).) Вкратце метод заключается в следующем. Согласно E.20) составляется последовательность целевых функ- функций {F(x1 &<)}, для которой выбирается монотонно убы- убывающая последовательность постоянных {&,}, ki-**0. Ре- Решается соответствующая последовательность задач ми- минимизации без ограничений (безусловной минимизации — по терминологии Фиакко и Мак-Кормика), в результате чего определяется последовательность минимальных то- точек {хг}. При определенных условиях такая последователь- последовательность {х*} существует и точка минимума х* задачи с ог- ограничениями получается в виде предела limx* = х*. Пример. Рассмотрим задачу минимизации следую- следующей целевой функции: /(#i, х2) = (х\ — IJ + {х2 — IJ при условии, что g\(x\, х2)= —х\ ^ 0, ?з 0*1» хъ) = х\ + х\ — 1 ^ 0. Из геометрических соображений ясно, что точка миниму- минимума лежит на кривой Ыь х2) =0.
228 ГЛ. б. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ Действительно (рис. 5.6), х\ = xl = 1/J/2. Однако мы все же воспользуемся этим примером, чтобы иллюстрировать работу метода штрафных функций. Так °'5 )го ''а Рис. 5.6. Точка минимума лежит на прямой х\ = х2. как g3 является единственным эффективным ограниче- ограничением, то примем преобразованную целевую функцию, за- заданную следующим образом: = (*1-1J+(*2-1J + i-*f-^' к>0. Исследуем поведение функции F(x, к) на прямой [2 1 х2 = х\ = х. Заметим, что г = у/ (х) = L х\ На рис. 5.7 представлены значения функции F(x, /с) на этой прямой при к = 0, 0,1 и 0,01. При к = 0 огра- ограничения не вводятся и я = 1,0 является минимумом (без ограничений). При к = 0,1 минимум располагается где- то в окрестности я=0,6. При к ==0,01 минимум близок
5.6. НЕЛИНЕЙНЫЕ ОГРАНИЧЕНИЯ 229 к х = 0,65. Чем меньше к > 0, тем ближе минимум без ограничений к действительному значению 1/]^2. Д При более тщательном рассмотрении рис. 5.7 видно, что F(jc, к) имеет второй локальный минимум при х > >1/уг2. При_достаточно малом & > 0 функция#(х, &)' при х >\1У2 после быстрого нарастания начинает Значение минимума с ограничениями Рпс. 5.7. Результат применения метода штрафных функций. уменьшаться, пока х не достигает окрестностей точки 1,0. Таким образом, при поиске минимума, если шаг недостаточно мал, существует опасность скачка с одной ветви кривой F(x, к) на другую (например, из точки А в точку В на рис. 5.7). При этом значение F(x, к) все время будет монотонно убывать. В этом случае последова- последовательность точек сходится к точке ложного минимума, рас- расположенной вблизи точки минимума без ограничении. Как показывает этот пример, для повышения точности важно выбирать малые значения к. Однако при малых к
230 гл. 5. минимизация функций с ограничениями функция F(x, к) быстро меняет свои значения при не- небольших изменениях х (другими словами, изменения V ^(х, к) вблизи границ области S становятся более рез- резкими), что делает более трудным поиск минимума. Поэтому уопех метода штрафных функций в очень сильной степе- степени зависит от выбора к. К сожалению, не существует за- завершенной теории метода и необходимы дальнейшие эк- экспериментальные исследования. Границы точности, обеспечиваемые методом, можно установить следующим образом. Предположим, что функ- функция /(х) и все функции g,(x) выпуклы, т. е. S выпукла, и что функция G в E.21)—выпуклая монотонная не- неубывающая функция одной переменной, определенная по крайней мере для отрицательных значений таким обра- образом, что G(y) > 0, у < 0, Hm G{y) = оо. Рассмотрим преобразованную целевую функцию т F(x1k) = f(x) + k%G(gi(x)). E.21) Эта функция выпукла относительно х при к ^ 0. В ме- методе Фиакко и Мак-Кормика Предположим, что S имеет внутренность и при каж- каждом к > 0 может быть найдена точка минимума х*(&) функции F(x, к). Тогда согласно методу штрафных функ- функций точка минимума с ограничениями х* определяется приближениями х*(&)при достаточно малых к. Так как х*(/с) является стационарной точкой функции F(x, к), то должно выполняться условие •= V/ I** (к)} + к 2 G' (gi (х* (к)) v gt (x* (k)) ИЛИ т v/1«* (ft)l + 2 ^iVff* (x* (ft)) = o»
Ь.7. ЛИНЕЙНАЯ АППРОКСИМАЦИЯ 231 где k kGf(( Верхняя и нижняя границы для /(х*) определяются выпуклостью функций / и gi. Для любого xeS / (х) i= / (х* (ft)) + <у/ (х* (ft)), (x - x* (ft))> = m - / (** (ft)) - 2 К <V8i (x* (k)), (x - x* (ft))>. il Из условия выпуклости gi(x)— gi(x*{k))^ < Vgi(x*(k\), x — x*(&) ). Следовательно, учитывая, что IiXigi(x) 5g 0, имеем / (x) ^ / (X* (ft)) + |j bl {gi (X* (k)) - gi (X)) > i—i Таким образом, минимальное значение функции /(•) ле- лежит между /(x*(ft)) H/(x Если эти границы оказываются неудовлетворительными, то значение к нужно уменьшить и выполнить дополни- дополнительные итерации. 5,7. Линейная аппроксимация *)' В заключение настоящей главы дадим краткое описа- описание методов, в которых нелинейную целевую функцию и ограничивающие уравнения заменяют последовательно- последовательностью аппроксимирующих линейных функций и тем самым сводят эадачу к задачам линейного программирования. В одном из этих методов допустимое множество S ап- аппроксимируется выпуклой оболочкой . множества точек (называемых точками сетки). Во втором методе допусти- допустимое множество S приближенно представляют пересече- пересечениями гиперплоскостей, аппроксимирующих нелинейные ограничивающие уравнения. ¦) Основано на материале статьи Ф. Вульфа в сборнике под ред. Абади A967).
232 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ Пусть известны значения /(х?) нелинейной функции /(х) в точках х1', 1 fg i fg p. Рассмотрим аппроксимацию функцпн /(х) с похмощью линейной интерполяции. Другими словами, будем пола- полагать, что если х лежит на отрезке |лх*' + A — |х)х*+1, то Этот тип аппроксимации с помощью линейной интерполя- интерполяции можно выразить следующим образом: j г=1 где Эти точки {хг} и называются точками сетки. При этой аппроксимации не равны нулю веса уа лишь небольшого числа точек сетки. Так, например, если / — выпуклая Рис. 5.8. Линейная аппроксимация с помощью интерполяции между двумя соседними точками сетки. функция, то положительные веса \ii приписываются вер- вершинам выпуклого многогранника, не содержащего других точек сетки. Сущность этого ограничения лучше всего ил- иллюстрировать одномерным случаем. На рис. 5.8 значение
6.7. ЛИНЕЙНАЯ АППРОКСИМАЦИЯ 233 функции /(х) в точке Р лучше всего аппроксимируется линейной интерполяцией между двумя соседними точка- точками Рг и Pz, а не линейной интерполяцией между несо- несоседними точками Рг и Р^ или Р\ и Рз, или Р\ и Р$ и т. д. Не останавливаясь на вопросе о том, как выбирать множество точек сетки, будем считать их заданными. Лю- Любую точку х можно представить в виде ж-S Другими словами, для любой точки выпуклой оболочки точек сетки будем рассматривать линейное приближение целевой функции /(х) следующего вида: Аналогично, ограничивающие уравнения аппроксимиру- аппроксимируются следующим образом: р Рассмотрим задачу оптимизации р min 2 Нч/0 при условии г=1 Теперь минимизация должна осуществляться относитель- относительно весов fit, I ^ i ^ р. Заметим, что задача теперь сведе- сведена к линейному программированию. Предположим, что {^гЛ^^~р\ является решением этой задачи линейно- линейного программирования, полученным с учетом того, что поло- положительными являются только те цг-, которые соответству- соответствуют вершинам выпуклого множества, не содержащего дру- других точек сетки. Это можно осуществить, решая задачу линейного программирования симплекс-методом с соблю- соблюдением условия,, что в базис входят только те щ которые
234 гл. б. минимизация функций с ограничениями соответствуют двум соседним вершинам. Эту процедуру аппроксимации называют аппроксимацией сепарабелъного программирования^ поскольку х* входят раздельно в целе- целевую функцию и ограничивающие уравнения. Наиболее сложная часть метода заключается в выборе новых точек сетки, который производится с целью уточнения аппрок- аппроксимации. (Подробности см. в статье Вулфа в сборнике под ред. Абади A967).) Если ограничивающие уравнения все выпуклые, то p Поэтому 2 Цг х1 принадлежит допустимому множеству. Если /(х) также выпукла, то Таким образом, решение линейной программы ограничи- ограничивает решение х* исходной задачи с одной стороны. Согласно другим методам аппроксимации ограничива- ограничивающие уравнения заменяют членами первого порядка раз- разложений в ряд Тейлора. Метод отсекающей плоскости Келли является одним из таких методов. Он предусмат- предусматривает последовательную замену нелинейных ограничи- ограничивающих уравнений линейными аппроксимациями, которая производится до тех пор, пака не будет получено ре- решение, с достаточной точностью удовлетворяющее не- нелинейным ограничивающим уравнениям (см. Келли {I960) и Вулф A967)). ЗАДАЧИ 1. Источник питания соединен с резистпвной нагрузкой RL через Г-образную цепь (рис. 5.9; Ro на рисунке обозначает внутреннее сопротивление источника питания). Номинальное зна- значение сопротивления резистора Rl равно 100 Ом. Однако факти- фактически сопротивление резистора Rl может иметь любую величину, лежащую в пределах от 50 до 150 Ом. Требуется выбрать такие вначения сопротивлений Ru R2 и Я3, чтобы изменения нагрузки источника питания оставались в пределах зЬ 5% от величины на- нагрузки при Rl ™ 100 Ом. При этом должев обеспечиваться мини-
ЗАДАЧИ 235 мум потери мощности в Г-образной цепи, т. е. максимум мощно- мощности, поступающей в /?l. Сформулировать это в виде задачи нели- нелинейного программирования. При решении этой задачи применить несколько методов, как, например, прямой поиск, градиентный ме- метод и т. п. 2. Убедиться в том, что условия регулярности в задаче 1 удовлетворяются. Источник питания Рис. 5.9. 3. Сравнить несколько методов минимизации на решении за- задачи минимизации целевой функции JL + V(aV*i + Ь)A/хг + Цх%) , а, &>0, при условии 0 < #ь *2 ^з 1. Точкой минимума является A,1). В параграфе 2.2 описана техническая задача, которая приводит к этой целевой функции. 4. Распространите необходимые условия Фритца Джона (Ку- (Куна — Таккера) на задачу минимизации, имеющую ограничения одновременно в виде равенств и неравенств. 5. (Мангасарян, 1965.) Пусть функции /(х), ?j(x), /=» ¦= 1, ..., m, дифференцируемы в Rn. Пусть С является выпуклым множеством в R71, /(х) псевдовыпукла на С и gj(x) j = 1, ..., т, квазивыпукла на С. (Определения псевдо- и квазивыпуклости см, в задаче 25 к главе 1.) Если существуют такие х*бСиГеЛт, что где то x* является глобальным минимумом функции /(х) на С -при условии g(x) ^0. Эта задача показывает, что условия Куна— Таккера для дифференцируемых функций достаточны для опти-
236 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ мальности в случае, когда /(х) выпукла пли псевдовыпукла, а ограничивающие уравнения квазивыпуклы. 6. Показать, что при функции g(x) — вогнутой и непрерыв- непрерывно дифференцируемой на открытом множестве, содержащем х*, из <V g (x*), z> <i О следует, что g(x + tz) <; g(x*) при доста- достаточно малом t. 7. Используя задачу 6 и лемму па стр. 209, показать, что в случае, когда все gi (•), i = , ..., m, вогнуты и обладают не- непрерывными частными производными на открытом множестве, содержащем х*, дифференциальная форма теоремы Куна — Такке- ра оказывается справедливой без каких-либо явных утверждений, относящихся к регулярности ограничений. 8. Рассмотренные в этой главе теоремы Фритца Джона и Ку- Куна — Таккера определяют необходимые условия оптимальности п, в общем случае, не определяют достаточных условий. (Некоторые условия, при которых теорема Куна — Таккера определяет доста- достаточные условия оптимальности, приведены в задаче 5.) В качестве примера рассмотреть определение методом множи- множителей Лагранжа максимума площади цилиндра при фиксирован- фиксированном объеме и исследовать критическую точку функции Лагран- Лагранжа. Показать, что матрица Гессе будет знаконеопределенной, поскольку критическая точка является седловой точкой, а не максимумом. 9. (Вычисление пропускной способности канала.) Передается последовательность сигналов, использующая т букв (символов) Ль..., Ат. Каждая буква последовательности выбирается неза- независимо. Вероятность появления буквы At, Р(Лг)^0. Вследствие наличия шумов в канале, по которому происходит передача сооб- сообщения, приемник принимает каждый из т возможных символов в виде одной из п возможных букв В\, ..., Вп. Качество канала характеризуется условной вероятностью P(Bi\Aj), i = 1, .,., п, / = 1,..., т: когда передается символ Aj, приемник распознает его как символ Z?, с вероятностью P(B{\Aj). Количество информации, переносимой символом Аи в теории информации определяется величиной log 1/[Р(Л,-)]. Среднее коли- количество информации на входной символ называется энтропией входного сигнала и обозначается Н(А). Таким образом, Н (А) =2 Р (А0 log _^_ = - 2 Р (At) log P (At). Так как эта величина определяет среднее количество информа- информации, до того как какой-либо из символов принят приемником, то ее называют априорной энтропией. Апостериорная энтропия входных символов, определяемая, когда В] принято, будет равна Если эту величину усреднить по всем символам, которые могут
ЗАДАЧИ 237 быть приняты, то получим Н (А\В) = 2 Р (*,) Я (Wj) = -1>Р {*№}) logP {Аг\В,). i i,j Поэтому естественно считать, что в среднем один принятый при- емнпком символ приносит количество информации, равное [Н(А)—Н(А\В)]. Эта величина называется количеством взаим- взаимной информации канала. Максимальное количество взаимной ин- информации, таким образом, будет равно С = тах [Н(А)-Н(А\В)], где максимизация осуществляется по множеству вероятностей, приписанных входным символам. Величина С называется пропуск- пропускной способностью канала. Сформулировать задачу определения С в виде задачи макси- максимизации с ограничениями и найти необходимые и достаточные условия оптимального распределения вероятности по входным символам. Отметим, что ограничения можно выразить следующим образом: х% 2= 0» 2 xi ** *¦ где Xi =» P(Ai). ' ~ 10. Рассмотреть минимизацию квадратичной функции /(х) = = а + атх + хт(?х/2 при условии выполнения линейного ограни- ограничения Ах = Ь, где А •— (тХп)-матрица, т <? п, а ранг матрицы А равен т. При заданной допустимой точке х° (а именно Ах° «= Ь) найти за один шаг значение х*, 'минимизирующее /(х). Эта задача может быть решена формальным применением множителей Лагранжа. Однако интереснее попытаться использо- использовать то обстоятельство, что геометрически вектор-градиент орто- ортогонален к линейному многообразию, определяемому множеством ограничивающих уравнений. Чтобы за один шаг, исходя из х0, получить х*, необходимо знать Q~l. В своей работе Голдфарб (Голдфарб, 1969) для вы- вычисления Q~l использовал метод переменной метрики и тем са- самым распространил этот метод на случай минимизации с линей- линейными ограничениями. 11. Пусть S есть ограниченный выпуклый многогранник в Rn. Пусть а% i = l, ..., т,— крайние точки множества S. Пока- Показать, что множество S можно выразить следующим образом: х;х = Лу, у^О, 2 У Iх где А = [а1, ..., ат] есть (п X т)-матрица. 12. Показать, что лемма Фаркаша, сформулированная в конце приложения 8, эквивалентна лемме Фаркаша в начале этого же приложения. 13. Показать, что проекция выпуклого множества на подпро- подпространство является выпуклым множеством.
238 ГЛ. 5. МИНИМИЗАЦИЯ ФУНКЦИЙ С ОГРАНИЧЕНИЯМИ 14. Показать, что допустимое решение х задачи линейного программирования, заключающейся в минимизации стх при условии Ах = Ь, х ^ О, является оптимальным решением, если и только если найдется К е Rmy для которого — <а<, Я> + С{ = 0, если я< > О, — <а*, Я> + с{ ^ 0, если х{ == 0. Обратить внимание, что непосредственное применение теоремы Куна — Танкера приводит к следующим соотношениям: а + <aS Х> - \ii = 0, \ц ^ 0; <jx, x> = 0.
Г Л А В А 6 ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ В ряде случаев одна и та же задача определения экс- экстремума может допускать различные формулировали. Воз- можйосН различным образом формулировать вадачу обычно бывает обусловлена существующими соотноше- соотношениями между переменцыми задачами. Примером этому может служить соответствие между электрическими пере- переменными: между напряжением и током, источниками на- напряжения и тока, сопротивлением и проводимостью и т. п., а также соответствие между множеством ветвей и мно- множеством узлов электрической цепи (см., например, книгу Денниса, 1959). Когда между двумя задачами линейного или нелиней- нелинейного программирования существуют определенного вида соотношения, то говорят, что эти вадачи двойственны друг к другу. Теоремы двойственности точно определяют эти соотношения. Часто ети теоремы имеют форму ут- утверждения, что при определенных условиях вадача ми- минимизации с ограничениями связана с определенной зада- задачей максимизации следующим обравом: если существует решение одной из вадач, то существует решение и Дру- Другой, причем эти решения совпадают. В этих случаях ис- исходную вадачу называют прямой, а связанную о sen со- соотношением двойственности — двойственной вадачей» Даже поверхностный просмотр заглавии и оглавлений литературы по линейному и нелинейному программиро- программированию показывает, что слова «двойственный» и «двойст- «двойственность» встречаются очень часто. Действительно, поня- понятие двойственности занимает очень видное место в йате- матическом программировании. Так как подробное рас- рассмотрение двойственности и связанных с этим вопросов требует привлечения математического аппарата, выхо- «дящего 8а рамки данной книги, то мы ограничимся
240 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ рассмотрением некоторых элементарных вопросов двойст- двойственности и приведем несколько примеров. Один из примеров связи между прямой и двойствен- двойственной задачами уже упоминался в параграфе 3.1.'Ряд других примеров двойственных задач порождается сле- следующим неравенством, связывающим между собой ариф- арифметическое и геометрическое средние: оно обращается в равенство при х\ = Х2. Так, например, max (х\х2I/2 = min (x\ + х2) /2 при условии хи х2^ 1)*= Это неравенство, связывающее между собой арифметиче- арифметическое и геометрическое средине, было попользовано Даф- фпном и др. A967) для разработки двойственных задач, образовавших специальную ветвь нелинейного програм- программирования, называемую геометрическим программирова- программированием. Геометрическое программирование используется в задачах оптимизации, содержащих полиномы известного вида, и рассматривается в параграфе 6.3. Рис. 6.1. Два способа нахождения Р*. Другим примером является двойственная связь, суще- существующая при описании поверхности в пространстве Rn. Многие из результатов применения понятия двойствен- двойственности основываются на простом геометрическом свойст-
e.i. задача линейного программирования 241 ве, заключающемся в том, что поверхность можно опи- описать как геометрическое место точек или как огибающую касательных. Так, например, если задана точка Р вне выпуклого множества S, то задача определения ближай- ближайшей к Р точки, лежащей на границе S, будет являться задачей минимизации, если граница определена как гео- геометрическое место точек. На рис. 6.1 Pi, P2, ... являются точками на границе. Если же граница определена как огибающая касательных к S(TU T2, ... на рис. 6.1), то задача формулируется как задача максимизации расстоя- расстояния от Р до касательных к S (см., например, книгу Бе* кенбаха п Беллмана A965) и задачу 4 к этой главе). Связь между этими двойственными описаниями известна под названием преобразования Лежандра (см. приложе- приложение 10). Теорема о минимаксе является примером двой- двойственности этого типа. Прежде чем перейтн к рассмот- рассмотрению условий, при которых справедлива теорема о минимаксе, рассмотрим несколько интересных частных случаев. 6.1. Задача лпнейиого программирования В тех случаях, когда как целевая функция, так и все ограничивающие уравнения линейны, мы можем связать с заданной задачей линейного программирования соот- соответствующую ей двопственную задачу линейного програм- программирования. Задача 1. Минпмпзировать Ьтх при условии х ^ 0, хеЛп, Ах ^ с, где А — (?п X п)-матрица. Задача 2. Максимизировать сту при условии У ^ 0, у €= Rm1 Ату < Ь. Из задач 1 п 2 для любых допустимых х и у имеем сту ^ (Ах, у> = <х, Ary) ^ bTx. F.1) Здесь используется то обстоятельство, что при задан- заданных двух неотрицательных векторах и ^ 0 и v ^ 0 име- имеем uTv ^ 0. В этом можно легко убедиться, выразив ска- скалярное произведение через составляющие. Из {6.1)
242 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ следует max cTy ^min Ьтх. F.2) у >0 х >0 Таким образом, любое допустимое решение у задачи 2 оп- определяет нижнюю границу задачи 1. Верхняя граница задачи 1 задается любым допустимым решением х. Обо- вначим оптимальные решения через х* и у*. Тогда можно найти оценки для Ьтх* сту* ^ Ьтх* ^ Ьтх. Докажем, что если задача 1 имеет (ограниченное) ре- решение *) х*, неравенство F.2) выполняется как равенст- равенство, а задача 2 обладает решением, и наоборот. Таким об- образом, вадачи 1 и 2 являются двойственными друг к дру- другу. Заметим, что прямая и двойственная вадачи имеют размерности пит при размерностях ограничивающих уравнений соответственно тип. Это обстоятельство дает возможность выбрать для решения задачу, связанную с меньшими вычислительными трудностями. Чтобы убедиться в том, что задачи 1 и 2 являются парой прямой и двойственной задач, удобно воспользо- воспользоваться при их рассмотрении функцией Лагранжа. Это, кстати, также послужит эвристическим введением к рас- рассмотрению двойственных задач некоторых классов задач нелинейного программирования. Ограничивающие уравне- уравнения задачи 1 можно представить в стандартной форме g(x) = с — 4x^0. Образуем модифицированную целевую функцию (функ- (функцию Лагранжа) в виде ф(х, X) = Ьтх + Ят(с Так как ограничения линейны, то выполняются условия регулярности ограничений Куна — Таккера (см. пара- параграф 5.3). Следовательно, имеем (X*t с _ 4х*> = 0, х* ^ 0, Я* ^ 0, F.3) *) Если в задаче линейного программирования х* и у* беско- бесконечны, то считается, что решения не существует (см. параграф 1.7).
6.1. ЗАДАЧА ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 243 где х* и X* — точка минимума и множитель Лагранжа. Задача 2 может быть преобразована в задачу минимиза- минимизации, если в качестве целевой функции принять —сту. При этом функция Лагранжа *(У. И) — - сту + \i*(Ay - b), [X ^ 0. Условия регулярности ограничений вновь удовлетворя- удовлетворяются, и мы имеем <ц*, 4ту* - Ь> = 0, jx* ^ 0, у* Ш 0. F.4) Заметим, что ф(х, у)=— г|)(у, х). Таким образом, если трактовать у как множитель Лагранжа задачи 1, а х — как множитель Лагранжа задачи 2, то эти целевые фупк- ции ф и ф будут равны между собой и противоположны по знаку. Отметим интересную связь, существующую между формулировками задач 1 и 2. Используя функцию Лаг- Лагранжа ф(х, у), легко показать, что задача 1 может быть сформулирована в виде min[cp(x,y)-y*Vy<p(x,y)] х>0 при условии Vyq>(x, yMgO, y^O. F.5) Аналогично, задача 2 может быть сформулирована в виде min [я|)(у, х) — хт V х^ (у, х)] при условии или, вводя ф(х, у), min [— ф (х, у) + хт Vx Ф (х, У)] =¦ у>0 = max [Ф (х, у) - хт Vx Ф (*, У)] F.6) у>0 при условии Улф(х, у)^0, х^О. Отождествляя у с X в уравнениях F.3) и F.5), мы можем условия, накладываемые на ограничивающие
244 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ уравнения, записать в виде V,cp(x*, у*)<0, .F.7); а пз F.3) имеем . <У*. Vvcp(x*, у*)> = 0, х*^0, у*^0., Аналогично, из уравнения F.4), отождествляя ц и х, по- получаем Vxq>(x*,y*)^0 и <x*V)Xcp(x*,y*)> = 0, I х*^0, у*^0. ) F>8) Таким образом, уравнения F.5), F.6), F.7) и F.8) со- содержат следующее более симметричное представление с помощью функции Лагранжа пары прямой и двойствен- двойственной задач*): min [Ф (х, у)-ут V>(p (х, у)] max [Ф (х, у) - хт Vxcp (х, у)] х>0 ^ при условии при условии Vycp(x, у) ^ 0, у ^ 0; V*(p(x, у) ^ 0, х ^ 0. Применяя прежние отождествления переменных, пз уравнений F.3) и F.4) получаем сту* = (у*, Ах*), F.3.А) Ьтх* = <х*, 4Ty*> F.4A) и, следовательно, сту* = Ьтх*. *) Если в F.6) Zj (i-я компонента вектора х*) положитель- положительна, то З (, У*) = 0. С другой стороны, если х* = 0, то дер (х, у*) В противном случае, если, начиная с нулевого значения, увеличи- увеличивать Х{, то ф(х, у*) будет уменьшаться. Предыдущие утверждения в точности совпадают с утверждениями уравнения F.8). Анало- Аналогичные соображения приводят к уравнению F.7).
6.1. ЗАДАЧА ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 245 Таким образом, экстремумы наших двойственных задач с ограничениями равны между собой. В соответствии с из- изложенным в параграфе 5.3 уравнения F.3) и F.4), а так- также F.7) и F.8) просто выражают то обстоятельство, что множители Лагранжа при неактивных ограничивающих уравнениях равны нулю. В линейном программировании уравнения F.3) и F.4) называют условиями дополняющей нежесткости (ослаб- (ослабляющими условиями). Этот термин соответствует опреде- определению ослабляющих переменных и и v, и = Ах — с ^ 0, v = b — Ату ^ О, которые служат для представления исходных ограничи- ограничивающих неравенств в виде ограничивающих равенств. Из уравнений F.3) и F.4) следует, что <у*, и*> = 0, <х*, v*> = О, где и* = Лх* — с, v* = b — Лту*. Поскольку (у, и) ^ 0 и (х, v) ^ 0, то эти два условия можно объединить в одно условие — условие дополняю- дополняющей нежесткости ><x, v>=0. Так как Ят(с — Ах)^0 при любом К ^ О, то из уравне- уравнения F.3) и определения функции ср(-, •) следует, что Для X*, учитывая, что х* есть точка минимума, Ф(х*Д*)^Ф(хД*). Таким образом, имеем ф(х*,у)^ф(х*)У*)^ф(х, у*). Это доказывает для задач линейного программирования теорему о седловой точке, сформулированную в парагра- параграфе 5.3. Теорема о седловой точке или равносильная ей теорема о мипимац^е, о которой шла речь в параграфе 5.3, будет применяться позже при рассмотрении теорем двойственности в более общей постановке.
246 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ Рассмотрим теперь применение симметричных фор- формулировок задач F.5) —F.8) в качестве способа полу- получения пары двойственных задач для квадратичной целе- целевой функции. Одновременно мы убедимся в осуществи- осуществимости такого подхода. 6.2. Задача квадратичного программирования Задачи оптимизации с линейными ограничениями на- называются задачами квадратичного программирования, ес- если их целевые функции квадратичны. Пусть прямая задача формулируется следующим обра- образом: максимизировать стх + xTDx при условии х^О, Лх^Ь. F.9) Чтобы обеспечить существование оптимального решения, будем полагать, что D — симметричная отрицательно оп- определенная матрица. В предыдущем разделе мы рассматривали вопрос о том, как использовать функцию Лагранжа для получения пары двойственных задач линейного программирования. Попытаемся использовать этот подход для поиска задачи, двойственной к поставленной прямой задаче квадратично- квадратичного программирования. Преобразовав эту задачу в задачу минимизации, рас- рассмотрим функцию Лагранжа в виде ф (Х, %) = _ (С*х + хт/)х) + Г (Ах - Ъ). Теперь исходную задачу можно сформулировать анало- аналогично уравнениям F.5) и F.7): min [Ф (х, Я) - 1Т V я Ф (х, Я)] F.10) х>0 при условии Легко видеть, что F.10) равносильно уравнению F.9). По аналогии с симметричными соотношениями для задач линейного программирования рассмотрим симметричный
6.2. ЗАДАЧА КВАДРАТИЧНОГО ПРОГРАММИРОВАНИЯ 247 вариант сформулированной выше задачи: max [Ф (х, X) - х* V* <р (х, К)) F.11) при условии Wp(x, Х)?0, х^О. Подставляя выражение для ф(х, к) в F.11), получим Таким образом, мы приходим к следующей формулировке вадачи: при условии с ^ —2Dx + АТХ, х ^ 0. Оптимальные точки х* и X* связаны между собой сле- следующими соотношениями: <х*, У1ф(х*,Я*)>=0 ИЛИ 0 = <х*, с + 2Ях* - Лт^*>, х* ^0, X* ^ 0, F.12) а также <^*, V^(x*, X*)>= 0 или 0 = <Я*. Лх*~Ь>. F.13) Покажем теперь, что эти две задачи действительно явля- являются двойственными, т. е. что min (ЬТХ - хт?х) = max (cTx + xTZ)x). F.14) ж>0 Поскольку х* и X* связаны между собой уравнениями F.12) и F.13), то имеем и стх* +<х*, Z)x*> = <x*, ЛТХ* — -<х*, ?>х*>.
248 гл. 6. двойственность в задачах оптимизации Тем самым устанавливается справедливость уравнения F.14). Пример. Система управлен егя с дискрет- дискретным временем. Любую систему управления, описывае- описываемую линейными разностными уравнениями, можно пред- представить следующими уравнениями: х = Ах° + 2?и, х° — известное начальное условие, 1 J F.15) где хт =(xj, х?, . *., х*), а и— последовательность входных сигналов (управление) и= (м0, ^ь • • •, ^n-i)T. Нижние индексы указывают дискретные моменты времени. Из со- соображений простоты входные сигалы взяты скалярными. Выходные сигналы системы обозначены через у. Внутрен- Внутреннее «состояние» системы х определяется уравнением F.15). Задача заключается в выборе такого управления и, которое бы обеспечивало минимальное значение функции / = ут<?у + iftfu, Q > О, R > 0. F.16) Подставляя уравнение F.15) в выражение F.16), по- получаем / = xTHTQHx + uTi?u = = \0TATHrQHAx° + 2urB'HrQHAx° + ит(Л + B'H'QHB) a. Таким образом, минимум функции / достигается при и* = _ (R + B'WQHB) -lB'HTQHAx°. Это минимальное значение равно ;* = х01Гх°, где = 4Т#Т{<? - QHB(R + BTHTQHB)-lBrHTQ}HA = = ATH4Q~l + HBR-lB"H')~x При получении последнего равенства использовалось
6.2. ЗАДАЧА КВАДРАТИЧНОГО ПРОГРАММИРОВАНИЯ 249 следующее тождество: (X + YZYr)~l = Х-1 - X-lY(Z~l + YrX-lY)-lYTX-K F.17) Это тождество справедливо при условии, что существуют указанные обращения матриц. В справедливости тождест- тождества можно убедиться путем непосредственного выполне- выполнения указанных операций. Рассмотрим теперь двойственную задачу управления x = Ax° + Bv, w = #x . F.18) со следующей целевой функцией, максимум которой дол- должен быть найден: Jd = wTWw — vT7v. Здесь V и W — положительно определенные матрицы. Как и раньше, функция /d квадратична относительно v. Подставляя F.18) в выражение для целевой функции, по- получаем Jd = x°TArHTWHAx° + 2vrBrHTWHAx° — Точка максимума v* определяется следующим образом: v* = (V - BTHrWHB)-lB'HTWHAx°. Естественно, что это выражение справедливо при усло- условии, что указанное обращение существует. Максималь- Максимальное значение целевой функции равно J d = x 1 dx , где с учетом матричного тождества F.17) Td = A*№{W~X - HBV~lH*B*)-lHA. Выберем теперь так W и F, чтобы удовлетворить ра- равенству Td = Т. При этом, очевидно, должно выполнять- выполняться равенство W~l - HBV~lHTBr = Q-1 + HBR~]BTH\ Можно показать, что такие W и V существуют. Тем са- самым мы убеждаемся в том, что уравнения F.15) и F.18) определяют пару двойственных задач. Д
250 гл. б. двойственность в задачах оптимизации 6.3. Задача нелинейного программирования В параграфах 6.1 и 6.2 нами были получены соотно- соотношения двойственности для задач линейного и квадратич- квадратичного программирования. Аналогичную формулировку двойственности при соответствующих условиях можно получить для более общих задач оптимизации. По-види- По-видимому, впервые такая формулировка была дана Вулфом A961). Теорема 1 (Вулф). Пусть функция /(х) и все функ- функции gt(x), i = 1, ..., m, выпуклые и дифференцируемые в Rn. Будем полагать, что ограничивающие уравнения удовлетворяют условиям регулярности Куна — Таккера. Пусть имеем следующую задачу минимизации: min/(x) при условии gi(x):gO, i = 1, ..., m. Эквивалентно эту задачу можно сформулировать в следующем виде: min [ф (х, у) — ут Vy Ф (х, у)] X при условии \7уф(х, у) 5^ 0, где Ф(Х,У)=/(Х)+ 2 Если сформулированная задача имеет решение х*, то в двойственной задаче max ф (х, у) у при условии V«q>(xf y)=0, у^О, существует такое у*, что (х*, у*) является решением двойственной задачи, и при этом экстремумы двух задач равны между собой. Доказательство теоремы см. в статье Вулфа A961). См. также работы Дорна A960) и Хьюарда A962). Дан- Данцигом и Коттлом A967) была дана более симметричная формулировка при дополнительных ограничениях х ^ 0 и у s^ 0 для дважды дифференцируемой функции ф(х, у),
6.3. ЗАДАЧА НЕЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 251 выпуклой относительно х и вогнутой относительно у. Они показали, что для пары двойственных задач можно дать формулировку в виде уравнений F.5) и F.6). Отметим, что предположения относительно функции ф(*, •) могут быть ослаблены, однако мы не будем углубляться в этот вопрос и для дальнейших подробностей рекомендуем об- обратиться к Уинстону A967) или Рокафеллару A969). Прежде чем завершить эту главу, приведем теорему двойственности, использующую теорему о минимаксе. Будем полагать, что условия регулярности ограничений удовлетворяются. Поэтому при дальнейшем рассмотрении будем пользоваться функцией Лагранжа, использованной iB теореме о седловой точке Куна — Таккера, Если обозначать тахг|)(хД) через /+(х), то можно ва- писать /(х), + оо в противном случае *). Поэтому при минимизации /+(х) относительно х можно не учитывать тех значений х, которые не удовлетворяют ограничивающим уравнениям. Таким образом, исходную задачу минимизации с ограничениями можно выразить в следующей форме: min /+ (х) = min max г|? (х, X). F.19) Это — прямая задача. Будем считать, что прямая задача совместна в том смысле, что множество допустимых реше- решений S = {х; ?г(х) ^0, 1=1, ..., т) непусто. Это явля- является необходимым и достаточным условием существова- существования таких х, при которых /+(х) < + °°. При любой вещественной функции \|)(*, •) имеем sup inf г|) (х, у) ^i inf sup a|) (x, у). Ух х У ¦) Строго говоря, вместо max надо было писать sup.
252 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ При условиях, когда sup и Inf действительно могут быть достигнуты, мы имели бы max min i|)(x, y)^min тахф (х, у). ух х у Если заменить у на X, то нижняя граница прямой задачи будет определяться выражением тахгтп^(хД), F.20) Покажем, что при соответствующих условиях это урав- уравнение не только определяет нижнюю границу минималь- минимального значения прямой задачи, но и фактически дает это значение. Таким образом, уравнение F.20) действительно является формулировкой двойственной задачи. Будем считать, что инфимум прямой задачи достига- достигается в конечной точке, если существует такое х*, что (**) + <К g (х*)>] = V4 inf sup [/ (х) + <Х, g (х)>]. Аналогично, будем считать, что супремум двойственной задачи достигается в конечной точке, если существует такое Ji* 2S 0, что inf[/(x) + <^*,g(x)>]=i;isup inf[/(x) +<X,g(x)>]. х V>0 x Можно сформулировать общие условия равенства и конечности экстремумов прямой и двойственной задач. Хотя это и не связано с существенными трудностями, однако требует громоздких выкладок. Поэтому мы огра- ограничимся частным случаем, предположив, что /(•)> ?<(•)» i = lt .. м т, являются выпуклыми функциями в Rn. Теорема 2. Если прямая задача совместна, удовлетво- удовлетворяются условия регулярности Слейтера и прямая задача имеет конечный экстремум, то экстремум двойственной задачи достигается в конечной точке и равен экстремуму прямой задачи. Для доказательства теоремы прежде всего приведем следующую лемму. t
6.3. ЗАДАЧА НЕЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 253 Лемма 1. Если прямая задача совместна и выполня- выполняются условия регулярности Слейтера, то при всех вещест- вещественных числах а<= (—°°, +°о) выполняется одно из сле- следующих условий: A) существует такое х*, что , g(x*)><a для всех Я^О; B) существует такое Я* ^ 0, что ?(x)>ig а для всех х. Одновременное выполнение условий A) и B) невоз- невозможно. Доказательство. Пусть a — произвольное вещест- вещественное число. Если существует такое х*, что /(х*)<а и gi(x*)e=0, i = 1, ..., Щ то, поскольку прямая задача совместна, имеем max [/ (х*) + (Я, g (х*))>] = / (х*) < а и выполняется условие A). Предположим теперь, что си- система неравенств не имеет решения. Согласно теореме о разделяющей ги- гиперплоскости существуют такие скаляры Го, п, ..., rm ^ ^ 0, не все равные нулю, что m rQ (f (x) — а) + 2/г#г (х) ^ 0 для всех х. Поскольку ограничивающие уравнения совместны и вы- выполняется условие Слейтера, имеем го ф 0. Разделив пре- предыдущее уравнение на г0 и перегруппировав члены, по- получаем условие B). Теперь мы подготовлены к доказа- доказательству теоремы. Доказательство теоремы 2. При любом 8 > 0 не существует такого х, что , g(x)><F-e при всех X ^ 0.
254 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ Согласно лемме 1, тогда при некотором Х*(е)^ 0 должно выполняться условие /(х)+<Я*(в), g(x)>^ 7-е для всех х. (А) Так как по предположению неравенства gl(x)<0, i = = 1, 2, ..., т, имеют решение, то из уравнения (А]_ сле- следует, что существует такое вещественное число X, что O^Jt*(e)^X, J = l,...,tt&, для всех е>0. Следовательно, без потери общности можно в уравнении (А) применить такую сходящуюся последовательность {еп}, где 8п-> + 0, я->оо, что Х*(еп)-* А,* ^ 0, в резуль- результате чего получим /(х)+(Я*, g(x)>^ V для всех х или х Так как всегда v^V, то тем самым доказано, что v=V. 6.4. Задача геометрического программирования Дадим краткий обзор и получим двойственные задачи для одного из классов задач оптимизации. В данном слу- случае целевые функции и ограничивающие уравнения пря- прямых задач являются полиномами относительно неотрица- неотрицательных переменных х\1 х%, ..., хп с положительными коэффициентами, например, следующего вида: /(x)=iiPi(x), F.21) где л (х\ — г гаПгаг2 гагп ct > 0, хй > 0, / = 1, .. м п, а показатели степени ап, а<2, ..., ain являются произволь- произвольными вещественными числами.
6.4. ЗАДАЧА ГЕОМЕТРИЧЕСКОГО ПРОГРАММИРОВАНИЯ 255 Функции этого типа Даффин и др. A967) назвали по- виномами (положительными полиномами). Ими же была разработана специальная методика оптимизации для это- этого класса эадач, называемых геометрическим программи- программированием. Класс таких функций естественно возникает в ряде задач технического проектирования. Ограничение переменных х\, х%, ¦.., хп положительными значениями соответствует тому, что положительны физические вели- величины, используемые как расчетные переменные, как-то: толщина, плотность, вес и т. п. Можно показать, что к этому классу относятся также некоторые задачи распре- распределения ресурсов. Пример 1. Положение спутника в пространстве оп- определяется т независимыми переменными x\f ..., хт (это может быть угловая скорость, ускорение и т. п.). Задача заключается в том, чтобы с помощью т независимых ре- реактивных двигателей при минимальном расходе топлива уменьшить величины этих т переменных х\, ..., хт до нуля. Известна оптимальная процедура уменьшения пере- переменной xt до нуля в течение промежутка времени Т\ при расходе /< единиц топлива, где Здесь А{ — постоянная системы, связанная с инерцией. Задача заключается в минимизации где Ti ограничена условием В данном случае общее время Г, в течение которого про- производится управление положением, представляет собой ресурсы, которые должны быть оптимально распределены между m подсистемами. Д Пример 2. Рассмотрим конструирование контейнера (ящика) заданного объема из металлических листов за- заданной толщины и удельного веса. Контейнер должен об- обладать минимальным весом. Целевая функция при этом
256 гл. 6. двойственность в задачах оптимизации равн^ /( ) Ч ~ при условии g(xu х2, хг) = х\х2х3 = с4, д:ь я2, #з > 0. Д Пример 3. Рассмотрим в качестве примера расчет электродвигателя переменного тока. Переменными здесь являются геометрические размеры и электрические пара- параметры, как-то: толщина ярма, отношение сечений пазов главной обмотки и стартовой обмотки, длина пакета, глу- глубина паза ротора, сопротивление кольца беличьей клет- клетки, магнитная индукция и т. п. Можно показать, что в данном случае целевая функция представляет собой сум- сумму стоимостей пластин и проводов в форме уравнения F.21). Л Пример 4. Рассмотрим задачу по расчету конструк- конструкций. В данном случае целевой функцией является общий вес конструкции, а переменными — площади поперечных сечений различных элементов конструкции. Ограничи- Ограничивающие условия определяются максимальными напряже- напряжениями и прогибами в основных точках конструкции. За- Заметим, что как целевая функция, так и ограничивающие уравнения являются позиномами. А Метод оптимизации задач, содержащих позиномы, как уже указывалось, называется геометрическим программи- программированием. Это название определяется тем, что неравенст- неравенство, согласно которому арифметическое среднее больше или равно геометрическому среднему, т. е. (*i + х2)/2 5^ Vx^xl, х1ч х2 > 0, называется геометрическим неравенством. Геометрическое неравенство успешно использовали Даффин и др. A967) для преобразования исходной задачи минимизации, т. е. прямой задачи с нелинейными ограничениями, в двойст- двойственную задачу с линейными ограничениями. Таким образом, практическая полезность двойствен- двойственности, которая упоминалась в начале главы 6, существен- существенно проявляется в геометрическом программировании. Хо- Хотя первоначально Даффин и др. A967) для получения задачи, двойственной к задаче геометрического програм- программирования, использовали геометрическое неравенство,
6.4. ЗАДАЧА ГЕОМЕТРИЧЕСКОГО ПРОГРАММИРОВАНИЯ 257 формулировку двойственности можно осуществить без об- обращения к подобным приемам. Поэтому мы будем следо- следовать первоначальной методике Даффина и др. только в той мере, в которой это необходимо для ознакомления с подходом этих авторов, а при изучении двойственности будем рассматривать ее как применение изложенной в разделе 3.6 методики минимакса. 6.4.1. Подход Даффина. При заданной функции F.21) введем произвольные положительные веса 6i, бг, ..., 6h и потребуем выполнения условия нормализации _ 2^-1. F.22) Запишем /(х) в виде /00 =6, (л (х)/8,) +\./+в*Ых)/вЛу. Используя неравенство, связывающее между собой арифметическое и геометрическое средние, можно за- записать /(х)>(рг(х)/бхN' (р2(х)/б2N' ...(/>,(х)/бЛN* - (^У^\,.<", F.23) i-i \ ' / . . - где •' h Необходимое условие того, чтобы уравнение F.23) вы- выполнялось как равенство, заключается в том, что (Pi/6i) = const при всех i = 1, ..., п. Если теперь на веса б наложить следующее дополнительное условие: k dt - 2 bfiji = 0, i = 1, ..., n, F.24) i то уравнение F.23) будет определять функцию только весов б и мы получим /00 ^vF)f F.25) где 9 \Т Ar.vw
258 гл. 6. двойственность в задачах оптимизации Условие F.24) называется условием ортогональности. Из F.25) следует, что min / (х) ^ max v F), причем максимизация осуществляется относительно S при условиях F.22) и F.24). Пусть /(х) имеет минимум в точке х* и /(х*) > 0. Покажем теперь, что существует такое б, при котором F.25) обращается в равенство. Поскольку /(х) есть полином, существует его производ- производная dfjdxi и, следовательно, или дх. = i п. (В) Определим следующим образом веса бг- •вГ=Ы**)//(**). * -= 1 Л. F.26) Эти веса удовлетворяют уеловию нормализации Как следует из уравнения (В), эти веса удовлетворяют также условию ортогональности. Согласно определению 6i справедливо также следующее соотношение: или П (/(х*)N* » П (Pi (х*)/б*N^ F.27) г=1 г=1 Левая часть уравнения F.27) согласно условию норма- нормализации равна /(х*). Правая часть равна vF*), посколь- поскольку б* удовлетворяет условию ортогональности. Тем самым мы приходим к искомому соотношению двойственности /(х*^ = v_F*i. . F.28)
6.4. Задача Геометрического программироёайий 259 Это соотношение, совместно с уравнением F.26), образу- образует необходимое условие того, чтобы неравенство F.25) выполнялось как равенство. Решение двойственной зада- задачи определяет долю, которую составляет каждый член Pi(x) от функции /(х). Из уравнения F.26) видно, что 8г как раз и определяет долю, которую ?-й член, #г(х*), составляет в /(х*). Важно подчеркнуть, что эта инфор- информация может быть получена из решения двойственной за- задачи, т. е. без знания х*. Когда двойственная задача решена, х* можно полу- получить решением системы линейных уравнений относитель- относительно 1пхи i = 1, ..., п. Так, например, из F.26) и F.21) х*\ i — \ к i /' — ' * * *' " Уравнения ограничений также приводят к аналогичной системе линейных уравнений относительно \nxti i= I, ... ..., п. Таким путем мы получаем систему TV линейных уравнений с п неизвестными, где N > п. Некоторые из этих уравнений могут быть линейно зависимыми. Кроме того, можно показать, что каждое уравнение, соответст- соответствующее нулевому весу, должно быть исключено перед ре- решением системы уравнений. Вопросы вычислений в гео- геометрическом программировании, в том числе и только что упомянутый, могут быть найдены в статьях С. J. Frank, «An Algorithm for Geometric Programming» и R. Schin- zinger «Optimization of Electromagnetic System Design», помещенных в сборнике под редакцией Лавп и Фогеля A966). Пример 5. Если дана простая целевая функция f(x) =ax2 + b/x2, at Ь > О, то непосредственно видно, что ' а:г2\ 1/2/ Ъ \ 1/2 _ ._ г—г Таким образом,6i = 62—1/2. Равенство имеет место при х2 = |/Ь/а. Следовательно, min/(s) = /[(Ь/аI/4] = 2{аЪ)и2. А 9*
260 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИЙ Пример 6. Целевая функция равна /(*1.*2.2з) ^ 77 + Т1 + сх*> а> Ъ,с>0. Следовательно, необходимо найти максимум функции при условии б. + б2 + б3=1, di = - б, + б2 = 0, С?2 = — Si — 62 Ч~ ^з = 0. Решая эту систему относительно весов б, получим Д* 1 ?* 1 Д* 1 01 = —I 02 = —, Оз = — И v(8*) = DaI/4Db)I/4Bc)I/2 = 23/2a]/4b1/4c1/2. Таким образом, как первый, так и второй члены состав- составляют одну четверть от /(х*). Оптимальное значение х* находим путем решения уравнении С*2 - ~Т" И Ц ~ ' В результате получаем х\=УФ и ^2-21/2а1/4Ь1/4с-1/2. Л С помощью релаксации условий нормализации для ве- весов, относящихся к ограничивающим уравнениям, можно показать*), что уравнение двойственности F.27) оста- остается справедливым, даже когда задача минимизации имеет ограничения в следующей форме: Задача нахождения максимума с ограничениями (т. е. двойственная задача) по-прежнему имеет линейные огра- ¦) См. книгу Даффина и др., § 3,3. (Прим, пер ев.)
6.4. ЗАДАЧА ГЕОМЕТРИЧЕСКОГО ПРОГРАММИРОВАНИЯ 251 ничивающие уравнения; условия нормализации и ортого- ортогональности аналогичны уравнениям F.22) и F.24). Однако за это удобное свойство формулировки двойст- двойственной задачи приходится расплачиваться. В простейших случаях, когда число переменных равно общему числу членов в целевой функции и в ограничивающих уравне- уравнениях плюс единица, решение двойственной задачи нахо- находится путем решения системы алгебраических уравнений относительно б. В других случаях нужно осуществить максимизацию функции vF). Ниже мы покажем, что, вообще говоря, в задаче геометрического програхммирова- ния при нескольких ограничениях целевая функция vF) двойственной задачи не имеет производной. При этом это отсутствие производной является неизбежным, поскольку оно по существу задается самой формулировкой двойст- двойственной задачи. Очевидно, что это делает максимизацию функции vF) нетривиальной задачей. Для ее решения должен быть либо применен прямой метод поиска, либо построена новая модификация градиентного метода. Как указывалось выше, при п, равном числу позино- миальных членов плюс единица, решение двойственной задачи получается с помощью решения алгебраического уравнения относительно б. В противном случае, учитывая неизбежность отсутствия производной у целевой функ- функции двойственной задачи, может оказаться более удоб- удобным оперировать непосредственно с целевой функцией прямой задачи, осуществив соответствующую замену переменных. Так, например, следующая замена переменных: U = In xij х{ > О, преобразует позиномы в выпуклые функции вектора t= (tu ..., tn)\ Пример 7. Минимизировать при условии XU Z2 > О, * (rv хг) = d4l4' +ex[1xl2 ^1, a, b, с, d, e> 0,
262 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ Эта задача преобразуется в следующую: минимизировать a2t2) при условии ipi(*h h) = Ь(*и fe) = Ограничения #i > 0, #2 > 0 исключаются, так как — оо < t\, t2 < 00. Ограничение на* ifi эквивалентно ог- ограничению (Mi + 02^2 ^ —Inc. Эти ограничения вместе с ограничением на % определя- определяют выпуклую область. На рис. 6.2 показана допустимая б S область *S для чая, когда частного слу- слуРис. 6.2. Допустимая область для задачи геометрического программирования. = 82 = 1, б2 = 81 = 0. А При замене a\t\ + аг^2 на хи Mi + M2 на ж2 и т. д. очевидной становится деком- декомпозиция задачи, поскольку теперь целевая функция зави- зависит от х\ и Х2, а уравнения ограничений — от Xz, #4, #5. Фактически эти переменные зависимы, поскольку все они определяются перемен- переменными t\ и гг. Подобные замены переменных будут исполь- использоваться в следующем параграфе. 6.4.2. Применение теоремы о минимаксе. Следуя Кэно- Кэнону*), получим теперь двойственную формулировку зада- задачи геометрического программирования путем применения уравнения F.19) параграфа 6.3. С этой целью удобно переписать прямую задачу в следующем виде: минимизи- минимизировать /(хо) при условии ?t(xt) ^0, i= I, ..., ттг, i = 0, 1, ?() = Агх + m, *) Частное сообщение Кэнона. См. также книгу Зангвилла A969)^ где дана аналогичная трактовка.
6.4. ЗАДАЧА ГЕОМЕТРИЧЕСКОГО ПРОГРАММИРОВАНИЯ 263 где gi( • )—выпуклая функция, определенная на Rqt, i = О, 1, ..., т, a Ai и Ьг — матрицы соответственно раз- размерностей (qiXn) и (#гХ1). Переменные этой задачи составляют вектор z = (х0, xi, ..., хто, х)т. В соответствии с F.19) можно записать следующее выражение, эквивалентное прямой задаче: Г т min max / (х0) + 2 K т 1 - 2<Ц«,Х|-^М-Ь,> , F.29) i=0 J где [X = (|ij, fxj, ..., [х^)т.Из F.20) получаем следующее выражение для двойственной задачи: г т max min / (х0) + 2 KSi Ы) — ^О.ц z L *=1 m Л - 2 0ХмХ*-^х-Ь*> . F.30) i=0 J Далее мы будем вместо минимума и максимума писать inf и sup, чтобы не проверять, выполняются ли условищ при которых экстремум достигается. При фиксированных К ^ 0 и \х операция инфимума может быть выполнена над каждым членом inf z I s= m L i=o = inf [/ (x0) — < ft>. xo» " i=0 m i=0 m „b,>. ^, X| —Atx — 1 m f inf 2 <^Ipi x i=0 ,x>. F.31-) Последний член равен — oo, если только не выполняется условие т 2^ = 0. F.32) 1=0 * Ч Поэтому, поскольку нас интересует вычисление супрему- супремума выражения F.31) относительно X «S 0 и \i, можно без
264 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ потери общности ограничить \х условием F.32). Тогда двойственная задача может быть записана в следующем виде: найти [тп m  (/)* (к) + 2 Ш* Ы + 2 <И1, ь<> (б.зз) при условии m Здесь использованы следующие обозначения: W =inf 1/ (хо) ~ <1*ь. Х«>Ь F-34) »i)== SUP inf (G.35) Заметим, что ограничивающие уравнения двойственной задачи линейны. Возвращаясь к обозначениям, функции /, и (gt)* в соответствии с введенными определениями можно рас- рассматривать как преобразования функций / и g{. Операции преобразования (• ).# и (•) * связаны между собой. Чтобы убедиться в этом, рассмотрим g*v Если Xi > 0, то inf iXift («О — <|i*. xi>] = « Xt inf \gt (xt) - <|i<A,f x,>] = X, (ft)* (|i«.'Xf), F.3G) где Если Xt = 0, то f-°° еСЛИ ^^J F-37) 0, если jjt? = 0. Таким образом, согласно F.35) —F.37) получаем
6.4. ЗАДАЧА ГЕОМЕТРИЧЕСКОГО ПРОГРАММИРОВАНИЯ 265 следующую связь между (•)* и (•)*: sup %i (ft)* (HjA*), если ^т^О, max [0, sup Xt (ft)* @)], если \it = 0. * Если Ш*@) >0, то supA*(ft)*(O) = 00, а если (?)*@) ^0, то supXi(^i)*(O) =0. Поэтому выражение F.38) можно объединить в следующее уравнение: F-39) Применим теперь приведенную формулировку двойст- двойственной задачи к следующей задаче: минимизировать /(xo)=2/j F.40) при условии к где . Как видно из примера 7, путем замены переменных ti = е > 0,— оо < ж< < оо, j = 1, .. м и, задачи геомет- геометрического программирования с переменными ?i, ..., tn можно представить в виде задач минимизации с ограни- ограничениями с разделенными переменными целевой функции и ограничений. : При заданной функции г согласно F.34) имеем п 2 \*>i A — In |лг)—1. если jii^O, г=1 — оо в противном случае, 1/ Q ,, . .
266 ГЛ. 6. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ Из F.39) и F.41) следует n \ / n + I 2 Pi Mn 2 И-* Ь если !-l^0» [— oo в противном случае. Так как в двойственной задаче F.33) супремум опреде- определяется относительно fio, fij, ..., \im, то области [Яо <С О, jLti < 0, i = 1, ..., т, в F.41) и F.42) можно исключить. Тем самым двойственная задача геометрического про- программирования задается следующим образом: sup [(/)* Ы + 2 Ш* (|i|) + 2 <Mi, Ь,>I F.43) при условии m - * ' ' 2 -4?(i| = О, где согласно F.41) и F.42) (/)*Ы= 2 fx7- (I — In fx7) Здесь двойственная задача имеет более простые линейные ограничения, чем прямая задача. Однако целевая функ- функция не имеет производных в точках, где ji,- = 0 при не- некоторых /. Как уже указывалось, это может вызвать вы- вычислительные трудности при локализации максимума це- целевой функции (поскольку максимум может оказаться на границе области [i ^ 0). ЗАДАЧИ 1. Дана единичная окружность и точка Р с координатами C, 0). Найти точку Q на единичной окружности, ближайшую к точке Р. Сформулировать эту задачу (а) в виде задачи
ЗАДАЧИ 267 минимизации расстояния от Р до Q min где x2+i/2=l, и (б)—в виде задачи максимизации расстояния от Р до прямой, касательной к единичной окружности в точке Q. 2. Рассмотреть систему управления с дискретным временем, описываемую уравнением xi + i = axt + buv « = 0,1 n, *o=O, (A) где Xi — «состояние» системы в i-ii момент времени, a Ui— вход- входной сигнал (управление) системы в i-ii момент времени. Для про- простоты будем полагать, что xt и и,- — скаляры. Тогда состоянием может быть, например, положение корабля (или частицы) на пря- прямой линии. Параметры а и b также являются скалярами. Это мо- могут быть соответственно постоянная времени и коэффициент пе- передачи. Образуем следующие /г-мерные векторы: X = (Xh Х2, ..., Xn)r, U = (Mo, Ml, .-ч Un-l)T. Тогда уравнение (А) можно записать в виде х = #и, (В) где В — (и X п)-матрица. Например, при п = 2 Пусть цель управления заключается в минимизации функции / = хт<?х + uT#u = uT (BtQB +i?)u при условии ^u = х is с, х ^ 0, где R положительно определена, ас — гс-мерный вектор-столбец. С физической точки зрения вто- второй чл(М1 целевой функции можно трактовать как выражающий энергию пли мощность. Так, например, если корабль приводится в движение электродвигателем, то и{ может быть током двигателя в i-ii момент времени. Первый член можно трактовать как обоб- обобщенное расстояние от начала. Ограничивающие уравнения озна- означают, что входные сигналы должны быть выбраны так, чтобы х лежал бы справа от х0 — 0 и от с, другими словами, в любой мо- момент времени i требуется, чтобы Xi ^ max@, сг), i = 1, 2, ..., п. Иначе говоря, задача требует, чтобы корабль находился настолько близко к началу, насколько это совместимо с ограничениями при минимуме мощности, расходуемой кораблем. Какова двойственная задача? Что надо изменить, если хп ф 0? 3. Для задачи линейного программирования, приведенной в параграфе 6.1, определена функция Лаграпжа ф(х, X) = Ьтх + Кт (с — Ах).
268 ГЛ. б. ДВОЙСТВЕННОСТЬ В ЗАДАЧАХ ОПТИМИЗАЦИИ Проверить прямым вычислением условие седловой точки Ф(х*Д) ^ф(х*, Я*) gip(i, Я*). 4. Минимизация функции /(х) = xTQx/2 + стх, Q > О, при ус- условии Ах = b эквивалентна решению системы алгебраических уравнений Qx + с - ЛТЯ = 0, Ах - b = О, (С) где К — векторный множитель Лагранжа. Применить к функции /(х) преобразование Лежандра и получить двойственную задачу. Построить функцию Лагранжа для двойственной задачи и пока- показать, что при должном выборе переменных прямая и двойственная задачи приводятся к одной и той же системе алгебраических уравнений (С). 5. В методе штрафных функций, использующем G(g(x)), где G(') дважды дифференцируема, показать, что G(g(x)) выпукла при монотонно неубывающей выпуклой функции G(-) и выпуклой #(•). Попробуйте применить метод штрафных функций для мини- минимизации потерь мощности в задаче 1 главы 5.
Г Л А В А 7 СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ В предыдущих главах был изложен целый ряд мето- методов нелинейного программирования. Некоторые из этих методов непосредственно оперировали с функциями, в ко- которых использовались вектор-градиенты, а в некоторых применялись матрицы Гессе. Возникает вопрос, почему было необходимо рассматривать тако'е количество мето- методов? Не лучше ли было бы сосредоточить внимание чи- читателя на одном наилучшем методе? Ответ на эти вопросы заключается в том, что попытка точно определить, что такое «наилучший» метод, сталки- сталкивается со значительными трудностями. Когда дана какая- то задача, может оказаться, что некоторые методы следует отбросить как неприменимые. Так, например, если опре- определение частных производных как аналитическими, так и численными методами оказывается невозможным или очень сложным, то можно с самого начала отбросить ме- методы групп (II) и (III). Однако даже после того, как не- некоторые методы будут таким образом исключены, все же обычно оказывается необходимым осуществить выбор од- одного или двух методов из нескольких методов, примене- применение которых в данном случае возможно. Опыт показы- показывает, что не существует единственного метода, который с успехом может быть применен к широкому кругу за- задач, встречающихся на практике. Это1 не является неожи- неожиданным, поскольку задачи, выдвигаемые практикой, ха- характеризуется большим разнообразием. Это могут быть задачи со слабой нелинейностью и с резко выраженной нелинейностью, с малым числом переменных и со многи- многими переменными, с одним экстремумом целевой функции и со многими локальными экстремумами. Когда дана какая-либо из задач оптимизации, нам бы- бывает желательно выбрать метод, по возможности однознач- однозначно определяющий порядок операций, приводящих к ре-
270 ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ шению задачи. Поэтому важно знать, существует ли какая-либо разумная основа для выбора частного метода. В литературе были сообщения о некоторых попытках дать ответ на этот очень актуальный вопрос (Брукс A959), Флетчер A965), Бокс A966), Колвилл A968), Ковалик и Осборн A968)). Некоторые ме- методы сравнивались между собой на общих тестовых функ- функциях. Такой характер исследования используется также при создании алгоритмов разрабатываемых программ для перспективных машин, предназначенных для решения больших задач нелинейного программирования. Сравни- Сравнительно небольшое число попыток систематического срав- сравнения различных методов объясняется частично большой трудоемкостью, а частично — трудностью выбора объек- объективной и исчерпывающей основы для сравнения. Большая трудоемкость подобных сравнительных ис- исследований говорит о целесообразности проведения этих исследований сообща несколькими вычислительными цен- центрами. Однако это еще более затрудняет объективное сравнение вследствие того, что различные вычислитель- вычислительные центры оснащены различными вычислительными ма- машинами и имеют различное программное обеспечение. Одна и та же программа на однотипном машинном обо- оборудовании требует различного времени решения вслед- вследствие различной эффективности различных трансляторов. Кроме того, программы, составленные по одному и тому же алгоритму различными программистами, могут суще- существенно различаться. Критерии сравнения. Для сравнения методов минимизации могут использоваться один или несколько из следующих критериев. (I) Точность, т. е. степень близости конечного значе- значения целевой функции и конечного вектора переменных к истинным минимальным значениям. (II) Число вычислений значений функции или произ- производной, производимых в процессе решения задачи. (III) Машинное время в секундах. Критерий (I) вовсе не учитывает времени и поэтому не пригоден в большинстве случаев. Нас интересует точ- точность, которую можно получить при затратах машинно- машинного времени, лежащих в разумных пределах. Критерий (II) подходит к задачам с очень сложными целевыми
ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ « 271 функциями и малым числом переменных, в которых вре- время, необходимое для выбора следующей точки, много меньше, чем для вычисления значения функции. Он не очень подходит к почти линейным задачам с большим числом переменных и ограничений, в которых затраты времени на вычисление значений функции не являются основными. Бокс A966) использовал критерий (II). При этом он предполагал, что вычисление значения одного гс-мерного вектор-градиента эквивалентна лг + 1 вычисле- вычислению значений самой функции. Это обосновывалось тем, что в рассматриваемых им задачах время, расходуемое на вычисление значений функции, значительно превос- превосходило время на организацию поиска. Брукс A959) в качестве критерия брал усредненную меру продвижения к минимуму за данное число шагов, достигаемого из ряда случайно выбранных точек. Так как различные шаги могут требовать различного времени, то этот критерий не представляется пригодным и в даль- дальнейшем рассматриваться не будет. Ко'лвилл использовал критерий (III), соответствующим образом нормализован- нормализованный средним временем выполнения обращений опреде- определенных типовых матриц, чтобы учесть различие скоростей вычисления на различных машинах. Большие задачи требуют значительно большего вре- времени на программирование, отладку программ и собст- собственно вычисления. Поэтому для сравнения в большин- большинстве случаев используются небольшие тестовые задачи с двумя или тремя переменными. Следует, однако, отме- отметить, что результаты, полученные на малых задачах, не всегда справедливы для больших задач. Это объясняет- объясняется тем, что в малых задачах может преобладать время, затрачиваемое на различные вспомогательные операции управления, не имеющие прямого отношения к задаче минимизации. Этим кратким рассмотрением вопроса о том, как сравнивать между собой различные методы, мы и ограничимся. Тестовые функции и результаты испы- испытаний. Остановимся на некоторых тестовых функциях, о которых сообщалось в литературе. Леон A966) ис- использовал пять тестовых функций двух переменных. Он исследовал несколько методов минимизации, каждый при пяти начальных значениях для каждой из пяти тестовых
272 ГЛ. 1. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ функций. Следующие три из этих функций были предло- предложены Витте и Холстом A964): F,(x, у) = (у - х2J + (I - хJ, Ъ(*, у) = {у-х2J + 100A -хJ, F3(x,y) = \Щу -хУ+ A-хJ. Четвертая функция была предложена Розенброком A960) 3,5 Рис. 7.1. Функция Розенброка. (см. рис. 7.1): F,(x, y)= 100(i/ -х*J+ A- Пятую функцию впервые применил Бил: где Сх = 1,5, С2 = 2,25 и С3 = 2,625.
ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ 273 Функции F\, F2, F3, ^4 все имеют при A, 1) мини- минимальное значение, равное нулю. F\ имеет овраг вдоль у = х2 и еще один овраг вблизи х = 1. Эта функция ана- аналогична функции F4, за исключением того, что функция Fa обладает более крутым оврагом вдоль у = х2. Функ- Функция F2 имеет крутой овраг вдоль х = 1. Функция F$ имеет крутой овраг вдоль у = х3. Влияние этих оврагов можно усиливать или ослаблять, выбирая масштаб зна- значений функций или переменных, другими словами, опе- оперируя вместо /(х) с а/(|5х) при некоторых а и р. Не- Неудачный выбор масштабных коэффициентов может сде- сделать неэффективными, вообще говоря, великолепные методы (см. конец параграфа 4.5). Согласно Леону, крутые овраги функций F^ и F\ вы- вызывают известные трудности (F3 больше чем F4), заклю- заключающиеся в том, что удлинняется процесс достижения минимальной точки, если при этом методы работают. Не- Некоторые из методов минимизации, испытанных Леоном, для большинства исходных значений даже не обеспечи- обеспечивали приближения к точке минимума. Перечисленные тестовые задачи являются искусствен- искусственными в том смысле, что их целевые функции унимодаль- унимодальны (т. е. локальный оптимум является глобальным опти- оптимумом) и имеют только две переменные. Предполага- Предполагалось также, что задачи с резко выраженной нелинейно- нелинейностью и малым числом переменных и задачи со слабой нелинейностью и с большим числом переменных обра- образуют два различных класса задач по отношению к эф- эффективности различных методов оптимизации (Кол в ил л A968)). Так, например, метод Недлера и Мида хорош только для задач с малым числом переменных (Бокс A966)). Можно полагать, что эти задачи главным обра- образом испытывают способность метода осуществлять сле- слежение на плоскости за криволинейным гребнем. (Постро- (Построение гладких тестовых функций п переменных см. у Флетчера A965).) Заметим, что все эти функции можно записать в сле- следующем виде: Естественно, что при этом надо соответствующим образом
274 ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ определить нелинейные функции zh ..., zk как функции от х и у. Например, Fi(*,V) = $ + 4 где z\ = у — х2, z2 = l — x. Далее при известном (Z*»Z2) без затруднения могут быть вычислены х*, г/*. Такая замена переменных полез- полезна, если х можно найти по z. Bokic использовал также следующую унимодальную функцию двух переменных: где суммирование производится по значениям t от ОД до 1 с (величиной шага 0,1. Напитывалось восемь различных методов минимизации без ограничений всех трех групп (I), (II), (III) при нескольких начальных точках. Ми- Минимум функции F6 равен ^бA, 10) = 0. Бокс применял трех-, пяти- и двенадцатимерные те- тестовые функции с резко выраженной нелинейностью, при построении которых использовались экспоненциальные и синусоидальные функции. Он производил сравнение трех методов на шести задачах оптимизации с ограничениями. В этих задачах соютветствующей заменой переменных можно было устранить ограничения. Так, например, ог- ограничение а{ :g Хх ^ Ъх устранялось с помощью замены переменной х{ = аг + (bx — at) sin2 у и При этом на yi не накладываются ограничения. Эти зада- задачи обладают целевыми функциями полиномиального ти- типа (степени от 2 до 5) и имеют от двух до пяти неза- независимых переменных. Число ограничивающих уравнений лежит в пределах от трех до восьми. Флетчер и Пауэлл использовали функцию F7 (*lf *lf x9) - 100 l(*g - 1О0J + (г - IJ] + 4 где 0, г — функции от х\, хч, задаваемые уравнениями х\ = г cos 2я9, X2 = r sin 2д9.
ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ 275 Эта функция обладает спиральным оврагом вместо пара- параболического оврага функции F±. Пауэлл A962) применял функцию Рв(я\, х2, хъ, ха) = = {xi+Юх2) 2+5(хг-х<) 2+ (х2-2хг) 4+10 (xiT-XiL. Она обладает минимумом при @, 0, 0, 0). В точке ми- минимума матрица Гессе этой функции вырождена. В заключение отметим, что при испытании методов оптимизации с ограничениями может оказаться удобным применение процедуры построения тестовых задач нели- нелинейного программирования с известным решением (см. статью Розена и Судзуки A965)). Как Леон, так и Бокс пришли к заключению, что ча- чаще всего эффективными оказываются методы группы (III) и в особенности метод переменной метрики. Брукс применял четыре тестовые функции. Три из них имели эллипсоподобные линии постоянного значения, а четвер- четвертая— искривленный гребень. Методы группы (HI) Брукс не испытывал. Из проведенных до настоящего времени сравнитель- сравнительных исследований наиболее систематическим является исследование Колвилла в сотрудничестве со многими дру- другими специалистами. Из типовых задач нелинейного про- программирования, встречающихся на практике, в том числе задач оптимизации электрических цепей и химических процессов, Колвилл выбрал восемь тестовых задач. В его исследованиях использовалось по несколько алгоритмов каждой группы: (I), (II) и (III). Всего было испытано 30 различных программ. Колвилл пришел к заключению, что методы второго1 порядка, т. е. методы группы (III), в среднем дают луч- лучшие результаты, хотя есть задачи, применительно к ко- которым методы других групп могут оказаться более эф- эффективными. Кроме того, были проведены сравнительные иссле- исследования более узкого круга вопросов, относящихся к ме- методам группы (II). В этих исследованиях проводилось сравнение трех вариантов метода сопряженных градиен- градиентов, алгоритма переменной метрики Дэвидона и его мо- модификации для квадратичной и усложненной неквадра- неквадратичной задач. Эта неквадратичная задача возникает в
276 ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИИ связи с оптимальным изменением орбиты космического корабля при импульсной тяге. Описание задачи можно найти в следующих работах: Джонсон A967), Келли и Май ере A967). Согласно заключению Келли в слу- случае неквадратичной задачи метод Дэвидояа и его модифи- модификация обеспечивают существенно более быструю сходи- сходимость, чем любой из методов сопряженных градиентов. Однако Келли указывает, что метод Дэвидона наиболее подвержен влиянию ошибок вычислений, которые могут привести к потере матрицей Я положительной определен- определенности. Этот вопрос нами рассматривался в параграфе 4.5. Модифицированный метод Дэвидона менее чувствителен к влиянию накопления ошибок благодаря систематиче- систематическому, после «каждых п шагов, отбрасыванию накоплен- накопленных ошибок. Было установлено, что этот мето'д обладает наилучшей сходимостью из всех пяти испытывавшихся методов при одинарной точности вычислений (соответст- (соответствующей девяти десятичным разрядам). Сравнение прямых методов. Исследования, проведенные Колвиллом и Келли, показывают, что в пер- первую очередь должна проверяться применимость метода переменной метрики и что в большинстве случаев, когда методы групп (II) и (III) могут быть применены, пря- прямые методы оказываются неконкурентоспособными с другими методами. Все же есть некоторые технические задачи, которые сформулированы так, что исключается возможность применения каких-либо методов оптимиза- оптимизации, кроме прямых. Поэтому представляет интерес срав- сравнение различных прямых методов. Такое сравнение прямых методов было выполнено Флетчером A965). Он произвел сравнение следующих ме- методов: метода Розенброка A960), в котором в каждом цик- цикле пробных перемещений используется п взаимно ортого- ортогональных направлений, метода Пауэлла, в котором осу- осуществляется поиск в п взаимно сопряженных направле- направлениях, метода Дэвиса, Сванна и Кэмпи (С ванн A964)), который по сложности стратегий поиска занимает проме- промежуточное положение между двумя предыдущими метода- методами (см. главу 4). Пауэлл осуществлял сравнение этих трех методов с помощью тестовых функций F4, F7 и F8, а также с по- помощью введенной им самим гладкой тестовой функции,
ГЛ. 7. СРАВНЕНИЕ МЕТОДОВ ОПТИМИЗАЦИЙ 27? используя в качестве критерия сравнения ошибку мини- минимизации [/(х)—/(х*)] в зависимости от числа произве- произведенных вычислений значений функции и выполненных операций минимизации. (В случае метода Пауэлла эти величины оценивались, поскольку точные значения полу- получить нельзя.) Экспериментальные результаты, получен- полученные Пауэллом, показывают, что1 при малом числе пере- переменных (п fg 4) лучшим оказывается метод Пауэлла, в то время как при большом числе переменных (п ^ 8) лучшие результаты дает метод Дэвиса и др. На основании этого Пауэлл делает заключение, что в тех случаях, когда тестовую функцию вблизи минимума хорошо приближает квадратичное выражение, метод Пауэлла обладает очень хорошей скоростью сходимости (а именно квадратичной). В тех же случаях, когда упомянутое квадратичное при- приближение не дает хорошей аппроксимации (что редко случается на практике), метод Дэвиса и др. оказывается более эффективным. Он предполагает, однако, что если метод Дэвиса и имеет какие-либо преимущества перед методом Пауэлла, то улучшенный критерий выбора новых сопряженных направлений даст больший выигрыш, чем эти преимущества метода Дэвиса. Пауэлл полагает, что критерий Пауэлла, используемый при выборе новых со- сопряженных направлений, слишком строг и поэтому за- замедляет работу метода. Однако это предположение не бы- было проверено1. В заключение этой главы необходимо еще раз отме- отметить, что наши представления об относительной ценности различных методов весьма расплывчаты и необходимы дальнейшие сравнительные исследования различных ме- методов. Представляется, что наиболее успешным было бы применение комбинации методов различных типов (како- (какого-то прямого, какого-то первого и какого-то второго по- порядков), так чтобы мы могли для начальной и конечной фазы решения задачи привлекать различные методы.
Г Л А В А 8 ОПТИМИЗАЦИЯ В НЕКОТОРЫХ ТЕХНИЧЕСКИХ ЗАДАЧАХ В данной главе приводится ряд дополнительных при- примеров, показывающих, как различные задачи техническо- технического расчета можно представить должным образом выбран- выбранными целевыми функциями и ограничивающими уравне- уравнениями. Поскольку подробное и тщательное рассмотрение большинства неэлементарных задач требует глубоких знаний различных технических дисциплин, мы вынужде- вынуждены будем во многих случаях ограничиться изложением подхода и приведением результатов без доказательства. Эта глава имеет целью охарактеризовать состояние при- приложений оптимизации в технических задачах и побудить читателя к дальнейшему изучению вопроса. Более детальные примеры и рассмотрение связи меж- между построением модели и решением задачи читатель най- найдет в книге Бракена и Мак-Кормпка A968), в которой приводятся примеры из исследования операций, химиче- химических процессов, космонавтики и других областей. Следующие два примера являются дальнейшей иллю- иллюстрацией идей, изложенных в главе 2. 8.1. Задача идентификации параметров Проанализируем задачу оценивания параметров дина- динамической системы по зашумленным данным измерений. Рассматриваемая нами задача представляет собой так называемую задачу идентификации параметров, играю- играющую важную роль в теории управления и связи. Оценива- Оценивание неизвестных параметров по существу эквивалентно одному из типов минимизации, который будет рассмот- рассмотрен ниже. Допустим, что динамика системы для равноотстоящих моментов дискретного времени определяется уравнением = ахг + иц
8.1. ЗАДАЧА ИДЕНТИФИКАЦИИ ПАРАМЕТРОВ 279 где Xi — значение переменной состояния (т. е. положе- положение), а щ — значение сигнала на входе системы в i-й мо- момент. Будем считать, что все значения щ известны, кроме того, для простоты будем полагать хо равным нулю. Переменная хг наблюдается при наличии помех в виде yt = Xi + пи i = 1, 2, ..., где г/» — наблюдаемое значение, а гг» — ошибка измерения. Будем полагать, что п{, i = 1, 2, ..., являются независи- независимыми гауссовыми случайными переменными с нулевым средним и дисперсией о2. Таким образом, функция сов- совместной плотности вероятности помех I 1 ^-n?/2<j« \ Р{пцп2у ..., Л|) = П ^т=~е г . (8.1) 1/2ла Уравнение динамики и уравнение наблюдения удобно записывать, используя векторные обозначения. При этом будем иметь у, = х, + п,, (8.2) где xl = (xu х2у ..., XiY и где у* и п, определяются аналогично. Определим ut сле- следующим образом: 11/ = (Во, UU ..., B/-l)\ Динамика системы при этом выражается уравнением Gx, = ии (8.3) где G — AX1) -матрица, равная G = h — aS, а5 — матрица, у которой элементы Si+\,<= 1, i = 1, 2, ... ..., I — 1, а все остальные элементы равны нулю. Получим теперь оценку а для а по методу максималь- максимального правдоподобия; другими словами, а должно макси- максимизировать выражение для />(У<1а) (см- подпараграф 2.2.2). Эта максимизация осуществляется в два этапа в виде max max р (уг \ a, Xj),
280 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ где х,) = р(п, = у, —х,). (8.4) Внутренняя максимизация ограничена условием (8.3). Правая часть уравнения (8.4) определяется уравнением (8.1). Эта максимизация эквивалентна минимизации выра- выражения показателя степени, min min E\ a xi при условии Gx, = U/, где Ei= (у«-х,)т(У|-*')/2о2. Ограничивающее уравнение учтем с помощью множите- множителей Лагранжа. Вводя векторный множитель Лагранжа К^ можно в следующем виде записать минимизацию показа- показателя степени Et относительно Xi при условии (8.3): min /, где ] = El-{h, Gx,-u,>. (8.5) Полагая градиент функции / равным нулю, (x,-y,)/o2-Gb, = 0t и подставляя это выражение в (8.5), найдем, что Таким образом, минимальное значение функции / равно /*= (Gyj-uO^GG^-^Gyf-uO/o2. (8.6) Согласно определению матрицы G в (8.3) можно записать Gy, — U/ = (у, — U/, — Syt) а, где а = A, а)т. Тогда (8.6) можно переписать в виде Таким образом, мы установили, что при оценивании по максимуму правдоподобия целевой функцией является
8.2. ЗАДАЧА ОПТИМАЛЬНОГО УПРАВЛЕНИЯ 281 /*. /* есть функция от а с резко выраженной нелиней- нелинейностью. Если GGT аппроксимировать выражением A + а2)//, то приближенную оценку по максимуму прав- правдоподобия можно найти минимизацией min атУа/ата, а где У = (У/ - Ui, -Sy,)т (у, - uh -5у J = I I Здесь целевая функция представляет собой отношение квадратичных форм. Этот метод естественно распространяется на динами- динамические системы, содержащие к неизвестных параметров, и на системы более общего вида, хотя само собой разуме- разумеется, что при этом минимизация становится более труд- трудной вычислительной задачей. (Подробности см. в статье Аоки и Ю A970).) 8.2. Задача оптимального управления 8.2.1. Общая формулировка. Ряд задач оптимального управления можно сформулировать как задачу минимиза- минимизации специального вида, подчиненную одновременно огра- ограничивающим равенствам и неравенствам, или как после- последовательность таких задач минимизации. Рассмотрим прежде всего систему управления, определяемую разност- разностным уравнением первого порядка xl+1 = Aitf + BiU*, O^i^N—L (8.7) где Вектор х{ представляет собой вектор состояния системы в i-й момент времени. Вектор и1' есть управляющий вход- входной вектор. Множества X(i) и U(i) представляют собой ограничения, наложенные на вектор состояния и управля- управляющий вектор.
282 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ Уравнения этого типа возникают при рассмотрении импульсных систем, а также при аппроксимации непре- непрерывных систем системами с дискретным временем. Это определяется тем, что при использовании цифровых ма- машин для решения задач, связанных с управлением систе- системами с непрерывным временем, производится преобразо- преобразование в сиютемы с дискретным временем. Для определенности выберем целевую функцию вида /= IMxSu*-1), i=i При этом w предполагается непрерывном относитель- относительно х и и. Ограничивающие множества предполагаются заданными следующим образом: Х@) =х° = известное начальное состояние, U(i) ={u,h-tfu^iO}, O^f^Jtf —1. (8.8) Здесь g, h, G и Н — векторы и матрицы соответствующих размерностей. Так, например, ограничение вида а ^ х <^ ga b можно выразить следующим образом: где 1п — (пХп)-единичная матрица. Векторы состояния можно исключить из выражения для / и ограничивающих множеств, если использовать (8.7) и в выражение для / и в выражение (8.8) вместо х1 подставить следующее его значение: х{ = ф.HХ» + I] %;+1В^> i^i^N, где ф<, i = I и q)i+\fj = Ai(pit). Теперь целевая функция является функцией от и0, ..., и*": / = р(и°, и1, ..., и»), а ограничения имеют вид г—1 <1*-2/>»У<0 и Ь-^ J-0 '
8.2. ЗАДАЧА ОПТИМАЛЬНОГО УПРАВЛЕНИЯ 283 где й'д g*j— G^i, ох° и A- i = Gify, i+i, Таким образом, мы преобразовали задачу оптимально- оптимального управления в задачу минимизации с ограничениями. Ясно, что можно было бы непосредственно выполнить минимизацию функции / при условиях g'- Однако эта формулировка содержит много больше пере- переменных, чем предыдущая, и в общем случае оказывается неэффективной. Динамика более общего вида описывается следующим разностным уравнением: xf+1 = i(x\ u\ t) O^i^N-1, где f — нелинейная векторная функция. Рассмотрим задачу в П% где s = Nr -\-(N + l)n, оп- определив z п множество Z в R3 следующим образом: L 111 , , . ., Z= {z, ufeC7(i), 0^i^N-l\ xf Сформулируем задачу: минимизировать p(z) при условии zgZh gl(z) = xi+l - f (xf, u\ i) = 0t0^i ^N. При этом допустимое множество S можно определить как S= {z; zeZ, ^(z) = 0, O^i^iV-1}. Множество S может быть выпуклым, может не быть вы- выпуклым или даже может быть пустым (т. е. не сущест- существует допустимого z). Если предположить, что множества X(i) и U(i) — компактные (замкнутые и ограниченные) и выпуклые и что функция /(•, •, •) непрерывна на (X(i)X U(i)), то если S непусто, оно является компактным множеством. Если множество gy(z) = 0, 0 ^i^ N — 1, выпукло, то множество S выпукло. Если р — выпуклая функция, то
284 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ задача является вадачей выпуклого программирования. Так, например, если все ограничивающие уравнения gx(z) = 0, 0 ^S i ^ N — 1, линейны, то достаточное усло- условие того, что z* является точкой минимума, заключается в существовании таких Я0, Я1, ..., Я*, что yz(p(z*, Я) (z — z*)^0 для всех zeZ, (8.9) где Ф(«Д)=РB)+ S <^.g*W> есть функция Лагранжа. В этом можно убедиться сле- следующим образом. Так как ф(-, •) выпукла на Z, то <p(z, X)- <p(z*, Я) ^у z9(z*, Я) (z - z*) ^ 0. Здесь первое неравенство обусловлено выпуклостью, а второе вытекает из уравнения (8.9); z* является глобаль- глобальным минимумом на S, поскольку z* е 5, gf B*) = 0, 0 ^ г ^ 7V - 1, и мы имеем Необходимые условия изложены, например, в статье Розена из сборника под редакцией Данцига и Вейнотта A969). 8.2.2. Задача линейного регулятора с квадратичной целевой функцией. Уравнения динамики многих задач управления (космические корабли, химические производ- производства и т. п.) нелинейны. Обычно при конструировании ком- компенсатора производится линеаризация уравнения дина- динамики относительно номинальной траектории (номиналь- (номинальных рабочих условий) и при этом получают систему ли- линейных уравнений динамики, справедливых при малых отклонениях от номинальной траектории. Если перемен- переменные управления можно изменять только в некоторые оп- определенные моменты времели, то мы имеем разностное уравнение типа xi+l = Ах* + Ви* при заданном x*f (8.10) где х* — вектор состояния, определяющий внутреннее со- состояние управляемой системы, аи' — переменная управ-
8.2. ЗАДАЧА ОПТИМАЛЬНОГО УПРАВЛЕНИЯ 285 ления (или манипуляции). Верхние индексы указывают дискретные моменты времени. Предположим, что А~{ существует. Пусть выходной сигнал системы имеет вид у' = Нх\ Целевая функция,, которую необходимо минимизировать, принимается равной ^>], (8.11) ,-о i=0 где Q и R являются соответственно симметричной поло1- жительно полуопределенной и положительно определен- определенной матрицами, а Р = IPQH. Задача минимизации форму- формулируется теперь следующим образом: минимизировать / относительно и0, и1, ..., х°, х1, ... при условии выполнения ограничивающего уравнения (8.10). Поскольку (8.10) является ограничивающим равен- равенством, мы используем векторный множитель Лагранжа к\ i = 0, 1, ..., для образования функции Лагранжа Ф = 2 i=0 Необходимое условие, определяющее оптимальную управ- управляющую последовательность, заключено в следующих ра- равенствах: О = ух.Ф = Рхг + к1 - АТК\ t = 1,2, ... (8.12) Исключив и* из разностного уравнения (8.10) посред- посредством подстановки получаем уравнение для х*
286 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ Из (8.12) следует уравнение для X* Xi+l = (A-l)TKi+ (A-l Если шести новый вектор '* то разностное уравнение для г{ можно записать в виде ' 2<+1.==^. (8.13) где Г Л Заметим, что размерность матрицы г|) в уравнении (8.13J вдвое больше, чам размерность матрицы А. Можно1 показать, что матрица г|) обладает следующим свойством. Е.сли X является ее собственным значением, то 1/Х также является ее собственным значением*). Пусть i|> имеет 2п различных собственных значений, ни одно из которых по абсолютной величине не равно единице. Тог- Тогда п собственных значений имеет абсолютную величину меньше 1, а другие п собственных значений — абсолют* ную «величину больше 1. Т Ршщще уравнения (8.13) t E«-^z°f f=l, 2, ... - '(8.С4У Пусть Г= [|\ ..., V, Г+1, ..., *2nL V- собствен- ные векторы с собственными значениями Xi, расположен- расположенные в таком порядке, что \Х{\ > 1, 1 < i ^ п. Тогда а(з = TJif~\ где A«=-diag(Xi, ..., Яп, Wit • • •» ^2п), и уравнение (8.13) можно nepeinncaTb в виде *) Вычислите г|з~!, выразив обращение через подматрицы. За- Затем покажите, что матрица ф подобна матрице ф. Напомним, что собственные эначения подобных матриц одинаковы. ¦¦) Нужно иметь в виду, что, в отличие от ранее введенного способа обозначений, верхний индекс при г|) и Л означает не по- порядковый номер, а степень матрицы. (Прим. перев.)
8.3. СИНТЕЗ ВХОДНОГО СИГНАЛА 287 Введем векторы г\\ 1 ^ I < 2/г, обратные векторам \\ выбрав векторы rjl так, чтобы Тогда Г = 5*, где S=W Л2п], • а * означает операцию комплексного транспонирования. При этом к-й элемент вектора TA{T~lz° можно предста- представить в виде {Хк){(г\к)*г°. Устойчивая работа системы требует, чтобы (tf)*zo = o или 711x° + Fi2^° = 0f где [V\\ F12] представляет собой матрицу, составлен- составленную из первых п строк матрицы 5*. Таким образом, Подставляя это значение ^° в (8.12), получим u° = R-{BTK° = - R-iBTVr2iVllx°. Так как интервалы управления определяются значениями i = 0, 1, 2, ..., то управление при i = /, / + 1, ... имеет те же значения, что и при начальном значении, равном xj. Таким образом, и* = при 8.3. Синтез входного сигнала при импульсно-кодовой модуляции *) Импульсно-кодоБая модуляция (ИКМ) получила ши- широкое распространение в ряде областей, например в те- телеметрии. На рис. 8.1 представлена структурная схема системы с ИКМ. Принцип ее работы можно описать ¦) Раздел основан на работе Гупты п Халла (Gupta S. С. and Hall T. G., On the optimum design of PCM signals with system constraints. IEEE Trans. Aerospace and Electronic Systems, v. AES-4, № 4 (July 1968), 499-504),
283 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ следующим образом. Сигнал, посылаемый передатчиком, обозначим x\(t); x\(t) представляет собой первую компо- компоненту вектора х(?). Вектор \{t) определяется уравнением х = Ах -f- Ът (8.15) где х я» \хи #2, ...» ?п)т. Выходной сигнал приемника в момент Т равел т «(Г) «??(*) МО Л, где д'@"— известный опорный сигнал. Можно показать, Шуи n(t) Фильтр передающего уотроистда дашумленньш канал Приемник Выходной * сигнал т . Опорный сигнал q(t) Рис. 8.1. Блок-схема системы ИКМ. что мощность шума на выходе приемника равна г ще N — мощность шума в канале. Задача заключается в выборе входного сигнала m(t), который максимизирует отношение сигнала к помехе s(T)/a(T) или, что эквива- эквивалентно, минимизирует с{Т) при фиксированном s(T) =S при условии, что анергия и величина входного сигнала удовлетворяют ограничениям =E и где Е и М — заданные величины,
8.3. СИНТЕЗ ВХОДНОГО СИГНАЛА 289 Введем следующие определения: о t (t) = s (t) =* J q (s) xl (s) dst t Расширим вектор x, введя в него эти величины в каче- качестве компонент. Вновь обозначим расширенный вектор {Хо, Хт, Хп+и Хп+2У=(ХО, XU •-., Хп+2)* через х. При этом вместо уравнения (8.15) будем иметь x = Fx + gm(t), (A) где F есть матрица размерности [ (п + 3) X (п + 3) ]. Теперь задача заключается в минимизации ^о(^) при условии Xn+l(T)=S1 xn+2(T)=E и \m(t)\<M, (В) где S также является заданной величиной. Согласно известному принципу максимума Понтря- гина (Пантрягин и др. A969)) эта задача может быть переформулирована в задачу отыскания граничных ус- условий для вспомотательного вектора р размерности (гс+3), определяемого уравнением p = -Vx#, Я=<р, х>. (8.16) Часть компонент вектора р(Т) определяется задачей, ос- остальные долйшы быть выбраны так, чтобы удовлетворить уравнению (В). Согласно принципу максимума Понтряги- на лучший входной сигнал будет определяться из усло- условия максимума Н по m, \m\^iM. Следовательно, сиг- сигнал m(t) будет представлять собой функцию от р(?): го@=ф[*, Р@]. (А) Этот сигнал минимизирует #о(ЗН). Теперь задачу можно сформулировать как такой выбор вектора р@), при ко- котором одновременно удовлетворяется (В) и определенные
290 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ условия, наложенные на рGт). Это требование сводится к выбору целевой функции J = |**+i (Т) - <S|2 + Кь2 (Т) - ?|2 + |р (Г) - pf, где р8 — заданное значение р(Т). Телерь задача формулируется следующим образом: min/, Р@) где х(Г), входящее в /, вычисляется из (А) с помощью m(t)=*(p(t, р|>, р@)]), а р[*; р@)] —решение уравне- уравнения (8.16) при начальном условии р@). 8.4. Распознавание принадлежности к классам: пример распознавания образов Пусть имеется ряд объектов, которые необходимо клас- классифицировать. Предположим, что каждый объект может быть достаточно хорошо описан конечным числом N свойств или признаков. Тогда для нашего рассмотрения каждый объект может быть представлен точкой х = = (tfi, ..,. я*)т в пространстве RN. При этом каждая ко- координата Xi имеет числовое значение, определяющее ве- величину i-то признака объекта*). Например, пусть объек- объектами являются некоторые химические растворы, о кото- которых известно, что они содержат TV химических элементов. Тогда в качестве признаков можно принять химические элементы (например, Na, К), а компоненты xt могут оп- определять концентрацию каждого химического элемента в соответствующем растворе. Если объектами являются формы сигналов, то признаками могут быть величины сигналов в N определенных моментов времени. При классификации множества заданных объектов мы должны каким-то образом количественно определять, что мы полимаем под подобными друг другу объектами. Пред- Предположим, что нам дано множество из М объектов, о ко- *)Практически выбор соответствующего множества признаков представляет собой важную, а в ряде случаев и наиболее трудную часть задачи распознавания образов. Однако мы не будем рассмат- рассматривать ее в данной книге.
8.4. РАСПОЗНАВАНИЕ ПРИНАДЛЕЖНОСТИ К КЛАССАМ 291 торых априори известно, что они принадлежат к одному классу*). Нам необходимо ввести меру близости или подобия, которая была бы мала в случае этих М объектов, шмшюль- ку по предположению эти объекты подобны друг другу. (Все они принадлежат одному и тому же классу.) Рас- Рассмотрим меру близости 7, определяемую следующим об- образом: J=K S U=i Здесь К — некоторая нормализующая постояннная, а d(x\ xj)—мера расстояпия между двумя объектами х* и х5. Таким образом, / представляет собой среднее расстоя- расстояние между объектами, принадлежащими одному и тому же классу. В качестве d(», •) мы можем принять**) д? (х\ х') = <х* - ж', А4А (х1 - хО> - \А (х« - х'Т, (8.17) где А — некоторая матрица. Заметим, что d представляет собой ранее введенное обобщенное евклидово расстояние. Учитывая уравнение (8.17), выражение для / можно пе- переписать в следующем виде: J = M4rATAX, ГДе В уравнении (8.17) А — матрица размерности '(JVXN). Необходимо наложить некоторые ограничения на эту матрицу Л, чтобы исключить тривиальный случай нуле- нулевой матрицы, при которой / = 0. Возможны два вида таких ограничений: пМ2 = 1 (В) *) Таким образом, эта задача представляет собой частный слу- случай так называемого распознавания образов с учителем. **) Выбор такого d можно обосновать, если привлечь некоторые дополнительные соображения. (См., например, Н и л ь с о н A965).)
292 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ И где (а1— i-я вектор-строка матрицы А. Рассмотрим ограничение (В). При этом задача опти- оптимизации может быть сформулирована следующим обра- образом: минимизировать /' = U(ATAX) относительно а\ ?= = 1, 2, ..., N, при ограничении (В). Минимизацию можно осуществить с помощью метода множителей Лагранжа. При этом функция Лагранжа L = tr {A1 AX) -ЯП (||а? - 1). Заметим, что N =% <а\Ха{>, ила (8-18) Таким образом, а* является собственным вектором, соответствующим Я<, где уравнение | X — KJn \ = 0 опре- определяет 7V собственных значений. Матрица X по построе- построению является симметричной и положительно полуопре- полуопределенной, т. е. X ^ 0. Предположим, что X > 0; тогда имеем Я< > 0, i = 1, 2, ..., iV, которым соответствует N собственных векторов. При это'м из уравнения (8.18) следует, что i=l /i=l ИЛИ \UN А =
8.4. РАСПОЗНАВАНИЕ ПРИНАДЛЕЖНОСТИ К КЛАССАМ 293 Условие нормализации собственных векторов определяет- определяется выражением*) п L. (О Теперь по известной функции cp(d), где d — среднее рас- расстояние между неклассифицированным объектом х и мно- множеством {хг, i = 1, 2, ..., Л/}, может быть принято реше- решение о том, принадлежит или не принадлежит точка х это- этому множеству. Задача выбора функции ф(х) является самостоятель- самостоятельной проблемой. Существует ряд как вероятностных, так и детерминистских возможных формулировок этой эадачи. Поскольку цель этого примера заключалась в том, чтобы показать, как может возникать в задачах распоз- распознавания образов задача оптимизации, а не сколько- нибудь подробно рассматривать саму задачу распознава- распознавания образов, то мы завершим наш пример рассмотрением линейного решающего правила при двух классах #i и Яои <Г(х) ^0, хеЯ,, <р(х) <0, хеЯо, где Ф (х) = klx + к0. Предположим, что есть N\ выборок, о которых извест- известно, что они принадлежат Н\, и No выборок, о которых известна, что они принадлежат Но. Тогда задача выбора ф(-) заключается в решении векторного неравенства Фк ^ 0, (8.19) где -ГЧ *) Матрица X пропорциональна ковариационной матрице вы- выборок. Таким образом, мы видим, что А,х- связаны с дисперсией то- точек х*. Уравнение (С) показывает, что признаки, обладающие мень- меньшей дисперсией, имеют большие веса при решении задачи класси- классификации. Интуитивно ото представляется вцолне разумным.
294 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИ ЗАДАЧАМ — искохмый вектор размерности (/V4/1) и где Ф — заданная матрица размерности (Ni + No) X (N + 1). Здесь Единицы с положительным знаком и единицы с отрица- отрицательным знаком в первом столбце матрицы Ф указывают на принадлежность выборок соответственно к Н\ и Но. Обычно векторное неравенство (8.19) преобразовы- преобразовывают в задачу оптимизации, например, следующего вида: минимизировать относительно к, I целевую функцию /(к, /)=||Фк-/!а, Z^O, IebRNi+n\ (8.20) Теперь для минимизации функции (8.20) могут быть применены многие из методов, рассмотренных в этой книге. Существует много подобных способов выбора целевой функции / и итеративных способов выбора оптимальных весов (см., например, работы Вонга и Айзенберга A965), Хо и Кашьяпа A966), Эгмона A956) и Мэйса A964)). 8.5. Задача распределения ресурсов: пример декомпозиции Для иллюстрации метода декомпозиции рассмотрим вадачу минимизации целевой функции при условии 2 и
8.С. ЗАДАЧА РАСПРЕДЕЛЕНИЯ РЕСУРСОВ 295 где X1 — выпуклое множество, /г(-) и gi(•I — скалярные выпуклые функции, \Д < i fg N. Хотя составляющие х\ 1 ^ i ^5 N, целевой функции определены на разных про- пространствах, аргументы У нельзя выбирать независимо друг от друга, поскольку Чши связаны между собой огра-» ничивающими уравнениями ?<. В результате декомпозиции задача разбивается на две вадачи разных уровней. Задачи первого уровня: min/?(xi)f при заданном yti I < i < JV. Заметим, что теперь задача полностью освобождена от свя1зей между переменными. Обозначим минимальное зна- значение функции А(хх) через Задачи второго уровня: при условии 2) '{«1 Найдя вначале допустимые у?...., yw» решают задачу первого уровня при этих значениях у. Возможное на- направление d = (di, d2, • • ч dN)T выбирают так, чтобы на 0 ^ ^ ^ t и чтобы %Ъг(у!)Ш min S^W + ^i). Затем определяют у!, 1 ^i^N, шз условия где t* — точка минимума в (D). Далее вновь решает- решается задача первого уровня при найденных значениях у\7 l^i:g N\ и описанный процесс повторяется.Можно
296 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИз/ЗАДАЧАХ показать, что при предположениях н^ашеи задачи этот итеративный процесс сходится. / Определение возможного направления d представляет собой трудную задачу, которую йъ\ не будем рассматри- рассматривать в данной книге. (См., например, статьи Лесдона и др. A967) и Жоффриона A9ъ8).) Трудность обусловле- обусловлена тем, что у<(-)| \^гЩМ, не везде имеет производ- производную. В связи с этим появляется необходимость соответ- соответствующего обобщения понятия вектор-градиента. (См. в работе Рокафеллара A970) понятие вектор-субградиента.) 8.6. Модель для определения стоимости проекта космического корабля *) Фирмой Локхид была разработана эмпирическая мо- модель для определения общих затрат на разработку, пост- постройку и запуск трехступенчатой ракеты. Раш п др. A967) использовали эту модель для оптимизации запуска космического корабля. Мы приведем краткое изложение содержания этой работы, с тем чтобы показать тип целе- целевых функций и ограничивающих уравнений, которые при- присущи таким моделям. Минимизируемой целевой функцией являются общие затраты, равные общей стоимости исследования и разра- разработок, плюс стоимость корабля и прочего оборудования, плюс расходы на запуск. Затраты на исследование и разработку корпуса 1-й ступени ракеты-носителя (в миллионах долларов) со- согласно данным фирмы Локхпд составляют V ?979 77/V \1»2781/V \—0,1959/y \0,3874,тг \—0,9904 Yea = 5272,77 (лп) (Л12) (л13) (Л15) , где Х\\ — вес корпуса 1-й ступени (в тысячах фунтов), Х\2 — суммарный вес (в тысячах фунтов), Х13 — отноше- отношение масс (безразмерная величина), Хи — суммарная тяга (в тысячах фунтов), Х\$ — вес топлива (в тысячах фунтов). Под отношением масс понимается отношение начального веса ракеты-носителя к весу ракеты-носителя после выгорания топлива 1-й ступени и до отделения 1-й *) Основано на статье Раша и др. A967).
8.6. МОДЕЛЬ ДЛЯ ОПРЕДЕЛЕНИЯ СТОИМОСТИ 297 \ ступени. Аналогично, затраты на исследование и разра- разработку двигателя 1-й Ступени по данным этой же фирмы Локхид равны YEe = - 247, 963 + 160, 909 (Х16/103)~0'146 + + 282,874(Х16/103)М48, где Xie — тяга одного двигателя 1-й ступени (в тысячах фунтов). Формула для затрат на производство корпуса 1-й ступени аналогична выражению для YRA и включает переменные Хц, Х\ъ, Х\$у Хп (длина 1-й ступени), а так- также число двигателей в 1-й ступени. Формула для затрат на производство двигателя аналогична по структуре вы- выражению для YRE. Формулы для затрат, на исследование и разработку, а также затрат на производство 2-й и 3-й ступени ана- аналогичны рассмотренным. Формула для затрат на производство системы управ- управления и наведения имеет вид СХа, где X — вес аппа- аппаратуры. Затраты на запуск берутся пропорциональными об- общему весу топлива. Таким образом, суммарные затраты оказываются равными где Сг — суммарные затраты на i-ю ступень, /=1,2, 3, / — затрата на аппаратуру и L — затраты на запуск. Теперь мы кратко опишем ограничения. Прежде все- всего, существует много связей между переменными, кото- которые должны быть представлены в виде ограничений. При расчете принимается, что вес корпуса Хц составляет по- половину общего веса Xi2. Общая тяга Хи равна тяге каж- каждого двигателя, умноженной на число двигателей. Отно- Отношение масс Хи выражается отношением весов Х\ъ» = И7(И^ + Х\ь), где W представляет собой вес ракеты- носителя, исключая вес топлива 1-й ступени. Ясно, что существует предел количества топлива Х\$, которое мо- может нести ракета, а именно аХ\ч ^ Х\$ ^ bXi2, где а и Ъ — некоторые постоянные, выбираемые из опыта ана- аналогичных разработок. Длина ракеты Х\7 также ограййад- на верхним и нижним пределами.
298 ГЛ. 8. ОПТИМИЗАЦИЯ В ТЕХНИЧЕСКИХ ЗАДАЧАХ Имеются также ограничения, выложенные на пере- переменные, вытекающие из основных ^характеристик ракеты. Так, например, удельная тяга (т/fra на единицу веса топ- топлива) должна лежать в пределах, определяемых типом используемого топлива и требуемыми характеристиками. Это соображение приводит/к ограничению Х\$\1Х\ъ, где 11 — продолжительность работы двигателя 1-й ступени. Требуется также, чтоб^ после сгорания топлива 1-й сту- ступени величина скорости ракеты лежала в заданных пре- пределах, которым, как можно показать, соответствуют опре- определенные пределы величины Xut\ In (l/Xi3)Xi5. Подробно рассмотрев вышеизложенные вкратце со- соображения, Раш и др. A967) получили целевую функцию с 25 переменными, подчиненную 26 ограничениям. За- Задачу они решили методом штрафных функций. Эта же задача была также решена Чичинадзе предложенным им методом (см. подпараграф 4.7.5). Чичинадзе получил тот же результат*). •) Частное сообщение.
ПРИЛОЖЕНИЯ 1. Неравенство Коши — Шварца Покажем, что (х, у>2 rg <х, х><у, у>. Рассмотрим неравенство О ^ (ах + у, ах + у>, где х и у — заданные векторы, а а — любое вещественное число. По'сле про-стых преобразований получаем следую- следующую квадратичную форму относительно а: Эта квадратичная форма остается неотрицательной при любом а. Как известно и? алгебры, это возможно лишь при условии справедливости неравенства <х, у>2_<х,х><у, y>=gO. Таким образом, мы и получили требуемое неравенство. 2. Доказательство свойства 1 (параграф 1.3) Все собственные значения и все компоненты собствен-» ных векторов вещественной симметричной матрицы ве- вещественны. Чтобы убедиться в этом, нужно следующим образом распространить определение внутреннего (ска- (скалярного) произведения на векторы, компонентами которых являются комплексные числа: <х, у> = h
300 ПРИЛОЖЕНИЯ где И / У— (Уи 02,/'..., 1/п)т. Верхней чертой обозначена комплексно-сопряженная ве- величина. Смысл введения комплексно-сопряженной величины во внутреннее произведение .заключается в том, чтобы предотвратить обращение в нуль внутреннего произведе- произведения при х ф О.Так, например, если бы мы использовали определение внутреннего произведения, принятое для ве- вещественных векторов, не вводя в него комплексно-сопря- комплексно-сопряженной, то при х= A, i)T мы бы получили (х, х) = 0. Из (П.2.1) следует, что <*, У> = <У> х> и _ <х, ку) = А<х, у>. Пусть X есть некоторое собственное значение, ах — его со&ственныи вектор. Из равенства (Ах, х) == Х(х, х> следует, что X = <Лх, х>/<х, х>. Согласно определению внутреннего произведения зна- знаменатель является вещественным числом. Числитель так- также вещественный, поскольку при вещественной симме- симметричной матрице А (Ах, х) = (х, Лх> = (Ах, х). Таким образом, X есть вещественное число. Из характе- характеристического уравнения следует, что п вектор-столбцов матрицы (А — XI) (каждый ?-й вектор-столбец имеет ком- компоненты (А—XI)ц, j = 1, 2, ..., п) линейно зависимы. Поскольку все ац и X вещественны, компонентами век- вектора х являются такие вещественные числа хи %2, ..., хп, среди которых по 'Крайней мере хоть одно не равно нулю.
8. СВОЙСТВА ВЫПУКЛЫХ ФУНКЦИЙ 801 3. Некоторые основные свойства выпуклых функций Следующее свойство выпуклых фукций неоднократ- неоднократно использовалось в главе 5 при рассмотрении вопроса о существовании множителей Лагранжа в задачах оптими- оптимизации с ограничениями. Теорема (Фан, 1957). Пусть С—непустое выпуклое множество в Rn, /<(-)t i = 1, ..., л&,— выпуклые функции на множестве Си ft< (•), i=l, ..., к,— линейные функ- функции в Rn. Если система уравнений h,{x) =0, / = 1, ..., ft, не имеет решений на множестве С, то существуют такие ^ЕЙт и |хеR\ что т ft 2 kifi (X) + 2 V^i (X)^° nPU вСеХ Х^С> r=l i=l еде % = (A,i, ..., Хту яц= (hi цку и zdg %i ^ 0, I — 1, ..., т, причем X и ц не обращаются в нуль одновременно. Доказательство. Введем следующее множест- множество F(x): F(x) = {(y, z); /((x) <y(, , i = 1, ..., m; ЛДх) = zh / = 1, ..., k). Это множество непусто и выпукло. По предположению множество V = U V (х) не содержит начала простран- пространнее ства i?m+ft. Множество V непусто и выпукло1, так как если (у1, z')eF(x') и (у2, z2)e=F(x2), то и Xz1 + A -X)z2 = Ah(x') + A -Я)И(х2)
302 ПРИЛОЖЕНИЯ где f(x)=[/1(x),.v//m(x)]T, " h(x) = [hl(x)v..., hk(x)]\ и, следовательно, Я (у1, z1) + A-Х)(у2, z*)<= + (l-X)x2] czV при 0<Я< 1. Согласно теореме (параграф 1.4) существуют такие и цеЛ\ не равные одновременно нулю, что (X, у> +<ц, z> ^ 0 при (у, i)e7. (П.З.А) Так как у*, i = 1, ..., m, могут быть сделаны произволь- произвольно большими, то X ^ 0. Пусть е — произвольное положительное число. Пусть у = f (x) + el и z = h(x) при х е С, где 1 = A, 1, ... ..., 1)т. Тогда (у, z) е=У(х) си У и согласно (П.З.А) <Х, f> + <[г, h> + e<f, 1> ^ 0 при х е= С. Так как е произвольно, то имеем • f«M(x)> + <H,h(x)»^0. Д Поскольку из высказыванпя «f (x) ^ 0 не имеет реше- решения при х е С» вытекает, что «f (x) < 0 не имеет решения при х е С», можно сформулировать нижеприводимое Следствие. Пусть С, f(-) и h(-) определяются ус- условиями теоремы. Пусть ?»(•)> i = 1, ..., Z,—выпуклые функции на множестве С. Если система f(x)<0, g(xMg0, h(x)=0 не имеет решения относительно хеС, где g(x) = fgi(x), ... • • •» gi(x) У у то существуют такие X ^ Лт, ^ е Rh и vg/?!, не равные одновременно нулю, что X ^ 0, v ^ 0 <^, f(x)>:Hv, g(x)> + <^ h(x)>^0 при всех xgC,
4. ВЫЧИСЛЕНИЕ ГРАДИЕНТА 803 4. Вычисление градиента относительно неевклидова расстояния Градиент функции /(х) относительно нормы геометрически определяется максимальной скоростью воз- возрастания функции на множестве {x + h, ||h||^e}, e>0, при е-»-0. Если производная по направлению функции /(х), взятая для направления h, максимизирована при ус- условии hTMi = 1, то вектор h, (при котором достигается максимум, и является искомым нормализованным век- вектор-градиентом. Имеем Urn /<* + '»-/(ж) - <r, h>, t-+о * где г =у/(х) —градиент в евклидовой норме (х, хI/2. Это представляет собой задачу максимизации при усло- условии в виде ограничивающего равенства, которая может быть решена следующим образом с применением множи- множителя Лагранжа X. Строится функция Лагранжа <pA<r,h>-Ji(hTMh-l). X и h должны удовлетворять уравнениям \ Vh Ф = г — 2XMh = 0 или Значение X определяется из условия 1 == hT?h = rM~lrJ4X2f 2Я= (rW-1!-I/2. Следовательно», h = Af-1r/(rW-1rI/» представляет собой нормализованный вектор-градиент
304 ПРИЛОЖЕНИЯ функции /(х)\ когда вместо обычно!* нормы (х, хI/2 ис- используется норма, определяемая выражением (П.4.1). Другими словами, Д/-1у/(х) есть вектор-градиент функ- функции /(х) для случая, когда норма определяется форму- формулой (П.4.1). 5. Неравенство Канторовича — Бергстрема Неравенством Канторовича — Бергстрема называют следующее неравенство: где А — симметричная положительно определенная мат- матрица. Доказательство справедливости этого неравенства, ос- основанное на свойствах выпуклых функций, проводится ниже, следуя Маркусу и Минку A964), в предположении, что матрица А имеет п различных собственных значений ^i < %2 < ... < К *). Неравенство справедливо даже тогда, когда некоторые собственные значения матрицы А равны между собой. Хеннан A960) приводит другое до- доказательство, аналогичное доказательству Канторовича A948). Согласно предположению относительно1 матрпцы А су- существует такая ортогональная матрица 5, что FAS = diag (Xi, ..., К). Поэтому без Тогда и где потери . А = <х п 7 Д V 1 = общности = diag (Xu 4хЧх Л~1 х, х> 1 можно предположить, что ...,!,)¦ п . ~~ 1=1 ¦) Аналогичное доказательство может быть проведено, когда собственные значения совпадают.
5. НЕРАВЕНСТВО КАНТОРОВИЧА — БЕРГСТРЕМА 305 (П.5.2) Очевидно, что 2 щ = (Г1.5.3) г=1 Чтобы получить верхнюю границу, рассмотрим плос- плоскость и п точек на ней с координатами (^?» Я{ ), i = = 1, 2, ..., га. Эти точки расположены на кривой, опреде- определяемой уравнением Xjlx = 1. На эти точки натянуто вы- выпуклое множество S (см. рис. П.5.1). Очевидно, что при Рпс. П.5.1. Геометрическое представление неравенства Канторови- Канторовича — Бергстрема. изменении весов Wi при соблюдении ограничений (П.5.2) п (П.5.3) точки, определяемые значениями Хц согласно (П.5.1), лежат в заштрихованной области. При этом мак- максимальное значение, определяемое уравнением (П.5.1), задается значением к, притом таким, что кривая Х\х = к касается прямой, соединяющей точки(А,х, ^Г1) и( '
306 ПРИЛОЖЕНИЯ С помощью алгебраических преобразований можно показать, что это значение к равно Нижняя граница определяется уравнением X\i = 1. Нижнюю и верхнюю границы улучшить нельзя, посколь- поскольку S действительно соприкасается как с нижней, так и верхней границей. В несколько более общем виде неравенство Канторо- Канторовича записывается следующим образом (Шопф, 1960): л ^ <х, Л+х) <х, 4*-'х) ^ (*i + КJ < где А = Лт > 0 с собственными зачениями 0 < Xi < ... ... < Яп. Справедливость левого неравенства можно по- показать, если учесть, что (х) L -ttoy J L^w где • цДх) Д <х, Л'х>, и что определитель неотрицателен, т. е. [i^i (х) |xfc+i (х) - ^2 (х) ^ 0- (П.5.5) (П.5.5) представляет собой стротое неравенство, если только х не является собственным вектором матрицы А. Приведем доказательство Шопфа справедливости пра- правой части неравенства (П.5.4). Рассмотрим следующую функцию вещественной переменной X: Найдем теперь X' и V, при которых ^(Я) достигает экстремума. Для этого положим
6. СХОДИМОСТЬ ГРАДИЕНТНЫХ МЕТОДОВ 307 Обозначим ^^(V) и Ул(^") соответственно через и у". Далее можно показать, что причем в последнем неравенстве учтено, что 6. Сходимость градиентных методов Покажем, что при определенных условиях критиче- критическая точка будет достигнута, даже если не придерживать- придерживаться направлений отрицательного градиента. Предположим, что xh+i должна быть выбрана в на- направлении у* при смещении из х\ Здесь у* обозначает единичный вектор, ||yft|| =• 1, на- направление которого составляет некоторый угол, меньший задан- заданного острого угла в, с направле- направлением, противоположным направ- направлению вектор-градиента в точке xh (рис. П.6.1). При этом про- производная функция /(х) по на- направлению yh определится сле- следующим образом: Рис. П.6.1. Направление j!_/ (\к j_ fvh\\ Svjf(xk\ Ь\ смещения может отличать- clt ' * "г СУ 'u=o ^V/vx /i У /• ся от направления отрица- отрицательного вектор-градиента. Заметим, что поскольку у* со- составляет с направлением вектора —V/(xft) угол, мень- меньший, чем 6, т. е. cos (—у/, у*) ^ cos 6, то справедливо неравенство <- v/(x*), y*>>|lv/(xft)I)cos9>0. (П.6.1) Выберем е, 0 < е < 1. Теперь выберем t так, чтобы
308 ПРИЛОЖЕНИЯ справедливым было следующее неравенство: "ЗГ Такое ? > 0 существует, поскольку где яА = #(xft + е*у*), о ^ е ^ 1, а Я — матрица Гессе, которая предполагается положи- положительно определенной. Поэтому скалярное произведение (— у/(хл + /yA)t у*} есть убывающая функция от t Та- Таким образом, х*+1 выбрано так, что справедливо неравен- неравенство <- у/ (х*+1), У"> <A- е) <- V/ (х*), У"> • (П.6.2) Предположим, что получена последовательность точек х°, х1, ..., удовлетворяющих условию (П.6.2), и последо- последовательность направлений у0, у1, ..., удовлетворяющих ус- условию (П.6.1). Если при к-^оо последовательность {х*} сходится к х*, a {yh} сходится к у*, иу/(х) есть непрерывная функ- ция от х, то V/(x*)=0. ^ Убедиться в справедливости этого можно следующим образо'м. Из непрерывностиv/(x) и условия (П.6.2) сле- следует, чте <-V/(**). У*>^ (l-e)<-v/(x*), У*> или Однако согласно (П.6.1) при ||\7/(х*)И Ф 0 <-V/(x*),y*>>0. Следовательно, рассматриваемое равенство справедливо. (Рассмотрение сходимости градиентных методов с огра- ограничениями см. в статье Вулфа A967).)
7. СХОДИМОСТЬ ГРАДИЕНТНЫХ МЕТОДОВ 309 7. Еще о скорости сходимости градиентных методов *) 7.1. Квадратичные функции. Разложим /(х) в ряд Тей- Тейлора: Матрица Я(х) равна и предполагается положительно определенной. Пусть рас- расстояние определяется следующим образом: jx|P = xTGx, (П.7.2) где матрица G симметрична и положительно определе- определена. Рассмотрим вектор б = /d, представляющий собой пе- перемещение с шагом t в направлении d, где d нормализо- нормализовано к единице, |'d|| = 1, при норме, определяемой (П.7.2). При этом (П.7.1) можно переписать в следующем виде: /(х + *d)ss/(x) + *rTd + |-dTtf (x)d. Тогда при заданной нормализации направление максимального убывания значений функции будет определяться вектором 11/2 (см. приложение 4). Предположим, что функция /(х) почти квадратична. Тогда значение t, минимизирующее /( + d), будет приблизительно равным )d (П.7.3) *) Частично основано на работе Гринстада A967).
810 ПРИЛОЖЕНИЯ Общее уменьшение значения функции будет равно -rd J 2 2 (П 7 4) rTGH(x)GTm v ' ' dT#(x)d В дальнейшем для простоты мы будем опускать аргумен- аргументы х в матрице Гессе. Предположим, что матрица Геосе положительно опре- определена. В качестве эталона сравнения выберем матрицу G так, чтобы G = Н (такой выбор соответствует методу Ньютона — Рафсона, рассматривавшемуся в парагра- параграфе 4.5). Тогда уменьшение функции в этом эталонном случае будет определяться следующим образом: А/(х)=-1-гтЯ-1г>0, (П.7.5) поскольку Я положительно определена. Введем отно- отношение р величин уменьшения функции, определяемых выражениями (П.7.4) и (П.7.5), (гт0-1гJ (утУJ V- (гтя-1г)[гтс-1ясг-1г] (у^уХу^-'у) ' где y = G/2r А = G-u*HG~ua. Отметим, что матрица А является симметричной и поло- положительно определенной. Согласно неравенству Канторо- Канторовича (приложение 5) где A,i и %п — соответственно наименьшее и наибольшее собственные значения матрицы А. Перепишем (П.7.6) в следующем виде: где \х = XnAi — число обусловленности матрицы А, ко- которое было введено в параграфе 1.5. Поскольку р не боль-
7. СХОДИМОСТЬ ГРАДИЕНТНЫХ МЕТОДОВ 311 / ше единицы, ясно, что метод Ньютона обеспечивает наи- наибольшее убывание значений функции при условии, что Я(х) > 0. Как и в случае евклидовой нормы, величина уменьшения значений функции к коэффициенту обус- обусловленности \х матрицы А. До сих пор предполагалось, что матрица Гессе положи- положительно определена. Без этого предположения А/(х) в (П.7.4) может не быть положительной (т. е. значение функции может возрастать, а не убывать). Это является главным недостатком метода Ньютона при минимизации неквадратичных функций. 7.2. Неквадратичные функции. Предположим теперь, что /(х) представляет собой функцию, отличную от квад- квадратичной в такой степени, что изменениями матрицы Гес- Гессе Я(х), обусловленными изменениями х, пренебречь уже нельзя. Иоследуем производную функции /(х) по1 направле- направлению, с тем чтобы показать возможные случаи отсутствия сходимости метода Ньютона. Рассмотрим зависимость от х производной по направлению a(x) = irf(x + tu) т# (х)-* гт# где t определено уравнением (П.7.3). Пусть матрица Гессе Я(х) положительно определена и имеет собственные значения 0 < Х\ =S %2 ^ ... ^ %п и соответствующие им собственные векторы Ui, U2, ..., un. Тогда Я(х) и г могут быть выражены следующим образом*): ^ (TI.7.7) Г= ¦) Заданный произвольный вектор у можно выразить в виде п п У™ 2 <ui' У>и1- Следовательно, Ну = 2 ^iuKu*» у)' Эт0 i-i i=l справедливо для всех у. Таким образом, мы получаем приведенное в (П.7.7) выражение для Я, которое называют спектральным пред* ставлением матрицы Я, _,
312 приложения Следовательно, #(x)-i=!?i-' Для а(х) получаем (П.7.8) Известно, что градиентные методы не очень эффективны при целевых функциях с узкими о-врагами (или гребнями) вследствие быстрого изменения направления вектор-гра- вектор-градиентов. Можно ожидать, что в этих случаях метод Ньютона — Рафсоыа также будет неэффективным. Предположим для конкретности, что Xi < %2 < . . . < Я». Другими словами, предполагается, что направление ов- оврага совпадает с Ui. Предположим далее, что в точке х вектор г имеет почти равные составляющие во всех на- направлениях Ui, ..., un, т. е. jaj не очень мало по срав- сравнению с другими составляющими |а»|. Тогда (П.7.8) при- примет вид Согласно методу Ньютона — Рафсона л - — я~1г -~ я~1г t 4 ^-^^. (П.7.9) Таким образом, метод Ньютона — Рафсона предусматри- предусматривает большой шаг в направлении — Ui, и в следующей точке х' А х + td матрица Гессе может потерять свою по- положительную определенность. Так как по предположению ^i очень мало по сравнению с остальными собственными значениями, то будем полагать, что наименьшее собствен- собственное значение матрицы #(х') становится малым отрица-
7. СХОДИМОСТЬ ГРАДИЕНТНЫХ МЕТОДОВ 313 тельным числом, в то время как остальные п — 1 собст- собственных значений остаются почти неизменными и, следо- следовательно, все еще положительны. Тогда а(х') становится отрицательной, другими словами, при переходе к следу- следующей итерации значение функции будет возрастать, а не уменьшаться. Из теории возмущений [Беллман (I960)] известно, что при малых изменениях собственного значения Х\ соответствующий собственный вектор остается почти неиз- неизменным, т. е. собственный вектор матрицы #(х'), соответ- соответствующий малому отрицательному собственному значе- значению, все еще приблизительно равен предыдущему собст- собственному вектору Ui. Другими словами, изменение Ui имеет второй порядок малости. Согласно (П.7.9) это озна- означает, что следующий шаг метода Ньютона — Рафсона при- приблизительно противоположен данному шагу. Иначе говоря, метод Ньютона — Рафсона приводит к сильным осцилля- циям. Если прибавить XI к Я(х') при достаточно большом X, то Н(х')-\-Х1 становится положительно определенной и отмеченные выше нежелательные явления будут устра- устранены. Пример. Для иллюстрации некоторых из рассмот- рассмотренных выше положений применим метод Ньютона — Рафсона к случаю простой неквадратичной функции. Пусть * 4 И Ее вектор-градиент равен г =A00*!, х2 Матрица Гессе Г100 0 1 ™-[ о 1 + 3.4} Следовательно, х' = х - /Г (х) г = [0, 2ахЬA + Zax\)\\ Возьмем а = — 0,2, {хи х2) = @, 1). Тогда х\ = 1, хг = = — 1,... \\ Л/Г А«„„
314 приложения Действительно, хг будет осциллировать неограничен- неограниченно долго1 между —1 и +1, несмотря на то, что Н остает- остается положительно определенной, Если а = -10-2, (хи *2) = @, 5), то х'2 = — 10, х = — 10 и т. д. В этом случае матрица Н меняет свою знакоопреде- знакоопределенность с положительной на отрицательную при перехо- переходе от х к х' и после этого остается отрицательно опреде- определенной. Л 8. Лемма Фаркаша В этом приложении будет доказана Лемма Фаркаша. Пусть даны ЬеДп м (тХп)-мат- (тХп)-матрица А. Предположим, что существует такое, не равнее нулю х е Л'\ что Ах ^ 0. Тогда при всех х, удовлетворяю- удовлетворяющих условию Ах ^ 0, будет (b, x) ^ 0, если и только если при некотором К ^ 0 выполняется равенство Запишем матрицу А в следующем виде: Здесь (а1 обозначает i-ю вектор-строку размерности п матрицы А. Лемма Фаркаша утверждает, что равенство (П.8.1) необходимо и достаточно для того, чтобы было справедливо условие <Ь, х> Ш 0 при всех х таких, что <а1, х> ^ 0, l^i^m. Соотношение (П.8.1) может быть записано в следующем развернутом виде: m b-- V MS k/^0, l^t^m, где af — я-мерный вектор-столбец, составленный из эле- элементов i-ш строки матрицы А. С геометрической точки зрения это означает, что b лежит в выпуклом многогран- многогранном конусе К, натянутом на векторы аг, 1 :g i 5? m
б. ЛЕММА ФАРКАША 315 (рис. П. 8.1). Существование такого х, что1 Ах ^ 0, оз- означает, что конус имеет вид, показанный на рис. П. 8.1, так как все векторы а' направлены в одну и ту же сторо- сторону от гиперплоскости Я, перпендикулярной к х. Конус К Рис. П.8.1. Геометрическое представление конуса, натянутого на векторы а* и Ь. Доказательство. Если b = Axk при Я S? 0, то bTx = iJAx Щ: О при всех х, удовлетворяющих условию Ах 7> 0. Чтобы доказать обратное, предположим, что урав- уравнение (П.8.1) несправедливо, т. е. b не лежит в конусе К. а) 1и 6) Рис. П.8.2. Проекцпп многогранного конуса п вектора Ь. Можно показать, что конус К, порожденный конечным !т \ i-i J
316 ПРИЛОЖЕНИЯ является замкнутым (см., например, Юдин и Голь- штейн A963), гл. 2). По теореме о разделяюще'й гипер- гиперплоскости (параграф 1.4), если Ъ&К, К выпукло и замк- замкнуто, то найдется вектор % такой, что (Ь, %). < 0, (|, У> ^ 0 для всех уЕ^ (рис. П.8.2). В частности, (%, aJ> ^ ^ О, 1 ^ i ^ га, или, что то же, А% ^ 0. Но это противо- противоречит предположению, что (Ь, х> ^ 0 для всех х таких, что Ах ^ 0. Лемма Фаркаша может быть сформулирована также следующим образом: Если заданы Ьей"ц (тХп)-матрица А, то справед- справедливо одно и только одно из следующих утверждений: либо (I) 4x^0, Ьтх>0, имеет решение х е Rn, либо (II) Ъ = А\ Л^О, имеет решение k s Rm. 9. Условия регулярности ограничений Куна — Таккера В этом приложении излагаются основные вопросы, связанные с условиями регулярности ограничений Куна — Таккера (Кун и Таккер, 1951). - Прежде всего определим входящие векторы для до- допустимого множества S, заданного системой нелинейных ограничивающих неравенств. Рас- Рассмотрим геометрическое место век- векторов в iS, начинающихся в точке х* и определяемых непрерывной функцией скалярного параметра Э, т. е. непрерывной функцией х(8)е eS, для которой х@)=х*. По- Потребуем далее, чтобы эта функ- функция была дифференцируемой при 0 = 0, когда 8 приближается к нулю со стороны положительных значений (рис. П.9.1). Будем го- говорить, что вектор | входит в до- допустимое множество S (% является входящим .вектором) из х*, если существует векторная функция х(8) /(«К cf<c2<cs Рис. '(х)--' П.9.1. Входящий вектор.
0. УСЛОВИЯ РЕГУЛЯРНОСТИ ОГРАНИЧЕНИЙ 317 параметра 8, для которой х@)= х* и х(8)е5г при всех достаточно малых положительных 0, причем л (в) где производная определена при 9, приближающемся к нулю со стороны положительных значений. Это означает, что % является касательной к кривой хF) при 8 = 0, содержащейся в S при достаточно малых 6 > 0. Если S является многогранником, определяемым системой линейных ограничивающих неравенств, то х@) можно положить равной х(8) =х* + в6, 0^0. Для S, определяемой системой нелинейных ограничи- ограничивающих неравенств, хF) можно выразить в виде хF) = = х* + 9? + ф(б) при 0 ^ 8 rg 8i для некоторого 8i > 0, где ф(-)~ непрерывная функция, причем такая, что фF)/8->0 при 0-^ + 0. Множество всех входящих век- векторов в точке х* называется касательным конусом (tan- (tangent cone) к множеству S в точке х*, ГС(х*, S). Для за- заданного допустимого множества S= {х; #(х) < 0, *' = = 1, ..., т) множество / /(х) = {/; ft(x) =0} есть множество индексов активных ограничений в тачке х*. Будем говорить, что условия регулярности ограничений удовлетворяются в точке х*, если все входя- входящие векторы % удовлетворяют условию <VftM,?>S0 для всех /е/, (П.9.1) иначе говоря, если для всех /е/(х*)}. (П.9.2) Покажем, что это условие регулярности ограничений яв- является достаточным для существования множителей Лаг- ранжа. Пусть имеется некоторая кривая х(Э), дифферен- дифференцируемая при 6 = 0, для которой х@)=х* и x(9)<=S при достаточно малых 0 > 0. Разлагая функции / и gt в
318 ПРИЛОЖЕНИЯ ряды Тейлора, можно записать 1 ^ i ^ т, (П.9.3) где (в) а=о и | удовлетворяет уравнению (П.9.1). Если /?/, то &(х*) < 0. Следовательно, при достаточно малых 8 > 0 имеем Если ; е /, то должно выполняться В противном случае с учетом &(х*) = 0 из (П.9.2) сле- следует, что gj[x(8)] > 0, / е /, при малых Э > 0, что про- противоречит предположению х(Э) е5. Так как х* есть точка минимума с ограничениями, то при достаточно малом 6 > 0 должно было бы выпол- выполняться или, для всех векторов %, <V/(x*), 1>^0 (П.9.4) Другими словами, если удовлетворяется условие ре- регулярности ограничений, то любой вектор, удовлетворяю- удовлетворяющий (П.9.1), является входящим .вектором и из (П.9.1) следует (П.9.4). Векторы — V?,(x*), /e/, совпадают с направленными внутрь нормалями, о которых шла речь в параграфе 5.2. Следовательно, мы можем, как и рань- раньше, применить лемму Фаркаша и сделать заключение о существовании таких неотрицательных скаляров Xjy / е /, что у/(х*)+ 2 bjVftOO=0 (П.9.5) или V/(x*)+ |
10. ПРЕОБРАЗОВАНИЕ ЛЕЖАНДРА 319 Как указывалось раньше, из последнего уравнения сле- следует, что множители Лагранжа при неактивных ограни- ограничениях равны нулю. Эрроу, Гурвиц и Удзава ослабили условия регулярности ограничений, заменив левую часть уравнения (П.9.2) замыканием выпуклой оболочки каса- касательного конуса ГС(х*, S). 10. Преобразование Лежандра Кратка изложим преобразование Лежандра, следуя Куранту A962). Рассмотрим оппсание поверхности в виде многообразия в Rn+l: Уравнение касательной плоскости в точке {хп+и *) запп- шется в виде (х' — х)тух/ (х) = zn+i — Касательная плоскость полностью определяется векто- вектором п, нормальным к плоскости (который определяет ориентацию плоскости), и точкой пересечения fi плоско- плоскости с {п-\- 1)-й осью. Имеем Полагая в (П.10.1) х' == 0, можем записать ц = /(х)-<х, у, /(х)>. (П.10.2) Скаляр jj, выделяет одну из множества одинаково ориеы- тированых плоскостей. Уравнение (П.10.1) при соответ- соответствующих предположениях относительно функции /(•) позволяет найти решение для х, выраженное через п. Далее из (П.10.2) получаем jii(n) в виде функции от п. Таким образом, [м-(п), п] есть описание поверхности [/(х), х] посредством касательных к ней плоскостей. Из (П.10.1) и (П.10.2) имеем /(п) -ц(п) =<х, п>,
820 ПРИЛОЖЕНИЯ ГДв И VnJLl = —X. Чтобы получить более симметричные соотношения, вве- введем к = — \х. Тогда можно записать n =Vx/(x), x= Vn^(n). Полученные соотношения в ясной форме выражают двой- двойственность двух способов описания поверхности.
ПЕРЕЧЕНЬ И БЛОК-СХЕМЫ АЛГОРИТМОВ Ниже перечисляются алгоритмы минимизации функций, опубли- опубликованные на языках программирования АЛГОЛ и ФОРТРАН. Сле- Следует отметить, что не все из этих алгоритмов были проверены на отсутствие ошибок. (См. литературу в примечаниях на стр. 323.) Метод Переменной метрики (Дэвидона — Флет- чера — Пауэлла) Переменной метрики Сопряженных гради- градиентов (Флетче- ра — Ривса) Сопряженных гради- градиентов Сопряженных нап- направлений (Пауэл- (Пауэлла) Источник Function Minimization (ACM Algo- Algorithm 251) E.Weils. Comm. ACM, 8 (March 1965), 169. Subroutine FMFP and DFMFP IBM System/360 Scientific Subroutine Package C60 A-CM-03X) Version II, 202—205. Programmer's Manual (H20-0205-2). FUMICDG R. Fletcher and С. М. Reeves. Сотр. J., 7, 2 (July 1964), 151—152. Subroutine FMGG and DFMGG IBM System/360 Scientific Subroutine Package C60 A-CM-03X) Version II, 206—209, Programmer's Manual (H 20-0205-2). HO CAL PMIN Conjugate Direction Minimization Technique, Subroutine Powell. R. D. Sanderson Operation Research Center, University of California, Berkley. Приме- Примечание 1 2 2
ill ПЕРЕЧЕНЬ И БЛОК-СХЕМЫ АЛГОРИТМОВ Метод Г\адпентного поиска Наискорейшего спус- спуска Наискорейшего спус- спуска Отсекающей плоскос- плоскости (Келли) Прямого поиска (Ху- (Хука и Дживса) Поиска Фибоначчи Методы последова- последовательной безуслов- безусловной минимизации Метод Розенброка Источник НО GAL NMIN N-dimensional gradient search, Sub- Subroutine GSER. R. D Sanderson Operation Research Center, Universi- University of California, Berkley. STEEP 1 (ACM Algorithm 203) E. J.Wasscher «Minimization of a Differentiable Function of n Variables by the Method of Stoorest Descent», Comm. ACM, 0 (September 1963), 517-519 MINFUN (ACM Algorithm 129) V. W Whitley «Minimization of a Function of n Va- Variables by Steepest Descent», Comm. ACM, 5 (November 1962), 550-551. HO CAL KELLEV Kelley's cutting plane algorithm, Subroutine KELLEY L. Haegent and R. Harris Operation Research Center, Universi- University of California, Berkley. Direct Search (ACM Algorithm 178) A. F. Campe, Jr., «Direct Search». Comm. ACM, G (June 1963), 313—314. Algorithm 2 Fibonacci Search. M. C. Pike and J. Pixner. Computer Bull, 8, 4 (March 1905), 147 Technical Paper RAC-TP-151, G. P. McCormick; W. Charles M\ lander, III; A. V. Fiacco. «Computer Program Implementing the Sequential Unconstrained Mini- Minimization Technique for Nonli- Nonlinear Programming» (April 1965). (См. также книгу Бранена). SHARE Program Library, SDA 3466. E. Davison and K. Cowan. Приме.- чание 2 3, 4 и 5 6 7, 8 9, К) 11 11
ПЕРЕЧЕНЬ И БЛОК-СХЕМЫ АЛГОРИТМОВ 323 ПРИМЕЧАНИЕ 1. R. Fletcher, Certification Algorithm 251 [Е4]. Comm. ACM, 9 A966), 686. 2. См. прилагаемые на стр. 324—330 блок-схемы. 3. J. M. Varah, Certification of Algorithm 203 [E4]. Comm. ACM, 9 (March 1965), 171. 4. P. W a Hack, Certification of Algorithm 203 [E4]. Comm. ACM. 7 (Oct. 1964), 585. 5. E. J. W a s s с h e r, Remark on Algorithm 129. Comm. ACM, 6 (September 1963), 521. 6. J. E. Kelley, The Cutting-Plane Method for Solving Convex Programs. SI AM, J. 8 : 4 (December 1960), 703—12. P. Wolfe, Foundations of Nonlinear Programming: Notes on Line- Linear Programming and Extensions. Part 65. RAND Memo. RM-469-PR (August 1965). 7. M. Bell and M. С Pike, Remark on Algorithm 178 [E4]. Сотр. Bull, 9 (November 1965), 195. 8. R. De Vogelaere, Remark on Algorithm 178 [E4]. Comm. ACM, 11 (July 1968), 498. 9. J, Booth roy d, Certification of Algorithm 2, Fibonacci Search. Сотр. Bull, 9 (November 1965), 195. 10. K. J. О v e г h о 11, Note on Algorithm 2, Fibonacci Search, Algo- Algorithm 7 MINX and the Golden Section Search. Сотр. J., 9 (Fe- (February 1967), 414. 11. См. работу Розенброка A960). Метод градиентного поиска. Перечень входных параметров и подпрограмм пользователя, используемых в подпрограмме NMIN. Входные параметры: i — i-я функция, подлежащая минимизации. N — число переменных. EPS —контрольная величина, определяющая сходимость. X — вектор переменных. Используемые подпрограммы: RESTN — подпрограмма пользователя. Вычисляет значение функции. GRx\DI — подпрограмма пользователя. Вычисляет градиент функции. MATRIX — подпрограмма пользователя. Вычисляет матрицу вто- вторых производных функции. GSER — головная подпрограмма минимизации. EVALU — вычисляет значение функции, градиент и матрицу вторых производных. INVERS — вычисляет Н~х yxF(X).
:^мы 824 ПЕРЕЧЕНЬ И БЛОК-СХЕМЫ АЛГОРИТМОВ Метод переменной метрики (метод сопряженных градиентов). Перечень входных параметров подпрограммы FMFP (FMCG) (из библиотеки программ для научных исследований системы IBM-360) и подпрограммы пользователя FUNGT. Входные параметры: N — число переменных. X — вектор размерности N. Перед обращением к FMFP содер- содержит начальное значение аргумента; при выходе из под- подпрограммы содержит значение аргумента, соответствую- соответствующее вычисленному минимальному значению функции. EST — оценка минимального значения функции. EPS — контрольная величина, равная ожидаемой абсолютной ошибке. LIMIT — максимальное число итераций. ,? Аргументы подпрограммы FMFP (FMCG): FUNCT — наименование составляемой пользователем подпрограм- подпрограммы, которая для каждого TV-мерного вектора входных пе- переменных вычисляет значение функции и градиента. N — входной параметр. X — входной параметр. F — минимальное значение функции (выходной параметр). G — вектор-градиент, соответствующий минимальному зна- значению функции (выходной параметр). EST — входной параметр. EPS — входной параметр, Н — рабочая область.
ПЕРЕЧЕНЬ И BJiOK-СХЕМЫ АЛГОРИТМОВ Метод градиентного поиска. Блок-схема подпрограмм NMIN и Головная программа / Обращение к\ ~*Ч EVALU (I) Заслать начальные значения параметр об Максимальная компонента <?PSJ Нет компоненту градиента Может Нет ^^ быть найден конечный минимум г Пройден ли минимум при поиске ддоль найденного направления Осуществлять поиск золотого сечения до тех п ар f пока изменения X не станут меньше EPS Метод градиентного поиска. Блок-схема подпрограммы EVALU /Обращение к \ / Обращение к \ RESTNT (\fi)J *Ч GRADI(I) / Обращение к \ / Обращение к \ MATRIX A,М)
326 ПЕРЕЧЕНЬ И БЛОК-СХ^кы АЛГОРИТМОВ Метод переменной метрики. Блок-схема подпрограммы FMF? ( N,X,EST, I / I EPS, LIMIT I *Д Обращение /f FMFP (FUNGT, N,X,F,G,EST? EPS,UMIT,1ER,H) Го лобная программа пользователя вектор направления Н и градиент G Повторить поисн и идооить шаг
ПЕРЕЧЕНЬ И ЦоК-СХЕМЫ АЛГОРИТМОВ Продолжение Осущестдить нубичесную интерполяцию на интердоле, найденном поиском, и вычислить аргумент X , при котором интерполяционный полином минимизирован Вычислить аргументов и градиентов обух последовательных итераций Уменьши- Уменьшилась ли функция за послеанюш итерацию 2 ПревьЯЛено ли максимальное числе итерации BoccjrwmBumb предыдущие значения Ло8торить щисн 6 напШшии Достаточно ли ма.
328 ПЕРЕЧЕНЬ И БЛОК-СХЕМЫ АЛГОРИТМОВ 1Ы А Метод сопряженных градиентов. Блок-схема подпрограммы FMCG N,X,EST, eps/limit FM&(FUNCT,N,X,F, EST, EPS, LIMIT, W.FA У Голодная программа полъзобателя / Обращением \ FUNCT (N,X,F,G) Увеличить аргумент на беличииу шага 6 направлении Н / Обращение к \ 1—>< FUNCT \ (N,XtFfC) Запомнить предыдущие значений ^ щннции и произдодной Вычислить ЪУ-производную по направлению при новом значении аргумента Линейный поисн указывает на отсутствие минимума
ПЕРЕЧЕНЬ И БЛОК-СХЕМЫ АЛГОРИТМОВ Продолжение Go) Осуществить кубическую интерполяцию и вычислить аргумент, при ротором интерполяционный полином минимизирован Нет Фактическое знач> функции лри X меньше, чем на концах интервала Вычислить разность нового и старого венторов аргумента Длина разности векторов EPS ? дзунщия за последним Сходимость достигнута Превышено ли максимальное число итераций
БИБЛИОГРАФИЧЕСКИЕ УКАЗАНИЯ*) Глава 1. Основные сведения по линейной алгебре имеются, например, в книгах Фаддеева и Фаддеевой A963), Форсайта и Мо- лера A967). Для более подробного изучения можно рекомендовать монографии Беллмана A960), Гантмахера A966), Уилкинсона A065). Теория конечномерных евклидовых пространств и функ- функций п переменных излагается в любом курсе математического анализа; см., например, Шилов A969). Основы теории выпуклых множеств и выпуклых функций приведены в большинстве книг по линейному и выпуклому программированию — Зойтендейк A960), Карманов A975), Юдин и Голыптеин A963). Более тонкие результаты выпуклого анализа имеются в монографиях Пшенично- Пшеничного A969) и особенно Рокафеллара A970). По линейному програм- программированию на русском языке имеется много руководств разной степени подробности; упомянем, в частности, книги Данцига A963), Зуховицкого и Авдеевой A967), Юдина и Гольштейна A963, 1964). Глава 2. Материал этой главы слабо освещен в литературе. Глава 3. Двумерную задачу'часто называют также задачей Штейнера (а некоторые ее обобщения — задачей Штейнера — Be- Сера); см., например, Курант и Роббинс A967). Глава 4. Для первоначального ознакомления с методами бе- безусловной минимизации могут служить книги Первозванского A970) и Уайлда A964). Для более глубокого изучения вопроса мо- могут служить монографии Васильева A974), Карманова A975), По- лака A971), Пшеничного и Данилина A975), Химмельблау A972). Вопросы сходимости методов градиентного типа наиболее подробно изучены в статье Любича и Майстровского A970). Библиография работ по безусловной минимизации приведена в обзоре Саульева и Самойловой A973). С методами случайного поиска можно озна- ознакомиться по книге Растригина A968). Глава 5. Условиям экстремума в задачах с ограничениямп посвящено огромное количество исследований, начиная с основопо- основополагающих работ Джона A948) и Куна и Таккера A951). Формули- Формулировки и доказательства необходимых и достаточных условий экст- экстремума для задач математического программирования приведены, *) Добавлены редактором перевода.
БИБЛИОГРАФИЧЕСКИЕ УКАЗАНИЯ 331 например, в книгах Зойтендейка (I960), Пшеничного A969), Фиак- ко и Мак-Кормпка A968), Эрроу, Гурвица и Удзавы A958). Усло- Условия оптимальности для бесконечномерных задач можно найти в монографиях Гирсанова A970) и Иоффе и Тихомирова A974). Ме- Методы решения задач нелинейного программирования рассматрива- рассматриваются в книгах Васильева A974), Демьянова и Рубинова A968), Зангвилла A969), Зойтендейка A960), Зуховицкого и Авдеевой A967), Карманова A975), Полака A971), Пшеничного и Данилина A975), Сеа A971),Фиакко и Мак-Кормика A968), Хедли A964), Химмельблау A972), Эрроу, Гурвица и Удзавы A958). В обзоре Поляка A974) приведена библиография работ по методам опти- оптимизации. Глава 6. Автор основывает свое изложение теории двойст- двойственности на работе Вулфа A961). В настоящее время существуют более общие подходы к проблеме двойственности, допускающие возможность более симметричной формулировки двойственных за- задач для более широкого класса проблем оптимизации. Подобному подходу посвящена, в частности, монография Голыптейиа A971), Условия экстремума и методы решения задач квадратичного про- программирования описаны в книге Кюнци и Крелле A965). Геомет- Геометрическому программированию посвящена работа Даффина, Питер- сона и Зенера A967). Глава 7. Чрезвычайно обширный материал по численному сравнению методов оптимизации (как для задач на безусловный экстремум, так и для задач с ограничениями) содержится в книге Химмельблау A972). В частности, там приведены тестовые задачи, программы на Фортране, результаты вычислений для многих ме- методов. Глава 8. Примеры технических приложений математическо- математического программирования приведены в книге Бракена и Мак-Кормика A968). К сожалению, монография такого типа на русском языке отсутствует. Дискретным задачам оптимального управления и ме- методам их решения посвящена монография Пропоя A973).
ЛИТЕРАТУРА Работы, отмеченные звездочкой, добавлены при переводе. Абади (Abadie J. (ed.)), Nonlinear programming, Amsterdam, 1967. Айзеке (I s a a k s R.)t Optimal horse race bets. Amer. Math. Monthly, 60 A953), 310—315. А о к и, Ю (А о k i M., Y u e P. C), On certain convergence que- questions in systems identification. SI AM J. Control, 8 A970), 239-256. Апостол (Apostol Т. М.), Mathematical analysis: a mo- modern approach to advance calculus. Reading, Mass., 1957. Бард (Bard Y.), On a numerical instability of Davidon-like method. Math. Сотр., 22 A968), 665—666. Бауэр, Фай к (Bauer F. L., Fike С. Т.), Norms and exclusion theorems. Num. Math., 2 A960), 137—141. Беккенбах, Беллман (Beckenbach E. F., Bel- Bellman R.), Inequalities. Berlin, 1961. (Русский перевод: Беккенбах Э. и Беллман Р., Неравенства. «Мир», 1965.) Бекман (Beckman F. S.), The solution of linear equations by the conjugate gradient method. In A. Ralston and H. S. Wilf, Mathematical methods for digital computers. New York, 1960. Беллман (Bellman П. Е.), Introduction to matrix theory. New York, 1960. (Русский перевод: Беллман Р., Введе- Введение в теорию матриц. «Наука», 1969.) Бил (В е а 1 е Е. М. L.), On an iterative method for finding a lo- local minimum of a function of more than one variable. Tech. Re- Report 25 (Princeton Univercity, Statistical Techniques Research Group, Nov. 1958). Бокс (Box M. J.), A new method for constrained optimiza- optimization and a comparison with other methods. Сотр. J., 8 A965), 42-52. Бокс (Box M. J.), A comparison of several current optimiza- optimization methods and the use of transformations in constrained prob- problems. Сотр. J., 9 A966), 67—77. Браке н, Мак-Корм и к (Bracken J., McCormic G. P.), Selected applications of nonlinear programming, New York, 1968. Брукс (Brooks S. H.), A discussion of random methods for seeking maxima. J. Oper. Res., 6 A958), 244—251,
ЛИТЕРАТУРА 333 Брукс (Brooks S. H.), A comparison of maximum seeking methods. J. Oper. Res., 7 A959), 430—437. Бройден (Broyden C. G.), Quasi-Newton methods and their applications to function minimization. Math. Сотр., 21 A967), 268-301. Ван Дерслуис (Van Dersluis A.), Stability of so- solutions of linear algebraic systems. Num. Math., 14 A970), 246-251. * Васильев Ф. П., Лекции по методам решения экстремаль- экстремальных задач. Изд-во МГУ, 1974. Витте, Холст (W i t t е В. F., Hoist W. R.), Two new direct minimum search procedures for functions of several va- variables. Proc. 1960 Spring Joint. Сотр. Conf., Baltimore, Md., 1964, 195-209. Вонг, Эйзепберг (Wong E., Eisenberg E.), Ite- Iterative synthesis of threshold functions. J. Math. Anal. AppL, 11 A965), 220-235. В у д (Wood С. F.), Application of direct search to the solution of engineering problems. Scientific Paper 6-41210-1-P1, Pit- Pittsburgh. Pa., Westinghouse Research Labs, Oct. 1960. В уд (Wood С. F.), Review of desing optimization techniques, IEEE Trans. Syst. Sci. Cybern, SSC-1 A965), 14—20. Вулф (Wolfe P.), A duality Theory for nonlinear program- programming. Quart. Appl. Math., 19 A961), 239—244. Вулф (Wolfe P.), On the convergence of gradient methods under constraint. IBM Research Paper RC-1752, Yorktown Heights, N. Y., IBM Watson Research Center, Jan. 1967. Гантмахер Ф. Р., Теория матриц. «Наука», 1966. Кирсанов И. В., Лекции по математической теории экст- экстремальных задач. Изд-во МГУ, 1970. Голдстейн (Goldstein A. A.), Cauchy's method of mi- minimization. Num. Math., 4 A962), 140—150. Голдфарб (Goldfarb D.), Extension of Dayidon's varia- variable metric method to maximization under linear inequality and equality constraints. SIAM J. Appl. Math., 17 A969), 739—764. * Г о л ь га т е й н R. Г., Теория дпойствепности в математическом программировании и ее приложения. «Наука», 1971. * Г о л ь ш т е й н Е. Г., Юдин Д. Б., Новые направления в линейном программировании. «Сов. Радио», 1966. Г у п т а, X а л л (Gupta S. С, Hall T. G.), On the opti- optimum design of PCM signals with system constraints. IEEE Trans. Aerosp. Electron. Syst., AES-4 A968), 499—504. ¦Данциг (Dantzig G. В.), Linear programming and exten- extension. Princeton, N. J., 1963. (Русский перевод: Дан- Данциг Д ж. Б., Линейное программирование, его приложения и обобщения. «Прогресс», 1966.) Данциг, Вейнотт (Dantzig G. В., Veinott A. (eds)), Mathematics of the decision sciences. Lectures in applied science vol. 2, Amer. Math., Soc, 1969. Данциг, Ко ттл (Dantzig G. В., Cottle R. W.), Positive (semi-) definite programming. Chapter IV in Abadie J. (ed.). (См. Абади.)
Деннис (Dennis J. В.), Methematical programming-elect- rical networks. New York, 1959. (Русский перевод: Ден- Деннис Дж., Математическое пр( гчаммирование и электриче- электрические цепи. ИЛ, 1961.) * Джон (John F.), Extremum problems with inequalities as side conditions, in Studies and essays. Gourant anniversary volume, New York, 1948, 187—204. Джонсон (Johnson I. L.), Impulsive orbit transfer opti- optimization by an accelerated gradient method. Presented at AIAA/NASA-MSG Astrodinamics Conference, Houston, Texas, Dec. 1967. Джонсон (Johnson S. M.), Optimum search for a maxi- maximum is Fibonaccian. RAND Corp. Report P-856, Santa-Moni- Santa-Monica, Calif., 1956. Дорн (D о r n W. S.), A duality theorem for convex program- programming. IBM J., 4 A960), 407-413. Дорн (D о r n W. S.), On Lagrange multiplier? and inequalities. J. Op. Res., 9 A961), 95-104. Дорн, Г о м о р и, Гринберг (D о г n W. S., G о m o- г у R. E., G r e e n b е г g H. J.), Automatic design of opti- optimal structures. J. de Mecanique, 3 A964), 25—52. Жоффрион (Geoff г ion A. M.), Primal resource-directi- resource-directive approach for optimizing decomposable systems. Rand Cor- Corporation Research Memorandum RM-5829-PR, Santa-Monica, Calif., 1968. Зангвилл (Z a n g w i 1 1 W. I.), Nonlinear programming: a unified approach, New York, 1969. (Русский перевод: 3 а н г- вилл В. И., Нелинейное программирование. Единый под- подход. «Сов. радио», 1973.) Зойтендейк (Z о u t e n d i j k G.), Methods of feasible directions. Amsterdam, 1960. (Русский перевод: Зой- Зойтендейк Дж. Г., Методы возможных направлении. ИЛ, 1963.) 3 у х о в и ц к и й СИ., Авдеева Л. И., Линейное и выпук- выпуклое программирование, 2-о изд., «Наука», 1967. *И о ф ф е А. Д., Тихомиров В. М., Теория экстремальных задач. «Наука», 1974. Канторович Л. В., Функциональный анализ и прикладная математика. УМН, 3 A948), № 6, 89—185. ¦Карманов В. Г., Математическое программирование. «Нау- «Наука», 1975. К а р р и (Curry II. В.), The method of steepest descent. Quar- Quarterly Appl. Math., 2 A944), 258—261. Келли (Kelley H. J.), The cutting plane method for sol- solving convex programs. SIAM J. ApjA Math, 8 AC60), 703-712.
ЛИТЕРАТУРА 335 К е л л п, Денхем, Джонсон, У и т л п (К е 1 - ley H. J., Denham W. F., Johnson I. L., Wheat- ley P. 0.), An accelerated gradient method for parameter optimization with nonlinear constraints. J. Austronautical Sciences, 1 ,.4 (July—August 1906), 166—169. К е л л п, Майерс (Kelly H. J., Myers G. E.), Con- Conjugate direction method for parameter optimization, Presented at 18th Congress of International Astronautical Federation. Belgrade, Yugoslavia, Sept. 1967. К и ф e p (K i e f e r J.), Sequential minimax search for a maxi- maximum. Proc. Amer. Math. Soc, 4 A953), 502. Кобаяши (К о bay ash i H.), Iterative synthesis method for a seismic array processor. Presented at the Third Annual Princeton Conf. on Inform. Science and Systems, Princeton, N. J., March 1969. Копал и к, Осборн (Kowalik J., Osborne M. R.), Methods for unconstrained optimization problems. New York, 1S68. К о л в и л л (Colville A. R.), A comparative study of non- nonlinear programming codes. Technical Report No. 320—2949, IBM New York Scientific Center, June 1968. Крокетт, Чернов (Crocett J, В., Chernoff H.), Gradient methods of maximization. Pacific J. Math., 5 A955), 33—50. Кун, Так к ер (К u h n H. W., Tucker A. W.), Nonli- Nonlinear programming. In Proc. 2-nd Berkeley Symp. Math. Stat. Prob., Berkeley, Calif., 1951, 481—492. Купер (Cooper L.), Heuristic methods for location-alloca- location-allocation problems. SIAM Review, 6 A964), No. 1. Курант (Courant R.), Methods of mathematical physics, vol. 2. New York, 1962. (Русский перевод: Курант Р., Уравнения с частными производными. «Мир», 1964.) *К у р а н т Р., Р о б б и н с Г., Что такое математика? «Просве- «Просвещенно», 1967. Курант, Гильберт (Courant R., Hilbert D.), Methods of mathematical physics, vol. 1. New York, 1953. (Рус- (Русский перевод: Курант Р. и Гильберт Д., Методы математической физики. Гостехиздат, 1951.) Кэнон, К а л л у м, П о л а к (Canon M. D., С и 1- lum С. D., Polak E.), Theory of optimal control and mathematical programming. New York, 1970. * К io н д и Г. П., К р е л л е В., Нелинейное программирова- программирование. «Сов. радио», 1965. Л а в и, Фогель (Lavi A., Vogel Т. P. (eds.)), Re- Recent advances in optimization techniques. New York, 1966. Л а к и, 3 а л ц, Уэлдон (Lucky R. W., Salz J., VV e 1 d о n E. J. Jr.), Principles of data communication. New York, 1968. Леон (Leon A.), A comparison among eight known optimi- optimization procedures, in Lavi A. and Vogel T. P. (eds.). (См. Ла- ви, Фогель.)
336 ЛИТЕРАТУРА Лесдон, Миттер, Уорен (Lasdon L. S., Mit- t e r S. К., Waren A. D.), The conjugate gradient method for optimal control problems. IEEE Trans. Autom. Contr AC-12 A967), 132-138. Ли (Lee C. Y.), An algorithm for path connections and its ap- applications. IRE Electron. Comput., EC-10 A961), 346—365. Лин (Lin S.), Computer solution of travelling salesmen problem. Bell S. T. J., 44 A965), 2245-2269. Локхид (Lockheed Missiles and Space Company), Launch vehicle component costs study*, vol. 2. Tech. Rept. NAS 8-11368, Huntsville, Alabama, 1965. * Л ю б и ч Ю. И., М а й с т р о в с к и й Г. Д., Общая теория релаксационных процессов для выпуклых функционалов. УМН, 25, № 1, 57—112 A970). Лью (Liu С. L.), Introduction to combinatorial mathematics. New York, 1968. M a k-K ормик, Майлендер, Фиакко (МсСог- m i с k G. P., Mylander W. C. Ill, F i а с с о A. W.), Computer program implementing the sequential unconstrained minimization technique for nonlinear programming. Technical Paper RAC-TP-151 (McLeon, Va., Research Analysis Corp.) June 1968. * Мангасарян (Mangasarian 0. L.), Pseudo-convex functions. SIAM J. Control, 3 A965), 281—290. Мангасарян (Mangasarian 0. L.), Nonlinear prog- programming. New York, 1969. Мангасарян, Ф ромов и ц (Mangasarian 0. L., Fromovitz S.), The Fritz John necessary optimality con- conditions in the presence of equality and inequality constraints. J. Math. Anal. AppL, 17 A967), 37-47. Маркус, Минк (Marcus M., Mine II.), A survey of matrix theory and matrix inequalities. Boston, 1964. (Русский перевод: Маркус М.и Минк X., Обзор по теории мат- матриц и матричных неравенств. «Наука», 1972.) Мартене, Аллен, Песенка (Martens H. R., Al- Allen С. М., Piosenka G. U.), Library of programs for a computer oriented systems course. Rept 2, Dept E. E., Buf- Buffalo, N. Y.f State Univ. of New York, 1967. Мартене, Горнер (Martens H.R., HornerW. M.), La- Laboratory studies in digital control. A laboratory manual for a computer oriented systems course, Rept 3, Buffalo, N. Y., State Univ. of New York, 1968. M a x а л о н о б и с (Mahalonobis P. С), On the genera- generalized distance in statistics. Proc. Nat. Sci. India, 12 A936), 49-55. Муррэй-Лассо, Бейкер (Murray-Lasso M. A., Baker W. D), Computer design of multistage transistor bias circuits. Proc. 5-th Ann. Allerton Conf. Circ. and Syst. The- Theory, Urbana, III. Univ. of Illinois, October 1967, 557—563. M э и с (Mays С. Н.), Effects of adaptation parameters on con- convergence time and tolerance for adaptive threshold elements. IEEE Trans. Electron. Comput., EC-13 A964), 465—468,
ЛИТЕРАТУРА 337 Мэнбон, Рабин (Munson J. К., R ib i d A. I.), Optimization by random search on analog computer. IRE Trans. Electron. Comput., EC-8, No. 2 (June 1959). Недлер, Мид (Nedler J. A., Mead R.), A simplex method for function minimization. Сотр. J., 7 A965), 308—313. Иильсон, (Nilsson N. J.), Learning machines. New York, 1965. (Русский перевод: Нильсон Н. Дж., Обучающиеся машины. «Мир», 1967). Нобль (Noble В.), Applications of undergraduate mathema- mathematics in engeneering. New York, 1967. О с т р ем (О s t г о in D. К.), Component optimization in struc- structural desing. Master's Thesis, Dept. of Eng. Univ. Calif., Los- Angeles, 1967. Пауэлл (Powell M. J. D.), An iterative method for finding stationary values of a function of several variables. Compt. J., 5 A962), 147—151. Пауэлл (Powell M. J. D.), An iterative method of finding the minimum of a function of several variables without calcu- calculating derivatives, Сотр. J., 7 A964), 155—162. Пауэлл (PoweilM. J. D.), A survey of numerical methods for unconstrained optimization, SIAM Review, 12 A970), 79—97. ¦Первозвапский А. А., Поиск. «Наука», 1970. * П о л а к (Р о 1 a k E.), Computational methods in optimiza- optimization. A unified approach. New York — London, 1971. (Русский перевод: П о л а к Э., Численные методы оптимизации. Еди- Единый подход. «Мир», 1974.) * II о л я к Б. Т., Методы минимизации при наличии ограниче- ограничений. В сб. «Матем. анализ», т. 12 (Итоги науки и техники). Изд-во ВИНИТИ, 1974. Понтрягин Л. С, Болтянский В. Г., Г а м к р р- лидзе Р. В., Мищенко Е. Ф., Математическая теория оптимальных процессов. «Паука», 1969. ¦Пропой А. И., Элементы теории оптимальных дискретных систем. «Паука», 1973. * П ш с н п ч н ы и Б. II., Необходимые условия экстремума. «Наука», 19E9. •Пшеничный Б. II., Данилин 10. М., Численные ме- методы в экстремальных задачах. «Наука», 1975. * Р а с т р и г и и Л. А., Статистические методы поиска. «Пау- «Паука», 1968. Р а ш, Б р а к е н, М а к - К о р м и к (Rush В. С, В г а с- ken J., М с С о г m i с G. P.), A nonlinear programming model for launch vehicle design and costing. Op. Res., 15 A967), 185—210. Розен, Судзуки (Rosen J. В., Suzuki S.), Con- Construction of nonlinear programming test problems. Comm. ACM, 8 A965), 113. Розенброк (Rosenbrock H. H.), An automatic method for finding the greatest or least value of a function. Сотр. J., 3 A960), 175—184. Рокафеллар (Rockafellar R. Т.), Duality in nonli- nonlinear programming. In Dantzig J. B. and Veinott A. (eds.). (См. Данциг, Вейнотт.)
338 ЛИТЕРАТУРА •Рокафеллар (Rockafellar R. Т.), Convex analysis. Princeton, New Jersey, 1970. (Русский перевод: Рокафел- Рокафеллар P., Выпуклый анализ. «Мир», 1973.) * Саульев В. К, Самойлова И. И., Приближенные ме- методы безусловной оптимизации функций многих переменных. В сб. «Матем. анализ», т. 11 (Итоги науки и техники). Иад-во ВИНИТИ, 1973. Сванн (Swann W. H.), Report on the development of a new direct search method of optimization. I. C. L. Ltd., Central Instrument Research Note, 64/3, England, 1964. С е а (С е a J.), Approximation variationelle des problems aux liraites. Ann. Inst. Fourier (Grenoble), 14 A964), 345—444. * Cea (Cea J.), Optimization: Theorie et algorithmcs. Dunod, 1971. (Русский перевод: Cea Ж., Оптимизация. Теория ц алгоритмы. «Мир», 1973.) С л е и т е р (Slater M.), Lagrange multipliers revisited. Со- wcls Commission Discussion Paper. Math., 403 (November, 1050). С п е н г (Spang II. A., Ill), A review of minimization techni- techniques [or nonlinear equations. SI AM Review, 4 A962), 345—362. Спендли, Хекст, Хинсворт (Spendley W., Hext G. R., H ins worth F. R.), Sequential applica- application of simplex designs in optimizations and evolutionary ope- operations. Technometrics, 4 A962), 441—459. Стайнберг (Steinberg L.), The backboard wiring prob- problem: a placement algorithm, SIAM Review, 3 A961), 37—50. Стюарт (Stewart G. W., Ill), A modification of Davidon's minimization method to accept difference approximations of derivatives. J. ACM, 14 A967), 72—83. Труды института инженеров по электротехнике и электронике (Proc. IEEE) Special Issue on Computer Aided Design, 55, No. 11 ^November 1967). T с у д а, К и о н о (Т s u d a T. Kiono Т.), Application of the Monte Carlo method to systems of nonlinear algebraic equa- equations. Num. Math., 6 A964), 59—67. У a ii л д (Wilde D.), Optimum seeking methods. Englcwood Cliffs, N. J., 1964. (Русский перевод: У а й л д Д. Дж., Мето- Методы поиска оптимума. «Наука», 1967.) Уайлд, Бейт л ер (Wilde D., Beightler С. S.), Foundations of optimization. Englewood Cliffs, N. J., 19E7. У и л к и и с о н (Wilkinson J. H.), The algebraic eigenva- eigenvalue problem. Oxford, 1965. (Русский перевод: У и л к и н - сон Дж. X., Алгебраическая проблема собственных значе- значений. «Наука», 1970.) У и н с т о н (W h i и s t о и A.), Some applications of the conju- conjugate function theory to duality. In Abadie J. (ed.). (См. Абади.) ¦Фаддеев Д. К., Фаддеева В. Н., Вычислительные ме- методы линейной алгебры. «Наука», 1963. Фан, Г л и к с б е р г, Г о ф ф м а н (Fan К., G 1 i с k s- burg I., Hoffman A. J.), Systems of inequalities invol- involving convex functions. Proc. Amer. Math. Soc, 8 A957), 617—622.
ЛИТЕРАТУРА 339 Фпакко, М а к - К о р м и к (F i а с с о А. V., М с С о г- m i с k G. P.), Computational algorithm for the sequential unconstrained minimization technique for nonlinear problems. Management Sci., 10 A964), 601—617. Ф и а к к о, Мак-Кормик (F i а с с о А. V., М с С о г- m i с k G. P.), Nonlinear programming: Sequential unconst- unconstrained minimization techniques. New York, 1968. (Русский перевод: Ф и а к к о А., М а к-К о р м и к Дж., Нелиней- Нелинейное программирование: методы последовательной безусловной минимизации, «Мир», 1972.) Флеминг (Fleming W. H.), Functions of several variables. Reading, Mass., 1965. Флетчер (Fletcher R.), Function minimization without evaluating derivatives. Сотр. J., 8 A965), 33—41. Флетчер (Fletcher R. (ed.)), Optimization. London — New York, 1969. Флетчер, П а у э л л (Fletcher R., Powell M. J. D.), A raplidly convergent descent method for minimization. Сотр. J., 6 A963), 163-168. Флетчер, Ривс (Fletcher R., Reeves С. М) Function minimization by conjugate gradients. Сотр. J., 7 A964), 149—154. Форсайт, Лейб л ер (Forsythe G. E., Leibler R. S.), Matrix inversion by a Monte Carlo method. Math. Tatbs and Other Aids to Computers, 4 A950), 127—129; 5 A951), 55. Форсайт, Mo л ер (Forsythe G. E., Moler С. В.), Computer solution of linear algebraic systems. Englewood Cliffs, N. J., 1967. (Русский перевод: Форсайт Дж. и М о- л е р К., Численное решение систем линейных алгебраических уравнений. «Мир», 1969.) Франклин (Franklin J. N.), Matrix theory. Englewood Cliffs, N. J., 1968. Френсис (Francis J. С F.), The QR transformations. Сотр. J., 4 A961), 265—271, 5 A962), 332—345. Хартли (Hartley H. 0.), The modified Gauss-Newton method for the fitting of nonlinear regression functions by least square, Technometrics, 3 A961), 269—280. * X e д л и (H a d 1 e у G.), Nonlinear and dynamic programming. Addison — Wesley, 1964. (Русский перевод: Хедли Дж., Нелинейное и динамическое программирование. «Мир», 1967.) X е ы к о к (Hancock П.), Theory of maxima and minima. New York, 1960. X e п н а н (H a n n a n E. J.), Time series analysis. London, 1060. (Русский перевод: Хеннан Э., Анализ временных рядов. «Наука», 1964.) Хе стене (Hestenes M. R.), The conjugate-gradient method for solving lunear systems. Proc. Symp Appl. Math., 6, New York, 1956. Хе стене, Ш тиф ель (Hestenes M. R., Stie- fel E.), Methods of conjugate gradient for solving linear sy- systems. J. Res. Nat. Bur. Standards, 49 A952), 409—436.
340 ЛИТЕРАТУРА ¦Химмельблау (Himmelblau D. M.), Applied non- nonlinear programming. McGraw-Hill Book Co., 1972. (Русский перевод: Химмельблау Д., Прикладное нелинейное программирование. «Мир», 1975.) X о, К а ш ь я п (II о Y. С, Kashyap R. L.), A class of ite- iterative procedures for linear inequalities. SI AM J. Control, 4 A966), 112—115. Хьюард (Huard P.), Dual program. IBM J. Res. Develop., 6 A962), 137—139. Хьюард (Huard P.), Programmation matematique convexe. Rev. Fr. Inform. Rech. Operation, 7 A968), 43—59. Хьюард (Huard P.), Resolution of mathematical program- programming with nonlinear constraint by the method of centers, chap- chapter 8. In Abadie J. (ed.). (См. Абади.) Чичинадзе В. К., The ^-transform for solving linear and nonlinear programming problems. Automatica, 5f №3 (May, 1969), 347—355. Ill e и б e, X у б e p (Scheibe P. 0., H u b e г Е. A.), The ap- application of Carroll's optimization technique to network synthe- synthesis. Proc. 3-rd Ann. Allerton Conf. on Circ. and Syst. Theory, Urbana, III., Univ. of Illinois, October 1965, 182—191. ¦Ill и л о в Г. Е., Математический анализ. Конечномерные век- векторные пространства. «Наука», 1969. Шмит, Кикер (S с h m i t L. A., Jr., Kicker T. P.), Synthesis of material and configuration section. J. Structural Division, Proc. ASCE, 88, ST3 (June 1962), 79—102. Шмит, ( Moppoy (S с h m i t L. A., Jr., Mor- Morrow W. M.), Structural synthesis with buckling constraints, J. Structural Division, Proc. ASCE, 89, S12 (April 1963), 107-126. Ill о п ф (S с h о р f A. H.), On the Kantorovich inequality, Num. Math., 2 A960), 334—346. Шумер, Штайглиц (S с h u m e r M. A., S t e I g- 1 i t z K.), Adaptive step-size random search. IEEE Trans. Autom. Control, AC-13 A968), 270—276. Э г м о н (A g m о n S.), The relaxation method for linear inequa- inequalities. Can. J. Math., 6 A956), 382—392. Эрроу, Гурвиц, Удзава (Arrow К. J., Hur- wicz L., Uzawa H.), Studies in linear and nonlinear programming, Palo Alto, Calif., 1958. (Русский перевод: Э р- роу К. Дж., Гурвиц Л., Удзава X., Исследования по линейному и нелинейному программированию. ИЛ, 1962.) ¦Юдин Д. В., Гольштейн Е. Г., Линейное программи- программирование (теория и конечные методы). Физматгиз, 1963. ¦Юдин Ю. Б., Гольштейн Е. Г., Задачи и метод ли- линейного программирования, изд. 2-е. «Сов. Радио», 1964.
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Активные ограничения 57, 200 , множество индексов 57 Алгоритм выбора направления 216 — обхода соседних вершин 65 Анализ регрессионный 102 Аппроксимация линейная 231 — сепарабельного программиро- программирования 234 Аффинное подпространство 17 Базисное решение 57 — — начальное 64 невырожденное 59 Билинейная форма 32 Вектор матрицы собственный 33 —, норма 16 —, нормальный к поверхности 26 Вектор-градиент 25 Вектор-субградиент 296 Векторная импульсная реакция фильтра 93 Векторы взаимно ортогональные 18 перпендикулярные 18 — Q-ортогональные 19, 133 — Q-сопряженные 19, 133 Вещественное подпространство 16 Выборочное среднее 92 Выпуклое сепарабельное програм- программирование 177 — множество 38 Вырожденная задача 70 Гаусса — Жордапа метод 67 Геометрическое программирова- программирование 240 Гессе матрица 25, 31 Гиперплоскость 17 Градиентный метод 26, 119 оптимальный 120 с большим шагом 120 с малым шагом 120 , скорость сходимости 131 , сходимость 128 Грама — Шмидта ортогонализация 18 Даффина подход 257 Двойственность 104 Девиса — Сванна — Кэмпа метод 190 Диагонализация матрицы 35 Дихотомия 171 Длина вектора 16 Дополнение ортогональное 19 Допустимая область 192 Дэвидоиа метод 149 , модифицированный алго- алгоритм 158, 160 Евклидово расстояние 16, 108 Задача взвешенных наименьших квадратов 84, 86 — двойственная 104, 107 — идентификации параметров 278 — квадратичного программирова- программирования 246 — коммивояжера 183 — линейного поиска 120 программирования 54 вырожденная 70 , дополнительные перемен- переменные 55 , заданная в стандартной форме 54 каноническая 69 , ослабляющие перемен- переменные 55 , табличная форма 66 каноническая фор- форма 67 1 f нулевая строка 66 . , нулевой столбец 66 регулятора 284 — о минимальной норме ИЗ, 1Ц — одномерного поиска 120 — оптимального управления 99, 281 — перераспределения ресурсов 294 — поиска 90 — прямая 105, 107 — размещения 78, 112 — размещения —- распределения 183 — сепарабельного программирова- программирования 177 — Чебышева аппроксимации 85 Закон Снелла 86 Каноническая форма задачи ли- линейного программирования 67 Канторовича — Бергстрёма нера- неравенство 304 Канторовича неравенство 121 Квадратичная форма 32 положительно определенная 36
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ полуопределенная 36 Келли метод отсекающей пло- плоскости 234 Количество взаимной информа- информации канала 237 Конфигурация 174 Коши — Шварца неравенство 16, 40, 153, 299 Крайняя точка выпуклого множе- множества 55 Куна — Таккера теорема 63, 206 , дифференциальная фор- форма 207 о седловой точке 211 Лаграпжа множители 192, 195 — функция 195 Лежандра преобразование 241, 319 Линейное многообразие 17 — подпространство 16 — программирование 54 Линейный регрессионный анализ 85 Мазура теорема 44 Максимум глобальный 29, 30 Матрица выборочная ковариаци- ковариационная 92 — Гессе 25, 31 — диагональная 35 — знаконеопределепная 36 — нулевая 46 — ортогональная 35 — положительно определенная 36 полуопределенная 36 — сопряжений 97 Махалонобиса расстояние 92 Метод ведущего элемента 67 —внешней точки 226 —внутренней точки 227 — Гаусса — Жордана 67 — градиентный 26, 119 оптимальный 120 , порядок сходимости 132 с большим шагом 120 с малым шагом 120 , скорость сходимости 131 , сходимость 128 — Девиса — Сванна — Кэмпа 190 — декомпозиции 294 — деления пополам (дихотомия) 171 — Дэвидона 149 , модифицированный алгоритм 158, 160 — золотого сечения 171, 174 — Келли отсекающей плоскости 234 — конфигураций 174 — наискорейшего спуска 120 — Нсдлера — Мида 186 — Ньютона 144, 145 — Ньютона — Рафсона 133, 145 , скорость сходимости 148 — параллельных касат шных 123 итерационный 126 продолженный 127 — Пауэлла 126, 179 — переменный метрики 149, 150 Метод полиномиальной аппрокси- аппроксимации 169 — последовательной безусловной минимизации 227 — приведенного градиента 222 — проекции градиента 219 — прямого поиска 174 — релаксационный 176 — с декомпозицией переменных — Розеиброка 167, 175, 178 — Саусвелла 126 — сопряженных градиентов 136 направлений 134 — Спендли — Хекста — Хинсвор- та 186 — Фибоначчи 171 — Хука — Дживса 175 — численной минимизации 169 — штрафных функций 225 Методы возможных направлений 117, 214 , алгоритмы выбора на- направлений 216 — Гаусса — Зейделя 126 — градиентные 119 — итерационные 119 — одномерного поиска 167 — поиска 117, 174 — покоординатного спуска 126 — прямые 117, 169 — релаксационные 116, 126, 176 —случайного поиска 181 —, сравнение методов оптимиза- оптимизации 270 Минимум глобальный 30, 41 строгий 30 — локальный 29, 41 строгий 30 Множество базисных индексов вектора 59 — выпуклое 38, 40 — допустимое 55 — индексов активных ограниче- ограничений 57 Множители Лагранжа 192, 195 Множитель недопустимости 226 Надграфик функции 40 Направление приемлемое 117 Невязка 75 Недлера — Мида метод 186, 273 Неравенство Канторовича 121 — Канторовича — Бергстрёма 304 — Коши — Шварца 16, 40, 153, 299 — ограничивающее 191 — треугольника 79 Норма вектора 16, 46 Нулевая матрица 46 Нуль-пространство матрицы 21 Ньютона метод 144, 145 Ньютона — Рафсона метод 133,145 , скорость сходимости 148 Область допустимая 192 — значений матрицы 19 Ограничения 191 — активные 57, 200 , множество индексов 57
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 343 Ограничивающие неравенства 191 линейные 200 нелинейные 203 — равенства 191 Окрестность точки 29 Ортогонализация Грама — Шмидта 18 Ортогональность 18, 134 О-ортогональность 19, 133 Ослабляющие условия 245 Оценка максимального правдопо- правдоподобия 84 Пауэлла метод 126, 179 Переменные дополнительные 55 — ослабляющие 55 Пиковое искажение 95 Подпространство аффинное 17 — вещественное 16 — линейное 16 Позиномы 255 Порядок сходимости 132 Преобразование Лежандра 241, 319 Проектор 23 Проекция ортогональная 22 , оператор 23 Произведение векторов внутрен- внутреннее 16 скалярное 16 Производная функции 28 Пропускная способность канала 237 Пространство бесконечномерное векторное 114 — функциональное 114 Псевдовыпуклая функция 74 Равенство ограничивающее 191 — параллелограмма 71 Размерность пространства 19 Расстояние 70 — евклидово 16 — Махалонобиса 92 Регулярность ограничений 203 Решение базисное 57 начальное 64 невырожденное 59 — допустимое 78, 192 — субоптимальное 78 Розснброка метод 167, 175, 178 Ряд Тейлора 25, 26 Саусвелла метод 126 Седловая точка 32 Симплекс-метод 186 Система плохо обусловленная 44 Снелла закон 86 Собственное значение матрицы 33 Собственный вектор матрицы 33 Сопряженность 134 §-сопряженные векторы 19, 133 Спектральное представление ма- матрицы 311 Спеидли — Хекста «*• Хинсворта метод 186 Сравнение методов оптимизации 270 Сумма подпространств прямая J <* Сходимость градиентного метода 128, 131 — квадратичная 133 Тейлора ряд 25, 26 Теорема Мазура 44 — Куна — Таккера 63, 206 , диффех^енциальная фор- форма 207 о седловой точке 211 ' — о множителях Лагранжа 196 — о седловой точке 210 — Фана 197, 301 — Фритца — Джона 206 • » дифференциальная форма о седловой точке 210 —^Хана — Банаха конечномерная ' 44 Точка крайняя выпуклого мно- множества 55 — критическая 30 — седловая 32 Тренд поиска 174 Унимодальная функция 29 Управляемость 101 Уравнения ограничений 15, 191 Ускорение 126 Условия дополняющей нежест- нежесткости 245 — ослабляющие 245 Фана теорема 197, 301 Фаркаша лемма 197, 202, 314 Фибоначчи метод 171 Фильтр корректирующий транс- версальный 94 — равномерного приближения 83 Форма билинейная 32 — квадратичная 32 положительно определенная 36 — полуопределепиая 36 Фрятца — Джона теорема 206 , дифференциальная фор- форма 207 . — о седловой точке 210 Функции тестовые 271 Функция выпуклая 39 — квазивыпуклая 74 — Лагранжа 195 — мультимодальная 29 — псевдовыпуклая 74 — унимодальная 29 Хана — Банаха конечномерная теорема 44 Хука — Дживса метод 175 Целевая функция 77 Чебышева задача аппроксимации 85 Число обусловленности матрицы 45, 48 Чувствительность решений 217 Энтропия апостериорная 236 — априорная 236
Масанао Аоки ВВЕДЕНИЕ В МЕТОДЫ ОПТИМИЗАЦИИ Основы и приложения нелинейного программирования М., 1977 г., 344 стр. с илл. Редактор Д. С. Фурманов Техн. редактор Е. В. Морозова Корректор Н. Д. Дорохова Сдано в набор 29.09.1976 г. Подписано к печати 18.03.1977 г. Бумага 84х1087з2. Физ. печ. л. 10,75. Условн. печ. л. 18,06. Уч.-изд. л. 16,73. Тираж 12 000. Цена книги 1 р. 46 к. Заказ № 278. Издательство «Наука» Главная редакция физико-математической литературы 117071, Москва, В-71, Ленинский проспект, 15 4-я типография издательства «Наука», 630077, Новосибирск, 77, Станиславского, 25.