Trasformareun problema reale in un processo di esplorazione EvoXsignifica che, prima di scrivere qualsiasi configurazione algoritmica, una richiesta ingegneristica o scientifica ancora vaga va riformulata come una definizione di problema evolutivo «campionabile, valutabile, conservabile e verificabile in modo iterativo». La trasformazione avviene prima della scelta dell'algoritmo: determina il limite superiore dello spazio di esplorazione e la correttezza della direzione di ottimizzazione. Per quanto potente, un algoritmo non può recuperare la risposta corretta da un problema definito male.
Prima la trasformazione del problema, poi la scelta dell'algoritmo
Di fronte a un compito reale, la prima reazione è spesso «quale operatore, quale strategia usare». Ma EvoX porta avanti una pipeline di esplorazione: deve sapere in quale spazio campionare, con quali criteri valutare i candidati e quali risultati conservare per il proseguimento. Queste informazioni possono venire solo dal problema stesso, perciò la trasformazione precede naturalmente la scelta dell'algoritmo. La stessa frase «rendere questo progetto migliore», cambiando i confini delle variabili o i criteri di valutazione, porta a conclusioni completamente diverse.
Definire «cosa può cambiare»
Tradurre la richiesta reale in variabili decisionali: stabilire la forma di rappresentazione, la dimensionalità e i confini, distinguendo tra parametri continui, strutture discrete e persino oggetti a livello di programma. Se i confini sono troppo stretti, la soluzione ottimale non è affatto nello spazio di ricerca; se sono troppo ampi, il budget di campionamento viene consumato da vaste aree inutili. L'unico criterio di accettazione di questo passo è: variabili campionabili.
Definire «come valutare i cambiamenti»
Scomporre l'obiettivo vago in funzioni obiettivo e vincoli calcolabili: chiarire quali indicatori massimizzare, quali sono vincoli rigidi e come bilanciare più obiettivi; quando il feedback è scarso o una singola valutazione richiede simulazioni costose, introdurre modelli surrogati al posto dei calcoli ad alto costo. Criterio di accettazione: obiettivo calcolabile e risultati stabili e riproducibili a parità di input.
Istituire il meccanismo di conservazione e selezione
Definire come i candidati vengono conservati, confrontati e portati avanti. Solo con un meccanismo di conservazione il processo evolutivo possiede memoria, direzione e diversità, invece di essere una serie di tentativi ed errori isolati e irripetibili. Criterio di accettazione: candidati ereditabili.
Rendere ogni passo verificabile
Il risultato della trasformazione deve essere riproducibile, misurabile e verificabile in modo iterativo, così che ogni passo possa rispondere alla domanda «questo cambiamento è davvero migliore?». Le due tipologie di distorsione più facilmente amplificabili si verificano proprio nella fase di trasformazione: l'omissione di variabili porta a fraintendere lo spazio delle soluzioni, la distorsione della valutazione fa deviare l'intera ottimizzazione. Nessuna delle due può essere compensata da operatori successivi o da più iterazioni.
