6

Evoluzione a doppio livello e meccanismi adattivi

AI999第5课:方法演化:从优化解到优化算法本身
00:00

Evoluzione a doppio livelloDisaccoppia la «risoluzione di compiti specifici» e il «miglioramento dei metodi risolutivi» in due cicli evolutivi che interagiscono tra loro:Livello internoorientato alla risoluzione dei compiti e alla generazione di prestazioni operative,Livello esternoevolve la configurazione e le strategie dell'algoritmo interno in base a tali prestazioni, dando così origine a un meccanismo di miglioramento algoritmico adattivo. Non si tratta di una semplice concatenazione di due algoritmi, bensì dell'aggiunta di un controllo meta-livello evolvibile al di sopra del livello di risoluzione dei compiti, il che sposta il sistema dalla «configurazione manuale dell'algoritmo» all'«adattamento automatico dell'algoritmo al compito».

Evoluzione a doppio livello: anello di retroazione tra risoluzione dei compiti ed evoluzione dei metodiLivello interno: livello di risoluzione dei compitiEsecuzione parallela di numerosi compiti specifici, con produzione di soluzioni candidate e prestazioni operativeCompito T1Compito T2Compito T3Compito TnOutput: soluzioni candidate · valore obiettivo f · prestazioni operativeTempo di risorsa · passi di convergenza · tasso di successoCome base di valutazione della fitness del livello esternoEsecuzione in batch tensorizzataMutazione, valutazione e aggiornamento dello stato entrano nel grafo computazionaleCompito del livello interno: risolvere il problemaEmette soluzioni e prestazioni operative, per la valutazione del livello esternoLivello esterno: livello di evoluzione dei metodiNon risolve direttamente il compito originale, ma evolve la configurazione e le strategie del livello internoMeccanismo adattivo: adegua continuamente le strategie del livello interno al variare dei compiti e dell'ambienteMigliorare l'evoluzione con l'evoluzioneValutazioneSelezioneMutazioneAggiornamentoCompito del livello esterno: migliorare il metodo di risoluzioneAdattività: adegua continuamente le strategie del livello interno al variare dei compiti e dell'ambientePrestazioni operative del livello internoAggregate in segnale di fitnessAggiornamento inversoConfigurazione e strategie del livello internoParallelismo GPU: esecuzione in batch dei compiti del livello interno, per fornire al livello esterno un feedback statistico più ricco e ridurre i costi di attesa della ricercaObiettivo di apprendimento: comprendere la collaborazione tra la risoluzione del livello interno e l'ottimizzazione delle strategie del livello esterno

Divisione dei compiti tra livello interno e livello esterno

  • Compito del livello interno: risolve i compiti reali, generando soluzioni candidate, valori obiettivo e dati sulle prestazioni operative. Si occupa di «risolvere il problema».
  • Compito del livello esterno: non risolve direttamente il compito originale, ma evolve la configurazione, le strategie e i parametri dell'algoritmo interno. Si occupa di «migliorare il metodo di risoluzione».
  • Anello di retroazione: i risultati di valutazione dei compiti del livello interno vengono aggregati in un segnale di fitness per il livello esterno, utilizzato per selezionare, mutare e aggiornare configurazioni interne migliori.
  • Meccanismo adattivo: il livello esterno adegua continuamente le strategie del livello interno in base ai cambiamenti dei compiti e dell'ambiente.
  • Supporto al parallelismo: la GPU può eseguire in parallelo numerosi compiti del livello interno, fornendo all'evoluzione del livello esterno un feedback statistico più ricco e riducendo i costi di attesa della ricerca.

MetaDE: migliorare l'evoluzione con l'evoluzione

Prendendo MetaDE come esempio, il DE interno si occupa dei compiti di ottimizzazione specifici, mentre l'algoritmo evolutivo esterno seleziona e regola la configurazione e le strategie del DE in base alle prestazioni operative del livello interno; i risultati di numerosi compiti interni guidano a ritroso la selezione della configurazione esterna, formando un doppio anello chiuso che «migliora l'evoluzione con l'evoluzione».

Distinzione chiave
Il livello interno produce «soluzioni», il livello esterno produce «metodi migliori per generare soluzioni». La fitness del livello esterno non è il valore ottimo del compito originale in sé, bensì la valutazione delle prestazioni di una configurazione interna su compiti in batch.

Obiettivi di apprendimento

Padroneggiare la relazione di collaborazione tra la risoluzione dei compiti del livello interno e l'ottimizzazione delle strategie del livello esterno, comprendere che l'evoluzione dei metodi consiste nell'aggiungere un controllo meta-livello evolvibile al di sopra del livello interno, e saper spiegare come il parallelismo GPU fornisca al livello esterno un feedback statistico più affidabile.