- •1 Постановка задачи 3
- •2 Теоретические сведения
- •2.1 Симплекс-метод
- •2.2 Метод покоординатного спуска нулевого порядка
- •2.3 Метод градиентного спуска с постоянным шагом
- •2.4 Метод наискорейшего градиентного спуска
- •3 Аналитическое решение уравнений
- •4 Исследование работы реализованных методов
- •4.1 Симплекс-метод
- •Метод покоординатного спуска нулевого порядка
- •4.3 Метод градиентного спуска с постоянным шагом
- •4.4. Метод наискорейшего градиентного спуска
- •5 Выводы
- •Список использованной литературы
4.4. Метод наискорейшего градиентного спуска
Рассмотрим работу программы при различных входных данных.
В качестве рассматриваемой функции выберем
,
имеющую решение в точке .
Зададим исходные данные:
|
|
|
|
N |
-8 |
-6 |
0,001 |
0,001 |
200 |
Окно программы при решении методом наискорейшего градиентного спуска с заданными параметрами – рисунок 27.
Рисунок 27
Отсюда видим, что программа при заданных параметрах нашла решение за 16 итераций.
Зададим маленькие значения :
|
|
|
|
N |
-8 |
-6 |
0,00001 |
0,00001 |
200 |
Решение при новых параметрах – рисунок 28.
Рисунок 28
Видим, что с уменьшением чисел увеличилось количество итераций, но и увеличилась точность решения. И обратное – с увеличением чиселколичество итераций уменьшается и точность тоже.
В качестве рассматриваемой функции выберем
,
имеющую решение в точке .
Зададим исходные данные:
|
|
|
|
N |
-8 |
-6 |
0,001 |
0,001 |
200 |
Окно программы при решении методом наискорейшего градиентного спуска с заданными параметрами – рисунок 29.
Рисунок 29
Отсюда видим, что программа при заданных параметрах нашла решение за 13 итераций.
Зададим маленькие значения :
|
|
|
|
N |
-8 |
-6 |
0,00001 |
0,00001 |
200 |
Решение при новых параметрах – рисунок 30.
Рисунок 30
Видим, что с уменьшением чисел увеличилось количество итераций, но и увеличилась точность решения. И обратное – с увеличением чиселколичество итераций уменьшается и точность тоже.
5 Выводы
Соберем в таблицу результаты работы методов при и проанализируем.
Таблица 1. Результаты вычислений
| |||||
Аналитическое решение |
0; 0 |
-6 |
0; 0 |
10 | |
Симплекс-метод |
-0,047;-0,063 |
-5,96 |
-0,375; 1 |
10,054 | |
Метод покоординатного спуска нулевого порядка |
0; 0,007 |
-5,999 |
0; 0 |
10 | |
Метод градиентного спуска с постоянным шагом |
-0,013; -0,089 |
-5,977 |
-0,352; -1,937 |
10,163 | |
Метод наискорейшего градиентного спуска |
-0,012; -0,039 |
-5,993 |
0; -1,158 |
10,054 |
Все методы пригодны для нахождения минимума заданных функций. Из таблицы видно, что наихудшие результаты показали симплекс-метод и метод градиентного спуска с постоянным шагом. Наилучший – метод покоординатного спуска нулевого порядка.
Список использованной литературы
1) А. В. Пантелеев. Методы оптимизации в примерах и задачах / учеб. пособие для ВТУЗов / Пантелеев А. В., Летова Т. А. – 2-е изд., исправ. – М.:Высш. шк., 2005. – 544 с.:ил.
2) Шилдт, Г. А. С# 4.0 полное руководство: учеб. / Г. А. Шилдт. - М.: ООО «И. Д. Вильямс», 2011. - 1056 с.