Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №1.docx
Скачиваний:
0
Добавлен:
17.05.2026
Размер:
578.34 Кб
Скачать

5. Определение начального отрезка унимодальности

Для определения отрезка унимодальности используем начальные вычисления метода обратного переменного шага для заданной начальной точки x0 = 14 и начальном шаге ∆ = -8. f(x0) = f(14) = 322; f(x0 + Δ0) = f(14 - 8) = 90 ; f(x0 + Δ0) < f(x0) ; f(x0 + 2 Δ0) = f(14 - 16) =-16 ; f(-2) < f(6) ; f(x0 + 3 Δ0) = f(14 - 24) = 10 ; f(-10) > f(-2) и т.о. точка минимума 6 > x* >-10 . Вывод: минимум функции находится на отрезке [-10, 6] , который можно принять в качестве начального отрезка унимодальности.

6. Расчёт минимума функции методом локализации оптимума

Делим исходный отрезок на четыре равные части и рассчитываем значения функции в полученных точках:

y1 =f(x1) =f(2) = 22

y2 =f(x2) =f(-2) = -16

y3 =f(x3) =f(-6) = -18

Учитывая, что значения функции на концах исходного отрезка известны и минимум достигается в точке x3= -18, получаем новый отрезок унимодальности [-10 ; -2]. Проверяем условие окончания поиска: Δ1 = b1-a1= -2+10 > ε = 0,5 и продолжаем решение.

Делим новый отрезок на четыре равные части и рассчитываем значения функции в полученных точках.

y1 =f(x1) =f(-4) = -20

y2 =f(x2) =f(-6) = -18

y3 =f(x3) =f(-8) = -8

Поскольку минимум достигается в точке x1 =-4, получаем новый отрезок унимодальности [-6 ; -2]. Проверяем условие окончания поиска: Δ2 = b2-a2= -2+6 > ε = 0,5 и продолжаем решение.

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

y1 =f(x1) =f(-3) = -18

y2 =f(x2) =f(-4) = -20

y3 =f(x3) =f(-5) = -20

Поскольку минимум достигается в точке x2 =-4, получаем новый отрезок унимодальности [-6 ; -4]. Проверяем условие окончания поиска: Δ3 = b3-a3= -4+6 > ε = 0,5 и продолжаем решение.

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

y1 =f(x1) =f(-4,5) = -20,25

y2 =f(x2) =f(-5) = -20

y3 =f(x3) =f(-5,5) = -19,25

Поскольку минимум достигается в точке x1 =-4,5, получаем новый отрезок унимодальности [-5 ; -4]. Проверяем условие окончания поиска: Δ4 = b4-a4= -4+5 > ε = 0,5 и продолжаем решение.

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

y1 =f(x1) =f(-4,25) = -20,19

y2 =f(x2) =f(-4,5) = -20,25

y3 =f(x3) =f(-4,75) = -20,19

Поскольку минимум достигается в точке x2 =-4,5, получаем новый отрезок унимодальности [-4,75 ; -4,25]. Проверяем условие окончания поиска: Δ5 = b5-a5= -4,25+4,75 = ε = 0,5 и продолжаем решение.

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

y1 =f(x1) =f(-4,375) = -20,23

y2 =f(x2) =f(-4,5) = -20,25

y3 =f(x3) =f(-4,625) = -20,23

Поскольку минимум достигается в точке x2 =-4,5, получаем новый отрезок унимодальности [-4,625 ; -4,375]. Проверяем условие окончания поиска: Δ6 = b6-a6= -4,375+4,625 < ε = 0,5 , условие окончания поиска выполняется.

Вывод:

Конечный отрезок унимодальности [-4,625 ; -4,375]. Принимаем за оптимальную точку его середину x* = -4,5. Значение функции в этой точке равно -20,25, количество итераций – 6 при 13 вычислениях функции.

7. Расчёт минимума функции методом половинного деления

Выбираем значение окрестности равной константе различимости δ= 0,03 < ε.

Выбираем две точки, симметрично расположенные относительно середины отрезка [a0, b0]:

x1(0) = (-10 + 6)/2 – 0,03 = -2,03

x2(0) = (-10 + 6)/2 + 0,03 = -1,97

и рассчитываем значение функции в этих точках:

y1(0) =f(x1(0)) = (-2,03)2 + 9 * (-2,03) = -14,15

y2(0) =f(x2(0)) = (-1,97)2 + 9 * (-1,97) = -13,85

Так как y1(0) < y2(0), определяем границы нового отрезка:

a1 = a0 = -10

b1 = x2(0) = -1,97

Вновь выбираем две точки на отрезке [a1, b1]:

x1(1) = (-10 - 1,97)/2 – 0,03 = -6,01

x2(1) = (-10 - 1,97)/2 + 0,03 = -5,95

и рассчитываем значение функции в этих точках:

y1(1) = (-6,01)2 + 9 * (-6,01) = -17,97

y2(1) = (-5,95)2 + 9 * (-5,95) = -18,15

Поскольку y1(1) > y2(1) , границы нового отрезка:

a2 = x1(1) = -6,01

b2 = b1 = -1,97

Проверяем условие окончания оптимизации и так как Δ2 = b2 - a2= -1,97+6,01= 4,04 >0,5 , продолжаем поиск.

Отрезок [a2, b2] = [x1(1), b1] = [-6,01, -1,97]

x1(2) = -4,02

x2(2) = -3,96

y1(2) = -20,02

y2(2) = -19,96

a3 = a2 = -6,01

b3 = x2(2) = -3,96

Проверяем условие окончания оптимизации и так как Δ3 = b3 – a3= -3,96+6,01= 2,05 >0,5 , продолжаем поиск.

Отрезок [a3, b3] = [a2, x2(2)] = [-6,01, -3,96]

x1(3) = -5,01

x2(3) = -4,95

y1(3) = -19,99

y2(3) = -20,05

Отрезок [a4, b4] = [x1(3), b3] = [-5,01, -3,96]

x1(4) = -4,51

x2(4) = -4,45

y1(4) = -20,2499

y2(4) = -20,2475

Отрезок [a5, b5] = [a4, x2(4)] = [-5,01, -4,45]

x1(5) = -4,76

x2(5) = -4,7

y1(5) = -20,19

y2(5) = -20,21

Отрезок [a6, b6] = [x1(5), b5] = [-4,76, -4,45]

Проверяем условие окончания оптимизации и так как Δ6 = b6 – a6= -4,45+4,76= 0,31 < ε = 0,5 условие окончания поиска выполняется.

За точку локального минимума, найденную с заданной точностью принимаем середину отрезка [a6, b6]:

x* ≈ (a6 + b6)/2 = (-4,76-4,45)/2 = -4,6

Значение функции в этой точке:

f(x*) = (-4,6)2 + 9 * (-4,6) = 20,24

Конечный отрезок унимодальности [-4,76 , -4,45]. Принимаем за оптимальную точку середину этого отрезка x* = -4,6. Значение функции в этой точке равно -20,24, количество итераций равно 6 при 12 вычислений функции.