Hodnocení je rozděleno následovně:
Automatické hodnocení testuje správnost nalezené strategie (shodu vámi vrácených akcí s optimálními akcemi pro všechny stavy) v několika různých prostředích (příp. s různými discount factory).
Manuální hodnocení je založeno na hodnocení kódu (clean code).
Hodnocený výkon | min | max | poznámka |
Kvalita algoritmu value iteration | 0 | 2.5 | Ohodnocení algoritmu automatickým evaluačním systémem. |
Kvalita algoritmu policy iteration | 0 | 2.5 | Ohodnocení algoritmu automatickým evaluačním systémem. |
Kvalita kódu | 0 | 1 | Komentáře, struktura, elegance, čistota kódu, vhodné pojmenování proměnných… |
Automatické hodnocení:
shoda v policy 95% a více (průměr na n testovaných bludištích): 2.5 bodu
shoda v policy 90%-95% : 2 body
shoda v policy 85%-90% : 1.5 bodu
shoda v policy 80%-85% : 1 bod
shoda v policy 70%-80% : 0.5 bodu
méně než 70% shoda: 0 bodů
Kvalita kódu (1 bod):
vhodné komentáře, nebo kód je srozumitelný natolik, že komentáře nepotřebuje
rozumně dlouhé, resp. krátké metody/funkce
jména proměnných (podst. jména) a funkcí (slovesa) pomáhají čitelnosti a srozumitelnosti
kusy kódu se neopakují (žádné copy-paste)
rozumné šetření pamětí a procesorovým časem
konzistentní názvy i rozložení kódu v celém souboru (oddělovat slova ve všech metodách stejně, atp.)
přehledná struktura kódu (vyvarujte se např. nepythonovskému přiřazování mnoha proměnných v jednom řádku)
…
Můžete následovat pro Python určený PEP8. Většina editorů (jistě PyCharm) na nedostatky s ohledem na PEP8 i sám upozorňuje. Můžete se také inspirovat např. zde nebo si přečíst o idiomatickém pythonu na mediu či u pythonu.