Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №9.doc
Скачиваний:
11
Добавлен:
01.05.2014
Размер:
138.75 Кб
Скачать

Спецификация функций.

Имя функции

Назначение

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

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

main

Главная функция в программе

f

Вычисляет значение функции в заданной точке одной из функций

vec x

double

diff

Нахождение производной по направлению

vecx, vec p

double

grad

Вычисление градиента в точке

vec x

vec

Gold Section1

Метод золотого сечения 1

vecx– начальная точка

vecp– направление поиска минимума

doubleebs– точность вычислений

double

Значение шага «а»:

Choise

Функция для ввода начальной точки и выбора функции

minim

Метод минимизации Зангвилла

vecx– начальная точка

doublee– точность вычислений

int iCount– количество итераций

vec

значение минимума

mod

Вычисление нормы вектора

vecp– вектор, норму которого необходимо вычислить

double

multipl

Произведение векторов

vec x1, vec x2

matrix – значение произведения

multiplvec

Поэлементное произведение векторов

vec x1, vec x2

vec

Zangvill

Построение системы сопряженных направлений

matrix P – матрица векторов, vec A-вектор оптимальных шагов

matrixP– матрица сопряженных направлений

Svenn4

Метод Свенна 4

vecx-начальная точкаvecp-направлениеdoublealpha- шаг

массив alfa, заполненный значениямиakиak-1

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

Функция: f1(x) = (x1-2)^4+(x1-2x2)^2

Точность: 0,001

Начальная точка: (0,3)

X1 X2

1,67487 0,0995933

1,2351 0,104276

1,41726 0,104683

1,7289 0,104684

1,96572 0,804209

1,99831 1,0032

Number of Iteration: 6

Функция: f2(x)= [1.5-x1*(1-x2)]^2+[2.25-x1*(1-x2^2)]^2+[2.625-x1*(1-x2)^3]^2

Точность: 0,01

Начальная точка: ( 0;0 )

X1 X2

2,12497 0,215023

2,43415 0,324819

2,87331 0,481209

2,87356 0,48227

2,87337 0,479764

2,86909 0,465295

2,86909 0,467492

2,99721 0,50003

Number of Iteration: 8

Ответы на контрольные вопросы.

1)Построить систему сопряженных направлений методом Пауэлла для функции трех переменных.

2)Как реализуется свойство параллельного подпространства в методах Пауэлла-1 и Пауэлла-2?

В методах Пауэлла 1 и пауэлла 2 свойство параллельного подпространства реализуется следующим способом: последнее направление dkна к-ом шаге и предыдущее совпадают и

(dk)Hdk-1

3)Какие модификации реализованы в методе Пауэлла для произвольных функций?

Модификации метода Пауэлла

1) Определение эффективности нового поискового направления из условия:

2) Нормировка всех векторов

4)Для функции y(x) = 3x12 + 5x22 привести 2 итерации поиска Хука–Дживса. Принять x1 = (2; 1)t, h = (0.5; 0.5)t.

y(x1)=17; x2=x1+h*e1=(2;1)t+(0.5;0)t=(2.5;1)t y(x2)=23.75>y(x1) => Неудача

x2=x1-h*e1=(1,5;1)ty(x2)=11.75<y(x1) => удача

x3=x2+h*e2=(1.5;1)t+(0;0.5)t=(1.5;1.5)t y(x3)=18>y(x2) => Неудача

x3=x2-h*e2=(1.5;0.5)t y(x3)=8<y(x2) => удача

x2=(1.5;0.5)

x3=2*x2-x1=(1;0); x1=x2; y(x1)=8

x4=x3+h*e1=(1.5;0)t y(x4)=6.75<y(x1) => удача

x5=x4+h*e2=(1.5;0.5)ty(x5)=8 => Неудача

x1=x3=(1;0)

x2=x1+h*e1=(1.5;0)t y(x2)=6.75>y(x1) => Неудача

x2=x1-h*e1=(0.5;0)t y(x2)=0.75<y(x1) => удача

x3=x2+h*e2=(0.5;0.5)t y(x3)>y(x2) => Неудача

x3=x2-h*e2=(0.5;-0.5)t y(x3)>y(x2) => Неудача

5)Дана функция y(x) = x12 + 2x22 + x1x2 + x1, начальная точка x1 = (0; 0)t. Построить систему взаимно-ортогональных направлений методом Розенброка.

p1=(1;0) p2=(0;1)

x2=x1+a*p=(a;0)

y(x2)=a^2+a; y’=2a+1; a =-0.5; x2=(-0.5;0)

x3=x2+a*p2=(-0.5;a)

y(x3)=2*a^2-0.5*a-0.25; y’=4*a-0.5; a=0.125; A=(-0.5; 0.125)

i=1

A1=a1*p1+a2*p2=(-0.5; 0.125)

B1=A1=(-0.5; 0.125) d1=B1/||B1||=(-1; 0.25)

i=2;

A2=a2*p2=(0; 0.125)

B2=A2-A1*d1*d1=(0.03; 0.12)

d2=(0.24;1)

Ответ: d1=(-1;0.125), d2=(0.24;1)