Разделы презентаций


VM-11-m.ppt

Для удобства графической иллюстрации методов определим представление функции в виде линий уровняДана целевая функция которая графически представляет собой поверхность параболоида вращения.f(x1,x2)x1x2y

Слайды и текст этой презентации

Слайд 1Методы многомерной оптимизации.
Дана некоторая функция многих переменных f(x1,x2,x3,…..,xn) или
надо

найти такое значение
при котором функция
принимает экстремальное значение (минимальное

или максимальное).

Процесс поиска экстремального значения иногда называют оптимизацией.

называют оптимизируемой или целевой функцией

называют вектором параметров оптимизации

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

Все существующие методы многомерной оптимизации позволяют определить лишь один из экстремумов. Какой именно экстремум будет определён, зависит от выбора

начального приближения:

Методы поиска экстремума будем рассматривать относительно случая поиска минимума, для функции двух переменных

Методы многомерной оптимизации.Дана некоторая функция многих переменных f(x1,x2,x3,…..,xn) или надо найти такое значение при котором функция принимает

Слайд 2Для удобства графической иллюстрации методов определим представление функции в виде

линий уровня
Дана целевая функция
которая графически представляет собой поверхность параболоида

вращения.



f(x1,x2)

x1

x2

y

Для удобства графической иллюстрации методов определим представление функции в виде линий уровняДана целевая функция которая графически представляет

Слайд 3Проведем сечения поверхности равно отстоящими плоскостями, которые параллельны плоскости изменения

переменных x1 и x2.
Линии этих сечений проецируем на плоскость изменения

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

Определим зависимости x1 от x2 для соответствующих линий уровней.
Для заданной функции f(x1,x2) линии уровней будут представлять окружности с соответствующими радиусами:
R1=√1=1; R2=√2=1.41; R3=√3=1.73;




x2

x1

R3

R2

R1

Проведем сечения поверхности равно отстоящими плоскостями, которые параллельны плоскости изменения переменных x1 и x2.Линии этих сечений проецируем

Слайд 4функция Химмельблау
fxx01=inline('(x1.^2+x2-11).^2+(x1+x2.^2-7).^2')
[x1,x2]=meshgrid(-4:0.05:4);
z=fxx01(x1,x2);
contour(x1,x2,z)

функция Химмельблауfxx01=inline('(x1.^2+x2-11).^2+(x1+x2.^2-7).^2')[x1,x2]=meshgrid(-4:0.05:4);z=fxx01(x1,x2);contour(x1,x2,z)

Слайд 5Все методы многомерной оптимизации делятся на два класса
Градиентом называется

вектор равный сумме произведений частных производных на соответствующие орты.
Градиентные
Безградиентные
Орта

– единичный связанный вектор, направленный вдоль координатной оси.

Градиентный метод.

Все методы многомерной оптимизации делятся на два класса Градиентом называется вектор равный сумме произведений частных производных на

Слайд 6 Норма градиента определяет скорость изменения функции в направление градиента.

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

в этом направлении норма вектора градиента максимальна.
3. Градиент перпендикулярен линии уровня.

Основные свойства градиента:

Антиградиентом называется вектор, направленный в сторону противоположную градиенту.



Касательная



Норма градиента определяет скорость изменения функции в направление градиента.  Градиент всегда направлен в сторону наиболее

Слайд 7Алгоритм
1. Дана функция n переменных
точность ε, параметр шага

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

вектор градиента

3. Вычисляем новое приближение, делая шаг в направление антиградиента

и вычисляем значение функции

4. Проверяем условие Fz < Fx

переходим на пункт 2

6. Иначе, проверяем условие окончания h < ε

5. Если условие выполняется, то за начальное приближение принимаем т.е.

7. Если условие выполняется, то выводим

Конец алгоритма

8. Если не выполняется, то уменьшаем параметр шага h=h/3 и переходим на пункт 2

Алгоритм 1. Дана функция n переменных точность ε, параметр шага h, задаем начальноеприближениевычисляем значение функции2. Вычисляем вектор

Слайд 8Пример:
function vpr=grad(x)
End
function y=f(x)
End
End
Begin
f(x)
grad(x)
x,h,e
Fz

Пример:function vpr=grad(x)Endfunction y=f(x)EndEndBeginf(x)grad(x)x,h,eFz

Слайд 10
68


5.92

12.3



0.61
0.64
0.12
0.01

685.9212.30.610.640.120.01

Слайд 11function
[xm,Fm]=rvs(x,v,h,e)
x=xm-h*v
Fx:=f(x)
Fx

function[xm,Fm]=rvs(x,v,h,e)x=xm-h*vFx:=f(x)Fx

Слайд 12function y=f(x);
y=8*x(1)^2+4*x(1)*x(2)+5*x(2)^2;
function g=grad(x);
g=[16 * x(1) + 4 * x(2);

10 * x(2) + 4 * x(1)];
Симплексный метод
Симплексом в n-мерном

пространстве называется выпуклый многоугольник с n+1 вершиной.

n=2 треугольник


n=3 тетраэдр


function [xm,Fm,it]=rvs(x,v,h,e);
xm=x; Fm=f(xm);
while abs(h)>e
x=xm-h*v;
Fx=f(x);
if Fx xm=x; Fm=Fx;
else
h=-h/3;
end
end

function nspusk
x=[2;2]; e = 0.01; h =1;
Fx=f(x);
while 1>0
v=grad(x)./norm(grad(x));
[xm,Fm,itv]=rvs(x,v,h,eps);
dx=xm-x;
ndx=norm(dx);
x=xm; Fx=Fm;
if abs(ndx)end;

function y=f(x);y=8*x(1)^2+4*x(1)*x(2)+5*x(2)^2;function g=grad(x);g=[16 * x(1) + 4 * x(2);  10 * x(2) + 4 * x(1)];Симплексный

Слайд 13Алгоритм
1. Дана функция 2x переменных
точность ε, параметр h,

начальное приближение
2. Вычисляем координаты вершин симплекса
4. Определяем худшую вершину
она

будет лежать на прямой исходящей из худшей вершины и проходящей через середину противоположной грани

и координаты отраженной вершины,

3. Вычисляем значения функции

Алгоритм 1. Дана функция 2x переменных точность ε, параметр h, начальное приближение2. Вычисляем координаты вершин симплекса4. Определяем

Слайд 147. Условие не выполняется. Проверяем условие окончания h< ε
симплекса,

уменьшаем длину грани h=h/3 и повторяем с пункта 2.
8.

Условие окончания выполняется. Выводим координаты и значение функции лучшей вершины

9. Условие не выполняется. За

принимаем лучшую вершину последнего

5. Сравниваем значения функции

6. Условие выполняется. За новый симплекс принимаем симплекс с вершиной

и повторяем с пункта 3

h=1, eps=0.2

пример:

fxx=inline(‘8*x(1)^2+5*x(2)^2+4x(1)*x(2)')
[x,y,opt]=fminsearch(fxx,[0;0])

7. Условие не выполняется. Проверяем условие окончания h< ε симплекса, уменьшаем длину грани h=h/3  и повторяем

Слайд 15Ответ:

Ответ:

Слайд 16x1
x2

45
17
36
20


5
8


0
9

0.89
0.56
1.00

x1x24517362058090.890.561.00

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика