- •Предисловие
- •1.1. Постановка и классификация задач
- •1.2. Основные определения
- •1.3. Классический метод определения экстремума функции
- •Контрольные вопросы и задания
- •Глава 2. Одномерная оптимизация
- •2.1. Интервал неопределенности
- •2.2. Метод дихотомии
- •2.3. Метод фибоначчи
- •2.4. Метод золотого сечения
- •2.5. Метод квадратичной интерполяции
- •Контрольные вопросы и задания
- •Глава 3. Оптимизация функций нескольких переменных
- •3.1. Методы прямого поиска
- •3.1.1. Метод покоординатного спуска
- •3.1.2. Метод поиска Хука – Дживса
- •Метод Розенброка (метод вращающихся координат)
- •Метод Нелдера-Мида (метод деформируемого многогранника)
- •Метод сопряженных направлений Пауэлла
- •3.1.6. Методы случайного поиска
- •3.2. Градиентные методы
- •3.2.1. Метод наискорейшего спуска
- •Метод сопряженных градиентов Флетчера и Ривса
- •3.3. Методы второго порядка
- •3.3.1. Метод Ньютона
- •3.3.2.Метод Дэвидона - Флетчера - Пауэлла
- •Итерационная процедура Дэвидона-Флетчер-Пауэлла может быть представлена последовательностью шагов.
- •Контрольные вопросы и задания
- •Глава 4. Условная оптимизация
- •4.1. Множители лагранжа
- •4.2. Условия куна - таккера
- •Методы решения задач условной оптимизации
- •4.3.1. Метод последовательной безусловной оптимизации
- •4.3.2.Метод скользящего допуска
- •Контрольные вопросы и задания
- •Глава 5. Линейное программирование
- •5.1. Постановка задачи лп
- •Тогда задача лп (1) - (3) запишется в виде
- •5..2. Каноническая и стандартная формы задачи лп
- •5.3. Симплекс - метод
- •Порождение начального допустимого базисного решения
- •Двойственность в линейном программировании
- •5.6. Транспортная задача
- •Контрольные вопросы и задания
- •Заключение
- •Библиографический список
- •Глава1. Безусловная оптимизация………..………4
- •Глава 2. Одномерная оптимизация………..….…….9
- •Глава 3. Оптимизация функций нескольких переменных………………………………………..….…..20
- •Глава 4. Условная оптимизация…………………..49
- •Глава 5. Линейное программирование…………..60
- •Лидия Ивановна Лыткина Методы оптимизации с программами в системе mathcad
- •660014, Красноярск, просп. Им. Газ. ”Красноярский рабочий”, 31.
3.1.6. Методы случайного поиска
В случае простых целевых функций методы случайного поиска менее эффективны, чем любая регулярная процедура, но они оказываются полезными в более сложных случаях, когда целевая функция столь сложна, что невозможно заранее установить какие-либо ее свойства, позволяющие рационально выбирать направления поиска. Такие методы случайного поиска пригодны для любой целевой функции независимо от того, является она унимодальной или нет. Известно, что для любого регулярного алгоритма можно построить специальную функцию (класс функций), на которой он не будет работать. Случайный поиск позволяет оптимизировать любую функцию, хотя и с разной (иногда очень низкой) эффективностью. Методы случайного поиска создают подходящие предпосылки для применения в дальнейшем других методов поиска. Поэтому их (методы СП) часто применяют в сочетании с одним или несколькими методами других типов.
Самая общая итерационная формула методов случайного поиска имеет вид
,
где -n-мерная случайная величина. Вероятностные распределения этой случайной величины, их изменения в различных шагах метода и определяют метод поиска. Конечно, для случайной величины ставятся специфические требования.
Норма этой векторной величины должна быть ограниченной, чтобы точка оставалась поблизости от точки.
Законы распределения должны зависеть от результатов дальнейших испытаний (адаптация случайного поиска).
К простейшим алгоритмам относятся следующие:
Алгоритм с парной пробой. В случайном направлении по обе стороны от исходного состояния делают пробные шаги, где- длина пробного шага. Вычисляют значение целевой функции в этих точках. Рабочий шаг делают в направлении меньшего значения целевой функции. Характерной особенностью алгоритма является высокая тенденция к “блужданию”.
Алгоритм с возвратом при неудачном шаге. Делают шаг в случайном направлении. Если значение целевой функции в новой точке больше чем в исходной, т.е. шаг оказался неудачным, то возвращаются в исходную точку. После чего случайные шаги повторяются.
Алгоритм наилучшей пробы. Из исходной точки делают m случайных шагов, и запоминают тот шаг, который привел к наименьшему значению целевой функции. Рабочий шаг делают именно в этом направлении.
Рассмотрим один из модифицированных методов случайного поиска - случайный поиск на гиперсфере.
Начальную точку выбирают в качестве центраn-мерной гиперсферы. На этой гиперсфере случайным образом выбирают несколько точек, вычисляют значения функции в них и отмечают лучшую среди них . Затем проводят регулярный одномерный поиск вдоль прямой, соединяющей точкии, и определяют точкус минимальным значением функции (рис. 13). После этого процедуру повторяют из нового центра гиперсферы - точки. Радиус гиперсферы можно изменять.
Рис. 13
Поиск может быть ускорен, если точки на гиперсфере выбирать случайно, но с условием, чтобы они не отклонялись более, чем на некоторый выбранный угол друг от друга и от предыдущего направления поиска. Существует множество алгоритмов случайного поиска, отличающихся друг от друга соотношением случайности и регулярности, способом выбора случайного направления, поведением при успехах и неудачах и др. Однако все они менее эффективны, чем регулярные процедуры минимизации.
Пример. Щелкнув по значку, откроется Mathcad документ метода случайного поиска на гиперсфере, в котором можно выполнить вычисления.
Минимизация функции
методом случайного поиска на гиперсфере