Sto scrivendo un programma genetico che ho bisogno di un consiglio per le operazioni di crossover. Il GP sta tentando di trovare la soluzione migliore per una matrice con vincoli di riga rigida e vincoli di colonna più deboli.
Per una data soluzione nella popolazione, le righe contengono una combinazione casuale di id del tipo di oggetto da un set fisso. Il GP sta cercando di trovare una soluzione in cui, dopo che le righe sono disposte, se si calcolano gli ID in ogni colonna, il numero di ciascun tipo deve rientrare nell'intervallo consigliato per quell'id. Ho scritto una funzione di fitness che mi consente di valutare la soluzione sulla vicinanza dei vincoli delle colonne: il 100% di tutte le colonne rientra nelle specifiche.
Poiché la forma fisica è legata alle colonne, sembra logico che l'operazione di crossover debba catturare colonne di due genitori per creare una progenie candidata. Un crossover multipunto dovrebbe essere un modo migliore per andare? La mia preoccupazione è che un'operazione di crossover, quasi certamente, spezzerà i contrafforti di fila.
Grazie per qualsiasi consiglio.