Метод оценивания точки минимума внутри найденного отрезка локализации минимума

Способ установления границ исходного отрезка локализации минимума.

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

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

Шаг 1. Избрать произвольную исходную точку и ∆ – исходный положительный шаг.

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

Шаг 3. Сопоставить , :

а) если > то, согласно предположению об унимодальности функции, точка минимума должна лежать правее Метод оценивания точки минимума внутри найденного отрезка локализации минимума, чем точка . Положить и перейти на шаг 5.

б) если , то вычислить .

Шаг 4. Сопоставить :

а) если , то точка минимума лежит меж точками и , которые и образуют границы исходного отрезка локализации минимума. Положить и окончить поиск.

б) если то, согласно предположению об унимодальности функции, точка минимума должна лежать левее, чем точка Метод оценивания точки минимума внутри найденного отрезка локализации минимума . Положить и перейти на шаг 5.

Шаг 5. Вычислить .

Шаг 6. Сопоставить :

а) если , то

· при положить ;

· при положить .

и окончить поиск.

б) если , то

· при положить ;

· при положить .

положить и перейти на шаг 5.

Способ деления напополам (основной вариант).

В данном варианте способа деления напополам на каждой итерации оцениваются 2 значения функции и исключается Метод оценивания точки минимума внутри найденного отрезка локализации минимума немногим меньше половины отрезка локализации минимума.

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

Шаг 1. Отыскать пробные точки и .

Шаг 2. Вычислить значения функции и в пробных точках.

Шаг 3. Сопоставить и :

а) если , то положить .

б) если , положить .

Шаг 4. Вычислить . Если , то Метод оценивания точки минимума внутри найденного отрезка локализации минимума положить и окончить поиск, по другому перейти к шагу 1.

Задание.

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

2. Программно воплотить на языке C++ способ Свенна.

Программка Метод оценивания точки минимума внутри найденного отрезка локализации минимума должна обеспечить вывод на экран:

· исходной точки и шага;

на каждой итерации способа:

· номера итерации;

· генерируемой способом новейшей точки и значения функции в ней;

а на последней итерации

· отрезка локализации минимума функции и его длины, также числа итераций.

Способ оценивания точки минимума снутри отысканного отрезка локализации минимума

Программка должна Метод оценивания точки минимума внутри найденного отрезка локализации минимума обеспечить на каждой итерации способа вывод на экран:

· номера итерации;

· границ текущего отрезка ;

· внутренних точек и значений функции в их,

а потом

· финишной оценки точки минимума функции ;

· соответственного точке значения функции .

3. Протестировать программку на обычной задачке минимизации . Нач. точка: , шаг . Решение . Найти при помощи разработанной программки точку (точки) локального минимума функции Метод оценивания точки минимума внутри найденного отрезка локализации минимума в округи .

4.Составить отчет, содержащий:

· Титульный лист с указанием учебной дисциплины, номера и наименования задания, ФИО выполнившего работу студента;

· Вполне текст задания, приведенный несколькими строчками выше;

· Определение унимодальности;

· Методы;

· Текст программки на С++;

· Подробное решение одной из предложенных задач – то, что выводит программка при ее решении на каждой итерации;

· Сводную таблицу Метод оценивания точки минимума внутри найденного отрезка локализации минимума результатов решения задач, содержащую информацию о испытательной функции, исходных данных задачки и параметрах программки и результаты решения задачки (оценку точки минимума, значение функции в ней, число итераций).

Подписать отчет.

Унимодальная функция одной переменной: функция именуется унимодальной на интервале [a,b], если она добивается глобального минимума на этом интервале в Метод оценивания точки минимума внутри найденного отрезка локализации минимума единственной точке , при этом слева от эта функция строго убывает, а справа – строго увеличивается. Значение унимодальных функций очень велико, т.к. все сложные задачки разбиваются на обыкновенные, посреди которых большая часть задач сводятся к поиску минимумов унимодальных функций.


Задание№1

Программно воплотить на языке C++ способ Свенна.

Программка должна Метод оценивания точки минимума внутри найденного отрезка локализации минимума обеспечить вывод на экран:

· исходной точки и шага;

на каждой итерации способа:

· номера итерации;

· генерируемой способом новейшей точки и значения функции в ней;

а на последней итерации

· отрезка локализации минимума функции и его длины, также числа итераций.

Протестировать программку на обычной задачке минимизации . Нач. точка: , шаг . Решение . Найти при помощи разработанной Метод оценивания точки минимума внутри найденного отрезка локализации минимума программки точку (точки) локального минимума функции в округи .

Текст программки на С++.

//---------------------------------------------------------------------------

#include

#pragma hdrstop

#include

#include

#include

#include

#include

using namespace std;

double f(double ) ;

//---------------------------------------------------------------------------

#pragma argsused

char ch[100];

char *Rus(const char in[],char z[]);

char *Rus(const char in[],char z[])

{

if(CharToOem(in,z))return z Метод оценивания точки минимума внутри найденного отрезка локализации минимума;

else return 0;

}

int _tmain(int argc, _TCHAR* argv[])

{

double t,ll,e,l,xk,yk,a,b;

double x,delta,xp,k=0,y,y0;

int p=0;

cout<

cin>>x ;

cout<

cin>>t;

y0=x*x;

cout<

cout<<" "<

cout<

if ((f(x-t) >=f(x)) && (f(x+t) >=f(x)))

{

a=x-t;

b=x+t;

p=1;

};

if ((f(x-t) <=f(x)) && (f(x+t) <=f(x)))

{

cout<<"Функция не унимодальная!"<

p=1;

};

xp=x;

if ((f(x Метод оценивания точки минимума внутри найденного отрезка локализации минимума-t) >f(x)) && (f(x) >f(x+t)))

{

delta=t;

a=x ;

x=x+t;

}

if ((f(x-t) < f(x)) && (f(x) < f(x+t)))

{

delta=-t;

b=x ;

x=x-t;

}

while ((p!=1))

{

if ((f(x)0))

a=xp;

if ((f(x)< f(xp)) && (delta*t <0))

b=xp;

if ((f(x Метод оценивания точки минимума внутри найденного отрезка локализации минимума)> f(xp)) && (delta*t >0))

{

b=x;

p=1;

};

if ((f(x)> f(xp)) && (delta*t<0))

{

a=x;

p=1;

};

k++;

cout<<" "<

cout<

cout<

cout<

cout<

cout<

cout <

cout<

cout<<" "<

system("pause");

return 0;

}

double f(double x)

{

double y;

y=x*x;

return (y);

}

//---------------------------------------------------------------------------

Решение задачки:

Функция .

Таблица результатов для функции .

Нач Метод оценивания точки минимума внутри найденного отрезка локализации минимума.точка Шаг Отрезок [a;b] Число итераций
-5 [-3;3]
[-6;6]

Таблица результатов для функции .

Нач.точка Шаг Отрезок [a;b] Число итераций
0.5 [0;2]
[0.5;2]

Задание №2


metoda-gruppirovok-i-metoda-srednih-7-glava.html
metodi-absolyutnoj-geohronologii.html
metodi-aktivnogo-socialno-psihologicheskogo-obucheniyamaspo.html