Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
16
Добавлен:
01.05.2014
Размер:
183.81 Кб
Скачать
  1. Цель работы.

Исследовать методы безусловной оптимизации:

  1. градиентный с постоянным шагом

  2. градиентный с дроблением шага

  3. градиентный с убыванием шага как 1/k

  4. наискорейшего спуска

  5. метод Ньютона-Рафсона

  6. алгоритм Полака-Ривьера

  7. алгоритм Давидона-Флетчера-Пауэлла

  8. алгоритм Бройдена-Флетчера-Шанно

Основная итерационная формула методов:

,

где – вектор, определяющий направление изменения;

–длина шага (скаляр)

Исследование проводится на примере целевой функции

– для следующих значений параметра а:

а=0.1; а=1; а=10

– при разных начальных точках x0:

(3 , 8) (2 , 5) (4 , 23)

Минимум этой функции находится в точке x* = (1,1), причем f(x*) = 0

Для каждого метода и каждого набора исходных данных (a, x0) производится 20 шагов поиска минимума. При этом в таблице фиксируются данные последнего шага:

значения xk, f(xk).

Если на двадцатом шаге минимум функции не достигнут (т.е. ||xk - x*|| >  = 10-3), то фиксируется также и номер шага k*, на котором минимум будет найден.

В каждом методе фиксируется ход итерационного процесса для одного набора исходных данных.

  1. Испытания методов.

2.1. Градиентный метод с постоянным шагом

Описание метода

В качестве взят вектор, определяющий направление наибольшего убывания функцииf в точке, т.е. антиградиент: ,

а шаг не зависит отk (т.е постоянный)

Результаты проведения метода

x0

(3 , 8)

(2 , 5)

(4 , 23)

a

0.1

1

10

0.1

1

10

0.1

1

10

f(x0)

1.4

5

41

1.1

2

11

49.9

58

139

t

0.02

0.02

0.02

0.02

0.02

0.05

0.01

0.01

0.01

x20

(2.8233, 8.00235)

(2.735,7.7873)

(1.9363, 6.0530)

(2.2135, 4.9258)

(2.1226, 4.7566)

(1.4650, 3.6349)

(4.7637, 22.8641)

(4.7198, 22.7320)

(4.2045, 21.4373)

f(x20)

0.33342

3.1045

14.0741

0.14795

1.3233

4.37866

1.4457

14.0443

116.8221

k*

≈15000

≈1600

≈350

≈12500

≈1300

≈200

>30000

≈5500

≈800

Итерационный процесс для x0 = (3,8), a = 0,1:

№ x1 x2 f(x1,x2)

1 2.752000 8.040000 0.5245689180

3 2.820250 8.024861 0.3363792370

5 2.825934 8.021268 0.3346541910

7 2.826112 8.018652 0.3344761127

9 2.825733 8.016134 0.3343140123

11 2.825296 8.013627 0.3341521075

13 2.824854 8.011121 0.3339902338

15 2.824411 8.008616 0.3338283895

17 2.823968 8.006111 0.3336665745

19 2.823525 8.003605 0.3335047889

20 2.823304 8.002353 0.3334239072

№ x1 x2 f(x1,x2)

1 2.752000 8.040000 0.5245689180

1001 2.602827 6.804404 0.2577872652

2001 2.372235 5.655193 0.1890698706

3001 2.137669 4.594860 0.1300657002

4001 1.903116 3.644053 0.0820548037

5001 1.675942 2.827306 0.0460329091

6001 1.468024 2.169391 0.0221090342

7001 1.294526 1.685710 0.0087728135

8001 1.167412 1.368923 0.0028395549

9001 1.087097 1.185096 0.0007695840

10001 1.042588 1.088656 0.0001841507

11001 1.020082 1.041365 0.0000409646

12001 1.009293 1.019043 0.0000087737

13001 1.004261 1.008711 0.0000018449

14001 1.001946 1.003973 0.0000003846

15000 1.000887 1.001811 0.0000000800