линейным же уравнением описывается, бро ( в реальности полиномиальным, т.к со временем просмотры идут на спад, но раз нужен линейный, то дальше читай )
f($end, $start, $now, $count) = ($count * $end- $start * $count) / ($now - $start)
f($end, $start, $now, $count) = ($count * ($end- $start)) / ($now - $start)
f(x) = ax + b, f(x) - количество предсказываемое лайков, x - время a, b - коэффициенты
Предполагается, что в самом начале нет лайков:
20000a + b = 10000
5000a + b = 0
b = -5000a
20000a - 5000a =10000
15000a = 10000
a = 0.666
b = -3333.3
Следовательно:
лайки(время) = 0.666 * время - 3333.3
лайки($end) = 56 607
В общем виде:
$now * a + b = $count
$start * a + b = 0
-b = $start * a
$now * a - $start * a = $count
a($now - $start) = $count
a = $count / ($now - $start)
b = -($start * $count) / ($now - $start)
f($time) = ($count * $time - $start * $count) / ($now - $start)
f($time) = ($count * ($time - $start)) / ($now - $start)