NASZVADI PÉTER Load-flow jellegű feladat a villamos rendszerirányításban TDK dolgozat 2006
Előszó: Adott egy (villamosenergiaellátást biztosító) villamoshálózat, és ezen hálózathoz csatlakozó energiatermelők és fogyasztók. A modern rövid- és középtávú energiaigény-előrejelzések ismeretében az energiaellátást biztosító erőművek ütemezése egy determinisztikus optimalizálási feladatnak tekinthető, speciálisan parciális differenciálegyenlet-rendszernek. Egy ilyen ütemezést menetrendnek nevezünk. A gyakorlatban célszerű a diszkrét, ekvidisztáns időpontokban skalár ismeretlennek tekinteni az egyes termelők és fogyasztók által termelt/használt energiamennyiséget. E diszkrét relaxációval, a modellhez hozzáveendő korlátozó feltételekkel és az ezeket megoldó algoritmusokkal fogunk foglalkozni a dolgozatban megmutatva, hogy bizonyos speciális esetekben erősen polinomiális algoritmus adható nagyon jól közelítő modellel felírt feladatokra. A dolgozatban közlünk egy módszert, mellyel speciális esetben egészértékű megoldást találunk polinomidőben az optimális menetrend meghatározására. Majd összefoglaljuk azon korlátozó feltételeket, melyek modellbe való vételével már NP-nehéz vagy NP-teljes lesz a probléma. 2
. fejezet: felhasznált matematikai eszközök Definíció.: Egy mátrixot teljesen unimodulárisnak nevezünk, ha minden négyzetes részmátrixának determinánsa ± vagy 0. Az ilyen mátrixot a továbbiakban TU -val jelöljük. Megjegyzés.2: TU mátrix csak ± vagy 0 elemekből állhat. Definíció.3: Egy halmazrendszert lamináris rendszernek nevezünk, ha tetszőleges két eleme vagy diszjunkt, vagy az egyik szigorúan bővebb a másiknál. A továbbiakban használatos rövidítés: LR. Megjegyzés.4: Minden LR -hez konstruálható egy ki-fenyő az alábbi módon: legyenek a fenyő csúcsai a halmazrendszer tagjai, és két pont pontosan akkor van összekötve egy éllel, ha az él forrása a legszűkebb olyan halmaz, ami tartalmazza az él végpontjának megfelelő halmazt, és szigorúan bővebb nála. Triviális, hogy ez az irányított gráf egy alaphalmaz-forrású ki-fenyőt fog alkotni. Definíció.5: Egy A mátrix ún. hálózati mátrix, ha G irányított gráf és F G irányítatlan értelemben feszítő fa, melyekre igaz: F éleinek A sorai, G F éleinek A oszlopai feleljenek meg; a i, j =±, ha az oszlopnak megfelelő e élre F {e } -beli körben az i-dik él e -vel megegyező/ellentétes irányítású (negatív, ha ellentétes); a többi esetben 0. Megjegyzendő, hogy G F esetén feltesszük, hogy V F =V G. Az A hálózati mátrixhoz tartozó G gráfot (a mátrixhoz tartozó) hálózati gráfnak nevezzük. mátrix. Tétel.6: TU mátrix részmátrixa, transzponáltja TU ; hálózati mátrix részmátrixa hálózati Megjegyzés.7: Hálózati mátrix transzponáltja nem feltétlen hálózati mátrix () A 0 0 0 0 0 0 0 0 0 0 0 0 hálózati mátrix, A T viszont nem az. A hálózati gráf pedig nem más, mint egy ötcsúcsú körmentes turnament gráf, ahol a feszítőfa élek a(z egyetlen abszolút) győztesből indulnak kifele. Definíció.8: Pivotálás egy mátrix valamely nemzérus elemén: (2) A R m n, A= c b D A= c b D bc, {D,bc } R m n Speciálisan hálózati mátrixoknál a pivotálás szemléletes jelentése nem más, mint egy feszítőfabeli élt kicserélni egy nem-fa élre. Tétel.9: A TU, illetve a hálózati mátrixok invariánsak az alábbi műveletekre: tetszőleges 3
két sor/oszlop megkettőzése, tetszőleges két sor/oszlop felcserélése, tetszőleges sor/oszlop elemenkénti negálása, tetszőleges sor/oszlop nullával való beszorzása, identitásmátrix soraival/oszlopaival történő konkatenáció, pivotálás bármely nemnulla elemen. Tétel.0: Minden hálózati mátrix TU. Megfordítva nem igaz. Egy A mátrix hálózati mátrix akkor és csak akkor, ha előáll egy irányított gráf pont-él incidenciamátrixából véges sok pivotálás elvégzése után. Megjegyzés.: TU, de nem hálózati mátrixok: (3) Tétel.2: (Ghouila-Houri, []) 0 0 0 0 0 0, 0 0 0 0 illetve (4) 0 0 0 0 0 0 0 0 (5) A R m n TU x {,0 } n x {±,0 } n : A x {±,0 } m i : x i =x i Tétel.3: (Chandrasekaran, [2]) (6) A R m n TU D A :det D 0, D R k k y {±,0 } k : lnko Dy = Ahol lnko az argumentumában szereplő számok kitüntetett közös osztóját jelenti. Tétel.4: Lamináris rendszer mátrixa hálózati mátrix Bizonyítás: Triviális, rekurzív módon. Egyelemű halmaz karakterisztikus vektora egyetlen helyen, a többi helyen 0 sorvektor, így ez a sor eltávolítható amennyiben van ilyen sor, a maradék sorok alkotta mátrix pontosan akkor hálózati mátrix, ha eredetileg is az volt. Ha meg nincs egyelemű halmaz, akkor van (legalább) két egyforma oszlop, amelyik közül az egyik eltávolítható, a maradék oszlopok által alkotott mátrix is pontosan akkor hálózati mátrix, ha eredetileg is az volt. Az előbbi két műveletet iteráljuk., illetve a 0 elemből álló egyelemű mátrixok hálózati mátrixok. Q.E.D. Tétel.5: minden TU mátrixszal leírt egészértékű lineáris programozási feladat polinomidőben megoldható, ha egészértékűek a korlátozó vektorok. Bizonyítás: Khacsiján 979-es eredményéből és Hoffman-Kruskal tételkörből következik triviálisan Tétel.6: minden hálózati mátrixszal leírt LP feladat ekvivalens egy áramfeladattal. Következmény.7: áramfeladat erősen polinomidőben megoldható (egészértékű korlátok esetén egészértékű lesz az optimális megoldás is). Tétel.8: Konvex abszolútértékes célfüggvényes lineáris korlátozó feltételes optimalizálási feladat átírható LP feladattá. Ha az eredeti feladat P-ben volt, akkor az új feladat is P-beli. 4
Bizonyítás: Tekintsük a feladatot: (7.a) f x c T x c T i x (7.b) k i= min f x Ax b Vezessünk be új változókat és korlátozó feltételeket: (8) C c c 2 c k R k n, z z, z 2,, z k,w w,w 2,,w k, R k ahol A R m n ; c, c i R n c i T x= z i w i z i 0, w i 0 Ekkor a feladat az alábbi módon írható le: (9.b) k (9.a) min x ct z i w i i= A 0 0 C I k k I k k 0 I k k 0 0 0 I k k x z w Látható, hogy a (9) egy LP probléma, mérete a (7) által meghatározott eredeti probléma méretének legföljebb kvadratikus polinomjával korlátozható felülről. És mivel ez egy LP feladat, ezért polinomidőben megoldható. Már csak azt kell belátni, hogy i : z i =0 w i =0 minden x, z, w optimális megoldás esetén. Valóban, ha feltesszük indirekt, hogy x, z, w optimális megoldás és i : z i 0, w i 0, akkor r i min z i, w i bevezetésével b = 0 0 0 x, x 2,, x n,z,, z i, z i r i, z i,, z k, w,, w i, w i r i, w i,, w k is megengedett megoldás lesz, node szigorúan csökkent a célfüggvény érték, ami ellentmondás. Ezzel beláttuk, hogy (7) és (9) optimális megoldáshalmazai ekvivalensek. Q.E.D. Tétel.9: Részhalmaz-összeg feladat NP-teljes (lásd [5]). Jelölés.20: Bidiagonális, illetve tridiagonális mátrix: b 0 (0.a) bidiag s t a,b a a b 0 R (0.b) bidiag s a,b bidiag s s a,b 5 s t
b c 0 (0.c) tridiag s t a,b,c a s t a b c 0 R (0.d) tridiag s a,b,c tridiag s 2 s a,b,c Jelölés.2: Mátrixok konkatenációit a szokásos módon jelöljük, viszont fontos az alábbi művelet, az átlós konkatenáció adott A, A 2,, A k nem feltétlenül azonos méretű mátrixokra: 0 0 k 0 A () A i A A 2 A k A 2 k i= 0 0 0 A 6
2. fejezet: modellek leírása Konvenció: a továbbiakban minden megszámlálhatónál bővebb halmazon értelmezett függvényt folytonosnak és egy nullmértékű, sehol sem sűrű halmaz komplementerén analítikusnak tekintünk. Legyen egy optimalizálási feladat a következő: adott egy véges hosszú időtartam, véges darabszámú áramfogyasztó, illetve áramtermelő erőmű. Ismertek az energiaárak és a villamoshálózati meg az erőművek teljesítményeire vonatkozó korlátozó feltételek, továbbá az energiaigény, mint az idő függvénye. Mint minden gyakorlati optimalizálási feladat, ez is többcélfüggvényű; ilyenkor szokás a különböző célfüggvények kúpkombinációit célfüggvénynek tekinteni, a kúpkombinációból kimaradó célfüggvényeket minorálva/majorálva a korlátozó feltételek közé venni. Az erőművek/fogyasztók halmazát jelölje E, k E, k, az időtartamot pedig jelölje T, T [0, r ], r menetrendet. Formálisan felírva kapjuk az alábbi függvényegyenletet: (2.a) min C x t (2.b) x t F Célunk megadni egy minimális költségű ahol C skalárértékű költségfunkcionál, F F i megengedettségi halmaz, x t : T R k pedig az erőművek/fogyasztók által megtermelt előjeles enerigaérték-vektorokba képező függvényt jelenti (, dimenziója MW). A nemzetközi energia-kereskedelemben elfogadott szokás, hogy T időtartamot diszkrét halmaznak tekintik, ekvidisztáns időpontokat kijelölve, egyenlő egymásba nem nyúló intervallumokra partícionálva; időpont helyett intervallum-végpontokra hivatkozva. Két szomszédos időpont távolsága megállapodás szerint tipikusan óra, de használnak 30, 20, 5, 2, 0 és perces beosztásokat is, illetve középtávú ütemezéseknél több órás távolságot is szoktak alkalmazni. Újradefiniáljuk a változóinkat: x t helyett egy r k dimenziós vektort értünk: x R r k ( r,k N rögzített pozitív egészek). Továbbá feltehető, hogy az általunk vizsgált esetekben a költségfunkcionál lineáris. A (2) eképpen az alábbi alakúra fog módosulni: (3.b) (3.a) min c T x r k x F R Még ebben az esetben is reménytelen megoldani a feladatot amennyiben csak egyetlen időpontunk van, k erőművünk/fogyasztónk, és F i= k k {0, ai }, F 2 { x i = x i =b }, F F F 2, akkor ez a részhalmaz-összeg feladat. Azaz ebben a speciális esetben NP-teljes (2.b) mint 7
megengedettségi feladat, a 9. tétel miatt. Ha viszont mint a hátizsák feladat, ami NP-nehéz. k F 2 { x x i b i = }, akkor (3) nem más, A célfüggvényünk már elkészült, most már a korlátozó feltételeket definiáljuk. Mivel minden erőmű/fogyasztó által leadható/felvehető villamosenergia-kapacitása korlátos, ezért: (4) b LO, e,t x e, t b UP,e, t e E, t T. Azaz a megengedettségi halmazt elmetszük egy kompakt hipertéglával. Következménye az, hogy korlátos a megengedett megoldások halmaza (ha nem üres). Az általánosság megszorítása nélkül feltehető, hogy t=0 időpontban b LO, e, 0 =b UP,e, 0. A következő korlátozó feltételnek szemléletes fizikai jelentést tulajdonítunk. Tegyük fel, hogy egyetlen erőművünk van összesen, egy e -vel jelölt, szilárd tüzelőanyaggal működő, tüzelőanyagőrlést nem végző blokk, amely 50, illetve 200 MW közötti teljesítményekre képes. A valóságban elegendően kicsiny időegységet választva egy időegységnyi idő eltelte alatt nem tud 50 MW-ról 200 MW-ra ugrani. A kazán teljesítményeire vonatkozó fizikai összefüggés: (5) t x t [ g LO t, g UP t ] ahol g LO t g UP t t T. Szemléletesen ebből x t lipschitzessége következik a fejezet elején megemlített konvenció miatt (meg a folytonos függvényekre vonatkozó Weierstrasstételből). Diszkrét esetben a számlálómérték szerint vett jobboldali differenciahányados-függvényre adott korlátozás analogonnak veendő: ahol x e, t (6.a) x e, t x e,t x e, t (6.b) g LO t x e,t g UP t értelmes, azaz t, amit hallgatólagosan feltettünk. Ismert a villamosenergia-igény, mint az idő függvénye. Ez folytonos esetben az alábbi korlátozó feltételt jelenti: (7) x t =D t e E ahol D t : T R függvény. Diszkrét esetben az alábbi alakot fogja ölteni: k (8) x e,t =D t e= t [0, r ] Z. Állítás.22: A (3.a), (4), (6.a), (6.b) és (8) által definiált lineáris programozási feladat mátrixa TU. 8
Bizonyítás (2004): A célfüggvény elhagyható triviális megfontolásokból (nem része a mátrixnak). A 9. tétel miatt (4) korlátozó feltétel által definiált mátrix-sorokat elhagyhatjuk, ők invariánsak a TU -ság szempontjából. Így elegendő csupán (6.a), (6.b), és (8) által definiált sorokat tekinteni a mátrixban, és az összefüggő sorok eltávolítása után az alábbi mátrix TU - ságát kell csak igazolni: k r oszlop (9) A I r ; I r ; ; I r k i = bidiag r, Belátjuk, hogy egyenletesen 2-sorszínezhető, ekkor ugyanis [] miatt TU. Az A mátrix két részre bontható: (20.a) A= A A 2 (20.b) A = (20.c) A 2 = r r k R r k r k R Tekintsük az A mátrix sorainak tetszőleges S részrendszerét. Vezessük be az alábbi jelölést: S A S, S 2 S S. Most már csak azt kell igazolni, hogy csupán A -beli sorok és oszlopok ponálásával, illetve negálásával A 2 azon oszlopaiban szereplő egyeseket negálni lehet, amely oszlopokban S egyest tartalmaz úgy, hogy A többi eleme változatlan maradjon. Ez azért jó nekünk, mert ekkor rögzített S esetén tetszőleges S 2 választásánál elegendő a kiválasztott sorokat összeadni, és ekkor TU vektort kapunk. Nézzük a következő eljárást: első lépésben kiválasztunk egy olyan j oszlopot, melyre S nemnulla elemet tartalmaz, a i, j pedig azon. A 2 -beli nemnulla elem, melyre i minimális. Második lépésben A minden olyan j oszlopát 9
negáljuk, melyre j mod r j mod r, és A minden negatív elemet tartalmazó sorát negáljuk. Harmadik és egyben utolsó lépésben A 2 minden olyan i sorát negáljuk, melyre i mod r i mod r. Az eljárás során a i, j és minden vele azonos r -es maradékú oszlop-koordinátával rendelkező A 2 -beli nemzérus elemek közül a legkisebb sorindexűek negálódnak, mert őket csak egyszer negáltuk, míg a többi nemzérus mátrixelemet páros sokszor. Az eljárást addig folytatjuk, míg a kívánt alakú nem lesz A. Q.E.D. Következmény.23: A 5. tétel miatt (3.a), (4), (6.a), (6.b) és (8) által meghatározott lineáris optimalizálási feladatnak egészértékű korlátozó vektorok esetén egészértékű optimális megoldása állítható elő polinomidőben (ha létezik). Egy szép eredményt kaptunk, viszont a benne szereplő modell azt feltételezte, hogy a távvezeték-hálózat egypontú. A következőkben bevezetünk (4) és (8) feltételeknek egy közös általánosítását, mellyek bizonyos távvezeték-hálózat topológiák is jobban kezelhetők, és az így kapott LP feladat hálózati mátrixszal rendelkezik (, ebből persze a 2. állítás is következik). Tekintsünk minden t [0, r ] Z esetén LR t : LR t 2 E lamináris rendszereket. Egyelőre tegyük fel, hogy mindegyik lamináris rendszer tartalmazza az alaphalmazt ( E LR t t ) és az egyelemű halmazokat, de majd később látni fogjuk, hogy ez megy az általánosság rovására. Jelölje L t {0, } LR t k az LR t karakterisztikus vektoraiból álló mátrixot, L t j az L t mátrix j -dik oszlopát. Jelölje továbbá x t x,t, x 2,t,, x k, t. Vezessük be az alábbi korlátozó feltételeket minden t -re: (2) b t L t x t d t Állítás.24: A (3.a), (6), (2) által definiált LP feladat mátrixa hálózati. A bizonyítás előtt megjegyzendő, hogy nem jelentett megszorítást az, hogy hozzávettük Szigorúan konvex célfüggvények Lineáris célfüggvények Többcélfüggvényű optimalizálási feladatként való megfogalmazás és prioritási sorrend a célfüggvények között. Tétel: prioritási sorrendhez létezik célfüggvények affin kombinációjaként előálló célfüggvény. Tétel: algoritmus 0
Lépésszámbecslés (P-ben van), eltérésbecslés
Irodalomjegyzék: [] A. Ghouila-Houri. Charactérisation des matrices totalement unimodulaires. Comptes Rendus Hebdomadaires des Séances de l'académie des Sciences (Paris), 254:92-94, 962 [2] R. Chandrasekaran. Total unimodularity of matrices. SIAM Journal of Applied Mathematics, 7:032-034, 969 [3] Deák István, Hoffer János, Mayer János, Németh Ágoston, Potecz Béla, Prékopa András, Strazicky Beáta: Nagyméretű, vegyesváltozós, matematikai modell termikus villamos energia-rendszer rövid távú, optimális menetrendjének meghatározására hálózati feltételek figyelembevételével, Alkalmazott Matematikai Lapok 9:22-337, 983 [4] Khachiyan L.G.: A polynomial algorithm in linear programming, Soviet Mathematics doklady, 20:9-94, 979. [5] Lovász László: Algoritmusok bonyolultsága, 50-5, 4.5.6, Nemzeti tankönyvkiadó, 200. [6] Kotnyek Balázs: A generalization of totally unimodular and network matrices. PhD thesis, London School of Economics, 2002 [7] A. Hoffman and J. Kruskal. Integral boundary points of convex polyhedra. In H. Kuhn and A. Tucker, editors, Linear inequalities and Related systems, pages 223-246, Princeton University Press, Princeton, NJ, 956 2