Курсовая работа: Программная модель поиска глобального минимума нелинейных "овражных" функций двух переменных
Первая часть утверждения гарантирует сходимость лишь в смысле lim || Ñf(xk) || = 0, т.е. сходимость по функции либо к точной нижней грани inff(x), либо к значению функции f в некоторой стационарной точке х. При этом сама точка х не обязательно является точкой локального минимума; она может быть точкой седлового типа. Однако на практике подобная ситуация маловероятна и применение градиентных методов, как правило, позволяет получить приближенное значение минимума целевой функции (вообще говоря, локального).
Сравнивая рисунки 5 и 6, можно сделать вывод, что для целевой функции, линии уровня которой близки к окружностям, требуемая точность будет достигнута довольно быстро, тогда как если линии сильно вытянуты в окресности оптимальной точки, то градиентные методы приведут к медленному зигзагообразному продвижению в направлении на оптимальную точку. О функции, поверхность уровня которой сильно вытянуты , говорят, что она имеет «овражный» характер (в случаях двух переменных график такой функции действительно напоминает овраг).
|
О степени «овражности» функции f можно получить представление, зная минимальное (m) и максимальное (M) собственные числа матрицы Гессе Ѳf, вычисленной в оптимальной точке: чем меньше отношение m/M, тем больше “овражность” данной функции. Применение градиентных методов к таким функциям приводит к спуску на «дно оврага», после чего, поскольку направление спуска почти перпендикулярно «линии дна», точки последовательности {xk} будут поочередно находится то на одном «склоне оврага», то на другом и продвижение к оптимальной точке сильно замедляется.
1.2.3 Метод наискорейшего спуска
Поиск минимума функции R(x) выполняют по шагам начиная с начальной точки. На первом шаге вычисляют значение функции, градиент поля функции, путем вычисления частной производной по каждой переменной, модуль градиента, значения переменных в шаге и величину шага по каждой переменной.
В направлении градиента ищут минимум функции, поскольку направление одно, то используют один из методов оптимизации одномерной нелинейной функции. Например, сканирование с постоянным шагом по каждой переменной до локального минимума функции.
На втором и последующих шагах в точке локального минимума вновь вычисляют градиент поля, модуль градиента, значение переменных в шаге и величину шага. Вычисление заканчивают при значении модуля градиента меньше либо равного заданной погрешности.
2. Инструментальные программные средства
Перед началом работы над курсовым проектом передо мной встал вопрос: в какой системе программирования или с помощью какого приложения я буду писать программу по данной мне теме. Мой выбор остановился на приложении MicrosoftExcel. В настоящее время данный программный продукт можно найти практически на любом персональном компьютере, на котором установлена операционная система Windows 9x, 2000, NT 4.0, XP. MicrosoftExcel обладает требуемым для расчетов модели математическим аппаратом. Кроме того, в данный программный продукт встроен редактор VisualBasic, с помощью которого можно писать макросы.
Среда редактора Visual Basic.
VisualBasic предоставляет единую законченную среду редактирования, схожую со средой автономной версии VisualBasic 5.0. Каждая книга MicrosoftExcel имеет связанный с ней проект. Среда редактирования VisualBasic включает улучшенный редактор кода, иерархическое средство просмотра объектов, многооконный отладчик, окно отображения свойств и средство просмотра проектов для управления кодом и объектами проекта. Для облегчения создания синтаксически правильного кода среда редактирования VisualBasic имеет группу команд в меню Правка, включающую команды Список свойств/методов, Список констант и Параметры.
Использование объектов ActiveX в формах.
VisualBasic обеспечивает согласованные и расширяемые элементы управления и интерфейс диалоговых окон для всех программ MicrosoftOffice. Элементы ActiveX (ранее называвшиеся элементами управления OLE) могут быть внедрены непосредственно на листы, что позволяет пользователю создавать свои собственные формы.
События
Богатейшие возможности обработки событий предоставляют гибкие средства определения реакции на действия пользователя.
3. Блок-схема алгоритма моделирования
Ввод данных осуществляется с помощью диалогового окно «Ввод данных» (см. рис. 7).
Рисунок 7 Вид формы для ввода данных
Вывод промежуточных и выходных данных осуществляется в таблицу (см. табл. 1)
Таблица 1
Результаты решения
X1 | X2 | dR/dX1 | dR/dX2 | |grad| | R(x) |
4. Операционная среда
Минимальные требования предъявляемы к аппаратной части:
Процессор – 486 DX/2 80Mz
ОЗУ – 12Мб
Видеоадаптер – VGA640-480
Монитор
Клавиатура
Мышь
В качестве операционной среды на персональном компьютере должна быть установлена одна из версий Windows (9x, 2000, NT 4.0, XP, Me), а также программный пакет MicrosoftOffice (97, 2000) или, хотя бы, MicrosoftExcel.
Для того, чтобы начать работу с моделью нужно скопировать файл «Метод наискорейшего спуска» в папку «Мои документы» и с помощью программного приложения MicrosoftExcel открыть файл.
5. Контрольная задача
Задача. Найти минимум функции