Многомерные задачи оптимизации

Автор: Пользователь скрыл имя, 20 Января 2011 в 15:51, курсовая работа

Краткое описание

Вибір оптимального рішення або порівняння двох альтернативних розв’язків проводиться за допомогою деякої залежної величини (функції),обумовленої проектними параметрами.Ця велечина називається цвілевою функцією (або критерієм якості).В процесі розв’язку задачі оптимізації повинні бути знайдені такі значення проектних параметрів, при яких цілева функція має мінімум (або максимум).

Оглавление

Введение 3
1. Основные понятия 4
1.1 Определения. 4
1.2 Задачи оптимизации. 5
2. Одномерная оптимизация 6
2.1 Задачи па экстремум. 6
2.2 Методы поиска. 7
2.3 Метод золотого сечения. 8
2.4 Метод Ньютона. 11
3. Многомерные задачи оптимизации 13
3.1 Минимум функции нескольких переменных. 13
3.2 Метод покоординатного спуска. 14
3.3 Метод градиентного спуска. 14
4. Задачи с ограничениями 16
4.1 Линейное Программирование. 16
4.2 Геометрический метод. 17
4.3 Задача о ресурсах. 19
Список Литературы

Файлы: 1 файл

Проба#2 .doc

— 554.00 Кб (Скачать)

      Существует ряд специальных методов поиска оптимальных решений разными способами выбора узлов и сужения интервала неопределенности - метод деления отрезка пополам, метод золотого сечения и др. Рассмотрим один из них.

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

       Метод золотого сечения состоит в построении последовательности отрезков [a0, b0], [a1, b1], …,стягивающихся к точке минимума функции f(x). На каждом шаге, за исключением первого, вычисление значения функции f(x) проводится лишь один раз. Эта точка, называемая золотым сечением, выбирается специальным образом.

     На  первом шаге процесса оптимизации внутри отрезка [a0, b0] выбираем две внутренние точки x1 и x2 и вычисляем значения целевой функции f(x1) и f(x2). Поскольку в данном случае f(x1) < f(x2), очевидно, что минимум расположен на одном из прилегающих к x1 отрезков [a0, x1] или [x1, x2]. Поэтому отрезок [x2, b0] можно отбросить, сузив тем самым первоначальный интервал неопределенности.

     Второй  шаг проводим на отрезке [a1, b1], где a1 = a0, b1 = x2. Нужно снова выбрать две внутренние точки, но одна из них (x1) осталась из предыдущего шага, поэтому достаточно выбрать лишь одну точку x3, вычислить значение f(x3) и провести сравнение. Поскольку здесь f(x3) > f(x1), ясно, что минимум находится на отрезке [x3, b1]. Обозначим этот отрезок [a2, b2], снова выберем одну внутреннюю точку и повторим процедуру сужения интервала неопределенности. Процесс оптимизации повторяется до тех пор, пока длина очередного отрезка [an, bn] не станет меньше заданной величины ε.

     Теперь рассмотрим способ размещения внутренних точек на каждом от резке [ak, bk]. Пусть длина интервала неопределенности равна l, а точка деления делит его на части l1, l2: l1 > l2, l = l1 + l2. Золотое сечение интервала неопределенности выбирается так, чтобы отношение длины большего отрезк к длине всего интервала равнялось отношению длины меньшего отрезка к длине большего отрезка: (1)

       Из этого соотношения можно найти точку деления, определив отношение l2/l1. Преобразуем выражение (1), и найдем это значение:

             l =l2l1, l =l2(l1 + l2),

     l +l1l2 - l =0,

      2 + - 1 =0,

      = .

 Поскольку нас интересует только положительное решение, то

          .

       Отсюда l1 k1l, l2 k2l.

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

           x1 – a0 = b0 – x2 = k2d0,

     b0 - x1 = x2 – a0 = k1d0,

     d0 = b0 – a0.

После первого шага оптимизации получается новый интервал неопределенности – отрезок [a1, b1].

         Можно показать, что точка x1 делит этот отрезок в требуемом отношении, при этом

          b1 – x1 = k2d1, d1 = b1 – a1.

         Для этого проведем очевидные преобразования:

           b1 – x1 = x2 – x1 = (b0 – a0) – (x1 – a0) – (b0 – x2) = d0 – k2d0 - k2d0 = k3d0,

     d1 = x2 – a0 = k1d0,

     b1 – x1 = k3(d1/k1) = k2d1.

         Вторая точка деления x3 выбирается на таком же расстоянии от левой границы отрезка, т.е. x3 – a1 = k2d1.

     И снова интервал неопределенности уменьшается  до размера

d2 = b2 – a2 = b1 – x3 = k1d1 = k d0.

 Используя полученные соотношения, можно записать координаты точек деления y и z отрезка [ak, bk] на k +1 шаге оптимизации (y < z):

y = k1ak + k2bk,

     z = k2ak + k1bk.

При этом длина  интервала неопределенности равна

  dk = bk – ak = k d0. 

     Процесс оптимизации заканчивается при  выполнении условия dk < ε. При этом проектный параметр оптимизации составляет ak < x < bk. Можно в качестве оптимального значения принять x = ak (или x = bk, или x = (ak + bk)/2 и т.п.).

2.4 Метод Ньютона.

       Как было отмечено в п. 2.1, задача одномерной оптимизации дифференцируемой функции сводится к нахождению критических точек этой функции, определяемых уравнением:                          (2.7)

     Когда уравнение (2.7) нельзя решить аналитически, для его решения можно применить численные методы, например метод Ньютона. В этом случае говорят о методе Ньютона решения задачи оптимизации.

     Пусть - решение уравнения (2.7), а некоторое начальное приближение к . Применим для решения (2.7) метод Ньютона решения уравнения , которое эквивалентно уравнению (2.7) при . Для этого в формулу для -го приближения метода Ньютона подставим вместо производную и получим тем самым формулу для  -го приближения к решению уравнения (2.7):

                 (2.8)

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

или близости значений целевой функции на этих приближениях

    .

  Достаточное условие сходимости метода Ньютона (2.8) можно получить. А именно, справедлива следующая теорема.

    Теорема. Пусть - корень уравнения (2.7), т.е. , а и непрерывна. Тогда существуют окрестность корня такая, что если начальное приближение принадлежит этой окрестности, то для метода Ньютона (2.8) последовательность значений   сходится к при .

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

    Формулу метода Ньютона решения задачи оптимизации можно получить и из других соображений. Разложим функцию в ряд Тейлора в окрестности точки , ограничившись линейными и квадратичными членами относительно приращения :

    (2.9)

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

 что совпадает с (2.8). Разложение (2.9) в окрестности точки , на котором график функции заменяется параболой графиком функции .

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

         

 

3. Многомерные задачи  оптимизации

3.1 Минимум функции  нескольких переменных.

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

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

                 (3.1)

   Рассмотренный метод можно использовать лишь для дифференцируемой целевой функции. Но и в этом случае могут возникнуть серьезные трудности при решении систем нелинейных уравнений (3.1).

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

   Для решения подобной задачи в области проектирования, в которой ищется минимум целевой функции , можно дискретное множество точек (узлов) путем разбиения параметров на части с шагам .

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

   Такой метод аналогичен методу перебора для функции одной переменной. Однако в многомерных задачах оптимизации, где число  проектных параметров достигает пяти и более, этот метод потребовал бы слишком большого объема вычислений.

3.2 Метод покоординатного спуска.

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

                                 (3.2)

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

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

   На любом k-том шаге этот процесс можно прервать. И значение функции в точке k принимается в качестве наименьшего значения целевой функции в рассматриваемой области.

   Метод покоординатного спуска сводит задачу о нахождении наименьшего значения функции многих переменных к многократному.

3.3 Метод градиентного спуска.

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

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

         

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

Информация о работе Многомерные задачи оптимизации