Jak počítáme
Úplná transparentnost našich algoritmů pro statistiky puzzle
Obtížnost puzzle
Jak těžké je každé puzzle? Porovnáváme váš čas s vaším osobním průměrem, abychom to zjistili.
Profil dovedností
Jak jste zruční? Hodnotíme vás oproti ostatním hráčům na každém puzzle, váženo obtížností a aktuálností.
MSP Rating žebříček
Portfoliové soutěžní hodnocení. Vaše nejlepší výsledky za posledních 24 měsíců, váženo obtížností s časovým úbytkem.
1 Základ hráče
Základ každého hráče je vážený medián jeho časů prvních pokusů při sólo skládání pro konkrétní počet dílků. Novější složení mají větší váhu díky exponenciálnímu váhování.
Časový úbytek s 3měsíční plošinou
Složení z posledních 3 měsíců se počítají s plnou váhou. Poté starší složení postupně ztrácejí vliv, takže váš základ odráží vaši aktuální rychlost.
effective_age = max(0, age_in_months - 3)weight = exp(-effective_age / 13.5)
Základ je vážený medián vašich časů prvních pokusů při sólo skládání pro každý počet dílků. Novější složení posouvají medián více než starší.
Minimum: 5 různých puzzlí složených (první pokus, sólo) na počet dílků.
Neobvyklé počty dílků
U puzzlí s neobvyklým počtem dílků (např. 631 dílků) většina hráčů nemá 5 složení s přesně tímto počtem. Řešíme to odhadem jejich základu z blízkých počtů dílků, pro které mají data, pomocí interpolace v logaritmickém měřítku. Díky tomu získá hodnocení obtížnosti více puzzlí.
2 Obtížnost puzzle
Pro každého kvalifikovaného hráče, který puzzle složil, počítáme index obtížnosti:
Váš základ: 55 min
Toto puzzle jste složili za: 63 min
Index obtížnosti: 63 / 55 = 1.15
→ O 15% těžší než je pro vás průměr
difficulty_index = solve_time / player_baseline
puzzle_difficulty = median(all player indices)
Skóre obtížnosti puzzle je medián všech kvalifikovaných indexů. Indexy nad 5.0 jsou vyloučeny jako odlehlé hodnoty.
Minimum: 5 kvalifikovaných hráčů potřebných pro skóre obtížnosti.
For each player with a baseline at this piece count:
difficulty_index = seconds_to_solve / player_baseline
Qualification:
- First attempt only (one per player per puzzle)
- Solo, non-suspicious, completed
- Index must be <= 5.0 (outlier ceiling)
puzzle_difficulty = median(all qualifying indices)
Minimum: 5 indices from different players
Stupně obtížnosti
3 Dovednosti hráče
Dovednosti hráče měří, jak si vedete ve srovnání s ostatními hráči na každém puzzle, váženo obtížností puzzle. Těžší puzzle mají vyšší váhu.
Příklad: Jak se počítá vaše skóre dovedností
Složili jste Puzzle X za 45 min, před 3 měsíci.
Z 50 hráčů s prvním pokusem bylo 38 pomalejších — váš percentil = 0.78
Puzzle X je Náročné (obtížnost 1.18) — váha obtížnosti = 1.09
Vážený percentil: 0.78 × 1.09 = 0.85
Složení je 3 měsíce staré (v rámci plošiny) — váha stáří = 1.00
Vaše skóre dovedností = vážený medián všech takových záznamů, kde novější složení mají větší vliv.
Váhování aktuálnosti dovedností
Vaše úroveň dovedností odráží vaši aktuální schopnost. Novější puzzle mají větší vliv než starší díky jemnému časovému úbytku s 6měsíční plošinou.
effective_age = max(0, age_months - 6)age_weight = exp(-effective_age / 24)
Minimum: 10 kvalifikovaných puzzlí, každé s alespoň 20 hráči s prvním pokusem.
For each puzzle with 20+ first-attempt solvers:
percentile = (slower_count + tied_count / 2) / (total_solvers - 1)
confidence = min(1.0, sample_size / 50)
blend = 0.5 × confidence
difficulty_weight = (1 - blend) + blend × puzzle_difficulty
weighted_percentile = percentile × difficulty_weight
effective_age = max(0, age_in_months - 6)
age_weight = exp(-effective_age / 24)
skill_score = weighted_median(weighted_percentiles, age_weights)
Tier = based on percentile rank among all players
Úrovně dovedností
4 MSP Rating žebříček
Soutěžní portfoliové hodnocení. Vaše nejlepší výsledky z posledních 24 měsíců jsou vyhodnoceny, kombinující výkon prvních pokusů (75%) s nejlepšími časy (25%). Těžší puzzle mají vyšší váhu. Novější výsledky mají větší váhu díky jemnému časovému úbytku.
První pokusy (75%)
Složení puzzle napoprvé má nejvyšší váhu — je to nejčistší měřítko dovedností. Hodnoceno je vašich 100 nejlepších výsledků prvních pokusů.
Nejlepší časy (25%)
Počítá se i váš nejrychlejší čas na každém puzzle — skutečné zlepšení cvičením je odměněno, ale s nižší váhou než skládání napoprvé.
Váhování aktuálnosti Rating
Záznamy v portfoliu jsou jemně oslabovány stářím, takže novější výsledky mají větší váhu, zatímco starší silné výsledky se stále počítají. 3měsíční plošina udržuje velmi nedávné výsledky na plné hodnotě.
effective_age = max(0, age_months - 3)decay = exp(-effective_age / 30)decayed_points = points × decay
Pevný limit 24 měsíců — složení starší než 24 měsíců jsou zcela vyloučena.
Příklad: Studený řešitel vs. Grinder
Stejné Těžké puzzle (obtížnost 1.35, váha 1.175), složené minulý měsíc (úbytek = 1.0):
Hráč A: Silný první pokus (92. percentil), nikdy neskládá znovu
Skóre: 0.92 × 1.175 × 1.0 = 1.08
Hráč B: Slabý první pokus (60. percentil), opakovaným skládáním se dostane na 95. percentil
Skóre: 0.75 × 0.70 + 0.25 × 1.12 = 0.81
Hráč A jasně vítězí — surový talent při skládání napoprvé vede, ale B dostává částečný kredit za zlepšení.
Ochrana proti zneužití
- Opakované skládání stejného puzzle: Ovlivňuje pouze jeden záznam nejlepšího času (25% váha). Skóre prvního pokusu je neměnné.
- Hromadění objemu: Limit 100. Po 100 puzzlích pomáhají další složení pouze pokud jsou lepší než váš nejslabší záznam.
- Farmení snadných puzzlí: Váhování obtížnosti dává těžším puzzlím vyšší hodnotu při stejném percentilu.
- Neaktivita: Časový úbytek postupně snižuje starší výsledky. Zůstaňte aktivní pro udržení hodnocení.
Minimum: 20 prvních pokusů + 50 kvalifikovaných puzzlí v 24měsíčním okně. Každé puzzle musí mít 20+ hráčů.
Rolling window: 24 months. Decay: 3-month plateau.
For each puzzle in window (20+ public solvers):
fa_percentile = rank among first-attempt solvers (0–1)
bt_percentile = rank among all players' best times (0–1)
confidence = min(1.0, sample_size / 50)
blend = 0.5 × confidence
difficulty_weight = (1 - blend) + blend × difficulty
effective_age = max(0, age_months - 3)
decay = exp(-effective_age / 30)
fa_points = fa_percentile × difficulty_weight × decay
bt_points = bt_percentile × difficulty_weight × decay
First-attempt portfolio = mean(top 100 fa_points)
Best-time portfolio = mean(top 100 bt_points)
Rating = 0.75 × FA_portfolio + 0.25 × BT_portfolio
Entry: 20 first attempts + 50 total solves within window
Display: rating × 1000 (e.g., 0.85 → 850)
5 Predikce času
Používáme vrstvený systém predikcí. Pokud jste puzzle již skládali, dostanete osobní predikci využívající vaši historii zlepšování a datově podložené poměry zlepšení. Jinak dostanete statistickou predikci na základě vašeho základu a obtížnosti puzzle.
Poměry zlepšení
Počítáme poměry zlepšení — o kolik jsou hráči typicky rychlejší mezi po sobě jdoucími pokusy (1.→2., 2.→3. atd.). Tyto poměry jsou vypočítány ze skutečných dat všech hráčů a puzzlí, rozvrstvené podle časového odstupu mezi pokusy.
ratio(N→N+1) = median(čas_pokus_N+1 / čas_pokus_N)
Zdroje (pořadí priority):
1. Váš osobní poměr (ze všech vašich opakovaných složení)
2. Globální poměr (od všech hráčů, dle počtu dílků)
3. Výchozí: 0,90
Korekce odstupu: váš osobní poměr je upraven
dle globálních dat o časových odstupech.
Časový odstup mezi pokusy ovlivňuje, kolik si pamatujete. Poměry jsou rozděleny do skupin podle délky odstupu:
| Skupina | Rozsah |
|---|---|
| lt30d | < 30 days |
| 1_3m | 30–89 days |
| 3_12m | 90–364 days |
| gt12m | 365+ days |
Osobní predikce (1+ předchozí složení)
Když jste puzzle již skládali, predikujeme váš další čas pomocí poměrů zlepšení kombinovaných s Holtovým tlumeným trendovým vyhlazováním. S méně předchozími pokusy dominuje poměr zlepšení. S více historií přebírá trendový model.
ratio_prediction = poslední_čas × poměr_zlepšení(N→N+1, odstup)
Kombinace s Holtovým tlumeným trendem (α=0,5, β=0,4, φ=0,8):
N = 1: 100%% poměr zlepšení
N = 2-5: kombinace (váha Holt = (N-1)/5)
N ≥ 6: 100%% Holtův tlumený trend
Minimum: max(predikce, nejlepší_čas × 0,70)
Kombinace zajišťuje plynulé přechody: s málo daty vedou vzory zlepšování napříč puzzly. Jak roste historie konkrétního puzzle, přebírá trendový model.
Statistická predikce (první skládání puzzle)
Když jste toto puzzle ještě neskládali, kombinujeme váš základ s obtížností puzzle:
predicted_time = player_baseline × puzzle_difficulty
Váš základ pro 500 dílků: 55 min
Obtížnost puzzle: 1.15 (Náročné)
Předpovězený čas: 55 × 1.15 = ~63 min
Rozmezí používá P25–P75 indexů obtížnosti puzzle: základ × P25 až základ × P75. Bezpečnostní hranice udržují rozmezí mezi 30%% a 300%% předpovězeného času.
6 Metriky osobnosti puzzle
Zapamatovatelnost
O kolik se toto puzzle zjednoduší, když ho už znáte?
Měří, jak rychle se hráči učí toto puzzle během prvních 3 pokusů, normalizováno oproti průměrné rychlosti učení. Hodnota > 1.0 znamená, že toto puzzle odměňuje znalost více než průměr. Min: 8 hráčů se 3+ pokusy.learning_rate = (attempt_1 - attempt_3) / attempt_1
memorability = puzzle_learning_rate / global_learning_rate
Citlivost na dovednosti
Rozhodují na tomto puzzle hodně dovednosti?
Poměr 75. k 25. percentilu indexů obtížnosti. Vyšší = větší rozdíl mezi rychlými a pomalými hráči. Min: 20 kvalifikovaných indexů.skill_sensitivity = P75(indices) / P25(indices)
Předvídatelnost
Jak předvídatelná je obtížnost tohoto puzzle?
Skóre od 0 do 1 (ohraničené). Blíže k 1 = konzistentnější zkušenost s obtížností mezi různými hráči. Min: 20 kvalifikovaných indexů.CV = std_dev(indices) / mean(indices)
predictability = 1 / (1 + CV)
Závislost na krabici
O kolik je toto puzzle těžší bez pohledu na krabici?
Poměr obtížnosti bez krabice ku obtížnosti s krabicí. 1.0 = žádný rozdíl, 2.0 = dvakrát těžší bez krabice. Min: 10 hráčů naslepo + 5 hráčů s krabicí.box_dependence = median(unboxed_indices) / median(boxed_indices)
Potenciál zlepšení
O kolik může cvičení zlepšit váš čas na tomto puzzle?
Poměr mediánu času prvního pokusu k 10. percentilu všech pokusů. Vyšší hodnota znamená, že cvičení dramaticky zlepšuje časy. Min: 20 hráčů.improvement_ceiling = P50(first_attempts) / P10(all_attempts)
7 Spolehlivost & Kvalita dat
Úrovně spolehlivosti
Kvalita dat
- Pouze sólo: Duo a týmová složení jsou vyloučena
- První pokusy: Pro obtížnost a základy se počítají pouze první setkání s puzzlem
- Filtr odlehlých hodnot: Indexy obtížnosti nad 5.0 jsou vyloučeny (pravděpodobně chyby stopek)
- Vyloučení podezřelých: Časy označené jako podezřelé jsou vyloučeny
- Váhování aktuálnosti: Novější složení mají větší váhu — základy, úrovně dovedností a Rating používají časový úbytek, aby odrážely vaši aktuální schopnost
Minimální datové prahy
| Základ hráče | 5 různých prvních pokusů sólo skládání na počet dílků |
| Obtížnost puzzle | 5 kvalifikovaných indexů od různých hráčů |
| Dovednosti hráče | 10 kvalifikovaných puzzlí s 20+ hráči s prvním pokusem |
| MSP Rating žebříček | 20 prvních pokusů + 50 celkových složení v 24měsíčním okně |
| Zapamatovatelnost | 8 hráčů se 3+ pokusy |
| Citlivost na dovednosti / Předvídatelnost | 20 kvalifikovaných indexů |
| Závislost na krabici | 10 hráčů naslepo + 5 hráčů s krabicí se základem |
| Potenciál zlepšení | 20 hráčů |
8 Odhlášení z hodnocení
Hráči se mohou odhlásit z hodnocení a sledování dovedností v nastavení profilu. Odhlášení hráči jsou stále zahrnuti ve všech výpočtech na pozadí — jejich výsledky přispívají ke skóre obtížnosti puzzlí a hodnocení ostatních hráčů. Jednoduše se nezobrazují na veřejném MSP Rating žebříčku a nevidí svou úroveň dovedností ani Rating hodnocení. Opětovné přihlášení okamžitě obnoví plnou viditelnost.
Další přepočítání za --:--