====== Žebříček ATP ====== * Data: {{:courses:a0m33eoa:semestralni_ulohy:atp:atp_data.zip|Aktualizovaná data}} * Orientační výsledky Kubalíkova algoritmu pro 30 běhů na každých datech: {{:courses:a0m33eoa:semestralni_ulohy:atp:vysledky.zip|}} Kdybychom měli k úloze přistupovat jako k černé skříňce, neměli byste informace o vzájemných zápasech využívat nikde jinde než v ohodnocovací funkci. V této úloze ale **je povoleno využívat či analyzovat vzájemné zápasy** i jinde, např. v rekombinačních operátorech. ===== Popis problému ===== Máme bilanci výsledků vzájemných zápasů tenistů na okruhu ATP. Data jsou uložena v matici B, kde hodnota na pozici [i, j] vyjadřuje vzájemnou bilanci mezi hráči i a j, a to: - absolutně: * b_{ij} = n: hráč i v sezoně n-krát zvítězil nad hráčem j - relativně: * b_{ij} = 1: hráč i má pozitivní bilanci s hráčem j * b_{ij} = 0: hráč i má negativní bilanci s hráčem j Cílem je sestavit žebříček (pořadí hráčů) tak, aby co nejlépe odpovídal vzájemným bilancím hráčů. ===== Možné reprezentace ===== * Lineární sekvence (permutace) hráčů * ... ===== Jednotná ohodnocovací funkce ===== Kvalita daného žebříčku hráčů (permutace hráčů, \pi) se počítá pomocí následující funkce: f(\pi) = \sum_{i=1}^{N-1} \sum_{j=i+1}^N B_{\pi(i)\pi(j)} Tato funkce má být maximalizována.