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.
Odevzdávat budete ZIP archiv s vaším modulem player.py
a případně se všemi moduly, které tento modul importuje. Tyto soubory musí být v
kořeni archívu, archív nesmí obsahovat žádné adresáře! ZIP archív (a jen tento soubor) nahrajete do
upload systému.
Se zdrojovými kódy vašeho hráče a případné vaší pomocné knihovny můžete nahrát i 1(!) datový soubor, pokud nutně potřebujete. Velikost tohoto souboru je omezena na 1MB.
Balíček reversi_2023l.zip obsahuje soubory implementující prostředí, ve kterém se bude hrát. Pro zahrání samotné hry jsou k dispozici dvě možnosti: grafická 'reversi_creator.py', nebo v terminálu 'headless_reversi_creator.py'. Podrobnosti k těmto souborům najdete v Readme.
Balíček také obsahuje soubor 'player.py'. Tam budete muset upravit metodu move
, aby zachycovala strategii vašeho hráče.
Docstring popisující třídu MyPlayer je omezen na 80 znaků neboť se objeví v tabuli s výsledky.
Představte v tomto docstringu ve zkratce vašeho agenta a na jakém principu funguje.
Vašeho hráče (v souboru 'player.py') implementujete ve formě třídy MyPlayer
(soubor '/reversi/player.py' v reversi.zip), která obsahuje tyto metody:
metoda | vstupní parametry | výstupní parametry | vysvětlení |
---|---|---|---|
__init__ | my_color , opponent_color , board_size | žádné | Vytvoření hráče dané barvy s protihráčem druhé barvy. Velikost hrací plochy máte v konstruktoru pro případnou přípravu heuristických ohodnocení. |
get_all_valid_moves | board | seznam souřadnic | Metoda vrátí seznam všech korektních tahů. |
move | board | souřadnice | Metoda vrátí tuple souřadnic na hrací desce, kam váš hráč chce umístit hrací kámen. Tuto metodu musíte dopsat. |