Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 700519.doc
Скачиваний:
9
Добавлен:
01.05.2022
Размер:
23.89 Mб
Скачать

3.2. Методы одномерного унимодального поиска

3.2.1. Эффективность алгоритмов одномерного поиска

При решении конкретных задач параметрической оптимизации обычно ориентируются на некоторые математические свойства кри­терия оптимальности Q(x), которые характерны для рассматривае­мого класса экстремальных задач. Тем самым, выделяя какие-либо особенности функции Q(x), мы формализуем (сознательно или ин­туитивно) класс KQ функций, обладающих одними и теми же фик­сированными свойствами. Например, такими свойствами могут быть количество локальных минимумов, выпуклость или диффе­ренцируемость функции, предельная оценка для значений ее пер­вых производных и т.д.

В данной главе рассмотрим функции одного переменного Q(x), принадлежащие классу унимодальных функций KQ. Для опреде­ленности предположим, что решается задача минимизации унимо­дальной функции Q(x), определенной на интервале [а,b]:

(3.9)

Тогда минимизируемая функция Q(x) имеет на заданном интервале [a,b] единственную точку х* (а < х < b), в которой достигается наи­меньшее значение Q(x*).

Точное определение унимодальности можно сформулировать следующим образом: унимодальная функция — одномер­ная функция Q(x), которая для любых , таких, что удовлетворяет условиям:

Из определения следует, что унимодальная функция Q(x) с возрастанием переменной х строго убывает при (рис. 3.1, а) и строго возрастает при x > x* (рис. 3.1, б). В общем случае график унимодальной функции не должен иметь горизонтальных участков («плато»), хотя сама функция может быть недифференцируемой, разрывной, неопределенной в некоторых точках и т.д. Примером унимодальных функций являются строго выпуклые функции (рис. 3.1, а), хотя существуют и невыпуклые унимодальные функции (рис. 3.1, б). В то же время выпуклая функция, имеющая «плато», не является унимодальной функцией (рис. 3.1, в).

Относительно минимизируемой функции Q(x) сделаем следующие предположения, обычно имеющие место в задачах параметрической оптимизации:

- при решении задачи оптимизации (3.9) используется информация только о значениях минимизируемой функции Q(x);

- испытания, связанные с вычислением значения функции Q(x), могут быть проведены в любой точке интервала [a, b];

- каждое испытание может быть выполнено без ошибки, либо последняя настолько мала, что ею можно пренебречь;

- вычисление значения функции Q(x) в каждой точке требует больших затрат машинного времени, в связи с чем число допустимых испытаний считается ограниченным и равным N;

- отличие между значениями функции Q(x1) и Q(x2) можно обнаружить только тогда, когда точки равновесны между собой на величину минимально допустимого сдвига При этом сдвиг с одной стороны, не может быть меньше машинного нуля, а , с другой стороны его нецелесообразно выбирать больше точности (числа верных десятичных знаков), с которой задается значение переменной х.

Р ис. 3.1. Строго выпуклая (а), унимодальная (б) и выпуклая неунимодальная (в) одномерные функции

Перед началом решения задачи оптимизации (3.9) положение точки х* неизвестно и она может находится в любом месте интервала [a, b]. Поэтому исходный интервал [a, b] обычно называется априорным интервалом неопределенности. Значения параметров а и b, которые определяют длину априорного интервала неопределенности, могут быть либо заданы из физических соображений, связанных с конкретной задачей оптимального проектирования, либо проучены с помощью следующей вычислительной процедуры.

1) Задают любую точку х1 и некоторый шаг h > 0; вычисляют значение функции Q(x1).

2) Вычисляют значение функции Q(x1+h).

3) Если Q(x1+h) < Q(x1), то {принимают x2 = x1 + h, k = 2 и переходят к шагу 5}, иначе {принимают h = -h, вычисляют значение Q(x1+h) и переходят к шагу 4}.

4) Если , то {принимают h = h/2 и переходят к шагу 2}, иначе {принимают и переходят к шагу 5}.

5) Принимают и вычисляют значение функ­ции .

6) Если , то { k = k + 1 и переходят к шагу 5 }, иначе {принимают }.

Рассмотренная процедура позволяет получить априорный интер­вал неопределенности длиной (b - а), который с помощью преобра­зования х' = (х - а)/(b - а) легко сводится к единичному отрезку [0,1]. В дальнейшем будем считать, что в задаче оптимизации (3.9) а = 0 и b = 1, т.е. минимизация функции Q(x) проводится на единичном интервале [0,1].

Чтобы решить задачу (3.9), необходимо выбрать конкретный ал­горитм Fi из некоторого класса АF алгоритмов, позволяющих путем проведения в априорном интервале неопределенности N испытаний в точках (x1, x2, …, xN) локализовать точку локального минимума х* в подынтервале [aN, bN] меньшей длины, чем исходный интер­вал [0,1]. В дальнейшем подынтервал [aN, bN] будем называть апостериорным интервалом неопределенности. В зависимости от правила расположения точек испытаний (x1, …, xN) можно выделить два класса алгоритмов поисковой оптимизации: пассивные и после­довательные.

Пассивные алгоритмы — алгоритмы, в которых точки испытаний (x1, …, xN) выбираются заранее до начала вычислений и в процессе поиска уже не меняются.

Последовательные алгоритмы — алгоритмы, в кото­рых информация о значениях минимизируемой функции, получен­ная на предыдущих шагах поиска, используется для определения последующих точек испытаний.

Рассмотрим класс последовательных алгоритмов , называемых методами сокращения интервала неопределенности. Основная идея этих алгоритмов заключается в том, что на каждом n-м шаге поиска путем исключения тех подынтервалов, в которых в силу унимодальности функции Q(x) точка х* не содержится, определяет­ся текущий интервал неопределенности [an+1, bn+1], удовлетворя­ющий следующим условиям:

(3.10)

Из системы неравенств (3.10) следует, что методы сокращения интервала неопределенности позволяют построить последователь­ность подынтервалов , которая стягивается к точке локального минимума х. Длина lN апостериорного интервала неоп­ределенности [aN,bN] зависит как от выбранного алгоритма , указывающего правило расположения точек испытаний (xi,...,xN), так и от вида минимизируемой функции Q(x), определяющей конк­ретный индекс k, при котором достигается минимальное значение функции среди всех проведенных N испытаний:

, (3.11)

где — ближайшие испытания, которые расположены по обе стороны от точки хk, обеспечивающей наименьшее значение функции Q(x):

(3.12)

Соотношение (3.11) является следствием следующего свойства унимодальных функций. Если для трех точек таких, что

(3.13)

выполняются следующие условия:

(3.14)

то точка локального минимума х* принадлежит отрезку

Величину апостериорного интервала неопределенности lN (Q, Fi) можно интерпретировать как погрешность решения задачи мини­мизации функции Q(x) с помощью алгоритма Fi. При этом, чем меньше значение погрешности lN (Q, Fi), тем точнее будет локали­зована точка локального минимума х* и, следовательно, тем точнее будет алгоритм Fi. Однако минимизация одним и тем же алгорит­мом различных унимодальных функций может привести к разной величине апостериорных интервалов неопреде­ленности, что не позволяет погрешность lN (Q, Fi) использовать в качестве критерия эффективности для сравнения алгоритмов . В то же время, если для каждого фиксированного числа ис­пытаний N рассматривать самый большой апостериорный интервал неопределенности из всех возможных для класса унимодальных функций, то его длина определяется только алгоритмом Fi (правилом размещения точек испытаний (x1, ..., xN) на априорном интер­вале неопределенности) и не будет зависеть от результатов испыта­ний:

, (3.15)

где lN (Fi) — гарантированная точность алгоритма Fi которая равна погрешности lN (QFi) решения с его помощью задачи (3.9) для самой "плохой" для него функции из класса унимодальных фун­кций KQ. Соотношение (3.15) позволяет сравнивать между собой различные алгоритмы из одного и того же класса : алгоритм предпочтительнее алгоритма , если гарантированная точность алгоритма F1 меньше гарантированной точности алгорит­ма F2:

.

Теперь нетрудно ввести понятие наилучшего (опти­мального) алгоритма как алгоритма, который обеспечивает минимальное значение гарантированной точности на классе унимодальных функция :

(3.16)

Такой подход к выбору наилучшего алгоритма унимодального поиска называется минимаксным подходом (принципом гаранти­рованного результата), который позволяет гарантировать при ис­пользовании алгоритма Т* погрешность решения задачи оптимиза­ции (3.9) не хуже значения гарантированной точности , хотя при благоприятном стечении обстоятельств может быть получено мень­шее значение погрешности