Курсовая работа: Оптимизация многомерной нелинейной функции. Слепой поиск
Существуют модификации метода, в одной из которых после серии неудачных попыток уменьшается коэффициент , что позволяет «уточнить» положение оптимума. В этом случае условием окончания является малость значения шага (то есть ).
Существует также модификация метода с обратным шагом. Отличительной ее особенностью является то, что при неудачном шаге из точки сразу производится шаг в обратном направлении . При достаточном удалении от оптимума такая стратегия поиска может оказаться весьма эффективной. Если обратный шаг оказался неудачным, то можно сделать новый шаг из текущей точки или перейти к поиску с уменьшенным шагом. В последнем случае существует опасность замедления поиска вдали от оптимума, особенно в овраге.
2. Метод поиска с «наказанием случайностью».
Метод является аналогом метода наискорейшего спуска, только направление локального поиска не градиентное, а случайное. Как и в предыдущем методе, из текущей точки делают случайные шаги до тех пор, пока не будет найдена точка с лучшим значением критерия оптимальности. Затем в этом направлении регулярным методом одномерного поиска ищут оптимум. В точке оптимума по направлению опять случайным образом ищут новое направление и т.д.
Условием окончания обычно является невозможность получения лучшей точки из текущей за предварительно заданное число попыток .
3. Метод с «блуждающим поиском».
Данный метод является статистическим расширением градиентного метода и реализуется в соответствии с алгоритмом
где – случайный вектор с единичным модулем, и – коэффициенты, характеризующие вклад случайной составляющей и регулярной составляющей () в величину шага.
Чаще в формуле для используется не градиент , а составляющие направляющие косинусы градиента, что позволяет выдерживать заданное соотношение между регулярной и случайной составляющими шага.
Теоретически доказывается, что данный алгоритм наиболее вероятно приведет к глобальному экстремуму. В алгоритме могут использоваться алгоритмы коррекции шага , свойственные градиентному методу, который включается после неудачных попыток. Условием окончания является малость значения шага .
Стратегия поиска может предусматривать не постоянное, а периодическое добавление случайного вектора к градиентному шагу. Частота случайных «скачков» должна уменьшаться по мере приближения к оптимуму и увеличиваться вдали от него. Для этого существуют специальные алгоритмы самообучения, например:
,
где – число шагов регулярным градиентным методом без случайной составляющей, т.е. период добавления случайной составляющей;
– заданное целое число (рекомендуется , при этом в процессе поиска будет изменяться в диапазоне ).
Обратно пропорционально частоте «скачков» меняется и доля случайной составляющей в шаге, т.е. . Условием окончания поиска будет, как и в регулярном градиентном методе, близость градиента к нулю.
Математическое описание
Метод слепого поиска
Идея метода очень проста и наглядна. Случайным образом в допустимой области берется точка, и сравнивается значение критерия в ней с текущим наилучшим. Если новая случайно взятая точка хуже хранящейся в качестве текущей лучшей, то берут другую точку. Если же нашли точку, в которой критерий лучше, то ее запоминают в качестве текущей лучшей. Гарантируется, что при неограниченном возрастании числа попыток мы будем приближаться к глобальному оптимуму, т.е. найденное текущее наилучшее значение будет столь угодно близко к точному решению.
На практике поиск прекращают, когда число неуспешных попыток превышает наперед заданное число .
Данный поиск можно применять для поиска начального приближения, задав сравнительно небольшое число попыток. Метод прост в алгоритмическом плане и не требует примера с конкретными значениями.
Для получения случайных чисел , принадлежащих открытому интервалу () используют функцию преобразования
,
если нужны целые числа, используют
.
2. Блок – схема алгоритма моделирования
Описание ввода – вывода
1 – вводим выбранную нами функцию;
2 – ввод выбранного нами интервала.
3 – вводим число итераций;