10 VYUŽITÍ ANTICIPACE PŘI ŘÍZENÍ SPOTŘEBY ELEKTRICKÉ ENERGIE V DOMÁCNOSTI Bc. Petr Kotál ČESKÉ VYSOKÉ UČENÍ TECHCNICKÉ Fakulta elektrotechnická Katedra kybernetiky
1. Úvod Jedním z hlavních typů chování všech živých organismů je anticipační chování. Můžeme ho pozorovat jak u primitivních jednobuněčných organismů, tak samozřejmě i u člověka. Klasickým příkladem dlouhodobého anticipačního chování je snaha o dosažení vysokoškolského vzdělání, protože anticipujeme vyšší příjem v budoucnosti. Naopak krátkodobé anticipační chování je například jídlo, abychom předešli hladu. Anticipace je i nevědomá, například anticipace upadnutí nás nutí chodit po kluzkém povrchu opatrně [1].
Obr. 1: Základní schéma anticipačního chování Anticipační chování je tedy řízené cíli a liší se tak od reakčního chování, které reaguje pouze na aktuální stav prostředí. Zároveň se nejedná pouze o predikci nebo očekávání budoucích stavů, anticipace se snaží upravit chování organismu (agenta) tak, aby se očekávání budoucích stavů více přiblížilo určitému cíli. Základní definici anticipujících systémů publikoval americký teoretický biolog Robert Rosen ve své stěžejní knize Anticipatory systems [2] „Anticipující systémy jsou systémy, které obsahují model sebe sama a případně svého okolí, na tomto modelu predikují své budoucí možné stavy a na základě této predikce ovlivňují své okamžité aktivity tak, aby jejich budoucí stav odpovídal jejich okamžitým záměrům.“ Rozšíření této definice přinesl až Daniel M. Dubois [3]. Na základě svého výzkumu rozlišuje dva základní typy anticipace: • Anticipace v silném slova smyslu – anticipující systém nemá model, ale anticipuje „sám ze sebe“ (Strong Anticipations Systems)
•
Anticipace v slabém slova smyslu – anticipující systém, který si vytváří model sebe i okolního světa (Weak Anticipations Systems) Využití anticipace v praxi je teprve na začátku. S výhodou lze anticipaci použít v takových systémech, které jsou velmi rozsáhlé a komplexní, jejichž přesný matematický model by byl příliš složitý nebo je dokonce nemožný. Jedná se tedy o systémy, které zahrnují těžko předvídatelné procesy, jako je vývoj počasí, chování člověka nebo vývoj ekonomiky. Anticipace umožňuje na základě mnoha různých vstupů a naučeného predikčního modelu předcházet různým stavům úpravou chování systému. Vždy však záleží na konkrétním problému a použité metodě anticipace, ne vždy platí, že co funguje dobře v jednom systému, bude fungovat stejně dobře i v jiném. Samotný proces využívání anticipace je tak vlastně anticipační chování. První intenzivní výzkumy probíhají například v automobilovém průmyslu. Anticipace reakcí řidičů, která je založena na vzorcích chování naučených v minulosti, kombinovaných s odhady trajektorií jízdy a chování ostatních účastníků silničního provozu, může výrazně pomoci v předcházení kolizí a prevenci nehod (Anticipated Collision Avoidance). Další možné aplikace mohou být v oblastech ekonomie, ale i v předvídání zemětřesení, vulkanických aktivit nebo vzniku a pohybu hurikánů. V neposlední řadě pak je použití anticipace v rámci boje proti terorismu a ochraně majetku i životech jedinců obecně. [1] 2. Inteligentní dům Inteligentní domy zažívají v poslední letech velkou popularitu. Uživatelé požadují plnou kontrolu spotřebičů v domě a zároveň, aby spotřebiče reagovaly na jejich chování, to vše ještě za podmínky co nejnižšího odběru energií. Inteligentní dům je dům nebo obecně místo pro život, které obsahuje technologie umožňující automatickou kontrolu spotřebičů a systémů. Umělá inteligence v takovémto domě se učí o jeho obyvatelích, o jejich chování a požadavcích a snaží se předvídat jejich další činnost. Cílem je nejen zkvalitnění života uživatelů, ale i ochrana jejich majetku, úspora energií a nižší znečištění životního prostředí. Jedná se tedy o komplikovaný systém zahrnující mnoho různých technologií a pracující s velkým množstvím dat. Jeden z úkolů, které se řeší v konceptu inteligentního domu je řízení spotřeby elektrické energie. Tento problém se objevil teprve před několika málo lety a zatím nemá mnoho praktických řešení. Má práce je v tomto ohledu částečně průkopnická a je zaměřená jak na formulování konkrétního problému, tak na aplikaci několika navržených řešení. 3. Řízení spotřeby elektrické energie v domácnosti Cílem mé práce je stabilizace spotřeby elektrické energie v domácnosti s použitím anticipace. Nejedná se tedy přímo o minimalizaci spotřeby, ale o předcházení stavů s velkým odběrem, tedy o eliminaci odběrových špiček. Výsledné efekty jsou jak stabilizování spotřeby, tak i její snížení. To umožňuje například lépe předvídat celkovou spotřebu elektrické energie za určité období a lépe tak naplánovat využití alternativních zdrojů elektrické energie. Konečný efekt se tedy projeví nejen na nižších nákladech na energie, ale i v šetrnějším přístupu k životnímu prostředí. Uvažuji tedy obytný prostor sestávající z několika místností, v nichž jsou umístěny různé spotřebiče. Tyto spotřebiče mají různou spotřebu a mohou být zapnuty nebo vypnuty. V tomto prostředí se pohybuje uživatel a zapíná a vypíná spotřebiče bez zjevného pořadí nebo plánu. Dále předpokládám změny venkovního počasí, tedy zda je světlo (den) nebo tma (noc) a venkovní teplotu. Systém měří celkovou aktuální spotřebu, zaznamenává pohyb uživatele po bytě, reaguje na venkovní počasí a na chování spotřebičů.
Pro přehlednost dalšího výkladu je potřeba zavést několik pojmů: Systém – obytný prostor, spotřebiče, uživatel, venkovní počasí. Stav – stav systému odpovídající celkové aktuální spotřebě elektrické energie Model – model systému, anticipuje jeho následující stav, řídí systém Pro účely anticipace jsem definoval pět následujících stavů: Stav
Celková spotřeba [%]
Low (nízký)
0 – 20
Normal (normální)
20 – 40
High (vysoký)
40 – 50
Overload (přetíženo)
50 – 80
Dangerous (nebezpečný)
80 – 100
Tab. 1: Stavy systémů Velký důraz jsem kladl na přísné oddělení simulace systému (tedy bytu se spotřebiči, uživatelem a venkovním počasím) a modelu (tedy anticipace a řízení), abych se co nejvíce přiblížil reálným podmínkám. Vedl mě k tomu i druhý důvod, a to porovnání experimentů s využitím anticipace s normálním chováním sytému bez zásahu modelu. Je třeba si uvědomit, že při použití anticipace nelze přímo určit, zda byl anticipován správný stav. Na anticipovaný stav totiž reaguje řízení a ovlivňuje tak následující stav systému. Kvalitu anticipace tak lze určit pouze zprostředkovaně podle výsledného chování systému. Aby byl tedy vidět reálný efekt anticipačního chování modelu, je nutné ho porovnat s normálním chováním systému. Anticipace se skládá ze dvou částí: • Anticipace z časové historie stavů systému • Anticipace na základě chování uživatele Anticipace z časového průběhu stavů využívá záznam stavů systému v určitých okamžicích a podle tohoto průběhu se snaží předvídat následující stav. Pokud anticipuje stav přetíženo nebo nebezpečný, pokusí se vypnout některé spotřebiče, aby se předešlo příliš vysoké spotřebě elektrické energie. Tato část anticipace má za úkol regulovat spotřebu elektrické energie. Anticipace na základě chování uživatele pracuje s pravidly, která reagují na různé akce uživatele a snaží se mu svými zásahy zpříjemnit život. Pokud je pravidlo vyhodnoceno jako platné, systém se pokusí provést příkazovou část pravidla, tedy zapnout nebo vypnout určité spotřebiče. Tato část má za úkol zkvalitnit život uživatele. Konečný zásah modelu do systému je dán výsledkem jednotlivých částí anticipace, kde však dominuje anticipace následujícího stavu (tedy spíše snaha o stabilizaci spotřeby). Pro účely anticipace z časové historie stavů systému byly použity tři různé metody. Všechny umožňují z průběhu předcházejících stavů anticipovat následující stav a učit se porovnáním chování systému s anticipovaným stavem. Model je tedy navržen tak, aby se učil „za běhu“, bez použití trénovacích a testovacích dat. To vychází z předpokladu, že systém, na který je model aplikován, je natolik proměnný, že nelze vytvořit množinu dat, která by přímo popsala jeho chování. Tento přístup umožňuje použití anticipace okamžitě po zahájení simulace a rychlou reakci anticipace na změny chování systému. Zároveň umožňuje učení se dlouhodobějším trendům.
Metoda využívající Markovovův řetězec Markovovův řetězec je matematický model, který definuje pravděpodobnosti přechodů mezi dvěma stavy systému. Tyto pravděpodobnosti závisí pouze na předchozím stavu a nezáleží na tom, jak byl předchozí stav dosažen. V praxi se používá matice pravděpodobností přechodů, kde řádky odpovídají předchozímu stavu a sloupce následujícímu stavu. Další popis například 1. V mé práci jsem využil Markovovův řetězec rozšířený o předcházející stavy, jak popisuje například 2. Řádek matice tedy odpovídá jedné možné kombinaci předcházejících stavů, sloupec anticipovanému stavu. Součet pravděpodobností v jednom řádku je 100. Anticipace probíhá výběrem příslušného řádku podle předchozích stavů a určením následujícího stavu pomocí náhodného čísla. Stav s největší pravděpodobností má samozřejmě i největší interval, do kterého může náhodné číslo spadnout. Je tím tak zajištěno částečně stochastické chování odpovídající přirozenému světu. Pokud je n počet možných stavů a h je počet předcházejících stavů, počet řádků matice je h n . Při n = 5 a h = 8 je počet řádků 390625. Je zřejmé, že při takto velkém rozměru matice již metoda ztrácí schopnost rychlé reakce na změnu chování systému. Její kvalita se tak projeví pouze při menším počtu předcházejících stavů. Učení probíhá po každém anticipovaném stavu. Pokud anticipovaný stav odpovídá následujícímu chování systému, anticipace byla správná a příslušný přechod je posílen na úkor ostatních přechodů pro daný stav. V opačném případě je posílen přechod, který odpovídá skutečnému chování systému. Metoda využívající neuronovou síť Další metoda, kterou jsem použil pro anticipaci následujícího stavu systému, je neuronová síť. Její princip je známý několik desítek let a již byla použita v mnoha aplikacích, jedná se tedy o dostatečně prověřenou metodu. Popis uvádí například 3. Neuronová síť vychází ze struktury a funkce mozku živočichů. Obsahuje síť neuronů, které jsou vzájemně propojeny. Každý neuron má váhy vstupů z jiných neuronů, práh a aktivační funkci, která určuje jeho výstup. Existuje mnoho různých topologií sítě i aktivačních funkcí. V mé práci jsem využil klasické dopředné šíření (feedforward) bez zpětné vazby a ověřený algoritmus učení – metodu zpětného učení (backpropagation). Počet neuronů ve vstupní vrstvě je přímo úměrný počtu předcházejících stavů použitých pro anticipaci. Pro každý stav se určí jeho hodnota, která je vstupem do příslušného neuronu. Počet neuronů ve výstupní vrstvě odpovídá počtu možných stavů systému. Výstupní hodnoty představují pravděpodobnost následujícího stavu, jsou tedy přepočítány tak, aby jejich suma byla 100. Následující stav se pak opět určí pomocí náhodného čísla, stejně jako v metodě Markovovského řetězce. Učení probíhá po každém anticipovaném stavu. Pokud anticipovaný stav odpovídá následujícímu chování systému, anticipace byla správná a příslušná hodnota výstupu neuronu je zvětšena. Úměrně jsou sníženy výstupní hodnoty ostatních neuronů. V opačném případě je zvýšena hodnota výstupu neuronu představující stav, který odpovídá skutečnému chování systému. Tyto nové hodnoty výstupů jsou pak použity algoritmem učení.
1
http://en.wikipedia.org/wiki/Markov_chain
2
http://en.wikipedia.org/wiki/Markov_chain
3
http://en.wikipedia.org/wiki/Artificial_neural_network
Metoda využívající genetické programování Genetické programování je metoda používající genetický algoritmus pro generování konečných automatů. Genetický algoritmus simuluje evoluci a proces přirozeného výběru, jeho praktické využití je však zatím malé, nelze totiž zaručit dosažení globálního maxima. Stejně tak genetické programování je používáno spíše na vědecké úrovni, dokáže však zajímavým způsobem řešit některé složité problémy. Více o genetických algoritmech například 4 nebo [4]. O genetickém programování například 5 nebo [4]. V mé práci využívám genetické programování pro generování rozhodovacích pravidel. Tato pravidla určují z předchozích stavů systému následující stav. Následující stav určují přímo, nepoužívají pravděpodobnost jako předcházející dvě metody. Použitím pravděpodobnosti následujícího stavu by se celá metoda stala výrazně složitější na úkor funkčnosti. Výsledek genetického algoritmu závisí na zvolené ohodnocovací (fitness) funkci. V mém případě fitness funkce porovnává anticipovaný stav se skutečným chováním systému. Nelze však použít pouze poslední záznam průběhu stavů, je potřeba tyto záznamy ukládat a fitness hodnotu pravidla vypočíst jako součet výsledků fitness funkce pro jednotlivé záznamy, na které bylo aplikováno toto pravidlo. Z toho vyplývá, že nemá smysl hledat nová pravidla po každém anticipovaném stavu, generování nových pravidel tak probíhá po dosažení určitého počtu nových záznamů průběhu stavů systému. Během této doby se používají již nalezená pravidla. 4. Implementace řízení spotřeby Tato kapitola obsahuje popis mé implementace řešení výše definovaného problému na základě předchozího teoretického rozboru.
Obr. 2: Schéma programu Power Control
4
http://en.wikipedia.org/wiki/Genetic_algorithm
5
http://en.wikipedia.org/wiki/Genetic_programming
Vytvořil jsem program Power Control, který umožňuje simulovat obytný prostor, spotřebiče v pokojích, chování uživatele a změny venkovního počasí. Dále obsahuje model se třemi metodami anticipace a umožňuje parametrizaci těchto metod i simulace. Jeho výsledkem je záznam změn v systému a průběh aktuální spotřeby elektrické energie. Implementace byla provedena v jazyce Java (verze 1.6.0) ve vývojovém prostředí NetBeans 5.5.1. Obrázek 2 zobrazuje rozdělení programu a jeho jednotlivé části. Program se skládá ze dvou základních částí: Systém a Model. Jejich funkce odpovídá definicím v kapitole 3. Program dále obsahuje Časovač generující diskrétní časové okamžiky (tiky) a Zapisovač pro záznam průběhu simulace. Záměrně je zde použito označení tik, které představuje určitý časový okamžik, kdy je spuštěn proces anticipace a řízení. Slovo tik tento okamžik vystihuje lépe než například běžně používaný krok nebo kolo. Průběh simulace je řízen diskrétním časem generovaným Časovačem. Jedná se o okamžiky, kdy v systému nastala změna a model na to musí reagovat. Pro potřeby simulace definuji jeden tik jako deset minut. V praxi by model používal buď diskrétní čas s pevným intervalem, nebo by reagoval na změny systému. Při každém tiku se provedou následující operace: Algoritmus 5.1: 1) Zapisovač zaznamená nový tik. 2) Systém vygeneruje nový stav. 3) Zapisovač zaznamená změny v systému. 4) Pokud je použitá anticipace: Model anticipuje a řídí systém. Zapisovač zaznamená události v modelu. Systém Tato část programu představuje simulaci reálného světa, tedy obytného prostoru, spotřebičů, uživatele a venkovního počasí. Byl kladen důraz na dostatečnou věrohodnost simulace systému i na požadavek variability a možnosti vytvořit systémy s různým chováním. To vše za podmínky přísného oddělení od modelu. Systém obsahuje čtyři místnosti (ložnici, obývací pokoj, kuchyň a koupelnu) a venkovní prostor. V každé místnosti mohou být umístěny libovolné spotřebiče, venkovní prostor žádné spotřebiče obsahovat nesmí. Spotřebiče jsou různých typů a mají různé chování. Chování spotřebiče určuje, zda ho může uživatel a/nebo model zapnout a vypnout, nebo zda se spotřebič zapíná a vypíná periodicky. Uživatel může přecházet mezi místnostmi a zapínat a vypínat libovolné spotřebiče, pokud mu to jejich chování umožní. Pohyb uživatele po bytě a míra jeho aktivity (hodnota udávající velikost snahy uživatele zapínat a vypínat spotřebiče) určuje aktuální činnost uživatele. Simulace venkovního počasí poskytuje údaje o aktuální teplotě a aktuální intenzitě venkovního světla. Aktuální teplota je náhodné číslo v rozmezí minimální a maximální teploty. Intenzitu světla a minimální a maximální teplotu určuje aktivita počasí. Ukázka grafického rozhraní programu nastavující systém:
Obr. 3: Editor místností Model Tato část programu vytváří model systému a na základě anticipace následujícího stavu provádí zásahy do systému. Při implementaci byl zohledněn požadavek na oddělení jednotlivých funkcí, lze tak jednoduše přidat novou metodu anticipace. Model obsahuje Multi-agentní systém, anticipátor, modul pravidel a řízení systému. Multi-agentní systém je využit pro modelování místnostní a spotřebičů. Každý agent představuje jednu místnost a obsahuje modely spotřebičů umístěných v této místnosti. Model spotřebiče zaznamenává změny stavu spotřebiče a zároveň umožňuje změnit jeho stav. Každý model obsahuje váhu w (číselná hodnota), která udává, v jakém stavu by se měl spotřebič nacházet. Anticipátor implementuje anticipaci z časové historie stavů. Vstupem do anticipátoru je aktuální stav systému, výstupem je anticipovaný stav. Záznam historie stavů případně dalších údajů závisí na použité metodě anticipace. Zásadní problém představuje určení, zda byl anticipován správný stav. To je nutné pro učení anticipátoru. Vycházel jsem z předpokladu, že řízení systému s cílem předejít vysoké spotřebě elektrické energie nastává pouze při anticipaci stavů přetíženo a nebezpečný. Při anticipaci zbývajících stavů se do systému zasahuje pouze výsledkem anticipace na základě chování uživatele, který má pouze malý vliv na systém jako celek. Správnost anticipace mohu tedy určit porovnáním anticipovaného stavu a skutečného stavu, který vyjadřuje chování systému. Následující tabulka definuje správnost anticipace.
Skutečný
Anticipovaný stav
stav
Nízký
Normální
Vysoký
Přetíženo
Nebezpečný
Nízký
Ano
Ne
Ne
Ano
Ano
Normální
Ne
Ano
Ne
Ano
Ano
Vysoký
Ne
Ne
Ano
Ano
Ano
Přetíženo
Ne
Ne
Ne
Ano
Ano
Nebezpečný
Ne
Ne
Ne
Ne
Ano
Tab. 2: Správnost anticipace Pokud jsem tedy anticipoval stav přetíženo, byla anticipace správná nejenom pokud byl skutečný stav přetíženo, ale i pokud byl nízký, normální, nebo vysoký. Předpokládám, že při anticipování stavu přetíženo byl proveden takový zásah do systému, aby následující stav odpovídal nižší spotřebě energie. To samé platí i pro anticipaci stavu nebezpečný. Modul pravidel představuje anticipaci na základě chování uživatele. Definuje pravidla, která reagují na chování uživatele v různou denní dobu a za různých světelných a teplotních podmínek. Jejich cílem je zkvalitnit život uživatele. Pokud je pravidlo vyhodnoceno jako platné, upraví váhy příslušných modelů spotřebičů podle toho, zda se mají dané spotřebiče zapnout nebo vypnout. Pokud je jeden spotřebič ovlivňován více pravidly, jeho výsledná váha je dána součtem kladných nebo záporných hodnot všech úprav. Implementoval jsem čtyři pravidla, která vystihují běžné potřeby uživatele: • Uživatel opustil pokoj: všechna světla by měla být vypnuta • Uživatel opustil byt: všechna světla, televize, větráky a videa by měla být vypnuta • Vysoká venkovní teplota: Pokud uživatel přišel z venku a je příliš teplo, všechny větráky v bytě by se měly zapnout • Světlo ve tmě: Pokud je tma a uživatel vešel do místnosti, kde nesvítí světlo, mělo by se zapnout jedno světlo v místnosti. 5. Experimenty Provedl jsem několik testů s různým nastavením systému a různým nastavením jednotlivých metod anticipace. Zvolil jsem tato kritéria pro určení kvality anticipace: • Hodnota průměrné spotřeby v procentech: Eavg • Celková spotřeba v kWh: E • Celkový počet stavů přetíženo a nebezpečný, které nebyly anticipovány (chyba anticipace): chybaA • Celkový počet stavů přetíženo a nebezpečný, které byly anticipovány správně, ale zásah do systému jim nedokázal zabránit (chyba řízení): chybaR • Celkový počet anticipovaných stavů přetíženo: antiP • Celkový počet anticipovaných stavů nebezpečný: antiN • Celkový počet skutečných stavů přetíženo: realP • Celkový počet skutečných stavů nebezpečný: realN • Doba trvání simulace v milisekundách: T
Zvolil jsem toto nastavení simulace: • Počet tiků: 432 (tři dny), 1008 (sedm dní) a 2016 (čtrnáct dní). • Délka historie: 3 a 6 Obrázek 4 dokumentuje dva průběhy spotřeby elektřiny, a to v simulaci bez použití anticipace a s použitím Markovovského řetězce s historií 6. Délka simulace je 432 tiků. Spotřeba eletřiny 100 Bez aniticpace Markov 6 90 80
Spotřeba [%]
70 60 50 40 30 20 10 0 1
15 29 43 57 71 85 99 113 127 141 155 169 183 197 211 225 239 253 267 281 295 309 323 337 351 365 379 393 407 421 Tik simulace [tik]
Obr. 4: Průběh spotřeby elektřiny Z grafu je jasně patrné výrazné snížení spotřeby při použití anticipace. Zároveň jsou omezeny odběrové špičky a nejvyšší spotřeba nepřekročila 70%. V intervalech, kdy není uživatel doma, byly díky pravidlům vypnuty nepoužívané spotřebiče a hodnota spotřeby se pohybovala kolem 10% Následují grafy nejdůležitějších kritérií určujících kvalitu anticipace.
Anticipace stavu přetíženo 25 Markov 3
Poměrná část z celkového počtu stavů [%]
Markov 6 Neural Net 3 Neural Net 6 Genetics 3
20
Genetics 6
15
10
5
0 432
1008
2016
Délka simulace [tik]
Obr. 5: Anticipace stavu přetíženo Tento graf zobrazuje poměrný počet anticipovaných stavů přetíženo, vyjádřený procentuálně k celkovému počtu anticipovaných stavů. Je důležité si uvědomit, že při anticipaci stavu přetíženo dochází k zásahu do systému a tedy k vypnutí několika spotřebičů. Tato reakce vyplývá ze snahy o předcházení odběrovým špičkám. Může se však stát, že se vypne i spotřebič, který uživatel chtěl nechat zapnutý (například uživatel je v kuchyni a poslouchá televizi zapnutou v obývacím pokoji). Z tohoto hlediska je tedy žádoucí, aby zásahů do systému bylo co nejméně. Toto kritérium splňuje metoda Markovovského řetězce, zbývající dvě metody provádějí daleko více zásahů. Zároveň je z grafu vidět i malé zlepšení anticipace Markovovského řetězce při použití větší délky historie.
Skutečný stav přetíženo 5 Markov 3 Markov 6 Neural Net 3
4,5
Poměrná část z celkového počtu stavů [%]
Neural Net 6 4
Genetics 3 Genetics 6
3,5 3 2,5 2 1,5 1 0,5 0 432
1008
2016
Délka simulace [tik]
Obr. 6: Skutečný stav přetíženo Obrázek 6 zobrazuje poměrný počet skutečný stavů přetíženo vyjádřený procentuálně k celkovému počtu anticipovaných stavů. Vyjadřuje tak hlavní cíl této práce, tedy stabilizovat spotřebu elektrické energie předcházením těmto stavům. Z grafu vyplývá, že byl tento cíl splněn, protože hodnoty nepřesáhly 4,5%, což je velmi dobrý výsledek. Dále je vidět rostoucí trend metody Markovovského řetězce při zvyšující se délce simulace. Tento jev lze vysvětlit nedostatečným anticipováním stavu přetíženo, pravděpodobně v důsledku přeučení metody. Průběh totiž odpovídá předchozímu grafu, kdy metoda s rostoucí délkou simulace anticipovala méně stavů přetíženo.
Průměrná spotřeba 25 Markov 3 Markov 6 Neural Net 3 Neural Net 6 20
Genetics 3
Spotřeba [%]
Genetics 6
15
10
5
0 432
1008
2016
Délka simulace [tik]
Obr. 7: Průměrná spotřeba elektřiny Z tohoto grafu je patrné, že nejnižší procentuální spotřeba byla dosažena při použití Neuronové sítě a s rostoucí délkou simulace byla prakticky konstantní. Naopak při použití metody Markovovského řetězce procentuální spotřeba rostla a při délce simulace 2016 tiků byla nejvyšší ze všech použitých metod. I přes to se jedná o velmi dobrý výsledek, průměrná spotřeba pouze nepatrně přesáhla přes hranici 20%. Dále je z tohoto grafu vidět snížení spotřeby u metod Neuronové sítě a Genetického programování při použití větší délky historie. Z výsledků je patrné, že všechny tři metody jsou použitelné pro anticipaci spotřeby elektrické energie v domácnosti. Každá metoda má však své výhody i nevýhody. Metoda Markovovského řetězce provádí nejméně zásahů do systému a upřednostňuje tak kvalitu života uživatele před regulací spotřeby. V porovnání s ostatními metodami však v regulaci spotřeby nedosahuje výrazně horších výsledků, lze ji tedy označit jako kompromis mezi snahou o regulaci spotřeby a zkvalitněním života uživatele. Nepříjemný je však rostoucí trend skutečných stavů přetíženo a záleželo by na dalším výzkumu, zda by se tento jev podařilo odstranit. Neuronová síť vykazuje při všech délkách simulace přibližně stejné hodnoty, je to tedy nejrobustnější metoda. Zároveň je vidět i malé zlepšení ve všech ukazatelích při použití větší délky historie. Jedná se tedy o zajímavou alternativu Markovovského řetězce, která má prostor pro další optimalizaci [5]. Genetické programování dosáhlo v počtu skutečných stavů přetíženo a v průměrné spotřebě podobných výsledků jako předcházející dvě metody. Je jich však dosaženo za cenu většího počtu anticipovaných stavů přetíženo. Tato metoda však nabízí mnoho různých vylepšení a je možné, že při dalším vývoji by přinesla zajímavé výsledky. V této fázi však nedosahuje takových kvalit jako Markovovův řetězec a Neuronová síť.
6. Závěr Navrhl jsem a implementoval program řídící spotřebu elektrické energie v inteligentním domě za použití anticipace. Program obsahuje simulaci reálného světa (systém) a model, který anticipuje následující stavy systému a kontrolovaným zapínáním a vypínám spotřebičů předchází špičkám ve spotřebě energie. Navrhl jsem a implementoval tři metody anticipace a porovnal je z různých hledisek. Experimenty jsem ověřil, že program dokáže stabilizovat spotřebu elektrické energie a přinést nejenom finanční úsporu, ale i zkvalitnění života uživatele. Předpokládám, že navržená metoda řízení spotřeby elektrické energie v domácnosti bude součástí komplexního systému Inteligentního domu a bude tak využívat další funkce tohoto systému. V programu tedy nebyl zahrnut například elektrický kotel, u kterého se předpokládá, že bude ovládán systémem vytápění a klimatizace v domě. Výstup z tohoto systému pak bude představovat nový vstup do programu řízení spotřeby elektrické energie. Využití těchto anticipačních přístupů je možné i v jiných systémech, které pracují s elektrickou energií, či energií obecně. Jedná se o větší systémy, jako jsou celé rozvodné sítě (v nich by se problém přetížení však řešil spíše zapojením dalších zdrojů, než vypnutím spotřebních míst), ale i o systémy řízení spotřeby elektrické energie v automobilech (předcházení úplnému vybití baterie). Tato práce tedy přináší nový přístup k problému řízení spotřeby elektrické energie včetně možných řešení, která byla ověřena na implementované simulaci reálného světa. 7. Seznam literatury [1] Nahodil, P.: Od jednoduchých robotů k anticipujícím stvořením. In: Mařík V., Štěpánková O., Lažanský J. a kol.: Umělá inteligence 5. Academia, Praha 2007. [2] Rosen, R.: Anticipatory System Philosophical, Mathematical and Methodological Foundations, Pergamon Press, 1985 [3] Dubios, D. M.: Review of Incursive, Hyperincursive and Anticipatory Systems – Foundation of Anticipation in Electromagnetism. In: D. M. Dubois (ed.), Computing Anticipatory Systems CASYS’99 Woodbury, NY: American Institute of Physics, Vol. 517, 1999, s. 3–30. [4] Mařík, V., Štěpánková, O., Katanský, J. a kol.: Umělá inteligence 4. Academia, Praha 2003. [5] Nahodil, P., Elmahalawy, A.: A New Approach Used for Anticipation to Improve the System's Behaviour. In: 21th European Conference on Modelling and Simulation, Springer, London, 2007, s. 379-374.