Esport kurzus
"Ne menjen a tanulás a játék rovására!" - Esport kutatási kiáltvány 2018
Hatókör: a játéktól a Magyar Nemzeti Mesterséges Intelligenciáig
PTI BSc, Neptun kód: INBPM9928L, 2 óra labor, 3 kredit (speciális ismeretek), előfeltétel: INBPM0212 (prog1). A képen a 18/19 tanév laborközössége.
Az oktató esporthoz, gaminghez köthető aktivitása
- League of Legends EUNE, 54, B5: https://www.leagueofgraphs.com/hu/summoner/eune/NorbiEntropy
- League of Legends NA, 32, B1: https://www.leagueofgraphs.com/summoner/na/EntropyNorbi
- Clash of Clans, Legend League: https://www.clashofstats.com/players/norbertbatfai-929R0LGVU/profile
- Clash Royale, Arena 10:
https://royaleapi.com/player/9YY0QQQCQ
Közlemények
- Bátfai Norbert, Bersenszki Márió, Lukács Miklós, Besenczi Renátó, Bogacsovics Gergő és
Jeszenszky Péter „Az e-sport és a robotpszichológia közös jövője”, Információs Társadalom,
XVI. évf. (2016) 4. szám, 26-39. old. http://dx.doi.org/10.22503/inftars.XVI.2016.4.2
- Bátfai Norbert (2017), „Az e-sport egyetemi oktatása”, Országos Neveléstudományi Konferencia, poszter, https://arato.inf.unideb.hu/batfai.norbert/NEMESPOR/ONK2017/ONK_esport_poster_BN.pdf, in Kerülő Judit, Jenei Teréz, Gyarmati Imre (szerk.) Országos Neveléstudományi Konferencia (Nyíregyházi Egyetem, 2017. november 9–11.), MTA Pedagógiai Tudományos Bizottság, Nyíregyházi Egyetem, Nyíregyháza, 2017a 538. old. http://onk2017.hu/wp-content/uploads/2017/11/ONK_2017_november_20171110.pdf
- Bátfai Norbert, Besenczi Renátó, Szabó József, Jeszenszky Péter, Buda András, Jármi László, Lovas Rita Barbara, Pál Marcell Kristóf,Bogacsovics Gergő,és Tóthné Kovács Enikő, "DEAC-Hackers: játszó hackerek, hackelő játékosok", Információs Társadalom, XVIII. évf.(2018) 1. szám, 132–146. old. http://dx.doi.org/10.22503/inftars.XVIII.2018.1.9
- Bátfai Norbert, Bogacsovics Gergő, Paszerbovics Roland, Antal Asztrik, Czevár István, Kelemen Viktor és Besenczi Renátó,"E-sportolók mérése", Információs Társadalom, XVIII. évf. (2018) 1. szám, 147–155. old. http://dx.doi.org/10.22503/inftars.XVIII.2018.1.10
- Bátfai, Norbert; Besenczi, Renátó; Bogacsovics, Gergő; Monori, Fanny Entropy Non-increasing Games for the Improvement of Dataflow Programming, eprint arXiv:1702.04389 https://arxiv.org/abs/1702.04389
- Bátfai, Norbert; Papp, Dávid; Besenczi, Renátó; Bogacsovics, Gergő; Veres, Dávid, Benchmarking Cognitive Abilities of the Brain with Computer Games, eprint arXiv:1809.00172 https://arxiv.org/abs/1809.00172
A programzás és az esport nem triviális kapcsolata
A programzás és a mesterséges intelligencia nem triviális kapcsolata
Laborgyakorlatok
2018/19/1, magyar, 19 fő
A programozással "szimbiózisban" képzeltem el a tárgyat, ami nem a fősodorvonalbeli megközelítés, nem vitás (sem a játékosok, sem a programozók körében, általában meg pláne nem az). Viszont amit ma tudunk az esportról mint jelenségről, annak olyan időfejlődése is lehet, amelyben már az lesz - ez az én ars poeticám. Ezt szolgálja a játék-szervezés-elemzés-programozás szerkezet https://arato.inf.unideb.hu/batfai.norbert/NEMESPOR/ONK2017/ONK_esport_poster_BN.pdf kialakítása.
Játék
1. labor, szept. 14
2. labor, szept. 21
- Előzetes felkészülés: https://youtu.be/e-cEXeNtB3k
- Ismétlés: leet kódoló, tudtok példát? (LEGO BIONICLE BIO kódok pl. abban vannak, vagy a MIndstorms kreatúrák nevei...)
- Bevezetés: beszélgessünk az https://progpater.blog.hu/2018/07/19/esport_reformacio 1. téziséről az alábbi kérdés szemszögéből: áldás vagy átok, hogy minden esport cím mögött ott áll a fejlesztője?
- FUTURE tematika: a kurzus formalizálása: a tevékenység tulajdonságok pontozása és bakattintani a közösségi érzékelési felületen, ami kész (ehhez Facebook bejelentkezés kell: http://smartcity.inf.unideb.hu/~norbi/City/)
- 0 A.D install forrásból, mert kvintesszenciája, hogy OPEN SOURCE (lehet előre dolgozni és hozni a saját gépen, vagy virt image-en, akár csomagból feltéve Linuxra vagy Windowsra simán a futtathatót)
- próbáljunk összehozni néhány közös hálózati játékot (a laboron a gépterem nincs tárgyspecifikusan beállítva, ha máshogy nem, akkor Hamachi privát hálózat)
- lásd még: idősebbek is elkezdhetik: CoC (a terület kutatóinak is kell személyes tapasztalat, lásd majd a 4. labort)
- "Házi feladat": szervezett játék családi, baráti körben a 0 A.D. RTS-el, ennek kapcsán beszéljünk az https://progpater.blog.hu/2018/01/06/esport_kutatasi_kialtvany 1. és 3. tézisét.
3. labor, szept. 28
- Előzetes felkészülés: https://youtu.be/xuxKjNGw_Yw
- Ismétlés: 0 A.D. én megcsináltam a házit: játék megszervezése családi körben: https://youtu.be/XJ3_cT1ZWdg illetve lenyomott a Petra bot: https://youtu.be/XRk9B9jrBvc
- Bevezetés: beszélgessünk az https://progpater.blog.hu/2018/07/19/esport_reformacio 2. téziséről az alábbi kérdés szemszögéből: mikor épít a pénz és mikor rombol?
- LoL install, magam GNU/Linux alatt nyomot, a kurzusra készülve telepítettem (a PlayOnLinux és közvetlen Wine után most) a Lutris-al és láss csodát, minden pöccre ment: https://youtu.be/e20WvjDIVP8 ahogyan a https://lutris.net/downloads/ lap írja, valóban ennyi kellett:
- megnézi a verziód
batfai@entropy:~$ ver=$(lsb_release -sr); if [ $ver != "18.04" -a $ver != "17.10" -a $ver != "17.04" -a $ver != "16.04" ]; then ver=18.04; fi
- ami nálam
batfai@entropy:~$ echo $ver
18.04
- felveszed a repót
echo "deb http://download.opensuse.org/repositories/home:/strycore/xUbuntu_$ver/ ./" | sudo tee /etc/apt/sources.list.d/lutris.list
wget -q http://download.opensuse.org/repositories/home:/strycore/xUbuntu_$ver/Release.key -O- | sudo apt-key add -
- aztán a szokásos
sudo apt-get update
sudo apt-get install lutris
- miután már elég a https://lutris.net/games/league-of-legends/ lapon az Install-t kérni, ami fogja indítani a gépeden a Lutrist és szokásosan telpíted a LoL-t (de nem kell semmit hekkelni) felszalad, frissít és már nyomhatod is a játékot.
- Természetesen, ha a laborra hozod a natív Windowsodon, az is tökéletes (géptermi telepítésben ne gondolkodjatok, mert a kliens frissítése elhúzódhat).
- "Házi feladat": szervezett játék családi, baráti körben (esetleg a DEAC-Hackers tagokkal) a LoL MOBA-val.
4. labor, okt. 5
Szevezés és elemzés
A következő három laboron alakítsd ki vagy a saját, vagy alakítsátok ki a kurzus jelen szemeszterének Twitch csatornáját és ott a heti bontásnak megfelelően mindenki streameljen egy játékot, vagy játékának egy részletét. Használjátok fel a következő logókat a közvetítéseken:
Streamelő laborok, 5.-7.
5. labor, okt. 12
- Előzetes felkészülés: https://youtu.be/xuxKjNGw_Yw
- Felkészülés: olvassuk el: Paul "ReDeYe" Chaloner, Talking Esports, http://www.peteragardi.hu/Talking%20Esports.pdf
- Ismétlés: értékeljük, hogy áll a kurzus friss CoC (https://www.clashofstats.com/clans/esporttoolympic-22QG8L0RQ) és CR klánja.
- Bevezetés: beszélgessünk az https://progpater.blog.hu/2018/07/19/esport_reformacio 4. téziséről, ha az Arthur C. Clarke: A gyermekkor vége című könyvet nem is olvastuk, legalább a minisorozatot nézzük meg!
- Főtémaként streameljünk egy 0 A.D. játékot vagy részletet a saját vagy a kurzus csatornáján! (Nem szükségképpen a laboron, természetesen lehet otthonról is, ha ott jobb a setup).
- Előkészítendő a következő (majd a 8.) 0 A.D. labort, dolgozzunk ki olyan rövid torna menetrendet, amivel eldönthetjük, hogy ki a kurzus legjobb 0 A.D. játékosa?
- A játék esetén direkt közösségépítő API-t nem tudok, e helyett vizsgáljuk meg a modkészítés módját (licencek és technikai értelemben is, olyan aspektusból, hogy mi kell ahhoz, hogy készíthessünk, mondjuk egy magyar pl. "huszáros" modot?) Pár mod pl.: https://www.moddb.com/games/0-ad/mods
- Általában beszéljünk a játék API-k szerepéről. Milyen szolgáltatást tudsz elképzelni kedvenc játékod API-jára? Milyen szolgáltatás hiányzik vagy mit lehetne jobban megcsinálni?
6. labor, okt. 19
- Előzetes felkészülés: https://www.twitch.tv/videos/177405218
- Bevezetés: beszélgessünk az https://progpater.blog.hu/2018/07/19/esport_reformacio 5. téziséről, ennek kapcsán vessük össze a T. L. Taylor, Raising the stakes könyvben szereplő profi esport szerződést (251-261 old.) és a DEAC-Hackers amatőr sportolói sportszerződését (melyet pl. a DEAC-Hackers fészes előszobájában feltötve a fájlok között találtok meg).
- Főtémaként streameljünk egy LoL játékot vagy részletet a saját vagy a kurzus csatornáján! (Nem szükségképpen a laboron, természetesen lehet otthonról is, ha ott jobb a setup).
- Készítsünk rövid elemzést egy játékszituációról. Ez lehet az előző pont streamjéből vagy egy ismert játékszituról, ilyen lehet például Magyar Zsolt és Szabó Ákos kurzusbeli hallgatók közös élményemléke alapján a https://youtu.be/XdN67NuhMW4 5:38-tól.
7. labor, okt. 26
- Előzetes felkészülés: https://youtu.be/F-4H31lUvAE, https://bhaxor.blog.hu/2018/10/17/jatek_batfai_haxor_torna (az óráig még van 2 hét, addig kellene népesebbé tenni :)
- Bevezetés: beszélgessünk az https://progpater.blog.hu/2018/07/19/esport_reformacio 6. téziséről, ennek kapcsán tekintsük át, hogy ha valaki le akar esportolóként igazolni hazánkban, akkor mik a lehetőségek?
- Főtémaként próbálunk reggel 8-ra beütemezni egy Bátfai Haxor Tornát! Lásd pl. az V.-et: https://youtu.be/9_Wwi3Bbiw4 és íme a megvalósítás, rekord méretű lett: https://youtu.be/0djnzqvl3hs
- Streameljünk egy CoC vagy CR játékot vagy részletet a saját vagy a kurzus csatornáján! (Nem szükségképpen a laboron, természetesen lehet otthonról is, ha ott jobb a setup).
- Készítsünk rövid elemzést egy játékszituációról. Ez lehet az előző pont streamjéből vagy egy ismert játékszituról, pl. innen: https://youtu.be/htSukb0J5MQ, a CWL YB csatornáján is csemegézhetsz.
Elemző és versengő laborok, 8.-10.
Amit eddig én szerveztem ("a játszást"), azt most Nektek kellene!
A következő három laboron próbáljunk az előző három hét tapasztalatai alapján kurzusbeli tornákat rendezni, a 0 A.D., LoL, CoC, CR csokorból csak azokat a játékokat választva, ahol az előző három hét megmutatta, hogy életképes lehet.
Legizgalmasabb az lenne, ha kurzusközi online meccset, pl. a KAPCSOLAT - Esport kurzusok scrim ligája csopiban) is tudnánk szervezni, nyilván nem a labor időpontjában, hanem amikor alkalmas.
Ha ez mégsem sikerülne, akkor az alábbi bontás mutatja az alapértelmezett tematikát.
8. labor, nov. 9
- Előzetes felkészülés:
- 0 A.D. járjunk utána, hogy megy-e már a hálózati multiplayer esetén a mentés: kommentek, hibajegyek mentén és forrásban is.
- Járjuk körül az esport és az open source kapcsolatát. Válhat-e nagy esport címmé majd egy FOSS játék? Mit mutat a történelem, mit tanulhatunk a saját "bukásainkból"?
- Ismerjük meg a Legg-Hutter intelligencia fogalmát:
https://www.twitch.tv/videos/336208179
9. labor, nov. 16
- Előzetes felkészülés: https://youtu.be/JRfoPsLC8Sw, https://youtu.be/rLcaIESebv4
- Szervezz le egy custom LoL játékot és streameld is!
- Készíts egy rövid leírást egy LoL hős tekintetében, amely egy kezdő játékos számára összefoglalja a metát: milyen itemeket vegyen, mikor-mit fejlesszen, hogyan viselkedjen az ösvényen, hogyan a teamfightek során stb.!
A Testnevelési Egyetem LoL csapata, Szabella Olivér és Nágl Roland közbenjárásával volt szíves meccselni a kurzus Koós Zoltán szervezte és vezette csapatával:
10. labor, nov. 23
- Előzetes felkészülés: https://youtu.be/0djnzqvl3hs
- Szervezz le néhány friendly CR játékot és lehetőség szerint streameld is!
- Szervezz egy friendly CW-t és lehetőség szerint streamelj is belőle!
- Tervezzünk meg egy anti 3 csillag bázist!
- Készíts egy rövid leírást egy adott CoC TH-szint tekintetében, amely egy kezdő játékos számára összefoglalja a metát: milyen troopokat fejlesszen, milyen taktikával támadjon!
Programozás
Amit eddig játékosként csináltunk, azt kéne most egy ágensbe programozni, azaz, hogy egy program csinálja ugyanazt! (Mellékes kérdés, hogy a humánnál jobb játszó MI-k milyen hatással lesznek az "otthoni esport"-ra?)
A jelen MI forradalom, melyet pl. a 3 Deepmind-os Nature cikk indikál, erősen kapcsolódik a játékokhoz. Az első Nature cikk, az Ataris, még csak témájában, ám mára már a (Artificial general intelligence - AGI) kutatás módszertanában is megjelentek a játékok. Minden nagyhoz köthető egy vagy több nagy cím:
A programozó szempontjából ez ágens programozás, ami ráadásul jóval egyszerűbb, mint például a Robotfoci, Robocup ágens programozása volt ("nincs új a Nap alatt"? korábban mi is foglalkoztunk a 2D RCSS, mint a "legreálisabb" foci szimulátorral, Javaban illetve C++-ban is. Sőt, magam is próbáltam egy saját ágens programozási platformot beizzítani: rubocar (OOCWC), Traffic Simulation based on the Robocar World Championship Initiative)
A következő laborokon az említett nagyok jelenlegi MI kutatásainak sodorvonalába igény szerint a DeepMind Lab, a Minecraft és a Starcraft és társaik ágens programozási példáiba pillantunk bele.
11. labor
pöccre ment az install Linux alatt az alábbi megjegyzésekkel:
- 8-as Java legyen, 10-eshez a Gradle beállításokon állíts, nálam
export JAVA_HOME=/home/batfai/Java/jdk1.8.0_171/
export PATH=$JAVA_HOME/bin:$PATH
illetve a Minecraft/gradle/wrapper/gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-bin.zip
Készíts olyan Steve Python, Java vagy C++ ágenst, amely egy alapértelmezett biomban gazdag világban az akadályokat (pl. fa, fal, víz) igény szerint legyőzve jobbra-balra tartva random felfedezi a világot! Intuitíven kiindulhatsz a Bátfai Haxor Stream ugyanezen témájú példájából: https://youtu.be/8V4XbYXgAw8 a Bátfai Haxor Stream megoldása: https://youtu.be/bAPSu3Rndi8
12. labor
13. labor
14. labor
- A Magyar Nemzeti Mesterséges Intelligencia egy utópia (mint ahogyan a Robocup-ban a humán FIFA futball világbajnok csapat leverése is lehet, hogy egyelőre az - mert szemben a Holdra szállás meg nem volt az). A neurális számítások feltámadása (mélytanulás) a big data-val kombinálva láthatóan helyzetbe hozta a nagy játékosokat (pl. a Google-t, a Microsoft-ot vagy a Facebook-ot) az MI kutatásokban. Ezért utópisztikus azt gondolni, hogy létezhet olyan jelenség, mint amilyen az urán lassú neutronokkal való hasítása volt egy egyetemi stadion lelátója alatt a II. VH idején... utópisztikus azt gondolni, hogy az MI kutatásokban lesz majd egyszer olyan üzenet, mint anno, miszerint "Az olasz kormányos kikötött az új világban"...
A Magyar Nemzeti Mesterséges Intelligencia kifejezést ebben az előadásban dobtam be: https://arato.inf.unideb.hu/batfai.norbert/NEMESPOR/DE/denbatfai2.pdf de az addigi (mondjuk a SAMU-s gyors protók, például az OOCWC, a Entropy Non-increasing Games for the Improvement of Dataflow Programming vagy a A disembodied developmental robotic agent called Samu Bátfai) és az ott lévő (FUTURE) koncepció is elbukott, mivel alap indikátor, hogy legalább országos szinten (vagy legalábbis egy érdeklődő szubkultúrában) killer appnak kell lennie... de legyünk optimisták, már ilyesmin gondolkozni is ajándék :)
- Labormunka: agyvihar killer appra azon kérdések mentén, hogy mitől lesz az ráadásul magyar?, nemzeti? és MI?
Marx György: "Minden számítógép-pedagógus tudja a világon, hogy játékokkal kell kezdeni" - Gyursuló idő, Typotex, 93. old.
Támogatók
Debrecen, 2018. nov. 23, Dr. Bátfai Norbert