Северин В.П. Методы ОП
.pdf
формул всех остальных методов интерполяции. Вычисления продолжаются до тех пор, пока xk 1 xk не станет меньше заданной допу-
стимой погрешности.
А л г о р и т м м е т о д а Н ь ю т о н а - Р а ф с о н а .
Входные параметры: x |
|
– начальная точка, – допустимая по- |
||||||
грешность. |
|
|
|
|
|
|||
Выходные параметры: |
x |
и f x |
– лучшая точка и значение функ- |
|||||
ции в ней. |
|
|
|
|
|
|||
1. |
Положить y x . |
|
|
|
||||
2. |
Вычислить f |
x |
f (x) |
, |
f f |
(x) , f f (x) . |
||
|
|
|
|
|
|
x |
x |
|
3. |
Положить x x f |
f |
. |
|
||||
|
|
|
|
|
x |
|
x |
|
|
|
, то положить |
y x и перейти к шагу 2. |
|||||
4. |
Если |
x y |
||||||
5. |
Остановиться. |
|
|
|
|
|||
4.7. Сравнение методов аппроксимации и интерполяции
Мы рассмотрели различные методы аппроксимации и интерполяции, предназначенные для вычисления точки минимума x унимодальной целевой функции одной переменной f (x) как с использованием значений производных функции, так и без использования значений производных. По этому признаку рассмотренные методы можно разделить на три группы.
1.Методы нулевого порядка. Это метод квадратичной интерполяции с тремя точками и метод кубической интерполяции с четырьмя точками, основанные на вычислении значений самой целевой функции
ине использующие значений ее производных.
2.Методы первого порядка. Это метод квадратичной интерполяции с двумя точками, метод секущих и метод кубической интерполяции с двумя точками, использующие значения первой производной целевой функции.
3.Метод второго порядка. Это один только метод Ньютона-
101
Рафсона, использующий значения первой и второй производных целевой функции.
Эти методы одномерного поиска можно сравнить по скорости сходимости. Методы одномерного поиска должны порождать последовательность точек {xk } , для которой
lim xk x .
k
Тогда по свойству предела
x |
x |
|
x x |
, |
k 1 |
|
|
k |
|
поэтому выполняется неравенство
|
x |
k |
1 |
x |
|
1 |
|
||
|
|
|
|
|
, |
||||
|
|
|
|
|
|
|
|
||
|
x |
k |
x |
|
|
||||
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В этом случае говорят о глобальной сходимости метода. Если глобальная сходимость метода установлена, то вызывает интерес оценка ее эффективности.
С практической точки зрения эффективность алгоритма зависит от числа итераций, необходимых для получения приближения опти-
мальной точки x с допустимой погрешностью . Если допустить, что время вычисления итераций одинаково для всех алгоритмов, то наилучшим среди них будет тот, который требует наименьшего числа итераций.
Поведение последовательности точек {xk } в окрестности опти-
мальной точки x позволяет установить характер асимптотической сходимости. Если выполняется неравенство
|
|
|
x |
k 1 |
x |
1 |
|
||
lim |
|
|
|
|
|
|
, |
||
|
|
|
|
|
|
|
|||
|
|
xk x |
|
|
|||||
k |
|
|
|
|
|||||
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
102
то говорят, что имеет место линейная сходимость и что – соответствующий коэффициент сходимости. Рассмотренные в разделе 3 методы нулевого порядка для уменьшения интервала неопределенности обладают линейной сходимостью.
Если выполняется неравенство
|
|
|
x |
k 1 |
x |
|
0 |
|
||
lim |
|
|
|
|
|
|
|
, |
||
|
|
|
|
|
|
|
|
|||
|
|
xk x |
|
|
|
|||||
k |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
то говорят, что имеет место сверхлинейная сходимость. При этом, если существует такое 1 , что
|
|
x |
k 1 |
x |
, |
||
lim |
|
|
|
|
|||
|
|
|
|
|
|
||
|
|
|
|
|
|
||
k |
x |
k |
x |
|
|||
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
то говорят, что имеет место сходимость порядка . В частности, если
|
|
x |
k |
1 |
x |
, |
|
lim |
|
|
|
|
|||
|
|
|
|
|
|
||
|
|
|
|
|
2 |
||
k |
x |
k |
x |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
то говорят, что имеет место квадратичная сходимость.
Метод квадратичной интерполяции нулевого порядка с тремя
точками имеет |
сверхлинейную скорость сходимости порядка |
1,32..., если |
f (x) имеет непрерывные производные четвертого по- |
рядка и f (x ) 0 , f (x ) 0 .
Метод секущих первого порядка с двумя точками имеет сверхли-
нейную скорость сходимости порядка |
1,618..., если f (x) три- |
жды непрерывно дифференцируема и |
f (x ) 0 , f (x ) 0 . |
Метод кубической интерполяции первого порядка с двумя точками и метод Ньютона-Рафсона имеют квадратичную скорость сходимо-
сти, если f (x) дважды непрерывно дифференцируема и f (x ) 0 ,
103
f (x ) 0 .
Следовательно, в малой окрестности оптимальной точки метод кубической интерполяции с двумя точками и метод Ньютона-Рафсона при указанных предположениях относительно целевой функции f (x) сходятся быстрее остальных методов.
Однако в общем случае при решении конкретной задачи оптимизации необходимы вычислительные эксперименты для выбора самого эффективного метода, позволяющего решить задачу оптимизации с допустимой погрешностью при использовании минимальных вычислительных ресурсов.
Лабораторная работа
Т е м а л а б о р а т о р н о й р а б о т ы .
Разработка подпрограммы для метода аппроксимации и интерполяции.
Ц е л ь л а б о р а т о р н о й р а б о т ы .
Разработать подпрограмму метода аппроксимации и интерполяции для минимизации унимодальной целевой функции.
П о р я д о к в ы п о л н е н и я л а б о р а т о р н о й р а б о т ы .
1.Получить у преподавателя задание на программирование одного из методов аппроксимации и интерполяции:
1) метод квадратичной интерполяции с тремя точками;
2) метод кубической интерполяции с четырьмя точками;
3) метод квадратичной интерполяции с двумя точками;
4) метод секущих;
5) метод кубической интерполяции с двумя точками;
6) метод Ньютона-Рафсона.
2.На основании алгоритма для заданного метода аппроксимации
иинтерполяции написать компьютерную подпрограмму в соответствии с требованиями:
1) входные параметры подпрограммы: f (x) – целевая функция,
104
N – предельное число точек, |
– допустимая погрешность, входные |
|||||||
параметры алгоритма заданного метода; |
|
|||||||
2) |
выходные параметры подпрограммы: X |
– массив всех точек |
||||||
поиска |
xk ; F |
– |
массив |
соответствующих |
значений функции |
|||
fk f (xk ) ; x и |
f x – лучшая точка поиска и значение в ней функции; |
|||||||
3) |
на каждой итерации выводить на экран компьютера строку, со- |
|||||||
держащую номер точки поиска k , |
шаг перехода в новую точку hk , |
|||||||
значение функции fk |
и значение переменной xk ; |
|
||||||
4) |
итерации продолжаются до тех пор, пока выполняются нера- |
|||||||
венства: |
|
|
|
|
|
|
|
|
|
|
|
|
hk |
|
, |
k N ; |
|
|
|
|
|
|
|
|||
5)после окончания процесса оптимизации на экране должна отображаться таблица, имеющая соответствующий заголовок и представляющая процесс минимизации функции;
6)под таблицей необходимо отобразить количество вычислений целевой функции, конечный шаг поиска, минимальное значение функции и соответствующее ему значение независимой переменной.
3. Написать общую программу для выполнения вычислительного процесса минимизации целевой функции одной переменной и отображения на экране этого процесса в соответствии с требованиями:
1)за основу общей программы для минимизации функции взять общую программу из предыдущей лабораторной работы и модифицировать эту программу;
2)задать в программе значения x0 , x , h , , N ;
3)путем вызова подпрограммы метода Свенна с использованием подпрограммы вычисления функции f (x) и значений x0 , h , N вы-
полнить итерационный процесс поиска интервала неопределенности с построением таблицы процесса на экране и получением массивов значений переменной X и функции F , границ интервала неопределенности a и b , значений функции на концах интервала fa и fb , внут-
105
ренней точки интервала c и значения в ней функции fc ;
4) путем вызова разработанной подпрограммы метода аппроксимации и интерполяции реализовать итерационный процесс минимизации функции с построением таблицы процесса на экране и получением массивов значений переменной X и функции F , лучшей точки поиска x и значения в ней функции f x ;
5) с помощью подпрограммы графического отображения итерационного процесса по массивам X и F отобразить график процесса минимизации целевой функции одной переменной на экране компьютера.
4. Запустить на счет общую программу минимизации функции одной переменной для функций предыдущих лабораторных работ из нескольких начальных точек
|
x x , |
|
x |
02 |
x , |
|
x x |
|
|
||
|
01 |
|
|
|
|
|
03 |
|
|
||
при нескольких значениях шага |
|
|
|
|
|
|
|
|
|||
|
|
|
|
x x |
|
|
x x |
|
|||
h |
x x |
, |
h |
|
, |
h |
. |
||||
01 |
0 |
|
02 |
|
|
|
0 |
|
03 |
0 |
|
5. Выполнить анализ полученных результатов:
1)на основании табличной и графической информации о работе методов одномерного поиска определить конечные точки метода Свенна и показать найденный этим методом интервал неопределенности;
2)на нескольких начальных итерациях по табличным данным и графикам сопоставить начало работы метода аппроксимации и интерполяции с его рабочими формулами;
3)оценить эффективность метода аппроксимации и интерполяции
исопоставить ее эффективностью метода уменьшения интервала неопределенности из предыдущей лабораторной работы.
6. Ответить на вопросы преподавателя по теме лабораторной работы.
7. Оформить и сдать отчет о проведенной лабораторной работе.
106
С о д е р ж а н и е о т ч е т а .
1)титульный лист установленного образца с указанием организации, названия учебной дисциплины, темы работы, номера варианта, исполнителя и принимающего, города, года;
2)постановка задачи минимизации целевой функции, включающая задание функции, начальную точку и точку минимума;
3)теоретическое описание метода аппроксимации и интерполя-
ции;
4)алгоритм метода;
5)распечатки используемых компьютерных программ;
6)табличное представление процесса минимизации и его итоги – количество вычислений значений целевой функции, минимальное значение функции и соответствующее ему значение точки минимума, достигнутую точность;
7)двумерный график траектории поиска со всеми точками;
8)анализ полученных результатов;
9)выводы о проделанной лабораторной работе.
Контрольные вопросы
1.Какое назначение метода квадратичной интерполяции с тремя точками?
2.Опишите метод квадратичной интерполяции с тремя точками.
3.Как начинается поиск минимума в методе квадратичной интерполяции с тремя точками?
4.Какого порядка метод квадратичной интерполяции с тремя точ-
ками?
5.Какие преимущества и недостатки метода квадратичной интерполяции с тремя точками?
6.Какое назначение метода кубической интерполяции с четырьмя точками?
7.Опишите метод кубической интерполяции с четырьмя точками.
8.Как начинается поиск минимума в методе кубической интерпо-
107
ляции с четырьмя точками?
9.Какого порядка метод кубической интерполяции с четырьмя точками?
10.Какие преимущества и недостатки метода кубической интерполяции с четырьмя точками?
11.Какое назначение метода квадратичной интерполяции с двумя точками?
12.Опишите метод квадратичной интерполяции с двумя точками.
13.Какие преимущества и недостатки метода квадратичной интерполяции с двумя точками?
14.Какое назначение метода секущих?
15.Опишите метод секущих.
16.Какого порядка метод секущих?
17.Какие преимущества и недостатки метода секущих?
18.Какое назначение метода кубической интерполяции с двумя точками?
19.Опишите метод кубической интерполяции с двумя точками.
20.Какие преимущества и недостатки метода кубической интерполяции с двумя точками?
21.Какое назначение метода Ньютона-Рафсона?
22.Выведите итерационную формулу метода Ньютона-Рафсона.
23.Опишите метод Ньютона-Рафсона.
24.Какого порядка метод Ньютона-Рафсона?
25.Какие преимущества и недостатки метода Ньютона-Рафсона?
26.На какие группы можно разделить методы аппроксимации и интерполяции?
27.Дайте определение глобальной сходимости метода одномерного поиска.
28.Дайте определение асимптотической сходимости метода одномерного поиска.
29.Как определяется линейная сходимость метода одномерного
поиска?
30.Приведите примеры методов одномерного поиска, обладаю-
108
щих свойством линейной сходимости?
31.Как определяется сверхлинейная сходимость метода одномерного поиска?
32.Приведите примеры методов одномерного поиска, обладающих свойством сверхлинейной сходимости?
33.Как определяется квадратичная сходимость метода одномерного поиска?
34.Приведите примеры методов одномерного поиска, обладающих свойством квадратичной сходимости?
35.Чем определяется выбор метода одномерного поиска для решения конкретной задачи оптимизации?
109
СПИСОК ЛИТЕРАТУРЫ
1. Аттетков А.В. Методы оптимизации : учебник для вузов / А. В. Аттетков, С.В. Галкин, В.С Зарубин ; под ред. В.С. Зарубина, А.П. Крищенко. – М. : Изд-во МГТУ им. Н.Э. Баумана, 2003. – 440 с.
2.Банди Б. Методы оптимизации. Вводный курс / Б. Банди ; пер. с англ. О.В. Шихеевой. – М. : Радио и связь, 1988. – 128 с.
3.Бейко И.В. Методы и алгоритмы решения задач оптимизации / И.В. Бейко, Б.Н. Бублик, П.Н. Зинько. – К. : Вища школа, 1983. – 512 с.
4.Воробьев Н.Н. Числа Фибоначчи / Н.Н. Воробьев. – 4-е изд., доп. – М. : Наука. Гл. ред. физ.-мат. лит., 1978. – 142 с.
5. Гилл Ф. Практическая оптимизация / Ф. Гилл, У. Мюррей, М. Райт ; пер. с англ. В.Ю. Лебедева. – М. : Мир, 1985. – 512 с.
6.Дэннис Д. Численные методы безусловной оптимизации и решения нелинейных уравнений / Д. Дэннис, Р. Шнабель ; пер. с англ. О.П. Бурдакова – М. : Мир, 1988. – 440 с.
7.Измаилов А.Ф. Численные методы оптимизации : учеб. пособ. / А.Ф. Измаилов, М.В. Солодов. – М. : ФИЗМАТЛИТ, 2005. – 304 с.
8. Карманов В.Г. Математическое программирование / В.Г. Карманов. – 2-е изд., перераб. и доп. – М. : Наука. Гл. ред. физ.-
мат. лит., 1980. – 256 с.
9.Короп В.Ф. Принцип равномерного вклада и регулирование шагов покоординатного случайного поиска / В.Ф. Короп // Численные методы нелинейного программирования. – К. : Наук. думка. – 1976. –
С. 33–41.
10.Мину М. Математическое программирование. Теория и алгоритмы / М. Мину ; пер. с фр. А.И. Штерна. – М. : Наука. Гл. ред. физ.-
мат. лит., 1990. – 488 с.
11.Полак Д. Численные методы оптимизации. Единый подход / Д. Полак ; пер. с англ. Ф.И. Ерешко. – М. : Мир, 1974. – 376 с.
12.Пантелеев А. В. Методы оптимизации в примерах и задачах :
110
