Classifica i giocatori in base al processo decisionale durante una partita

3

Come potrei fare un sistema di classificazione per i giocatori che giocano? Fondamentalmente, guardando i videogiochi, i giocatori di tutto il gioco prendono decisioni critiche che alla fine influenzano il risultato finale del gioco.

C'è un modo o come dovrei fare un modo per tradurre alcuni di questi fattori (livellando determinate abilità, acquistando determinati oggetti, ecc.) in qualcosa di simile a una curva che può essere tracciata su un grafico?

Questo gioco che vorrei implementare è League of Legends.

Esempio: il giocatore è di livello 1 all'inizio. Ottiene un kill molto presto nel gioco (ottiene oro a causa dell'uccisione e aumenta la sua "curva di potenza"), e acquista danno da attacco (gli dà più danni che aumentano anche la sua "curva di potenza". ucciso (Giocatore 2), acquista armatura (danno attacco contatori), aumenta leggermente la curva di potenza del giocatore 2 e riduce la curva di potenza del giocatore 1.

Ci sono molti fattori che vorrei prendere in considerazione. Questi fattori relativi (esempio: BECAUSE Player 2 ha costruito un'armatura, e io sono principalmente un danno da attacco, diminuisce la mia curva di potenza PROPRIA) sembra il più difficile da implementare.

La mia domanda è questa: c'è un modo per affrontare questo compito? Ci sono concetti teorici simili dietro ai sistemi di classificazione su cui dovrei leggere (forse nella teoria dei giochi o nel data mining)? Ho visto il sistema ELO, ma non sembra quello che voglio dal momento che prende semplicemente in considerazione le vittorie e le perdite.

    
posta tabchas 24.08.2014 - 11:36
fonte

2 risposte

3

L'approccio di base è:

  1. Identifica tutti i fattori.
  2. Assegna un peso a ciascun fattore.
  3. Se il fattore stesso ha una scala, assegna una formula di ridimensionamento (es. lineare, log, capped, qualunque) basata su pesi aggiuntivi.
  4. Se ci sono delle dipendenze, esprimili come una formula basata su pesi aggiuntivi.
  5. Aggiungi tutti i valori risultanti.

Il problema ora è che hai una formula complicata con un sacco di pesi e devi solo trovare i valori corretti per tutti quei pesi. Semplicemente per dire, molto difficile da fare.

Ci sono molti approcci per ottimizzare i pesi: programmazione lineare, algoritmi genetici, reti neurali, analisi bayesiana, intuito, ecc. Dipendono tutti dalla capacità di misurare la bontà del risultato finale, e quella era una cosa che era mancante dalla tua domanda.

Sai davvero quale risultato finale ti aspetti di ottenere? Sai quali sono i punteggi o le classifiche finali che i tuoi giocatori dovrebbero raggiungere? Disponi di dati di allenamento e metriche comparative per guidare i tuoi algoritmi? Quando sai come misurare il successo, saprai come arrivarci.

    
risposta data 25.08.2014 - 03:36
fonte
1

Dovrei pensare che un approccio di data mining possa funzionare, probabilmente con una rete neurale per mappare gli input (azioni dell'utente) sugli output (game win / loose). Registra molti giochi e usali per allenare la rete neurale. In fase di esecuzione lascia che questa rete "addestrata" decida cosa è importante e produca una misura numerica, che grafichi.

    
risposta data 25.08.2014 - 01:25
fonte