This text was taken from P.A.Wozniak, Optimization of learning, Master's Thesis, University of Technology in Poznan, 1990 and adapted for publishing as an independent article on the web. (P.A.Wozniak, Feb 22, 1999) 
The main fault of the Algorithm SM2 seemed to have been the arbitrary shape of the function of quasioptimal intervals. Although very effective in practice and confirmed by years of experimental repetitions, this function could not claim scientifically proved validity, nor could it detect the overall impact of few day variations of optimal intervals on the learning process. Bearing these flaws in mind I decided to implicate routine SuperMemo repetition in validation of the function of optimal intervals!
Using optimization procedures like those applied in finding EFactors I wanted the program to correct the initially proposed function whenever corrections appeared justified.
To achieve this goal, I tabulated the function of optimal intervals (see Fig. 3.2).
(Fig. 3.2)[in SuperMemo 98 see Tools : Statistics : Analysis : Matrices : Intervals]
Particular entries of the matrix of optimal intervals (later called the OI matrix) where taken from the formulas used in the Algorithm SM2.
SuperMemo 4 (February 1989), in which the new solution was implemented, used the OI matrix to determine values of interrepetition intervals:
I(n):=OI(n,EF)
where:
I(n)  the nth interrepetition interval of a given item (in days),
EF  EFactor of the item,
OI(n,EF)  the entry of the OI matrix corresponding to the nth repetition and the EFactor EF.
However, the OI matrix was not fixed once for all. In the course of repetitions, particular entries of the matrix were increased or decreased depending on quality of responses. For example, if the entry indicated the optimal interval to be X and the used interval was X+Y while the response quality after this interval was not lower than four, then the new value of the entry would fall between X and X+Y.
Thus the values of the OI entries in the equilibrium state should settle at the point where the stream of poorretention items balances the stream of goodretention items in its influence on the matrix.
As a consequence, SuperMemo 4 was intended to yield an ultimate definition of the function of optimal intervals.
Algorithm SM4 used in SuperMemo 4.0:

As it was mentioned earlier, the Algorithm SM4 was implemented in SuperMemo 4 and was used between March 9, 1989 and October 17, 1989. Although the main concept of modifying the function of optimal intervals seemed to be a major step forward, the implementation of the algorithm was a failure. The basic insufficiency of the algorithm appeared to result from formulas applied in modification of the OI matrix.
There were two the most striking flaws:
After seven months of using the SM4 algorithm the OI matrices of particular databases did not look much different from their initial states. One could explain this fact by the correctness of my earlier predictions concerning the real values of the optimal interrepetition intervals, however, as it was later proved by means of the Algorithm SM5, the actual reason of the stability of the matrices was the deficient optimization formulae.
As far as acquisition rate and retention are concerned, there is no reliable evidence that the Algorithm SM4 brought any progress. Slight improvement could as well be related to general betterment of the software and improvement in item formulation principles