PREDIZIONI DI DINAMICA DELLE USAGE!!!

(sensate)

« Older   Newer »
 
  Share  
.
  1.     Top   Dislike
     
    .
    Avatar

    Gotta Knock A Little Harder

    Group
    Supporter
    Posts
    21,298
    e-penis
    +9,897
    Location
    glade of dreams

    Status
    Anonymous
    tutto in questa sezione ebbe inizio con io e seymour che faggavamo di matematica. in realtà, in principio era il caos il mio motivo per avvicinarmi al mondo della matematica in pokémon era che trovavo poco sensato fare un ban, se non si sapeva se questo avrebbe veramente "migliorato" il metagame. ora sinceramente è ancora molto difficile pensare di risolvere un'enigma di questa portata, nel senso: cosa vuol dire veramente che un meta è migliore di un altro, e come si fa a fare l'inferenza che da un certo panorama di usage discenda uno skill gap più grande tra i giocatori con la stessa diversità di esperienza? queste questioni sono di una complessità che non possiamo ancora sfiorare, ma un altro problema è ancora più urgente; infatti, non sappiamo ancora come variano le usage dopo un ban.

    nonostante contraddette decine di volte dall'esperienza, molte persone hanno una visione molto lineare delle usage di questo gioco; banno A dal metagame M, ottengo un metagame M' che è esattamente come M a parte che non c'è A, che era un pokémon broken, e quindi M' è migliore di M. in realtà, immediatamente prendono piede nuovi processi di centralizzazione e molta più attenzione è richiesta se si vuole predire correttamente M', almeno nei suoi primi mesi di vita. ma nonostante questo processo possa essere portato avanti da una mente umana, le predizioni a lungo termine sfuggono anche al più attento degli osservatori.

    se provassimo a costruire un modello matematico perfettamente accurato, che tenga conto di tutte le variabili in pokemon, finiremmo per avere delle equazioni differenziali troppo complicate per essere risolte, ed il cui andamento può essere studiato solamente con dei calcolatori. ma poiché non disponiamo questi potenti mezzi, quello che vi faccio vedere adesso è un modello di dinamica delle usage abbastanza semplice da essere scritto su un foglio excel. non si tratta di un modello che rappresenta un ban, anche se si potrebbe usare lo stesso foglio per determinare una dinamica del genere; qui guardiamo un più tranquillo processo di naturale cambiamento del meta nel tempo.

    per prima cosa ho scritto una "countertab": è solo un foglio di excel sulle cui righe e colonne stanno i nomi dei threat. nella casella che incrocia la riga e la colonna c'è scritto 1 se il pokémon sulle righe countera quello sulle colonne, 0 se non lo countera (con un countertab come questa si possono fare altre cose, come calcolare se esistono team che coprono tutta la threat list, e quali sono). quel che ho fatto io è stato creare una seconda tabella a partire dalla prima, che è più conveniente leggere per colonne; uno 0 lungo la colonna significa che il pokémon non viene counterato dal corrispondente sulla riga, mentre un numero, che stavolta è più piccolo di 1, indica che viene counterato. anche la tabella di prima si poteva leggere così; ma stavolta il numero è più piccolo di 1 perché quello è un numero speciale, una costante particolare, O, riferita al pokemon, che in pratica misura quanto è difficile da fermare (infatti, è 1 diviso per la somma di un "1" per ogni counter che quel pokémon ha). se ora sommo tutte le costanti lungo una riga, ottengo una misura di quanto è utile nel countering il pokemon su quella stessa riga, che chiamo D, non più considerando solo il numero di pokemon che countera, ma anche la sua "specializzazione" nel fermare threat che solo pochi altri fermano.

    a questo punto, servirebbero anche delle usage di partenza, ma dato che non ne ho di affidabili, mi creo da solo una lista ordinando i pokémon per O × D; a fianco del nome del pokémon è riportata la sua usage percentuale di partenza:

    Snorlax (curse eq) 38,1710436458
    Snorlax (curse ft) 32,7930144852
    Regice 28,3484644147
    Spikes 25,9151293026
    Zapdos (dpeck) 23,3677008264
    Celebi (ls + psong + grass) 19,6646616311
    Raikou (ice) 19,3303930844
    Gyarados 19,2417403497
    Suicune (cm + ib) 17,9242655663
    Tyranitar 17,0660917916
    Heracross 16,5379512091
    Starmie3 16,3551818431
    Aerodactyl 15,5503834461
    Zapdos (rt + toxic) 14,7699847334
    Jirachi 14,604965023
    Raikou (grass) 14,2831683889
    Ludicolo (rain) 13,3706611096
    Salamence (ddmence) 13,1508925345
    Ludicolo (stall) 13,0011767691
    Suicune (crocune) 12,5374220762
    Blissey (stoss + ib + toxic) 12,2836160605
    Flygon 12,2400859661
    Swampert 11,3881126565
    Celebi (bpasser) 10,896339469
    Salamence (mixmence) 10,4860469746
    Houndoom 9,9972763322
    Gengar 9,6375931384
    Cloyster 9,3518659835
    Weezing (taunt) 9,2735399245
    Dusclops 9,1238345897
    Skarmory (taunt) 8,7711678097
    Altri fighting 8,6028908508
    Metagross 8,5470011709
    Magneton 8,402666707
    Venusaur 8,0859740528
    Moltres (wisp + rest) 8,0105712898
    Steelix (toxic + roar) 7,661074199
    Normal CBer 7,3527057816
    Starmie (spin + reflect) 7,0946388591
    Vaporeon e Milotic 6,851700582
    Claydol 6,1155100303
    Regirock 5,9344171403
    Forretress 5,7718153014
    Dugtrio 5,1558010092
    Alakazam (cm + 3 atks) 4,9722109856
    Jynx 2,0072509047

    i trapper sono meno efficaci di quel che plausibilmente dovrebbero essere perché questo è appunto un modello estremamente semplificato, che non tiene conto delle combinazioni. il metagame rappresentato non corrisponde in particolare a nessuno di quelli per cui rse sia passato, anche se il gran numero di curselax, zapdos offensivi, celebi, raikou, suicune e gyarados può ricalcare decentemente come si giocava su smogon nel 2006 (comunque è bene tener presente che questa lista è più un artificio che altro, che serve sostanzialmente per ottenere dei valori iniziali per le usage). ludicolo rain dancer si trova in una posizione insolitamente alta, che spesso occupa durante le fasi di transizione--in rse è capitato di vederlo spesso nel periodo in cui sono stati fatti dei ban.

    a questo punto, poiché O è una costante (perché un pokémon non è davvero "più facile" o "più difficile" da fermare a seconda del metagame), ho moltiplicato tutte le O originali per le usage, e poi ho sommato i risultati per ottenere le nuove D' (che cambiano con il metagame, perché l'utilità difensiva dipende da quanto di quel che devi fermare è effettivamente in circolazione). di nuovo ho moltiplicato O × D' e...

    Snorlax (curse eq) 36,8586261361
    Snorlax (curse ft) 31,0218244287
    Spikes 29,2789989938
    Regice 29,1605831862
    Celebi (ls + psong + grass) 23,273091648
    Aerodactyl 21,443650058
    Zapdos (dpeck) 21,1933328039
    Raikou (ice) 19,2304419068
    Tyranitar 18,9637589758
    Jirachi 17,1461856636
    Gyarados 16,8476226145
    Heracross 15,3630035891
    Raikou (grass) 14,4313828753
    Suicune (cm + ib) 13,442614832
    Starmie3 13,2657116416
    Blissey (stoss + ib + toxic) 13,2019112782
    Salamence (ddmence) 12,8971278603
    Ludicolo (stall) 12,5698306398
    Weezing (taunt) 12,5594085577
    Flygon 12,387097137
    Zapdos (rt + toxic) 12,2300274373
    Altri fighting 12,1519281074
    Skarmory (taunt) 10,4263850673
    Gengar 10,3581396086
    Swampert 10,2433046456
    Ludicolo (rain) 10,0967479926
    Suicune (crocune) 9,9471797525
    Magneton 9,8059599229
    Regirock 9,6757314612
    Celebi (bpasser) 9,4404771531
    Steelix (toxic + roar) 9,3975932611
    Salamence (mixmence) 8,7058881394
    Dusclops 8,6223541584
    Houndoom 8,617879288
    Metagross 8,5042199789
    Starmie (spin + reflect) 7,7502179437
    Venusaur 7,665714994
    Forretress 7,44400259
    Cloyster 7,3725256149
    Claydol 7,1733623991
    Normal CBer 6,6646659834
    Moltres (wisp + rest) 6,2542050953
    Dugtrio 5,6598646411
    Vaporeon e Milotic 5,2504181073
    Alakazam (cm + 3 atks) 3,6043916952
    Jynx 2,4006101354


    le usage di snorlax cominciano a scendere, e quelle di ttar a salire! un fatto storicamente documentato a un certo punto del 2006! crescono in usage gli spiker, e gli spinner insieme agli spiker. e chi l'avrebbe predetto che raindicolo scendesse in usage in maniera così repentina? ma in verità è un fatto osservato! e tutta la bl tier in generale assume un aspetto che è più simile a quello che ha avuto per un lungo lasso di tempo tra il 2007 e il 2008, e starmie e suicune che catalizzavano le usage a scapito di quelle degli altri water.

    questo modello è chiaramente molto lontano dall'essere perfetto (per esempio, non rende conto della straordinaria diffusione di starmie spinner, ed in generale sottovaluta moltissimo la diffusione degli spinner; senza contare che non è programmato per tenere conto dei trapper), ma mostra già bene le oscillazioni che si incontrano in una prima fase di transizione del metagame, ed i fenomeni associati e spesso imprevedibili che accadono naturalmente con lo scorrere del tempo. è laborioso iterare il processo, ma se venisse ripetuto nuovamente, si troverebbe un valore di centralizzazione ancora diminuito per snorlax.
     
    Top
    .
  2.     Top   Dislike
     
    .
    Avatar

    Heisenberg mi fa un baffo.

    Group
    Member
    Posts
    2,436
    e-penis
    +594

    Status
    Offline
    questa è una fantastica semplificazione del modello completo e contemporaneamente un raffinamento del modello fatto di 0 ed 1. io ti dicevo di metterci dei numeri diversi, ma tu no. >:( però poi l'hai fatto. bravo. ricordo che ai tempi nessuno voleva mettersi al lavoro per fare una tabella di countering, anche se in realtà quella sarebbe dovuta essere più precisa, costruita calcolando il countering con simulazioni di 1vs1. ma tu hai usato la tua esperienza, dovrebbe andar bene lo stesso, anche se si perde un pochino in precisione, forse... quello che tu dici quindi è che iterando il processo si ottengono delle approssimazioni di un metagame che si evolve, e questo è bene; ma riguardo alla questione coppie-triplette-ecc. volevo dirti questo: e se si costruisse una funzione di countering fra i team che tiene conto di queste cose, ma scritta in modo che i termini successivi siano progressivamente meno (o più) importanti? parlo insomma di una espansione tipo taylor per la funzione di countering. Se usi quella completa e scrivi il potenziale di interazione e blabla ti trovi con il modello che ho scritto nell'articolo, e se lo tratti in modo quantistico la soluzione esatta c'è ma è immensamente brutta da calcolare. se lo tratti classicamente vengono delle eq. diff., è vero, ma in realtà non sono *così* difficili. sono qualcosa del tipo u''(x)+c(x)u(x) = 0, solo che al posto della derivata seconda c'è il d'Alembertiano in n dimensioni. c(x) è una roba tipo l'integrale/somma del countering tra x ed y su tutte le risorse y, ovvero... molto somigliante quello che hai scritto tu! funziona un po' come una massa al quadrato, solo che a seconda dei casi può essere positiva o negativa. In pratica le particelle di usage hanno una massa che dipende dalla loro posizione...

    il punto è che se usi dei contributi semplici alla c(x) secondo me non dovrebbe essere troppo difficile risolvere il modello classico con un paio di trasformate di fourier. o, al contrario, se aggiungi dei contributi che c'entrano con le n-uple di pkmn potresti usarlo in questo approccio qui e ottenere predizioni comunque più accurate di queste.
     
    Top
    .
  3.     Top   Dislike
     
    .
    Avatar

    coglione

    Group
    Member
    Posts
    6,891
    e-penis
    +2,890

    Status
    Offline
    pensavo fosse un topic di CARLO MARIA ROGITO
     
    Top
    .
  4.     Top   Dislike
     
    .
    Avatar

    Affezionato

    Group
    Member
    Posts
    1,267
    e-penis
    0

    Status
    Offline
    vorrei sapere se per la prima tabella del countering (quella con 0 e 1 ) hai usato i set del dex o sei andato ad esperienza facendo una cernita (includendo in questi casi tra i counter poke che counterano solo alcuni set). Poi non mi è chiaro il passaggio della "specializzazione", come fai a dedurla?
    qualche esempio di team "perfetto"? qualche test con i vecchi team del passato per trovare le debolezze è possibile farli?

    e dal lato offensivo si possono fare le medesime osservazioni?

    Boh ora che hai la tabella del countering fatta potresti fare un sacco di esperimenti. ad esempio verificare se buildando un team tenendo a mente di avere tutte le resistenze ed usando i poke standard (quelli che nelle tue liste hanno i punteggi più alti di countering) si ottengono effettivamente team solidi. O se ad esempio i team "perfetti" hanno effettivamente tutte le resistenze. se non le hanno, quali sono quelle indispensabili?



    LOL sono un sacco di domande... me ne rendo conto :)
     
    Top
    .
  5.     Top   Dislike
     
    .
    Avatar

    Gotta Knock A Little Harder

    Group
    Supporter
    Posts
    21,298
    e-penis
    +9,897
    Location
    glade of dreams

    Status
    Anonymous
    rispondo tipo mercoledì
     
    Top
    .
  6.     Top   Dislike
     
    .
    Avatar

    Affezionato

    Group
    Member
    Posts
    1,267
    e-penis
    0

    Status
    Offline
    Uppete ... Ho visto anche la roba su AB

    È possibile fate un team che coiunteri tutte le coppie? Avrebbe senso?
     
    Top
    .
  7.     Top   Dislike
     
    .
    Avatar

    Heisenberg mi fa un baffo.

    Group
    Member
    Posts
    2,436
    e-penis
    +594

    Status
    Offline
    il fatto è che bisogna definire il countering sulle coppie oppure mettersi a mettere degli 0 ed 1 personalmente su ogni coppia do coppie
     
    Top
    .
  8.     +3   Top   Dislike
     
    .
    Avatar

    coglione

    Group
    Member
    Posts
    6,891
    e-penis
    +2,890

    Status
    Offline
    GF perché non hai ancora postato questa sensazionale opera d'arte?

    mjFKis6
     
    Top
    .
  9.     Top   Dislike
     
    .
    Avatar

    Heisenberg mi fa un baffo.

    Group
    Member
    Posts
    2,436
    e-penis
    +594

    Status
    Offline
    questa invece è la prima predizione del mio modello super-incasinato che però può tenere conto di molti più effetti. diversamente da quello che ha scritto gf questo modello calcola le probabilità di evoluzione del metagame da un certo stato all'altro, piuttosto che le usage (che si possono comunque "dedurre" facendo parecchi di questi calcoli")

    per questo motivo non posso (ancora) mettermi a calcolare probabilità a casaccio perchè in fondo il metagame finale che si vuole indagare può essere uno tra tantissimi, quindi dovrei automatizzare il processo, però a mano si può fare un calcoletto più semplice. ho preso un gioco fatto da 4 pkmn, gengar, suicune, ttar, celebi. partendo da un mg iniziale costituito da due sole usage, gengar e ttar, e zero degli altri, ho calcolato ad esempio che

    probabilità(gengar+ttar --> celebi + ttar) / probabilità(gengar+ttar --> celebi+suicune) = 41.1777

    con buona precisione. vi sembra una cosa ragionevole?

    volevo fare un bel grafico della questione, ma mathematica mi esplode appena gli chiedo di farlo. sigh. si possono fare grafici per dei metagame con una sola usage, ma come potete immaginare un solo tizio che sceglie un pkmn, se lo tiene un po' e poi cambia idea non rappresenta una prospettiv interessante.
     
    Top
    .
8 replies since 12/2/2014, 00:30   320 views
  Share  
.