Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
56
Добавлен:
16.04.2013
Размер:
300.49 Кб
Скачать

Лабораторная работа 4

Методы минимизации, не использующие дифференцируемость целевой функции

В работе рассматривается метод Нелдера – Мида.

Общие сведения: Напомним, что симплексом в Rn называется выпуклая оболочка n+1 точек, не лежащих в одной n-1 – мерной плоскости. Пусть требуется определить минимум целевой функции . Алгоритм метода Нелдера – Мида решения этой задачи заключается в следующем. На каждой итерации сравниваются значения в вершинах симплекса. Затем преобразуется та вершина (без ограничения общности --- ) симплекса в которой достигается максимальное значение . Положение новой вершины определяется сравнением значений функции в четырех пробных точках

Здесь --- центр тяжести остальных n вершин симплекса ().

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

Начальный симплекс можно выбрать правильным если известна, то

, (*)

где .

Алгоритм: 1. Выбрать параметры начальную точку и длину ребра a

правильного симплекса. Начальный симплекс определить по

формулам (*).

2. Вычислить значения функции в точках .

3. Упорядочить вершины так, чтобы .

4. Проверить достижение заданной точности. Если оно выполнено, то

. Иначе перейти к п. 5.

5. Найти и определить . Если , то

положить и перейти к п.3. Иначе к п.6.

6. Уменьшить симплекс, полагая и перейти к п.2.

Дополнительно: Используйте встроенную функцию fminsearch, реализующую метод

Нелдера-Мида [x,fval,exitflag,output] = fminsearch(@fun,x0).

Сравните количество итераций и вычислений fun для данной функции

fminsearch и для написанной вами функции.

Соседние файлы в папке Разработки