Informazioni di base
Sto costruendo un programma che giochi a dama il meglio possibile. Gioca già piuttosto bene, ma l'obiettivo è migliorarlo ancora di più.
Questo può essere fatto aggiungendo nuovi metodi per valutare quanto "buono" sia un determinato stato della scheda. Ho già implementato questi metodi, ma ognuno dei metodi ha un parametro con il quale può essere moltiplicato.
Ho già implementato il fatto che posso permettere al programma di giocare contro se stesso e l'esito del gioco è un numero che è positivo se il giocatore vince (o gioca un pareggio con un vantaggio in pezzi), un numero negativo se il il giocatore perde (o gioca un pareggio con un vantaggio in pezzi) o 0 se disegna e i pezzi sono uguali.
Domanda
Ho 3 parametri che possono variare da 0 a 1. Devo trovare una combinazione di questi 3 parametri che devono essere quanti più numeri possibile dopo la virgola e devono essere calcolati il più velocemente possibile.
Posso lasciare giocare 2 diversi set di parametri con un risultato positivo se il primo set di parametri ha un vantaggio (maggiore è il numero positivo, maggiore è il vantaggio), negativo se il secondo set di parametri ha un vantaggio e 0 se hanno entrambi lo stesso tipo di vantaggio.
E.g .: (0.232, 1, 0.62) contro (0.12345, 0.71, 0) può emettere 1.32987, il che significa che il primo set di parametri ha un vantaggio. Tieni conto che richiede circa 2 minuti per ottenere un risultato di 2 set che giocano uno contro l'altro!
Mi piacerebbe conoscere un algoritmo / letteratura / parole chiave / esempi di come posso trovare un insieme il più preciso possibile di numeri che vince contro tutti gli altri gruppi di numeri?
Statistiche
Ho già eseguito alcuni test e ho scoperto che probabilmente (non sono sicuro) per ciascun parametro l'effetto sarà che i risultati miglioreranno fino a che non raggiungeranno un picco e che vadano a mancare ancora una volta.