Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Пример 1. Спроектировать контейнер в форме параллелепипеда, площадь поверхности которого была бы минимальной





Спроектировать контейнер в форме параллелепипеда, площадь поверхности которого была бы минимальной.

1. Проектные параметры X1, X2, X3.

2. Ограничения. Задан объем контейнера V = 1 м.

3. ЦФ S = 2(X1X2+X1X3+X2X3), т.е. min S(X) X1· X2· X3 = 1

Использование условия позволяет упростить ЦФ

X3 = 1/ X1· X2, т.е. S = 2(X1X2 + 1/X2 + 1/X3).

Это задача безусловной оптимизации размерностью два.

 

§ 3.2.2 Методы решения задач оптимизации

В принципе задача оптимизации может быть решена тремя разными способами:

- аналитически;

- численно;

- методом итеративного поиска.

Первый способ решения возможен, если существуют аналитические выражения для первой и второй производной F(X) и можно аналитически решить уравнение F'(X) = 0.

Если аналитического решения уравнений F'(X)= 0 нет, то его можно получить численно методами решения системы нелинейных уравнений.

1. Поисковые методы заключаются в последовательном улучшении решения. Их схема такова: выбирают некоторое начальное допустимое решение. Чем оно ближе окажется к оптимальному, тем лучше.

2. Окружают это решение множеством сравнения и на этом множестве тем или иным способом определяют наилучший вектор X или, во всяком случае, вектор лучший, чем начальное решение; затем этот цикл вычислений повторяют, образуя окрестность улучшенного решения и т.д.

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

Существуют еще два класса вычислительных алгоритмов при поиске экстремума:

- алгоритм отсечения неоптимальных решений;

- алгоритмы, базирующиеся на достаточных условиях оптимальности.

 

§ 3.2.3. Задача поиска одномерного, локального безусловного оптимума.

 

Задача формулируется следующим образом. Найти наименьшее (или наибольшее) значение целевой функции f(X), заданной на множестве М и определить значение проектного параметра х* Î М, при котором целевая функция принимает экстремальное значение. Если целевая функция может быть вычислена при некоторых дискретных значениях аргумента, то среди них можно выбрать экстремальное значение. Существует несколько методов решения такой задачи:

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

  1. Выбор начального интервала поиска [a, b] и допустимой ошибки e.
  2. Выбор направления поиска внутри интервала и шага поиска Dx (стратегия поиска).
  3. Вычисление значений ЦФ f(xi).
  4. Проверка условия окончания поиска. |xi+1- xi| < e. Если условия выполняются, переход к п.6 иначе к п.4.
  5. Конец.

Рассмотрим наиболее простой метод - “ половинного деления ”.

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

 

Алгоритм метода

Шаг 1. Задать начальный интервал неопределенности L0 = [a,b], погрешность - e

Шаг 2. Положить i = k = 0

Шаг 3. Вычислить координату средней точки интервала L0 xck = (ak + bk)/2, длину интервала½L2k½= bk – ak и значение функции f(xck).

Шаг 4. Вычислить координаты точек: yk = ak + ½L2k½/4, zk = bk - ½L2k½/4, f(yk), f(zk).

Эти три точки делят равномерно исходный интервал на 4 части.

Шаг 5. Сравнить значения f(yk) и f(xck) – слева от средней точки.

а) если f(yk) < f(xck), исключить интервал (xck, bk]. Положить bk+1 = xck, ak+1 = ak. Средней точкой нового интервала неопределенности L2 становится точка yk: xck+1 = yk. Перейти к шагу 7.

б) если f(yk) ³ f(xck), перейти к шагу 6.

Шаг 6. Сравнить значения f(zk) и f(xck) – справа от средней точки.

а) если f(zk) < f(xck), исключить интервал (ak xck], положив ak+1 = xck, bk+1 = bk. Средней точкой нового интервала L2 становится точка zk: xck+1 = zk. Перейти к шагу 7.

б) если f(zk) ³ f(xck), исключить интервал [ak, yk), (zk, bk ], положив ak+1= yk, bk+1 = zk Средней точкой нового интервала останется точка xck+1 = xc k.

Шаг 7. Вычислить длину нового интервала неопределенности½L2(k+1)½= ½bk+1 – ak+1½ и проверить условие окончания поиска.

а) если ½L2(k+1)½£ e, процесс поиска завершается и x*Î [bk+1, ak+1]. В качестве приближенного решения можно взять середину интервала xck+1 ;

б) если ½L2(k+1)½> e, то положить k= k +1 и перейти к шагу 4.

Продолжать вычисления до выполнения условия ½L2(k+1)½£ e.

 

ПРИМЕР 2 Найти минимум функции f(x)= 2x2 – 12x на интервале [0,10], e = 1.

ð 1. L0 = [0,10].

2. k=0.

30. Вычислим xc0 = (0+10)/2 = 5 ½L0½= ½ 10 - 0½, f(xck) = f(5) = -10.

40. Вычислим y0 = 0 + ½10½/4 = 2.5, z0 = 10 - ½10½/4 = 7.5, f(y0)= -17.5,f(z0)= 22.5.

50. Так как f(y0)= -17.5 < f(xc0) = -10, то положим bk+1 = b1 = xc0 =5, xc1 = y0 = 2.5, a1 = a0= 0 и переходим к следующему шагу 70.

70. Получим новый интервал L2= [ 0,5 ] ½L2½= ½5-0½= 5> 1 k=1, переходим к шагу 41.

41. Вычислим y1 = 0 + ½5½/4 = 1.25, z1 = 5 - ½10½/4 = 3.75, f(y1)= -11.875, f(z1)= - 16.875.

51. Сравним f(y1) и f(xc1) = f(y0) = -17.5 Так как, f(y1)= -11.875 > f(xc1) = -17.5, то перейдем к шагу 6.

61. Сравним f(z1) и f(xc1) f(z1) = - 16.875 > f(xc1) = -17.5, то положим: a2 = y1= 1.25 b2 = z1=3.75,

xc2 = xc1 = 2.5 и переходим к следующему шагу 71.

71. Получим новый интервал L4= [ 1.25,3.75 ] ½L4½=½3.75- 1.25½= 2.5> 1 k = 2, поэтому снова переходим к шагу 42.

42. Вычислим y2 = 1.25 + ½2.5½/4 = 1.875, z2 = 3.75 - ½2.5½/4 = 3.125, f(y2)= -15.47, f(z2)= - 17.87.

52. Сравним f(y2) и f(xc2) = f(xc1) = -17.5 Так как f(y2)= -15.47 > f(xc2) = -17.5 то перейдем к шагу 6.

62. Сравним f(y2) и f(xc2) = f(xc1) = -17.5 Так как f(y2)= -15.47 > f(xc2) = -17.5 то положим: a3 = xc2 = 2.5 b3 = b2 = 3.75, xc3 = z2 = 3.125

72. Получим новый интервал L6= [2.5,3.75] ½L6½= ½3.75-2.5½= 1.25> 1 k=3, переходим к шагу 4.

43. Вычислим y3 =2.5 + ½1.25½/4 = 2.81, z3 = 3.75 - ½1.25½/4 = 3.43, f(y3)= -17.93, f(z3)= - -17.62.

53. Сравним f(y3) и f(xc3) Так как f(y3)= -17.93 > f(xc3) = -17.97 то перейдем к шагу 6.

63. Сравним f(z3) и f(xc3) Так как f(z3)= -17.62 > f(xc2) = -17.97 то положим: a4 = y3= 2.81 b4 = z3 = 3.43, xc4 = x*Î [bk+1, ak+1]. = 3.125

73. Получим новый интервал L8= [2.81,3.43] ½L8½= ½3.43-2.81½= 0.62 < 1 x*Î [bk+1, ak+1]. Î L8.

x* = xc4 = 3.125.

Для этого уравнения оптимум можно вычислить аналитически. f '(x)= 4x – 12 = 0, x = 3. Значит, последний интервал надо уменьшать.

Методы дихотомии, золотого сечения и чисел Фибоначчи описаны в рекомендованной литературе.

 

Тестовые задания для самопроверки усвоения темы.

1. ( - это алгебраическое уравнение?

2. Перечислить шаги алгоритма поиска безусловного экстремума одномерной функции.

3. В чем идея алгоритма метода половинного деления?

4. Перечислить типы и виды экстремума функции.

5. Перечислить виды ограничений при решении задачи условной оптимизации.

§ 3.2.4 Задачи многомерной оптимизации

 

Как правило, целевая функция сложных технических систем зависит от многих проектных параметров,

поэтому отыскание оптимума значительно усложняется. Существует, как и для задачи одномерной безусловной

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

Если уравнение целевой функции дважды дифференцируемо, то задача решается аналитически.

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

ния системы нелинейных уравнений.

Если можно вычислять только f(X), f' ′ (X), f " (X) только численно, то

применяют поисковые методы. Различают регулярные и случайные поисковые методы. В этом будут

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

Аналитический способ отыскания оптимума сводится к определению частных производных

целевой функции. Если приравнять их к нулю, то образуется система нелинейных уравнений.

Когда она поддается аналитическому решению, то находят значения проектных

параметров, при которых они принимают оптимальные значения.

Однако, аналитическое решение нелинейных систем уравнений редко возможно и поэтому используются

численные методы и методы поиска.

Различают 3 типа регулярных методов поиска оптимума многомерных ЦФ.

1. Методы нулевого порядка - для поиска используются только значения целевой функции F(X).

2. Методы первого порядка - кроме F(X) используются и F'(X).

3. Методы второго порядка - используются значения F(X), F'(X), F"(X).

Функцию нескольких переменных f(x) = f(x1,x2,...,xn) трудно изобразить графически уже для

n=2. При n=2 функцию отображают на плоскости линиями равного уровня. Линией равного

уровня f(x) называют геометрическое место точек, в которых f(x) принимает одно и то же

значение. Так, например, для функции

f(x) = (1)

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

Зададимся значением функции fi = const.

Решим уравнение (1) относительно x2:

x2(x1+1)- x = fi

.

Будем задавать значения x1, вычислять x2 и на пересечении x1 с x2 фиксировать точку, где f = const.

x2 Для f1 = -1

x1 x2

+1 0 -1

0,5 0,5

1 0

 

Для f2 = 0

x1 x2

-1 0 +1 x1 0 0

0,5 0,7

1,0 0,5

0,25 0,05

0,75 0,321

- 0,25 0,083

- 0,625 1,042

 

 

-1

Рис. 4.1

 

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

Для поиска оптимума многомерной функции необходимо знать её градиент и составить (затем вычислить) матрицу Гессе (H).

Градиент f(x0) определяется как

(2)

Матрица Гессе

, где (3)

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

Найдём градиент f(x) (1) в точке .

Для этой функции легко найти экстремум:

x1 = -1; x2 = 3.

< 0, это максимум.

Существует несколько численных методов поиска максимума функции нескольких переменных, основанных на построении улучшающей последовательности решений. Любой алгоритм построения последовательности улучшающихся решений состоит из правила перехода от решений xi, полученного на I -том шаге алгоритма, к решению xi+1 и из правила остановки.

Для любого метода точки связаны соотношением

xi+1 = xi + , где

- вектор направления поиска;

- характеризует величину шага;

- модуль произведения характеризует длину шага вдоль выбранного направления, и если - нормирован так, что его модуль равен 1, то - скаляр.

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

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

В методе нулевого порядка используются только значения функции. В этом методе используются несколько видов алгоритмов.

Для f (x1,x2) = 0 их можно схематически изобразить так:

x2 x2 x2 x*

M C 2

x* x2 x2

x’ 1

1 1’ x1 x1

0 0 0’

x0 0’ x0 A x0

x1 x1 x1

Рис. 4.2 а) б) в).

На рисунках не нанесены линии равного уровня, чтобы не усложнять картинку.

В первом случае (рис.4.2а) из точки x0 в точку x* можно попасть, двигаясь поочерёдно по направлениям, параллельным осям x1 и x2.

Это алгоритм поочерёдного изменения переменных (Гаусса-Зейделя). При движении по координате x1 фиксируют координату x2 и ведут одномерный поиск. Алгоритм обобщается на n переменных.

Во втором случае (рис.4.2б) используется идея параллельных касательных (сопряжённых направлений).

Из некоторой начальной точки по направлению координаты x1 осуществляют одномерный поиск и попадают в точку x0. Из точки x0,как из начальной, методом координатного изменения аргументов находят точку x1. Осуществляют дальнейшее движение по направлению

- такое значение аргумента функции f(x), при котором оно максимально на множестве значений. Т.е. переход из точки 1 в точку 2 осуществляется быстрее.

В третьем случае алгоритм называют симплексным. Для n=2 симплекс представляет собой треугольник.. Симплексом в общем случае (при n переменных) называют выпуклый многоугольник с n+1 вершинами, не лежащих в подпространстве размерности меньшей n. Симплекс называют регулярным (правильным), если расстояние между его вершинами одинаково.

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

 

x2 Если обозначить отображаемую вершину x0, две остальные

x2 иx1, а отображённую , то координату последней

x1 x2 можно определить из выражения:

x0 , где ; >0 множитель.

x1

При >1 симплекс растянется;

=2 получит зеркальное отображение;

0< <1 сожмётся;

Известно несколько видов симплексных алгоритмов:

1. Алгоритм регулярных симплексов (рис.4.2в).

Строится начальный симплекс S1.

Вычисляются значения функции f0 в каждой из его вершин.

Находится худшее (минимальное значение f0) из его вершин.

Производится операция отображения худшей вершины относительно противоположной грани.

Затем процедура циклически повторяется до выполнения правила остановки. Остановить поиск можно в случае, когда отображённая вершина в новом симплексе снова окажется худшей. Для уменьшения погрешности можно далее уменьшить симплекс.

2. Недлером и Мидом в 1964 году был предложен метод деформируемого симплекса, в котором симплекс меняет свою форму от цикла к циклу.

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

Каждый цикл алгоритма состоит из 2-х операций:

- оценки характера функции f0 вблизи текущей точки поиска;

- движения в направлении роста f0.

При n =2

Здесь верхний индекс – номер точки, а нижний – координата.

Из исходной точки можно задавшись координатами и числом k = h построить исходный симплекс, определить координаты точек 1 и 2.

Точка 1 ( + h; -h);

Точка 2 ( -h).

При этом симплекс получится нерегулярным, т.к. сторона противоположная x0 будет равна 2h, а две другие

Для построения регулярного симплекса надо выбрать длину стороны h, шаг по x1, равный h/2, а по x2 . Тогда сторона противоположная x0 будет h, а две другие равны ей, т.к.

 

.

В этом случае

Точка 1 ( + h; -h)

Точка 2 (; )

Например, для функции

f (x1 ; x2) = x1x2+x2-

в точке =1, = -1 можно построить вершину симплекса, в дальнейшем взяв приращение координат k=0,5.

 

x2

 

 

-1 0,5 1 1,5

x1

-0,5 x1 x2

 

 


-1

x0

x2

 

a = 0,5

h = =0,87

=1, = -1

=0,5, = -0,5

=1,5, = -0,5

1

наихудшая

= -1,

=0,5 = -1,5

Выберем сторону симплекса: а = 0.25; a / 2 = 0,125, тогда шаг по x1= =0,43

=1 = -1

=0,875 = -0,57

=1,125 = -0,57

Затем снова повторяются вычисления функции в вершинах симплекса, пока не выполнится правило остановки.

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

 

Тестовые задания для самопроверки усвоения темы.

 

1. А) Xni < Xi < Xbi при i Î [1:n],

Б) ψ(X) = 0;

В) ψ(X) > 0. Где выражение для прямого ограничения ЦФ?

2. Классифицировать

Метод поиска используемые значения

а) второго порядка; 1) целевой функции F(X).

б) нулевого порядка; 2) F(X) и F'(X).

в) первого порядка; 3) значения F(X), F'(X), F"(X).

3. Неравенство F(x)-F(X*)< 0 или F(x)-F(X*)> 0 характеризует оптимум в точке X*?

4. , это выражение для поиска оптимума симплексным методом?

5. - это операция растяжения при симплексном методе решения задачи оптимизации?

 

Date: 2015-10-22; view: 514; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию