Problema dello spostamento del pancake
Anche prima che i biologi si confrontassero con il problema del riarrangiamento del genoma
gli informatici avevano studiato il procedimento relativo al “Sorting by prefix reversal”, conosciuto
anche come il problema del mettere in ordine i pancakes:
il problema è il seguente, data una pila di n pancake,
qual è il numero minimo di spostamenti
per riporli in una pila perfetta?
In input vi sono π permutazioni mentre in output una serie di inversioni
prefissate ρ1, …, ρt per trasformare π
in una permutazione identica in modo che t sia la minima.
Questo problema
è ispirato ad una situazione reale: un cuoco trasandato ha preparato pancakes di diversa grandezza lasciandoli poi in disordine.
Il cameriere vuole metterli in ordine in modo tale che il più grande sia alla base e il più piccolo in cima. Può farlo solo
facendo saltare in aria i pancakes, cambiandoli di
posto tante volte quante è necessario per riordinarli.
Volendo utilizzare l’algoritmo di greedy per
risolvere il problema dei pancakes allora si avranno
2 inversioni prefissate al massimo per mettere il pancake nella sua giusta
posizione, massimo
2n–2 passaggi totali.
William Gates and Christos Papadimitriou hanno dimostrato a metà degli anni 70 che questo
problema poteva essere risolto con al massimo 5/3
(n + 1) inversioni prefissate. Comunque il
problema dei pancakes è rimasto irrisolto.
Fig.5 Christos Papadimitrou e William Gates che ordinano i
pancake.