{"id":52286,"date":"1990-03-01T07:00:00","date_gmt":"1990-03-01T07:00:00","guid":{"rendered":"https:\/\/www.supermemo.com?p=52286"},"modified":"2022-11-02T11:19:19","modified_gmt":"2022-11-02T11:19:19","slug":"introduction-of-the-matrix-of-optimal-factors","status":"publish","type":"post","link":"https:\/\/www.supermemo.com\/en\/blog\/introduction-of-the-matrix-of-optimal-factors","title":{"rendered":"Further improvement of SuperMemo: introduction of the matrix of optimal factors"},"content":{"rendered":"
\n

Piotr Wozniak, 1990<\/p>\n\n

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, Sep 17, 1998)<\/p>\n\n

Instead of improving the mathematical apparatus employed in the Algorithm SM-4, I decided to reshape the concept of modifying the function of optimum intervals.<\/p>\n\n

Let us have a closer look at the major faults of the Algorithm SM-4 disregarding minor inefficiencies:<\/p>\n\n

    \n
  1. In the course of repetition it may happen that one of the intervals will be calculated as shorter than the preceding one. This is certainly inconsistent with general assumptions leading to the SuperMemo method. Moreover, validity of such an outcome was refuted by the results of application of the Algorithm SM-5 (see further). This malfunction could be prevented by disallowing intervals to increase or drop beyond certain values, but such an approach would tremendously slow down the optimization process interlinking optimal intervals by superfluous dependencies. The discussed case was indeed observed in one of the databases. The discrepancy was not eliminated by the end of the period in which the Algorithm SM-4 was used despite the fact that the intervals in question were only two weeks long<\/li>\n\n\n\n
  2. E-Factors of particular items are constantly modified (see Step 6 of the Algorithm SM-4 ) thus in the OI matrix an item can pass from one difficulty category to another. If the repetition number for that item is large enough, this will result in serious disturbances of the repetitory process of that item. Note that the higher the repetition number, the greater the difference between optimal intervals in neighboring E-Factor category columns. Thus if the E-Factor increases the optimal interval used for the item can be artificially long, while in the opposite situation the interval can be much too short<\/li>\n<\/ol>\n\n

    The Algorithm SM-4 tried to interrelate the length of the optimal interval with the repetition number. This approach seems to be incorrect because the memory is much more likely to be sensitive to the length of the previously applied inter-repetition interval than to the number of the repetition (previous interval is reflected in memory strength while the repetition number is certainly not coded – see Molecular model of memory comprising elements of the SuperMemo theory).<\/p>\n\n

    Because of the above reasons I decided to represent the function of optimal intervals by means of the matrix of optimal factors – OF matrix – rather than the OI matrix (see Fig. 3.3).<\/p>\n\n

    (Fig. 3.3)<\/p>\n\n

    The newly applied function of optimal intervals had the following form:<\/p>\n\n

    I(n,EF)=OF(n,EF)*I(n-1,EF)
    I(1,EF)=OF(1,EF)<\/em><\/p>\n\n

    \n

    where:<\/p>\n<\/blockquote>\n\n

    \n

    I(n,EF) <\/em>– the n-th inter-repetition interval for an item of a given E-Factor EF (in days)
    OF(n,EF) <\/em>– the entry of the OF matrix corresponding to the n-th repetition and the E-Factor EF<\/p>\n<\/blockquote>\n\n

    In accordance with previous observations the entries of the OF matrix were not allowed to drop below 1.2 (cf. the formulation of the Algorithm SM-2).<\/p>\n\n

    It is easy to notice that the application of the OF matrix eliminates both aforementioned shortcomings of the Algorithm SM-4:<\/p>\n\n

      \n
    1. intervals cannot get shorter in subsequent repetition (each of them is at least 1.2 times as long as the preceding one),<\/li>\n\n\n\n
    2. changing the E-Factor category increases the next applied interval only as many times as it is required by the corresponding entry of the OF matrix.<\/li>\n<\/ol>\n\n
      The final formulation of the algorithm used in SuperMemo 5 is presented below (Algorithm SM-5):<\/strong>1. Split the knowledge into smallest possible items2. With all items associate an E-Factor equal to 2.53. Tabulate the OF matrix for various repetition numbers and E-Factor categories (see Fig. 3.3). Use the following formula:OF(1,EF):=4
      for n>1 OF(n,EF):=EF<\/em>where:OF(n,EF) <\/em>– optimal factor corresponding to the n-th repetition and the E-Factor EF4. Use the OF matrix to determine inter-repetition intervals:I(n,EF)=OF(n,EF)*I(n-1,EF)
      I(1,EF)=OF(1,EF)<\/em>where:I(n,EF) <\/em>– the n-th inter-repetition interval for an item of a given E-Factor EF (in days)
      OF(n,EF) <\/em>– the entry of the OF matrix corresponding to the n-th repetition and the E-Factor EF5. After each repetition assess the quality of repetition responses in the 0-5 grade scale (cf. Algorithm SM-2)6. After each repetition modify the E-Factor of the recently repeated item according to the formula:EF’:=EF+(0.1-(5-q)*(0.08+(5-q)*0.02))<\/em>where:EF’ <\/em>– new value of the E-Factor
      EF – <\/em>old value of the E-Factor
      q <\/em>– quality of the response in the 0-5 grade scale
      If EF is less than 1.3 then set EF to 1.37. After each repetition modify the relevant entry of the OF matrix. An exemplary formulas constructed arbitrarily and used in the modification could look like this (those used in the SuperMemo 5.3 are presented in Fig. 3.4):OF’:=OF*(0.72+q*0.07)
      OF”:=(1-fraction)*OF+fraction*OF’<\/em>where:OF” <\/em>– new value of the OF entry
      OF’ –<\/em> auxiliary value of the OF entry used in calculations
      OF <\/em>– old value of the OF entry
      fraction <\/em>– any number between 0 and 1 (the greater it is the faster the changes of the OF matrix)
      q – quality of the response in the 0-5 grade scaleNote that for q=4 the OF does not change. It increases for q>4 and decreases for q<4. See the procedure presented in Fig. 5 to avoid the pitfalls of oversimplification8. If the quality response was lower than 3 then start repetitions for the item from the beginning without changing the E-Factor9. After each repetition session of a given day repeat again all items that scored below four in the quality assessment. Continue the repetitions until all of these items score at least four<\/td><\/tr><\/tbody><\/table><\/figure>\n\n
      Fig. 3.4 – The procedure used in the SuperMemo 5.3 for calculation of the new optimal factor after a repetition (simplified for the sake of clarity without significant change to the course of computation):<\/td><\/tr>
      procedure calculate_new_optimal_factor;<\/strong><\/em>input:<\/strong><\/em>interval_used – the last interval used for the item in question<\/em>quality – the quality of the repetition response<\/em>used_of – the optimal factor used in calculation of the last interval used for the item in question<\/em>old_of – the previous value of the OF entry corresponding to the relevant repetition number and the E-Factor of the item<\/em>fraction – a number belonging to the range (0,1) determining the rate of modifications (the greater it is the faster the changes of the OF matrix)<\/em>output:<\/strong><\/em>new_of – the newly calculated value of the considered entry of the OF matrix<\/em>local variables:<\/strong><\/em>modifier – the number determining how many times the OF value will increase or decrease<\/em>mod5 – the value proposed for the modifier in case of q=5<\/em>mod2 – the value proposed for the modifier in case of q=2<\/em>begin<\/strong><\/em>mod5:=(interval_used+1)\/interval_used;
      if mod5<1.05 then mod5:=1.05;
      mod2:=(interval_used-1)\/interval_used;
      if mod2>0.75 then mod2:=0.75;
      if quality>4 then modifier:=1+(mod5-1)*(quality-4) else modifier:=1-(1-mod2)\/2*(4-quality);
      if modifier<0.05 then modifier:=0.05;
      new_of:=used_of*modifier;
      if quality>4 then if new_of<old_of then new_of:=old_of;
      if quality<4 then if new_of>old_of then new_of:=old_of;
      new_of:=new_of*fraction+old_of*(1-fraction);
      if new_of<1.2 then new_of:=1.2;<\/em>end;<\/strong><\/em><\/td><\/tr><\/tbody><\/table><\/figure>\n\n

      3.5. Random dispersal of optimal intervals<\/strong><\/p>\n\n

      To improve the optimization process further, a mechanism was introduced that may seem to contradict the principle of optimal repetition spacing. Let us reconsider a significant fault of the Algorithm SM-5: A modification of an optimal factor can be verified for its correctness only after the following conditions are met:<\/p>\n\n