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

3Л_Одномерная Оптимизация

.pdf
Скачиваний:
19
Добавлен:
01.06.2015
Размер:
806.46 Кб
Скачать

Пример решения задачи методом золотого сечения

Пример 3. Найти значение аргумента, при котором значение функции у=12х-2х2, заданной на интервале L0=10, будет у ≥17.6

Решение. Применяя метод "золотого сечения", получим точку первого измерения:

L

L0

 

 

10

,

тогда x = 6.2,

y =-5

 

 

1

 

 

 

 

 

 

C

 

1.62

 

1

1

 

 

 

 

 

Второе измерение выполняется симметрично первому, т.е. х2=10-x1=3.8, у2=17. Следовательно, интервал неопределенности L2= [0,6.2], что следует из унимодальности функции y = f(x)

Из условия Lj+1=Lj-1-Lj получим х31-x2=6.2-3.8=2.4, у3=28-12=16, интервал

неопределенности L3= [2.4,6.2]

Точку четвертого измерения х4 выполняем симметрично точке х2, т.е. x412+x3=6.2-3.8+2.4=4.8; у4=57.6-46=11.6. Из ситуации у24, в силу унимодальности функции, следует L4=[2.4,4.8]

Определяем положение пятого измерения: x5423=4.8-3.8-2.4=3.4,

у5=40.8-23=17.8.

Поскольку у5>17.6, то искомой точкой, т.е. решением задачи, является точка х5=3.4

Зависимость эффективности методов одномерного поиска от числа опытов

L0/Ln

Число

Метод

Золотое

Метод Фибоначчи

опытов

дихотомии

сечение

 

 

 

 

 

 

 

 

2k/2

Cn-1

Fn

по дискретным

 

 

 

 

точкам

1

1

1

1

1

 

 

 

 

 

2

2

1.62

2

2

 

 

 

 

 

3

2

2.62

3

4

 

 

 

 

 

4

4

4.24

5

7

 

 

 

 

 

5

4

6.85

8

12

 

 

 

 

 

6

8

11.09

13

20

 

 

 

 

 

7

8

17.94

21

33

 

 

 

 

 

8

16

29.0

34

54

 

 

 

 

 

9

16

47.0

55

88

 

 

 

 

 

10

32

76.0

89

143

 

 

 

 

 

Математик Люкас вывел уравнение, связывающее числа Фибоначчи Fn и величину .:

при больших n F n

 

N 1

n+1.

 

 

 

 

 

5

 

 

Тогда связь между интервалами неопределеннности метода Фибоначчи и метода

сечения золотого следующая:

Ф

 

 

 

 

 

 

 

 

 

 

Ln

 

Fn

 

 

 

n 1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.17.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

LЗсn

n 1

 

 

5

n 1

 

5

 

Метод касательных

Суть методов, основанных на аппроксимации целевой функции: по полученной в ходе вычислений информации строится аппроксимирующая функция и её минимум принимается за точку очередного вычисления. Такие методы дают хорошие результаты при минимизации достаточно гладких унимодальных функций.

Пусть функция f (x) выпукла и дифференцируема на отрезке [a,b] . Пусть известны результаты вычислений в точках а и в: f (a), f (a), f (b), f (b)

По этой информации строится f (

кусочно-линейную функцию, к f (x) в точке а

аппроксимирующая функция, представляющая из себя x)

состоящую из касательной La (x) f (a) f (a)(x a)

и касательной Lb (x) f (b) f (b)(x b) к f (a) 0 в точке в.

Полученная аппроксимирующая функция есть ломанная, состоящая из прямой La (x) и Lb (x) на [a,c] , где с – точка пересечения касательных. При f (a) 0 и f (b) 0 минимум аппроксимирующей функции достигается в точке с.

Положение точки пересечения с можно определить по формуле:

c

(b f (b) a f (a)) ( f (b) f (a))

 

 

f (b) f (a)

 

 

Если f (c) 0, то решением задачи будет x* c

. Если же f (c) 0 , то в качестве

следующего отрезка неопределённости берется [a,c] .

 

 

 

Если же f (c) 0 , то – отрезок [c,b]

 

 

Процесс повторяется до тех пор, пока f (c) 0

или отрезок неопределённости не

достигнет заданной точности.

 

 

Метод парабол (квадратичная интерполяция )

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

Пусть имеются три точки, для которых выполняется условие a<c<b, f(c) f(a), f(c) f(b).

Так как [a,b] – отрезок неопределенности и f(x) – унимодальная функция, то найти

точку c нетрудно.

Парабола, проходящая через три точки (a,f(a)), (c,f(c)), (b,f(b)), имеет вид

 

f (b) f (c)

 

f (a) f (c)

(x c)(x b)

 

f (b) f (c)

 

P(x)

 

 

 

 

 

 

 

(x c) f (c).

 

 

 

 

 

(b c)

 

(a c)

 

b a

 

b c

 

 

 

 

 

 

Поскольку f – унимодальная функция, то хотя бы одно из неравенств f(c) f(a), f(c) f(b) строгое и, следовательно, коэффициент при старшем члене P(x) положителен. Тогда P(x) достигает минимума в точке

t c

1 (b c)2

( f (a) f (c)) (c a)2

( f (b) f (c))

 

 

 

 

 

2 (b c)( f (a) f (c)) (c a)( f (b) f (c))

 

причем (a+c)/2 t (c+b)/2.

Эта точка и выбирается в качестве точки очередного вычисления значения функции.

Схема алгоритма метода парабол

Схема алгоритма

Шаг 1. Задаются a,c,b и . Вычислить ya=f(a),

Шаг 2. Вычислить t, если t x

(a c) 2

yc=f(c),c yb=f(b).

, если t c

 

t c

1

 

(b c)2 ( y

a

y

) (c a)2

( y

b

y

)

 

 

 

где

 

 

c

 

 

c

 

.

 

 

2

(b c)( ya yc ) (c a)( yb yc )

 

 

 

и y=f(x).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Шаг 3. а) При x<c.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если y<yc, то b=c, c=x, yb=yc, yc=y.

 

 

 

 

 

 

 

 

Если y>yc, то a=x, ya=y.

 

 

 

 

 

 

 

 

 

 

Если y=yc, то a=x, b=c, c=(x+c)/2, ya=y, yb=yc, yc=f(c).

 

б) При x>c.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если y<yc, то a=c, c=x, ya=yc, yc=y.

 

 

 

 

 

 

 

 

Если y>yc, то b=x, yb=y.

 

 

 

 

 

 

 

 

 

 

Если y=yc, то a=c, b=x, c=(x+c)/2, ya=yc, yb=y, yc=f(c).

~

Шаг 4. Если b-a , то закончить поиск, положив

 

 

 

 

~

 

 

 

 

 

x

,xиначе, y yперейти к шагу 2.

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