====== Vězňovo dilema ====== Téma je vysvětleno v 1. přednášce v prvním výukovém týdnu. Vězňovo dilema a jeho varianty se vyskytují v mnohé literatuře a každý si může najít alternativy, které mu nejvíce vyhovují. Dobrý startovní bod ke studiu problému je určitě relevantní [[http://en.wikipedia.org/wiki/Prisoner's_dilemma|stránka]] na Wikipedii. Dobrý úvod do teorie her a vysvětlení základního názvosloví nabízí český text {[b4b33rph:Pelis2008]} nebo {[b4b33rph:Binmore-2014]}. Doporučujeme projít [[https://ncase.me/trust/|interaktivní úvod]] do her typu Vězňovo dilema. ====== Formulace úlohy ====== Naprogramujte hráče (agenta), který bude hrát opakovanou nekooperativní dvouhráčovou hru. Na vstupu je známa **matice zisků** (payoff matrix), počet opakování může, ale nemusí být předem znám. Cílem je **maximalizovat svůj zisk**, tedy získat co nejvíce bodů z payoff matice (součet přes všechny iterace všech partií). [[.:specifikace|Podrobnější]] specifikace hráče a turnajů, které se budou hrát. ====== Odevzdávání ====== Úloha má dvě odevzdání, termíny jsou vidět v [[https://cw.felk.cvut.cz/brute/|BRUTE]]: - Jednoduchý hráč, který splňuje formální požadavky, tj. je schopen hrát (úloha 03_PD_hrac). - Chytrý hráč, který bude hrát proti všem ostatním. Jeho hlavním úkolem je obehrát ostatní, získat největší zisk (úloha 04_PD_tur).