Alkalmazott Matematikai Lapok 30 (2013), 1-21.
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE ´ ´ SZABALYOK ´ ´ ´ INDEXVALASZT ASI ALKALMAZASA ESETEN ´ TIBOR, NAGY ADRIENN ILLES
Dolgozatunkban bebizony´ıtjuk a kvadratikus prim´ al szimplex m´ odszer v´egess´eg´et, a line´ aris felt´eteles, konvex kvadratikus optimaliz´ al´ asi feladatra, cikliz´ al´ as elleni indexv´ alaszt´ asi szab´ alyok alkalmaz´ as´ aval. Az eredeti kvadratikus prim´ al szimplex m´ odszert Wolfe, illetve van de Panne ´es Whinston dolgozt´ ak ki, ´es t¨ obb cikkben publik´ alt´ ak az 1960-as ´evekben. Az eml´ıtett szerz˝ ok, a kvadratikus prim´ al szimplex m´ odszer v´egess´eg´et az u ´n. perturb´ aci´ os elj´ ar´ asra alapozva igazolt´ ak. Megmutatjuk, hogy a kvadratikus szimplex m´ odszer cikliz´ al´ as´ ahoz sz¨ uks´eges, hogy a feladat degener´ alt legyen (degener´ alt feladat olyan, amelyben minden b´ azisbeli, a h´ anyadosteszt r´esz´et k´epez˝ o prim´ al v´ altoz´ o ´ert´eke nulla), tov´ abb´ a a feladathoz tartoz´ o Karush–Kuhn–Tucker-rendszerben a transzform´ alt oszlopokban a kvadratikus c´elf¨ uggv´enynek megfelel˝ o komponensek null´ ak. Gondolatmenet¨ unkb˝ ol k¨ ovetkezik, hogy a kvadratikus prim´ al szimplex m´ odszer v´eges mindazon indexv´ alaszt´ asi szab´ alyok eset´en, melyek kiz´ ar´ olag a transzform´ alt jobboldal ´es reduk´ alt k¨ olts´egek el˝ ojel´ere hagyatkoznak, ´es melyek alkalmaz´ asa eset´en a line´ aris programoz´ asi feladatra kidolgozott, hagyom´ anyos prim´ al szimplex algoritmus v´eges.
1. Bevezet˝ o Az 1950-es ´evek kezdet´et˝ ol, t¨ obbsz¨ or az ´erdekl˝od´es k¨oz´eppontj´aba ker¨ ult, a k¨ovetkez˝o line´ aris felt´eteles, kvadratikus optimaliz´ al´ asi feladat (LKOF) 1 T x Qx + cT x 2 Ax ≤ b, x ≥ 0,
min
ahol Q ∈ Rn×n ´es A ∈ Rm×n m´atrixok, illetve c ∈ Rn ´es b ∈ Rm vektorok, x ∈ Rn az ismeretlenek vektora. A megenegedett megold´ asok halmaza P = {x ∈ Rn : Ax ≤ b, x ≥ 0} ⊂ Rn Alkalmazott Matematikai Lapok (2013)
2
´ TIBOR ES ´ NAGY ADRIENN ILLES
egy konvex poli´eder, ´es a c´elf¨ uggv´eny f : P → R kvadratikus f¨ uggv´eny, amelyet f (x) =
1 T x Qx + cT x 2
alakban adunk meg. Valamely x∗ ∈ P megengedett megold´ast optim´ alis megold´asnak nevez¨ unk, ha f (x∗ ) ≤ f (x)
teljes¨ ul, b´armely x ∈ P
eset´en. Most m´ar bevezethetj¨ uk az optim´ alis megold´ asok halmaz´at az al´abbi form´aban: P ∗ = {x∗ ∈ P : f (x∗ ) ≤ f (x) teljes¨ ul, b´armely x ∈ P}. A kutat´asok homlokter´ebe m´ar az 1960-as ´evekben, a line´aris felt´eteles, kvadratikus optimaliz´ al´ asi feladat (hat´ekony) megoldhat´os´ag´anak, illetve alkalmaz´asi ter¨ ulet´enek a vizsg´ alata ker¨ ult. A j´ ol megoldhat´o r´eszoszt´alyok beazonos´ıt´asa ´es le´ır´asa gyorsan megt¨ ort´ent, hiszen, ha Q pozit´ıv szemidefinit m´atrix, akkor a fenti feladat konvex programoz´ asi feladat. A line´aris felt´eteles, kvadratikus optimaliz´al´asi feladat megold´as´ara m´ar az 1950-es ´evek v´eg´en, az 1960-as ´evek elej´en ´altal´anos´ıtott´ak a szimplex m´odszert. A hagyom´anyos kvadratikus szimplex algoritmus t´emak¨or´eben sz´amos publik´aci´o jelent meg [28, 29, 30, 31, 36]1 . A line´aris felt´eteles, kvadratikus optimaliz´al´asi feladatokb´ol kiindulva k¨onnyen fel´ırhat´ok az u ´n. ´ altal´ anos line´ aris komplementarit´ asi feladatok, amelyek igen sz´eles alkalmaz´asi ter¨ ulettel rendelkeznek, ez´ert a kezdetekt˝ol n´epszer˝ uek voltak a kutat´ok k¨or´eben. Line´ aris komplementarit´ asi feladatok megold´as´ara is pivot algoritmusokat dolgoztak ki el˝ osz¨ or. Ezek k¨ oz¨ ul a legismertebb a Lemke- [26] ´es a criss–cross algoritmus [21]. Terlaky algoritmusa [32] nem ig´enyli a pivot t´abla megnagyobb´ıt´ as´ at. A line´aris komplementarit´ asi feladatok megoldhat´os´ag´anak k´erd´ese ¨osszef¨ ugg a feladat m´atrix´anak tulajdons´ag´ aval. Az egyik ´erdekes kutat´asi ir´any a line´aris komplementarit´ asi feladatok eset´en az volt, hogy a criss–cross algoritmus ´altal´anos´ıt´as´anak seg´ıts´eg´evel milyen tulajdons´ aggal kell, hogy rendelkezzen a feladat m´atrixa annak ´erdek´eben, hogy a feladat v´eges l´ep´esben megoldhat´o legyen. Ezen a ter¨ uleten az els˝ o eredm´enyeket, az u ´n. biszimmetrikus m´atrixokkal adott line´aris komplementarit´ asi feladatok eset´en ´ert´ek el a kutat´ok, igazolva, hogy a criss-cross algoritmus megfelel˝ o vari´ ansa, cikliz´ al´ as ellenes indexv´alaszt´asi szab´alyok alkalmaz´as´aval, v´eges [1, 21, 34]. Az igazi elm´eleti k´erd´es az volt, hogy milyen tulajdons´agokkal kell rendelkeznie a m´atrixnak ahhoz, hogy a line´ aris komplementarit´asi feladat a konvex optimaliz´al´asi feladatok k¨ oz´e tartozzon ´es a pivot algoritmusok v´eges sok l´ep´esben 1 Ezeknek k¨ oz¨ os jellemz˝ oje, hogy az algoritmus v´ egess´ eg´ enek a bizony´ıt´ as´ ara az u ´n. perturb´ aci´ os m´ odszert alkalmazz´ ak.
Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
3
megoldj´ak a feladatot. Mint k´es˝ obb kider¨ ult, a Cottle ´es t´arsszerz˝oi [4] ´altal bevezetett el´egs´eges m´ atrixok oszt´ alya biztos´ıtja ezt [12]. Term´eszetes m´odon mer¨ ult fel az a k´erd´es, hogy mi t¨ ort´enik, ha a line´ aris komplementarit´asi feladat m´atrix´anak tulajdons´ agair´ ol nincsen inform´ aci´ onk. Erre az esetre dolgoztak ki Fukuda ´es t´arsszerz˝oi egy olyan minim´ al indexes criss-cross algoritmus v´altozatot [10], amelyik el´egs´eges m´ atrixok eset´en ugyan´ ugy m˝ uk¨odik, mint a kor´abbi v´altozat [12], m´ıg nem el´egs´eges m´atrixok eset´en vagy v´eges sok l´ep´esben megoldja a feladatot, vagy bizony´ıt´ekot szolg´ altat arra, hogy a m´ atrix nem el´egs´eges m´atrix. Csizmadia ´es Ill´es [6] megmutatt´ ak, hogy az ismert cikliz´al´as ellenes index v´alaszt´asi szab´alyok mindegyike alkalmas arra, hogy a criss-cross algoritmus v´egess´eg´et biztos´ıts´ak, ´altal´anos line´ aris komplementarit´ asi feladat megold´asakor, a Fukud´a´ek ´altal bevezetett ´ertelemben. A k¨ ozelm´ ultban Csizmadia ´es t´arsszerz˝oi egy eg´esz, u ´j cikliz´al´as ellenes index v´ alaszt´ asi szab´ aly oszt´ alyt defini´altak, az u ´n. s-monoton index v´alaszt´asi szab´ alyokat, ´es ezekre igazolt´ ak, hogy a leg´altal´anosabb criss-cross algoritmus is v´eges az ¨ osszes s-monoton index v´alaszt´asi szab´aly alkalmaz´asa mellett [9]. A line´aris komplementarit´ asi feladat ´es a criss-cross algoritmus kapcsolat´ar´ol sz´ol´ o ´erdekes eredm´enyek nagyr´esz´et j´ ol foglalja ¨ossze Csizmadia doktori (PhD) disszert´aci´oja [7]. Annak ellen´ere, hogy a jelen dolgozatnak nem t´argya a line´aris felt´eteles, kvadratikus optimaliz´ al´ asi feladat speci´ alis oszt´ alyaira kifejlesztett bels˝opontos megold´asi m´odszerek t´ argyal´ asa, m´egis u ´gy gondoljuk, hogy a teljess´eg ig´enye n´elk¨ ul n´eh´any ´erdekesebb bels˝ opontos algoritmust megeml´ıten´enk. A bels˝opontos m´odszerek 1980-as ´evek m´ asodik fel´eben val´ o megjelen´ese ´ota id˝or˝ol-id˝ore fell´angol az a vita, hogy milyen szempontok szerint c´elszer˝ u, egy-egy feladatoszt´aly eset´en, a pivot- ´es bels˝opontos algoritmusokat o sszehasonl´ ıtani. Line´aris programoz´asi fel¨ adatokra a t¨obb szempont szerinti o sszehasonl´ ıt´ a st Ill´es ´es Terlaky [15] v´egezt´ek el. ¨ Hasonl´o o¨sszefoglal´ o cikk, line´aris felt´eteles, kvadratikus optimaliz´al´asi feladatok megold´o algoritmusair´ ol – legjobb tudom´ asunk szerint – m´eg nem k´esz¨ ult. A bels˝opontos m´ odszerek k¨ oz¨ ott el´egg´e elterjedtek a prim´al-du´al t´ıpus´ u algoritmusok. Prim´ al-du´ al bels˝ opontos m´odszerekkel a line´aris felt´eteles, kvadratikus optimaliz´al´asi feladatok megold´ as´ at, az optimalit´asi felt´etelekb˝ol – ´altal´anos line´aris komplementarit´ asi feladatokb´ ol – nyerhet˝o centr´alis u ´t feladat sorozat iterat´ıv megold´as´aval ´all´ıtj´ ak el˝ o. A centr´ alis u ´t feladatok, iter´aci´or´ol-iter´aci´ora, egyre kisebb centralit´ asi param´eterhez tartoznak. A prim´al-du´al bels˝opontos m´odszerek meg´all´asi krit´eriuma az, hogy a dualit´ as r´es egy el˝ore megadott ε > 0 param´eter al´a ker¨ ul. Ekkor azt mondjuk, hogy a bels˝opontos algoritmus egy ε-optim´alis megold´ast ´all´ıtott el˝ o. A centr´alis u ´t l´etez´ese ´es egy´ertelm˝ us´ege [25] alapvet˝oen fontos a prim´al-du´al bels˝opontos algoritmusok m˝ uk¨ od´ese szempontj´ab´ol. Az oper´aci´okutat´ok egy jelent˝os r´esz´eben ´el az a t´evhit, hogy a bels˝ opontos algoritmusokkal nem lehet pontos megold´ast el˝o´ all´ıtani. Ezt a t´evhitet c´ afolta meg el´egs´eges line´aris komplementarit´asi feladatok eset´en Ill´es ´es t´ arsszerz˝ oinek a cikke [14].
Alkalmazott Matematikai Lapok (2013)
4
´ TIBOR ES ´ NAGY ADRIENN ILLES
A pivot algoritmusokkal ¨ osszehasonl´ıtva a prim´al-du´al bels˝opontos algoritmusokat, az az elv´ar´ asunk, hogy a legfontosabb m´atrix oszt´alyok (pozit´ıv szemidefinit, illetve el´egs´eges m´ atrixok) eset´en a racion´ alis m´atrixokkal ´es vektorokkal adott line´aris komplementarit´ asi feladatokat elm´eletileg hat´ekonyan oldj´ak meg, azaz az algoritmus iter´ aci´ oinak sz´ am´ ara polinomi´ alis iter´aci´osz´am korl´at l´etezzen. A pozit´ıv szemidefinit m´atrixszal adott line´aris felt´eteles, kvadratikus optimaliz´al´asi feladatb´ ol sz´ armaztatott line´ aris komplementarit´asi feladat megold´as´ara Kojima ´es t´ arsszerz˝ oi, egy kor´ abbi line´aris programoz´asi feladatra megfogalmazott, kis l´ep´eses, prim´ al-du´al bels˝ opontos algoritmusuk [23] ´altal´anos´ıt´as´aval adtak meg olyan bels˝ opontos algoritmust, amelyre polinomi´alis iter´aci´osz´am korl´atot igazoltak [24]. A biszimmetrikus m´ atrixszal megfogalmazott line´aris komplementarit´asi feladat eset´en, Kojim´ a´ek prim´al-du´al bels˝opontos algoritmus´anak a polinomi´alis iter´ aci´ osz´ am´ at, egy – a c´elf¨ uggv´enyben szerepl˝o m´atrix pozit´ıv szemidefinit tulajdons´ ag´ ab´ ol sz´ armaztatott – egyenl˝otlens´eg seg´ıts´eg´evel igazolt´ak. Term´eszetesen mer¨ ult fel a k´erd´es, hogy milyen tulajdons´ag´ u m´atrixok eset´en lehet hasonl´o, a komplexit´ as bizony´ıt´ as szempontj´ab´ol haszn´alhat´o egyenl˝otlens´eget levezetni. Kojima ´es t´ arsszerz˝ oi [25] a P*(κ)-m´atrixok oszt´aly´anak bevezet´es´evel adt´ak meg a v´ alaszt erre a k´erd´esre, ahol κ ≥ 0 val´os, meghat´arozott param´eter. A P*(κ)-m´ atrixok a pozit´ıv szemidefinit m´atrixok egy lehets´eges ´altal´anos´ıt´asai, amelyek rendelkeznek m´eg azzal a fontos tulajdons´aggal is, hogy a line´aris komplementarit´ asi feladathoz tartoz´o centr´alis u ´t feladatnak l´etezik egy´ertelm˝ u megold´ asa b´ armely µ > 0 centralit´ asi param´eter eset´en. A P*(κ)-m´ atrixok ´es az el´egs´eges m´atrixok kapcsolat´at teremti meg a P*m´atrixok oszt´aly´ anak defini´ al´ asa, amely a P*(κ)-m´atrixoszt´alyok uni´oja, amikor a κ param´eter befutja a nemnegat´ıv val´ os sz´ amok halmaz´at. V¨aliaho megmutatta, hogy a P*-m´atrixok, el´egs´eges m´atrixok [35]. A m´asik ir´any´ u tartalmaz´as igazol´asa Cottle ´es Guu [11, 5], illetve Kojima ´es t´ arsszerz˝oi [25] eredm´enye. Az el´egs´eges m´atrixokkal adott line´ aris komplementarit´asi feladatok t´emak¨or´eben m´eg napjainkban is jelennek meg u ´j bels˝opontos algoritmusok, illetve r´egi algoritmusok u ´j elemz´esei. Ezek k¨ oz¨ ul mi k´et cikkre [13, 16] h´ıvn´ank fel a figyelmet, amelyek szerepet j´atszottak a line´ aris komplementarit´asi feladatok megoldhat´os´ag´anak kiterjeszt´es´eben. Az egyik ´erdekes k´erd´es az volt, hogy Fukud´a´ek [10] eredm´eny´ehez hasonl´ oan, k´esz´ıthet˝ o-e olyan bels˝opontos algoritmus, amelyik el´egs´eges m´atrixok eset´en ugyan´ ugy m˝ uk¨ odik, mint a kor´abbi bels˝opontos algoritmusok [13, 16], m´ıg nem el´egs´eges m´atrixok eset´en polinomi´alis l´ep´esben megoldja a feladatot, vagy bizony´ıt´ekot szolg´ altat arra, hogy a m´atrix nem el´egs´eges m´atrix [18, 17]. Az ilyen t´ıpus´ u algoritmusok els˝ o, r´eszletes ´es kimer´ıt˝o t´argyal´as´at Nagy Marianna adja meg doktori (PhD) disszert´ aci´oj´aban [27]. Visszat´erve a line´ aris felt´eteles, kvadratikus optimaliz´al´asi feladatok pivot algoritmusokkal val´ o megold´ as´ anak k´erd´es´ere, elmondhatjuk, hogy a k´es˝obbiekben megjelent pivot´ al´ asi algoritmusok jellemz˝ oen (´altal´anos) line´aris komplementarit´asi feladatok megold´ as´ ara fel´ırt algoritmusok voltak.
Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
5
Dolgozatunkban megmutatjuk, hogy a hagyom´anyos, line´aris felt´eteles, kvadratikus programoz´ asi feladat, line´ aris komplementarit´asi feladat´ara fel´ırt kvadratikus prim´al szimplex algoritmus is v´eges, azon hagyom´anyos, cikliz´al´as ellenes indexv´alaszt´asi szab´ alyok alkalmaz´ asa eset´en, melyek kiz´ar´olag a reduk´alt k¨olts´egek ´es du´al v´altoz´ ok el˝ ojel´en, illetve a v´ altoz´ok indexein alapulnak. Azaz a line´aris felt´eteles, kvadratikus programoz´ asi feladat megold´as´ara ´altal´anos´ıtott prim´al szimplex algoritmus v´egess´eg´enek bizony´ıt´ashoz nincsen sz¨ uks´eg a perturb´aci´os elj´ar´as haszn´alat´ ara. A cikliz´al´as ellenes indexv´ alaszt´ asi szab´ alyok a minim´al index, a last-in-firstout, ´es a leggyakrabban v´alasztott v´ altoz´ o elv´et haszn´al´o szab´alyok. A criss-cross algoritmus eset´en line´ aris felt´eteles, kvadratikus programoz´asi feladatra, az algoritmus v´egess´eg´et a felsorolt indexv´ alaszt´ asi szab´alyok haszn´alata mellett Ill´es ´es t´arsszerz˝oi igazolt´ ak [1]. A t´emak¨ orben, pivot algoritmusok v´egess´eg´evel kapcsolatban az eddigi leg´ altal´ anosabb eredm´enyeket Csizmadia ´es t´arsszerz˝oi publik´alt´ak [9] az u ´n. s-monoton szab´ alyok eset´eben. 1.1. Jel¨ ol´ esek Cikk¨ unkben a m´atrixokat d˝olt nagy bet˝ ukkel, a vektorokat vastag bet˝ ukkel jel¨olj¨ uk. A skal´ arok norm´ al kisbet˝ uk, az index halmazok pedig kaligrafikus nagybet˝ uk. Egy m´atrix oszlop´ at als´ oindexszel, m´ıg a sorokat fels˝oindexszel jel¨olj¨ uk a tov´abbiakban. Jel¨ olje A ∈ Rm×n a line´ aris felt´eteles, kvadratikus optimaliz´al´asi feladat m´atrixsz´ at, b ∈ Rm a jobboldalt; az ´altal´anoss´ag korl´atoz´asa n´elk¨ ul feltehetj¨ uk, hogy rank(A) = m. A c´elf¨ uggv´eny line´aris r´esz´et c ∈ Rn , a kvadratikus r´esz´et Q ∈ Rn×n jel¨ oli. A line´ aris felt´eteles, kvadratikus programoz´ashoz tartoz´o, line´aris komplementarit´ asi feladat m´atrix´ at M ∈ RK×K jel¨oli, ahol K = n + m. A k¨ovetkez˝o r´eszben bevezetett line´ aris komplement´arit´asi feladat jobboldal vektor´at q ∈ Rn+m jel¨ oli. Legyen I = {1, 2, . . . , 2K} a v´ altoz´ ok indexhalmazai, ´es IB jel¨olje a b´azis p p d indexhalmazait. IB = IB ∪ IB , ahol IB a prim´al b´azis v´altoz´ok indexhalmaza, d m´ıg IB a du´al b´ azis v´altoz´ ok indexhalmaza. Hasonl´oan megadhat´o az I ´es IN p d indexhalmazok felbont´ asa is, azaz I = I p ∪ I d ´es IN = IN ∪ IN . −1 Egy B b´azishoz tartoz´ o r¨ ovid pivot t´ abl´ at T := B N jel¨oli, ahol N ∈ RK×K a [−M, I] ∈ RK×2K a m´atrix nem b´ azis r´eszm´atrixa. A transzform´alt jobboldalt pedig q := B −1 q k´eplettel sz´ amolhatjuk ki. Az egyes egy¨ utthat´ok a r¨ovid pivot t´abl´aban legyenek a tij -egy¨ utthat´ okkal jel¨ olve. 1.2. A line´ aris felt´ eteles kvadratikus programoz´ asi feladat Ha Q pozit´ıv szemidefinit m´ atrix, akkor az (LKOF) konvex programoz´asi feladat [22].
Alkalmazott Matematikai Lapok (2013)
6
´ TIBOR ES ´ NAGY ADRIENN ILLES
A feladathoz rendelt Lagrange-f¨ uggv´eny [22] a k¨ovetkez˝o: →R L : Rm+n ⊕ L(x, y, z) = f (x) + yT (Ax − b) − zT x
(1)
A konvex Karush–Kuhn–Tucker-t´etelt alkalmazva x∗ akkor ´es csak akkor pri∗ m´al optim´alis megold´ as, ha ∃y∗ ∈ Rm ∈ Rn⊕ u ´gy, hogy (y∗ , z∗ ) ̸= 0 ´es ⊕,z (x∗ , y∗ , z∗ ) kiel´eg´ıti a Qx + c + AT y − z = 0
(2)
Ax − b ≤ 0 y (Ax − b) = 0
(3) (4)
zT x = 0 x, y, z ≥ 0
(5) (6)
T
rendszert. Bevezetve az s ∈ Rm altoz´ ot, a fenti rendszer a konvex (LKOF) optimalit´asi ⊕ v´ krit´eriumait adja meg: −Qx − AT y + z = c
(7)
Ax + s = b yT s = 0
(8) (9)
zT x = 0 x, s, y, z ≥ 0
(10) (11)
Ugyanez m´artix alakban kifejezve, a biszimmetrikus, line´aris komplementarit´asi feladatra (BLCP ) vezet: ) ) ( )( ) ( ( b x −A 0 s = − (12) c y Q AT z yT s = 0 zT x = 0
(13) (14)
x, s, y, z ≥ 0
(15)
A line´aris felt´eteles, konvex kvadratikus programoz´asi feladat teh´at ekvivalens a k¨ovetkez˝ o line´ aris komplementarit´ asi feladattal: keress¨ unk olyan vektorokat, amelyek kiel´eg´ıtik a −M u + v = q T
u v=0 u, v ≥ 0 Alkalmazott Matematikai Lapok (2013)
(16) (17) (18)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
rendszert, ahol ( ) ( ) Q AT c , q= M= −A 0 b
( ´es
v=
) z s
7
( ,
illetve
u=
) x y
.
Valamint (18) miatt (17) nyilv´ anval´ oan vj uj = 0, (j = 1,. . . ,m+n). Az M m´atrix defin´ıci´oj´aban az egyszer˝ ubb fel´ır´ asi forma kedv´e´ert a sorokat az eredeti fel´ır´ashoz k´epest felcser´elt¨ uk. A line´aris felt´eteles konvex kvadratikus programoz´asi feladatb´ol sz´armaz´o line´aris komplementarit´ asi feladat m´atrix´ at biszimmetrikus m´atrixnak nevezz¨ uk, melynek sz´amos hasznos tulajdons´ aga ismert [33]. A line´aris felt´eteles konvex kvadratikus programoz´asi feladat gyenge ´es er˝os dualit´as t´eteleir˝ ol, optimalit´ asi krit´erium´ ar´ol, megold´asi m´odszereir˝ol a de Klerk ´es szerz˝ot´arsai ´altal ´ırt jegyzetben [22] olvashatunk. 1.3. A kvadratikus prim´ al szimplex algorimus Dolgozatunkban a Wolfe-f´ele kvadratikus prim´al szimplex algoritmust [36] vizsg´aljuk, melynek egy j´ o¨ osszefoglal´ as´ at tal´aljuk a [30] dolgozatban is. A [−M, I] m´atrix b´armely regul´ aris K × K r´eszm´atrix´at b´ azisnak nevezz¨ uk. A line´aris komplementarit´ asi (16)-(18) feladat egy b´azis´at komplement´ arisnak nevezz¨ uk, ha teljes¨ ulnek a komplementarit´ asi felt´etelek, azaz xz = 0 ´es sy = 0. Az u ´j v´altoz´okkal uv = 0 alakban is kifejezhetj¨ uk a komplementarit´ast. A kvadratikus prim´ al szimplex algoritmus egy komplement´aris, prim´al megengedett b´azisb´ ol indul. Ilyen b´azis el˝ o´ all´ıthat´o az eredeti prim´al megengedetts´egi feladat egy megengedett b´azis´ at kieg´esz´ıtve a line´aris komplement´aris feladat b´azis´av´a a du´ al felt´etelek elt´er´esv´ altoz´ oinak, a z vektornak b´azishoz v´etel´evel. Az eredeti prim´ al megengedetts´egi feladat egy megengedett b´azis´at el˝o´all´ıthatjuk az MBU-szimplex algoritmus, illetve a criss-cross algoritmus megfelel˝o vari´ansainak felhaszn´al´ as´ aval is [2, 7, 21]. 1.1. Defin´ıci´ o. Legyen adott egy (BLCP ) feladat. A line´aris komplementarit´asi feladat egy b´ azis´ at majdnem komplement´ arisnak nevezz¨ uk, ha egyetlen indexp´ar kiv´etel´evel teljes¨ ulnek a komplementarit´asi felt´etelek, vagyis l´etezik olyan i ∈ {1 . . . 2n}, hogy uj vj = 0 minden j ∈ {1 . . . 2n} − {i} eset´en. K´et komplement´ aris b´ azis k¨ oz¨ ott a kvadratikus prim´al szimplex algoritmus tetsz˝oleges sz´am´ u majdnem komplement´ aris b´azist gener´alhat. 1.2. Defin´ıci´ o. Legyen adott egy (BLCP ) feladat. A kvadratikus prim´al szimplex algorimus ´altal v´egzett, k´et komplement´aris b´azis k¨oz¨otti majdnem komplement´aris b´aziscser´ek sorozat´ at huroknak fogjuk nevezni. A kvadratikus prim´ al szimplex algoritmus egy ciklusa egy tetsz˝oleges prim´al megengedett, komplement´ aris b´ azissal indul. Egy ilyen b´azis eset´en, ha minden Alkalmazott Matematikai Lapok (2013)
8
´ TIBOR ES ´ NAGY ADRIENN ILLES
du´al v´altoz´o is megengedett, u ´gy az algoritmus a Karush–Kuhn–Tucker-t´etel ´ertelm´eben megtal´alta az eredeti feladat egy optim´alis megold´as´at. Amennyiben l´etezik nem megengedett du´ al v´ altoz´ o, u ´gy a kvadratikus prim´al szimplex algorimtus v´alaszt egy tetsz˝ oleges nem megengedett, du´al b´azis v´altoz´ot. A kvadratikus prim´al szimplex algoritmus v´egess´eg´et cikliz´ al´as ellenes indexv´alaszt´asi szab´alyokkal biztos´ıtjuk. 1.3. Defin´ıci´ o. A kvadratikus prim´ al szimpex algoritmus sor´an a komplement´aris t´abl´an v´alasztott du´ al v´ altoz´ ot du´ al vez´erv´ altoz´ o nak, vagy egyszer˝ uen vez´erv´ altoz´ o nak nevezz¨ uk. A du´al vez´erv´ altoz´ o kiv´ alaszt´ asa ut´ an az algoritmus egy hurok sor´an addig v´egez b´aziscser´eket, m´ıg a v´ alasztott du´ al v´altoz´o ki nem ker¨ ul a b´azisb´ol, vagy az algoritmus egy v´egtelen jav´ıt´ o ir´ anyt nem tal´al. A du´al vez´erv´ altoz´ o v´alaszt´ asa ut´ an – teh´at komplement´aris b´azisb´ol indulva – a bel´ep˝o v´altoz´ o a vez´erv´ altoz´ o prim´ al p´arja. Ezen v´altoz´o egy jav´ıt´o ir´anyt hat´aroz meg [29]. A prim´ al megengedetts´eg fenntart´asa ´erdek´eben az algoritmus a transzform´alt oszlopon a prim´ al b´ azis v´ altoz´okon h´anyadostesztet v´egez, { } q¯s θ2 = min |s ∈ IB , s prim´ al v´ altoz´o melyre tsj > 0 . (19) tsj Ez az az ´ert´ek, amellyel a v´ alasztott prim´ al v´altoz´ot n¨ovelni lehet, miel˝ott a l´ep´es egy korl´atoz´o felt´etelbe u ozne. ¨tk¨ Az algoritmus kisz´ am´ıt egy θ1 h´ anyadost is, ami a h´anyadosteszt ´ert´eke a vez´erv´altoz´o sor´aban, θ1 := tq¯vjv ; illetve θ1 = ∞ akkor, ha a vez´erv´altoz´o ´es a hozz´a tartoz´o prim´al v´ altoz´ o tal´ alkoz´ as´ an´ al nulla szerepel. A θ1 ´ert´ek k´epviseli azt a l´ep´eshosszt, ahol a kvadratikus c´elf¨ uggv´eny el˝ojelet v´alt a bel´ep˝o v´altoz´o n¨ovel´ese sor´an. Abban az esetben, ha θ1 = θ2 = +∞, akkor a feladat nem korl´atos [29]. Amennyiben θ1 ≤ θ2 , u ´gy az algoritmus a du´al vez´erv´altoz´o sor´aban v´egez b´aziscser´et, a b´azisban lev˝ o prim´ al v´ altoz´ ok sz´ama eggyel n¨ovekszik, az u ´j b´azis tov´abbra is megengedett, ´ıgy az algoritmus egy 1 hossz´ u hurokkal lez´arja a ciklust, a c´elf¨ uggv´eny javul. Amennyiben θ2 < θ1 u ´gy az algoritmus a prim´al h´anyadosteszt ´altal minim´alisnak tal´alt h´anyados sor´ aban v´egez b´aziscser´et. Ha a h´anyadosteszt nem jel¨oli ki egy´ertelm˝ uen a pivot poz´ıci´ ot, akkor alkalmazzunk cikliz´al´as ellenes indexv´alaszt´asi szab´alyt. Az ´ıgy keletkezett b´ azis majdnem komplement´aris. Egy majdnem megengedett b´ azis eset´en az algoritmus bej¨ov˝o v´altoz´onak a b´azison k´ıv¨ ul lev˝ o nem komplement´ aris p´ar du´ al v´altoz´oj´at v´alasztja, majd ugyanazon m´odon v´alaszt sort, mint a komplement´aris b´azis eset´en: a prim´al r´eszen v´egzett h´anyadostesztet hasonl´ıtja a vez´erv´altoz´o sor´anak h´anyadosteszt ´ert´ek´evel. Amennyiben a b´aziscsere a vez´erv´ altoz´o sor´aban v´egezhet˝o, u ´gy a kapott b´azis ism´et komplement´ aris lesz, ´es a hurok lez´arul [29]. Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
9
1. ´ abra. Az algoritmus folyamat´abr´aja.
Alkalmazott Matematikai Lapok (2013)
´ TIBOR ES ´ NAGY ADRIENN ILLES
10
A (BLCP ) feladatra megfogalmazott kvadratikus, prim´al szimplex algoritmus folyamat´abr´aja az 1. ´abr´ an, m´ıg pszeud´ ok´ odja a 1.1. ´abr´an tal´alhat´o. 1.1. Algoritmus. Az algoritmus pszeud´ ok´odja. bemen˝ o adatok: A B prim´al megengedett b´ azishoz tartoz´o T komplement´aris b´azis begin d I− := {k ∈ IB |¯ qk < 0} a negat´ıv du´ al v´altoz´ok indexe a b´azisban;
1. 2.
while (I− ̸= ∅) do
3.
legyen v ∈ I− tetsz˝ oleges vez´erv´ altoz´o;
4.
p legyen j ∈ IN a v komplement´ aris p´arja (prim´al, b´azison k´ıv¨ uli);
5.
while (v a b´azisban van) do
6.
if (tvj = 0)
7.
then θ1 := ∞
8.
else θ1 :=
9.
q¯v tvj
endif
10.
p θ2 := min{ tq¯sjs |s ∈ IB , s prim´al v´altoz´o melyre tsj > 0}
11.
if (min(θ1 , θ2 ) = ∞) then STOP: nem korl´atos feladat endif
12.
if (θ1 ≤ θ2 )
13.
then pivot´ al´ as a tvj elemen
14.
else
15.
p legyen z ∈ IB u ´gy hogy
16.
pivot´ al´ as a tzj elemen
17.
a b´ azison k´ıv¨ ul pontosan egy komplement´aris p´ar van
18.
legyen j ezen p´ ar du´ al v´ altoz´oj´anak indexe, az u ´j bel´ep˝o v´altoz´o
19.
endif
20.
endwhile
21.
d I− := {k ∈ IB |¯ qk < 0}
22.
endwhile
optim´alis megold´ asn´ al vagyunk; end
23.
Alkalmazott Matematikai Lapok (2013)
q¯z tzj
= θ2
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
11
1.4. Egy p´ elda Az algoritmus ¨ osszetetts´ege indokoltt´ a tesz egy p´eld´at. A p´elda seg´ıts´eg´evel szeretn´enk egy m´ asik tulajdons´ agra is felh´ıvni a figyelmet: nevezetesen, hogy legal´abbis b´azist´abl´ an sz´ amolva egy feladatot, az els˝o f´azis technikailag nem egyszer˝ u, hiszen elker¨ ulend˝ o a kieg´esz´ıtett b´ azist´ abla invert´al´as u ´tj´an val´o kisz´am´ıt´as´at, m´ar a prim´al szimplex els˝ o f´ azis´ at is a KKT-rendszeren v´egezz¨ uk el. Tekints¨ uk teh´ at a k¨ ovetkez˝ o egyszer˝ u feladatot: min x21 + x23 − 2x1 x3 x1 − x2 + x3 = 1 x1 + x2 = 2 A KKT-rendszerhez vezess¨ uk be a k¨ ovetkez˝o v´alt´oz´o p´arokat: x prim´al v´altoz´o p´arja a z reduk´ alt k¨ olts´eget jel¨ ol˝ o v´ altoz´ o, mely egyben a du´al sorok elt´er´esv´altoz´oja, s elt´er´esv´altoz´ o p´ arja az y du´ al v´altoz´ok. A kezdeti (r¨ ovid) pivot t´ abla az elt´er´esv´altoz´okb´ol ´all´o b´azisb´ol indulva: 1. s∗1 s∗2 z1 z2 z3
x1 1 1 −1 0 1
x2 −1 1 0 0 0
x3 1 0 1 0 −1
y1 0 0 −1 1 −1
y2 0 0 −1 −1 0
1 2 0 0 0
Az els˝o b´aziscser´et a prim´ al szimplex m´ odszer els˝o f´azis c´elf¨ ugv´eny´et k¨ovetve az x3 oszlop´aban v´egezz¨ uk. Ekkor a h´ anyadostesztet csup´an az els˝o k´et sor szerint hajtjuk v´egre, azonban a t´ abla komplementarit´as´at meg˝orzend˝o a komplement´aris poz´ıci´oban is v´egrehajtunk egy b´ aziscser´et. Vegy¨ uk ´eszre, hogy ezen m´asodik” ” b´aziscser´ek a prim´ al megengedetts´eget nem befoly´asolj´ak, hiszen mindaddig, am´ıg nem v´egz¨ unk b´aziscser´et a t´ abla du´ al soraiban ´es a prim´al v´altoz´oinak metszet´en´el, addig du´al oszlopok prim´ al sor r´esz´eben egy azonosan nulla m´atrix ´all. Az els˝o k´et b´aziscsere teh´ at az x3 ´es s∗1 , illetve az y1 ´es z3 p´arb´ol ´all. 2. x1 x3 1 ∗ s2 1 z1 −2 z2 0 z3 2
x2 −1 1 1 0 −1
s∗1 1 0 −1 0 1
y1 y2 0 0 0 0 −1 −1 1 −1 −1 0
1 2 −1 0 1
3. x1 x3 1 ∗ s2 1 z1 −4 z2 2 y1 −2
x2 −1 1 2 −1 1
s∗1 1 0 −2 1 −1
z3 y2 0 0 0 0 −1 −1 1 −1 −1 0
1 2 −2 1 −1
Tov´abbra is az els˝ o f´ azist k¨ ovetve, a k¨ovetkez˝o b´aziscsere p´ar az x2 ´es s∗2 b´aziscsere, illetve az y2 ´es z2 b´ aziscsere. Alkalmazott Matematikai Lapok (2013)
´ TIBOR ES ´ NAGY ADRIENN ILLES
12
4. x1 x3 2 x2 1 z1 −6 z2 3 z3 −3
s∗2 1 1 −2 0 −1
s∗1 1 0 −2 1 −1
y1 0 0 −1 1 −1
y2 0 0 −1 −1 0
5. x1 x3 2 x2 1 z1 −9 y2 −3 y1 −3
3 2 −6 3 −3
s∗2 1 1 −3 −1 −1
s∗1 1 0 −3 −1 −1
y1 0 0 −2 −1 −1
z2 0 0 −1 −1 0
3 2 −9 −3 −3
Az 5. t´abla m´ ar prim´ al megengedett. Mindh´arom du´al sor du´al nem megengedett, vagyis mindh´ arom b´azison k´ıv¨ uli prim´al v´altoz´o jav´ıt´o ir´anyt hat´aroz meg. Mivel azonban s∗1 ´es s∗2 mesters´eges elt´er´esv´altoz´ok, ´ıgy azok nem t´erhetnek vissza a b´azisba (ezeket el lehetne hagyni a t´abl´ab´ol). ´Igy a bej¨ov˝o v´altoz´o az x1 . A kieg´esz´ıtett h´ anyadosteszt alapj´an diagon´alis b´aziscser´et v´egz¨ unk z1 sor´aban. 6. x3 x2 x1 y2 y1
z1
s∗2
s∗1
2 9 1 9 − 19 − 13 − 13
1 3 2 3 1 3
1 3 − 13 1 3
0 0
0 0
y1 − 49 − 29
z2 − 29 − 19
2 9 − 13 − 13
1 9 − 23 1 3
1 1 1 0 0
A t´abla megengedett ´es optim´ alis. Az optim´alis megold´as az azonosan 1, azaz x = y = z = 1.
2. A kvadratikus prim´ al szimplex algoritmus v´ egess´ ege Az 1. ´abr´an ´es 1.1. algoritmusban bemutatott kvadratikus szimplex algoritmusr´ol sz´amos cikk ´ır´ odott az 1960-as ´evek elej´en [26, 28, 29, 30, 31, 36]. Az algoritmus v´egess´eg´et eredetileg a perturb´ aci´os m´odszerrel igazolt´ak. Ebben a fejezetben a kvadratikus szimplex algoritmus u ´j bizony´ıt´as´at adjuk cikliz´al´as ellenes indexv´alaszt´asi szab´ aly seg´ıts´eg´evel. Felid´ezz¨ uk az u ´gynevezett s-monoton index v´alaszt´asi szab´alyokat [2]: 2.1. Defin´ıci´ o. Legyen adott egy index v´alaszt´ason alapul´o pivot´al´asi szab´aly, egy s ∈ Nn⊕ vektor, amelynek a koordin´ at´ ait a feladat v´altoz´oihoz rendelt¨ uk, ´es az algoritmus iter´aci´ oi sor´ an a pivot´ al´ asi szab´ alyt´ol f¨ ugg˝oen m´odosulhatnak. A pivot´al´asi szab´alyt´ol f¨ ugg˝ o s vektor sorozatra az al´abbi elv´ar´asokat fogalmazzuk meg: 1. Az s vektor ´ert´ekei a b´ aziscser´ek sor´an nem cs¨okkennek, illetve kiz´ar´olag a mozg´o v´ altoz´ ok ´ert´eke v´ altozhat. Az index v´alaszt´asi szab´aly, v´alaszt´asi lehet˝os´eg eset´en, az s vektor szerinti maxim´alis ´ert´ek˝ u elemei k¨oz¨ ul v´alaszt. Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
13
2. A algoritmus sor´ an b´armikor mozg´ o (vagyis b´azisb´ol kil´ep˝o vagy bel´ep˝o) v´altoz´okra megszor´ıtva, van olyan B ∗ b´ azis, amikor az s vektor szerinti legkisebb ´ert´ek˝ u b´azison k´ıv¨ uli v´ altoz´ o egy´ertelm˝ u. Legyen ez az xl v´altoz´o. 3. Ha a B ∗ b´ azis ut´ an az xl v´ altoz´ o bel´ep a b´azisba, akkor a legk¨ozelebbi bel´ep´es ut´an, eg´eszen addig, am´ıg esetleg az xl v´altoz´o u ´jra t´avozik a b´azisb´ol, igaz, hogy azon v´altoz´ ok s ´ert´eke, amelyek mozogtak az xl v´altoz´o b´azisba bel´ep´ese ´ota, nagyobbak, mint az xl v´ altoz´ o s vektor szerinti ´ert´eke. Azokat a pivot´ al´ asi szab´ alyokat, amelyekhez tartoz´o s vektorokra az 1–3. felt´etelek teljes¨ ulnek s-monoton pivot´ al´ asi szab´ alyoknak nevezz¨ uk. Az s-monoton indexv´ alaszt´ asi szab´ alyok alkalmaz´asra ker¨ ultek kvadratikus criss-cross algoritmus v´egess´eg´enek igazol´ asakor [1, 7, 9]. Dolgozatunk szempontj´ ab´ ol a f˝o ´eszrev´etel, hogy az s-monoton indexv´alaszt´asi szab´alyok nem egy´ertelm˝ u v´ alaszt´ as eset´en egy, az adott pillanatban j´ol defini´alt preferencia vektor szerint v´ alasztanak, nem haszn´alva a b´ azist´abla elemeinek a konkr´et ´ert´ekeit. Bizony´ıt´asunk az algoritmus ´es a line´ aris felt´eteles konvex kvadratikus prog´ ramoz´asi feladat pivot t´ abl´ aj´ anak tulajdons´ againak vizsg´alat´an alapul. Altal´ anos esetben, sajnos a biszimmetrikus tulajdons´ ag nem ¨orz˝odik meg k¨ozvetlen m´odon, de egy kis kieg´esz´ıt´essel hasonl´ o tulajdons´ ag bizony´ıthat´o. 2.1. Lemma. [33] Egy kvadratikus programoz´ashoz tartoz´o biszimmetrikus m´atrix eset´en tetsz˝ oleges b´ azis transzform´ aci´oval nyert, komplement´aris b´azis eset´en a b´azist´abla tov´ abbra is biszimmetrikus azzal a kiv´etellel, hogy az eredeti prim´al felt´etelek ´es a du´ al v´ altoz´ ok metszet´eben lev˝o nulla m´atrix hely´en egy pozit´ıv szemidefinit m´atrix ´all. A fenti eredm´eny kiv´etel r´esze elker¨ ulhet˝o, ha a kvadratikus feladat egy szimmetrikus fel´ır´as´ at alkalmazzuk [21]. A v´egess´eg bizony´ıt´ as´ at visszavezet´essel v´egezz¨ uk. Bizony´ıtjuk, hogy egy cikliz´al´o p´elda eset´en a prim´ al megold´ as sz¨ uks´egszer˝ uen nem v´altozik, vagyis minden b´aziscsere prim´ al degener´ alt. Szeml´eletes m´ odon, ez azt jelenti hogy az adott megold´ashoz tartoz´ o lineariz´ alt feladat v´ altozatlan marad. Megmutatjuk, hogy ilyen esetben az algoritmus ´altal v´egzett b´ aziscser´ek pontosan megfelelnek egy megfelel˝o line´aris programoz´ asi feladatra n´ezve a prim´al szimplex algoritmus b´aziscser´einek, mely indexv´alaszt´ asi szab´ aly alkalmaz´ asa eset´en v´eges: sz¨ uks´egk´eppen, a kvadratikus szimplex algoritmus is v´eges mindazon cikliz´al´as elleni indexv´alaszt´asi szab´alyok eset´en, melyre a prim´ al szimplex az, amennyiben a cikliz´al´as elleni indexv´alaszt´asi szab´aly kiz´ ar´ olag a reduk´ alt k¨ olts´egek el˝ojel´ere ´es a v´altoz´ok index´evel kapcsolatos v´alaszt´ asi preferenci´ akra hivatkozik [9]. A lexikografikus szab´alyra a bizony´ıt´asunk nem alkalmazhat´ o k¨ ozvetlen m´odon. Legjobb tudom´asunk szerint, a lexikografikus rendez´es alkalmaz´ as´ aval a kvadratikus szimplex algoritmus v´egess´eg´et igazol´o eredm´eny nem ismert. Alkalmazott Matematikai Lapok (2013)
14
´ TIBOR ES ´ NAGY ADRIENN ILLES
Tegy¨ uk fel teh´ at, hogy az algoritmus nem v´eges, ´es tekints¨ unk egy cikliz´al´o ellenp´eld´at. Mivel a bizony´ıt´as visszavezet´esen alapszik, a cikliz´al´o ellenp´elda m´eret´enek minimalit´ asa nem sz¨ uks´eges, ´es nem is egyszer˝ us´ıten´e l´enyegesen a gondolatmenetet. El˝osz¨or megmutatjuk, hogy egy cikliz´ al´o ellenp´eld´an az algoritmus kiz´ar´olag egyfajta, m´egpedig kett˝ o hossz´ u hurkokat ´all´ıt el˝o. 2.2. Lemma. Tekints¨ uk a konvex (LKOF) feladatot a hozz´a tartoz´o (BLCP ) form´aban. A kvadratikus szimplex algoritmus v´egrehajt´asa sor´an, egy cikliz´al´o p´elda eset´en, legfeljebb v´eges sokszor fordulhat el˝o olyan b´aziscsere, amelyik egy hossz´ u hurkot v´egez. Bizony´ıt´ as. A kvadratikus szimplex algoritmus megfogalmaz´as´ab´ol ad´odik, hogy egy 1 hossz´ u hurok egyetlen, a du´ al vez´erv´altoz´o sor´aban v´egzett b´aziscser´eb˝ol ´all, ez a 0 < θ1 ≤ θ2 esetnek felel meg. Mivel a du´al vez´erv´altoz´ot u ´gy v´alasztottuk, hogy a hozz´ atartoz´ o jobboldal negat´ıv, ´ıgy ez a b´aziscsere nem degener´alt. Ilyen esetben a belep˝ o prim´ al v´ altoz´ o oszlopa egy jav´ıt´o ir´any ´es a c´elf¨ uggv´eny ´ert´eke javul [29]. Mivel az egy hossz´ u hurkok eset´en a c´elf¨ uggv´eny javul, ez´ert a kor´abbi b´azisok egyike sem t´erhet vissza, hiszen a kvadratikus szimplex algoritmus c´elf¨ uggv´enye monoton cs¨ okken. Figyelembe v´eve, hogy v´eges sok b´azis van, egy hossz´ u hurok v´eges sokszor fordulhat el˝ o. ⊓ ⊔ Most vizsg´ aljuk meg a kett˝ on´el hosszabb hurkok lehets´eges sz´am´at. 2.3. Lemma. Tekints¨ uk a konvex (LKOF) feladatot a hozz´a tartoz´o (BLCP ) form´aban. A kvadratikus szimplex algoritmus v´egrehajt´asa sor´an, egy cikliz´al´o p´elda eset´en legfeljebb v´eges sok nem 2 hossz´ us´ag´ u hurok lehets´eges. Bizony´ıt´ as. A 2.2. lemma alapj´ an legfeljebb v´eges sok 1 hossz´ u hurok lehets´eges. Figyelj¨ uk meg, hogy a b´azisban lev˝o prim´al v´altoz´ok sz´ama legfeljebb az 1 hossz´ u hurkok eset´en n¨ ovekedhet. Nem 1 hossz´ u hurok eset´en, az els˝o b´aziscser´et k¨ovet˝oen, eg´eszen addig, am´ıg nem a du´al vez´erv´altoz´o sor´aban v´egz¨ unk b´aziscser´et, addig a b´ aziscser´ek sor´ an a bej¨ ov˝o du´al v´altoz´o egy prim´al v´altoz´ot cser´el ki a b´azisban. Vagyis amennyiben a hurok 3, vagy ann´al hosszabb, u ´gy a b´azisban lev˝o du´ al v´ altoz´ ok sz´ ama monoton n¨ovekedik. Mivel cs¨okkenni csak 1 hossz´ u hurkok sor´ an tud, melyek sz´ ama v´eges, ´ıgy sz¨ uks´egk´eppen a 3, vagy ann´al hosszabb hurkok sz´ ama is v´eges. ⊓ ⊔ ¨ Osszefoglalva meg´allap´ıthatjuk, hogy egy cikliz´al´o p´elda eset´en az algoritmus v´eges sok b´aziscsere ut´ an 2 hossz´ u hurkok v´egtelen sorozat´at v´egzi. Felvet˝odik a k´erd´es hogy nem lenne-e c´elszer˝ u a bizony´ıt´ ast a criss-cross algoritmus v´egess´eg´ere visszavezetni, hiszen a 2 hossz´ u hurkok megfelelnek egy-egy felcser´el˝os b´aziscser´enek [21, 1, 7]. A neh´ezs´eget az okozza, hogy a b´aziscsere sor´anak kiv´alaszt´ asa ut´ an az oszlopv´ alaszt´ as a kvadratikus szimplex algoritmus sor´an k¨ot¨ott, ´ıgy a criss-cross algoritmus m´asodik index v´alaszt´asi l´ep´ese elmarad. Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
15
2.4. Lemma. Tekints¨ uk a konvex (LKOF) feladatot a hozz´a tartoz´o (BLCP ) form´aban. A kvadratikus szimplex algoritmus v´egrehajt´asa sor´an, egy cikliz´al´o p´elda eset´en legfeljebb v´eges sok b´aziscsere ut´an a b´azismegold´as prim´al r´esze nem v´altozik. Bizony´ıt´ as. T´etelezz¨ uk fel, hogy az cikliz´ al´o p´elda sor´an m´ar kiz´ar´olag 2 hossz´ u hurkokat v´egez az algoritmus a 2.2. ´es 2.3. lemm´ak alapj´an. Egy 2 hossz´ u hurok els˝ o b´aziscser´eje sor´an egy nem degener´alt b´aziscsere jav´ıtan´a a c´elf¨ ugg´eny ´ert´ek´et [29]. A m´asodik b´ aziscsere eset´en enn´el t¨ obb is mondhat´o. [33] alapj´an ilyen esetben a bel´ep˝o du´al v´altoz´ o ´es az el˝ oz˝ o iter´ aci´ oban a b´azisb´ol kil´epett prim´al v´altoz´o tal´alkoz´as´an´al a b´ azist´ abla tij ´ert´eke nem-pozit´ıv, ´es amennyiben szigor´ uan negat´ıv, u ´gy a b´aziscsere jav´ıt a c´elf¨ uggv´eny´ert´eken – mely eset¨ unkben azt jelenti, ez az eset csak v´eges sokszor fordulhat el˝ o – illetve amennyiben nulla, u ´gy a b´azist´abla ezen oszlop´aban minden b´azisban lev˝ o prim´ al v´ altoz´ohoz tartoz´o ´ert´ek nulla, vagyis a pivot t´abla prim´ al r´esze m´ar nem transzform´al´odik. ⊓ ⊔ A fenti bizony´ıt´ asban szerepl˝ o [33] eredm´eny´enek felhaszn´al´as´aval a k¨ovetkez˝o er˝osebb lemm´at is bizony´ıthatjuk: 2.5. Lemma. Tekints¨ uk a konvex (LKOF) feladatot a hozz´a tartoz´o (BLCP ) form´aban. A kvadratikus szimplex algoritmus v´egrehajt´asa sor´an, egy cikliz´al´o p´elda eset´en legfeljebb v´eges sok b´ aziscsere ut´an az algoritmus csupa 2 hossz´ u hurkot v´egez, melyekre a k¨ ovetkez˝ o igaz: – A hurok els˝ o b´aziscser´eje egy degener´ alt b´aziscsere, mely sor´an egy prim´al v´altoz´o bel´ep, ´es egy prim´ al v´ altoz´ o kil´ep a b´azisb´ol. – A hurok m´ asodik (´es utols´ o) b´aziscser´eje sor´an a megel˝oz˝o iter´aci´oban bel´epett prim´ al v´ altoz´ o du´al p´arja kil´ep, m´ıg a megel˝oz˝o iter´aci´oban kil´epett prim´al v´ altoz´ o du´ al p´ arja bel´ep a b´azisba. – A hurok m´asodik b´ aziscser´eje sor´ an a bel´ep˝o du´al v´altoz´o transform´alt oszlop´aban minden prim´ al v´ altoz´ ohoz tartoz´o sorban nulla ´ert´ek szerepel. Bizony´ıt´ as. K¨ ovetkezik a 2.1. – 2.5. lemm´akb´ol, a 2.5. lemma bizony´ıt´as´ahoz hasonl´o m´odon [33] eredm´eny´eb˝ ol. ⊓ ⊔ Hasonl´o tulajdons´ ag mondhat´ o a hurkok els˝o b´aziscser´ej´enek du´al r´esz´ere is. 2.6. Lemma. Tekints¨ uk a konvex (LKOF) feladatot a hozz´a tartoz´o (BLCP ) form´aban. A kvadratikus szimplex algoritmus v´egrehajt´asa sor´an, egy cikliz´al´o p´elda eset´en legfeljebb v´eges sok b´azis csere ut´an a komplement´aris b´azisb´ol indul´o b´aziscser´ek eset´en a bel´ep˝ o prim´ al v´ altoz´ o transzform´alt oszlop´aban a kiindul´asi b´azist´abl´an a du´ al v´ altoz´ okhoz tartoz´ o sorokban nulla ´ert´ekek szerepelnek. Alkalmazott Matematikai Lapok (2013)
´ TIBOR ES ´ NAGY ADRIENN ILLES
16
Bizony´ıt´ as. Felhaszn´ alva a 2.1. lemm´ at, mivel a v´alasztott du´al vez´erv´altoz´o sor´anak ´es a hozz´ a tartoz´ o bel´ep˝ o prim´ al v´ altoz´o ennek a szemidefinit m´atrixnak egy diagon´alis eleme, mely nulla, ´ıgy sz¨ uks´eges, hogy ennek a szemidefinit m´atrixnak ezen oszlopa (´es sora) azonosan nulla legyen, hiszen ellenkez˝o esetben nem volna pozit´ıv szemidefinit, hiszen egy tetsz˝oleges nemnulla ´ert´ek ´es a diagon´alis poz´ıci´o ´altal alkotott 2 × 2-es ´atl´ o menti r´eszm´atrix determin´ansa negat´ıv lenne. ⊓ ⊔ A kor´abbi lemm´ akkal m´ar bizony´ıtottuk, hogy a cikliz´al´o ellenp´elda eset´en a mozg´o v´altoz´ ok transzform´ alt oszlopaiban nulla ´ert´ekek szerepelnek a 2 hossz´ u hurkok els˝o b´aziscser´eje eset´en a du´ al v´altoz´ ok soraiban, m´ıg a m´asodik b´aziscser´ek eset´en a prim´al v´ altoz´ ok soraiban. A k´et b´ azist´abla szerkezet´et a 2. ´abra mutatja.
xj
yi
xi
yj
+
0
0
-
-
0. .. 0 0. .. 0 xj
yj 0 .. .
xi
0 yi
0
-
-
2. ´ abra. Egy cikliz´al´o p´elda eset´en a cikliz´ al´ as be´ allta ut´ an a 2 hossz´ u hurkok els˝ o, illetve m´asodik b´aziscser´ej´ehez tartoz´o b´ azist´ abla szerkezete.
Tekints¨ unk egy cikliz´al´o p´eld´at, ´es tegy¨ uk fel a 2.2. ´es 2.3. lemm´ ak alapj´ an, hogy az algoritmus m´ar csupa 2 hossz´ u, degener´ alt hurkokat v´egez. Egy tetsz˝ oleges p d komplement´ aris b´azis eset´en, IB ´es IB rendre jel¨ olje a b´azisban lev˝ o prim´ al-, p d illetve du´ al v´altoz´ok index halmaz´at, m´ıg az IN ´es IN pedig a nem b´ azis v´altoz´ ok megfelel˝ o indexhalmazait, ahogyan azt kor´abban bevezett¨ uk. ¯ I p I p az I p ´es I p indexhalmazok ´altal meghat´ Legyen G = M arozott r´eszB N B N p d p ¯ IB a IB halmaz elemeihez tartoz´ ¯ IBd a IB m´ atrix, d = q o jobboldal, m´ıg f = q halmaz elemeihez tartoz´o jobboldal. Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
17
¯ I p I p = −M ¯ I d I d . L´athat´o, hogy az M ¯ Ekkor a 2.1. lemma alapj´ an G = M B N N B transzform´alt b´ azis t´ abla megegyezik a min f T x Gx ≤ d
(LPs )
peci´alis line´aris programoz´ asi feladatra (LPs ) fel´ırt Karush–Kuhn–Tucker-felt´etelekkel, amennyiben a feladat azon r´esz´et˝ ol, mely nem j´atszik szerepet a cikliz´al´asban, eltekint¨ unk. Felhaszn´alva a 2.6., 2.5. ´es 2.1. lemm´ akat, l´athat´o, hogy a b´azist´abla ugyanolyan m´odon transzform´ al´ odik a 2 hossz´ u hurkok sor´an, mint ahogy az el˝oz˝o line´aris programoz´ asi feladat b´azist´ abl´ aja. Tov´abb´a a du´al vez´erv´altoz´o v´alaszt´asa megfelel a c´elf¨ uggv´eny sor´ aban lev˝ o oszlopv´alaszt´asnak, majd a prim´al v´altoz´ok feletti h´anyadosteszt megfelel a line´ aris programoz´asi feladatra megfogalmazott prim´al szimplex m´odszer h´ anyadostesztj´enek a kisebb m´eret˝ u line´aris programoz´asi feladat eset´en.
P
N
M
G
0 .. .
d
0 0 D
.. .
−GT
f
0
3. ´ abra. A kvadratikus programoz´ asi feladat b´ azis t´ abl´ aj´ anak szerkezete a cikliz´ al´ o v´ altoz´okra n´ezve. Teh´ at a (BLCP ) feladatra megfogalmazott kvadratikus prim´ al szimplex m´odszer pontosan akkor cikliz´ alhat, ha a line´ aris programoz´ asi feladtra megfogalmazott prim´ al szimplex algoritmus cikliz´ al az (LPs ) line´ aris programoz´ asi feladaton. Figyelembe v´eve, hogy a line´ aris programoz´ asi feladatra megfogalmazott prim´ al szimplex algoritmus nem cikliz´ alhat, ha olyan index v´ alaszt´ asi szab´ alyt haszn´ alunk a v´egess´eg biztos´ıt´ as´ ara, amelyik az u ´n. s-monoton indexv´ alaszt´ asi szab´ alyok (pl. minim´al index szab´ aly, LIFO- vagy a leggyakrabban v´ alasztott v´ altoz´ o szab´ alya) k¨ oz´e tartozik [9]. A (BLCP ) feladatra megfogalmazott kvadratikus prim´ al szimplex m´odszert el kell l´ atnunk cikliz´ al´ as ellenes indexv´ alaszt´ asi szab´ allyal, amely biztos´ıtja az al¨ goritmus v´egess´eg´et. Osszefoglalva, kimondhatjuk a k¨ ovetkez˝ o t´etelt: ´tel. A (BLCP ) feladatra megfogalmazott kvadratikus prim´ 2.1. Te al szimplex m´odszer, s-monoton indexv´ alaszt´ asi szab´ alyok haszn´ alata eset´en v´eges. Alkalmazott Matematikai Lapok (2013)
18
´ TIBOR ES ´ NAGY ADRIENN ILLES
Megmutattuk, hogy a kvadratikus prim´al szimplex algoritmus v´eges az smonoton indexv´ alaszt´ asi szab´ alyok alkalmaz´asa eset´en. Eredm´eny¨ unk k¨ozvetlen ´at¨ ultethet˝o a kvadratikus du´ al szimplex algoritmusra is. ´ Ko onetnyilv´ an´ıt´ as. A kutat´ ast a TAMOP-4.2.2./B-10/1-2010-0009 p´a¨sz¨ ly´azattal a Nemzeti Innov´ aci´ os Hivatal jogel˝odje, a Nemzeti Kutat´asi ´es Technol´ogiai Hivatal t´ amogatta. Ill´es Tibor kutat´ asait a Strathclyde University, Glasgow a John Anderson Research Leadership Program keret´eben t´ amogatta.
Hivatkoz´ asok ´s Ille ´s T.: A v´ [1] Akkeles, A. A., Balogh L. e eges criss-cross m´ odszer u ´j vari´ ansai biszimmetrikus line´ aris komplementarit´ asi feladatra. Alkalmazott Matematikai Lapok 21, 1–25, (2003). ´s, T.: Anstreicher-Terlaky t´ıpus´ [2] Bilen, F., Csizmadia, Z., Ille u monoton szimplex algoritmusok megengedetts´ egi feladatokra. Alkalmazott Matematikai Lapok 24 (1-2), 163–185, (2007). [3] R. W. Cottle, G. B. Dantzig: Complementarity Pivot Theory of Mathematical Programming. Linear Algebra and its Applications 1, 103–125, (1968). [4] R. W. Cottle, J.-S. Pang, V. Venkateswaran: Sufficient matrices and the linear complementarity problem. Linear Algebra and its Applications 114-115, 231–249, (1989). [5] S.-M. Guu, R. W. Cottle: On a subclass of P*. Linear Algebra and its Applications 223/224, 325–335, (1995). ´s: New criss-cross type algorithms for linear complementarity prob[6] Z. Csizmadia, T. Ille lems with sufficient matrices. Optimization Methods and Software Vol. 21 No. 2, 247–266, (2006). [7] Z. Csizmadia: New pivot based methods in linear optimization, and an application in petroleum industry. PhD Thesis, E¨ otv¨ os Lor´ and University of Sciences, Budapest, 2007. ´s, A. Nagy: The s-monotone index selection rules for pivot al[8] Z. Csizmadia, T. Ille gorithms of linear programming. European Journal of Operation Research 221, 491–500, (2012). ´s, A. Nagy: The s-Monotone Index Selection Rule for Criss-Cross [9] Z. Csizmadia, T. Ille Algorithms of Linear Complementarity Problems. Acta Universitatis Sapientiae - Informatica Vol. 5 No. 1, 103–139, (2013). [10] K. Fukuda, M. Namiki, A. Tamura: EP theorems and linear complementarity problems. Discrete Applied Mathematics Vol. 84 No. 1–3, 107–119, (1998).
Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
19
[11] R. W. Cottle, S.-M. Guu: Two characterizations of sufficient matrices. Linear Algebra and its Applications 170, 65–74, (1992). [12] D. den Hertog, C. Roos, T. Terlaky: The linear complimentarity problem, sufficient matrices, and the criss-cross method. Linear Algebra and its Applications 187, 1–14, (1993). ´s, C. Roos, T. Terlaky: Polynomial affine-scaling algorithms for P*(κ) linear [13] T. Ille complementary problems. Lecture Notes in Economics and Mathematical Systems 452, pp. 119–137, (1997). ´s, JM. Peng, C. Roos, T. Terlaky: A strongly polynomial rounding procedure [14] T. Ille yielding a maximally complementary solution for P*(κ) linear complementarity problems. SIAM Journal on Optimization 11, 320–340, (2000). ´s, T. Terlaky: Pivot versus interior point methods: Pros and cons. European [15] T. Ille Journal of Operation Research 140, 170–190, (2002). ´s T., e ´s Nagy M.: Mizuno–Todd–Ye t´ıpus´ [16] Ille u prediktor–korrektor algoritmus el´ egs´ eges m´ atrix´ u line´ aris komplementarit´ asi feladatokra. Alkalmazott Matematikai Lapok 22, 41–46, (2005). ´s, M. Nagy, T. Terlaky: A polynomial path-following interior point algorithm [17] T. Ille for general linear complementarity problems. Journal of Global Optimization 47, 329–342, (2010). ´s, M. Nagy, T. Terlaky: Polynomial Interior Point Algorithms for General Linear [18] T. Ille Complementarity Problems. Algorithmic Operations Research 5, 1–12, (2010). ´s T.: Line´ [19] Ille aris optimaliz´ al´ as elm´ elete ´ es pivot algoritmusai. Operations Research Reports, 2013-03. http://www.cs.elte.hu/opres/orr/download/IT-LP-pivot-jegyzet20131031.pdf [20] Klafszky E., Terlaky T.: A pivot technika szerepe a line´ aris algebra n´ eh´ any alapvet˝ o t´ etel´ enek bizony´ıt´ as´ aban. Alkalmazott Matematikai Lapok 14, 425–448, (1989). [21] E. Klafszky, T. Terlaky: Some Generalizations of the Criss-Cross Method for Quadratic Programming. Math. Oper. und Stat. ser. Optimization 24, 127–139, (1990). [22] E. de Klerk, C. Roos and T. Terlaky: Nemline´ aris Optimaliz´ al´ as. Oper´ aci´ okutat´ as ´ No. 5., Budapesti K¨ ozgazdas´ agtudom´ anyi ´ es Allamigazgat´ asi Egyetem, Oper´ aci´ okutat´ as Tansz´ ek, Budapest (2004). [23] M. Kojima, S. Mizuno, A. Yoshise: A primal-dual interior point algorithm for linear programming. in: N. Megiddo, ed., Progress in Mathematical Programming, Interior-Point and Related Methods, Springer, New York, pp. 29–48, (1988). [24] M Kojima, S. Mizuno, A. Yoshise: A polynomial-time algorithm for a class of linear complementarity problems. Mathematical Programming 44, 1–26, (1989). [25] M. Kojima, N. Megiddo, T. Noma, A. Yoshise: A unified approach to interior point algorithms for linear complementarity problems. Lecture Notes in Computer Science 538, Springer-Verlag, (1991). [26] C. E. Lemke, J. T. Howson, Jr.: On complementary pivot theory. Mathematics of decision sciences, Volume Part 1, 95–114.
Alkalmazott Matematikai Lapok (2013)
20
´ TIBOR ES ´ NAGY ADRIENN ILLES
[27] M. Nagy: Interior point algorithms for general linear complementarity problems. PhD Thesis, E¨ otv¨ os Lor´ and University of Sciences, Budapest, (2009). [28] C. van de Panne, A. Whinston: A Parametric Simplicial Formulation of Houthakker’s Capacity Method. Econometrica, Vol.34, No. 2, 354–380, (1966). [29] C. van de Panne, A. Whinston: Simplicial methods for quadratic programming. Naval Research Logistics, Vol. 11, 273–302, (1964). [30] C. van de Panne, A. Whinston: The Simplex and the Dual Method for Quadratic Programming. Operational Research Quarterly, Vol. 15, 355–388, (1964). [31] C. van de Panne, A. Whinston: The Symmetric Formulation of the Simplex Method for Quadratic Programming. Econometrica, Vol. 37, No. 3, 507–527, (1969). [32] T. Terlaky: A new algorithm for quadratic programming. European Journal of Operational Research, Vol. 32, 2: 294–301, (1987). [33] A. W. Tucker: Principal pivotal transformations of square matrices. SIAM Review, pp. 305, (1963). [34] H. V¨ aliaho: A new proof for the criss-cross method for quadratic programming. Optimization, Vol. 25, No. 4, 391–400, (1992). [35] H. V¨ aliaho: P*-Matrices Are Just Sufficient. Linear Algebra and its Applications 239, 103–108, (1996). [36] P. Wolfe: The Simplex Method for Quadratic Programming. Econometrica Vol. 27, No. 3, 382–398, (1959).
(Be´ erkezett: 2013. december 7.)
´ TIBOR ILLES BME Differenci´ alegyenletek Tansz´ ek 1111 Budapest, Egry J´ ozsef utca 1, H ´ ep. IV. em.
[email protected] NAGY ADRIENN FICO B37 7GN, Birmingham, Starley Way, United Kingdom
[email protected]
FINITENESS OF THE QUADRATIC SIMPLEX METHOD WITH THE APPLICATION OF INDEX SELECTION RULES ´s, Adrienn Nagy Tibor Ille We provide a new proof for the finiteness of the primal simplex method for linearly constrained convex quadratic programming problems when using index selection rules. The original
Alkalmazott Matematikai Lapok (2013)
´ ´ A KVADRATIKUS SZIMPLEX ALGORITMUS VEGESS EGE
21
quadratic simplex algorithm was developed by Wolfe and van de Panne and Whintson, and have been published in a series of papers in the 1960s, using perturbation techniques to ensure finiteness. We show that for the method to cycle, the pivots and the problem needs to be degenerate; i.e. the value of all the variables -in the corresponding pivot tableau of the Karush-Kuhn-Tucker system- taking part of the primal ratio test needs to be zero, but moreover, the the value of the entries in the transformed pivot columns that correspond to the quadratic objective must be zero. It follows that the quadratic primal simplex method is finite for any index selection rule that only relies on the sign structure of the transformed right hand side and of the reduced costs, and for which the corresponding traditional primal simplex method is finite for linear programming problems.
Alkalmazott Matematikai Lapok (2013)