Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Математические методы.doc
Скачиваний:
39
Добавлен:
30.07.2019
Размер:
7.16 Mб
Скачать

13.2.1. Методы исключения интервалов

Методы поиска, которые позволяют определить оптимум функции одной переменной путем уменьшения интервала поиска, носят название методов исключения интервалов.

Все методы одномерной оптимизации основаны на предположении, что исследуемая целевая функция в допустимой области по крайней мере обладает свойством унимодальности, так как для унимодальной функции W(x) сравнение значений W(t) в двух различных точках интервала поиска позволяет определить, в каком из заданных двумя указанными точками подынтервалов точки оптимума отсутствуют.

Правило исключения интервалов. Пусть W(x) унимодальна на отрезке [a,b], а ее минимум достигается в точке x*. Рассмотрим x1 и x2, расположенные a<x1<x2<b.

  1. Если W(x1)>W(x2), то точка минимума W(x) не лежит в интервале (a,x1), т.е. x*(x1,b).

  2. Если W(x1)<W(x2), то точка минимума W(x) не лежит в интервале (x2,b), т.е. x*(a,x2).

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

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

Процесс применения методов поиска на основе исключения интервалов включает два этапа:

  • этап установления границ интервала;

  • этап уменьшения интервала.

Этап установления границ интервала

Выбирается исходная точка, а затем на основе правила исключения строится относительно широкий интервал, содержащий точку оптимума. Обычно используется эвристический метод, например, Свенна, в котором (k+1) -пробная точка, которая определяется по рекуррентной формуле

xk+1 = xk + 2k , k=0,1,2..., (13.1)

где

xo - произвольно выбранная начальная точка;

 - подбираемая величина шага.

Знак  определяется путем сравнения значений W(x), W(xo + ), W(xo -):

  • если W(xo -) W(x) W(xo + ), то  имеет положительное значение;

  • если W(xo -) W(x) W(xo + ), то  имеет отрицательное значение;

  • если W(xo -) W(x) W(xo + ), то точка минимума лежит между xo - и xo +  и поиск граничных точек завершен;

  • если W(xo -) W(x) W(xo + ), то имеем противоречие предположению об унимодальности.

Пример 13.3. Приложение метода Свенна к задаче оптимального раскроя бревна на брус.

W(l)=(l/2)(dk -(dk-do)l/lo)2  max, при lo=0,10, =0,01, dk =0,22, do =0,12.

Определим знак :

W(12)=0,06;

W(12+1)=0,05265;

W(12-1)=0,06655.

Выполняется условие W(lo-)W(x)W(lo+), следовательно,  имеет отрицательное значение; l*=12.

l1=lo-20 = 11;

l2=l1-21 = 9, W(7)=0,07605 > W(l1)  x*<9;

l3=l2-22 = 5, W(5)=0,07225 < W(l2)  x*>5;

Искомый интервал 5<l*<9.

Этап уменьшения интервала

Метод деления пополам

Найти W(x) на отрезке [a,b].

Шаг 1. xm=(a+b)/2; L=b-a; вычислить W(xm).

Шаг 2. x1=a+L/4; x2=b-L/4; вычислить W(x1) и W(x2).

Шаг 3.

  1. Если W(x1)<W(xm), то исключить (xm,b], т.е. b=xm, xm=x1. Перейти к шагу 5.

  2. Если W(x1)W(xm), то перейти к шагу 4.

Шаг 4.

  1. Если W(x2)<W(xm), то исключить [a,xm), т.е. a=xm, xm=x2. Перейти к шагу 5.

  2. Если W(x2)W(xm), то исключить [a,x1) и (x2,b], т.е. a=x1, b=x2. Перейти к шагу 5.

Шаг 5. L=b-a. Если L<, то закончить поиск. В противном случае вернуться к шагу 2.

Как видно из алгоритма, из каждых трех значений целевой функции W, вычисленных в интервале поиска, в дальнейшем используется только два, а третье не дает дополнительной информации и в дальнейшем не используется. В методе золотого сечения целевая функция вычисляется в точках интервала, расположенных таким образом, чтобы каждое вычисленное значение целевой функции давало бы новую полезную информацию.

Метод золотого сечения

Сущность метода. Интервал поиска делится на две части так, чтобы отношение длины большого отрезка к длине всего интервала было равно отношению

. Учитывая, что z1+z2=z, имеем

W(x)

z

z12=z z2 = (z1+z2)z2 = z1z2 + z22;

z1

z2

z1z2 + z22 - z12 = 0,

откуда .

a

b

x

Рис. 13.2. Определение коэффициента дробления

Найти W(x) на отрезке [a,b].

Шаг 1. Вычисляем коэффициент дробления отрезка [a,b]

k=( - 1)/2.

Шаг 2. x1=a+(1-k)(b-a), вычислить W(x1).

Шаг 3. x2=a+k(b-a), вычислить W(x2).

Шаг 4.

  1. Если x2-x1, где  - заданная погрешность, то xm = (x1+x2)/2, вычислить W(xm) и закончить поиск.

  2. Если x2-x1>, то перейти к шагу 5.

Шаг 5.

  1. Если W(x1)>W(x2), то исключить a=x1, x1=x2 и W(x1)=W(x2). Перейти к шагу 3, затем к шагу 4.

  2. Если W(x1)W(x2), то b=x2, x2=x1 и W(x1)=W(x2). Перейти к шагу 2 и 4.

Пример 13.4. Приложение метода золотого сечения к задаче оптимального раскроя бревна на брус.

W(l)=-(l/2)(dk -(dk-do)l/lo)2  min,

где

lo=0,10,

dk =0,22,

do =0,12

в интервале 5l9 (см. пример 6.3) при l=0,1.

Итерация 1.

Шаг 1. a=5, b=9, k=( - 1)/2.

Шаг 2. l1=5+(1-k)(9-5)= 6,528, W(l1)= -0,0781.

Шаг 3. l2=5+k(9-5)= 7,368, W(l2)= -0,0789.

Шаг 4. l2-l1  0,1.

Шаг 5. W(l1)  W(l2), a=l1, l1=l2 и W(l1)=W(l2)= -0,0789.

Итерация 2.

Шаг 3. l2=6,528+k( 9-6,528)= 8,056, W(l2)= -0,0783.

Шаг 4. l2-l1 = 8,056-7,368 0,1.

Шаг 5. W(l1)= -0,0789  W(l2)= -0,0783, b=l2, l2=l1 и W(l2)=W(l1).

Итерация 3.

Шаг 2. l1=6,528+(1-k)( 8,056-6,528)= 7,112, W(l1)= -0,0788.

Шаг 4. l2-l1 = 7,368-7,112 0,1.

Шаг 5. W(l1) = -0,0788  W(l2) = -0,0789, a=l1, l1=l2 и W(l1)=W(l2)= -0,0789.

Итерация 4.

Шаг 3. l2=7,112+k(8,056-7,112)= 7,695, W(l2)= -0,0783.

Шаг 4. l2-l1 = 7,695-7,368 0,1.

Шаг 5. W(l1)= -0,0789  W(l2)= -0,0783, b=l2, l2=l1 и W(l2)=W(l1).

Итерация 5.

Шаг 2. l1=7,112+(1-k)( 7,695-7,112)= 7,335, W(l1)= -0,0789.

Шаг 4. l2-l1 = 7,368-7,335 0,1; l*= (7,368-7,335)/2 =7,352 при котором W*(7,352)= 0,0789 найдено с заданной точностью.

Таким образом, применение методов исключения интервалов накладывает единственное ограничение на исследуемую целевую функцию - унимодальность. Следовательно, рассмотренные методы можно использовать для анализа как непрерывных, так и разрывных и дискретных функций. Логическая структура поиска основана на простом сравнении значений функции в двух пробных точках.