Adatközpontokban több tízezer, folyamatosan adatokat feldolgozó szerver van. Klasztereket ütemező algoritmusok valósidőben osztják szét közöttük a feladatokat; egyrészt a hozzáférhető erőforrásokat akarják hatékonyan kihasználni, másrészt gyorsan el kívánják végezni a munkát.
Az algoritmusokat meghatározott elvek alapján emberek finomhangolják. Mivel a munkaterhek (kombinált feladatok csoportjai) viszont minden méretben megtalálhatók, ember számára lehetetlen feladat az azokat ütemező algoritmus esetenkénti optimalizálása.
Az MIT (Massachusetts Institute of Technology) Számítástudományi és Mesterséges Intelligencia Laboratóriumának kutatói elhatározták, hogy a problémával kapcsolatos összes manuális kódolást gépekre bízzák. Rendszerük próba-hiba alapú, megerősítéses tanulással (reinforcement learning, RL) dolgozik, és igyekszik specifikálni a munkaterheket.
A kivitelezéshez komplex munkaterhekre is érvényes, speciális RL-technikákat dolgoztak ki. A számítási erőforrásokat rendkívül gyorsan feldolgozó rendszer mindaddig sok lehetséges módon igyekszik azokat elosztani, míg az ideálisra rá nem talál. Adatközpont és munkateher függvényében tanulja meg az ütemezés-stratégia használatát, hangolását.
Nincs szüksége emberi beavatkozásra, a feladat-végrehajtásban 20-30-szor, de még „csúcsidőben” is minimum kétszer gyorsabb a legjobb kézzel „írt” ütemező algoritmusoknál.
Kutatások kimutatták, hogy a rendszer hatására adatközpontok ugyanazt a munkaterhet gyorsabban és kevesebb erőforrást használva kezelik. Ráadásul ezekben az esetekben még a legkisebb, például 1 százaléknyi előrelépés is többmillió dollár és rengeteg energia megtakarítását jelenti.
Adatfeldolgozásnál az elvégzendő számításokat megjelenítő csomópontokat és az azokat összekötő éleket használnak. Minél nagyobb egy csomópont, annál több a munka. Az ütemező algoritmusok szerverekhez osztják ki a csomópontokat, az adatközpont pedig csomópontok és élek alkotta gráf.
A hagyományos RL nem szokott hozzá ennyire dinamikus gráfok kezeléséhez. A rendszerek szoftverágensekkel dolgoznak, az MIT-fejlesztés is ilyen ágenst használ ütemező algoritmusként. A tanuláshoz a sokféle gráf-szekvencia által szimulált folyamatokat (munkaterhelést, adatközpontokat stb.) használta fel, majd döntött a csomópontok elhelyezéséről. Minden egyes döntése feladat-végrehajtást jelent, amit a rendszer a munkaidő minimalizálása stb. alapján „jutalmaz.” Az ágens mindaddig próbálkozik, amíg el nem éri a lehető legtöbb jutalompontot.
A kutatók elmondták, hogy újításuk nagyon sokféle számítógépes rendszerre alkalmazható. A rendszer egyelőre a bejövő online forgalmat újraalkotni próbáló valósidejű szimulációkon gyakorol. Utána jön a szervereket potenciálisan lebénító, tényleges forgalom. Az összeomlást megakadályozandó, a rendszert adott esetben leállító „biztonsági hálót” is fejlesztenek.