М И Н И СТ Е РСТ В О О БРА ЗО В А Н И Я РО ССИ Й СК О Й Ф Е Д Е РА Ц И И В О РО Н Е Ж СК И Й ГО СУ Д А РСТ В Е Н Н Ы Й У...
30 downloads
176 Views
257KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
М И Н И СТ Е РСТ В О О БРА ЗО В А Н И Я РО ССИ Й СК О Й Ф Е Д Е РА Ц И И В О РО Н Е Ж СК И Й ГО СУ Д А РСТ В Е Н Н Ы Й У Н И В Е РСИ Т Е Т
Ч е рныш о ва Г .Д ., К аш ирина И .Л .
Д И С К Р Е Т Н А Я О ПТ И М И ЗА ЦИ Я
М ет од и чес к ое п ос оби е к к урс у “М од ели и м ет од ы д и с к рет н ой оп т и м и заци и ”
В О РО Н Е Ж 2003
2 У тверж дено научно -методическим со ветом факультетаПМ М В ГУ 25 мая 2003 го да, п ро токо л № 8..
Рец ензент: к.ф.-м.н., до центкаф. нелиней ны х ко лебаний В ГУ СмагинаТ .И .
В п о со бии рассматривается о сно вно й круг задач дискретно го п ро граммиро вания. И зло ж ены методы реш ения задач ко ммиво яж ера, о назначениях, о бщ ей задачи цело численно го линей но го п ро граммиро вания. Применение каж до го методаиллю стрируется реш ениями тип о вы х п римеро в. Приведены задачи для само стоятельно го реш ения. По со бие п о дго товлено на кафедре математических методо в исследо вания о п ераций факультета ПМ М В о ро неж ско го го сударственно го университета. Реко мендуется для студентов 4 курса д/о , о бучаю щ ихся п о сп ециально сти “Прикладная математикаи инфо рматика” .
3
М Е Т ОД В Е Т В Е Й И Г РА Н И Ц §1. О бщ аясхе ма ме то да Рассмо трим задачудискретно й о п тимизации вида ϕ ( x) → min , x∈Ω
(1)
где Ω - неко торо е ко нечно е мно ж ество из R n . Д ля реш ения данно го классазадач часто исп о льзуется м ет од вет вей и гран и ц, во сно ве ко торо го леж атследую щ ие о сно вны е мо дули: 1) п о стро ение деревадо п устимы х вариантов; 2) со ставление о цено чны х задач; 3) о п ределение п равилао бхо дадеревавариантов; 4) о тбрасы вание “неп ерсп ективны х” мно ж естввариантов; 5) п ро веркакритерия о стано ва. Рассмо трим п о дро бно каж ды й из указанны х мо дулей . 1) По стро ениедеревавариантово сущ ествляется нао сно веразбиения мно ж еств нако нечно е число неп ересекаю щ ихся п о дмно ж еств. Ф актразбиения мно ж естваназы вается вет влен и ем и п ро изво дится нао чередно м ш аге методавсо о тветствии со сфо рмулиро ванны м заранееп равило м. Э то п равило связано со сп ецифико й ко нкретно го до п устимо го мно ж ества исследуемо й задачи. О днако если исхо дная задача среди п ро чих имеет о граничения вида x j ∈{1,0}, j = 1, n (т.е. является задачей с булевы ми п еременны ми), то мо ж но во сп о льзо ваться универсальны м п равило м ветвления: Ω = Ω 1 ∪ Ω 2 , где Ω 1 = {x ∈ Ω : xi = 1}; Ω 2 = {x ∈ Ω : xi = 0}; i - зафиксиро ванны й но мер ко о рдинаты 1 ≤ i ≤ n . По рядо к фиксиро вания ко о рдинато го варивается в п равиле ветвления. О тметим, что п равило разбиения мно ж ества на п о дмно ж ества в ко нкретно й задаче мо ж етбы тьне единственны м. 2) Оцен к ой функции ϕ (x) задачи (1) на мно ж естве Ω назы вается тако е число ξ = ξ (Ω) , что ϕ ( x) ≥ ξ , ∀x ∈ Ω . Д ля п о лучения о цено к со ставляется о цено чная задача, реш ениеко торо й исп о льзуется для вы числения со о тветствую щ ей о ценки. К о цено чны м задачам п редъявляю тся следую щ ие требо вания: с о дно й сторо ны , их реш ение не до лж но заниматьмно го времени. Н о вместе с тем о ценки, п о лученны е с их п о мо щ ью до лж ны бы тькак мо ж но точнее (т.е. разно стьξ (Ω) − min ϕ ( x) не до лж на бы тьслиш ко м бо льш о й ). Т акие требо Ω
вания о бъясняю тся тем, что именно о ценки исп о льзую тся п ри о тбрасы вании неп ерсп ективны х мно ж еств(следо вательно , п ри со кращ ении п еребо ра). При со ставлении о цено чны х задач мо ж но во сп о льзо ваться универсальны м п равило м: о тбро ситьв исхо дно й задаче наибо лее “тяж елы е” (трудно вы п о лнимы е) о граничения (нап ример, требо вание цело численно сти). По лучаемы е о ценки до лж ны о бладатьм он от он н ос т ью в том смы сле, что о ценки п о дмно ж еств не до лж ны бы тьменьш е о ценки разветвленно го мно ж ества (то естьесли Ω = Υ Ω k , то до лж но бы тьвы п о лнено усло вие ξ (Ω) ≤ ξ (Ω k )∀k . k
4 3) Правило о бхо да дерева вариантов в п ро цессе рабо ты алго ритма назы ваю т с т рат еги ей о бхо да дерева. Сущ ествуетмно ж ество различны х стратегий . Н аибо лее расп ро страненны ми являю тся три из них. a) “По м и н и м ум у оцен к и ”. В этом случае для п о следую щ его разбиения вы бирается п о дмно ж ество , имею щ ее к дано муш агуалго ритма минимальную о ценку. b) Од н ос т орон н и й обх од д ерева вари ан т ов. Д ля п о следую щ его разбиения вы бирается о дно из п о дмно ж еств, п о лученны х нап реды дущ ем ш аге (нап ример, п о дмно ж ество , вко торо м xl = 1, 1 ≤ l ≤ n ). Е сли со о тветствую щ ая ветвьдерева о казы вается п ро й денно й до ко нца (или о тбро ш ена как неп ерсп ективная), то п ро исхо дитво звращ ение к ближ ай ш емуиз п реды дущ их ш аго в, где со храниласьальтернатива. c) См ешан н ая с т рат еги я. В этом случае для п ро движ ения “вниз п о дереву” исп о льзуется о дно сторо нний о бхо д дерева вариантов, а п ри “п о дъеме вверх” ищ ется мно ж ество с минимально й о ценко й . 4) Будем назы ватьмно ж ество н еп ерс п ек т и вн ы м , если о тно сительно него п ринимается реш ение о вы брасы вании его из дальней ш его рассмо трения. О тбрасы вание мно ж еств в хо де реш ения о бесп ечиваетсо кращ ение п еребо ра. И склю чение мно ж естввариантовиз дальней ш его рассмо трения п ро изво дится с п о мо щ ью о цено к этих мно ж еств и реко рда. Рек орд ом (или рек орд н ы м зн ачен и ем ) назы ваю тзначение целево й функции в“лучш ей ” (до ставляю щ ей наименьш ее значение) из п о лученны х до п устимы х точек. Д ля о п ределения начально го реко рдареко мендуется во сп о льзо ваться каким-либо п риближ енны м алго ритмо м или друго й ап рио рно й инфо рмацией , если о наимеется. По хо дуреш ения задачи реко рд о бно вляется. Сп раведливо следую щ ее утверж дение. Е сли о це нка неко то ро го п о дмно ж е ства бо ль ш е име ю щ е го ся ре ко рда, то сре ди то че к данно го п о дмно ж е ства нет ре ш е ния задачи. Э то утверж дение п о зво ляетсфо рмулиро ватьо сно вно е п равило со кращ ения п еребо ра: если о ценка мно ж ества бо льш е реко рдно го значения, то тако е мно ж ество вариантов вы брасы вается из дальней ш его рассмо трения. О тметим, что мно ж ество мо ж етне п о двергаться п о следую щ емуветвлению и п о другим п ричинам: если п ри реш ении о цено чно й задачи на данно м мно ж естве бы ла п о лучена точка, являю щ аяся до п устимо й в исхо дно й задаче, или если до п устимо е мно ж ество о цено чно й задачи п усто. 5) Рабо таметодао станавливается всо о тветствии ск ри т ери ем оп т и м альн ос т и . Признако м о стано ва является следую щ ая ситуация: не о стало сьни о дно го мно ж ества, ко торо е мо ж ет бы ть п о двергнуто п о следую щ ему ветвлению . Реш ением п ри этом является точка, в ко торо й п о лучено п о следнее реко рдно е значение. В п редставленны х вы ш е п яти п унктах о п исаны о сно вны е мо дули, с п о мо щ ью ко торы х мо ж етбы тьсо ставленасхемарабо ты лю бо го вариантаметодаветвей и границ.
5 А лго ритмиче скаясхе ма ме то да Реш ается задачавида:
ϕ ( x ) → min . x∈Ω0
Ш аг 1. И нициализация. Задатьначально е реко рдно е значение R. Е сли о ты скание начально го реко рда затруднительно , п о ло ж итьR= + ∞ . По ло ж ить I = Ø – мно ж ество но меро в п о дмно ж еств, п о длеж ащ их ветвлению , J = {0} -мно ж ество но меро в п о дмно ж еств, для ко торы х будутреш аться о цено чны е задачи. Ш аг 2. В ы числение о цено к. Реш итьо цено чны е задачи для мно ж еств Ω j , где j ∈ J . В ы числитьξ (Ω j ) = ξ J , j ∈ J. Ш аг 3. О бно вление реко рда. Е сли на ш аге 2 п о лучены до п устимы е точки x p , p = 1, P , то п о ло ж ить R= min{R, min ϕ ( x p )} . p
Ш аг 4. Со кращ ение п еребо ра. О сущ ествитьзакры тие неп ерсп ективны х мно ж еств (вклю чая те но мера i , для ко торы х ξ i = R ). У далитьих но мера из мно ж еств I и J. По ло ж ить I = I ∪ J , J = Ø . Е сли I = Ø , то п ерей ти к ш агу7. Ш аг 5. Реализация стратегии. В ы братьиз мно ж ества I но мер k – индекс п о дмно ж ества Ω k , п о длеж ащ его ветвлению наданно м этап е всо о тветствии с зафиксиро ванны м п равило м. Ш аг 6. В етвление. О сущ ествитьразбиение мно ж ества Ω k на п о дмно ж ества Ω k = Υ Ω ks . По ло s =1, S
ж итьJ = J ∪ {k s , s = 1, S} . Перей ти к ш агу2. Ш аг 7. О стано в, ϕ min = R. У ПР А Ж Н Е Н И Я 1. Д о каж ите сво й ство мо но тонно сти о цено к вусло виях, п ри ко торы х ветвление и со ставление о цено чны х задач о сущ ествляется п о п равилам, указанны м в п .п . 1 и 2. 2. Предло ж итедругие стратегии о бхо дадеревавариантов. 3. Д о каж ите, что п ри исп о льзо вании о сно вно го п равила о тбрасы вания неп ерсп ективны х мно ж еств(п .4) не п ро исхо дитп о тери реш ения. 4. В п редло ж енно й алго ритмическо й схеме о ты скивается о дно реш ение, даж е если реш ение в задаче не единственно . Где п ро исхо дитп о теря реш ения? И сп равьтеалго ритм таким о бразо м, чтобы п о явиласьво змо ж но стьо ты скания всех реш ений задачи.
6
§ 2. М е то две тве й и границ дляре ш е ниязадачи ко ммиво яж е ра По стано вка задачи ко ммиво яж ера со стоитв следую щ ем. И меется n го ро до в. Задана матрица расстояний меж ду ними: C = (cij ), i, j = 1, n . Cчитаем, что cij ≥ 0, ∀i, j . В о бщ ем случае во змо ж но , что cij ≠ c ji . К ро ме того , будем п о лагать, что cii = +∞, ∀i . И щ ется кратчай ш ий замкнуты й марш рут(цикл), п ро хо дящ ий через каж ды й го ро д ро вно о дин раз и минимизирую щ ий суммарно е п ро й денно е расстояние. М атематическая п о стано вка задачи мо ж етбы тьзап исана, нап ример, следую щ им о бразо м. n
n
L = ∑∑ cij xij → min i =1 j =1
n
∑ xij = 1,
j = 1, n,
i =1 n
∑ xij = 1, j =1
i = 1, n,
xij ∈{0,1}, i, j = 1, n. В этой п о стано вке не учиты вается естественно е требо вание связно сти марш рута (о тсутствия п о дцикло в), но в дальней ш ем о но будетвы п о лняться алго ритмически. О п ре де ление . М атрица C назы вается п риведенно й , если все ее элементы нео трицательны , а каж дая стро ка и каж ды й столбец со держ итп о край ней мере п о о дно мунулево муэлементу. Приведение матрицы мо ж етбы тьо сущ ествлено следую щ им о бразо м. Пусть имеется матрица C = (cij ), cij ≥ 0, i, j = 1, n . Н ай дем min cij = α i , cij ' = cij − α i , j
∀i, j. По лучим матрицуC ' = (cij ' ) , ко торая в каж до й стро ке со держ итнулевы е элементы . Н ай дем далее min cij = β j , cij ' ' = cij '− β j , ∀i, j. По лученная матрица i
C ' ' является п риведенно й , а сумма S = ∑ α i + ∑ β j назы вается суммо й п риво i
j
дящ их ко нстант. М атрица C ' о п ределяетно вую задачуко ммиво яж ера, ко торая в качестве о п тимально го реш ения будетиметьтуж е п о следо вательно стьго ро до в. М еж дувеличинами L и L ' ' (длинами о п тимальны х марш рутов) будетсущ ество ватьследую щ ее со о тно ш ение: L = L ' '+ S . О тсю да следует о чевидно е неравенство : L ≥ S , то естьсумма п риво дящ их ко нстантявляется ниж ней о ценко й целево й функции исхо дно й задачи ко ммиво яж ера. К о нкретизируем теп ерь о сно вны е этап ы методаветвей и границ п рименительно к данно й задаче. ПустьΩ 0 - мно ж ество всех во змо ж ны х марш рутов. 1) В ет влен и е. При ветвлении о чередно е мно ж ество Ω k разбивается на два п о дмно ж ества следую щ им о бразо м. В матрице Ck , со о тветствую щ ей раз-
7 ветвляемо му мно ж еству, для каж до го нулево го элемента cijk вы числяется число S ijk = min cilk + min cljk . Затем о п ределяется п ара индексо в ( q, r ) , такая l
что
S qrk
=
max S ijk i, j
l
. Перво е п о дмно ж ество Ω k1 фо рмируется до бавлением ус-
ло вия xqr = 1 (из q − го го ро да идти в r − й ), второ е п о дмно ж ество Ω k2 со держ итусло вие xqr = 0 . 2) В ы чи с лен и е оцен ок . Пустьв со о тветствии с п реды дущ им п унктом п ро изведено разбиение Ω k = Ω k1 ∪ Ω k2 . Рассмо трим п равило п ерехо да о тматрицы Ck к матрицам C k 1 и Ck2 . М атрица Ck2 со держ итте ж е стро ки и столбцы , cijk , (i, j ) ≠ ( q, r ), что и Ck . По ло ж им = . Применяя к п о лученно й мат+ ∞, (i, j ) = ( q, r ) рице Ck п ро цедуруп риведения, п о лучим матрицу Ck2 . При этом сумма cijk
п риво дящ их ко нстантбудетравна S qrk . Т аким о бразо м, о ценко й мно ж ества Ω k2 будетξ (Ω k2 ) = ξ (Ω k ) + S qrk . О п ределим теп ерьп равило п о стро ения мат-
рицы C k 1 . По о п ределению , мно ж ество Ω k1 заведо мо со держ итп ерехо д из q − го го ро дав r − й . По этомувматрице C k 1 следуетвы черкнутьq -ю стро ку и r -й столбец. Д алее следуетзап ретитьво змо ж но стьво зникно вения п о дцикло в (замы кания фрагментов марш рута). С этой целью п о лагаем равны ми + ∞ все элементы , введение ко торы х вмарш рутдастналичие п о дцикла(нап ример, crq = +∞ ). К п о лученно й врезультате матрице следуетп рименитьп ро цесс п риведения и, най дя суммуп риво дящ их ко нстант S , п о считатьо ценкуξ (Ω k1 ) = ξ (Ω k ) + S . Правило о бхо дадеревавариантов, вы бо р п ерсп ективно го мно ж ествап ри ветвлении и п ро верка критерия о п тимально сти о сущ ествляю тся в со о тветствии с о бщ ей схемо й методаветвей и границ. С хе ма рабо ты ме то да ве тве й и границ для задачи ко ммиво яж е ра Ш аг 1. О п ределение начально го реко рда. (При о тсутствии до п о лнительно й инфо рмации мо ж но взятьдлинулю бо го марш рута). Приведение исхо дно й матрицы . Задатьk=0. Ш аг 2. В ы бо р п ары ( q, r ) . Ш аг 3. В етвление Ω k = Ω k1 ∪ Ω k2 . Ш аг 4. Прео бразо вание матрицы Ck . В ы числение матриц C k 1 и Ck2 . Е сли какая-то из этих матриц имеетразмер2 × 2, то п ерехо д к ш агу7. Ш аг5. В ы числение о цено к ξ (Ω k2 ) и ξ (Ω k1 ) . Ш аг 6. В ы бо р п ерсп ективно го мно ж ества Ω s в со о тветствии со стратегией . По ло ж итьk = s. Перехо д к ш агу2.
8 Ш аг 7. По лучение до п устимо го марш рута, во змо ж ная смена реко рда и со кращ ение п еребо ра. Ш аг 8. Про верка критерия о п тимально сти. Е сли о н вы п о лнен, то о стано в. И наче п ерехо д к ш агу6. Заме чание . В мо ментп о лучения матрицы 2 × 2 о п ределяется замы каю щ ая п ара го ро до вдля о бразо вания до п устимо го марш рута. Приме р. Рассмо трим задачуко ммиво яж ерас n = 8 и матрицей расстояний
С=
+∞ 7 3 4 4 3 1 7
5 +∞ 2 6 5 8 6 8
3 1 +∞ 2 1 9 6 7
2 6 3 +∞ 2 6 4 2
4 7 2 1 +∞ 4 2 8
5 8 4 3 4 +∞ 1 3
2 9 5 6 2 1 +∞ 0
7 6 7 2 3 5 0 +∞
По ло ж им R= + ∞ . О сущ ествиво п ерацию п риведения, п о лучаем матрицу C0 .
C0 =
№ 1 2 3 4 5 6 7 8 β
1 +∞ 5 0 2 2 1 0 6 1
2 3 +∞ 0 5 4 7 6 8 0
3 1 0 +∞ 1 0 8 6 7 0
4 0 5 1 +∞ 1 5 4 2 0
5 2 6 0 0 +∞ 3 2 8 0
6 2 6 1 1 2 +∞ 0 2 1
7 0 8 3 5 1 0 +∞ 0 0
8 5 5 5 1 2 4 0 +∞ 0
α 2 1 2 1 1 1 0 0 10
В п о следнем столбце и ниж ней стро ке зап исаны п риво дящ ие ко нстанты . И х суммаS=10, то естьξ (Ω 0 ) = 10 . Д ля каж до го нулево го элемента матрицы C0 считаем S ij0 :
0 0 0 S170 = S 31 = S 35 = S 71 = 0,
0 0 0 0 0 S140 = S 45 = S 53 = S 67 = S 76 = S 78 = 1,
0 0 0 0 S87 = 2, S 32 = 3 , S 23 = 5 . И меем max{0,1,2,3,5} = 5 = S 23 . Следо вательно , ( q, r ) = (2,3) . Ф о рмируем мно ж ества Ω1 и Ω 2 , до бавляя со о тветственно усло вия x23 = 1 и x23 = 0 . В ы числяем матрицы C1 и C2 .
C1 =
№ 1 2 4 5 6 7 8 β
1 +∞ 0 2 1 1 0 6 0
2 0 +∞ 2 0 4 3 5 3
4 0 1 +∞ 0 5 4 2 0
5 2 0 0 +∞ 3 2 8 0
6 6 1 1 1 +∞ 0 2 0
7 0 3 5 0 0 +∞ 0 0
8 5 5 1 1 4 0 +∞ 0
α 0 0 0 1 0 0 0 4
9 № 1 2 3 4 5 6 7 8 β
C2 =
1 +∞ 0 0 2 2 1 0 6 0
2 3 +∞ 0 5 4 7 6 8 0
3 1 +∞ +∞ 1 0 8 6 7 0
4 0 0 1 +∞ 1 5 4 2 0
5 2 1 0 0 +∞ 3 2 8 0
6 2 1 1 1 2 +∞ 0 2 0
8 5 0 5 1 2 4 0 +∞ 0
7 0 3 3 5 1 0 +∞ 0 0
α 0 5 0 0 0 0 0 0 5
ξ (Ω1 ) = 10 + 4 = 14 , ξ (Ω 2 ) = 10 + 5 = 15 . Считаем о ценки: В ы берем стратегию “п о минимумуо ценки” . В тако м случае дальней ш емуветвлению п о длеж ит мно ж ество Ω1 . Д ля каж до го нулево го элемента матрицы
C1 считаем
1 1 1 1 1 1 1 1 1 1 S12 = S14 = S17 = S 21 = S 25 = S 52 = S 54 = S 57 = S 71 = S 78 = 0,
S ij1 :
1 1 1 1 1 S 45 = S 67 = S 76 = S 78 = 1, S87 = 2, . И меем max{0,1,2} = 2 = S 87 . Следо вательно , ( q, r ) = (8,7) . Ф о рмируем мно ж ества Ω 3 и Ω 4 , до бавляя со о тветственно усло вия x87 = 1 и x87 = 0 . В ы числяем матрицы C3 и C 4 .
C3 =
C4 =
№ 1 2 4 5 6 7 β № 1 3 4 5 6 7 8 β
1 +∞ 0 2 1 0 0 0 1 +∞ 0 2 1 1 0 4 0
2 0 +∞ 2 0 3 3 0 2 0 +∞ 2 0 4 3 3 0
4 0 1 +∞ 0 4 4 0 4 0 1 +∞ 0 5 4 0 0
5 2 0 0 +∞ 2 2 0 5 2 0 0 +∞ 3 2 6 0
6 2 1 1 1 +∞ 0 0 6 2 1 1 1 +∞ 0 0 0
8 4 4 0 0 2 +∞ 1 7 0 3 5 0 0 +∞ +∞ 0
α 0 0 0 0 1 0 2 8 5 5 1 1 4 0 +∞ 0
α 0 0 0 0 0 0 2 2
В ы числяем о ценки: ξ (Ω 3 ) = 14 + 2 = 16 , ξ (Ω 4 ) = 14 + 2 = 16 . В со о тветствии со стратегией дальней ш емуветвлению п о длеж итмно ж ество Ω 2 , так как о но имеетнаименьш ую о ценкуξ (Ω 2 ) = 15 . А нало гично для всех нулевы х элементов матрицы C2 считаем S ij2 и о п ределяем, что ( q, r ) = (3,2) . Ф о рмируем мно ж ества Ω 5 и Ω 6 , до бавляя со о тветственно усло вия x32 = 1 и x32 = 0 . М атрицы C5 и C6 имею твид:
10
C5 =
C6 =
№ 1 2 4 5 6 7 8 β
1 +∞ 0 2 2 1 0 6 0
3 1 +∞ 1 0 8 6 7 0
4 0 0 +∞ 1 5 4 2 0
5 2 1 0 +∞ 3 2 8 0
6 2 1 1 2 +∞ 0 2 0
7 0 3 5 1 0 +∞ 0 0
8 5 0 1 2 4 0 +∞ 0
α 0 0 0 0 0 0 0 0
№ 1 2 3 4 5 6 7 8 β
1 +∞ 0 0 2 2 1 0 6 0
2 0 +∞ +∞ 2 1 4 3 5 3
3 1 +∞ +∞ 1 0 8 6 7 0
4 0 0 1 +∞ 1 5 4 2 0
5 2 1 0 0 +∞ 3 2 8 0
6 2 1 1 1 2 +∞ 0 2 0
7 0 3 3 5 1 0 +∞ 0 0
8 5 0 5 1 2 4 0 +∞ 0
α 0 5 0 0 0 0 0 0 3
В ы числяем о ценки: ξ (Ω 5 ) = 15 + 0 = 15 , ξ (Ω 6 ) = 15 + 3 = 18 . Д альней ш емуветвлению п о длеж итмно ж ество Ω 5 . Д елим Ω 5 нап о дмно ж ества Ω 7 и Ω 8 п о п аре ( q, r ) = (8,7) . Рассчитавматрицы C7 и C8 , о п ределяем ξ (Ω 7 ) = 15 + 1 = 16 , ξ (Ω 8 ) = 15 + 2 = 17 . М инимальную о ценку16 имееттри п о дмно ж ества: Ω 3 ,Ω 4 и Ω7 . В ы берем для дальней ш его ветвления Ω 3 . Д елим его нап о дмно ж ества Ω 9 и Ω10 п о п аре ( q, r ) = (6,1) . По лучим ξ (Ω 9 ) = 16 , ξ (Ω10 ) = 18 . Д алее делим Ω 9 на п о дмно ж ества Ω11 и Ω12 п о п аре ( q, r ) = (7,6) . В ы числяем ξ (Ω11 ) = 16 , ξ (Ω12 ) = 19 . Д елим Ω11 п о п аре ( q, r ) = (3,5) на Ω13 и Ω14 . При этом п о лучаем матрицуC13 размера2 × 2. В результате вы п исы ваем до п устимую точку
( xij ) =
0 0 0 0 0 1 0 0
1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 0 0 1 0 0 0
0 0 1 0 0 0 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 0
со значением целево й функции L = 16 .
Со о тветствую щ ий марш рут: 1-2-3-5-4-8-7-5-1 М еняем реко рд: R = 16 , и п о дмно ж ества Ω 4 , Ω 6 , Ω 7 , Ω 8 , Ω10 , Ω12 , Ω14 вы брасы ваю тся из рассмо трения как неп ерсп ективны е (их о ценки п ревы ш аю тили равны реко рдно музначению ). Т ак как бо льш е п о дмно ж еств для ветвления не о с-
11 тало сь, то най денная точка является о п тимальны м реш ением. О днако о но мо ж етбы тьне единственны м, так как п о дмно ж ества Ω 4 ,Ω 7 так ж е имею то ценку 16. Ч тобы вы яснить, сущ ествую т ли другие реш ения, нуж но о сущ ествлять дальней ш ее ветвление этих мно ж еств. Д ерево вариантовврассмо тренно м п римере имеетвид x23 = 1
x23 = 0
10
14
x87 = 1
x87 = 0
16
x61 = 1 16
x76 = 1
x76 = 0
x87 = 1
18
15
15
x32 = 0 18
x87 = 0 17
16
19
16
x35 = 1
16
x61 = 0
x32 = 1
x35 = 0 17
16
У ПР А Ж Н Е Н И Я 1. Предло ж итедругие стратегии ветвления взадаче ко ммиво яж ера. 2. Реш ите задачуко ммиво яж ерас матрицей : a) b) С=
+∞ 4 45 39 28 3 44
3 +∞ 17 90 46 88 26
93 77 +∞ 80 88 18 33
13 42 36 +∞ 33 46 27
33 21 16 56 +∞ 92 84
9 16 28 7 25 +∞ 39
57 34 25 91 57 7 +∞
C= C=
О твет: 1-4-6-7-3-5-2-1, L=126. c) С=
+∞ 7 20 21 12 23
27 +∞ 13 16 46 5
43 16 +∞ 25 27 5
16 1 35 +∞ 48 9
30 30 5 18 +∞ 5
26 25 0 18 5 +∞
О твет: 4-3-5-6-2-1-4, L=63. d)
+∞ 10 11 12 13 11
14 +∞ 10 4 10 9
9 7 +∞ 4 9 8
8 4 10 +∞ 7 3
10 11 20 9 +∞ 4
6 5 С= С= 11 4 10 +∞
О твет: 3-1-6-5-4-2-3, L=39.
С=
+∞ 2 8 5 6 5
4 +∞ 5 8 4 1
10 9 +∞ 5 4 4
13 7 5 +∞ 9 8
4 6 5 7 +∞ 3
8 7 9 10 4 +∞
О твет: 2-1-5-3-4-6-2, L=26.
12
§ 3. М е то две тве й и границ длялиней ных задач це ло численно го п ро граммиро вания Рассмо трим цело численную задачулиней но го п ро граммиро вания (Ц ЗЛ П): n
ϕ ( x) = ∑ c j x j → min j =1
n ∑ aij x j ≤b i , i = 1, m, Ω 0 j =1 0 ≤ x ≤ d , x ∈ Ζ, j = 1, n. j j j
Про цесс п о лучения реш ения задачи начинается с реш ения со о тветствую щ ей ей о цено чно й задачи линей но го п ро граммиро вания с о тбро ш енны м усло вием цело численно сти. Е сли п о лученная п ри этом о п тимальная точка x 0 имееттолько целы е ко о рдинаты , то о на является реш ением исхо дно й задачи. В п ро тивно м случае значение ϕ ( x 0 ) даетниж ню ю о ценкуцелево й функции. К о нкретизируем о сно вны е этап ы метода ветвей и границ п рименительно к данно й задаче. 1) В ет влен и е. Пустьx k = ( x1k ,..., xnk ) - о п тимальная точкаво цено чно й задаче намно ж естве Ω k . Е сли x k удо влетво ряеттребо ваниям цело численно сти, то мно ж ество Ω k исклю чается из дальней ш его рассмо трения (най дено о п тимально ереш ениенанем). Значение ϕ ( x k ) сравнивается среко рдны м (п ри этом во змо ж но смена реко рда). Е сли ж е естьне целая ко мп о нента x kj , то мно ж ество Ω k разбивается надвап о дмно ж естваследую щ им о бразо м: Ω k = Ω k1 ∪ Ω k2 , Ω k1 = {x ∈ Ω k , x j ≤ [ x kj ]} , Ω k2 = {x ∈ Ω k , x j ≥ [ x kj ] + 1} , где симво ло м [⋅] о бо значенацелая частьчисла. 2) В ы чи с лен и е оцен ок . О цено чно й задачей намно ж естве Ω k будетявляться задача, в ко торо й о тбро ш ено требо вание цело численно сти п еременны х. При реш ении о цено чно й задачи п о лучаем о п тимальную точку x k . Значение ϕ ( x k ) дает ниж ню ю о ценку мно ж ества Ω k (мо ж но в качестве о ценки братьцелую частьϕ ( x k ) ). Правило о бхо дадеревавариантов, вы бо р п ерсп ективно го мно ж ествап ри ветвлении и п ро верка критерия о п тимально сти о сущ ествляю тся анало гично о бщ ей схеме методаветвей и границ. С хе ма рабо ты ме то да ве тве й и границ дляЦЗЛ П Ш аг 1. О п ределение начально го реко рда. (При о тсутствии до п о лнительно й инфо рмации R= + ∞ ). Задатьk=0.
13 Ш аг 2. Реш ение о цено чно й задачи на мно ж естве Ω 0 . Е сли п о лученная точка x 0 цело численная, то реш ение най дено . О стано в. Ш аг 3. В ы бо р индекса j , тако го что ко о рдината xkj - не целая. Ш аг 4. В етвление Ω k = Ω k1 ∪ Ω k2 . Ш аг 5. Реш ение о цено чны х задач линей но го п ро граммиро вания и вы числение о цено к ξ (Ω k2 ) и ξ (Ω k1 ) . Е сли какая-то из п о лученны х о п тимальны х точек цело численная, то п ерехо д к ш агу7. Ш аг 6. В ы бо р п ерсп ективно го мно ж ества Ω s в со о тветствии со стратегией . По ло ж итьk = s. Перехо д к ш агу2. Ш аг 7. В о змо ж ная сменареко рдаи со кращ ение п еребо разасчето тбрасы вания неп ерсп ективны х мно ж еств. Ш аг 8. Про веркакритерия о п тимально сти. Е сли о н вы п о лнен, о стано в. И наче п ерехо д к ш агу6. x2 Пример. 7 (2)
− x1 − x2 → min
2 x1 + 11x2 ≤ 38, (1) x + x ≤ 7, ( 2) 1 2 Ω0 (3) 4 x1 − 5 x2 ≤ 5, x1 , x2 ≥ 0, x1 , x2 ∈ Ζ.
3
.
(3)
x0
(1)
x1
5 7 По лагаем R= + ∞ . Реш аем исхо дную задачубез требо вания цело численно сти. Графическая иллю страция реш ения п риведена на рисунке. О п тимально й точко й является x 0 = (4 94 ,2 95 ) , ξ (Ω 0 ) = ϕ ( x 0 ) = −7 . Т ак как точка не цело численная, о сущ ествляем ветвление (нап ример, п о п ерво й ко о рдинате): Ω 0 = Ω1 ∪ Ω 2 , Ω1 = {x ∈ Ω 0 , x1 ≤ 4} , Ω 2 = {x ∈ Ω 0 , x1 ≥ 5} . Реш аем две задачи линей но го п ро граммиро вания, заклю чаю щ иеся в минимизации функции ϕ (x) намно ж ествах Ω1 и Ω 2 без требо вания цело численно сти. По лучаем x1 = ( 4,2 118 ) , ξ (Ω1 ) = −6 , Ω 2 = Ø . По лагаем ξ (Ω 2 ) = +∞ . Т ак как цело численно го реш ения о п ятьне п о лучено , о сущ ествляем ветвления мно ж ества Ω1 : Ω 3 = {x ∈ Ω1 , x2 ≤ 2} , Ω 4 = {x ∈ Ω1 , x2 ≥ 3} . Реш аем о цено чны е задачи на мно ж ествах Ω 3 и Ω 4 . По лучаем x 3 = (3 34 ,2) , ξ (Ω 3 ) = −5 , x 4 = (2 12 ,3) , ξ (Ω 4 ) = −5 . В о сп о льзуемся стратегией о дно сторо ннего о бхо даи вы берем для дальней ш его ветвления мно ж ество Ω 3 . По лучим: Ω 3 = Ω 5 ∪ Ω 6 , Ω 5 = {x ∈ Ω 3 , x1 ≤ 3} , Ω 6 = {x ∈ Ω 3 , x1 ≥ 4} .
14 Реш аем о цено чны е задачи на мно ж ествах Ω 5 и Ω 6 . По лучаем x 5 = (3,2) , ξ ( Ω 5 ) = ϕ ( x 5 ) = −5 , Ω 6 = Ø . По лучено цело численно е реш ение. Про исхо дитсменареко рдаR=-5. М но ж ества Ω 6 , Ω 4 и Ω 2 вы брасы ваем из рассмо трения как неп ерсп ективны е(их о ценки п ревы ш аю тили равны реко рдно музначению ). Т ак как п ерсп ективны х мно ж еств для ветвления не о стало сь, то о стано в, п о лучено о п тимально е реш ение: x min = (3,2) , ϕ min = −5 . Д ерево вариантоввданно й задаче имеетвид: x1 ≤ 4 -6
x2 ≤ 2 -5
x1 ≤ 3 -5
x2 ≥ 3
-7
x1 ≥ 5 +∞
-5
x1 ≥ 4 +∞
У ПР А Ж Н Е Н И Я 1. По каж ите, что лю бая задачацело численно го п ро граммиро вания мо ж етбы ть эквивалентно п ереп исанакак задачас булевы ми п еременны ми. 2. По льзуясьо п ределением о ценки до каж ите, что задача с о тбро ш енны м усло вием цело численно сти является о цено чно й к исхо дно й . 3. Реш итьЦ ЗЛ П: c) − x1 − 4 x2 → min b) − 3 x1 − 4 x2 → min a) − 2 x1 − 3 x2 → min − x1 + 2 x2 ≤ 10, − x1 + 5 x2 ≤ 15, − x1 + 3x2 ≤ 11, 2 x1 + 2 x2 ≤ 13,
x1 + x2 ≤ 11 13 ,
x1 + x2 ≤ 7 12 ,
2 x1 − x2 ≤ 11,
2 x1 − x2 ≤ 10,
2 x1 − x2 ≤ 10,
x1 , x2 ≥ 0, x1 , x2 ∈ Ζ
x1 , x2 ≥ 0, x1 , x2 ∈ Ζ
x1 , x2 ≥ 0, x1 , x2 ∈ Ζ
О твет: x min =(2,4)
О твет: x min =(7,4)
О твет: x min =(2,5)
15
ЗА Д А Ч А О Н А ЗН А Ч Е Н И ЯХ В Е Н Г Е РС К И Й М Е Т ОД РЕ Ш Е Н И Я § 4. По стано вка задачи. Н е ко то рые сво й ства Пустьимею тся n п ретендентов (каж до муиз них о твечаетиндекс i, i = 1, n ) наn местрабо ты (каж до муиз них о твечаетиндекс j , j = 1, n ). При этом известна стоимо стьcij затрат, связанны х с назначением i -го п ретендента на j -е место. Т ребуется расп ределитьп ретендентов п о рабо чим местам так, чтобы каж ды й п ретендентзанял о дно место, каж до е место бы ло занято о дним п ретендентом и так, чтобы связанны е с этим расп ределением суммарны е затраты бы ли минимальны ми. Д ля п о лучения математическо й зап иси задачи о назначениях мо ж но ввести 2 n п еременны х следую щ им о бразо м: 1, если i-й п ретендентназначен наj-e место, xij = 0, вп ро тивно м случае. Т еп ерьзадачап ринимаетследую щ ий вид: n
n
L( X ) = ∑ ∑ cij xij → min i =1 j =1
n ∑ xij = 1, j = 1, n, i =1 n Ω ∑ xij = 1, i = 1, n, j =1 x ∈{0,1}, i, j = 1, n. ij Заме чание . Е сли п о следние о граничения заменить усло виями вида 0 ≤ xij ≤ 1, ∀i, j , то п о лученная задача является частны м случаем трансп о ртно й задачи, уко торо й , как известно , о п тимально е реш ение всегда сущ ествует. Т аким о бразо м, задачуо назначениях мо ж но реш атьм ет од ом п от ен ци алов, п ричем в со о тветствии со сп ецифико й этого метода мо ж но утверж дать, что реш ением является n 2 - мерны й вектор, или матрица п о рядка n×n, элементы ко торо й равны 0 или 1. Э то о значает, что п о лученны й о тветбудеттакж е являться о тветом в исхо дно й задаче о назначениях. О днако начальная базисная точка, п о лученная, нап ример, п о методус еверо-зап ад н огоугла, со держ итне m+n-1=2n-1, а всего лиш ьn ненулевы х ко мп о нентравны х 1, cледо вательно , п ри n ≥ 2 этотп лан стано вится вы ро ж денны м. К ак известно , это о бстоятельство сущ ественно усло ж няетвы числительную п ро цедуруреш ения трансп о ртно й задачи. По этой п ричине для реш ения задачи о назначениях сущ ествую тсп ециальны е методы . Рассмо трим о дин из них, ко торы й но ситназвание вен герс к и й м ет од .
16 В дальней ш ем нам п о требуется следую щ ее о п ределение. О п ре де ление . Л ю бы е k элементов( k = 2, n ) матрицы C= (cij ) п о рядкаn×n назы ваю тся н езави с и м ы м и , если всякие дваиз них расп о лагаю тся вразны х стро ках и вразны х столбцах. Т еп ерьмо ж но п ерефо рмулиро ватьзадачуо назначениях следую щ им о бразо м: с ред и n 2 элем ен т ов д ан н ой м ат ри цы C н ай т и n н езави с и м ы х элем ен т ов n
ci s j s , s = 1, n , т ак и х , чт ос ум м а ∑ ci s j s м и н и м альн а. s =1
Д ля о бо сно вания венгерско го методап о требую тся следую щ ие п о нятия и утверж дения. М ат ри цей н азн ачен и й п о рядкаn×n назы вается матрица, вко торо й имею тся n независимы х единиц и n 2 − n = n(n − 1) нулей . И ны ми сло вами, это матрица, у ко торо й вкаж до й стро ке и вкаж до м столбце имеется ро вно о днаединица, ао стальны е элементы являю тся нулями. О бо значим через Ω до п устимо е мно ж ество задачи о назначениях. В со о тветствии с о п ределением матриц назначений мо ж но утверж дать, что мно ж ество таких матриц со ставляетдо п устимо е мно ж ество Ω . Заме чание . В се задачи о назначениях размераn×n имею то дно и то ж е до п устимо е мно ж ество и о тличаю тся друг о тдругатолько ко эффициентами целево й функции, т.е. матрицей C= (cij ) . Т е о ре ма 1. Е сли элементы матриц C и D п о рядкаn×n связаны равенствами d ij = cij + α i + β j , то задачи о назначениях с данны ми матрицами C и D эквивалентны , т.е. мно ж естваих реш ений (о п тимальны х точек) со вп адаю т. Док азат ельс т во. В о -п ервы х, как о тмечало сьвы ш е, до п устимы е мно ж ества о беих задач со вп адаю т. В о -вторы х, сравним значения целевы х функций о беих задач, исп о льзуя о граничения. В результате п о лучаем цеп о чкуравенств n
n
n
n
n
n
n
n
∑ ∑ d ij xij =∑ ∑ cij xij + ∑ ∑ α i xij + ∑ ∑ β j xij = i =1 j =1
n
n
i =1 j =1
n
n
i =1 j =1
n
n
i =1 j =1
n
n
n
n
n
n
= ∑ ∑ cij xij + ∑ α i ∑ xij + ∑ β j ∑ xij =∑ ∑ cij xij + ∑ α i + ∑ β j = ∑ ∑ cij xij + F , i =1 j =1 i =1 j =1 j =1 i =1 i =1 j =1 i =1 j =1 1i =1 44 2 4j =143 const
из ко торо й следует, что значения двух целевы х функций с матрицами C и D о тличаю тся на п о стоянную F. Э то о значает, что минимумы этих функций до стигаю тся во дних и тех ж е точках (нао дних и тех ж е матрицах назначений ). Т ео ремадо казана. В дальней ш ем п рео бразо вания вида d ij = cij + α i + β j (до бавление ко всем элементам лю бо й стро ки или лю бо го столбцао дно го и того ж е числа) будем назы ватьэк ви вален т н ы м и п реобразован и ям и .
17 С ледствие . В сегдамо ж но считать, что все элементы матрицы C нео трицательны , т.е. cij ≥ 0, ∀i, j. Д ей ствительно , этого мо ж но до биться п рименением эквивалентны х п рео бразо ваний . Т е о ре ма 2. Пустьвсе элементы матрицы C нео трицательны , т.е. cij ≥ 0, ∀i, j. Е сли вней имею тся n независимы х нулевы х элементов cij = 0, то их сумма является минимально й . Док азат ельс т во. К ако вабы ни бы ладо п устимая точка X ∈ Ω , n
n
L( X ) = ∑ ∑ cij xij ≥ 0 .В ведем матрицуназначений X 0 с единицами именно на i =1 j =1
тех местах, где расп о ло ж ены вы бранны е независимы е элементы cij = 0 . Т о гда L( X 0 ) = 0 , следо вательно , X 0 о п тимальная точка. Т ео ремадо казана.
§ 5. В е нге рский ме то д А лго ритм венгерско го методавклю чаетвсебя 4 этап а. 1. Приведениематрицы . 2. В ы числение максимально го числа k независимы х нулей в п риведенно й матрице. 3. По лучениено вы х нулей п ри k < n . 4. О ты скание n независимы х нулей п ри k = n . Рассмо трим каж ды й этап п о дро бнее. Эт ап 1. М атрица C назы вается п ри вед ен н ой , если все ее элементы нео трицательны и, кро ме того , в каж до й стро ке и в каж до м столбце имею тся нулевы е элементы . Т аким о бразо м, п риведенная матрицаC удо влетво ряетдвум усло виям: 1. cij ≥ 0, ∀i, j. 2. ∃cij = 0, ∀i, u ∃cij = 0, ∀j. Д ля п риведения матрицы C с элементами cij ≥ 0 нуж но во сп о льзо ваться эквивалентны ми п рео бразо ваниями. При этом вначале о сущ ествляется п риведениематрицы п о стро кам, т.е. ищ ется наименьш ий элементα i вкаж до й стро кеи о сущ ествляется п ерехо д к матрице C ' с элементами cij ' = cij − α i . Е сли матрица C ' о казы вается неп риведенно й п о столбцам, то ищ ется наимень ш ий элемент β j вкаж до м столбце и о сущ ествляется п ерехо д к матрице C ' ' , элементы ко торо й вы числяю тся следую щ им о бразо м: cij ' ' = cij '− β j . М атрица п о п о стро ению является п риведенно й .
18 Приме р 1. Пусть
С=
2 1 2 1 1
1 3 7 5 3
2 5 8 4 4
1 7 6 7 9
0 4 9 8 10
Л егко п ро верить, что
C' =
2 0 0 0 0
1 2 5 4 2
2 4 6 3 3
1 6 4 6 8
0 3 7 7 9
,A C ' ' =
2 0 0 0 0
0 1 4 3 1
0 2 4 1 1
0 5 3 5 7
0 3 7 7 9
,
п ричем матрица C ' ' является п риведенно й . Эт ап 2. При вы числении максимально го числа k независимы х нулей в п риведенно й матрице о бы чно о рганизую тп о лны й п еребо р всево змо ж ны х вариантов. При этом нео бхо димо во сп о льзо ваться следую щ им утверж дением: Т е о ре ма 3. М аксимально е число независимы х нулей равно минимально му суммарно мучислуго ризо нтальны х и вертикальны х линий (стро к и столбцо в), ко торы ми мо ж но зачеркнутьвсе нулевы е элементы п риведенно й матрицы . Приме р 2. Пустьимеется п риведенная матрицаиз п римера1. C'' =
2 0 0 0 0
0 1 4 3 1
0 2 4 1 1
0 5 3 5 7
0 3 7 7 9
В се ее нули со держ ат1-я го ризо нтальи 1-я вертикаль, следо вательно , здесь k=2 < 5. При реш ении задачи о назначениях будем п ро во дитьуказанны е линии, врезультате чего неко торы е элементы о каж утся зачеркнуты ми, другиезачеркнуты ми дваж ды и о стальны е- незачеркнуты ми. Эт ап 3. О бо значим через cijr элементп риведенно й матрицы C ' ' , зачеркнуты й r раз (r=0, 1, 2) на2-м этап е, и п о ло ж им α = min cij0 , гдеминимум берется п о всем i, j, т.е. ищ ется наименьш ий из незачеркнуты х элементовматрицы C ' ' . По стро им матрицуC1 , п ро ведя п ересчетэлементовматрицы C ' ' следую щ им о бразо м: a) из элементов cij0 вы читается значение α ; b) элементы c1ij о стаю тся без изменения; c) к элементам cij2 п рибавляется значение α . Т акие п рео бразо вания являю тся следствием п рименения Т ео ремы 1, со гласно
19 ко торо й задачас но во й матрицей C 1 о казы вается эквивалентно й исхо дно й и, кро ме того , элементы этой но во й матрицы нео трицательны . Е сли C1 о казаласьнеп риведенно й матрицей , то следуетп ерей ти к этап у1. Е сли ж е C 1 - п риведенная матрица, то п ерехо дятк этап у2. Приме р 3. В зявматрицуC ' ' из п римера2, п ересчитаем ее элементы п ри α = 1 , витоге п о лучим п риведенную матрицу
1
C =
3 0 0 0 0
0 0 3 2 0
0 1 3 0 0
0 4 2 4 6
0 2 6 6 8
В се ее нули со держ ат, нап ример, 1-я го ризо нтальи три вертикали: 1-я, 2-я, 3-я. Следо вательно , здесьk=4 < 5 и α = 2 . Е щ е о дин п ересчетдаетп риведенную матрицу
2
C =
5 0 0 0 0
2 0 3 2 0
2 1 3 0 0
0 2 0 2 4
0 0 4 4 6
Здесьуж е k=n=5. Эт ап 4. О ты скание n независимы х нулей о сущ ествляется п еребо ро м всех во змо ж ны х вариантов. У до бно п еребо р начинатьс о ты скания стро к или столбцо в, со держ ащ их единственны й нулево й элемент, п о ско лькутако й элементо бязательно во й детвгруп п унезависимы х. В ы бравэлементcls , исклю чаю тиз рассмо трения l -ю стро куи s -й столбец, п о сле чего п ерехо дятк о ты сканию следую щ его единственно го нулево го элементастро ки или столбцао ставш ей ся части матрицы . Д ей ствуя п о до бны м о бразо м, мо ж но столкнуться со следую щ ими двумя ситуациями. 1. В результате удается вы братьn независимы х нулей . О СТ А Н О В . В ы п исать о твет. 2. Н анеко торо м ш аге все о ставш иеся стро ки и столбцы со держ атбо лее о дно го нулево го элемента. В этом случае вы бирается лю бо й нулево й элемент, "п о мечается" но мер стро ки, из ко торо й вы бран 0, и о сущ ествляется п ерехо д к вы бо руследую щ его нулево го элемента. Е сли таким о бразо м удается вы братьвсе n независимы х нулей , то О СТ А Н О В . В ы п исатьо твет. В п ро тивно м случае следуетво звратиться к п о меченно й стро ке и вы братьиз нее друго й нулево й элемент. По этой схеме надо дей ство ватьдо тех п о р, п о ка не п о лучим n независимы х нулей .
20 Приме р 4. В зявматрицуC 2 из п римера3, замечаем, что независимы ми здесьбудутнули с индексами (1, 5), (2, 2), (3, 4), (4, 3), (5, 1). Э то о значает, что о тветом взадаче о назначениях с матрицей C из п римера1 является матрицаназначений вида 0 1 0 0 0
0 0 0 0 1
1 X min =
0 0 0 1 0
0 0 1 0 0
1 0 0 0 0
,;;;для ко торо й Lmin ( X 1 ) = 14 .
В аж но о тметить, что нарядус указанны ми, здесьбудуттакж е независимы ми нули с индексами (1, 4), (2, 5), (3, 1), (4, 3), (5, 2). Следо вательно , этазадачао назначениях имеетещ е о дин о твет- матрицуназначений вида
2 X min
0 0 1 0 0
=
0 0 0 0 1
0 0 0 1 0
1 0 0 0 0
0 1 0 0 0
, п ричем Lmin ( X 2 ) = 14 .
У ПР А Ж Н Е Н И Я 1. Я вляется ли данная матрица п риведенно й ? У каж ите ко личество в ней независимы х нулей . а) в) п п C=
2 0 0 0 0
0 1 4 3 1
0 2 4 1 1
0 5 3 5 7
0 3 7 7 9
0 1 3 2 4
бьбьбюб C =
1 -1 0 5 3
3 6 -4 0 8
2 0 3 -5 7
4 3 8 7 0
2. Реш ите задачуо назначениях с матрицей С вида: а) 2 C= 1 2 1 f 1 2
в) 2 3 7 5 3 4
1 5 8 4 4 6
2 6 5 7 9 5
1 9 3 8 5 3
0 4 б 6 3 6 1
3 ьC = 4 7 1 3 1
c) 4 3 6 4 2 6
2 6 2 7 4 5
1 7 6 8 8 4
3 3 3 3 4 9
0 4 mdhsj C = 5 2 6 2
2 3 6 3 8 1
3 5 7 5 3 5
4 6 2 7 5 6
2 7 6 4 2 4
4 4 2 3 1 9
0 3 6 1 2 1
21
М Е Т ОД Ы ОТ С Е Ч Е Н И Й § 6. Пе рвый алго ритм Г о мо ри Рассмо трим цело численную задачулиней но го п ро граммиро вания в следую щ ей фо рме: n
ϕ ( x) = ∑ c j x j → min
(1)
j =1
n
∑ aij x j ≤bi , i = 1, m,
(2)
x j ≥ 0,
(3)
j =1
x j ∈ Ζ, j = 1, n. (4) И дея методо во тсечений со стоитвследую щ ем. Про цессп о лучения реш ения задачи начинается с реш ения со о тветствую щ ей ей о цено чно й задачи линей но го п ро граммиро вания (1)-(3) с о тбро ш енны м усло вием цело численно сти. Е сли п о лученная п ри этом о п тимальная точка x 0 имееттолько целы е ко о рдинаты , то о на является реш ением задачи (1)-(4). Е сли п о лученно е реш ение нецело численно е, то вво дится до баво чно е о граничение, ко торо е о тсекаетчастьо бласти до п устимы х реш ений задачи (1)-(3) вместе с най денны м нецело численны м реш ением, со храняя п ри этом все цело численны е точки. Затем рассматривается реш ение исхо дно й задачи (1)-(3) с учетом но во го о граничения. Е сли о но нецело численно е, то вво дится но во е о граничение и так до тех п о р, п о ка не будет най дено цело численно е о п тимально е реш ение. Правила фо рмиро вания о тсекаю щ их о граничений бы ли разрабо таны американским учены м Р. Го мо ри. И дея метода, названно го п ервы м алгори т м ом Гом ори , заклю чается в следую щ ем. Пустьв результате реш ения задачи (1)-(3) симп лекс-методо м п о лучена нецело численная о п тимальная точка. Заклю чительная симп лекс-таблица со держ итуравнения вида: bi = xi + ∑ aij x j , (5) j∈ J
i ∈ I , где I- мно ж ество базисны х п еременны х, J- мно ж ество небазисны х п еременны х задачи, bi и aij - п ересчитанны е к данно муш агузначения bi и aij .
В ы берем индекс i ∈ I , тако й что базисная ко о рдината xi = bi - дро бная. По о п ределению цело й части числа имеем: y ≥ [ y ] . Т ак как x j ≥ 0, ∀j , то ∑ aij x j ≥ ∑ [aij ]x j . Следо вательно , с учетом равенства (5) имеем: j∈ J
bi ≥ xi +
j∈ J
∑ [aij ]x j j∈ J
. Е сли п еременны е x j ∈ Ζ, j = 1, n , то п о следнее неравенство
мо ж но п ереп исатьтак: [bi ] ≥ xi +
∑ [aij ]x j j∈ J
В ы читая из равенства(5) неравенство (6), п о лучаем неравенство
(6)
22 {bi } ≤
∑ {aij }x j ,
(7)
j∈J
где симво ло м {y} о бо значенадро бная частьчислаy. Н еравенство (7) верно для всех до п устимы х целы х точек взадаче(1)-(3). О днако ко о рдинаты п о лученно го нецело численно го реш ения не удо влетво ряю тэтомуо граничению , так как для него все небазисны е п еременны е x j = 0, j ∈ J , и , следо вательно , {bi } ≤ 0 , что нево змо ж но для нецело го числап о о п ределению дро бно й части . Н еравенство (7) мо ж етбы тьисп о льзо вано для до п о лнительно го о тсекаю щ его о граничения. В п риведенную к кано ническо й фо рме задачу его вво дятввиде (8) ∑ {aij }x j − xn + m +1 = {bi }, j∈ J
где xn + m +1 - до п о лнительная п еременная (По сле п риведения задачи (1)-(3) к кано ническо мувидуп еременны х вней будетn + m ). Заме чание 1. Д о реш ения задачи симп лекс-методо м все исхо дны е данны е до лж ны бы тьп риведены к целы м. И наче, нап ример, неравенство x1 + x2 ≤ 15 / 2 п о сле п риведения к кано ническо й фо рме п риметвид x1 + x2 + x3 = 15 / 2 , а это уравнение неразреш имо вцелы х числах. А лго ритмиче скаясхе ма ме то да Ш аг 1. Н ай ти точку x1 - реш ение задачи линей но го п ро граммиро вания (1)-(3) (без усло вия цело численно сти). По ло ж итьк =1. Ш аг 2. Е сли x k -цело численная, то реш ение най дено , о стано в. И наче зафиксиро ватьмно ж естваI и J –индексо вбазисны х и небазисны х п еременны х. Ш аг 3. В ы братьно мер i ∈ I тако й , что ко о рдината xik - дро бная. Ш аг 4. Д о бавить в симп лекс-таблицу но во е о граничение: ∑ {aij }x j − xn + m + k = {bi } . j∈ J
Ш аг 5. С учетом до бавленно го о граничения о ты скатьно во е реш ение x k +1 . По ло ж итьk=k+1. Перей ти наш аг 2. Заме чание 2. И сп о льзо вание о бы чно го симп лекс-методап ри реш ении данно й задачи неудо бно , так как до бавление но во го о граничения каж ды й раз будет п риво дитьк нео бхо димо сти вы зо ваметодаискусственно го базиса. Бо лее п редп о чтительны м в данно й ситуации является дво й ственны й симп лекс-алго ритм. В тако м случае но во е о граничение вво дится всистемуввиде: − ∑ {aij }x j + xn + m + k = −{bi } , j∈J
и п еременная xn+ m+ k стано вится базисно й . Со гласно дво й ственно мусимп лексметоду, исклю чению из базиса п о длеж итта п еременная xl , значение ко торо й о трицательно . (Е сли все базисны е п еременны е нео трицательны , то имею щ ееся
23 реш ение о п тимально ). Д ля вво да в базис вы бирается та из небазисны х п ере∆ менны х xk , для ко торо й alk < 0 и о тно ш ение k минимально . | alk | Приме р. Реш итьзадачуцело численно го линей но го п ро граммиро вания. ϕ ( x) = x1 + 4 x2 → max − x1 + 2 x2 ≤ 10 x1 + x2 ≤ 15 / 2 2 x1 − x2 ≤ 10 x1 , x2 ≥ 0, x1 , x2 ∈ Ζ Р е ш е ние . Приведем задачук кано ническо мувиду(п редварительно умно ж ив второ е о граничение на2). x1 + 4 x2 → max − x1 + 2 x2 + x3 = 10 2 x1 + 2 x2 + x4 = 15 2 x1 − x2 + x5 = 10 x j ≥ 0, x j ∈ Ζ, j = 1,5 О фо рмим реш ение ввиде симп лекс-таблицы B
CB
b
x3 x4 x5 ∆j x2 x4 x5 ∆j x2 x1 x5 ∆j x6 x2 x1 x5 x3 ∆j x7 x2 x1 x5 x3 x6 ∆j
0 0 0
10 15 10
4 0 0
5 5 15
4 1 0
35/6 5/3 25/2
0 4 1 0 0
-2/3 11/2 2 23/2 1
0 4 1 0 0 0
-1/2 5 5/2 10 5/2 1
1 x1 -1 2 -1 -1 -1/2 3 3/2 -3 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0
4 x2 2 2 -1 -4 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0
0 x3 1 0 0 0 1/2 -1 1/2 2 1/3 -1/3 1 1 -2/3 0 0 0 1 0 0 0 0 0 1 0 0
0 x4 0 1 0 0 0 1 0 0 1/6 1/3 -1/2 1 -1/3 0 1/2 -1 1/2 1/2 0 0 1/2 -1 1/2 0 1/2
0 x5 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0
0 x6
0 x7
0 x8
Θ
К о мментарий
10/2 15/2 5/3 10 0 0 0 1 1/2 -1/2 3/2 -3/2 3/2 -1/2 0 0 0 0 1 0
Н ай дена точка x1 ! 0 0 0 0 1 1 -1 -6 6 -2 3
Н ай дена точка x2 ! 0 0 0 0 0
Н ай дена точка x3 !
24 x8 x2 x1 x5 x3 x6 x4 ∆j
0 4 1 0 0 0 0
-1/2 5 2 11 2 1 1
0 0 1 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 0 0 1 0 0 0
-1/2 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0
0 0 0 0 0 1 0 0
0 1 -1 -6 6 -2 0 3
1 0 1 -2 1 0 -2 1
Н ай дено цело числ. реш ение!
Н а 3-й итерации симп лекс-метода най дено нецело численно е реш ение 5 35 25 5 x1 = ( , ,0,0, ) . В ы бираем, нап ример, x11 = - дро бную базисную ко о рди3 6 2 3 нату и п о со о тветствую щ ей стро ке таблицы фо рмируем но во е о граничение: {13}x3 − {13}x4 + x6 = −{53} . И ли: 13 x3 − 13 x4 + x6 = − 23 . Д о бавляем это о граничение в таблицуи о сущ ествляем о днуитерацию дво й ственно го симп лекс-метода. В ре11 23 зультате п о лучаем точку x 2 = ( 2, ,1,0, ,0) . В ы бираем дро бную ко о рдинату 2 2 11 x22 = и до бавляем о граничение − 12 x6 + x7 = − 12 и т.д. 2 Н ап о следней итерации п о лученаточка x 4 = (2, 5, 2,1,11,1,0, 0) , ко торая является цело численно й . О стано в. От вет : x* = ( 2, 5) , ϕ ( x* ) = 22. У ПР А Ж Н Е Н И Я 1. Реш итьЦ ЗЛ П методо м о тсечений : c) x1 + 4 x2 → max
a) 3x1 + 4 x2 → max
b) x1 + 2 x2 → max
x1 − x2 ≤ 7 / 2,
− 2 x1 + x2 ≤ 4,
− x1 + 2 x2 ≤ 10,
2 x1 ≤ 11,
− x1 + 5 x2 ≤ 40,
− 7 x1 + 11x2 ≤ 0,
6 x1 + x2 ≤ 48,
x1 + x2 ≤ 7 12 ,
x1 , x2 ≥ 0, x1 , x2 ∈ Ζ
x1 , x2 ≥ 0, x1 , x2 ∈ Ζ
О твет: x max =(5,3)
О твет: x max =(6,9)
2 x1 − x2 ≤ 10, x1 , x2 ≥ 0, x1 , x2 ∈ Ζ О твет: x max =(2,5)
25
Л И Т Е РА Т У РА О снов на я: 1. А ттетко в А . В . М етоды о п тимизации/ А . В . А ттетко в, С.В . Галкин, В .С. Зарубин.- М .: И зд-во М ГТ У им. Баумана, 2001.- 480 с. 2. Л етоваТ .А . М етоды о п тимизации вп римерах и задачах/ Т .А .Л етова, А .В . Пантелеев.-M.: В ы сш ая ш ко ла, 2002.- 544 с. 3. Л есин В .В О сно вы методо во п тимизации: У чеб. п о со бие/ В .В . Л есин, Ю .П. Л исо вец. - М .: И зд-во М А И , 1998. - 344 с. 4. Сигал И .Х . В ведение вп рикладно е дискретно е п ро граммиро вание: мо дели и вы числительны е алго ритмы / И .Х . Сигал, А .П. И вано ва.- И зд-во Ф изматлит, 2003.- 240 с. Д оп ол ни т ел ьна я: 1. К о рбутА .А . Д искретно е п ро граммиро вание/ К о рбутА .А ., Ф инкельш тей н Ю .Ю . -М .:Н аука.Гл.ред.физ.-мат.лит., 1978.-368c. 2. Пап адимитриуХ . К о мбинаторная о п тимизация (алго ритмы и сло ж но сть)/ Х . Пап адимитриу, К . Стай глиц .-M.: М ир, 1985.- 352 с.
26
Со ставители:
Ч ерны ш о ваГалинаД митриевна, К аш иринаИ ринаЛ ео нидо вна
Редактор
БунинаТ . Д .