Original title:
Robocode - zabezpečená platforma pro hodnocení studentských projektů
Translated title:
Robocode - secured platform for evaluation of students' projects
Authors:
Peňáz, Vladimír ; Ježek, Štěpán (referee) ; Burget, Radim (advisor) Document type: Bachelor's theses
Year:
2023
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií Abstract:
[cze][eng]
Tato bakalářská práce se zaměřuje na návrh a implementaci bezpečné testovací platformy založené na hře Robocode, která slouží k hodnocení studentských projektů v rámci předmětu MSC-PDA. Projekt využívá principy strojového učení a řeší problém třídy složitosti EXPSPACE. Hodnocení kvality výsledků v této třídě složitosti je obtížné a aktuálně neexistuje vhodné prostředí pro tyto účely. Cílem práce je vytvořit bezpečné prostředí, které umožní studentům soutěžit na herním serveru s minimálním rizikem poškození učitelské výpočetní stanice a zajištěním práv superuživatele. Studenti budou své natrénované modely připojovat k hernímu serveru, odkud získají kompletní informace o dění na bitevním poli a podle nich vygenerují instrukce pro svůj tank. Tímto způsobem bude model disponovat stejnými informacemi o bitvě jako člověk hrající manuálně. Na základě konečného skóre bude možné vyhodnotit, který model dosáhl nejlepšího výsledku a označit ho jako nejlepší. Platforma je implementována v jazyce Java a pracuje s modely implementovanými v jazyce Python.
This bachelor's thesis focuses on the design and implementation of a secure testing platform based on the game Robocode, which is used for evaluating student projects in the MSC-PDA subject. The project utilizes principles of machine learning and addresses a problem in the complexity class EXPSPACE. Evaluating the quality of results in this complexity class is challenging, and currently, there is no suitable environment available for these purposes. The objective of this thesis is to create a secure environment that allows students to compete on a game server with minimal risk of damaging the teacher's computer and ensures superuser privileges. Students will connect their trained models to the game server, where they will receive complete information about the battlefield, based on which they generate instructions for their tanks. In this way, the model will have the same information about the battle as a manually playing human. Based on the final score, it will be possible to evaluate which model performed the best. The platform is implemented in Java and works with models implemented in Python.
Keywords:
client-server; Genetic programming; Java; ML evaluation; Python; Reinforcement learning; Robocode; security; semester project; TCP/IP; testing platform; bezpečnost; Genetické programování; hodnocení ML; Java; klient-server; Python; Robocode; semestrální projekt; TCP/IP; testovací platforma; Zpětnovazební učení
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/210904