maanantai 21. syyskuuta 2009

Nolla ja summa.

Pelasin joskus vuosia sitten KGS-serverillä lähes päivittäin. Pidin kyseisestä serveristä enemmän kuin IGS:stä, koska ainakin aloittaminen IGS:ssä oli silloin liki mahdotonta: Kukaan ei suostunut pelaamaan aloittelijan kanssa. Nyt sama kulttuuri näyttäisi vallitsevan KGS:ssä, kun kokeilin. Tunnin aikana en saanut yhtään haastetta pystyttämääni peliin ja toisaalta vain yksi useista kymmenistä pelaajista suostui pelaamaan kanssani.

Peliteoreettisesti tällaisen kulttuurin syntyminen on mielenkiintoinen ilmiö. Pelaajilla on luokitus, joka muuttuu pelitulosten mukaan; häviö pudottaa ja voitto nostaa luokitusta. (Taustallaoleva laskennallinen malli on myös mielenkiintoinen, mutten käsittele sen problematiikkaa tässä kuin hyvin yleisellä tasolla.)

Koska luokitus voi pudota, pelaajilla on "menetettävää". Järjestelmä on yleensä sellainen, että pelaajalla on enemmän menetettävää pelatessaan itseään alemmin luokitettua pelaajaa vastaan. Koska nopein keino hankkia korkeampi luokitus on voittaa korkeammin luokitettuja pelaajia, on kysyntä "ylöspäin" aina väistämättä suurempi kuin kysyntä "alaspäin". Riski menettää pisteitä voidaan ajatella olevan pelin "hinta"¸ joten korkeammin luokitettuja pelaajia vastaan on "halvempi", matalammin luokitettuja "kalliimpi" pelata.

Siksi ei ole yllättävää, että hyvin harva pelaaja suostuu pelaamaan selvästi itseään alemmin luokitettuja vastaan. Erityisen ongelman muodostavat pelaajat, joilla ei ole luokitusta, koska näiden kohdalla riski on erityisen suuri: Pelaajan "todellinen" luokitus voi olla mitä hyvänsä. Tällaisen pelaajan voittamisesta ei saa juuri hyötyä, koska pelaaja jää silloin todennäköisesti alemmin luokitetuksi (usein rajustikin), mutta toisaalta häviäminen on todella huono, koska tällaisen pelaajan luokitus on alkuun heikompi kuin hänen "todellinen" tasonsa.

Pikkuhiljaa pelaajat huomaavat tämän ja lopulta kukaan ei halua pelata luokittamattomien kanssa.

8 kommenttia:

Juha Kettunen kirjoitti...

Tarvitaan jokin muukin porkkana kuin pelkkä luokituksen muutos, jotta myös huonomman luokituksen pelaajan kanssa kannattaisi pelata. Esimerkiksi PC:n Chessmasterissa häviö laskee luokitusta, mutta voittojen karttuessa (myös huonompia AI-pelaajia vastaan) tulee uusia nappulasettejä käyttöön.

Tiedemies kirjoitti...

KGS:n systeemi pitää yllä kyllä tilastoja siitä, pelaako pelaaja heikompiaan vastaan, ja jos suhdeluku on huono, pelaaja saa tästä julkisen merkinnän. Sosiaalinen paine olla saamatta tällaista merkintää estää osan tästä efektistä, muttei kaikkea.

nozick kirjoitti...

Tulevien pelien huomioiminen luokitukssa korjaisi ongelman. Tarkoitan sellaista järjestelmää, jossa kunkin ottelun vaikutus pelaajan luokitukseen riippuisi vastustajan sellaisesta luokituksesta, jossa on huomioitu paitsi laskettavaa ottelu edeltäviä, niin myös seuraavia otteluita. Ottelun lopullinen vaikutus luokitukseen selviäisi siis vasta viiveellä, mikä olisi tällaisen järjestelmän heikkous.

Tiedemies kirjoitti...

Kyllä siinä on tuollainen tulevaisuuden huomioonottaminen ainakin ollut, mutta tulevien pelien vaikutus putoaa aika pian.

Mikko kirjoitti...

Aikoinaan pelasin kössiä jossain seurassa, ja siellä sama ongelma oli ratkaistu muistaakseni niin, että kerran kuussa sai haastaa kenet tahansa, mutta muuten sai haastaa vain pelaajia, jotka olivat samalla tasolla. Tasot oli tehty pyramidin muotoon, ensimmäisellä tasolla 1, toisella 2, jne. Jos haasteesta kieltäytyi, haastaja voitti matsin.

jiriki kirjoitti...

Taustalla oleva ELO-pisteytysjärjestelmä on ihan mielenkiintoinen, itse ylläpidän eräällä tietokonepelille liittyvää "ladderia", jossa kyseistä järjestelmää käytetään.

Kaavahan on K*G*(R-1/(10^(d/w)+1)), jossa K on pistetaso-kerroin, G tuloskerroin, R tulos ja d piste-ero, sekä w paino-arvo.

Kyseissä ranking-systeemissä on juurikin tuo ongelma, eli pistedeflaatio. Pitäisi kyllä ymmärtää matematiikkaa vähän paremmin, että saisi tuohon kaavaan optimi-arvot.

Ongelma on myöskin siinä, että jos w:n laittaa liian pieneksi, alempien joukkeiden ei kannata haastaa kuin riittävällä piste-erolla ylempiä joukkeita, koska esim. tasapelistä ei hyödy paljoa, ja pisteitä menettää rutkasti. Pienemmällä w:n arvolla taasen parempien joukkeiden ei kannata haastaa huonompia joukkeita (tosin sääntöjen mukaan ylempien on hyväksyttävä haaste), koska voitto on marginaalinen verrattuna riskiin hävitä.

Tästä syystä otin käyttöön vakiomääräiset lisäpisteet (jotka eivät vaikuta d:hen) jokaisesta pelatusta pelistä, jos oletetaan että joukkeiden aktiivisuus on samaa luokkaa.

Itseasissa olen tuunannut lähinnä tuota w:tä. En tiedä olisiko parempi idea muuttaa K:ta. Vaikutus on kuitenkin suht sama.

jiriki kirjoitti...

Tässpä juttua.

Hmm. Voisikohan tuota kaavaa muuttaa jotenkin ottamaan huomioon:
- Hajonnan joukkeiden suorituskyvyssä
- Joukkeiden pelaajien (6 kpl per joukkue) yhteenlasketun tason, esim. pelitilastoista
- Peliteoreettiset ongelmat

Olisi myös mielenkiintoista generoida yksilökohtaisia rankingeja pelitilastoista (joissa vastustajien valinta on jopa lähempänä normaalijakaumaa kuin varsinaisessa ladderissa), mutta koska kyseessä on joukkuepeli pitäisi ottaa huomioon
- Omien pelaajien odotettu ja saavutettu tulos
- Vastustajan pelaajien odotettu ja saavutettu tulos
- Aggregoida näitä tuloksia jotenkin (yhteenlasku?)

Sinänsä minulla olisi kyllä miljoonia tavuja informaatiota pelaajien tuloksista, mutta en tiedä miten tuota käyttäisi järkevästi. Ei oikein taidot riitä.

tommi kirjoitti...

Tämän on varmaan joku muukin keksinyt ja siinä on lapsellinen vika, mutta mitä jos pelattaisiin rahasta?

Voitosta saisi aina tietyn rahasumman, jonka häviäjä maksaisi. Nyt kuitenkin niin, että esimerkiksi 2d saisi 200 € ja 15k kaksi euroa.

Kovempia vastaan pelaaminen maksaisi enemmän, joten ansaitsemishaluisten tasokkaiden pelaajien kannattaisi otella heikompia vastaan (riski olisi pieni). Toisaalta jos he taas ikäänkuin myisivät itseään antamalla heikompien voittaa useampia pelejä (koska jäisivät silti omilleen), siitä tietenkin rankaistaisiin tason alennuksella.