Sto creando uno script per ottimizzare le sequenze di sostanze chimiche nominali riducendo al minimo il croppage (misurato in piedi). Le "chimiche" sono indicate da codici (es: 1234AB, 5665SG) che contengono quattro numeri e due lettere.
Quello che voglio fare è esaminare tutte le possibili combinazioni di codici N per la lunghezza della sequenza data, scegliendo ogni codice una volta e riducendo al minimo il ritaglio risultante tra i codici. In sostanza, se ho N codici in una data sequenza, ci saranno N-1 ritagli (ritaglio tra ogni coppia di codici, ma non nella parte anteriore o posteriore della sequenza). Il mio set di dati di esempio è per una sequenza di 8 codici. Voglio conoscere l'ordine (su tutte le 8! combinazioni di codici) che mi darà la quantità minima di ritaglio totale.
Il mio script corrente estrae i codici applicabili per la sequenza corrente da una tabella di ricerca che contiene tutte le possibili combinazioni (coppie) di codici esistenti e le rispettive quantità di ritaglio. La tabella dati risultante è allegata per una sequenza di esempio con 8 codici.
Fondamentalmente voglio minimizzare la somma di tutti i "(Sum_Crops)" che esisterebbero tra ogni codice per ogni permutazione degli 8 codici.
"Codice_1 (Somma_raccolto_1_2) Codice_2 (Somma_raccolto_2_3) Codice_3 (Somma_raccolto_3_4) Codice_4 (Somma_raccolto_4_5) Codice_5 (Somma_raccolto_5_6) Codice_6 (Somma_raccolto_6_7) Codice_7 (Somma_raccolto_7_8) Codice_8"
Qualche idea su come procedere?