基于雙因子體系的隨機(jī)算法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于信息數(shù)據(jù)生成領(lǐng)域,具體地說(shuō),本發(fā)明涉及基于雙因子體系的隨機(jī)算法。
【背景技術(shù)】
[0002]中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC) 2015年2月3號(hào)發(fā)布的《第35次中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》顯示,即時(shí)通信作為第一大上網(wǎng)應(yīng)用,在網(wǎng)民中的使用率繼續(xù)上升,達(dá)到90.6%。2014年,手機(jī)端即時(shí)通信使用也一直保持著穩(wěn)步增長(zhǎng)的趨勢(shì)。截至2014年12月,我國(guó)手機(jī)即時(shí)通信網(wǎng)民數(shù)為5.08億,較2013年底增長(zhǎng)了 7683萬(wàn),年增長(zhǎng)率達(dá)17.8%。手機(jī)即時(shí)通信使用率為91.2%,較2013年底提升了 5.1個(gè)百分點(diǎn)。即時(shí)通信已經(jīng)成為現(xiàn)代人類每天生活中不可缺少的一部分,是實(shí)現(xiàn)網(wǎng)絡(luò)社交的主要工具,但是現(xiàn)在的即時(shí)通訊類網(wǎng)絡(luò)社交系統(tǒng)普遍呈現(xiàn)交流形式單一,交流表現(xiàn)手段不豐富,枯燥乏味,尤其是缺少現(xiàn)實(shí)環(huán)境中社交時(shí)所具備的交流場(chǎng)景和動(dòng)作互動(dòng)的社交固有元素。
[0003]目前,在手機(jī)等移動(dòng)終端上,出現(xiàn)了紅包的一種游戲,比如說(shuō)QQ紅包、微信紅包等抽獎(jiǎng)效果的游戲。由于其趣味性、獵奇心性以及互動(dòng)性,收到廣大用戶的歡迎,得大了迅速的推廣。而這些應(yīng)用正是基于計(jì)算機(jī)仿真技術(shù),隨機(jī)數(shù)生成和分配技術(shù)產(chǎn)生的模擬現(xiàn)實(shí)生活的一種互動(dòng)方式。
[0004]現(xiàn)有的隨機(jī)數(shù)生成和分配系統(tǒng)大多建立在隨機(jī)抽取的基礎(chǔ)之上,即利用服務(wù)器中的計(jì)算器在固定的最大值和最小值范圍內(nèi)隨機(jī)抽取一個(gè)數(shù),并根據(jù)這個(gè)數(shù)計(jì)算抽取結(jié)果。在此過(guò)程中,由于存儲(chǔ)的存儲(chǔ)器中的最大值和最小值為固定數(shù),不能隨機(jī)調(diào)整,因此每次的抽取結(jié)果均會(huì)落入相應(yīng)范圍內(nèi),且每次計(jì)算器的計(jì)算范圍固定,不能縮小計(jì)算范圍,導(dǎo)致計(jì)算器多次計(jì)算式產(chǎn)生大量的計(jì)算步驟,而設(shè)定過(guò)多的計(jì)算范圍則由增加了對(duì)計(jì)算機(jī)存儲(chǔ)資源的占用,且計(jì)算復(fù)雜度會(huì)大幅增加,反而占用更多的計(jì)算機(jī)和網(wǎng)絡(luò)資源,從而導(dǎo)致計(jì)算機(jī)響應(yīng)速度變慢甚至癱瘓。
[0005]所以,對(duì)于技術(shù)人員來(lái)說(shuō),開(kāi)發(fā)一種基于雙因子體系的隨機(jī)算法,通過(guò)設(shè)定預(yù)訂數(shù)據(jù)池范圍,即數(shù)據(jù)池區(qū)間的最大值和/或最小值,實(shí)現(xiàn)隨機(jī)生成系統(tǒng)的靈活操作,同時(shí)減少生成過(guò)程中計(jì)算器計(jì)算步驟以達(dá)到提高計(jì)算機(jī)響應(yīng)速度和精度的目的,成為一個(gè)亟待解決的問(wèn)題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明要解決的技術(shù)問(wèn)題是克服上述現(xiàn)有技術(shù)存在的缺陷和不足,提供一種基于雙因子體系的隨機(jī)算法,通過(guò)設(shè)定系統(tǒng)數(shù)據(jù)池范圍,即數(shù)據(jù)池區(qū)間最大值和/或最小值,實(shí)現(xiàn)數(shù)據(jù)系統(tǒng)的靈活操作,將有限的特定數(shù)據(jù)分配給制定用戶,同時(shí)減少過(guò)程中計(jì)算步驟以達(dá)到提高計(jì)算機(jī)響應(yīng)速度和精的目的。
[0007]為解決上述問(wèn)題,本發(fā)明所采用的技術(shù)方案是:
[0008]基于雙因子體系的隨機(jī)算法,其特征在于所述算法包括初始化步驟和執(zhí)行步驟:
[0009]初始化步驟:
[0010]步驟一,初始化數(shù)據(jù)池,設(shè)定用戶篩選規(guī)則和條件數(shù)據(jù)區(qū)間Y[Y0,Y1],設(shè)定數(shù)據(jù)池區(qū)間Τ[Τ0,Tl],設(shè)定元素?cái)?shù)據(jù)邊界S [S0,SI],設(shè)定對(duì)比屬性U,設(shè)定標(biāo)記位置L ;
[0011]步驟二,調(diào)用隨機(jī)函數(shù)生成候選數(shù)據(jù)池和候選數(shù)據(jù)Ni {Ν1,Ν2,……Ni},且候選數(shù)據(jù)池中的數(shù)據(jù)按值的大小順序排列;
[0012]步驟三,發(fā)送調(diào)用信號(hào)至候選用戶終端;
[0013]執(zhí)行步驟:
[0014]步驟四,現(xiàn)實(shí)條件觸發(fā)算法事件,候選用戶可以開(kāi)始分配候選數(shù)據(jù)Ni {Ν1,Ν2,……Ni};
[0015]步驟五,如果第I個(gè)用戶進(jìn)入數(shù)據(jù)分配,則將候選用戶屬性與對(duì)比屬性U進(jìn)行對(duì)比,根據(jù)對(duì)比百分比,定位候選數(shù)據(jù)池候選位置X,截取該位置前后M個(gè)位置范圍內(nèi)的數(shù)據(jù),作為定位候選數(shù)據(jù)池Aj {Al,Α2……,Aj};
[0016]如果第2個(gè)及以后的用戶進(jìn)入數(shù)據(jù)分配,則將候選用戶屬性與對(duì)比屬性U進(jìn)行對(duì)比;若大于等于U,則將[NX,Ni]區(qū)間內(nèi)的候選數(shù)據(jù)作為定位候選數(shù)據(jù)池Aj{Al,A2……,Aj},否則將[NI,NX]區(qū)間內(nèi)的候選數(shù)據(jù)作為定位候選數(shù)據(jù)池Aj {Al,A2……,Aj};
[0017]步驟六,調(diào)用隨機(jī)函數(shù)在候選數(shù)據(jù)Aj {Al,A2……,Aj}中隨機(jī)抽取一個(gè)數(shù)值,作為分配數(shù)據(jù),分發(fā)給用戶;保存X至標(biāo)記位置L,保存用戶屬性至對(duì)比屬性U,在Ni {N1,N2,……Ni}中標(biāo)記選中數(shù)據(jù)為已選;
[0018]步驟七,若Ni {NI,N2,……Ni}中數(shù)據(jù)元素均已選,或現(xiàn)實(shí)條件超過(guò)條件數(shù)據(jù)區(qū)間,則算法結(jié)束。
[0019]上述算法中,所述的元素?cái)?shù)據(jù)邊界為[S0, SI], SO = max(Tl*0.001, 0.01), SI = min{Tl-[N0*max(Τ1*0.001, 0.01)], 200}。
[0020]所述條件數(shù)區(qū)間Υ[Υ0,Yl]可以是時(shí)間區(qū)間,也可以是數(shù)據(jù)值區(qū)間,如果是時(shí)間區(qū)間則精確至秒,如果是數(shù)據(jù)值區(qū)間,則至少精確到個(gè)位數(shù)。
[0021]在上述算法中,步驟二中所述的數(shù)據(jù)按值的大小排列可以是降序排列,也可以是升序排列。
[0022]步驟四中的現(xiàn)實(shí)條件指的是現(xiàn)實(shí)時(shí)間或數(shù)據(jù)累計(jì)值。
[0023]步驟五中所屬的候選用戶屬性可以是用戶貢獻(xiàn)值、性別、年齡、入會(huì)時(shí)間因素。
[0024]由于采用了上述技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā)明提出的算法從數(shù)據(jù)池范圍和隨機(jī)計(jì)算兩個(gè)維度對(duì)數(shù)據(jù)分配進(jìn)行了控制,即步驟五中的用戶屬性與對(duì)比屬性U進(jìn)行對(duì)比,根據(jù)對(duì)比百分比定位候選數(shù)據(jù)位置,替代了現(xiàn)有技術(shù)中直接調(diào)用隨機(jī)函數(shù)進(jìn)行生成的方法,在該算法中,每次執(zhí)行都會(huì)更新對(duì)比屬性U,從而達(dá)到了實(shí)時(shí)變換的效果,相比傳統(tǒng)隨機(jī)數(shù)據(jù)生成和分配,本發(fā)明提出的算法計(jì)算步驟更少,占用計(jì)算機(jī)資源低,效率更高。
[0025]本發(fā)明提出的算法通過(guò)截取候選數(shù)據(jù)池中的一段范圍,減少了數(shù)據(jù)分配和抽取過(guò)程中計(jì)算機(jī)的計(jì)算步驟,提高了用戶響應(yīng),并實(shí)現(xiàn)了精確抽取的效果。
[0026]本發(fā)明提出的算法通過(guò)初始化步驟,設(shè)定數(shù)據(jù)池范圍區(qū)間,即最大值和/或最小值,實(shí)現(xiàn)隨機(jī)數(shù)分配和抽取系統(tǒng)的靈活調(diào)整,同時(shí)減少過(guò)程中計(jì)算器步驟以達(dá)到提高計(jì)算機(jī)響應(yīng)速度和精度的目的。
【附圖說(shuō)明】
[0027]圖1是本發(fā)明的流程示意圖。
【具體實(shí)施方式】
[0028]下面結(jié)合附圖和具體實(shí)施例,進(jìn)一步闡述本發(fā)明的技術(shù)方案,應(yīng)理解,這些實(shí)施例僅用于說(shuō)明本發(fā)明而不用于限制本發(fā)明的范圍。此外應(yīng)理解,在閱讀了本發(fā)明講授的內(nèi)容之后,本領(lǐng)域技術(shù)人員可以對(duì)本發(fā)明作各種改動(dòng)或修改,這些等價(jià)形式同樣落在申請(qǐng)所附權(quán)利要求書所限定的范圍。
[0029]實(shí)施例:
[0030]基于雙因子體系的隨機(jī)算法,該算法布置于C/S架構(gòu)系統(tǒng),用于系統(tǒng)中的抽獎(jiǎng)活動(dòng)計(jì)算,抽獎(jiǎng)內(nèi)容為電子紅包。該系統(tǒng)包括用戶終端、商家管理終端和服務(wù)器終端。用戶終端可以是智能移動(dòng)設(shè)備或者個(gè)人電腦等具有計(jì)算機(jī)功能的設(shè)備;商家管理終端為移動(dòng)終端或者個(gè)人電腦等具有計(jì)算機(jī)功能的設(shè)備;服務(wù)器終端為個(gè)人電腦或者服務(wù)站。另外,上述只是基于現(xiàn)有的或者常用的,如果其他設(shè)備上也可以實(shí)現(xiàn)本發(fā)明算法的調(diào)用或運(yùn)行的話,該設(shè)備也在終端范圍之內(nèi)。
[0031]如附圖1所示,基于雙因子體系的隨機(jī)算法在該架構(gòu)系統(tǒng)中,運(yùn)行步驟如下:
[0032]S01,商家管理終端上傳并初始化服務(wù)器終端寄存器內(nèi)容,初始化算法,設(shè)定用戶篩選規(guī)則為“消費(fèi)積分彡1000積分”,條件區(qū)間為[2015年10月18 H 24:00:00,2015年10月20日24:00:00],設(shè)定電子紅包總額區(qū)間T[0,1000],設(shè)定單個(gè)電子紅包金