Метод Пауэлла

Автор работы: Пользователь скрыл имя, 30 Ноября 2013 в 23:10, курсовая работа

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

Цель данной курсовой работы:
- проанализировать и обработать теоретические и практические данные по методу Пауэлла;
- провести сравнительный анализ с другими методами;
- разработка программы, реализующая данный метод.
Постановка задачи
Изучить частный случай метода сопряженных направлений – метод Пауэлла.
Изучить алгоритмы реализации поиска минимума функции f(x) .
Реализовать пользовательский интерфейс.

Содержание

ВВЕДЕНИЕ…………………………………………………………………….…….4
ПОСТАНОВКА ЗАДАЧИ………………………………………….…………….…5
1 Метод Пауэлла и сопряженные направления 6
1.1 Обоснование применения сопряженных направлений в алгоритмах оптимизации. 6
1.2 Метод Пауэлла. 9
1.3 Стратегия поиска 11
1.4 Блок схема алгоритма метода сопряженных направлений 12
1.5 Пример поиска минимума функции методом Пауэлла 15
2 Описание программной части. Выбор среды программирования 16
3 Руководство пользователя 17
4 Описание программы 20
ВЫВОДЫ……………………………………….…………………………………..23
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ……………

Прикрепленные файлы: 1 файл

Метод Пауэлла.docx

— 2.48 Мб (Скачать документ)

МИНИСТЕРСТВО  ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

Национальный аэрокосмический университет им. Н.Е. Жуковского «ХАИ»

 

 

 

 

 

 

 

 

Кафедра 304

 

 

 

 

 

 

 

 

МЕТОД ПАУЭЛЛА

Пояснительная записка к курсовому проекту  по дисциплине «Методы оптимизации»

 

 

 

 

 

Выполнила: студентка гр.345а Кривоножко А.Ю.

                                      (№ группы)         (Ф.И.О.)

Проверил            доц. каф. 304          

   Карташов А.В. 

(подпись, дата)                                       (Ф.И.О)


 

 

 

 

 

 

 

 

 

 

 

2013 

РЕФЕРАТ

 

Пояснительная записка состоит из 32 листа, включает 5 иллюстраций, 2 приложения на 9 листах. При ее составлении использовалось 5 источников литературы.

Темой  разработки является «Метод Пауэлла» с использованием современных средств программирования в среде Visual Studio.

По  результатам, полученным на этапе проектирования, разработан код программы. Были проведены  её испытания.

 

Содержание

 

ВВЕДЕНИЕ…………………………………………………………………….…….4

ПОСТАНОВКА ЗАДАЧИ………………………………………….…………….…5

1 Метод Пауэлла и сопряженные направления 6

1.1 Обоснование применения сопряженных направлений в алгоритмах оптимизации. 6

1.2 Метод Пауэлла. 9

1.3 Стратегия поиска 11

1.4 Блок схема алгоритма метода сопряженных направлений 12

1.5 Пример поиска минимума функции методом Пауэлла 15

2 Описание программной части. Выбор среды программирования 16

3 Руководство пользователя 17

4 Описание программы 20

ВЫВОДЫ……………………………………….…………………………………..23

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ…………………………………...24

ПРИЛОЖЕНИЕ А……………………………………………………………….....25

ПРИЛОЖЕНИЕ Б………………………………………………………………... ..33

 

Введение

Оптимизация как раздел математики существует достаточно давно. Оптимизация – это выбор, то есть то, чем постоянно приходиться заниматься в повседневной жизни. Термином «оптимизация» в литературе обозначает процесс или последовательность операций, позволяющих получить уточненное решение. Хотя конечной целью оптимизации является отыскание наилучшего или «оптимального» решения, обычно приходится довольствоваться улучшением известных решений, а не доведением их до совершенства. Поэтому под оптимизацией понимают скорее стремление к совершенству, которое, возможно, и не будет достигнуто.

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

Цель данной курсовой работы:

- проанализировать  и обработать теоретические и  практические данные по методу Пауэлла;

- провести сравнительный анализ с другими методами;

- разработка  программы, реализующая данный  метод. 

Постановка  задачи

  1. Изучить частный случай метода сопряженных направлений – метод Пауэлла.
  2. Изучить алгоритмы реализации поиска минимума функции f(x) .
  3. Реализовать пользовательский интерфейс.
  4. Реализовать данный алгоритм поиска минимума функции.
  5. Визуализировать данный алгоритм.

 

  1. Метод Пауэлла и сопряженные направления

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

 

,
,

, , (1.1)

 

где - положительно определенная квадратная матрица.

    1.   Обоснование применения сопряженных направлений в алгоритмах оптимизации.

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

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

 

, (1.2)

 

и, таким образом, оптимальное значение на первом шаге определяется в соответствии с соотношением

 

, (1.3)

где .

 

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

 

. (1.4)

 

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

 

, (1.5)

где положительно определенная матрица  .

 

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

 

, . (1.6)

 

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

 

где . (1.7)

 

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

 

(1.8)

Чтобы убедиться  в его справедливости, рассмотрим матрицу  . Умножение ее справа на дает

 

,

(1.9)

 

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

. (1.10)

 

На  каждом шаге минимизируем функцию 

в направлении
, чтобы получить
, что приводит к следующему выражению (на основании (2))

 

.  (1.11)

 

Кроме того, и , так как все , , и – сопряжены. Таким образом,

 

.  (1.12)

 

Выразим векторы  и через систему сопряженных векторов следующим образом (по аналогии с (3)):

 

, (1.13)

. (1.14)

 

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

 

, (1.15)

где - произвольная точка, из которой начинается поиск по сопряженным направлениям. Поскольку ,то .Умножение этого уравнения слева на дает

 

  . (1.16)

 

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

    1.   Метод Пауэлла.

Переход из точки  в точку на -м шаге алгоритма Пауэлла осуществляется в соответствии с формулой:

                                                

                                          (1.17)

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

, . (1.18)

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

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

 

 

Рисунок 1.1 – Иллюстрация теоремы

 

Пусть в начальный  момент для двумерной задачи поиск  осуществляется из точки  вдоль направлений, параллельных осям координат: и Последовательно были найдены точки (рис 1.2).

 

Рисунок 1.2 –  Иллюстрация теоремы

 

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

    1.   Стратегия поиска

1. Начиная  с точки  , решается последовательность задач минимизации функции , , в направлениях . При этом находятся точки , которые минимизируют исходную функцию в заданных направлениях, причем , , …, .

2. Поиск, осуществляемый  на первом этапе, может привести  к линейно зависимым направлениям, если, например, в одном из направлений не удается найти меньшего значения функции. Поэтому 2 направления могут стать коллинеарными. Поэтому в системе сопряженных направлений не следует заменять старое направление на новое, если после такой замены направления нового набора становятся линейно зависимыми. На примере квадратичной функции Пауэллом было показано, что при нормировании направлений поиска в соответствии с соотношением: , , определитель матрицы, столбцы которой представляют собой направления поиска, принимает максимальное значение тогда и только тогда, когда взаимно сопряжены относительно матрицы . Он пришел к выводу, что направление полного перемещения на -м шаге должно заменять предыдущее направление только в том случае, когда заменяющий вектор увеличивает определитель матрицы направлений поиска. Так как только тогда новый набор направлений будет более эффективным. Для такой проверки из точки делается дополнительный шаг в направлении , соответствующий полному перемещению на -м этапе и получают точку . Для проверки того, что определитель матрицы направлений поиска увеличивается при включении нового направления, делается шаг 3.

3. Обозначим  наибольшее уменьшение  на -м шаге ,соответствующее направление поиска обозначим через .Обозначим: , , , где , . Тогда, если и (или) , то следует использовать на -м этапе те же направления , что и на -м этапе, то есть , , и начать поиск из точки или из точки , в зависимости от того, в какой точке функция принимает минимальное значение.

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

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

    1.   Блок схема алгоритма метода сопряженных направлений

Шаг 1. Задать начальную точку х 0 , число ε>0 для окончания алгоритма, начальные направления поиска

Информация о работе Метод Пауэлла