Nel campo della matematica, molti problemi sono così difficili dal punto di vista computazionale che le persone non riescono a respirare. Cosa si può fare per superare queste barriere NP-hard? Recentemente, i matematici hanno condotto ricerche approfondite su una tecnologia chiave, ovvero la “tecnologia del rilassamento”. Il nocciolo di questa tecnica è quello di allentare i vincoli sugli interi e trasformare il problema in un problema di programmazione lineare che può essere risolto con un algoritmo tempo-polinomiale.
L'allentamento delle restrizioni sui problemi relativi agli interi migliora notevolmente la risolvibilità del problema e apre nuovi modi per affrontare varie sfide informatiche.
Ad esempio, considera un "problema di copertura del set". In questo problema, dato un insieme di insiemi, dobbiamo selezionarne un sottoinsieme per coprire tutti gli elementi e il numero di insiemi selezionati dovrebbe essere il più piccolo possibile. Questo problema può essere formalizzato come un programma intero 0-1, in cui ciascuna variabile rappresenta se l'insieme è selezionato. Allentando i vincoli e cambiando la scelta delle variabili da 0 e 1 a numeri reali compresi tra 0 e 1, possiamo risolvere il problema più facilmente.
La tecnologia di rilassamento semplifica il complesso problema di ottimizzazione originale, risolve le difficoltà computazionali intrinseche e consente l'emergere della soluzione.
Quando risolviamo questo tipo di programma lineare rilassato, a volte la soluzione che otteniamo è un numero intero, il che significa che risolviamo anche il problema originale con i numeri interi. Sebbene questa situazione sia rara, è comunque garantito che la soluzione rilassata sia buona almeno quanto la soluzione intera e possa fornirci preziose informazioni sul problema originale.
In un esempio specifico, supponiamo che ci siano tre insiemi F = {{a, b}, {b, c}, {a, c}}. Il corrispondente programma intero 0-1 per la copertura dell'insieme minimo progettato per questi insiemi richiederebbe la minimizzazione del numero di variabili indicatore. Questo esempio mostra l'importanza del rilassamento lineare nel processo di soluzione, perché attraverso diverse soluzioni, non solo possiamo trovare il limite inferiore della soluzione intera, ma anche fornire un'aspettativa di soluzione più accurata.
Ogni volta che eseguiamo un'operazione di rilassamento, stiamo gettando le basi per la soluzione successiva e avvicinandoci gradualmente alla vera soluzione ottimale.
Per quanto riguarda la qualità della soluzione, le tecniche di rilassamento forniscono preziosi limiti superiori e inferiori sulle soluzioni dei programmi interi. Solitamente esaminiamo il "gap intero", che è una misura del divario tra la soluzione intera originale e il suo rilassamento. Se il divario è minore, siamo più sicuri che la soluzione al problema originale venga catturata accuratamente.
Oltre a costituire la base per gli algoritmi di approssimazione, questa tecnica viene utilizzata anche in metodi branch-and-bound più complessi. Quando viene trovata una soluzione non intera, l'algoritmo suddivide il problema in sottoproblemi più piccoli per effettuare la ricerca in un ambito più ristretto.
Un tale metodo branch-and-bound ci dà la speranza di trovare soluzioni intere vicine alla soluzione ottimale e può ancora mostrare il suo coraggio anche di fronte a problemi NP-difficili.
Inoltre, anche il "metodo del piano di taglio" è una tecnica potente che ci aiuta a trovare soluzioni intere più accurate trovando piani di taglio per escludere soluzioni esterne allo scafo convesso della soluzione rilassata. Ciò dimostra anche che l’uso di questi metodi non è limitato a problemi specifici e che le stesse idee possono essere ampiamente applicate a una varietà di sfide informatiche.
Combinando queste tecniche, i matematici si stanno dimostrando molto promettenti nella risoluzione di problemi NP-difficili. Attraverso una combinazione di tecniche di rilassamento, ramificazione e delimitazione e altri metodi, siamo un passo avanti verso la risoluzione di problemi che una volta erano considerati insormontabili. Ma questi metodi forniscono spesso soluzioni ideali?