Stop dividing unigram probability by 2 for backoff.

Bug: 13197276
Change-Id: I8eaa24b6f710383a8d257e3ec28c37a1a1da8e31
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp
index c9bb109..d80ab77 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp
@@ -30,6 +30,7 @@
 const int ForgettingCurveUtils::MAX_BIGRAM_COUNT = 12000;
 const int ForgettingCurveUtils::MAX_BIGRAM_COUNT_AFTER_GC = 10000;
 
+const int ForgettingCurveUtils::MULTIPLIER_TWO_IN_PROBABILITY_SCALE = 8;
 const int ForgettingCurveUtils::MAX_COMPUTED_PROBABILITY = 127;
 const int ForgettingCurveUtils::DECAY_INTERVAL_SECONDS = 2 * 60 * 60;
 
@@ -84,7 +85,9 @@
     } else if (bigramProbability == NOT_A_PROBABILITY) {
         return min(backoff(unigramProbability), MAX_COMPUTED_PROBABILITY);
     } else {
-        return min(max(unigramProbability, bigramProbability), MAX_COMPUTED_PROBABILITY);
+        // TODO: Investigate better way to handle bigram probability.
+        return min(max(unigramProbability, bigramProbability + MULTIPLIER_TWO_IN_PROBABILITY_SCALE),
+                MAX_COMPUTED_PROBABILITY);
     }
 }
 
@@ -137,11 +140,8 @@
 
 // See comments in ProbabilityUtils::backoff().
 /* static */ int ForgettingCurveUtils::backoff(const int unigramProbability) {
-    if (unigramProbability == NOT_A_PROBABILITY) {
-        return NOT_A_PROBABILITY;
-    } else {
-        return max(unigramProbability - 8, 0);
-    }
+    // See TODO comments in ForgettingCurveUtils::getProbability().
+    return unigramProbability;
 }
 
 /* static */ int ForgettingCurveUtils::getElapsedTimeStepCount(const int timestamp) {
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h
index db25047..8818cfe 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h
@@ -72,6 +72,7 @@
         std::vector<std::vector<std::vector<int> > > mTables;
     };
 
+    static const int MULTIPLIER_TWO_IN_PROBABILITY_SCALE;
     static const int MAX_COMPUTED_PROBABILITY;
     static const int DECAY_INTERVAL_SECONDS;