Mënyra më e mirë për të zëvendësuar faqet është e thjeshtë për tu përshkruar, por është e pamundur për tu implementuar.
Pëshkrimi i këtij algoritmi është ky : në momentin që ndodh gabimi i faqes ( page fault ) ne nuk kemi në memorie atë faqe që na duhet për këtë instruksion, por kemi memorien plot me faqe të tjera, të cilat do na duhen pas 10, ose 100 ose dhe pas 1000 instruksionesh. Secila faqe mund të etiketohet me numrin e instruksioneve që do ekzekutohen para se të referensohemi të faqja.
Algoritmi optimal thotë se duhet të largohet faqja që ka etiketën më të madhe, pra faqja e cila duhet të presë më gjatë para se të referensohet.
Problemi i vetëm që ka ky algoritëm është fakti se nuk mund të realizohet !!!
Në momenti që ndodh gabimi i faqes, sistemi i shfrytëzimit nuk ka si ta dijë se cila faqe do referensojë më vonë. Të njëjtën situatë e pamë me algoritmet e skedulimit. Nga ta dijë sistemi se cili është proçesi më i shkurtër?! Punë nuk kryen as zgjidhja e proçesimit në një simulator dhe shënjimi i të gjithë faqeve referensuese. Nuk mund të impelementohet ky algoritëm për herën e dytë duke u bazuar në ekzekutimin e herës së parë në simulator.
Bazuar në librin Modern Operating Systems, me autor A.Tanenbaum