放射性元素的原子核有半數(shù)發(fā)生衰變時所需要的時間,叫半衰期。隨著放射的不斷進行,放射強度將按指數(shù)曲線下降,放射性強度達到原值一半所需要的時間叫做同位素的半衰期。原子核的衰變規(guī)律是:N = No * ( 1 / 2 ) ^ ( t / T )。其中:No 是指初始時刻( t = 0 )時的原子核數(shù),t 為衰變時間,T 為半衰期,N 是衰變后留下的原子核數(shù)。
對于排行榜所涉及的因素無外乎有幾個:上架時間、下載量、評分、參與評分的人數(shù)。將元素的半衰期規(guī)律應(yīng)用到排行榜算法中是一個很好的選擇,可以將以上所有因素都結(jié)合在這個公式中。N 為一個應(yīng)用獲得的權(quán)重,No 為初始值,我們設(shè)置為一個單位。t 為距離初始值的時間。(如果 No 設(shè)置為一天,t 即為幾天;如果初始值設(shè)置為一小時,t 即為幾個小時)將 T 設(shè)置為排行中一個應(yīng)用的活躍期,可以有效將時間這個因素利用起來,這樣可以減小馬太效應(yīng),避免強者越強、弱者越弱。
對于參與評分人數(shù),不同的應(yīng)用可能參與評分的人數(shù)不在一個數(shù)量級上,這樣將這個參數(shù)引入到公式中就會對結(jié)果造成過大的影響,因此可以采用將參與評分的人數(shù)取對數(shù)的方式轉(zhuǎn)換到同一個數(shù)量級上,并保持原有的遞增規(guī)律。
基于以上的理論,num 代表評分人數(shù),排行榜半衰期算法公式為:N = No * ( 1 / 2 ) ^ ( t / T ) * lg(num)