Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Методы сокращения промежутков
Рассмотрим далее примеры методов, которые реализуют последовательную стратегию. В основе данных методов лежит последовательное сокращение промежутка неопределенности. Сокращение промежутка неопределенности производится в большинстве методов на основе вычисления функции в точках текущего промежутка. Данные точки разбивают промежуток неопределенности на несколько частей. Свойство унимодальности функции позволяет на основе вычисления функции в произвольных двух точках, принадлежащих промежутку, определить, каким из полученных отрезков точка минимума не принадлежит. Действительно, поскольку унимодальная функция на промежутке не возрастает, а на промежутке не убывает, то если выбрать две точки и для этих точек , то это может быть либо ситуация, изображенная на рисунке 7 или рисунке 9, и в том и в другом случае . Случаю же может соответствовать только ситуации, изображенные на рисунках 8, 10, и поэтому в данном случае . Рассмотренные ниже несколько методов последовательной одномерной минимизации отличаются способом выбора точек . При этом различные способы выбора точек приводят к разной скорости сокращения промежутка неопределенности и к различному числу необходимых вычислений функции.
Рис. 7 Рис. 8
Рис.9 Рис. 10 Метод деления промежутка пополам
Метод деления промежутка пополам относится к последовательным стратегиям и позволяет исключить из дальнейшего рассмотрения на каждой итерации половину текущего промежутка неопределенности. Работа алгоритма заканчивается, когда длина текущего промежутка неопределенности оказывается не более некоторой величины , которую называют требуемой точностью. Метод принадлежит к методам нулевого порядка. На каждой итерации сравниваются значения функции в трех пробных точках, равномерно распределенных на текущем промежутке, т.е. делящих его на четыре равные части.
Алгоритм Шаг 1. Задать начальный промежуток неопределенности и - требуемую точность. Положить . Шаг 2. Вычислить: . Шаг 3. Вычислить: , , . Шаг 4. Сравнить значения и : а) если , исключить промежуток , положив . Средней точкой нового промежутка становится точка . Перейти к шагу 6. б) если , перейти к шагу 5. Шаг 5. Сравнить и : а) если , исключить промежуток положив . Средней точкой нового промежутка становится точка . Перейти к шагу 6. б) если , исключить промежутки , положив . Средняя точка нового промежутка не изменится . Шаг 6. Вычислить . Если , алгоритм завершает свою работу, и делается вывод, что , а в качестве приближенного решения можно, например, взять середину данного промежутка. Если же , то положить и перейти к шагу 3. Следует заметить, что для данного метода на каждой итерации, начиная со второй, вычисляется значение функции только в двух точках, так как средняя точка нового промежутка всегда совпадает с одной из точек рассматриваемых на предыдущей итерации. Таким образом, для данного метода , где - количество вычислений функции. Нумерация промежутков неопределенности подчеркивает тот факт, что на каждой итерации вычисляется два значения функции.
Пример 2. Найти минимум функции методом деления промежутка пополам. Решение. В качестве начального промежутка неопределенности рассмотрим промежуток и положим . 1. Положим . 2. Вычислим: . 3. Вычислим , , . 4. , поэтому положим , . 5. Получим . Положим и перейдем к шагу 3. 6. Вычислим , , . 7. , поэтому перейдем к шагу 5. 8. , поэтому положим , , . 9. Получим . Положим и перейдем к шагу 3. После третьего прохода алгоритма, получим . Достигнута требуемая точность, поэтому алгоритм заканчивает свою работу с . Характеристика относительного сокращения промежутка . В качестве решения можно взять среднюю точку последнего промежутка .
Метод золотого сечения Метод золотого сечения относится к последовательным методам нулевого порядка. В методе золотого сечения две внутренние точки, которые используются для сокращения промежутка неопределенности, выбираются таким образом, чтобы одна из них использовалась с той же целью и на следующем уже сокращенном промежутке. Такое правило выбора точек приводит к тому, что число вычислений функции сокращается вдвое и одна итерация требует расчета только одного нового значения функции. Такими свойствами обладают точки, называемые точками золотого сечения. Говорят, что точка производит золотое сечение промежутка, если отношение длины всего промежутка к длине большей части равно отношению длин большей части к меньшей. В методе золотого сечения на промежутке симметрично относительно его концов выбираются точки и , такие что При этом точка производит золотое сечение промежутка , а точка -промежутка .
Алгоритм Шаг 1. Задать начальный промежуток неопределенности и - требуемую точность. Положить . Шаг 2. Вычислить: . Шаг 3. Вычислить . Шаг 4. Сравнить и : а) если , то положить и . Перейти к шагу 5. б) если , то положить и , . Перейти к шагу 5. Шаг 5. Вычислить и проверить условие окончания. Если , то процесс поиска завершается и . В качестве приближенного решения можно взять середину последнего промежутка . Если , положить и перейти к шагу 3. Замечание. Так как выражение является иррациональным числом, то для вычисления значения его необходимо округлять (). Изложенная схема метода неустойчива к погрешностям, возникающим в результате округления, поэтому спустя определенное число шагов (в зависимости от точности округления) нужно производить обновление алгоритма, заменяя на шаге 4 формулу для вычисления на следующую: . Признаком необходимости обновления метода является, например, тот факт, что на данном шаге нарушается условие . Для метода золотого сечения характеристика относительного уменьшения промежутка неопределенности равна , где - количество вычислений функции, -округленное значение числа . Пример 3. Найти минимум функции методом золотого сечения. Решение. В качестве начального промежутка неопределенности возьмем промежуток , положим . 1. Положим . 2. Вычислим ; . 3. Вычислим . 4. Так как , то ; . 5. Получим . Положим и перейдем к шагу 3. 6. Вычислим . 7. Так как , то . 8. Получим . Положим и перейдем к шагу 3. 9. Вычислим . 10. Так как , то . 11. Получим ; . В качестве решения можно взять . Для данного примера характеристика относительного уменьшения начального промежутка неопределенности равна .
Метод хорд (секущих) Метод хорд относится к последовательным методам первого порядка. В основе данного метода лежит следующее обоснование. Необходимым и достаточным условием глобального минимума выпуклой непрерывно дифференцируемой функции является равенство . Если на концах промежутка производная имеет разные знаки, т.е. , то на промежутке найдется точка, в которой обращается в нуль, и поиск точки минимума на промежутке эквивалентен решению уравнения
. Для приближенного решения данного уравнения можно использовать метод хорд. Этот метод основан на сокращении отрезков путем определения точки пересечения с осью хорды графика функции . Координата точки определяется по формуле .
Отрезок дальнейшего поиска или выбирается в зависимости от знака . Если , то выбирается , если - . Таким образом, метод используется при наличии информации об отрезке таком, что , а . Условие достижения требуемой точности в данном алгоритме накладывается не на длину промежутка неопределенности, а на величину .
Алгоритм Шаг 1. Задать начальный промежуток неопределенности и - требуемую точность. Положить . Шаг 2. Вычислить . Шаг 3. Вычислить . Шаг 4. Если , то положить и поиск завершить, иначе перейти к шагу 5. Шаг 5. Если , то положить , иначе положить . Положить и перейти к шагу 2. В данном методе мы предполагали, что . При нарушении этого условия точку можно указать сразу. Так, если и , то возрастает на , следовательно, , если и , то убывает на , следовательно, . В случае, если производная равна 0 на одном из концов отрезка , то этот конец и является решением задачи. Пример 4. Найти минимум функции методом хорд. Решение. В качестве начального промежутка неопределенности возьмем промежуток , положим . 1. Проверим условие . Условие выполнено. 2. Положим . 3. Вычислим точку . 4. Так как , то переходим к шагу 3. 5. Поскольку положим , . 6. Присваиваем и переходим к шагу 2. 7. Вычислим точку . 8. Так как , то переходим к шагу 3. 9. Поскольку положим , . 10. Присваиваем и переходим к шагу 2. На 6-й итерации получаем промежуток с концами . На данном промежутке метод генерирует точку , в которой . Алгоритм завершает работу, поскольку достигнута требуемая точность .
Метод Ньютона Метод Ньютона является последовательным методом второго порядка. Предполагается, что функция дважды дифференцируема, причем (это гарантирует выпуклость функции ). В этом случае корень уравнения можно приближенно искать методом касательных. В отличие от предыдущих методов, метод Ньютона не относится к методу сокращения промежутков. Для начала работы метода вместо задания начального промежутка неопределенности требуется задание начальной точки , в которой вычисляется и . В процессе работы метода генерируется последовательность , В очередной точке строится линейная аппроксимация функции (касательная к графику ). Точка, в которой линейная аппроксимирующая функция обращается в нуль, используется в качестве следующего приближения .
Уравнение касательной к графику в точке имеет вид , поэтому точка , найденная из условия , определяется формулой . Процедура нахождения точек продолжается до тех пор, пока не будет достигнута требуемая точность, т.е. . Алгоритм Шаг 1. Задать начальную точку , - требуемую точность. Положить . Шаг 2. Вычислить . Шаг 3. Если , то положить и поиск завершить, иначе перейти к шагу 4. Шаг 4. Вычислить . Шаг 5. Положить . Перейти к шагу 2. Исследования метода Ньютона показывают, что при достаточно близком к точке минимума выборе начального приближения , гарантируется скорость сходимости последовательности , к вида , и зависят от функции и выбора точки . Если начальное приближение выбрано не достаточно близко к точке , то последовательность , метода Ньютона может расходиться. В подобных случаях необходимо найти лучшее начальное приближение , например, с помощью нескольких итераций метода золотого сечения. Пример 5. Найти минимум функции методом Ньютона. Решение. Данная функция дважды дифференцируема и . В качестве начального приближения возьмем точку , положим . 1. Вычислим . 2. Поскольку , то перейдем к шагу 4. 3. Вычислим . 4. Положим . Перейти к шагу 2. 5. Вычислим . 6. Поскольку , то перейдем к шагу 4. 7. Вычислим . 8. Положим . Перейти к шагу 2. 9. Поскольку , то перейдем к шагу 4. 10. Вычислим . 11. Положим . Перейти к шагу 2. 12. Вычислим . 13. Поскольку , то перейдем к шагу 4. 14. Вычислим . 15. Положим . Перейти к шагу 2. 16. Вычислим . 17. Поскольку , процесс поиска заканчивается. В качестве решения задачи принимается точка . Быстрая сходимость метода Ньютона для рассмотренного примера объясняется хорошим выбором начального приближения . Если, например, для данной функции в качестве начального приближения выбрать , то методом будет генерироваться последовательность точек , которая расходится. Задачи для самостоятельного решения 1. Различными численными методами одномерной минимизации (метод перебора, метод деления отрезка пополам, метод золотого сечения, метод хорд, метод Ньютона) найти решение следующих задач. 1) ; 2) ; 3) ; 4) ; 5) ; 6) . 2. Может ли применение методов исключения отрезков привести к неверному определению , если функция не является унимодальной? Ответ пояснить рисунком. 3. Требуется найти точку минимума унимодальной функции на отрезке длины 1 с точностью . Имеется возможность измерить не более 10 значений функции . Какой из прямых методов минимизации можно использовать для этого?
4. Указать класс функций, для которых точное определение точки минимума гарантировано в результате всего одной итерации метода Ньютона?
Методы безусловной минимизации в Rn
Для численного решения задач безусловной минимизации вида разработано много алгоритмов, использующих итерационные процедуры , где направление поиска точки xk +1 из точки xk, а число - величина шага в выбранном направлении. Работа таких алгоритмов на каждой итерации происходит по следующей схеме:
Шаг 1. Проверить условия останова и, если они выполнены, вычисления прекратить и взять точку в качестве искомого решения. Шаг 2. Зафиксировать ненулевой вектор в качестве направления поиска. Шаг 3. Выбрать число величину шага. Шаг 4. Положить
Для проверки условий останова на шаге 1 на практике часто используются следующие критерии: || x k +1 - xk ||< , | f(x k +1) - f(xk) |< , || ||< , где - заданный параметр точности. Кроме того, при практической реализации эти алгоритмы полезно дополнять "дежурным" критерием останова ,
где задаваемое заранее максимальное число итераций. В качестве вектора на шаге 2 могут выбираться единичные орты (покоординатный спуск), антиградиент в точке xk (градиентные методы) и другие направления. Величина шага , как правило, выбирается так, чтобы выполнялось условие . В частности, чтобы гарантировать выполнение этого неравенства, можно выбирать = (будем в дальнейшем это называть правилом наискорейшего спуска). Для численного отыскания может быть использован один из методов, описанных в предыдущем параграфе. Рассмотрим примеры алгоритмов, построенных в соответствии с предложенной схемой. Метод покоординатного спуска Этот метод заключается в последовательной минимизации целевой функции f(x) сначала по направлению первого базисного вектора е1,затем второго е2 и т.д. Таким образом, здесь выбирается в соответствии с правилом наискорейшего спуска. После окончания минимизации по направлению последнего базисного вектора еn цикл может повторяться. Метод покоординатного спуска может быть методом нулевого порядка, т.к. он может не использовать в работе производных функции f(x). Таким образом, он может применяться для оптимизации недифференцируемых функций.
Алгоритм Шаг 0. Выбрать начальное приближение х0 в пространстве , задать параметр точности . Найти f(x0), положить j=1. Шаг 1. Pешить задачу одномерной минимизации
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2021-11-27; просмотров: 141; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.188.10.246 (0.18 с.) |