
Все лабораторные работы / Всё стасовское новое / 1_our_
.docМинистерство образования РФ
Санкт-Петербургский государственный электротехнический
университет «ЛЭТИ»
Кафедра САПР
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ № 1
по учебной дисциплине «методы оптимизации»
на тему «ИССЛЕДОВАНИЕ МЕТОДОВ ОДНОМЕРНОГО ПОИСКА МИНИМУМА УНИМОДАЛЬНЫХ ФУНКЦИЙ»
Вариант 1
Выполнили:
Смирнов С.А.
Маркосов А.С.
Баранов А.А.
Группа: 5372
Факультет: КТИ
Проверил:
(должность, Ф.И.О.)
Санкт-Петербург
2007
Оглавление:
Задание…………………………………………………………………………….3
Описание методов оптимизации…………………………………………………3
Спецификация программы……………………………………………………….4
Листинг программы ……………………………………………………………...5
Результаты тестирования и Выводы…………………….……………………….7
Ответы на контрольные вопросы………………………………………………...8
Задание:
Цель работы – изучение методов одномерной минимизации функций одной переменной:
М1 – метода Свенна – золотого сечения-1;
Описание методов оптимизации:
Метод Свенна:
С помощью этого метода получаем начальный интервал локализации минимума.
Начальный этап:
1) задать x0 – произвольная начальная точка.
2) выбрать шаг h равным 0.001 или 0.01*|x0|.
Основной этап:
Шаг 1:
Установить направление убывания целевой функции. Для этого надо взять x2=x1+h. Если f1<f2, то надо поменять направление движения(h=-h и взять x2=x1+h).
Шаг 2:
Вычислять fk в точках xk+1=xk+hk, где hk=2hk-1, k=2,3,…,n-1 до тех пор пока не придём в точку xn такую что fn>fn-1.
Шаг 3:
Установить начальный интервал локализации минимума a1=xn-2 и b1=xn.
Метод Золотого Сечения 1:
Начальный этап:
1) Выбрать погрешность , начальный интервал [a1, b1].
2) Вычислить стартовые точки по формулам: 1 = a1 + 0.618L1, 1 = a1 + 0.382L1.
3) Принять k = 1.
Основной этап:
Шаг 1:
1)Сократит текущий интервал локализации рассмотрением двух ситуаций:
если f1<f2, то ak+1=ak,
bk+1=k,
k+1=k,
и найти k+1=ak+1+0.382Lk+1,
иначе f1>f2, то ak+1=k,
bk+1=bk,
k+1=k,
и найти k+1=ak+1+0.618Lk+1, где Lk+1=| bk+1- ak+1|
2) Положить k=k+1.
Шаг 2:
Проверить критерий окончания поиска:
если L=|a-b| < -остановиться, точнее фиксируем аппроксимирующий минимум x*=(a+b)/2.
Блок-схемы использованных методов.
Метод Свенна
h1=0.1*|x1|
x2=x1+h1
x1=x2;
x2=x1+h;
h=2*h;
Меняем местами а
и b
h=-h;
x2=x1+h;
Да
Нет
Нет
Да
Нет
Да
Метод Золотого сечения 1:
x=(a+b)/2;
Спецификация программы:
Текст программы:
Результаты работы программы
минимум функций по Свенну X(min) = 0.469043
интервал по Свенну: 0.46875 … 0.469336
число повторений цикла после установления интервала k=14
минимум функций по золотому сечению: 0.469141
число повторений цикла после установления интервала k1=2
Выводы:
В результате лабораторной работы были изучены методы одномерной минимизации функций одной переменной. Минимум функции был найден посредством метода Свенна и последующего применения метода золотого сечения-1 (результат совпал с ожидаемым).
Ответы на контрольные вопросы:
1. Сравните метод золотого сечения, Фибоначчи и дихотомического поиска по числу вычислений значений функций для достижения заданной точности при локализации минимума.
Метод дихотомии наиболее прост в реализации, но по сравнению с методом золотого сечения он менее эффективен. Метод Фибоначчи использует числа Фибоначчи и поэтому он быстрее сходится к искомому минимуму, чем метод золотого сечения. 2.Указать отличие метода золотого сечения 1 от метода золотого сечения 2?
ЗС-1 опирается на точное вычисление точек на каждой итерации, а ЗС-2 использует соблюдения правила симметрии и для старта требуется указать одну и только одну точку.
3. Как сокращается текущий интервал локализации минимума в методах Фибоначчи-1 и Фибоначчи-2? Фиб1: Начальный этап
(1) Задать константу , начальный интервал [a1, b1], длину конечного интервала Ln и определить число n так, чтобы выполнялось условие Fn > (b1 - a1)/Ln.
(2) Взять две пробные точки 1 = a1 + (Fn-2/Fn)(b1 - a1) и 1 = a1 + (Fn-1/Fn)(b1-a1). Положить k = 1.
Основной этап
Шаг 1. Сократить текущий интервал локализации:
(1) Если f(k) < f(k), то положить ak+1 = ak, bk+1 = k,k+1 =k и вычислить новую точку k+1 = ak+1 + (Fn-k-2/Fn-k)Lk+1, где Lk+1 = bk+1 - ak+1; перейти на шаг 2.
(2) Если f(k)>> f(k),то положить ak+1 =k, bk+1 = bk, k+1 = k и вычислить k+1 = ak+1 + (Fn-k-1/Fn-k) Lk+1.
Шаг 2. Проверить критерий окончания поиска:
(1) Заменить k на k+1. (2) Если k = n - 1, перейти на шаг 3, иначе - на шаг 1.
Шаг 3. Найти аппроксимирующий минимум х(*):
(1) Положить k = k + .
(2) Если f(k) > f(k), то x(*) = (k + bk)/2. В противном случае - x(*) = (ak + k)/2.
Фиб2 : сокращение происходит аналогично, только вначале берется не 2 точки а одна, которая откладывается от любого из концов интервала, и все последующие точки берутся по правилу симметрии Х2 = Ак+Вк–Х1 и сравнением 4ех ситуаций (как в методе ЗС-2) происходит сокращение интервала.
4. Определите достоинства и недостатки методов Ньютона и трехточечного поиска.
Метод трехточечного поиска позволяет сократить интервал локализации минимума на основе сравнения значений функции в пробных точках без вычисления производных. А в методе Ньютона минимизация f(x) основывается на использовании квадратичной аппроксимации функции f(x) в точке xk:
F(x) = f(xk) + f '(xk)(x - xk) + f ''(xk)(x - xk)2 * 1/2
В качестве приближения хk+1 к минимуму х* берется точка, в которой производная F'(x) равна нулю, т.е. f '(xk) + f ''(xk)(xk+1 -xk) = 0.
Таким образом, xk+1 = xk - f '(xk)/f ''(xk).
Итерационный процесс строит последовательность точек {xk}, которая при определенных условиях квадратично сходится к некоторой стационарной точке х* функции f(x), т.е. к точке, в которой f ' (x*) = 0. Процесс останавливается, когдаxk+1 - xk ≤ и f '(xk) ≤ , где > 0 - заранее заданное малое число.
Существенными недостатками метода Ньютона являются: 1) сложность задания начального приближения х1 в малой окрестности искомого минимума х*; 2) необходимость вычисления вторых производных минимизируемой функции.
5.Что такое унимодальная функция и каково её значение в теории оптимизации?
Унимодальная функция – это функция которая имеет единственный минимум и монотонна по обе стороны от него. При этом у неё не должно быть горизонтальных участков. Унимодальная функция является основой в теории поиска, так как она разработана для большинства методов поиска.
6.Сформулировать необходимые и достаточные условия минимума функции одной переменной? Как преобразовать задачу на поиск максимума в задачу на минимум?
Аналитическое условие экстремума, т.е. равенство производной функции в данной точке, является необходимым и достаточным условием минимума. Задача на поиск максимума преобразуется в задачу на поиск минимума противоположной функции, т.е. задача на поиск максимум функции F(x), а на поиск минимума (-F(x))
7.Характерные особенности организации одномерного поиска?
Линейный поиск, рассматриваются только унимодальные функции.
Начальный интервал локализации минимума находится методом Свенна
Меньший интервал локализации получается путём рассмотрения значений функции в двух точках на ТИЛ, или в производной в одной точке, и выборе новых границ интервала.
8. Дайте геометрическую интерпретацию 2-х способов выбора последних точек в методе Фибоначчи.
Точки в методе Фибоначчи 1 находятся по формулам:
k+1 = ak+1 + (Fn-k-2/Fn-k)Lk+1 и k+1 = ak+1 + (Fn-k-1/Fn-k) Lk+1.
А очередная точка в методе Фибоначчи 2 находится по правилу симметрии Х2 = Ак+Вк–Х1