Idea siis on laskea optimaalinen vuorokautinen lämmitys skeema pörssisähkön hintavaihtelun ja ulko/sisälämpötilojen mukaan. Historiadataa lämmityksestä on kertynyt vuoden verran, ja niiden avulla lasken taulukon josta käy ilmi kuinka paljon lattiaharkko lämpiää per aikayksikkö tietyllä lämpötilaerolla ulos ja sisään ja paljonko lattia lämmittää huoneilmaa.
Näiden suureiden ja sääennusteen avulla avulla saan simuloitua erilaisia lämmitys skeemoja seuraavalle vuorokaudelle, eli miten lattian ja huoneenlämpö käyttäytyy jos lämmöt on päällä vaikkapa joka toinen tunti, tai 8 halvinta tuntia päällä ja loput pois, jne. Ajattelin laskea jonkinlaisen comfortabilityFactor numeron sen perusteella kuinka tasaisena lattian lämpö pysyy, antaen ehkä enemmän miinusta liian kylmästä lattiasta kuin liian kuumasta. Sekä tietenkin vuorokauden lämmityksen hinta.
Yksi tapa olisi simuloida läpi kaikki mahdolliset kombinaatiot, 2^24 eri vaihtoehtoa miten vuorokauden aikana voi lämmittää tunnin resoluutiolla. Ongelma on että tuo on varsin hidas, kuitenkin ihan doable koska yksi iteraatio on varsin nopea simuloida, menee ehkä 15minuuttia per lattia harkko raspberry pi 4:llä. Tätä voi käyttää vertailudatana algoritmia kehittäessä, ja toimisihan se myös käytännössä kun laskettavana on neljä lattialämmitystä kerran vuorokaudessa, mutta raspi todennäköisesti käy aika kuumana ja muutenkin vähän turhan tökerö ratkaisu perfektionistiselle hifistelijälle.
Sähkön hinnoittelu on kai myös muuttumassa tuntiperustaisesta vartitunti perustaiseksi, ja 2^(24*4) iteraatiota on tietenkin aivan järkyttävästi liikaa.
Mietin että PSO algoritmi voisi toimia paremmin?
Ei ole aiempaa käytännln kokemusta kyseisen algoritmin käytöstä, mut tälläsiä ajatuksia on tullut:
Ratkaisun sopivuutta mitataan käyttäen aiemmin mainittun comfortabilityFactorin ja hinnan suhdelukua, niin että asetuksista säädettävissä jonkinlainen painotus hinnan ja mukavuuden välillä.
Yksi hiukkanen olisi siis aina yksi lämmitys skeema, eli yhden vuorokauden lämmitys.
Hiukkasen positiona mietin 24 komponenttista vektoria...? Ehkä niin että vektori saa arvoja väliltä -n...n ja n on ehkä luokkaa 5, ja tuon arvon mukaan säädetään lämmityksen perus on/off termostaatin arvoa pienemmälle tai suuremmalle.
Asioita joista ei oikein ole tietoa, ja jotka vaatii testausta, on ainakin millä tavalla hiukkasia tulisi liikuttaa ja käännellä iteraatioiden välillä? Kohti löydettyä globaalia parasta eli parasta tunnettua positiota. Myös lokaalia parasta eli hiukkasen parhaan tuloksen antanutta positiota olisi ehkä syytä jollain tavalla seurata?
Hiukkasilla tulee varmaankin olla vähän inertiaa, ettei senhetkisen globaalin parhaan löytänyt hiukkanen jumitu paikoilleen.
Soveltuisiko PSO edes tälläiseen, ja millä tavalla sitä tulisi käyttää? Löytyisikö hyvä ratkaisu huomattavasti yksinkertaisemminkin?

