New Algorithm for Combinatorial $n$-folds and Applications
Jansen, Kahler, Pirotton et al.
Block-structured integer linear programs (ILPs) play an important role in various application fields. We address $n$-fold ILPs where the matrix $\mathcal{A}$ has a specific structure, i.e., where the blocks in the lower part of $\mathcal{A}$ consist only of the row vectors $(1,\dots,1)$.
In this paper, we propose an approach tailored to exactly these combinatorial $n$-folds. We utilize a divide and conquer approach to separate the original problem such that the right-hand side iteratively decreases in size. We show that this decrease in size can be calculated such that we only need to consider a bounded amount of possible right-hand sides. This, in turn, lets us efficiently combine solutions of the smaller right-hand sides to solve the original problem. We can decide the feasibility of, and also optimally solve, such problems in time $(n r Î)^{O(r)} \log(\|b\|_\infty),$ where $n$ is the number of blocks, $r$ the number of rows in the upper blocks and $Î=\|A\|_\infty$.
We complement the algorithm by discussing applications of the $n$-fold ILPs with the specific structure we require. We consider the problems of (i) scheduling on uniform machines, (ii) closest string and (iii) (graph) imbalance.
Regarding (i), our algorithm results in running times of $p_{\max}^{O(d)}|I|^{O(1)},$ matching a lower bound derived via ETH.
For (ii) we achieve running times matching the current state-of-the-art in the general case. In contrast to the state-of-the-art, our result can leverage a bounded number of column-types to yield an improved running time.
For (iii), we improve the parameter dependency on the size of the vertex cover.
academic
Nuovo Algoritmo per n-fold Combinatoriali e Applicazioni
Questo articolo studia problemi di programmazione lineare intera (ILP) combinatoriale n-fold con struttura speciale, dove la parte inferiore della matrice A è composta esclusivamente da vettori (1,…,1). Gli autori propongono un approccio divide-et-impera che decompone il problema originale riducendo iterativamente la dimensione del vettore del termine noto. L'algoritmo determina la fattibilità e risolve il problema ottimale in tempo (nrΔ)O(r)log(∥b∥∞), dove n è il numero di blocchi, r è il numero di righe del blocco superiore, e Δ=∥A∥∞. L'articolo dimostra l'efficacia dell'algoritmo in tre importanti applicazioni: (1) scheduling su macchine uniformi, (2) problema della stringa più vicina, (3) problema dello sbilanciamento di grafi.
La programmazione lineare intera è uno dei problemi NP-difficili fondamentali dell'informatica, incluso da Karp tra i 21 problemi NP-completi classici. Sebbene il problema generale dell'ILP sia computazionalmente impegnativo, sottoclassi di ILP con struttura speciale ammettono algoritmi di risoluzione più efficienti.
Per l'ILP n-fold, la migliore complessità temporale attuale è (nt)(1+o(1))⋅2O(rs2)(rsΔ)O(r2s+s2). Per l'ILP n-fold combinatoriale (cioè il caso s=1), la dipendenza parametrica degli algoritmi esistenti è (rΔ)O(r2).
Gli autori osservano che è possibile sfruttare la struttura speciale dell'ILP n-fold combinatoriale (il blocco inferiore contiene solo vettori di uni) per progettare algoritmi più efficienti. Attraverso una strategia divide-et-impera e programmazione dinamica, è possibile migliorare la dipendenza parametrica da O(r2) a O(r).
Progettazione di Nuovo Algoritmo: Propone un algoritmo divide-et-impera specializzato per l'ILP n-fold combinatoriale con complessità temporale (nrΔ)O(r)log(bdef)
Miglioramento Teorico: Migliora la dipendenza parametrica da (rΔ)O(r2) a (nrΔ)O(r)
Verifica Applicativa: Valida l'algoritmo su tre problemi importanti:
Scheduling su macchine uniformi: raggiunge pmaxO(d)∣I∣O(1), corrispondente al limite inferiore ETH
Problema della stringa più vicina: migliora il caso con tipi di colonna limitati
Problema dello sbilanciamento di grafi: migliora la dipendenza parametrica della copertura di vertici
Innovazione Tecnica: Introduce nuova analisi della struttura delle soluzioni e metodi combinatoriali
Limiti di Supporto: Utilizzando il teorema di Eisenbrand-Shmonin, la dimensione del supporto di ogni blocco è limitata: ∣supp(xk)∣≤K=2(r+1)log(4(r+1)Δ)
Determinismo del Termine Noto Inferiore: Il vettore del termine noto inferiore di ogni iterazione è univocamente determinato dalla formula (3)
Limitatezza del Termine Noto Superiore: Il termine noto superiore dei sottoproblemi piccoli è limitato da D=nKΔ
Strategia di Riduzione Iterativa: Attraverso il calcolo preciso della riduzione del termine noto in ogni iterazione, garantisce la convergenza dell'algoritmo
Gestione della Parità: Gestisce abilmente i vincoli di parità del vettore soluzione, assicurando che i sottoproblemi possano essere divisi equamente
Conversione di Coefficienti Negativi: Converte in tempo lineare i problemi con coefficienti negativi in problemi non negativi
Estensione dell'Obiettivo di Ottimizzazione: Estende dal giudizio di fattibilità al problema di ottimizzazione
Teoria fondamentale della programmazione intera 22, 23, 37, 13
Valutazione Complessiva: Questo è un articolo di alta qualità di informatica teorica che raggiunge importanti progressi nella progettazione di algoritmi per l'ILP n-fold combinatoriale. Sebbene l'ambito di applicabilità sia relativamente specifico, dimostra eccellenza sia nella profondità dell'analisi teorica che nell'ampiezza delle applicazioni, fornendo una base solida per la ricerca successiva nel campo correlato.