Elektrotehniški vestnik 82(3): 102-110, 2015 Izvirni znanstveni članek Večagentni model za agente odjemalce in agente proizvajalce na trgu električne energije, 1. del - model Blaž Kladnik1, Gašper Artač2, Melita Hajdinjak3, Andrej Gubina3 'BSE, d.o.o., Koprska ulica 92, 1000 Ljubljana, Slovenija 2GEN-I, d.o.o., Vrbina 17, 8270 Krško, Slovenija 3Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška cesta 25, 1000 Ljubljana, Slovenija E-pošta: blaz.kladnik@fe. uni-lj.si Povzetek. Zaradi pomanjkljivosti predstavljenih modelov in zaradi potrebe modeliranja odjemalcev kot aktivnih in prilagodljivih udeležencev trga smo v članku predlagali nov način modeliranja prilagodljivega odziva odjemalcev s pomočjo agentnega modeliranja. Z agentom odjemalcem smo modelirali skupno delovanje odjemalcev in njegovega dobavitelja. Agent v sebi združuje trg na drobno in nastopa na trgu na debelo ter lahko predstavlja združbo dobavitelja in enega ali več odjemalcev. Delovanje agentov se vseskozi vrednoti - agenti za svoje akcije dobivajo pozitivne in negativne nagrade, ki jim pomagajo ločiti dobre akcije od slabih. Skozi čas so se agenti odjemalci sposobni učiti iz preteklih akcij. Naučijo se izbrati tiste akcije, ki so v danih okoliščinah zanje najboljše. Za učni algoritem smo izbrali SA-Q-učenje, in sicer predvsem zaradi robustnosti in preprostosti algoritma in možnosti uporabe na številnih področjih agentnega modeliranja in strojnega učenja. Agenti si prizadevajo zmanjšati razliko med stroški, ki jih imajo z nakupom na trgu na drobno odjemalci električne energije, in stroški, ki jih imajo dobavitelji z zagotavljanjem potrebnih količin energije na trgu na debelo. To dosegajo s prilagajanjem zahtevanih količin energije na trgu na debelo. V prvem delu članka je predstavljen agentni model. Ključne besede: agentno modeliranje, Q-učenje, agentno modeliranje, modeliranje odjemalcev, integracija aktivnega odjema Multi-agent model for demand-side agents and producers' agents at the electricity market, Part 1 - Model Due to the imperfections existing models and the needs of modelling active and flexible consumers we are proposing a new methodology of modelling the flexible demand-side response with agent-based approaches. The demand-side agent comprises the retail electricity market and is present at the wholesale electricity market and represents the supplier and one or more consumers. The demand-side agents' performance is being continuously evaluated with giving the agents positive and negative rewards for their performed actions. The agents learn to choose to perform those actions which turn out to be the best form themselves. The SA-Q learning algorithm has been chosen for the learning. The first of this two paper series presents the agent-based model. 1 Uvod Odjemalci so prav z uvedbo trga električne energije donedavno predstavo, da je električna energija vedno na voljo v želenih količinah, prisiljeni zamenjati z miselnostjo, da je električna energija dandanes tržno blago, na voljo v omejenih količinah in po ceni, ki jo narekuje razmerje med ponudbo in povpraševanjem na trgu [1]. Ali bo v to miselnost odjemalce lahko dokončno prisilil trg sam, je težko reči, saj še zlasti na trgih na drobno na ceno električne energije močno vpliva državna politika. Kljub vsemu drži, da se konične obremenitve v EES še vedno večajo, s tem pa se višajo cene električne energije ter povečuje tveganje za izpad dobave električne energije. Ker je zaradi težavnega umeščanja elektroenergetskih objektov v prostor (pri nas in v vsej Evropski uniji) težko zagotoviti nove okrepitve prenosnega in distribucijskega omrežja, različna podjetja, raziskovalne organizacije in sistemski operaterji iščejo take rešitve, da bi se povečala prilagodljivost odjemalcev. V zadnjem desetletju je to področje postalo ena najpomembnejših tem v elektroenergetiki. Poimenovano je z več imeni, kot so integracija aktivnega odjema (DSI, angl. Demand Side Integration), odzivnost odjema (DSR, angl. Demand Side Response) in upravljanje odjema (DSM, angl. Demand Side Management). Na splošno se področje integracije aktivnega odjema (DSI) nanaša na metode aktivnega Prejet 18. december, 2014 Odobren 27. marec, 2015 VEČAGENTNI MODEL ZA AGENTE ODJEMALCE IN AGENTE PROIZVAJALCE NA TRGU ELEKTRIČNE ENERGIJE, 1. DEL 103 vključevanja prilagodljivosti odjemalcev v EES. Mednarodni svet za velike elektroenergetske sisteme (CIGRE, fra. Conseil international des grands réseaux électriques) je področje DSI opredelil kot "splošno tehnično področje, usmerjeno v spodbujanje učinkovite in smotrne rabe električne energije za podporo EES in za potrebe odjemalcev, ki vključuje tako ukrepe odzivnosti odjema kot tudi energetske učinkovitosti" [2]. Eden najpomembnejših učinkov DSI je prilagodljivost odjemalcev oz. prilagajanje povpraševanja po energiji glede na njeno ceno. Z izjemo nekaterih velikih neposrednih odjemalcev, ki so prisotni tudi na trgu na debelo, so odjemalci prisotni na trgu električne energije na drobno, kjer jim energijo zagotavlja njihov dobavitelj. V imenu odjemalcev dobavitelj deluje na trgu na debelo, kjer kupuje električno energijo od proizvajalcev (in trgovcev). Dobavitelj prevzame predvsem količinska in cenovna tveganja odjemalcev, ki bi jim bili le-ti izpostavljeni na trgu na debelo. Čeprav imata dobavitelj in odjemalec na splošno nasprotujoča si cilja, pa se lahko medsebojno zavežeta, da bosta delovala za skupen cilj, ki je prilagodljivost na trgu na debelo za ustvarjanje finančne koristi. Prilagodljivost dobavitelju, ki nastopa na trgu na debelo, omogočajo njegovi odjemalci s svojo prilagodljivostjo. Ti programi delovanja so v strokovni literaturi poznani kot ponujanje ali povpraševanje neposredno s strani odjemalcev (angl. Demand-Side Bidding) in programi odkupov energije (angl. Buyback Programs) [2]. V članku bomo delovanje dobavitelja in njegovih odjemalcev predstavili s pomočjo agentnega modeliranja in skupno delovanje dobavitelja in njegovih odjemalcev poimenovali kot agenta odjemalca. Čeprav izhaja s področja umetne inteligence (angl. Artificial Intelligence), ki tradicionalno ni tesno povezana z elektroenergetiko, agentno modeliranje pridobiva na veljavi tudi v elektroenergetiki. Najpogostejša področja uporabe obsega diagnosticiranje napak, nadzorovanje stanja elementov v EES, vzpostavitev EES po razpadu, nadzorovanje stanja sistema in avtomatizacija ter, ne nazadnje, simuliranje elektroenergetskega trga [3]. Agentno modeliranje omogoča največjo prilagodljivost za raziskovanje sovplivov različnih udeležencev na trgu, njihovega obnašanja in razvoj a. Agenti so sposobni na podlagi izkušenj iz preteklosti, vgrajene logike in predvidevanj o okolju, v katerem delujejo, sprejemati svoje odločitve [4]. Podobno se vedejo tudi udeleženci na elektroenergetskih trgih v realnosti, saj svoje obnašanje v skladu z razmerami na trgu in glede na druge udeležence vseskozi prilagajajo in ne ostajajo nujno pri neki vnaprej določeni strategiji. V članku bomo predstavili nov adaptivni agentni model za agente odjemalce električne energije, ki delujejo na trgu električne energije za dan naprej [5]. Pri zasnovi adaptivnih agentov odjemalcev smo definirali akcije, ki jih bodo agenti izvajali, stanja, v katerih se agenti lahko znajdejo, in kriterij, v skladu s katerim vrednotijo kakovost svojih akcij. Delovanje agentov odjemalcev bomo predstavili tudi na testnem sistemu. 2 Agentno modeliranje 2.1 Splošno V osnovi je agent računalniški program, ki se nahaja v določenem okolju in se je sposoben avtonomno odzivati na spremembe v tem okolju. Agent je avtonomen, če je sposoben na podlagi opazovanja okolja (ali sprememb v okolju) neodvisno izbrati in izvesti določeno akcijo, torej samostojno sprejeti odločitve glede na svoje senzorje in prek aktuatorjev povratno vplivati na okolje z namenom doseganja zastavljenega cilja [3], [6]. Druga, za naše potrebe pomembna lastnost, je adaptivnost. Agent je adaptiven, če lahko skozi čas svoje odločitve izboljšuje, kar privede do izkušenega agenta, sposobnega boljših odločitev in doseganja boljših rezultatov. Agent in okolje sta medsebojno povezana, včasih celo do te mere, da je težko definirati mejo med njima. Okolje, v katerem se nahaja agent, nosi zanj pomembne informacije v nekem časovnem intervalu. Ker je narava elektroenergetskega trga takšna, da na njem nastopa več med seboj različnih udeležencev z različnimi, tudi med seboj nasprotujočimi si cilji, to zahteva uporabo t. i. večagentnih sistemov (angl. Multi Agent Systems). Večagentni sistemi spadajo v domeno razpršene umetne inteligence (angl. Distributed Artificial Intelligence), ki se med drugim ukvarja z načini konstrukcije sestavljenih (večagentnih) sistemov ter z usklajevanjem delovanja teh agentov [6]. Slika 1 predstavlja heterogeni agentni sistem, kjer je heterogenost predstavljena z različnimi stili pisav, črt, puščic. Slika 1: Heterogeni večagentni sistem z možnostjo komunikacije med agenti [6] Zgradbe različnih agentov se lahko močno razlikujejo med seboj, predvsem glede na naravo problema, ki ga obravnavamo. 2.2 Agenti na elektroenergetskem trgu Vsakega udeleženca ali skupino udeležencev na trgu električne energije lahko predstavimo kot agenta. 104 KLADNIK, ARTAČ, HAJDINJAK, GUBINA Agenti, ki so nujno potrebni za obstoj trga električne energije, so: • agent organizator trga, • agent proizvajalec in • agent odjemalec. Tem agentom lahko dodamo še druge agente: agent regulator trga, agent sistemski operater, agent trgovec, agent dobavitelj in agent agregator. Na kratko predstavimo vlogo najpomembnejših agentov. Agent organizator trga zbira ponudbe proizvajalcev in povpraševanja odjemalcev ter te ponudbe ovrednoti in izračuna tržno ravnovesje. To pomeni, da določi tržno ceno električne energije: za proizvodne enote določi sprejete ponudbe, torej določi količine, ki jih bodo posamezni proizvajalci prodali na trgu po tržni ceni, za odjemalce pa določi sprejeto povpraševanj e, torej določi količine energije, ki jih bodo posamezni odjemalci lahko kupili na trgu po tržnih cenah. Agent organizator trga lahko deluje na dnevnem, sprotnem ali terminskem trgu ter trgu sistemskih storitev in izravnalnem trgu. Določene trge lahko povezuje, npr. združi dnevni trg in trg sistemskih storitev ter ju optimizira skupaj. Agenti proizvajalci so v strokovni literaturi največkrat obravnavani agenti. Najpogostejši cilj teh agentov je proizvedeno električno energijo prodati s čim večjim dobičkom. To dosegajo z ustreznim oblikovanjem ponudb in njihovim nenehnim prilagajanjem. Cilj agentov odjemalcev je nakup želene količine električne energije po čim nižji ceni. Ker je odjemalcev na trgu zelo veliko, posamezni agenti na ravni trga ne predstavljajo posameznega odjemalca, ampak posamezno skupino odjemalcev. Področje modeliranja aktivnih agentov odjemalcev še ni podrobno raziskano, saj je bilo raziskovanje v preteklosti večinoma usmerjeno v agente proizvajalce, ki so nekatere razvite algoritme lahko tudi preizkusili. Poleg tega v znanstveni literaturi ne zasledimo kriterija, v skladu s katerim bi se agenti odjemalci obnašali. Posebna težava je tudi nepoznavanje mejnih cenovnih krivulj odjemalcev. Da agent odjemalec lahko nastopa neposredno na trgu na debelo, ga moramo nekako način združiti z agentom dobaviteljem ali pa agenta dobavitelja zaobidemo. 3 Adaptivni agentni model za agente ODJEMALCE 3.1 Splošno o adaptivnem večagentnem modelu V tem poglavju bomo predstavili adaptivni večagentni model za odjemalce električne energije. Za učni algoritem agentov smo izbrali SA-Q-učenje [7], [8], pri čemer smo Q-učenje nadgradili s postopkom, ki uravnoteži razmerje med t. i. raziskovalno in pohlepno strategijo agenta, t. i. kriterijem Metropolis, (SA, angl. SimulatedAnnealing, simulirano ohlajanje). Namesto uporabe modelov s privzetimi oblikami cenovnih krivulj odjemalcev predlagamo uporabo agentnega modela za odjemalce, ki je predstavljen v tem članku. Agent odjemalec pomeni združenega dobavitelja in njegove odjemalce. Referenčna cena agenta je cena, po kateri odjemalci električno energijo kupujejo od dobavitelja na trgu na drobno. Če je teh referenčnih cen več, govorimo o večtarifnem sistemu, če je ena sama, pa o enotarifnem sistemu. Dobavitelj se zaradi prilagodljivosti odjemalcev razmeram na trgu na debelo lahko prilagaja, tako da v pogodbenem razmerju z odjemalcem določi, da v primeru odstopanja med referenčno ceno in cenami na trgu na debelo odjemalca lahko prosi za prilagoditev - zmanjšanje ali povečanje odjema. V kakšni obliki in kolikokrat je določen odjemalec pozvan k prilagajanju lastnega odjema, je stvar pogodbenega razmerja med dobaviteljem in odjemalcem. Korist, ki jo ima od tega dobavitelj, pa leta razdeli tudi med odjemalce, zato se jim njihovo elastično obnašanje izplača. To združeno delovanje dobavitelja in odjemalcev predstavljamo kot agenta odjemalca na trgu električne energije na debelo, agent odjemalec pa združuje odnos med odjemalci in dobaviteljem na trgu na drobno. Ena bistvenih lastnosti agenta odjemalca je prilagodljivost na razmere na trgu. Agent odjemalec namesto uporabe mejne cenovne krivulje v skladu z razvitim kriterijem svoj odjem prilagaja glede na napovedane cene na trgu na debelo, referenčno ceno in omejitev odjemne moči navzgor in navzdol. Za realnejšo ponazoritev dejanskih razmer je potreben večagentni model za agente odjemalce. Vsak od agentov odjemalcev ima na splošno drugačno referenčno ceno, s čimer lahko ponazarjamo različno vedenje različnih dobaviteljev. Če zaradi uravnoteženosti delovanja aktivnim agentom odjemalcem dodamo tudi aktivne agente proizvajalce, model postane heterogen, saj si cilji in tudi akcije agentov proizvajalcev in agentov odjemalcev medsebojno nasprotujejo. 3.2 Kriterij za merjenje uspešnosti agentov odjemalcev Agenti za uspešno delovanje potrebujejo kriterij, s pomočjo katerega vrednotijo kakovost svojih akcij in v skladu s katerim jih izbirajo. Ta kriterij je v nekoliko spremenjeni obliki uporabljen kot nagrada pri SA-Q-učenju. Agentom pove, kako dobro izvajajo akcije za dosego zastavljenega cilja. Vrednost nagrade mora skozi učenje rasti, cilj agenta pa je doseči čim večjo nagrado v vseh obiskanih stanjih. Delovanje agentov odjemalcev, ki pomeni skupno prizadevanje dobaviteljev in njihovih odjemalcev za prilagajanje razmeram na trgu na debelo, natančneje na dnevnem trgu električne energije, ima en sam cilj: agent odjemalec skuša stroške, ki jih ima pri nakupu energije na trgu, na dnevnem trgu čim bolj približati stroškom, ki jih definira pogodba med odjemalci in dobaviteljem. Stroški, ki jih imajo po pogodbi odjemalci na trgu na debelo, so definirani kot produkt napovedane odjemne moči odjemalcev PD,h(l) in referenčne cene Aref,h(l). Pri tem privzamemo, da je referenčnih cen - če VEČAGENTNI MODEL ZA AGENTE ODJEMALCE IN AGENTE PROIZVAJALCE NA TRGU ELEKTRIČNE ENERGIJE, 1. DEL 105 ponazarjamo večtarifni sistem med dobaviteljem in odjemalci - lahko več. Enačbe bomo podali za eno samo referenčno ceno, torej za enotarifni sistem za vse agente odjemalce. Indeks i pomeni zaporedno številko agenta odjemalca, indeks h pa uro. Stroški, ki jih ima dobavitelj z nakupom električne energije na dnevnem trgu, so definirani kot produkt nove prilagojene moči PD,h(l)* (moč prilagodi agent odjemalec) in urne cene električne energije Ae,h Agent odjemalec želi, da bi bila razlika !Fd(i) med stroški odjemalcev in stroški dobavitelja čim manjša. = fi,»W • f "P* • A,h| ^ min ^ (1) Izbrani kriterij bomo uporabili kot funkcijo nagrade pri agentih odjemalcih, njihovo podrobno zgradbo pa predstavljamo v nadaljevanju. 4 Zgradba agenta odjemalca Izbrano SA-Q-učenje za agenta odjemalca zahteva določeno zgradbo agenta, ne zahteva pa eksplicitne definicije okolja. V nadaljevanju bomo predstavili spodaj našteto: stanja agenta odjemalca akcije agenta odjemalca iskalno tabelo agenta odjemalca nagrado agenta odjemalca SA-Q-postopek za učenje odjemalca postopek normalizacije in denormalizacije časovni prostor in prostor stanj 4.1 Stanja agenta odjemalca Stanja sj',p) opisujejo vse mogoče relevantne okoliščine, v katerih se lahko znajde agent. Izbrana morajo biti tako, da jih je agent sposoben napovedovati oz. predvidevati. Za agenta odjemalca smo za opis stanj izbrali ravni tržnih cen za naslednji dan. Ker je narava dnevnega trga električne energije taka, da se tržno ravnovesje za vse ure celotnega naslednjega dne določa enkrat na dan, morajo tudi ponudbe/povpraševanja agenti oddajati enkrat na dan v paketih po 24. Pri našem modelu smo predpostavili možnost učenja po vsaki uri in ne po 24 urah, in sicer zaradi pogostejšega obiska posameznega stanja. Agent napove ravni različnih stanj v učnem procesu. Da bi agent lahko podal ponudbo na trgu, mora odjemalec za vsako uro naslednjega dne določiti stanje, v katerem se bo znašel. Stanje agenta označuje napovedana cena električne energije. Glede na napovedano ceno se na začetku učnega procesa določijo cenovne ravni, ki opisujejo posamezna stanja, v katerih se lahko znajde agent odjemalec. Ravni različnih stanj morajo biti napovedane v učnem procesu. Za vsako uro naslednjega dne mora agent določiti stanje, v katerem se bo znašel v posamezni uri. To stanje pomeni napovedana cena električne energije, ki pripada določeni cenovni ravni. Celoten razpon cene na trgu med sezono p želimo torej razdeliti na končno veliko cenovnih nivojev M, ki definirajo nabor vseh mogočih stanj, v katerih se lahko znajde agent odjemalec. Razpon razdelimo na območja različne širine tako, da so vse ravni v sezoni obiskane približno enako pogosto. Širina določene m-te ravni dm(i,p) (pri čemer je 0 < m < M) je tako omejena z zgornjo in spodnjo ceno (Ae,mzg(l,p) in Aemsp(i,p)). Raven m je v določeni uri obiskana, če velja A e d„ti,p> « a e [A.J'-p),p)). (2) Spremenljivka p pomeni sezono. Zaradi sezonskih variacij v porabi električne energije se vrednosti tržnih cen v konicah in zunaj konic med seboj lahko bistveno razlikujejo. Cena, ki je v eni sezoni konična, je v neki drugi sezoni bliže povprečni tržni ceni, torej relativno nižja. Zato smo ravni za vsakega od letnih časov definirali posebej. Uporabljamo oznake p = 1 za pomlad, p = 2 za poletje, p = 3 za jesen in p = 4 za zimo. Tudi uporabljeni testni sistem ima definirane štiri letne čase, na začetku vsake sezone se učenje začne znova. Stanja so enolično določena kot ravni napovedane cene električne energije. Agent se v vsaki uri znajde v enem od teh stanj in s tem v pripadajoči ravni, to je odvisno od napovedane cene električne energije. 4.2 Akcije agenta odjemalca Agent lahko v vsakem posameznem stanju opravi cel nabor akcij, ki mu pomagajo izboljšati njegovo delovanje. V našem primeru bomo, da se izognemo stohastičnemu procesu izbire akcij za vsako posamezno stanje sm(l,p), definirali eno samo akcijo aj',p). Proces SA-Q-učenja agentu za vsako stanje posreduje osvežene Q-vrednosti Qm(i,p), ki so uporabljene za spremembo napovedanega odjema (povpraševanja) v pripadajočem stanju. Ta sprememba se doseže z množenjem Q-vrednosti in napovedane odjemne količine: „ ('■?)._ p (')* _ r> C'P) P (') (3) ah,m PD,h _ Qh,m ' PD,h v ' Če velja Qm(i,p) > 1, bo i-ti agent odjemalec količinsko povečal povpraševanje (odjem) PDh(l), če pa bo Qm(',p) < 1, bo agent količinsko zmanjšal povpraševanje (odjem) v določeni uri h, v kateri napovedana tržna cena agenta vodi v m-to stanje. Omejitev, ki jo zastavimo i-temu agentu, je, za kolikšen odstotek lahko spremeni napovedan odjem (povpraševanje) v določeni uri. Če je bil za i-tega agenta napovedan odjem PDh(l,p), se le-ta lahko spreminja v intervalu [PD,h,mm(l,p), PD,h,max(l,p)], ki je definiran za vsakega agenta s Qmm(l) in Qmax(l). P (i) = O (i)-P (i) (4) 1 D, h,min ¡¿min 1 D, h v ' P (i) = O (i) • P (i) (5) 1 D, h,max iimax 1 D, h v ' 106 KLADNIK, ARTAČ, HAJDINJAK, GUBINA PD. h (0* ■J P « p « 1 • |_ D, h, min 5 D h max J (6) Izvedbo akcije za /'-tega agenta odjemalca v m-tem stanju prikazuje slika 4.5, kjer vidimo, da je učni algoritem predvidel zmanjšanje povpraševanja (oz. napovedanega odjema), torej je morala biti Q-vrednost v prikazanem primeru manjša od 1. Indeks D smo zaradi boljše preglednosti izpustili. a,p).= p U)* = n a,p). p d) Si Stanje Ravni Akcija 1 Sprememba Akcija 2 Akcija n napov. cen povpraševanja V-P) Gi,i Ql,2 Ql,n s2(''p) Q2I1 Q2,2 Q2,n ~ (ip) sm Qm,1 Qm,2 Qm,n 4.4 Nagrada agenta odjemalca V prejšnjem poglavju smo predstavili kriterij za merjenje uspešnosti učenja agenta odjemalca, ki ga za potrebe Q-učenja poimenujemo kot nagrada. Doseči skušamo minimalno vrednost ¥D(/) (1). Ker pa je pri uporabljenem Q-učenju naloga adaptivnega agenta povečevanje nagrade, vrednosti ¥D(/) zamenjamo predznak in jo označimo z R (i) /D (0\ __ p (i) o (i)_(p (0*\ o VJVD )m p D,h ref (p D,h )m (7) P K mm"' Ph']* ¿V" iW> PD® [MW] Ph(/) ... Napovedan odjem (povpraševanje) Ph(/)* ... Z učenjem prilagojen odjem (povpraševanje) Slika 2: Izvedba akcije za /-tega agenta odjemalca v m-tem stanju 4.3 Iskalna tebela Vsak agent odjemalec pri učenju uporablja t. i. iskalno tabelo (angl. Look-up table), ki jo definirajo pari stanja in pripadajočega sklopa akcij. V njih se nahajajo zadnje, v učnem procesu določene Q-vrednosti, ki se z vsakim ponovnim obiskom določenega stanja osvežijo. Začetne Q-vrednosti v iskalni tabeli določi snovalec agenta in so v našem primeru vse enake 1, torej nevtralne. Tabela 1 prikazuje primer iskalne tabele za i-tega agenta odjemalca. V tej fazi razvoja je za vsako stanje definirana ena sama akcija (slika 2), vendar v nadaljnjem razvoju lahko sledi nabor več mogočih akcij, pri čemer se agent odloča, kateri nabor akcij je v določenem stanju najprimernejši. Tabela 1: Iskalna tabela agenta odjemalca Indeks m pomeni, da nagrado računamo za m-to stanje, (PD,h(/)*)m pa označuje v m-tem stanju prilagojeno količino odjema (povpraševanja). 4.5 SA-Q-učenje agenta odjemalca Agent i se znajde v določenem stanju sm in za zadnjo akcijo, ki jo je v t-tem obisku tega stanja izvršil, izračuna nagrado rm. V skladu s spodnjo enačbo kot linearno kombinacijo zadnje Q-vrednosti qm(t) in nagrade rm izračuna novo Q-vrednost qm(t+1), ki jo bo uporabil za novo akcijo v t+1-obisku stanja sm [9]. 0 .p'+1) - \(l-a ^V q {i.p.')+a ■ r iip\ če je m = s ^ lm/im m m ' J m ii.pt) če je m t st ii p) (8) O.".') _,/i „ ii.".'-1) U aj."^, kjerje a^'p 1 = 1. u(i) < 1 V zgornji enačbi predstavljamo i-tega agenta odjemalca, sezono p, zaporedno številko stanja m, zaporedno številko obiska stanja t in stanje sm. Q-vrednosti se posodobijo le za obiskano stanje. Utež v linearni kombinaciji zadnje Q-vrednosti qm(t) in nagrade rm je faktor a, ki je na začetku učenja enak 1. Ker namreč nimamo izkušenj oz. preteklih Q-vrednosti, je celotna utež na trenutno pridobljeni nagradi rm. Nato se z vsakim obiskom, skladno s faktorjem u, faktor a zmanjšuje. Kolikor več imamo izkušenj, toliko manj teže dobivajo trenutne nagrade. Q-učenju smo zaradi možnosti, da bi se agent ujel v neki lokalni optimum, dodali še SA-del, ki z uravnavanjem raziskovanja in izkoriščanja poskrbi, da ima agent v vsakem stanju veliko večje možnosti za odkritje globalnega optimuma [8]. Ker pa neskončno veliko obiskov v vsakem stanju ni mogoče, tudi možnost doseganja globalnega optimuma ni popolnoma zagotovljena. Če razpolagamo z naborom akcij, v vsakem trenutku obstaja taka, ki se je v dosedanjem poteku učenja v določenem stanju izkazala za najboljšo. Pravimo ji pohlepna akcija (angl. Greedy Action). Z izbiro pohlepne akcije uporabimo najboljše znanje, pridobljeno do tega trenutka, z izbiro nepohlepne akcije (angl. Non-greedy Action) pa raziskujemo, kar pomeni, q m q a m VEČAGENTNI MODEL ZA AGENTE ODJEMALCE IN AGENTE PROIZVAJALCE NA TRGU ELEKTRIČNE ENERGIJE, 1. DEL 107 da si povečamo možnost, da morda najdemo še boljšo pohlepno akcijo (če ta seveda obstaja). S tem povečamo verjetnost doseganja globalnega optimuma. Če smo s procesom učenja na začetku in je pred nami še veliko iteracij učenja, je dobro, da več raziskujemo. S tem raziščemo nepohlepne akcije in ugotovimo, katere od njih so od trenutne pohlepne morda boljše. Bolj ko gre učenje proti koncu, manj smo pripravljeni tvegati in raje izbiramo pohlepne akcije. Potreba po uravnoteženju raziskovanja in uporabi pridobljenega znanja je v problematiki okrepljenega učenja zelo pomembna. Omenjeni problem nam pomaga obvladati kriterij Metropolis (SA-dodatek), ki poteka znotraj določenega stanja pred izračunom enačbe (8) v naslednjih korakih [7], [8]: 1. Naključno izberemo akcijo as'. To pomeni, da izberemo neko naključno Q-vrednost med Qmm(i) in Qmax(i). 2. Izberemo akcijo a" v skladu s pohlepno strategijo. To pomeni, da izberemo Q-vrednost, pri uporabi katere smo v dosedanjem poteku učenja, v stanju, v katerem se nahajamo, dobili največjo nagrado. 3. Generiramo naključno število 4 e (0,1). Uporabimo enačbo: linearna kombinacija teh dveh parametrov, jih moramo ustrezno normirati, da enačba daje smiselne rezultate [10]. Da določimo interval, na katerem želimo normalizirati Q-vrednosti in nagrade, moramo prej opraviti testne simulacije, ki pokažejo okvire, v katerih se za posameznega agenta gibljeta ta dva parametra. Normirani parametri se gibljejo v zaprtem intervalu [0,1]. Slika 3 prikazuje okvire za normalizacijo parametrov. qmax 1 qmin 0 rmax 1 rmin 0 4 < e 4 > e (9) Tempm 4. Izbrana akcija, as, v Metropolis kriteriju posledično spremeni Q-vrednost qm(i,p,i) v enačbi (8) preden izračunamo qm(i,p,i+1). 5. Temp je definiran kot temperatura v SA-Q-učenju, ki se postopoma zmanjšuje v skladu s faktorjem Faktor y zagotavlja počasno znižanje temperature, ki skozi čas zmanjšuje raziskovanje in je po navadi malo manjši od 1 (npr. 0,98). Tempm p'i+1) = nzg('p) in P e d •p) P {]jp) < P < P D e dn ^^ P D,nsp < P D < P D,nzg (j• ) (14) 5.2 Akcije agenta proizvajalca Agent lahko v vsakem posameznem stanju opravi cel nabor akcij, vendar bomo tudi za agente proizvajalce za vsako posamezno stanje sn(j,p) definirali eno samo akcijo (j,p) Q-vrednosti Qn p) so uporabljene za vertikalno pomikanje mejne ponudbene krivulje v pripadajočem stanju. Ta sprememba se doseže z množenjem začetne vrednosti (ali prostega člena) mejne stroškovne krivulje: (j,p) . _ cU)* _ Q U•p) . C0') (15) Konstanta Cj je prosti člen v kvadratni funkciji, ki opisuje stroškovno krivuljo vsakega agenta proizvajalca, Cj* pa je z učenjem prilagojen prosti člen. V kvadratni obliki je mejna stroškovna krivulja zapisana takole: _ &j)iPj _ Aj . (Pa(J))2 + B(J). (Pa(J)) + C(J). (16) Če je Qn(j,p) > 1, bo j-ti agent povečal ponudbo, s tem da bo svojo ponudbeno krivuljo prestavil više po abscisni osi, in če bo Qn(j,p) < 1, bo agent zmanjšal ponudbo, s tem da bo ponudbeno krivuljo po abscisni osi prestavil niže od izhodiščne lege, ki jo določa mejna stroškovna krivulja. Omejitev, ki jo zastavimo j-temu agentu, je, za kolikšen odstotek lahko svojo ponudbo povečuje in zmanjšuje. To lahko počne na intervalu [Cmin&), Cmaxw], ki je za vsakega agenta definiran s Qminlj) in Qmaxlj). Izvedbo akcije za j-tega agenta (za neko skupino proizvajalcev) v m-tem stanju prikazuje slika 4. -C S3 C P W [MW] (J) P D,nsp (j,p> ). Stanje n je v določeni uri obiskano, če velja: C ... Prosti člen stroškovne krivulje C^*... Z učenjem prilagojen prosti člen Slika 4: Izvedba akcije za i-tega agenta odjemalca v m-tem stanju Slika 4 kaže, da je učni algoritem sugeriral zmanjšanje napovedanega odjema (povpraševanja), torej je a C max C C VEČAGENTNI MODEL ZA AGENTE ODJEMALCE IN AGENTE PROIZVAJALCE NA TRGU ELEKTRIČNE ENERGIJE, 1. DEL 109 pripadajoča Q-vrednost v prikazanem primeru manjša od 1. Tudi iskalna tabela za agenta proizvajalca je podobna tisti za agenta odjemalca, le da so tu stanja opisana z višino napovedanega urnega odjema, akcija pa je sprememba ponudbene cene (zviševanje ali zniževanje). 5.3 Nagrada agenta proizvajalca Precejšen del agentnih modelov za proizvajalce kot kriterij uspešnosti delovanja uporablja dobiček in kot cilj doseganje čim večjega dobička od prodaje proizvedene električne energije [8], [11], [12]. Za določenega j-tega proizvajalca je dobiček v vsaki uri definiran kot razlika med prihodki od prodaje fiG in stroški proizvedene količine električne energije nG [13]. Indeks G označuje, da gre za proizvajalca (angl. Generator). Vse enačbe se nanašajo na izbrano uro, zato smo ta indeks zaradi preglednosti izpuščali. (j ) = 0a(J) > (17) Če v enačbi (17) zamenjamo z in prihodke zapišemo kot produkt proizvedene moči PG in cene električne energije Ae, stroške pa s pomočjo določenega integrala kot ploščino pod stroškovno krivuljo, dobimo [13]: „p (j) Rg(j) = PG(J) -A ©(j)(PG(j))dPG. (18) Enačba (18) velja v obiskanem stanju n, zato lahko zapišemo: .p (j) rO) = paj ,xe - Jp (Aj ■ (PG(1))2 + Bj ■ (Pj + C (j))dPG = PG(f)h - ^ j ))2 - B-Pg" - C 1 (19) 5.4 SA-Q-učenje agenta proizvajalca Agent j se znajde v določenem stanju sn in za zadnjo akcijo, ki jo je v t-tem obisku tega stanja izvedel, izračuna nagrado rn. Kot linearno kombinacijo zadnje Q-vrednosti qn(i) in nagrade rn izračuna novo Q-vrednost qn(t+1), ki jo bo uporabil za novo akcijo v t+1 obisku stanja sn. , (j, _{(l-«„(^^^a/'■ nče je n = , (J.P) , (J.pt) , (J.p) (20) a}1^ = uu) ■a}J.p.,-1). kjerje aJ 1 = 1. U < 1 (J.P ^=1 D. V zgornji enačbi predstavljamo j-tega agenta proizvajalca, sezono p, zaporedno številko stanja n, zaporedno številko obiska stanja t in stanje sm. Drugi parametri so obrazloženi že pri enačbi (8). Tudi agentom proizvajalcem smo poleg Q-učenja dodali kriterij Metropolis (SA-dodatek), ki poteka natanko tako kot za agente odjemalce in je bil predstavljen že v prejšnjem poglavju. 6 SKLEP V prvem delu članka smo predstavili ozadje agentnega modeliranja in agentni model za agente odjemalce in agente proizvajalce na trgu električne energije, v drugem delu članka [14] pa sledi predstavitev testnega sistema in rezultatov. Določili smo kriterij za merjenje uspešnosti delovanja agentov odjemalcev. Njihov cilj je zmanjševanje razlike med stroški, ki jih imajo odjemalci z nakupom na trgu na drobno po referenčnih cenah, in stroški, ki jih ima dobavitelj z zagotavljanjem potrebnih količin energije na urnem trgu. Podrobno smo definirali zgradbo agentov odjemalcev: stanja, akcije, nagrade in SA-Q-učni algoritem. Kriterij Metropolis, ki ga SA-Q-učenje vsebuje, zagotavlja optimalnejše odločanje agenta v vsakem stanju okolja. Agentnemu modelu za adaptivne agente odjemalce smo pri simulacijah dodali tudi adaptivni agentni model za proizvajalce. Dejanskim razmeram na trgu smo se namreč skušali približati tako, da smo kot aktivne agente modelirali tako proizvajalce kot tudi odjemalce. Literatura [1] F. Gubina, Delovanje elektroenergetskega sistema. Ljubljana: Fakulteta za elektrotehniko, Univeza v ljubljani, 2006, p. 314. [2] Cigre Working Goroup C6.09, "Demand Side Integration," Cigree, Study Committee C6.09, 2011. [3] S. D. J. McArthur, S. Member, E. M. Davidson, V. M. Catterson, A. L. Dimeas, S. Member, N. D. Hatziargyriou, and F. Ponci, "Multi-Agent Systems for Power Engineering Applications — Part I: Concepts , Approaches , and Technical Challenges," IEEE Trans. on Power Systems, vol. 22, no. 4, pp. 1743-1752, 2007. [4] A. Weidlich and D. Veit, "A critical survey of agent-based wholesale electricity market models," Energy Economics, vol. 30, no. 4, pp. 1728-1759, Jul. 2008. [5] B. Kladnik, "Agentni model prilagajanja odjemalcev na trgu električne energije," Univerza v Ljubljani, Fakulteta za elektrotehniko, 2013. [6] P. Stone and M. Velso, "Multiagent Systems : A Survey from a Machine Learning Perspective," Robotics, 2000. [7] A. C. Tellidou and A. G. Bakirtzis, "Agent-Based Analysis of Capacity Withholding and Tacit Collusion in Electricity Markets," IEEE Transactions on Power Systems, vol. 22, no. 4, pp. 1735-1742, Nov. 2007. [8] M. Guo, Y. Liu, and J. Malec, "A new Q-learning algorithm based on the metropolis criterion," IEEE transactions on systems, man, and cybernetics. Part B, Cybernetics : a publication of the IEEE Systems, Man, and Cybernetics Society, vol. 34, no. 5, pp. 2140-3, Oct. 2004. [9] J. Wang, "Conjectural Variation-Based Bidding Strategies with Q-Learning in Electricity Markets," in 2009 42nd Hawaii International Conference on System Sciences, 2009, pp. 1 -10. [10] B. Kozan, "Adaptivni model za načrtovanje izgradnje elektrarn," Univerza v Ljublj ani, 2011. [11] M. Naghibisistani, M. Akbarzadehtootoonchi, M. Javididashtebayaz, and H. Rajabimashhadi, "Application of Q-learning with temperature variation for bidding strategies in market based power systems," Energy Conversion and Management, vol. 47, no. 11-12, pp. 1529-1538, Jul. 2006. 110 KLADNIK, ARTAČ, HAJDINJAK, GUBINA [12] T. Hashiyama and S. Okuma, "An electricity supplier bidding strategy through Q-Learning," in IEEE Power Engineering Society Summer Meeting,, 2002, pp. 1516-1521. [13] J. M. Perloff, Microeconomics, 5th ed. Addison Wesley, 2008, p. 800. [14] B. Kladnik, G. Artač, M. Hajdinjak, and A. F. Gubina, "Večagentni model za agente odjemalce in agente proizvajalce na trgu električne energije, 2. del - model," Elektrtehniški vestnik. [15] G. Artac, D. Flynn, B. Kladnik, M. Pantos, A. F. Gubina, and R. Golob, "A New Method for Determination of Demand Reserve Offer Price Function," Electric Power System Research, vol. 100, pp. 55-64, 2013. [16] B. Kladnik, G. Artac, A. F. Gubina, T. Stokelj, and R. Golob, "Demand-Side Participation in System Reserve Provision in a Stochastic Market Model with High Wind Penetration," Powercon 2012, pp. 1-6, 2012. Blaž Kladnik je doktoriral 2013 na Fakulteti za elektrotehniko, Univerze v Ljubljani. V letih 2008 in 2009 je bil kot raziskovalec in asistent zaposlen v Laboratoriju za energetske strategije na Fakulteti za elektrotehniko. Med leti 2010 in 2013 je bil mladi raziskovalec iz gospodarstva v podjetju HSE, d.o.o. in v Laboratoriju za energetske strategije. Njegovo področje raziskovanja je obsegalo modeliranje odzivnosti in upravljanje odjema, agentnega modeliranja trga električne energije, učinkovito rabo energije, obnovljive vire energije in ekonomiko v elektroenergetiki. Kot trgovec s plinom in analitik upravljanja s portfelji je zaposlen v HSE, d.o.o.. Gašper Artač je doktoriral leta 2013 na Fakulteti za elektrotehniko, Univerze v Ljubljani. Med leti 2008 in 2013 je bil mladi raziskovalec iz gospodarstva pri podjetju GEN-I, d.o.o., in v Laboratoriju za energetske strategije na Fakulteti za elektrotehniko. Njegovo področje raziskovanja je obsegalo področje odzivnosti in upravljanje odjema električne energije, stohastično modeliranje trga z električno energijo, učinkovito rabo energije, obnovljive vire energije in ekonomiko v elektroenergetiki. Sedaj je kot tržni analitik zaposlen v podjetju GEN-I, d.o.o.. Melita Hajdinjak je leta 2006 doktorirala s področja elektrotehnike, leta 2012 pa s področja matematike, oboje na Univerzi v Ljubljani. Zaposlena je kot docentka s področja matematike na Fakulteti za elektrotehniko Univerze v Ljubljani. Njeno raziskovalno delo sega na področja analize in modeliranja podatkov, matematične logike, inteligentnih informacijskih sistemov in uporabne statistike. Andrej Gubina je doktoriral l. 2002 na Univerzi v Ljubljani, Fakulteta za elektrotehniko, kjer je od l.2011 tudi izredni profesor. Leto 2000 je kot Fulbrightov štipendist in gostujoči raziskovalec prebil na MIT, Cambridge, ZDA. Med leti 2002 in 2005 je osnoval in vodil Oddelek upravljanja s tveganji v Sektorju trženja na HSE d.o.o. v Ljubljani. Od marca 2007 je predstojnik Laboratorija za energetske strategije, UL FE. Leta 2008 in 2009 je kot Research Lecturer deloval tudi v Electricity Research Centru, University College Dublin, Irska. Njegovo raziskovalno področje obsega deregulacijo in ekonomiko EES, načrtovanje proizvodnje v pogojih trga z električno energijo, obvladovanje tveganj, gospodarjenje s sredstvi EES-a, ter obnovljive vire električne energije - trženje in regulativo.