Методы включения интервалов неопределенности
В разд. 4.2 рассматривался вопрос анализа «в статике», который заключается в том, чтобы определить, является ли данное решение оптимальным. Для этого были построены необходимые и достаточные условия оптимальности решения. Далее мы переходим к изучению вопроса анализа «в динамике», связанного с нахождением оптимального решения. С этой целью ниже рассматривается ряд одномерных методов поиска, ориентированных на нахождение точки оптимума внутри заданного интервала. Методы поиска, которые позволяют определить оптимум функции одной переменной путем последовательного исключения подынтервалов и, следовательно, путем уменьшения интервала поиска, носят название методов исключения интервалов.
В разд. 4.2. было дано определение унимодальной функции. Унимодальность функций является исключительно важным свойством. Фактически все одномерные методы поиска, используемые на практике, основаны на предположении, что исследуемая функция в допустимой области по крайней мере обладает свойством унимодальности. Полезность этого свойства определяется тем фактом, что для унимодальной функции f(x) сравнение значений f(x) в двух различных точках интервала поиска позволяет определить, в каком из заданных двумя указанными точками подынтервалов точка оптимума отсутствует.
Теорема
Пусть функция f унимодальна на замкнутом интервале а£ х £ в, а ее минимум достигается в точке х*. Рассмотрим точки х1 и х2 расположенные в интервале таким образом, что а < х1 < х2 < b. Сравнивая значения функции в точках х1 и х2 можно сделать еле дующие выводы.
1. Если f(х1)>f(х2), то точка минимума f(x) не лежит в интервале (a, х1), т. е. х* Î(х2, b) (рис. 6.49 а).
2. Если f(х1)<f(х2), то точка минимума не лежит в интервала (х2, b), т. е. х*Î (а,х2) (см. рис. 6.49 б).
Доказательство
Рассмотрим случай, когда f(х1)>f(х2). Пусть утверждение теоремы неверно, т. е. а£ х*£ х1. Поскольку х* – точка минимума, то по определению f(x*)£ f(x) для всех хÎ (а, b). Получаем двойное неравенство
f(x*)£ f(х1)>f(x2) при х*< х1 < x2.
Это неравенство не может выполняться, так как унимодальная функция f(х) должна быть монотонной по обе стороны от точки x*. Таким образом, получено противоречие, доказывающее утверждение теоремы. Аналогичные рассуждения справедливы также в случае, когда f(х1)<f(х2).
а) б)
Рис. 6.49 Графические иллюстрации к теореме
Примечание. Если f(х1)=f(х2), то можно исключить оба крайних интервала (a, х1) и (х2, b); при этом точка минимума должна располагаться в интервале (х1 , х2).
Согласно теореме, которую иногда называют правилом исключения интервалов, можно реализовать процедуру поиска, позволяющую найти точку оптимума путем последовательного исключения частей исходного ограниченного интервала. Поиск завершается, когда оставшийся подынтервал уменьшается до достаточно малых размеров. Заметим, что правило, исключения интервалов устраняет необходимость полного перебора всех допустимых точек. Несомненным достоинством поисковых методов такого рода является то, что они основаны лишь на вычислении значений функций. При этом нe требуется, чтобы исследуемые функции были дифференцируемы; более того, допустимы случаи, когда функцию нельзя даже записать в аналитическом виде. Единственным требованием является возможность определения значений функции f(x) в заданных точках х с помощью прямых расчетов или имитационных, экспериментов. Вообще в процессе применения рассматриваемых методов поиска можно выделить два этапа:
этап установления границ интервала, на котором реализуется процедура поиска границ достаточно широкого интервала, содержащего точку оптимума;
этап уменьшения интервала, на котором реализуется конечная последовательность преобразований исходного интервала с тем, чтобы уменьшить его длину до заранее установленной величины.
Этап установления границ интервала. На этом этапе сначала выбирается исходная точка, а затем на основе правила исключения строится относительно широкий интервал, содержащий точку оптимума. Обычно поиск граничных точек такого интервала проводится с помощью эвристические методов поиска, хотя в ряде случаев можно также использовать методы экстраполяции. В соответствии с одним из эвристических методов, который был предложен Свенном (k+1)-я пробная точка определяется по рекуррентной формуле
где х0 – произвольно выбранная начальная точка, D – подбираемая некоторым способом величина шага. Знак D определяется путем сравнения значений f(х0), f(х0+ |D|) и f(х0 - |D|). Если f(х0 - |D|)³ f(х0)³ f(х0+ |D|),
то, согласно предположению об унимодальности, точка минимума должна располагаться правее точки х0 и величина D выбирается положительной. Если изменить знаки неравенств на противоположные, то D следует выбирать отрицательной. Если же
f(х0 - |D|) ³ f(х0) £ f(х0+ |D|)
то точка минимума лежит между х0 - |D| и х0+ |D| и поиск граничных точек завершен. Случай, когда
f(х0 - |D|) £ f(х0) ³ f(х0+ |D|)
противоречит предположению об унимодальности. Выполнение этого условия свидетельствует о том, что функция не является унимодальной.
Пример
Рассмотрим задачу минимизации функции f(x)=(100-х)2 при заданной начальной точке х0=30 и величине шага |D|=5.
Знак D определяется на основе сравнения значений
f(х0) = f(30) = 4900
f(х0+ |D|) = f(35) = 4225
f(х0 - |D|) = f(25) = 5625
то величина D должна быть положительной, а координата точки минимума х* должна быть больше 30. Имеем х1 =х0 - D = 35. Далее х2 = х1 + 2D = 45, f(45) = 3025 < f(х1)
откуда х*>35.
х3 = х2 + 22D = 65, f(65) = 1225 < f(х2),
откуда х*>45.
х4 = х3 + 23D = 105 f(105) = 25 < f(х3),
откуда х*>65.
х5 = х4 + 24D = 185, f(185) = 7225 > f(х4)
следовательно, х*<185. Таким образом, шесть шагов вычислении х* позволили выявить интервал 65£ х*£185, в котором расположена точка х*. Заметим, что эффективность поиска граничных точек непосредственно зависит от величины шага D. Если D велико, то получаем грубые оценки координат граничных точек, и построенный интервал оказывается весьма широким. С другой стороны, если D мало, для определения граничных точек может потребоваться достаточно большой объем вычислений.
Этап уменьшения интервала. После того как установлены границы интервала, содержащего точку оптимума, можно применить более сложную процедуру уменьшения интервала поиска с целью получения уточненных оценок координат оптимума. Величина подынтервала, исключаемого на каждом шаге, зависит от расположения пробных точек х1 и х2 внутри интервала поиска. Поскольку местонахождение точки оптимума априори неизвестно, целесообразно предположить, что размещение пробных точек должно обеспечивать уменьшение интервала в одном и том же отношении. Кроме того, в целях повышения эффективности алгоритма необходимо потребовать, чтобы указанное отношение было максимальным. Подобную стратегию иногда называют минимаксной стратегией поиска.
Метод деления интервала пополам. Рассматриваемый метод позволяет исключать в точности половину интервала на каждой итерации. Иногда этот метод называют трехточечным поиском на равных интервалах, поскольку его реализация основана на выборе трех пробных точек, равномерно распределенных в интервале поиска. Ниже приводится описание основных шагов поисковой процедуры, ориентированной на нахождение точки минимума функции f(x) в интервале (а,b).
Шаг 1. Положить хm =(а+b)/2 и L=b-a. Вычислить значение f(xm).
Шаг 2. Положить х1 = а + L/4 и х2 = b - L/4. Заметим, что точки х1, хm, х2 делят интервал (а, b) на четыре равные части. Вычислить значения f(х1) и f(х2).
Шаг 3. Сравнить f(х1) и f(хm).
(1) Если f(х1) < f(хm), исключить интервал (xm, b), положив b=Хт.
Средней точкой нового интервала поиска становится точка х1. Следовательно, необходимо положить xm = х1. Перейти к шагу 5.
(2) Если f(х1) ³ f(хm) перейти к шагу 4.
Шаг 4. Сравнить f(х2) и f(хm).
(1) Если f(х2) < f(хm), исключить интервал (a, хm), положив а = хm. Так как средней точкой нового интервала становится точка х3, положить хm = х2. Перейти к шагу 5.
(2) Если f(х2) ³ f(хm), исключить интервалы (а, х1) и (х2, b). Положить а = х1 и b=х2. Заметим, что хm продолжает оставаться средней точкой нового интервала. Перейти к шагу 5.
Шаг 5. Вычислить L=b-a. Если величина |L| мала, закончить поиск. В противном случае вернуться к шагу 2.
Замечания
1. На каждой итерации алгоритма исключается в точности половина интервала поиска.
2. Средняя точка последовательно получаемых интервалов всегда совпадает с одной из пробных точек х1, х2 или хm, найденных на предыдущей итерации. Следовательно, на каждой итерации требуется не более двух вычислений значения функции.
3. Если проведено n вычислений значения функции, то длина полученного интервала составляет (1/2)n/2 величины исходного интервала.
4. Показано, что из всех методов поиска на равных интервалах (двухточечный, трехточечный, четырехточечный и т. д.) трехточечный поиск, или метод деления интервала пополам, отличается наибольшей эффективностью.
Метод золотого сечения. Из проведенного выше обсуждения методов исключения интервалов и минимаксных стратегий поиска можно сделать следующие выводы.
1. Если количество пробных точек принимается равным двум, то их следует размещать на одинаковых расстояниях от середины интервала.
2. В соответствии с общей минимаксной стратегией пробные точки должны размещаться в интервале по симметричной схеме таким образом, чтобы отношение длины исключаемого подынтервала к величине интервала поиска оставалось постоянным.
3. На каждой итерации процедуры поиска должно вычисляться только одно значение функции в получаемой точке.
Руководствуясь этими выводами, рассмотрим симметричное расположение двух пробных точек на исходном интервале единичной длины, которое показано на рис. 6.50 (выбор единичного интервала обусловлен соображениями удобства). Пробные точки отстоят от граничных точек интервала на расстоянии t. При таком симметричном расположении точек длина остающегося после исключения интервала всегда равна t независимо от того, какое из значений функции в пробных точках оказывается меньшим. Предположим, что исключается правый подынтервал. На рис. 8 показано, что оставшийся подынтервал длины t содержит одну пробную точку. расположенную на расстоянии (1-t) от левой граничной точки.
Для того чтобы симметрия поискового образца сохранялась, расстояние (1-t) должно составлять t-ю часть длины интервала (которая равна t). При таком выборе t следующая пробная точка размещается на расстоянии, равном t-й части длины интервала, от правой граничной точки интервала (рис. 6.51 ).
Рис. 6.50 Интервалы, полученные методом золотого сечения
Рис. 6.51 Симметрия золотого сечения интервала
Отсюда следует, что при выборе t в соответствии с условием 1-t=t2 симметрия поискового образца, показанного на рис.6.50 сохраняется при переходе к уменьшенному интервалу, который изображен на рис.6.51 . Решая это квадратное уравнение, получаем
,
откуда положительное решение t=0,61803... . Схема поиска, при которой пробные точки делят интервал в этом отношении, известна под названием поиска с помощью метода золотого сечения. Заметим, что после первых двух вычислений значений функции каждое последующее вычисление позволяет исключить подынтервал, величина которого составляет (1 - t)-ю долю от длины интервала поиска. Следовательно, если исходный интервал имеет единичную длину, то величина интервала, полученного в результате N вычислений значений функции, равна tN-1. Можно показать, что поиск с помощью метода золотого сечения является асимптотически наиболее эффективным способом реализации минимаксной стратегии поиска.
Дата добавления: 2017-05-02; просмотров: 1771;