1612726833-e6f68fc32d761b4e64266f5c195a8f96 (828578), страница 6
Текст из файла (страница 6)
x – оптимальное решение задачи. -21•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitЛЕКЦИЯ № 91. Метод ветвей и границ (МВиГ)2. МВиГ для задачи минимизации липшицевой функции на гиперкубе-1•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦ (идея)Рассмотрим задачу:min{f (x)|x ∈ Q}1. Множество Q должно быть разложимым, т.е.
существует конечное разбиение на атомарные подмножества.2. Заданы функции: x(d) – "наилучшее"решение,b(d) – ветвления и H(d) – нижняя граница.H(d) ≤ min f (x)x∈d-2•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦ (идея)Функция H(d) — невозрастающая, то есть такая, что H(d1) ≥ H(d2), если d1 ⊆ d2.3. Задан рекорд x0 – "наилучшее"найденное допустимое решение.-3•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦПусть к очередному шагу имеется разбиениеt1, .
. . , tL множества непроверенных решений ирекорд x0.На первом шаге имеем t1 = Q, x0 –произвольный элемент множества Q.Описание текущего шага. Проверка элементов разбиения:множество tl проверено и отбрасывается еслиили1) H(tl) ≥ f (x0),-4•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦили2) функция x(d) определена на множествеtl.причём, еслиf (x(tl)) < f (x0),то устанавливается новое значение рекорда x0 =x(tl).-5•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦЕсли отброшенными оказываются все элементы разбиения, то алгоритм заканчивает работу иx0 – решение, найденное в результате его работы.000Пусть t1, . .
. , t 0 , 0 < L ≤ L – множеLства, не отброшенные в результате проверок. Выберем среди них некоторое "перспективное"подмножество0tl .0-6•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦПрименим к нему функцию ветвления b(d), врезультате чего получим его разбиение d1, . . . , dNи в целом новое разбиение0000t1, . . . , tl0−1, d1, . . . , dN , tl0+1, . . . , tL0множества неотброшенных решений.После этого начинается следующий шаг.-7•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦКонечность алгоритма:1. На любом шаге множество непросмотренных решений – обьединение конечного числа разложимыхподмножеств.2. На каждом шаге алгоритма хотя бы один элемент разбиения либо отбрасывается, либо разбивается на подмножества, каждое из которых состоитиз меньшего числа атомарных множеств.3.
Атомарные множества всегда отбрасываются.-8•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦЧто можно сказать о полученном в результатеработы алгоритма рекорде x0?Пусть Q1 – объединение подмножеств, отброшенных по первому правилу, а Q2 – объединение подмножеств, отброшенных по второму правилу.Тогда Q = Q1 ∪ Q2.Если Q∗ ∩ Q1 6= ∅, то x0 – оптимальное решение вне зависимости от способа задания x(d).-9•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦЕсли Q∗ ∩ Q1 = ∅, то Q∗ ⊆ Q2, т.е. найдутся di такие, что Q∗ ∩ di 6= ∅, di ⊆ Q2 иQ∗ ⊆ ∪idiСлучай а).
f (x(d)) = inf f (x). Отсюда иx∈dопределения Q2 имеем, что x(di) – оптимальноерешение для любого i. Пусть d1 – первое подмножество отброшенное по условию 2. Тогда f (x0) ≤f (x(d1)).-10•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦСлучай б). f (x(d)) ≤ (1 + ε)f (x∗(d)).Отсюда и определения Q2 имеем, что x(di) – εоптимальное решение для любого i.
Пусть d1 –первое подмножество отброшенное по условию 2.Тогда f (x0) ≤ f (x(d1)) ≤ (1+ε)f (x∗(d1)).Т.е. x0 – ε-оптимальное решение задачи.-11•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМЕТОД ВЕТВЕЙ И ГРАНИЦПри разработке алгоритма МВиГ необходимо конкретизировать следующие элементы общей схемы:– атомарные множества решений;– способ задания подмножеств решений;– функцию ветвления;– способ вычисления нижней границы;– функцию выбора наилучшего решения;– правило выбора перспективного элемента разбиения.-12•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границРассмотрим задачу, в которой целевая функцияудовлетворяет условию Липшица.Ограничимся задачей минимизации на гиперкубе: f (x) −→ inf x∈Q, где Q = {x =(x1, . .
. , xn) : 0 ≤ xi ≤ 1, i = 1, . . . , n}Соглашения:|f (x)−f (y)| ≤ Lkx−yk∞ для всех x, y ∈ Q,(21)где L = const > 0 – константа Липшица,-13•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границkx − yk∞ = max |xi − yi|.1≤i≤nИз (21) =⇒ функция f – непрерывна и, следовательно, достигает минимального значения f ∗ нагиперкубе.Выберем на отрезке [0, 1] (оси j) следующиеточкиh 2i +h, . .
. ,1=xxj = , xj = x1j +h, . . . , xi+1jj2-14•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границ1 + (m − 1)h, 1},. . . , xm=max{xjjгде h = 2εL – шаг сетки, а m – подходящее натуральное число.На гиперкубе Q введем сеткуiji1 i2i...in1Qh = {x= (x1 , x2 , . . .
, xj , . . . , xinn )},ijгде j-ая координата xj принимает одно из следу-ющих значенийx1j , x2j , . . . , xmj .-15•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границПустьFh = min f (xi1...in ).QhТеорема 16. Для любой функции f (x), удовлетворяющей условию Липшица (21), справедлива оценкаf ∗ ≤ Fh ≤ f ∗ + ε.(22)Доказательство. МножествоonhQi1...in = x ∈ Rn : kx − xi1...in k∞ ≤2-16•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границ– гиперкуб с центром в точке xi1...in (грани параллельны осям координат, длина рёбер – h).Для любой точки x ∈ Q найдется гиперкубQi1...in , содержащий эту точку =⇒f (x) ≥ f (xi1...in ) − Lkx − xi1...in k∞ ≥h≥ Fh − L = Fh − ε =⇒2Имеем f ∗ ≤ Fh ≤ f ∗ + ε.
-17•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границРассмотрим произвольный гиперкуб Γ[xc, h] с центром xc и длиной стороны h:nohΓ[xc, h] = x ∈ Rn : kx − xck∞ ≤.2Очевидно, что ∀ x ∈ Γ[xc, h]:f (x) = f (x)−f (xc)+f (xc) ≥ −Lkx−xck∞++f (xc) ≥ f (xc) − Lh/2.-19•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границЕстественно, тогда определить нижнюю границу нагиперкубе Γ[xc, h] равенством H(Γ[xc, h]) =f (xc) − Lh/2.Функцию выбора наилучшего решения определим на г.-кубах со стороной h (играют роль атомарных множеств решений) не превосходящей 2εL,положивx(Γ[xc, h]) = xc.Подмножества решений будем задавать в виде набора гиперкубов.-21•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границНа первом шаге имеем t1 = Γ[xR, ∆], гдепервый рекорд xR – центр г.-куба со стороной ∆R =∆.Пусть к очередному шагу имеется разбиениеt1 = Γ[x1, h1], .
. . , tL = Γ[xL, hL]и рекорд xR – центр г.-куба со стороной ∆R.Очередной шаг начинается с проверки гиперкуба с номером l. Он считается проверенным и отбрасывается, если выполняется одно из следующихусловий:-22•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границ2εL.1) H(Γ[xl, hl]) ≥ f (xR),2) сторона г.-куба hl не превосходит величиныПри этом, если реализуется второй случай иf (xl) < f (xR),то устанавливается новое значение рекорда xR =xl и величины ∆R = hl.Дополнительное правило:-23•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границСлучай 1. (Текущий рекорд хуже )Если f (xl) < f (xR), тосреди оставшихся гиперкубов разбиения отбрасываем те, которые содержаться в г.-кубеR) − f (xl ))2(f(xΓ[xR,].LПо определению нижней границы имеем ∀x ∈Γ[xc, h] неравенство f (x) ≥ H(Γ[xc, h]) =f (xc) − Lh/2.-24•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границПоэтому для любой точки x из данного г.-кубаимеемR) − f (xl ))2(f(xf (x) ≥ H(Γ[xR,]) =LR) − f (xl ))2(f(xL= f (xl).= f (xR) − ×2LСлучай 2.
(Текущий рекорд лучше)Если f (xR) ≤ f (xl), то среди оставшихся-25•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границгиперкубов разбиения отбрасываем те, которые содержаться в г.-кубеl ) − f (xR))2(f(xΓ[xl,].LТ.к. для любой точки x из данного г.-куба имеемf (x) ≥ f (xR).Если отброшены все элементы разбиения, тоалгоритм заканчивает работу и xR – требуемоерешение.-26•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границЕсли есть неотброшеные множества, то выбираем "перспективное"подмножество Γ[xl, hl]. Функция ветвления b(·) разбивает его на 2n одинаковых подкубов со стороной h2l .После этого начинается следующий шаг.-27•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitМетод ветвей и границЗамечание.
Если в процессе работы алгоритма не происходит смены рекорда по правилу 2, то полученный рекорд – оптимальное решение задачи. В противном случаеε приближенное решение.-28•First •Prev •Next •Last •Go Back •Full Screen •Close •QuitЛЕКЦИЯ № 10Методы штрафов1. Метод внешних штрафов2. Метод внутренних штрафовЧисленные методы НЛП3. Методы спуска и градиентные методы4. Метод Ньютона5.