Search
Podrobná specifikace toho, co musí agent umět a jak musí vypadat, aby mohl být otestován automatickým evaluačním systémem.
Stáhněte si reversi_2023l.zip
ZIP obsahuje soubory implementující prostředí, ve kterém se bude hrát. Pro zahrání samotné hry jsou k dispozici dvě prostředí: grafické reversi_creator.py, nebo terminálové headless_reversi_creator.py. Modul player.py obsahuje šablonu vašeho hráče (viz níže). Podrobnosti k těmto souborům najdete v README.
reversi_creator.py
headless_reversi_creator.py
player.py
Odevzdávat budete ZIP archiv obsahující váš modul player.py a případně další vaše moduly, které modul player.py potřebuje. Tyto soubory musí být v kořeni archívu, archív nesmí obsahovat žádné adresáře! Váš ZIP archív (a jen tento soubor) nahrajete do BRUTE. Se zdrojovými kódy vašeho hráče (a vašich pomocných modulů) můžete nahrát nějaké datové soubory, pokud nutně potřebujete. Ale velikost odevzdávaného ZIP archivu nesmí přesáhnout 1MB.
Balíček také obsahuje soubor player.py s třídou MyPlayer. V ní upravte metodu move() tak, aby realizovala strategii vašeho hráče.
MyPlayer
move()
Docstring popisující třídu MyPlayer je omezen na 80 znaků, neboť se objeví v tabulce s výsledky. Zkuste v docstringu velice stručně popsat hlavní princip vašeho hráče.
Vašeho hráče (v souboru 'player.py') implementujete ve formě třídy MyPlayer (soubor '/reversi/player.py' v archivu výše), která obsahuje tyto metody:
__init__
my_color
opponent_color
board_size
get_all_valid_moves
board
move
Samozřejmě není vhodné implementovat celou strategii jen v metodě move(). Doporučujeme zamyslet se nejprve nad dekompozicí celého problému, ve třídě MyPlayer implementovat i další metody řešící nějaké podproblémy vaší strategie a tyto metody jen z move() volat.