Nuovo TAS usa algoritmo genetico in Paper Mario: Il Portale Millenario per volare con l'aeroplanino

Vi svegliate mai pensando "oggi voglio scoprire come hanno usato un algoritmo genetico per pilotare l'aeroplanino di carta il più velocemente possibile in Paper Mario: Il Portale Millenario"? Se è uno di quei giorni, guardate un po', abbiamo proprio il video che fa per voi.

L'ultimo video di Malleo, TASer di Paper Mario: Il Portale Millenario per GameCube, presenta un problema interessante. Mario Cartaplano è un'abilità che permette di volare sopra dei burroni. Il giocatore può controllare l'aeroplanino inclinando lo stick in avanti per accumulare velocità, oppure all'indietro per accumulare altezza.

All'atto pratico è estremamente semplice, ma in teoria c'è molto spazio per perfezionare un movimento simile: prima di tutto, visto che stiamo parlando di uno stick analogico e non di pulsanti digitali, è possibile inclinare lo stick parzialmente per guadagnare piccole quantità di velocità o di altezza. In secondo luogo, è possibile effettuare questi input in qualsiasi momento durante il volo. Quale sarà, quindi, la sequenza di input perfetta per arrivare dall'altro lato nel minor tempo possibile?

Ecco che entra in gioco l'algoritmo genetico. Nel video, mmtrebuchet spiega in maniera estremamente chiara come funziona: immaginate di avere una certa quantità di tentativi (detti "cromosomi" in italiano). Il primo passo è quello di dare una valutazione (detta "fitness") a ciascun tentativo per capire se il risultato è più o meno soddisfacente. Così è possibile eliminare i tentativi peggiori e conservare i migliori (il nome dell'algoritmo deriva da questo processo di selezione naturale). A questo punto si creano delle nuove generazioni che ereditano le caratteristiche migliori delle precedenti, e si va avanti finché non si ottiene il risultato migliore possibile. La mia spiegazione è una versione estremamente condensata di quella che a sua volta è la spiegazione semplificata proposta nel video, quindi vi invito a guardarlo per scoprire tutto il processo spiegato direttamente da chi ne sa più di me. È in inglese, ha i sottotitoli:

Durante gli esperimenti, hanno persino scovato un bug che permette di accumulare più altezza del normale. È stato sufficiente programmare l'algoritmo per premiare la maggior altezza possibile piuttosto che il minor tempo possibile: così, dopo diverse generazioni, l'algoritmo ha trovato la sequenza di input che risulta nell'altezza ottimale. Questo dimostra come gli algoritmi genetici possono essere applicati anche in campi diversi, per esempio per trovare i casi limite di una certa meccanica in un videogioco e per trovare bug.

L'esempio fatto nel video è quello dell'applicazione degli algoritmi genetici nell'economia per ottimizzare il prezzo di un prodotto. Se in questi giorni non capite perché l'espansione di Nintendo Switch Online costa tanto, probabilmente Nintendo ha usato un metodo simile per determinare che con quel prezzo avrebbe ottenuto il maggior profitto possibile (prezzo più basso = più persone comprano, prezzo più alto = più profitto per ciascuna persona, un dilemma molto simile a quello della distanza e dell'altezza dell'aeroplanino).

Continuate a seguirci per le prossime notizie su Paper Mario, anche se nessuna sarà più affascinante di questa.

Commenti
Segui
Notificami
Feedback inline
Vedi tutti i commenti