5

MetaDE: migliorare gli algoritmi evolutivi con gli algoritmi evolutivi

AI999第7课:AI Native 科研范式与 EvoX 实战切入
00:00

Il flusso di ottimizzazione classico concentra tutta l'attenzione sullo spazio delle soluzioni: si fissa una configurazione di evoluzione differenziale (DE) — strategia di mutazione, tasso di crossover CR, fattore di scala F, dimensione della popolazione NP — e poi si itera ripetutamente per avvicinarsi alla soluzione ottimale del problema. Ma una domanda resta sempre irrisolta:chi ha scelto questa configurazione?La risposta di MetaDE è trattare anche il «metodo che genera le soluzioni candidate» come oggetto dell'evoluzione: uno strato esterno di algoritmo evolutivo cerca configurazioni algoritmiche migliori, formando così un ciclo di ottimizzazione a due livelli in cui «un algoritmo evolutivo migliora un algoritmo evolutivo».

MetaDE: migliorare gli algoritmi evolutivi con gli algoritmi evolutiviOggetto dell'evoluzione: la configurazione dell'algoritmo stessaLivello esterno: ricerca della configurazione dell'algoritmo evolutivo (livello meta)Ruolo: codificare la configurazione → valutare la fitness → generare la generazione successivaIndividuo₁: strategia di mutazioneDE/rand/1Individuo₂: tasso di crossoverCR = 0.7Individuo₃: dimensione della popolazioneNP = 60Individuo₄: fattore di scalaF = 0.5Aggiornamento esterno: selezione · ricombinazione · mutazione → generazione della configurazione successivaInvio della configurazioneRestituzione delle prestazioniI due livelli condividono lo stesso segnale di fitnessPrestazioni sul taskLivello interno: esecuzione parallela dell'evoluzione differenziale su task realiRuolo: ricevere la configurazione → risoluzione completa → restituzione delle prestazioniTask₁: risoluzione DE completaFitness f₁ = 0.91Task₂: risoluzione DE completaFitness f₂ = 0.87Task₃: risoluzione DE completaFitness f₃ = 0.94Parallelismo GPU: valutare più configurazioni contemporaneamente per accorciare il ciclo di valutazione della meta-ottimizzazione

Livello interno e livello esterno: come si dividono i compiti

  • Livello interno: riceve un insieme specifico di configurazioni DE, esegue una risoluzione completa su un task reale, produce soluzioni candidate e restituisce una valutazione di prestazioni confrontabile.
  • Livello esterno: codifica configurazioni, iperparametri o combinazioni di strategie DE come individui, usa le prestazioni sul task come fitness e aggiorna la configurazione della generazione successiva con un algoritmo evolutivo (selezione, ricombinazione, mutazione).

Spostamento dell'obiettivo: da «trovare la soluzione» a «trovare il metodo che sa trovare le soluzioni»

MetaDE non cambia l'implementazione dell'ottimizzatore, ma il livello dell'obiettivo di ottimizzazione. L'output di un DE tradizionale è un vettore soluzione; l'output di MetaDE è una configurazione algoritmica in grado di produrre stabilmente soluzioni migliori su questa classe di task. In altre parole, l'oggetto della ricerca sale dalla «risposta» alla «macchina che produce risposte». Ciò consente di trasferire e riutilizzare il risultato di una ricerca esterna su altre istanze della stessa famiglia.

Ciclo di feedback e prerequisiti ingegneristici

L'intero sistema è tenuto insieme da un unico ciclo: il livello esterno invia la configurazione → il livello interno esegue la risoluzione → le prestazioni vengono restituite → il livello esterno aggiorna di conseguenza la configurazione della generazione successiva. È importante notare che un individuo del livello esterno, per ottenere la propria fitness, deve pagare il costo di una (spesso più, in parallelo) esecuzione interna completa; quindi la gestione dei costi di valutazione e la pianificazione parallela sono il cuore della progettazione del sistema. È proprio la capacità della GPU di far girare contemporaneamente un gran numero di task interni a rendere ingegneristicamente fattibile questa meta-ottimizzazione «costosa in fase di valutazione».

Cogli l'essenza in una frase
Il livello interno si occupa di «che cosa si calcola», quello esterno di «come calcolare meglio». I due livelli condividono un unico segnale di fitness — le prestazioni sul task — ed è proprio questo che permette loro di formare un ciclo chiuso.