Considera il problema in cui ci viene fornito come input un grafico aciclico diretto , una funzione di etichettatura da a qualche set con un ordine totale (ad esempio, i numeri interi) e dove ci viene chiesto per calcolare la specie topologica lessicograficamente più piccola di in termini di . Più precisamente, una specie topologica di è un'enumerazione di come , tale che per tutti , ogni volta che c'è un percorso da a in , allora dobbiamo avere . L' etichetta di tale ordinamento topologico è la sequenza di elementi di ottenuti come . L'ordine lessicografico su tali sequenze (che tutti hanno lunghezza ) viene definito come sse esiste qualche posizione tale che e per tutti . Fai attenzione al fatto che ogni etichetta in può essere assegnata a più vertici in (altrimenti il problema è banale).
Questo problema può essere affermato in una variante di calcolo ("calcola l'ordinamento topologico lessicograficamente minimo") o in una variante di decisione ("questa parola di input è l'ordinamento topologico minimo?"). La mia domanda è: qual è la complessità di questo problema ? È in PTIME (o in FP, per la variante di calcolo) o è NP-difficile? Se il problema generale è NP-hard, sono anche interessato alla versione in cui il set di possibili etichette è stato risolto in anticipo (cioè, ci sono solo un numero costante di possibili etichette).
Osservazioni:
Ecco un piccolo esempio nel mondo reale per motivare il problema. Possiamo vedere il DAG come rappresentativo delle attività di un progetto (con una relazione di dipendenza tra di loro) e le etichette sono numeri interi che rappresentano il numero di giorni necessari per ogni attività. Per finire il progetto, mi ci vorrà lo stesso tempo totale, indipendentemente dall'ordine che scelgo per le attività. Tuttavia, vorrei impressionare il mio capo, e per fare ciò voglio finire il maggior numero di compiti il più velocemente possibile (in modo avido, anche se ciò significa essere molto lenti alla fine perché i compiti più difficili rimangono). Scegliendo l'ordine lessicografico minima ottimizza il seguente criterio: Voglio scegliere un ordine in modo tale che non v'è altro ordine un numero di giorni dove dopo ngiorni avrei finito più attività con ordine che con ordine o (cioè, se il mio capo guarda il tempo n , do una migliore impressione con o ' ), ma per tutti i m < n ho finito non meno compiti con ordine o ′ rispetto all'ordine o .
Per dare un'idea del problema: so già dalle risposte precedenti che il seguente problema correlato è difficile: "esiste un tipo topologico che raggiunge la seguente sequenza"? Tuttavia, il fatto qui che desidero una sequenza minima per questo ordine lessicografico sembra limitare molto i possibili ordini topologici che possono raggiungerlo (in particolare le riduzioni di quelle altre risposte non sembrano più funzionare). Intuitivamente, ci sono molte meno situazioni in cui abbiamo una scelta da fare.
Si noti che sembrano esserci interessanti riformulazioni dei problemi in termini di copertura degli insiemi (quando si limita il problema ai DAG bipartiti, ovvero con altezza due): dati un insieme di insiemi, elencarli in un ordine che minimizza lessicograficamente la sequenza | S 1 | , | S 2 ∖ S 1 | , | S 3 ∖ ( S 1 ∪ S 2 ) | , … , | S n ∖ (. Il problema può anche essere riformulato su grafici non indirizzati (espandere progressivamente un'area connessa del grafico seguendo l'ordine che minimizza la sequenza lessicografica delle etichette scoperte). Tuttavia, a causa del fatto che la sequenzadeveessere sempre avida per definizione dell'ordine lessicografico, non riesco a ottenere riduzioni (ad es. Dell'albero di Steiner) per funzionare.
Grazie in anticipo per le tue idee!