Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

full_book

.pdf
Скачиваний:
53
Добавлен:
27.03.2015
Размер:
5.7 Mб
Скачать

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

Глава 7. Модели и методы поиска локально– оптимальных решений

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

f ( y ) min, y Y , f

: Y R 1 ,

(7.1)

Y = { y D R N ; g ( y ) 0 , h ( y ) = 0},

(7.2)

D = { y R N : a

y b },

(7.3)

В некоторых случаях мы будем предполагать, что в определении допустимой области (7.2) ограничения–равенства отсутствуют, т.е. множество Y имеет вид

Y = { y D R N ; g ( y ) 0 } .

(7.2)

Формально, как это уже отмечалось в четвертой главе, область (7.2) всегда может быть сведена к форме (7.2) за счет замены одного равенства h(y)=0 двумя неравенствами h(y)0, – h(y)0. Заметим, что при численном решении обычно вводится допустимая невязка δ > 0 для равенств, и они заменяются совокупностью следующих условий: h(y)– δ ≤ 0, – h(y)– δ ≤ 0.

В разделе 1.2 первой главы были рассмотрены различные понятия решения, используемые для задач (7.1)–(7.3) или (7.1), (7.2), (7.3). Последняя постановка (E – постановка) определяла задачу поиска локального экстремума.

Определение 7.1. Задача поиска локального минимума (локально–оптимального решения) состоит в том, чтобы для заданной начальной точки у Y найти точку и значение локального минимума уо(у), в области притяжения которого находится заданная начальная точка y.

Существует достаточно много случаев, требующих поиска локально– оптимальных решений. Такая задача возникает, как правило, тогда, когда известна приближенная оценка y0 глобально-оптимального решения, найденная с неудовлетворительной точностью. В этом случае достаточно найти с высокой точностью локально–оптимальное решение, соответствующее начальной точке поиска y0. Если эта точка была выбрана правильно, то найденный локальный минимум уо0) зависящий от y0, будет являться глобальным минимумом задачи.

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

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

Городецкий С.Ю.

Лекция 2.19–2.22

1

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

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

Кроме перечисленных случаев методы локального поиска необходимы в задачах слежения за дрейфом выделенного экстремума при постепенном изменении структуры задачи (за счет влияния переменных параметров). Такая ситуация (см. пример Е в разделе 1.2 первой главы) возникает, например, в методах внешнего штрафа, рассмотренных в разделе 3.2.

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

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

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

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

Концепция применения принципов оптимальности (одношаговой оптимальности) к построению вычислительных процедур поиска минимума была рассмотрена в разделе 4.2 четвертой главы. Использование этих принципов возможно лишь в том случае, когда класс задач Φ (т.е. принятая модель задачи оптимального выбора — см. определение 1.7) допускает введение функции эффективности Vk (ωk (f,g,h) ) для текущей оценки решения ek, построенной по априорной и накопленной поисковой информации (см. разделы 4.2, 4.3, а также 1.4). Иначе говоря, нужно, чтобы по результатам ωk конечного числа испытаний было возможно построение оценок положения решения в той или иной форме.

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

7.2 – 7.7.

2

Лекция 2.19–2.22

Городецкий С.Ю.

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

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

Вопросы построения эффективных методов и оценки вычислительной трудоемкости для класса выпуклых гладких задач подробно рассмотрены в книге А.С. Немировского и Д.Б. Юдина [36]. В лекции этот материал рассматривается в кратком изложении.

Определение 7.2. Задача математического программирования (7.1)–(7.3) называется выпуклой, если f, g — непрерывные выпуклые функции на выпуклом D, а ограничения–равенства отсутствуют или афинны, т.е. имеют вид h(y)=Ay+c.

7.1.1. Метод центров тяжести

Далее будем предполагать, что ограничения–равенства отсутствуют, т.е.

задача имеет

форму (7.1), (7.2), (7.3).

Дополнительно

потребуем, чтобы

f,

g C1(E) и

было возможно проводить

их испытания

первого порядка,

в

результате которых в каждой точке yk D вычислялись значения этих функций f k= f(y k), g k= g(y k) и градиенты f k= f(y k), g k= g(y k).

Предположим, что введены нормировочные коэффициенты c0>0, c1>0,…,cm>0 для целевой функции f и компонент функции ограничений– неравенств g=(g1,…,gm). Для выпуклой задачи любая локально–оптимальная точка будет одновременно являться ее глобально оптимальным решением y *. Зададим относительную точность решения задачи ε > 0. Под решением с относительной точностью ε >0 будем понимать любую точку y *ε D, что

c0 f(y *ε)c0

f(y *) + ε , ci gi (y *ε)≤ ε

(i=1,…,m).

В дальнейшем будем

считать, что нормировка выполнена следующим

образом

 

 

c0 = ( sup{ f ( y) : y D}inf { f ( y) : y D} )1 ,

ci = (max{0; sup{gi ( y) : y D}})1 ,

(i =1,..., m).

Построим правило сокращения области поиска по результатам очередного k–го испытания. Обозначим начальную область размещения решения через D0= D, а последующие ее оценки — через Dk. Эти области будут играть роль текущих оценок решения. Такие оценки в разделе 4.2 были обозначены через ek. Перед k–м испытанием имеем область Dk–1. Пусть в некоторой точке y k=w получены результаты k–го испытания. Возможно два случая, которые мы рассмотрим отдельно.

Случай A. i, что ci gi (y k)≥ ε.

По свойству 1.7 выпуклых функций (формула (1.34) ) можно построить

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

Hk= { y RN: ci gi (y k) + ci ( gi (y k), y – yk) ≤ ε }.

В этом случае область возможного размещения решения сокращается до пересечения

D k= D k-1 Hk.

Городецкий С.Ю.

Лекция 2.19–2.22

3

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

Введем в качестве значения функции эффективности на шаге меру области D k,понимаемую в смысле лебегова объема V(D k), т.е.

Vk( ωk (f, g) )= V(D k).

Тогда при фиксированном направлении вектора нормали d к границе Hkобласти отсечения (т.е. при заданном векторе gi (w) = d ) наихудшее значение функции эффективности будет достигаться при ci gi (w)= ε, что соответствует

прохождению отсекающей гиперплоскости Hkточно через точку y k=w проведенного испытания.

Случай B. i: ci gi (y k)< ε, т.е. точка измерения допустима в пределах заданной погрешности. При этом отсечение части области поиска можно выполнить, используя результат испытания целевой функции. А именно, полупространство, вне которого не содержится ε – приближенных решений, будет иметь вид

Hk= { y RN: ( f (y k), y – yk) 0 }.

Новая оценка области возможного размещения решения, как и в случае A, примет вид

D k= D k-1 Hk.

В этом случае отсекающая гиперплоскость Hkс нормалью d= f (w) будет всегда проходить через точку испытания y k (см. рис. 1.16). Таким образом, мы рассмотрели оба случая A и В.

Можно сделать следующий вывод: в общем случае, если результат испытания еще не известен, в наихудшем случае выполняется отсечение части

области D k–1 гиперплоскостью H (w, d), проходящей через точку планируемого испытания w с неизвестной ориентацией нормали d. Гарантированное значение функции эффективности на шаге, согласно (4.31), соответствует значению точной верхней грани меры новой области, где верхняя грань берется по d.

Wk(w) = Wk(w, D k-1) = sup { V(D k–1) H (w, d) ): || d||=1 }.

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

y k = arg min { Wk (w, D k–1): w D k–1 }.

Оно определяет выбор точки испытания, приводящий (в наихудшем случае) к наиболее быстрому сокращению лебегова объема области возможного размещения решения.

Ясно, что y k должна выбираться в «центре» выпуклой области D k-1. Однако, точный выбор затруднителен. В качестве естественного кандидата на роль «центра» области D k-1 подходит ее центр тяжести. Поэтому будем выбирать

yk = y dy

dy

Dk 1

Dk 1

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

V(D k) < ε N V(D),

где N — размерность пространства поиска.

4

Лекция 2.19–2.22

Городецкий С.Ю.

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

Остановимся на некоторых свойствах метода. Известна верхняя оценка коэффициента сжатия лебегова объема выпуклой замкнутой области при отсечении через центр тяжести.

Лемма 7.1.1 Если D — выпуклая замкнутая ограниченная область в RN, а D — его часть, полученная отсечением гиперплоскостью, проходящей через центр тяжести D, то для отношения лебеговых объемов справедлива следующая оценка.

V( D)/V(D)≤ ν(N) = (1-(N/(N+1))N) (e-1)/e,

где e — основание натурального логарифма.

Лемма показывает, что метод центров тяжести сходится со скоростью геометрической прогрессии с коэффициентом не хуже, чем ν(N) 0,514. Существуют более точные оценки, учитывающие заданную относительную точность решения ε. А.С. Немировским и Д.Б. Юдиным доказано следующее свойство [36].

Свойство 7.1. Для любой гладкой выпуклой задачи (7.1), (7.2), (7.3) метод МЦТ, настроенный на относительную точность ε (0 < ε <1), требует не более чем

K *(N,ε) = ]N ln (ε –1)/ ln (ν(N) –1 ) [ + 2

испытаний, где ]x[ — наименьшее целое, большее или равное x.

7.1.2. Метод эллипсоидов

Метод центров тяжести вычислительно трудоемок из-за высоких вычисления затрат, связанных с вычислением центров тяжести сложных выпуклых областей D k-1. А.С. Немировским и Д.Б. Юдиным предложена упрощенная вычислительно реализуемая модификация МЦТ, которую можно назвать методом эллипсоидов. Дадим ее концептуальное описание.

Пусть D0 известный эллипсоид, содержащий начальную область поиска D. Идея метода заключается в том, чтобы на каждом шаге поиска область, полученную в результате очередного отсечения, заменять на содержащий ее эллипсоид Dk-1 минимального объема. Очередное измерение проводится в его легко вычисляемом геометрическом центре.

При этом, по сравнению с исходным методом МЦТ, требуется дополнительная проверка принадлежности точки y k области D. Если y k D, то отсекающая гиперплоскость строится обычным образом. Если же y k D, то в

качестве Hkвыбирается любая гиперплоскость, опорная ко множеству точек

{ y: ρ(y,D) ≤ ρ(y k,D) }.

Для упрощения алгоритма перед отсечением выполняется афинное преобразование пространства, переводящее эллипсоидDk-1 в шар.

1 Б.С.Митягин Два неравенства для объемов выпуклых тел. – Мат. заметки, 1969, т.5, вып.1.

Городецкий С.Ю.

Лекция 2.19–2.22

5

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

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

Остановимся на свойствах. Известна простая геометрическая оценка коэффициента (β(N))N, учитывающего дополнительное приращение объема за счет замены полушария описанным вокруг него эллипсоидом. Очевидно, что при N=1 β(N)=1. Оказывается, что при N >1

β(N ) = 21 N (N ((N 1) (N +1))12 N (N 2 1)1/ 2 ).

Свойство 7.2.

Пусть V( D0 ) / V(D)≤ β *

(β * >1),

тогда

для решения с

относительной

точностью ε

любой

гладкой

выпуклой

задачи методу

эллипсоидов потребуется не более чем

K *(N,β,ε) = ] ln (β * /ε) / ln 1/β(N) [ + 2

испытаний.

)Замечание. Метод эллипсоидов можно рассматривать как конкретный вариант алгоритма из класса методов растяжения постранства (R – алгоритмов) Н.З.Шора [49], рассматриваемых в разделе 7.5.

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

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

Первоначально, в разделах 7.3 – 7.7, будут построены методы локальной оптимизации для простейшей задачи без каких-либо ограничений

f ( y ) min, y R N .

(7.4)

 

В них кроме целевой функции f(y), определенной для y RN , будем также задавать начальную точку поиска y0, необходимую для локальных методов. Несмотря на неограниченность области поиска всегда будем предполагать, что минимум в задаче существует.

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

Напомним, что общие способы учета произвольных функциональных ограничений были подробно изучены в разделе 3 части 2.

7.2.1. Общая структура методов поиска локального минимума, принцип локального спуска

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

6

Лекция 2.19–2.22

Городецкий С.Ю.

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

 

 

 

yk +1 = yk + xk d k ,

 

 

 

 

(7.5)

 

 

yk — точки

 

 

 

 

 

 

 

где

основных испытаний, состоящих в

 

вычислении I k=I(yk ) — набора тех

или

иных

локальных

 

характеристик

целевой

функции

в

точке

yk ,

d k

 

направления смещения из точек yk , вычисляемые по

 

результатам

основных

 

 

испытаний,

 

а xk — коэффициенты, определяющие величины смещений

 

вдоль выбранных направлений.

 

 

 

I k=I(y k )

В набор вычисляемых для функции локальных характеристик

могут входить:

значение

функции f k = f( yk ),

вектор

градиента f k = f(yk),

матрица вторых

производных (гессиан) Γk=Γ f(yk).

Какой

именно

набор

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

Для определения величин смещений xk вдоль направлений d k методы могут выполнять вспомогательные (рабочие) шаги. Это приводит к дополнительным измерениям локальных характеристик целевой функции вдоль направления d k

(рис.7.1).

Переходы от точек yk к точкам yk+1 выполняются таким образом, чтобы обеспечить существенное убывание значений функции f k = f( yk ) в результате шага. Заметим, что простого выполнения условия убывания значений f k , когда для всякого k выполняется f k+1 < f k , для обеспечения сходимости к решению задачи недостаточно.

Рис.7. 1. Общая структура организации поиска локального минимума

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

f ( yk ) ε.

(7.6)

 

Нужно отметить, что выполнение условия (7.6), в общем случае, не гарантирует близость точки yk к решению задачи. Для методов, не использующих вычисление градиента (например, для методов прямого поиска Хука-Дживса или Нелдера-Мида), останов производится по другим правилам, своим для каждого из методов.

Городецкий С.Ю.

Лекция 2.19–2.22

7

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

7.2.2. Измерения локальной информации и роль модели задачи в их интерпретации

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

Совокупность предположений относительно свойств решаемой задачи мы назвали моделью задачи (определение 1.7 главы 1). В большинстве случаев, принятая модель задачи (7.4) может быть описана в терминах принадлежности целевой функции f(y) некоторому классу функций: fΦ.

Принятая модель задачи существенно влияет на интерпретацию результатов проведенных испытаний (см. примеры в разделе 1.4).

В задачах локальной оптимизации общего вида априорная информация о функциях бывает достаточно скудной. Например, если о функции f известно только то, что она непрерывно дифференцируема, т.е. принадлежит классу Φ =C(D), а испытание в точке yk состоит в вычислении значения функции f k и градиента f k, то нельзя указать никаких правил сокращения области поиска решения по результатам испытаний. Однако можно использовать информацию о векторе градиента для выбора направления d k смещения текущей точки yk . А именно, в качестве такого направления можно принять направление антиградиента d k = – f k, определяющего направление скорейшего локального убывания функции. Заметом, что если бы о целевой функции было известно больше, например, что f C2(D) и f близка к квадратичной функции, то при той же измеряемой информации можно было бы указать значительно лучшие стратегии выбора направлений поиска, чем антиградиент, используя квадратичную модель функции.

7.2.3. Классификация траекторных методов локального поиска

Обычно используют классификацию методов в зависимости от той локальной информации, которую метод получает при выполнении основных испытаний.

Определение 7.3. Если метод использует результаты испытаний, включающие вычисление производных функции до k-го порядка, то его относят к методам k- го порядка.

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

Определение 7.4. Если метод нулевого порядка не использует предположений о гладкости функции, то его называют методом прямого поиска.

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

8

Лекция 2.19–2.22

Городецкий С.Ю.

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

разработки специальных вычислительных процедур, позволяющих определять в (7.5) коэффициенты одномерных смещений x k вдоль выбираемых направлений d k.

7.2.4. Эффективные стратегии поиска вдоль направлений. Регуляризованные алгоритмы одномерного поиска

Вычислительная схема методов локального поиска (7.5) требует многократного применения процедур выбора одномерных смещений x k вдоль направлений d k. В процессе работы метода эти процедуры могут выполняться сотни раз. Это накладывает повышенные требования к эффективности таких процедур. Остановимся на принципах и алгоритмах определения смещений.

Величина коэффициента x k, определяющего длину шага вдоль направления d k, может выбираться на основе различных критериев [2,4]. Весьма распространенными при построении методов являются следующие: критерий близости к минимуму по направлению, критерий существенности убывания функции, а также требование по степени уменьшения первоначального интервала возможных значений x k.

В основе первого критерия лежит требование, чтобы в точке y k + x k d k величина скорости изменения функции f в направлении d k была в заданное число раз меньше скорости ее изменения в точке y k. Это требование формализуется следующим образом. Задается малый положительный коэффициент η, и величина x k определяется условием

 

 

xk Π1 (η), 0 η < 1

(7.9)

Π1 (η) ={x 0 :

 

( f ( yk + x d k ), d k )

 

η (f ( yk ), d k ) }.

(7.10)

 

 

В основе второго критерия (существенности убывания функции) лежит

требование

 

 

 

xk Π2 (µ), 0 < µ < 1

(7.11)

Π2 (µ) = {x 0 : f ( yk + x d k ) f ( yk ) + µ x ( f ( yk ), d k ) }.

(7.12)

Эти два критерия используются совместно, и окончательное условие выбора x k состоит в одновременном выполнении требований (7.9)-(7.12). При этом для их непротиворечивости на значения параметров µ и η накладывается дополнительное требование вида µ < η, т.е.

x k Π = Π1(η )∩ Π2(µ ), 0 < µ < η < 1.

(7.13)

Напомним, что используемые в формулах (7.10), (7.12) скалярные произведения градиента функции f(y) на вектор направления d определяют производные функции f в точке y в направлении d, а именно f(y)/d = ( f(y), d).

На рис.7.2 дана иллюстрация выбора xk на основе этих двух критериев. Если при выборе коэффициента одномерного шага используется условие (7.13) с η << 1, то говорят, что длина шага выбирается из условия "аккуратного"

одномерного поиска.

При исследовании сходимости методов считается, что такой выбор соответствует выбору x k из условия достижения минимума функции одномерного сечения

ϕ(x)=f(y k+xd k).

(7.14)

Городецкий С.Ю.

Лекция 2.19–2.22

9

ННГУ. Учебный курс «Модели и методы конечномерной оптимизации». Часть 2. Нелинейное программирование и многоэкстремальная оптимизация.

Рис.7. 2 Критерии выбора коэффициента одномерного шага

Как организовать выбор xk алгоритмически? Процесс выбора разбивается на два этапа. На первом этапе определяется промежуток [0,X], на котором следует искать значение xk. В задачах без явных ограничений на переменные этот промежуток должен иметь пересечение с искомым множеством Π из (7.13). Если же в задаче есть ограничения y D, то такого пересечения может не существовать, и тогда значение X определяется из условия попадания на границу области D из

(7.3).

АЛГОРИТМ ОПРЕДЕЛЕНИЯ ПРОМЕЖУТКА [0,X].

ШАГ 0. При решении задачи без ограничений (7.4) выбирается начальное значение X0 = . При решении задачи с ограничениями (7.1)–(7.3), включающими принадлежность точки y параллелепипеду D, по текущей точке y k и направлению d k начальное значение X0 определяется как наименьшее значение x, при котором точка y k + x d k попадает на границу этого параллелепипеда.

ШАГ 1. Выбирается малое δ > 0 и x = 0. ШАГ 2. Полагается x = x + δ.

ШАГ 3. Если точка y k + x d k D, то окончательно принимается X = X0 и процесс останавливается. Если y k + x d k D и p = ( f(y k + x d k),d k) > 0, т.е. обнаружено значение x, при котором функция f в одномерном сечении возрастает, то полагается X = x и процесс останавливается. В противном случае удваивается величина шага δ := 2δ и происходит возврат на шаг 2.

На втором этапе определения xk на промежутке [0,X] выполняется процедура поиска минимума функции одного переменного ϕ(x) из (7.14), являющейся одномерным сечением функции f(y) в направлении d k . Поиск продолжается до момента первого попадания значения x в множество Π или же до того момента, когда будет достигнут заданный коэффициент сжатия σ (0<σ<<1) для текущего интервала, содержащего решение, по отношению к длине исходного интервала [0,X].

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

Заметим, что при поиске минимума функция ϕ(x) всегда считается

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

10

Лекция 2.19–2.22

Городецкий С.Ю.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]