Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
На практике часто необходимо найти экстремум (или экстремумы) некоторой целевой функции F(xi, X2,, х„) п переменных Xi (проектных параметров). Такая функция описывает (га+ I) -мерную поверхность. Соответственно функция F(x) одного параметра Х\ =х описывает некоторую кривую на плоскости (рис. 4.7, а). Поиск экстремумов функций одной переменной является самостоятельной и часто встречаемой задачей. Кроме того, к нему сводится гораздо более сложная задача поиска экстремумов функций множества переменных [3, 41].
В общем случае функция F(x) может иметь несколько экстремумов (максимумов или минимумов). Из них главный (оптимальное решение для пространства проектирования) называется глобальным. Задача поиска экстремумов сводится к их локализации и уточнению значений х и F(x) в точке экстремума. В дальнейшем для функций одной переменной под экстремумом будем подразумевать максимум F(x). Поскольку максимуму функции F(x) соответствует минимум функции — F(x), то, сменив знак у F(x), программами поиска максимума можно пользоваться и для поиска минимума функций. Будем также полагать, что на изменения х (если это особо не оговорено) накладываются ограничения в виде неравенств a^xsgib, где о и Ь — границы интервала поиска. В пределах отрезка [а, Ь] функцию считаем унимодальной, т. е. содержащей один максимум (рис. 4.7, б).
Метод равномерного поиска основан на том, что переменной х присваиваются значения х-\-&х с шагом Лх = const и вычисляются значения F{x). Если F(xn+\)> F(xn), переменной х дается новое приращение. Как только F(xn+\) станет меньше F(xn), поиск останавливается. При малой заданной погрешности этот метод неэкономичен по затратам машинного времени.
Метод поразрядного приближения является разновидностью метода равномерного
Рис. 4.7. Функция с несколькими экстремумами (а) и унимодальная функция с одним экстремумом максимумом (б)
поиска и реализуется следующим алгоритмом.
1. Задаем начальное приближение х = хо слева от максимума F(x) и вычисляем F(xo). Задаем D = h, где п = Ах — начальный шаг поиска.
2. Полагаем G = F(xn), где вначале F(xn) = = F(xq), задаем x = x-\-D и вычисляем F(xn+0 = F(x).
3. Проверяем условие F(xn+\)> G; если оно выполняется, идем к п. 3, если нет — к п. 4.
4. Полагаем D=—£>/4. Проверяем условие \D\> Е/4, где Е — заданная погрешность вычисления х„ в точке максимума. Если оно выполняется, идем к п. 2, т. е. обеспечиваем поиск максимума в другом направлении с шагом в 4 раза меньше прежнего. Если данное условие выполняется, заканчиваем счет.
Дата публикования: 2015-01-26; Прочитано: 838 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!