7

Implementazione dell'evoluzione di un metodo tipico: l'architettura MetaDE

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

L'evoluzione differenziale (DE) tradizionale affida al ricercatore la definizione preliminare della strategia di mutazione e dei parametri di controllo chiave, che restano invariati per tutta la ricerca. Il cambiamento centrale di MetaDE è:trattare la configurazione stessa dell'algoritmo come oggetto di evoluzione—l'evoluzione esterna esplora lo spazio degli algoritmi, mentre la valutazione interna misura le prestazioni nello spazio delle soluzioni, trasformando il «come evolvere» da impostazione manuale a ricerca adattiva.

Struttura evolutiva a due livelli di MetaDEMigliorare un algoritmo evolutivo con un algoritmo evolutivoLivello evolutivo esterno · spazio degli algoritmiOggetto di ottimizzazione: configurazione dell'algoritmo1Strategia di mutazione: rand/1Crossover binomialeF=0.5CR=0.92Strategia di mutazione: best/1Crossover esponenzialeF=0.8CR=0.43Strategia di mutazione: current-to-best/1Crossover binomialeF=0.3CR=0.7Operazioni evolutive esterne: selezione · crossover · mutazione · eliminazione → generazione della configurazione successivaLe differenze tra gli individui corrispondono alle diverse tendenze comportamentali della stessa famiglia di algoritmi al variare delle caratteristiche del problemaInvio delle configurazioni candidate→ attività originaleRestituzione delle prestazioni reali→ fitness esternaCiclo di verifica chiusoGenerazione della configurazione → verifica sull'attività → selezione basata sul feedbackLa fitness può derivare solo dai risultati di esecuzioni realiLivello interno dell'attività · spazio delle soluzioniOggetto di ottimizzazione: soluzione del problemaAttività di ottimizzazione originaleIstanza del problema assegnataEsecuzioni indipendenti multiple della stessa configurazioneRipetuta 10 volteStatistiche di fitness realeLa media viene assunta come fitness dell'individuo esternoCanale di verifica: ogni configurazione candidata deve essere realmente eseguita una volta sull'attività originaleIl livello esterno ottimizza la configurazione dell'algoritmo, quello interno ottimizza la soluzione del problema; i due livelli sono collegati dal canale di verifica dell'«esecuzione reale»

Struttura a due livelli: il livello esterno cerca l'algoritmo, quello interno risolve il problema

  • Livello interno: il normale processo di risoluzione dell'evoluzione differenziale sull'attività di ottimizzazione originale, che fornisce le prestazioni reali dell'attività.
  • Livello esterno: considera una configurazione dell'algoritmo DE come un individuo ed esegue selezione, crossover, mutazione ed eliminazione nello spazio delle configurazioni.

Le responsabilità dei due livelli non devono essere confuse: l'oggetto di ottimizzazione del livello esterno èla configurazione dell'algoritmo, mentre l'oggetto di ottimizzazione del livello interno èla soluzione del problema. Il primo determina «come cercare», il secondo determina «quanto bene si cerca».

Che cosa evolve il livello esterno

Un individuo esterno non codifica qualche numero, ma un intero insieme di comportamenti dell'algoritmo: la strategia di mutazione (rand/1, best/1, current-to-best/1, ecc.), il tipo di crossover (binomiale, esponenziale) e i parametri di controllo come il fattore di scala F, la probabilità di crossover CR e la dimensione della popolazione. Le differenze tra gli individui corrispondono proprio alle diverse tendenze comportamentali della stessa famiglia di algoritmi al variare delle caratteristiche del problema.

Ciclo di verifica chiuso: le configurazioni candidate devono essere realmente eseguite una volta

Ogni configurazione candidata non può essere accettata o scartata solo in base a meta-indicatori o a giudizi a priori: deve essere inviata all'attività originale ed eseguita realmente, sottoponendosi alla verifica delle prestazioni effettive; il livello esterno, sulla base della fitness restituita dal livello interno, esegue poi selezione, eliminazione e conservazione, decidendo quali configurazioni vengono ereditate e propagate. Si forma così un ciclo iterativo chiuso di «generazione della configurazione → verifica sull'attività → selezione basata sul feedback», in cui la fitness esterna può derivare solo dai risultati di esecuzioni reali del livello interno.

Differenze rispetto al DE a parametri fissi

Nel DE tradizionale strategia e parametri sono stabiliti in anticipo dal ricercatore e rimangono fissi per tutta la durata; MetaDE affida questa decisione all'evoluzione esterna, conferendo all'algoritmo la capacità di adattarsi alle caratteristiche del problema—ad esempio preferendo, nelle fasi iniziali della ricerca, rand/1, più esplorativo, con F più grande, e passando nelle fasi successive a best/1, più rapido nella convergenza, con F più piccolo.

Costi e prerequisiti

Ogni configurazione candidata deve eseguire completamente una volta l'attività del livello interno (di solito sono inoltre necessarie più esecuzioni indipendenti di cui si prende la media per contenere la casualità), e il costo di valutazione si moltiplica in proporzione alla dimensione della popolazione esterna e al numero di generazioni. MetaDE dipende quindi fortemente da fondamenta ingegneristiche come parallelizzazione, tensorizzazione e scheduling del runtime—è proprio questa la ragione ingegneristica per cui deve basarsi su un Runtime tensorizzato.

Esempio minimo funzionante
Prendiamo come esempio un insieme di attività di ottimizzazione continua: un individuo della popolazione esterna è codificato come «rand/1 + crossover binomiale + F=0.5, CR=0.9»; questa configurazione viene inviata all'attività del livello interno, eseguita più volte in modo indipendente, e la fitness media viene assunta come fitness dell'individuo esterno; sulla base di essa il livello esterno seleziona, muta e conserva le configurazioni migliori, formando un ciclo iterativo chiuso di «generazione della configurazione—verifica sull'attività—selezione basata sul feedback». Questo passo è la forma minima funzionante di «migliorare un algoritmo evolutivo con un algoritmo evolutivo».

Inquadramento: MetaDE è la concreta realizzazione del «meccanismo di evoluzione e adattamento a doppio livello interno ed esterno», che passa dall'idea a un'architettura implementabile, e offre un paradigma metodologico anche alle successive evoluzioni della struttura algoritmica (AutoPSO, EvoGO).