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

Северин В.П. Методы ОП

.pdf
Скачиваний:
101
Добавлен:
02.02.2015
Размер:
2 Мб
Скачать
☆

неопределенности не станет меньше заданного значения. Погрешность вычисления точки минимума x не превысит половины длины конечного интервала неопределенности.

Если на каждой итерации интервалом неопределенности становится левая половина предыдущего интервала неопределенности, то результате n вычислений функции получим конечный интервал не-

определенности длины

 

 

Ln

L

.

 

2n 1

 

 

Если же на каждой итерации интервалом неопределенности становится не левая половина предыдущего интервала неопределенности, то результате n вычислений функции получим конечный интервал неопределенности длины

Ln

L

.

 

2(n 1) 2

 

 

В общем случае

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

Ln

 

 

 

L

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2n 1

2(n 1) 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Эффективность метода деления интервала пополам определяется

аналогично эффективности метода дихотомии:

 

 

 

 

 

 

 

r

 

Ln

,

 

1

 

r

 

1

.

(3.3)

 

 

 

 

 

 

n

 

 

 

L

 

 

2n 1

 

 

n

 

 

2(n 1) 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пусть, например, интервал неопределенности необходимо

уменьшить не менее чем в сто раз и rn 0,01 :

 

 

 

1

 

 

1

 

,

 

 

2n 1

100 ,

 

n 1 7 ,

 

n 8 ;

 

 

2n 1

 

 

 

 

 

 

 

 

 

100

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

1

 

,

 

2n 2

100 ,

 

 

n 1

7

,

n 15 .

 

2(n 1) 2

 

 

 

 

 

 

 

100

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

51

Здесь использовано неравенство 27 128 100 . Таким образом,

8 n 15 .

Если же интервал неопределенности необходимо уменьшить не менее чем в 1000 раз, то, используя неравенство 210 1024 1000 , по-

лучим 11 n 21 .

Итак, метод деления интервала пополам в наихудшем случае может потратить только на одно вычисление функции больше, чем метод дихотомии, а в наилучшем случае он использует почти вдвое меньшее количество вычислений. К тому же метод деления интервала пополам не использует малого параметра, а в нем применяются только простые арифметические операции сложения чисел и деления на два. Поэтому данный метод надежнее и во многих случаях эффективнее метода дихотомии.

А л г о р и т м м е т о д а д е л е н и я и н т е р в а л а п о п о л а м .

Входные параметры: a , b

– концы интервала неопределенности,

e – допустимая погрешность.

 

 

 

 

Выходные параметры: c и

fc – лучшая точка и значение функ-

ции в ней.

 

 

 

 

1.

Вычислить c (a b) 2 ,

fc f (c) .

 

 

 

2.

Вычислить u (a c) 2 ,

fu f (u) .

 

 

 

3.

Если fu fc , то положить b c ,

c u ,

fc fu

и перейти к

шагу 7.

 

 

 

 

4.

Вычислить v (c b) 2 ,

fv f (v) .

 

 

 

5.

Если fv fc , то положить a u ,

c v ,

fc fv

и перейти к

шагу 7.

6.Положить a u , b v .

7.Если c a e , то перейти к шагу 2.

8.Остановиться.

В этом алгоритме на первых двух шагах вычисляются средние точки интервала и левой половины интервала, а на шаге 4 – средняя точка правой половины интервала. Точки сравниваются на шагах 3 и 5.

52

3.4. Числа Фибоначчи и их свойства

Леонардо Пизано Фибоначчи – известный математик эпохи Средневековья, который в 1202 году написал книгу «Liber abacci», содержащую почти все арифметические и алгебраические сведения того времени. В частности, по этой книге европейцы познакомились с индусскими или «арабскими» цифрами. Там же содержалась знаменитая «задача о размножении кроликов».

«Пусть в огороженном месте имеется пара кроликов (самка и самец) в первый день января. Эта пара кроликов производит новую пару кроликов в первый день февраля и затем в первый день каждого следующего месяца. Каждая новорожденная пара кроликов становится зрелой уже через месяц и затем через месяц дает жизнь новой паре кроликов. Сколько пар кроликов будет в огороженном месте через год, то есть через 12 месяцев с начала размножения?»

Решение этой задачи приводит к числам Фибоначчи:

F0 1, F1 1 , F2 2 , F3 3 , F4 5 , F5 8 , F6 13 , F7 21 , … ,

где индекс числа Фибоначчи соответствует номеру месяца, а значение числа – количеству пар кроликов в этом месяце. Такой последовательности чисел, начиная с F2 , отвечает закономерность: каждый член последовательности равен сумме двух предыдущих. Это правило мо-

жет быть записано в виде первой в истории математики рекуррентной формулы

Fn Fn 1 Fn 2 .

(3.4)

Числа Фибоначчи Fn для номера n от 0 до 51 представлены в табл. 3.1.

Таким образом, по этой таблице получим решение приведенной «задачи о размножении кроликов»: через год в огороженном месте окажется F13 377 пар кроликов.

Числа Фибоначчи кроме описания количественных характеристик

53

процесса размножения кроликов представляют собой удобный математический инструмент для описания различных явлений природы: процессов развития растений и животных, форм живых организмов и неживой материи.

Таблица 3.1 – Числа Фибоначчи

n

Fn

n

Fn

n

Fn

n

Fn

 

 

 

 

 

 

 

 

0

1

13

377

26

196418

39

102334155

 

 

 

 

 

 

 

 

1

1

14

610

27

317811

40

165580141

 

 

 

 

 

 

 

 

2

2

15

987

28

514229

41

267914296

 

 

 

 

 

 

 

 

3

3

16

1597

29

832040

42

433494437

 

 

 

 

 

 

 

 

4

5

17

2584

30

1346269

43

701408733

 

 

 

 

 

 

 

 

5

8

18

4181

31

2178309

44

1134903170

 

 

 

 

 

 

 

 

6

13

19

6765

32

3524578

45

1836311903

 

 

 

 

 

 

 

 

7

21

20

10946

33

5702887

46

2971215073

 

 

 

 

 

 

 

 

8

34

21

17711

34

9227465

47

4807526976

 

 

 

 

 

 

 

 

9

55

22

28657

35

14930352

48

7778742049

 

 

 

 

 

 

 

 

10

89

23

46368

36

24157817

49

12586269025

 

 

 

 

 

 

 

 

11

144

24

75025

37

39088169

50

20365011074

 

 

 

 

 

 

 

 

12

233

25

121393

38

63245986

51

32951280099

 

 

 

 

 

 

 

 

Числа Фибоначчи обладают многими интересными математическими свойствами. В частности,

 

F 2

F F 12 1 2 1 ,

 

F 2

F F 22 1 3 1 ,

 

1

 

0

2

 

 

2

 

1

3

 

F 2

F F 32

2 5 1,

F 2

F F 52

3 8 1, … .

3

 

2

4

 

 

4

 

3

5

 

 

Методом математической индукции докажем справедливость общей математической формулы

F 2

F

F

( 1)n .

(3.5)

n

n 1

n 1

 

 

Пусть эта формула верна при некотором n k , то есть

54

F 2

F

F

( 1)k .

(3.6)

k

k 1

k 1

 

 

Докажем справедливость формулы (3.5) и при n k 1 , то есть, что

F 2

F F

( 1)k 1 .

(3.7)

k 1

k k 2

 

 

На основании равенства (3.4) имеем

Fk2 1 Fk Fk 2 Fk 1(Fk Fk 1) Fk (Fk 1 Fk ) .

Раскрывая скобки в правой части, получим

Fk2 1 Fk Fk 2 Fk 1Fk Fk 1Fk 1 Fk Fk 1 Fk2 ,

и с учетом равенства (3.6)

Fk2 1 Fk Fk 2 (Fk2 Fk 1Fk 1) ( 1)k

приходим к равенству (3.7).

Докажем теперь справедливость формулы

F

F

F F

( 1)n .

(3.8)

n 1

n 2

n n 3

 

 

На основании равенства (3.4) имеем

Fn 1Fn 2 Fn Fn 3 Fn 1(Fn Fn 1) Fn (Fn 1 Fn 2 ) .

Раскрывая скобки, получим

Fn 1Fn 2 Fn Fn 3 Fn 1Fn Fn2 1 Fn Fn 1 Fn Fn 2 .

С учетом равенства (3.5)

Fn 1Fn 2 Fn Fn 3 (Fn2 1 Fn Fn 2 ) ( 1)n 1 ,

откуда и следует формула (3.8).

Получим выражения для чисел Фибоначчи в явном виде. Для этого будем искать решение рекуррентного уравнения (3.4) среди геомет-

рических прогрессий с n -м членом xn

55

xn xn 1 xn 2 .

Сокращая на xn 2 , получим уравнение

 

 

 

 

 

 

 

x2 x 1 0 ,

(3.9)

корни которого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

1 5

,

x

 

 

1 5

.

(3.10)

 

 

 

2

 

1

2

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Итак, последовательности {xn }

и {xn } удовлетворяют

рекур-

 

 

 

 

 

1

 

2

 

 

 

 

рентному уравнению (3.4). Ему же удовлетворяет и любая линейная

комбинация этих последовательностей {c xn c

2

xn} . Выберем коэф-

 

 

 

 

 

 

 

 

1

1

2

фициенты c1 и c2 так, чтобы

 

 

 

 

 

 

 

 

 

 

 

F

c xn

c xn .

 

 

(3.11)

n

 

1 1

 

 

 

 

2 2

 

 

 

Для этого достаточно потребовать выполнения двух условий: F0 1,

F1 1. Имеем:

 

 

 

 

 

 

 

 

 

 

 

c

c

2

1,

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.

 

 

 

c x c

2

x

2

 

 

 

 

1

1

 

 

 

 

 

 

 

Решим эту систему уравнений по правилу Крамера:

 

 

1

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

x

1 5

 

1 5

 

2 5

 

,

 

 

 

 

2

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

 

x2

 

 

 

 

1

2

 

2

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

x

 

1

1 5

1

1 5

 

1 5

x

,

 

 

 

 

 

2

 

 

 

 

 

 

 

 

1

1

x2

 

 

 

 

 

 

 

 

2

 

 

 

2

 

2

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

1 x 1

1 5

 

1 5

x

 

 

,

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

x1

 

 

1

 

 

1

 

 

 

2

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

56

c 1

 

x

1

 

 

 

x

1

 

 

 

,

 

 

c

 

 

 

2

 

 

x2

 

x

2

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

1

 

 

 

5

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

5

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Подставляя найденные значения c1 и c2

 

 

в формулу (3.11), полу-

чим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

xn

 

 

x

2

 

xn

 

 

 

xn 1 xn 1

 

 

 

 

 

 

 

F

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

2

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

5

1

 

 

 

 

 

 

 

5

2

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С учетом значений корней (3.10) окончательно имеем

 

 

 

 

 

 

1

 

 

n 1

 

 

 

 

 

 

 

n 1

 

 

 

 

 

 

 

 

 

 

5

 

 

1 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Fn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

(3.12)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Это равенство называется формулой Бине. Таким образом, все числа Фибоначчи, по определению входящие в множество целых чисел, могут быть выражены в явном виде через разность степеней дро-

бей, включающих иррациональное число 5 .

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

Метод Фибоначчи основан на числах Фибоначчи и применяется для уменьшения интервала неопределенности точки минимума x целевой функции f (x) .

При рассмотрении метода дихотомии для интервала неопределенности [a, b] длины L b a двумя внутренними точками, показано, что точки деления целесообразно располагать симметрично относительно центра интервала на малом расстоянии между ними. Но в методе дихотомии на каждой итерации значения целевой функции необходимо вычислять в двух точках.

В методе Фибоначчи также две первые точки деления x1 и x2 расположим симметрично относительно центра интервала, вычислим в

57

них значения функции и применим правило исключения интервалов. На следующей итерации в оставшемся интервале неопределенности с одной известной внутренней точкой найдем вторую внутреннюю точку x3 , симметричную оставшейся внутренней точке, вычислим в точке

x3 значение функции и опять применим правило исключения интервалов. Таким образом, сохраняя принцип симметрии внутренних точек, на каждой последующей итерации будем вычислять только одно значение функции.

Пусть на уменьшение интервала неопределенности отводится n вычислений целевой функции. Чтобы обеспечить наибольшее уменьшение интервала, последнюю точку поиска xn , как и в методе дихотомии, расположим симметрично относительно оставшейся внутренней точки xn 1 на малом расстоянии от нее. Обозначим конечную длину интервала неопределенности, полученную при n вычислениях

целевой функции,

через

Ln . Окончание процесса деления интервала

неопределенности показано на рис. 3.6.

 

 

 

Ln 3

 

Ln 2

Ln 1

 

 

xn 2

xn 3

Ln 1

 

Ln

 

xn 1

xn 2

 

Ln

Ln

 

xn xn 1

Рис. 3.6. Окончание деления интервала методом Фибоначчи

58

Найдем длины интервалов неопределенности:

Ln 1 Ln (Ln ) 2Ln ,

Ln 2 Ln 1 Ln 3Ln ,

Ln 3 Ln 2 Ln 1 5Ln 2 ,

Ln 4 Ln 3 Ln 2 8Ln 3 , … .

Перепишем эти равенства с использованием чисел Фибоначчи:

Ln 1 F2 Ln F0 ,

Ln 2 F3Ln F1 ,

 

Ln 3 F4 Ln F2 ,

Ln 4 F5Ln F3 , … .

Отсюда выведем общую формулу для длин интервалов:

Ln j Fj 1Ln Fj 1 ,

 

 

 

 

j 1, n 1 .

(3.13)

Полагая j n 1, найдем исходную длину интервала L1

L b a

L Fn Ln Fn 2 .

 

Отсюда получим, что при n вычислениях функции в методе Фибоначчи конечная длина интервала неопределенности станет равной

L

n

 

L

 

Fn 2

.

(3.14)

 

 

 

 

Fn

 

Fn

 

 

 

 

 

 

Для начала поиска необходимо найти положение первой точки деления исходного интервала, которая должна лежать на расстоянии

L2 от конца интервала. Полагая в формуле (3.13)

j n 2 , получим

 

 

 

 

 

 

L2 Fn 1Ln Fn 3 .

 

 

 

 

Подставим в эту формулу выражение для Ln из формулы (3.14):

 

 

 

L

 

F

 

 

 

F

F

F

F F

L F

 

 

 

n 2

 

F

 

n 1

L

n 1 n 2

n n 3

.

 

 

 

 

 

2

n 1

 

Fn

 

Fn

 

n 3

 

Fn

 

Fn

 

 

 

 

 

 

 

 

С учетом равенства (3.8) окончательно получим

59

L

1

[(b a)F

( 1)n ] .

(3.15)

 

2

Fn

n 1

 

 

 

 

 

 

По свойству симметрии для двух первых точек деления исходного

интервала неопределенности [a, b]

можно положить:

 

x1 b L2 ,

x2 a L2 .

 

Отсюда следует, что

 

 

 

 

 

L2 b x1 ,

x2 a b x1 .

 

Если на некоторой итерации известна внутренняя точка xk

интервала

[ak , bk ] , то симметричная ей точка находится по формуле

 

 

xk 1 a b xk .

 

(3.16)

Путем сравнения xk и xk 1 , fk

f (xk ) и fk 1 f (xk 1)

по правилу

исключения интервалов уменьшается интервал неопределенности.

При пренебрежимо малом значении в результате

n

вычисле-

ний функции по формуле (3.14) получим интервал длины

 

 

L

 

L

.

 

 

 

 

 

n

 

Fn

 

 

 

 

 

 

Эффективность метода Фибоначчи определим отношением длин конечного и начального интервалов неопределенности:

r

Ln

,

r

1

.

(3.17)

n

L

n

Fn

 

 

 

 

Если интервал неопределенности необходимо уменьшить не менее чем в сто раз, то по числам Фибоначчи из табл. 3.1 получим:

r

1

,

1

 

 

1

, F 100 ,

F 144 100 ,

n 11.

n

100

 

Fn

100

n

11

 

 

 

 

 

 

Если же интервал неопределенности необходимо уменьшить не менее

60