Автор: Пользователь скрыл имя, 25 Декабря 2012 в 11:52, лабораторная работа
В данной работе рассматриваются одномерные методы оптимизации, то есть целевая функция является функцией одной переменной. Формально задача ставится следующим образом:
Задана функция одной переменной f(x), где a<=x<=b. Требуется с заданной точностью ε найти значение x0, при котором f(x0) минимально.
Лабораторная работа по курсу «Методы Оптимизации»
К численным методам оптимизации нулевого порядка относятся вычислительные алгоритмы поиска экстремума, не использующие информации о производных целевой функции. По сравнению с методами более высоких порядков, они отличаются большей вычислительной устойчивостью, но, в большинстве случаев, более медленной сходимостью (сходимость типичных методов нулевого порядка линейная, то есть с каждым шагом точность вычислений возрастает примерно в k раз, где константа k зависит от метода и свойств целевой функции). Кроме того, методы нулевого порядка – единственные методы, которые применимы к функциям, производные которых не определены во всех или в некоторых точках.
В данной работе рассматриваются одномерные методы оптимизации, то есть целевая функция является функцией одной переменной. Формально задача ставится следующим образом:
Задана функция одной переменной f(x), где a<=x<=b. Требуется с заданной точностью ε найти значение x0, при котором f(x0) минимально.
Рис. 1. Унимодальные функции. На отрезке [a, b] функция f1(x) унимодальна, f2(x) – нет.
Метод дихотомии также называется методом деления пополам. Необходимым условием для его применения является требование унимодальности целевой функции f(x): на рассматриваемом промежутке [a,b] функция f(x) должна иметь не более одного экстремума (см. рис 1).
Алгоритм проиллюстрирован рис. 2.
Рис. 2. Метод дихотомии. Показан случай, когда f(x1)<f(c)
Для уменьшения количества вычислений можно воспользоваться тем, что на втором и последующих шагах значение функции в центре нового отрезка всегда будет вычислено на предыдущем шаге, поэтому на каждом новом шаге требуется вычислять целевую функцию только в центрах правого и левого полуотрезков.
Так как каждый последующий отрезок всегда ровно в 2 раза меньше предыдущего, метод дихотомии обеспечивает увеличение точности в 2 раза за каждые 2 вычисления целевой функции, или, в среднем, в 21/2 = 1,41... раза на 1 вычисление целевой функции.
Метод Фибоначчи аналогичен методу деления пополам, но вместо деления отрезка на равные части в нём используется деление в золотой пропорции: φ = (1 + 51/2) / 2 = 1,6817…. Так же , как и метод деления пополам, метод Фибоначчи требует того, чтобы функция была унимодальной.
с = a + (b-a)/ φ
x = a + b - c
Рис. 3. Метод Фибоначчи. Показан случай, когда f(x)<f(c).
Особенностью метода Фибоначчи, позволяющей 
экономить дорогостоящие 
Например, на рис.3 f(x)<f(c), поэтому новым интервалом поиска становится интервал [a,c]. Точка x в этом случае оказывается внутри нового интервала и делит его в золотом отношении, то есть она становится новой точкой c.
Длина интервала поиска на следующем шаге всегда в φ = 1,68… раз меньше длины на предыдущем шаге. Таким образом, за одно вычисление целевой функции метод Фибоначчи увеличивает точность в 1,68… раз, что больше чем соответствующий показатель метода дихотомии (1.41…).
В лабораторной работе требуется на любом реализовать один из методов поиска экстремума. Метод поиска минимума и целевая функция указаны в варианте задания. Целевая функция содержит два свободных параметра, базовые значения которых также указаны в варианте задания.
Представленная программа 
Отчет по лабораторной работе должен содержать следующие элементы:
 
№  | 
  Интервал поиска [a, b]  | 
  Метод оптимизации  | 
  Целевая функция f(x)  | 
  Значения свободных параметров A, B  | |
A  | 
  B  | ||||
1  | 
  [-2; 2]  | 
  Дихотомия  | 
  Ax2 + Bx  | 
  1  | 
  -1  | 
2  | 
  [0; π/2]  | 
  Фибоначчи  | 
  A sin(x) + Bx  | 
  1  | 
  0,5  | 
3  | 
  [-1; 3]  | 
  Дихотомия  | 
  Ax + Bx  | 
  2  | 
  -1  | 
4  | 
  [-2; 2]  | 
  Фибоначчи  | 
  1 / (x2 + Ax + B)  | 
  0  | 
  1  | 
5  | 
  [1; 5]  | 
  Дихотомия  | 
  A ln(x) + Bx  | 
  2  | 
  -1  | 
6  | 
  [-1; 5]  | 
  Фибоначчи  | 
  Ax2 + Bx  | 
  2  | 
  -4  | 
7  | 
  [1; 5]  | 
  Дихотомия  | 
  A ln(x) + Bx  | 
  3  | 
  -2  | 
8  | 
  [0; π/2]  | 
  Фибоначчи  | 
  A sin(x) + Bx  | 
  2  | 
  √2  | 
9  | 
  [0; 3]  | 
  Дихотомия  | 
  Ax + Bx  | 
  1,5  | 
  -2  | 
10  | 
  [-1; 3]  | 
  Фибоначчи  | 
  1 / (x2 + Ax + B)  | 
  1  | 
  1  | 
11  | 
  [-2; 3]  | 
  Дихотомия  | 
  Ax2 + Bx  | 
  0,5  | 
  2  | 
12  | 
  [0; 4]  | 
  Фибоначчи  | 
  1 / (x2 + Ax + B)  | 
  2  | 
  1  | 
13  | 
  [-2; 2]  | 
  Дихотомия  | 
  Ax + Bx  | 
  ½  | 
  3  | 
14  | 
  [0; π/2]  | 
  Фибоначчи  | 
  A sin(x) + Bx  | 
  1  | 
  √3 / 2  | 
15  | 
  [-1; 4]  | 
  Дихотомия  | 
  Ax2 + Bx  | 
  1  | 
  -2  | 
16  | 
  [1; 5]  | 
  Фибоначчи  | 
  A ln(x) + Bx  | 
  -7  | 
  3  | 
17  | 
  [-3; 3]  | 
  Дихотомия  | 
  Ax + Bx  | 
  e  | 
  -1  | 
18  | 
  [-5; 0]  | 
  Фибоначчи  | 
  1 / (x2 + Ax + B)  | 
  -2  | 
  5  | 
19  | 
  [1; 7]  | 
  Дихотомия  | 
  A ln(x) + Bx  | 
  6  | 
  -3  | 
20  | 
  [-1; 2]  | 
  Фибоначчи  | 
  Ax2 + Bx  | 
  2  | 
  2  | 
21  | 
  [0; π/2]  | 
  Дихотомия  | 
  A sin(x) + Bx  | 
  3  | 
  √3  | 
Точность, с которой необходимо искать минимум целевой функции, одинакова дял всех вариантов и равна 10-6.
Информация о работе Лабораторная работа по "Методам Оптимизации"