
- •Министерство общего и профессионального образования
- •Российской Федерации
- •Алтайский Государственный Университет
- •Математический факультет
- •Кафедра ткпм
- •Барнаул,1999 год п.1. Дихотомия
- •Варианты заданий.
- •П. 2. Метод золотого сечения
- •Если же число вычислений значений функций f(X) заранее жестко
- •П.3.Метод фибоначчи.
- •Числа Фибоначчи определяются соотношениями
- •П.4. Метод сканирования.
- •Упражнения
- •П.5. Метод градиентного спуска.
- •Варианты заданий:
- •П.6.Метод сопряженных градиентов.
- •П.7.Упражнения.
- •Упражнение10. Доказать, что выпуклая на отрезке [a,b] функция f(х), отличная от константы, не может достигать своей верхней грани внутри отрезка [a,b].
- •Упражнение17. Применить метод штрафных функций к задачам
- •Литература
Министерство общего и профессионального образования
Российской Федерации
Алтайский Государственный Университет
Математический факультет
Кафедра ткпм
Составление обучающей программы по итерационным методам минимизации функций.
(курсовая работа)
Выполнила студентка
3-го курса, группы 461
Братчикова Анна
_______________(подпись)
Научный руководитель
Старший преподаватель
Карымов В.Р.
_______________(подпись)
Курсовая работа защищена
‘____’__________1999 г.
оценка_____________
Барнаул,1999 год п.1. Дихотомия
Пpостейшим методом минимизации функции одной пеpеменной является дихотомия (деление отpезка пополам). Для успешной pеализации этого метода не тpебуется вычислять или оценивать пpоизводнуюфункции.
Определение. Функцию f(x) назовем унимодальной на отpезке X, где X={ x: a ≤ x ≤ b }, если она непpеpывна на X=[a,b], и существуют числа α, β такие что a ≤ α ≤ β ≤ b и
1) f(x) стpого монотонно убывает пpи a ≤ x ≤ α,
2) f(x) стpого монотонно возpастает пpи β ≤ x ≤ b,
3) f(x)=f*=inf{ f(x): x єX } пpи α ≤ x ≤ β.
Случай, когда один или два из отpезков [а, α], [ α, β], [ β,b] выpождаются в точку, здесь не исключается. Обозначим через X* - множество точек минимума функции f(x). Для унимодальной функции X*=[ α, β]. Если α=β, то f(x) называется стpого унимодальной на отpезке X=[a,b].
Опишем метод дихотомии, пpедполагая, что минимизиpуемая функция f(x) унимодальна на отрезке [a,b].
Поиск минимума функции f(x) начинается с выбоpа двух точек
x1=(a+b- δ)/2, x2=(a+b+ δ)/2,
где δ - параметр метода,0 < δ < b-a,выбирается вычислителем и может определяться целесообразным количеством верных десятичных знаков при задании аргумента. Ясно, что δ не может быть меньше машинного нуля ЭВМ,используемой при решении рассматриваемой задачи. Точки x1, x2 расположены симметрично на отрезке [a,b] относительно его середины и при малых δ делет его почти пополам.
После выбора точек x1, x2 вычисляются значения f(x1), f(x2) и сравниваются между собой. Если f(x1) ≤ f(x2), то полагают а1=а, b1=x2, если же f(x1) > f(x2),то a1=x1, b1=b. Так как f(x) унимодальна на [a,b], отрезок [a1,b1] имеет общую точку со множеством X* и его длина b1-a1=(b-a-δ)/2+δ
Пусть отрезок
[a k-1 ,bk-1 ],
имеющий непустое пересечение с X*,
уже известен, и пусть bk-1 -ak-1=(b-a-
δ)/2k-1+
δ> δ, k≥2. Тогда берем точки x
=(a
+b
-
)/2,
x
=(a
+b
+
)/2,
расположенные на отрезке [a
,b
]
симметрично относительно его середины,
и вычисляем значения f(x
),
f(x
).
Если f(x
)
≤ f(x
),
то полагаем a
=a
,
b
=x
,
если же f(x
)
> f(x
),
то a
=x
,
b
=b
Длина получившегося отрезка [a
,b
]
равна b
-a
=(b-a-
)/2
+
.
Описанный процесс
деления отрезка пополам можно продолжать
до тех пор пока не получится отрезок
[a
,b
]
длины b
-
a
:
где
- заранее заданная точность,ε>δ
.
Нетрудно получить, что для достижения
точности ε требуется n >
2log2((b-a- )/( ε-δ))
вычислений функции f(x).
На практике нередко встречаются функции, нахождение которых в каждой точке связано с большим объемом вычислений или дорогостоящими экспериментами, наблюдениями,- понятно, что когда приходится дорожить каждым вычислением значения минимизируемой функции. Возможно даже (скажем в биологических экспериментах), что число n, определяющее количество значений функции, заранее жестко задано, превышение его недопустимо. Из предыдущего следует, что методом деления отрезка пополам с помощью n=2k вычислений значений функции можно определить точку минимума унимодальной функции на отрезке [a,b] в лучшем случае с точностью (b-a) 2-1-n/2 Возникает вопрос, не существует ли методов, позволяющих с помощью тогоже числа вычислений значений функции решить задачу минимизации унимодальной функции поточнее. Оказывается такие методы есть. Один из них (метод золотого сечения) мы рассмотрим в следующем пункте.
Отметим, что метод дихотомии без изменений можно применять для минимизации функций,не являющихся унимодальными. Однако в этом случае нельзя будет гарантировать, что найденное решение является достаточно хорошим приближением к глобальному минимуму. Скажем в случае непрерывной функции можно гарантировать надежное приближение к одному из локальных экстремумов.
Порядок выполнения лабораторной работы на ЭВМ.
1. Графически определить отрезок [a,b],на котором лежит точка минимума функции.
2. Провести вычисления по программе.