CN113421115A - 中奖信息的生成方法、装置、设备及存储介质 - Google Patents
中奖信息的生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113421115A CN113421115A CN202110691853.4A CN202110691853A CN113421115A CN 113421115 A CN113421115 A CN 113421115A CN 202110691853 A CN202110691853 A CN 202110691853A CN 113421115 A CN113421115 A CN 113421115A
- Authority
- CN
- China
- Prior art keywords
- user
- consumption
- winning
- users
- behavior
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000006399 behavior Effects 0.000 claims abstract description 226
- 230000000694 effects Effects 0.000 claims abstract description 179
- 238000012163 sequencing technique Methods 0.000 claims abstract description 19
- 238000004806 packaging method and process Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000000875 corresponding effect Effects 0.000 description 111
- 241001134453 Lista Species 0.000 description 22
- 230000008569 process Effects 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000002747 voluntary effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0213—Consumer transaction fees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Probability & Statistics with Applications (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Databases & Information Systems (AREA)
- Game Theory and Decision Science (AREA)
- Fuzzy Systems (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及数据处理领域,公开了一种中奖信息的生成方法、装置、设备及存储介质,该方法包括:获取用户参与活动时的活动数据,并记录用户发生消费行为的消费时间,对消费行为进行排序,得到行为时间序列;分析每个用户的消费行为在行为时间序列中的位置并计算出每个用户的概率区间;调用预设的伪随机数生成器,生成伪随机数;当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。本发明实施例实现了活动概率的动态调整,避免了人为调整的主观性,使得活动公开透明,生成的中奖信息真实且可靠,提高了用户的体验效果和满意度。此外,本发明还涉及区块链领域,活动数据可存储于区块链中。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种中奖信息的生成方法、装置、设备及存储介质。
背景技术
现流行的抽奖促销活动,主要使用大转盘或礼盒形式,利用消费者在消费过程中存在的侥幸获大利的心理,吸引消费者参与活动,通过分享链接、邀请新人等方式,增加抽奖次数,获取奖品信息,从而提高产品的知名度,增加商品销售量。但是这种方式覆盖的群体范围大,奖品的价值和类型受到限制,不适用于产品本身的品牌提升和企业形象的维护,对消费者的吸引力也越来越低。
目前,对于抽奖促销的活动模式,其中奖概率难以进行动态调控,即难以对参与抽奖的用户的中奖概率进行动态调整,导致生成的中奖信息的真实性和可靠性低、抽奖活动难以吸引用户参与,因此,如何调整中奖概率以及合理的控制中奖概率,从而提高中奖信息的真实性和可靠性成为了亟需解决的问题。
发明内容
本发明的主要目的在于解决现有技术中难以动态调整抽奖活动的概率,导致生成的中奖信息真实性和可靠性低的技术问题。
本发明第一方面提供了一种中奖信息的生成方法,所述中奖信息的生成方法包括:获取用户参与活动时的活动数据,并记录所述用户参与活动时发生消费行为的消费时间,其中,所述活动数据包括每个所述用户发生消费行为的消费次数、所述用户的消费总次数以及所述活动对应的商品总数;根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列;分析每个所述用户的消费行为在所述行为时间序列中的位置;根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间;基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数;当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息。
可选的,在本发明的第一方面的第一种实现方式中,所述根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间包括:根据所述消费时间,对所述行为时间序列中的每个所述用户的消费行为进行编号,得到行为编号;根据所述消费次数和所述位置,以每个所述用户的首次和末次消费行为对应的行为编号为端点值,构建每个所述用户的概率区间。
可选的,在本发明的第一方面的第二种实现方式中,所述基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数包括:调用预设的伪随机数生成器,根据所述商品总数和所述消费总次数随机生成两个初始伪随机数;采用预设的异或运算规则,对两个所述初始伪随机数进行异或运算,生成伪随机数,其中,所述伪随机数中随机数的个数不大于所述商品总数。
可选的,在本发明的第一方面的第三种实现方式中,所述当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息包括:根据所述消费次数,对每个所述用户设置中奖权重;当所述伪随机数落在所述概率区间内,判断所述伪随机数是否落在多个所述概率区间内;若是,则根据每个所述用户的中奖权重,计算所述伪随机数的所述概率区间对应的每个用户的中奖概率;根据所述中奖概率,确定中奖用户并提取所述中奖用户对应的用户信息,生成中奖信息。
可选的,在本发明第一方面的第四种实现方式中,所述根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列包括:获取每个所述用户对应的消费行为,并根据所述用户参与活动时发生消费行为的消费时间,建立所述消费行为与所述消费时间的关联关系;根据所述关联关系,对所有所述用户的所述消费行为按照所述消费时间的先后顺序进行排序,生成行为时间序列。
可选的,在本发明第一方面的第五种实现方式中,在所述基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数之后,还包括:判断所述伪随机数中各随机数是否相同;若是,则剔除相同的随机数。
可选的,在本发明第一方面的第六种实现方式中,所述当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息包括:当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户,并判断所提取的与所述概率区间对应的用户是否相同;若是,则剔除相同的用户,并将不相同的用户作为中奖用户;提取所述中奖用户的用户信息,并将所述用户信息封装成为中奖消息。
本发明第二方面提出一种中奖信息的生成装置,所述中奖信息的生成装置包括:获取模块,用于获取用户参与活动时的活动数据,并记录所述用户参与活动时发生消费行为的消费时间,其中,所述活动数据包括每个所述用户发生消费行为的消费次数、所述用户的消费总次数以及所述活动对应的商品总数;排序模块,用于根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列;分析模块,用于分析每个所述用户的消费行为在所述行为时间序列中的位置;计算模块,用于根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间;生成模块,用于基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数;提取模块,用于当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息。
可选的,在本发明第二方面的第一种实现方式中,所述计算模块具体用于:根据所述消费时间,对所述行为时间序列中的每个所述用户的消费行为进行编号,得到行为编号;根据所述消费次数和所述位置,以每个所述用户的首次和末次消费行为对应的行为编号为端点值,构建每个所述用户的概率区间。
可选的,在本发明第二方面的第二种实现方式中,所述生成模块具体用于:调用预设的伪随机数生成器,根据所述商品总数和所述消费总次数随机生成两个初始伪随机数;采用预设的异或运算规则,对两个所述初始伪随机数进行异或运算,生成伪随机数,其中,所述伪随机数中随机数的个数不大于所述商品总数。
可选的,在本发明第二方面的第三种实现方式中,所述提取模块具体用于:根据所述消费次数,对每个所述用户设置中奖权重;当所述伪随机数落在所述概率区间内,判断所述伪随机数是否落在多个所述概率区间内;若所述伪随机数落在多个所述概率区间内,则根据每个所述用户的中奖权重,计算所述伪随机数的所述概率区间对应的每个用户的中奖概率;根据所述中奖概率,确定中奖用户并提取所述中奖用户对应的用户信息,生成中奖信息。
可选的,在本发明第二方面的第四种实现方式中,所述排序模块具体用于:获取每个所述用户对应的消费行为,并根据所述用户参与活动时发生消费行为的消费时间,建立所述消费行为与所述消费时间的关联关系;根据所述关联关系,对所有所述用户的所述消费行为按照所述消费时间的先后顺序进行排序,生成行为时间序列。
可选的,在本发明第二方面的第五种实现方式中,所述中奖信息的生成装置还包括判断模块,其具体用于:判断所述伪随机数中各随机数是否相同;若所述伪随机数中各随机数相同,则剔除相同的随机数。
可选的,在本发明第二方面的第六种实现方式中,所述提取模块还具体用于:当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户,并判断所提取的与所述概率区间对应的用户是否相同;若所提取的与所述概率区间对应的用户相同,则剔除相同的用户,并将不相同的用户作为中奖用户;提取所述中奖用户的用户信息,并将所述用户信息封装成为中奖消息。
本发明第三方面提供了一种中奖信息的生成设备,所述中奖信息的生成设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述中奖信息的生成设备执行上述的中奖信息的生成方法的步骤。
本发明第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当其在计算机上运行时,使得计算机执行上述的中奖信息的生成方法的步骤。
在本发明提供的技术方案中,通过获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间,对所有用户的消费行为进行排序,得到行为时间序列;分析每个用户的消费行为在行为时间序列中的位置并计算出每个用户的概率区间;调用预设的伪随机数生成器,生成伪随机数;当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。本发明的技术方案实现了活动概率的动态调整,避免了人为调整的主观性,使得活动公开透明,从而生成的中奖信息真实且可靠,提高了用户的体验效果和满意度。
附图说明
图1为本发明实施例中中奖信息的生成方法的第一个实施例示意图;
图2为本发明实施例中中奖信息的生成方法的第二个实施例示意图;
图3为本发明实施例中中奖信息的生成方法的第三个实施例示意图;
图4为本发明实施例中中奖信息的生成方法的第四个实施例示意图;
图5为本发明实施例中中奖信息的生成装置的一个实施例示意图;
图6为本发明实施例中中奖信息的生成装置的另一个实施例示意图;
图7为本发明实施例中中奖信息的生成设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种中奖信息的生成方法、装置、设备及存储介质,通过获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间,对参与活动的所有用户的消费行为进行排序,得到行为时间序列;分析每个用户的消费行为在行为时间序列中的位置;根据消费次数、消费时间和位置,计算出每个用户的概率区间;基于商品总数和消费总次数,调用预设的伪随机数生成器,生成伪随机数;当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。本发明实施例实现了活动概率的动态调整,避免了人为调整的主观性,使得活动公开透明,从而生成的中奖信息真实且可靠,提高了用户的体验效果和满意度。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体内容进行描述,请参阅图1,本发明实施例中中奖信息的生成方法的第一个实施例包括:
101,获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间;
活动是一种产品拉新、留存、促活以及转化必不可少的一种方式,本实施例以抽奖促销活动为例对技术方案进行说明。现流行的抽奖促销活动,主要使用大转盘或礼盒形式,利用消费者在消费过程中存在的侥幸获大利的心理,吸引消费者参与活动,通过分享链接,邀请新人等方式,增加抽奖次数,获取奖品信息,从而提高产品的知名度,增加商品销售量。
当抽奖活动开始时,智能终端发送用户的登录信息至服务器后,服务器根据登录信息获取用户的基本信息,并在获取到基本信息后,反馈登录成功信息至智能终端。智能终端根据登录成功信息成功登录服务器后,将用户在进行抽奖活动的过程中的活动数据发送至服务器;服务器接收到用户的活动数据后,根据活动数据生成抽奖信息并发送至用户的智能终端。
具体的,服务器根据当前时间和活动结束时间的差值创建延时任务,用于在抽奖活动结束后自动匹配中奖用户并发奖。活动进行期间,由服务器持续收集用户参与的活动数据,并记录用户参与投注的时间,得到用户的消费时间,该活动数据包括该用户参与此次抽奖活动的活动编码,投注笔数,活动对应的商品信息。将收集到的投注数据存储至数据库中,并将该用户对应活动及商品投注总笔数放入缓存中供以查询;投注笔数为用户参与抽奖活动时的消费次数;活动对应的商品信息包括商品总数(m)、商品名称;参与活动的所有用户的投注笔数的总数为用户的消费总次数。
102,根据消费时间,对参与活动的所有用户的消费行为进行排序,得到行为时间序列;
获取每个用户对应的消费行为,并根据用户参与活动时发生消费行为的消费时间,建立消费行为与消费时间的关联关系;根据关联关系,对所有用户的消费行为按照消费时间的先后顺序进行排序,生成行为时间序列。
具体的,服务器获取每个用户参与活动时的消费行为和用户参与活动时发生该消费行为的消费时间,对消费行为和消费时间建立关联关系,一个消费行为对应一个消费时间。根据该关联关系,对所有的用户的消费行为按照各消费行为对应的消费时间的先后进行排序,从而生成行为时间序列。
103,分析每个用户的消费行为在行为时间序列中的位置;
104,根据消费次数、消费时间和位置,计算出每个用户的概率区间;
服务器根据该行为时间序列,对每个用户的消费行为在此行为时间序列的位置进行分析,即确定各用户的消费行为对应的消费时间在所有用户的消费行为对应的消费时间的先后位置,并对行为时间序列中的各消费行为进行编号,即以用户投注记录生成时间为顺序,从1开始,对每个用户的每笔投注笔数进行编号,得到投注编号,例如,用户A是最先开始进行投注的用户,且连续投注了三笔,则用户A对应的投注编号为编号1、2和3,用户B是第二个进行投注的用户,且连续投注了四笔,则用户B对应的投注编号为编号4,5,6,7。需要说明的是,一个用户并不一定都是连续投注,因此也存在一个用户的消费行为对应的编号是不连续的。
当抽奖活动结束时,服务器上的延时任务自动执行,通过活动编号和商品信息获取到此次抽奖活动下该商品的投注总笔数(n),对每个用户设立一个标识号,并创建一个用户投注列表(listA),其中,该用户投注列表的类型为ArrayList<Map>,且该用户投注列表中每个用户的标识号为key,用户的投注笔数为value。再创建一个空的中奖用户集合SetA,并根据服务器收集的单个用户的消费次数、消费时间和消费行为在行为时间序列中的位置,构建一个概率区间,其中,一个概率区间是以用户的首次和末次消费行为对应的行为编号即投注编号为端点值进行构建的,例如,用户A的首次和末次消费行为对应的行为编号为1和3,则用户A的概率区间为(1,2,3),同理,用户B的概率区间为(4,5,6,7)。
105,基于商品总数和消费总次数,调用预设的伪随机数生成器,生成伪随机数;
根据得到的概率区间,取消费总次数即投注总笔数为最大值,并根据商品总数的数量,调用预设的伪随机数生成器,生成与商品总数同等数量的伪随机数,其中,伪随机数是用确定性的算法计算出来的均匀分布的随机数序列。
具体的,以投注总笔数(n)为最大值,根据活动对应的商品总数(m),生成m个去重后值在1-n之间的随机数作为伪随机数,并将生成的伪随机数以X[m]表示;其中,伪随机数的取值范围为(1,n),需要说明的是,调用伪随机数生成器生成伪随机数属于现有技术,在此不做赘述。
106,当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。
判断生成的伪随机数(X[m])是否落在各概率区间内,当伪随机数中的随机数落在概率区间内时,则将与该概率区间对应的用户作为中奖用户,在生成中奖用户的过程中,还需要对中奖用户进行筛选,去除重复的中奖用户,即所有的用户只能中奖一次,不能多次重复中奖。
具体的,遍历用户投注列表listA,并累计用户投注笔数的总和sumTemp,找出sumTemp<=X[i]<=sumTemp+listA[i]值所对应的用户标识号,并记录此用户标识号到中奖用户集合SetA中,其中,listA[i]表示用户投注列表listA中一个排序位置在第i位的用户,i为正整数。例如,用户的投注总笔数n为100,商品总数为10,则调用伪随机数生成器生成10个随机的范围在(1,100)的随机数,且用户A的概率区间为(1,2,3),用户B的概率区间为(4,5,6,7),若产生的伪随机数中存在有范围为(1,3)的随机数,则判断用户A中奖,若产生的伪随机数中存在有范围为(4,7)的随机数,则判断用户B中奖。并从所有的用户中查找出中奖的用户,即在本实施例中,用户获奖的概率是由用户参与活动时的消费次数决定的,当用户参与抽奖活动时投注的笔数多,则中奖概率大。因此,本实施例能够根据当前时间、抽奖结束时间以及活动参与次数等计算并动态设置当前中奖概率,通过动态设置中奖概率调动参与者的积极性以提高抽奖活动在社交以及商业宣传方面的效果。
本实施例针对指定品牌商品设立奖池,在指定时间范围内收集参与用户自愿投注成本及参与总人数,收集结束后,服务器根据参与的投注成本及参与总人数计算每个参与用户最终获奖概率,完成中奖用户匹配及自动发奖的活动,通过透明的活动规则,可预期的中奖概率,提高用户参与热情和竞争意识,同时给会员客户和老顾客提供积分转换的一种途径,最终达到提高商品的品牌知名度,树立企业形象的目的。
另外,本实施例根据活动周期内的参与用户的投注成本,参与总人数及商品库存数量计算中奖概率,然后按概率给用户分配奖品,奖品透明,面对群体明确,有利于企业形象提升和用户服务体验;进一步的,根据商品参与用户的投注信息可以采集到用户购买意向数据,为其他模块主销商品推荐算法提供数据基础;通过配置活动商品的方式,方便运营成本控制,给主销商品提供一个曝光途径,刺激用户的参与欲望;通过展示中奖用户及商品信息,提高商品品牌知名度。
在本发明实施例中,通过获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间,对所有用户的消费行为进行排序,得到行为时间序列;分析每个用户的消费行为在行为时间序列中的位置并计算出每个用户的概率区间;调用预设的伪随机数生成器,生成伪随机数;当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。本发明实施例实现了活动概率的动态调整,避免了人为调整的主观性,使得活动公开透明,从而生成的中奖信息真实且可靠,提高了用户的体验效果和满意度。
请参阅图2,本发明实施例中中奖信息的生成方法的第二个实施例包括:
201,获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间;
活动是一种产品拉新、留存、促活以及转化必不可少的一种方式,本实施例结合抽奖活动为例对技术方案进行说明。现流行的抽奖促销活动,主要使用大转盘或礼盒形式,利用消费者在消费过程中存在的侥幸获大利的心理,吸引消费者参与活动,通过分享链接,邀请新人等方式,增加抽奖次数,获取奖品信息,从而提高产品的知名度,增加商品销售量。
当抽奖活动开始时,智能终端发送用户的登录信息至服务器后,服务器根据登录信息获取用户的基本信息,并在获取到基本信息后,反馈登录成功信息至智能终端。智能终端根据登录成功信息成功登录服务器后,将用户在进行抽奖活动的过程中的活动数据发送至服务器;服务器接收到用户的活动数据后,根据活动数据生成抽奖信息并发送至用户的智能终端。
具体的,服务器根据当前时间和活动结束时间的差值创建延时任务,用于在抽奖活动结束后自动匹配中奖用户并发奖。活动进行期间,由服务器持续收集用户参与的活动数据,并记录用户参与投注的时间,得到用户的消费时间,该活动数据包括该用户参与此次抽奖活动的活动编码,投注笔数,活动对应的商品信息。将收集到的投注数据存储至数据库中,并将该用户对应活动及商品投注总笔数放入缓存中供以查询;投注笔数为用户参与抽奖活动时的消费次数;活动对应的商品信息包括商品总数(m)、商品名称;参与活动的所有用户的投注笔数的总数为用户的消费总次数。
202,根据消费时间,对参与活动的所有用户的消费行为进行排序,得到行为时间序列;
服务器获取每个用户参与活动时的消费行为和用户参与活动时发生该消费行为的消费时间,对消费行为和消费时间建立关联关系,一个消费行为对应一个消费时间。根据该关联关系,对所有的用户的消费行为按照各消费行为对应的消费时间的先后进行排序,从而生成行为时间序列。
203,分析每个用户的消费行为在行为时间序列中的位置;
204,根据消费时间,对行为时间序列中的每个用户的消费行为进行编号,得到行为编号;
205,根据消费次数和位置,以每个用户的首次和末次消费行为对应的行为编号为端点值,构建每个用户的概率区间;
服务器根据该行为时间序列,对每个用户的消费行为在此行为时间序列的位置进行分析,即确定各用户的消费行为对应的消费时间在所有用户的消费行为对应的消费时间的先后位置,并对行为时间序列中的各消费行为进行编号,即以用户投注记录生成时间为顺序,从1开始,对每个用户的消费行为进行编号,即对每笔投注笔数进行编号,得到行为编号,也可以称为投注编号,例如,用户A是最先开始进行投注的用户,且连续投注了三笔,则用户A对应的投注编号为编号1、2和3,用户B是第二个进行投注的用户,且连续投注了四笔,则用户B对应的投注编号为编号4,5,6,7。需要说明的是,一个用户并不一定都是连续投注,因此也存在一个用户的消费行为对应的编号是不连续的。
当抽奖活动结束时,服务器上的延时任务自动执行,通过活动编号和商品信息获取到此次抽奖活动下该商品的投注总笔数(n),对每个用户设立一个标识号,并创建一个用户投注列表(listA),其中,该用户投注列表的类型为ArrayList<Map>,且该用户投注列表中每个用户的标识号为key,用户的投注笔数为value。再创建一个空的中奖用户集合SetA,并根据服务器收集的单个用户的消费次数、消费时间和消费行为在行为时间序列中的位置,构建一个概率区间,其中,一个概率区间是以用户的首次和末次消费行为对应的行为编号即投注编号为端点值进行构建的,例如,用户A的首次和末次消费行为对应的行为编号为1和3,则用户A的概率区间为(1,2,3),同理,用户B的概率区间为(4,5,6,7)。
206,基于商品总数和消费总次数,调用预设的伪随机数生成器,生成伪随机数;
根据得到的概率区间,取消费总次数即投注总笔数为最大值,并根据商品总数的数量,调用预设的伪随机数生成器,生成与商品总数同等数量的伪随机数,其中,伪随机数是用确定性的算法计算出来的均匀分布的随机数序列。
具体的,以投注总笔数(n)为最大值,根据活动对应的商品总数(m),生成m个去重后值在1-n之间的随机数作为伪随机数,并将生成的伪随机数以X[m]表示;其中,伪随机数的取值范围为(1,n),需要说明的是,调用伪随机数生成器生成伪随机数属于现有技术,在此不做赘述。
207,当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。
判断生成的伪随机数(X[m])是否落在各概率区间内,当伪随机数中的随机数落在概率区间内时,则将与该概率区间对应的用户作为中奖用户,在生成中奖用户的过程中,还需要对中奖用户进行筛选,去除重复的中奖用户,即所有的用户只能中奖一次,不能多次重复中奖。
具体的,遍历用户投注列表listA,并累计用户投注笔数的总和sumTemp,找出sumTemp<=X[i]<=sumTemp+listA[i]值所对应的用户标识号,并记录此用户标识号到中奖用户集合SetA中,其中,listA[i]表示用户投注列表listA中一个排序位置在第i位的用户,i为正整数。例如,用户的投注总笔数n为100,商品总数为10,则调用伪随机数生成器生成10个随机的范围在(1,100)的随机数,且用户A的概率区间为(1,2,3),用户B的概率区间为(4,5,6,7),若产生的伪随机数中存在有范围为(1,3)的随机数,则判断用户A中奖,若产生的伪随机数中存在有范围为(4,7)的随机数,则判断用户B中奖。并从所有的用户中查找出中奖的用户,即在本实施例中,用户获奖的概率是由用户参与活动时的消费次数决定的,当用户参与抽奖活动时投注的笔数多,则中奖概率大。因此,本实施例能够根据当前时间、抽奖结束时间以及活动参与次数等计算并动态设置当前中奖概率,通过动态设置中奖概率调动参与者的积极性以提高抽奖活动在社交以及商业宣传方面的效果。
在本发明实施例中,根据消费时间对消费行为进行编号,并以每个用户的首次和末次消费行为对应的行为编号为端点值构建概率区间,采用该概率区间,生成中奖信息,实现了对活动概率的动态调整,提高了中奖信息的可靠性。
请参阅图3,本发明实施例中中奖信息的生成方法的第三个实施例包括:
301,获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间;
当抽奖活动开始时,智能终端发送用户的登录信息至服务器后,服务器根据登录信息获取用户的基本信息,并在获取到基本信息后,反馈登录成功信息至智能终端。智能终端根据登录成功信息成功登录服务器后,将用户在进行抽奖活动的过程中的活动数据发送至服务器;服务器接收到用户的活动数据后,根据活动数据生成抽奖信息并发送至用户的智能终端。
具体的,服务器根据当前时间和活动结束时间的差值创建延时任务,用于在抽奖活动结束后自动匹配中奖用户并发奖。活动进行期间,由服务器持续收集用户参与的活动数据,并记录用户参与投注的时间,得到用户的消费时间,该活动数据包括该用户参与此次抽奖活动的活动编码,投注笔数,活动对应的商品信息。将收集到的投注数据存储至数据库中,并将该用户对应活动及商品投注总笔数放入缓存中供以查询;投注笔数为用户参与抽奖活动时的消费次数;活动对应的商品信息包括商品总数(m)、商品名称;参与活动的所有用户的投注笔数的总数为用户的消费总次数。
302,根据消费时间,对参与活动的所有用户的消费行为进行排序,得到行为时间序列;
服务器获取每个用户参与活动时的消费行为和用户参与活动时发生该消费行为的消费时间,对消费行为和消费时间建立关联关系,一个消费行为对应一个消费时间。根据该关联关系,对所有的用户的消费行为按照各消费行为对应的消费时间的先后进行排序,从而生成行为时间序列。
303,分析每个用户的消费行为在行为时间序列中的位置;
304,根据消费时间,对行为时间序列中的每个用户的消费行为进行编号,得到行为编号;
305,根据消费次数和位置,以每个用户的首次和末次消费行为对应的行为编号为端点值,构建每个用户的概率区间;
服务器根据该行为时间序列,对每个用户的消费行为在此行为时间序列的位置进行分析,即确定各用户的消费行为对应的消费时间在所有用户的消费行为对应的消费时间的先后位置,并对行为时间序列中的各消费行为进行编号,即以用户投注记录生成时间为顺序,从1开始,对每个用户的消费行为进行编号,即对每笔投注笔数进行编号,得到行为编号,也可以称为投注编号,例如,用户A是最先开始进行投注的用户,且连续投注了三笔,则用户A对应的投注编号为编号1、2和3,用户B是第二个进行投注的用户,且连续投注了四笔,则用户B对应的投注编号为编号4,5,6,7。需要说明的是,一个用户并不一定都是连续投注,因此也存在一个用户的消费行为对应的编号是不连续的。
当抽奖活动结束时,服务器上的延时任务自动执行,通过活动编号和商品信息获取到此次抽奖活动下该商品的投注总笔数(n),对每个用户设立一个标识号,并创建一个用户投注列表(listA),其中,该用户投注列表的类型为ArrayList<Map>,且该用户投注列表中每个用户的标识号为key,用户的投注笔数为value。再创建一个空的中奖用户集合SetA,并根据服务器收集的单个用户的消费次数、消费时间和消费行为在行为时间序列中的位置,构建一个概率区间,其中,一个概率区间是以用户的首次和末次消费行为对应的行为编号即投注编号为端点值进行构建的,例如,用户A的首次和末次消费行为对应的行为编号为1和3,则用户A的概率区间为(1,2,3),同理,用户B的概率区间为(4,5,6,7)。
306,调用预设的伪随机数生成器,根据商品总数和消费总次数随机生成两个初始伪随机数;
307,采用预设的异或运算规则,对两个初始伪随机数进行异或运算,生成伪随机数;
将所有用户的消费总次数(n)作为一个最大值,从1开始,构建一个取值范围(1,n),调用预设的伪随机数生成器,在取值范围(1,n)内随机生成与商品总数(m)同等数量的数据位的初始伪随机数(Y[m])和初始伪随机数(Z[m])。其中,Y[m]和Z[m]互不相关。
采用预设的异或运算,对两个初始伪随机数进行异或运算,即对Y[m]和Z[m]进行异或运算,从而生成具有同等数量的数据位,且均匀分布的伪随机数K[m]。其中,由于Y[m]和Z[m]的取值范围为(1,n),则对应的K[m]的取值范围也为(1,n),另外,对两个伪随机数进行异或运算生成另一个伪随机数属于现有技术,在此不做赘述。
308,根据消费次数,对每个用户设置中奖权重;
309,当伪随机数落在概率区间内,判断伪随机数是否落在多个概率区间内;
310,若伪随机数落在多个概率区间内,则根据每个用户的中奖权重,计算伪随机数的概率区间对应的每个用户的中奖概率;
311,根据中奖概率,确定中奖用户并提取中奖用户对应的用户信息,生成中奖信息。
服务器根据每个用户对应的消费次数,对每个用户设置不同的中奖权重,即用户的消费次数多,则该用户对应的中奖权重值越大,其中奖概率越高。判断生成的伪随机数(X[m])是否落在各概率区间内,因为一个用户的消费行为对应的编号可以是不连续的,则生成的概率区间是可重叠的,因此当伪随机数中的随机数落在概率区间内时,需要判断该伪随机数是否落在多个概率区间内,若伪随机数落在多个概率区间内,则根据每个用户对应的中奖权重,计算伪随机数落在概率区间对应的每个用户的中奖概率,并将中奖概率最高的用户作为中奖用户,在生成用户的过程中,还需要对中奖用户进行筛选,去除重复的中奖用户,即中奖用户只能中奖一次,不能多次重复中奖。
具体的,遍历用户投注列表listA,并累计用户投注笔数的总和sumTemp,找出sumTemp<=X[i]<=sumTemp+listA[i]值所对应的用户标识号,并记录此用户标识号到中奖用户集合SetA中,其中,listA[i]表示用户投注列表listA中一个排序位置在第i位的用户,i为正整数。例如,用户的投注总笔数n为100,商品总数为10,则调用伪随机数生成器生成10个随机的范围在(1,100)的随机数,且用户A的概率区间为(1,2,3),用户B的概率区间为(4,5,6,7),若产生的伪随机数中存在有范围为(1,3)的随机数,则判断用户A中奖,若产生的伪随机数中存在有范围为(4,7)的随机数,则判断用户B中奖。并从所有的用户中查找出中奖的用户,即在本实施例中,当商品总数一定时,用户获奖的概率是由用户参与活动时的消费次数决定的,当用户参与抽奖活动时投注的笔数多,则中奖概率大。
进一步的,当生成的中奖用户的个数小于商品总数时,即实际中奖的用户数小于商品总数时,说明用于参与活动的中奖商品还有存余,则从所有的概率区间中剔除与中奖用户对应的概率区间,并生成与商品的剩余数同等数量的伪随机数,判断伪随机数是否落在剩余的概率区间内,即再次进行抽奖,直至中奖商品能够被参与活动的用户抽取完。
具体的,如果SetA容量(k)小于商品总数(m),则从用户投注列表listA中剔除对应的中奖用户,并将对应的中奖用户记录于预设的中奖用户列表listB中;计算得到剩余商品的库存数量为m-k,并从原来的投注总笔数中剔除中奖用户的投注笔数,得到投注总笔数为sum(listB,value),从所有的概率区间中剔除与中奖用户对应的概率区间;然后再以投注笔数sum(listB,value)为最大值,生成m-k个去重后值在(1,sum(listB,value))新的伪随机数X[m-k]。判断新的伪随机数是否落在剩余的概率区间内,查找出中奖用户。重复执行上述步骤,直至所有的商品能够都被参与活动的用户中奖领取。
当中奖用户的个数小于商品总数时,还可以设定从参与活动的投注总笔数中剔除已中奖的用户的投注笔数,然后再对剩下的用户的投注笔数进行重新编号,再划分为新的概率区间,并调用伪随机数生成器,生成m-k个伪随机数。判断该伪随机数是否落在新的概率区间内,查找中奖用户。重复执行上述步骤,直至所有的商品能够都被参与活动的用户中奖领取。
当生成的中奖用户的个数等于商品总数时,则表明用于抽奖活动的商品已经被全部领取完毕。从SetA中提取与中奖用户对应的用户信息,并将用户信息封装成为消息体发送给服务器及智能终端,即根据SetA中的中奖用户标识号及活动对应的商品信息,记录各中奖用户的中奖信息,供以服务器和智能终端进行查询,并将中奖信息封装成为消息体(MQ消息),通过RocketMQ消息中间件发送MQ消息,其中,MQ消息包括发奖和中奖通知。
在本发明实施例中,对用户按照消费次数设置中奖权重,并根据该中奖权重计算中奖概率,即消费次数越多中奖概率越大,保证了中奖信息的真实性,提高了用户的参与度。
请参阅图4,本发明实施例中中奖信息的生成方法的第四个实施例包括:
401,获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间;
402,根据消费时间,对参与活动的所有用户的消费行为进行排序,得到行为时间序列;
403,分析每个用户的消费行为在行为时间序列中的位置;
404,根据消费时间,对行为时间序列中的每个用户的消费行为进行编号,得到行为编号;
405,根据消费次数和位置,以每个用户的首次和末次消费行为对应的行为编号为端点值,构建每个用户的概率区间;
406,调用预设的伪随机数生成器,根据商品总数和消费总次数随机生成两个初始伪随机数;
407,采用预设的异或运算规则,对两个初始伪随机数进行异或运算,生成伪随机数;
408,判断伪随机数中各随机数是否相同;
409,若伪随机数中包含有相同的随机数,则剔除相同的随机数;
对生成的伪随机数中的各随机数进行相同性检测,即判断伪随机数中的各随机数是否相同,若存在有相同的随机数,则剔除重复的随机数,即对伪随机数进行去重处理,在经过去重后得到的伪随机数中各随机数的个数不大于商品总数。
410,当伪随机数落在概率区间内,则提取与概率区间对应的用户,并判断所提取的与概率区间对应的用户是否相同;
411,若所提取的与概率区间对应的用户相同,则剔除相同的用户,并将不相同的用户作为中奖用户;
412,提取中奖用户的用户信息,并将用户信息封装成为中奖消息。
服务器根据每个用户对应的消费次数,对每个用户设置不同的中奖权重,即用户的消费次数多,则该用户对应的中奖权重值越大,其中奖概率越高。判断生成的伪随机数(X[m])是否落在各概率区间内,因为一个用户的消费行为对应的编号可以是不连续的,则生成的概率区间是可重叠的,因此当伪随机数中的随机数落在概率区间内时,需要判断该伪随机数是否落在多个概率区间内,若伪随机数落在多个概率区间内,则根据每个用户对应的中奖权重,计算伪随机数落在概率区间对应的每个用户的中奖概率,并将中奖概率最高的用户作为中奖用户,在生成用户的过程中,还需要对中奖用户进行筛选,去除重复的中奖用户,即中奖用户只能中奖一次,不能多次重复中奖。
具体的,遍历用户投注列表listA,并累计用户投注笔数的总和sumTemp,找出sumTemp<=X[i]<=sumTemp+listA[i]值所对应的用户标识号,并记录此用户标识号到中奖用户集合SetA中,其中,listA[i]表示用户投注列表listA中一个排序位置在第i位的用户,i为正整数。例如,用户的投注总笔数n为100,商品总数为10,则调用伪随机数生成器生成10个随机的范围在(1,100)的随机数,且用户A的概率区间为(1,2,3),用户B的概率区间为(4,5,6,7),若产生的伪随机数中存在有范围为(1,3)的随机数,则判断用户A中奖,若产生的伪随机数中存在有范围为(4,7)的随机数,则判断用户B中奖。并从所有的用户中查找出中奖的用户,即在本实施例中,当商品总数一定时,用户获奖的概率是由用户参与活动时的消费次数决定的,当用户参与抽奖活动时投注的笔数多,则中奖概率大。
提取出中奖的用户,并判断各用户是否相同,即检测是否存在有多次中奖的用户,当出现有重复的用户时,则剔除重复的用户。在本实施例中,通过sumTemp<=X[i]<=sumTemp+listA[i],实现对中奖用户的去重处理。
进一步的,当生成的中奖用户的个数小于商品总数时,即实际中奖的用户数小于商品总数时,说明用于参与活动的中奖商品还有存余,则从所有的概率区间中剔除与中奖用户对应的概率区间,并生成与商品的剩余数同等数量的伪随机数,判断伪随机数是否落在剩余的概率区间内,即再次进行抽奖,直至中奖商品能够被参与活动的用户抽取完。
具体的,如果SetA容量(k)小于商品总数(m),则从用户投注列表listA中剔除对应的中奖用户,并将对应的中奖用户记录于预设的中奖用户列表listB中;计算得到剩余商品的库存数量为m-k,并从原来的投注总笔数中剔除中奖用户的投注笔数,得到投注总笔数为sum(listB,value),从所有的概率区间中剔除与中奖用户对应的概率区间;然后再以投注笔数sum(listB,value)为最大值,生成m-k个去重后值在(1,sum(listB,value))新的伪随机数X[m-k]。判断新的伪随机数是否落在剩余的概率区间内,查找出中奖用户。重复执行上述步骤,直至所有的商品能够都被参与活动的用户中奖领取。
当中奖用户的个数小于商品总数时,还可以设定从参与活动的投注总笔数中剔除已中奖的用户的投注笔数,然后再对剩下的用户的投注笔数进行重新编号,再划分为新的概率区间,并调用伪随机数生成器,生成m-k个伪随机数。判断该伪随机数是否落在新的概率区间内,查找中奖用户。重复执行上述步骤,直至所有的商品能够都被参与活动的用户中奖领取。
当生成的中奖用户的个数等于商品总数时,则表明用于抽奖活动的商品已经被全部领取完毕。从SetA中提取与中奖用户对应的用户信息,并将用户信息封装成为消息体发送给服务器及智能终端,即根据SetA中的中奖用户标识号及活动对应的商品信息,记录各中奖用户的中奖信息,供以服务器和智能终端进行查询,并将中奖信息封装成为消息体(MQ消息),通过RocketMQ消息中间件发送MQ消息,其中,MQ消息包括发奖和中奖通知。
在本发明实施例中,步骤401-407与上述的中奖信息的生成方法中的第三个实施例的步骤301-307一致,在此不做赘述。
在本发明实施例中,对生成的伪随机数和中奖用户分别进行相同性比较,剔除相同的伪随机数和中奖用户,调整活动概率,确保活动的公平性,从而提高用户的体验效果。
上面对本发明实施例中的中奖信息的生成方法进行了描述,下面对本发明实施例中的中奖信息的生成装置进行描述,请参照图5,本发明实施例中的中奖信息的生成装置的一个实施例包括:
获取模块501,用于获取用户参与活动时的活动数据,并记录所述用户参与活动时发生消费行为的消费时间,其中,所述活动数据包括每个所述用户发生消费行为的消费次数、所述用户的消费总次数以及所述活动对应的商品总数;
排序模块502,用于根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列;
分析模块503,用于分析每个所述用户的消费行为在所述行为时间序列中的位置;
计算模块504,用于根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间;
生成模块505,用于基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数;
提取模块506,用于当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息。
在本发明实施例中,中奖信息的生成装置通过获取用户参与活动时的活动数据,并记录用户参与活动时发生消费行为的消费时间,对所有用户的消费行为进行排序,得到行为时间序列;分析每个用户的消费行为在行为时间序列中的位置并计算出每个用户的概率区间;调用预设的伪随机数生成器,生成伪随机数;当伪随机数落在概率区间内,则提取与概率区间对应的用户及其用户信息,生成中奖信息。本发明实施例实现了活动概率的动态调整,避免了人为调整的主观性,使得活动公开透明,从而生成的中奖信息真实且可靠,提高了用户的体验效果和满意度。
请参阅图6,本发明实施例中的中奖信息的生成装置的另一个实施例包括:
获取模块501,用于获取用户参与活动时的活动数据,并记录所述用户参与活动时发生消费行为的消费时间,其中,所述活动数据包括每个所述用户发生消费行为的消费次数、所述用户的消费总次数以及所述活动对应的商品总数;
排序模块502,用于根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列;
分析模块503,用于分析每个所述用户的消费行为在所述行为时间序列中的位置;
计算模块504,用于根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间;
生成模块505,用于基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数;
提取模块506,用于当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息。
可选的,所述计算模块504具体用于:
根据所述消费时间,对所述行为时间序列中的每个所述用户的消费行为进行编号,得到行为编号;
根据所述消费次数和所述位置,以每个所述用户的首次和末次消费行为对应的行为编号为端点值,构建每个所述用户的概率区间。
可选的,所述生成模块505具体用于:
调用预设的伪随机数生成器,根据所述商品总数和所述消费总次数随机生成两个初始伪随机数;
采用预设的异或运算规则,对两个所述初始伪随机数进行异或运算,生成伪随机数,其中,所述伪随机数中随机数的个数不大于所述商品总数。
可选的,所述提取模块506具体用于:
根据所述消费次数,对每个所述用户设置中奖权重;当所述伪随机数落在所述概率区间内,判断所述伪随机数是否落在多个所述概率区间内;
若所述伪随机数落在多个所述概率区间内,则根据每个所述用户的中奖权重,计算所述伪随机数的所述概率区间对应的每个用户的中奖概率;
根据所述中奖概率,确定中奖用户并提取所述中奖用户对应的用户信息,生成中奖信息。
可选的,所述排序模块502具体用于:
获取每个所述用户对应的消费行为,并根据所述用户参与活动时发生消费行为的消费时间,建立所述消费行为与所述消费时间的关联关系;
根据所述关联关系,对所有所述用户的所述消费行为按照所述消费时间的先后顺序进行排序,生成行为时间序列。
可选的,所述中奖信息的生成装置还包括判断模块507,其具体用于:
判断所述伪随机数中各随机数是否相同;
若所述伪随机数中各随机数相同,则剔除相同的随机数。
可选的,所述提取模块506还具体用于:
当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户,并判断所提取的与所述概率区间对应的用户是否相同;
若所提取的与所述概率区间对应的用户相同,则剔除相同的用户,并将不相同的用户作为中奖用户;
提取所述中奖用户的用户信息,并将所述用户信息封装成为中奖消息。
在本发明实施例中,中奖信息的生成装置根据消费次数设置中奖权重,根据该中奖权重计算中奖概率,并剔除相同的用户,实现对活动概率的动态调整,确保活动公开透明,提高了用户的体验效果。
请参阅图7,下面从硬件处理的角度对本发明实施例中的中奖信息的生成设备的一个实施例进行详细描述。
图7是本发明实施例提供的一种中奖信息的生成设备的结构示意图,该中奖信息的生成设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对中奖信息的生成设备700中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在中奖信息的生成设备700上执行存储介质730中的一系列指令操作。
中奖信息的生成设备700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口760,和或或,一个或一个以上操作系统731,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图7示出的中奖信息的生成设备结构并不构成对中奖信息的生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述中奖信息的生成方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种中奖信息的生成方法,其特征在于,所述中奖信息的生成方法包括:
获取用户参与活动时的活动数据,并记录所述用户参与活动时发生消费行为的消费时间,其中,所述活动数据包括每个所述用户发生消费行为的消费次数、所述用户的消费总次数以及所述活动对应的商品总数;
根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列;
分析每个所述用户的消费行为在所述行为时间序列中的位置;
根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间;
基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数;
当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息。
2.根据权利要求1所述的中奖信息的生成方法,其特征在于,所述根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间包括:
根据所述消费时间,对所述行为时间序列中的每个所述用户的消费行为进行编号,得到行为编号;
根据所述消费次数和所述位置,以每个所述用户的首次和末次消费行为对应的行为编号为端点值,构建每个所述用户的概率区间。
3.根据权利要求2所述的中奖信息的生成方法,其特征在于,所述基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数包括:
调用预设的伪随机数生成器,根据所述商品总数和所述消费总次数随机生成两个初始伪随机数;
采用预设的异或运算规则,对两个所述初始伪随机数进行异或运算,生成伪随机数,其中,所述伪随机数中随机数的个数不大于所述商品总数。
4.根据权利要求3所述的中奖信息的生成方法,其特征在于,所述当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息包括:
根据所述消费次数,对每个所述用户设置中奖权重;
当所述伪随机数落在所述概率区间内,判断所述伪随机数是否落在多个所述概率区间内;
若是,则根据每个所述用户的中奖权重,计算所述伪随机数的所述概率区间对应的每个用户的中奖概率;
根据所述中奖概率,确定中奖用户并提取所述中奖用户对应的用户信息,生成中奖信息。
5.根据权利要求1-4中任一项所述的中奖信息的生成方法,其特征在于,所述根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列包括:
获取每个所述用户对应的消费行为,并根据所述用户参与活动时发生消费行为的消费时间,建立所述消费行为与所述消费时间的关联关系;
根据所述关联关系,对所有所述用户的所述消费行为按照所述消费时间的先后顺序进行排序,生成行为时间序列。
6.根据权利要求1-4中任一项所述的中奖信息的生成方法,其特征在于,在所述基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数之后,还包括:
判断所述伪随机数中各随机数是否相同;
若是,则剔除相同的随机数。
7.根据权利要求1-4中任一项所述的中奖信息的生成方法,其特征在于,所述当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息还包括:
当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户,并判断所提取的与所述概率区间对应的用户是否相同;
若是,则剔除相同的用户,并将不相同的用户作为中奖用户;
提取所述中奖用户的用户信息,并将所述用户信息封装成为中奖消息。
8.一种中奖信息的生成装置,其特征在于,所述中奖信息的生成装置包括:
获取模块,用于获取用户参与活动时的活动数据,并记录所述用户参与活动时发生消费行为的消费时间,其中,所述活动数据包括每个所述用户发生消费行为的消费次数、所有所述用户的消费总次数以及所述活动对应的商品总数;
排序模块,用于根据所述消费时间,对参与所述活动的所有所述用户的消费行为进行排序,得到行为时间序列;
分析模块,用于分析每个所述用户的消费行为在所述行为时间序列中的位置;
计算模块,用于根据所述消费次数、所述消费时间和所述位置,计算出每个所述用户的概率区间;
生成模块,用于基于所述商品总数和所述消费总次数,调用预设的伪随机数生成器,生成伪随机数;
提取模块,用于当所述伪随机数落在所述概率区间内,则提取与所述概率区间对应的用户及其用户信息,生成中奖信息。
9.一种中奖信息的生成设备,其特征在于,所述中奖信息的生成设备包括:
存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述中奖信息的生成设备执行如权利要求1-7中任一项所述的中奖信息的生成方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1-7中任一项所述的中奖信息的生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110691853.4A CN113421115A (zh) | 2021-06-22 | 2021-06-22 | 中奖信息的生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110691853.4A CN113421115A (zh) | 2021-06-22 | 2021-06-22 | 中奖信息的生成方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113421115A true CN113421115A (zh) | 2021-09-21 |
Family
ID=77789902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110691853.4A Pending CN113421115A (zh) | 2021-06-22 | 2021-06-22 | 中奖信息的生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113421115A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114712851A (zh) * | 2022-03-25 | 2022-07-08 | 深圳鼎鸿保龄球有限公司 | 游戏设计方法、保龄球计分游戏系统以及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729782A (zh) * | 2014-01-09 | 2014-04-16 | 吴操 | 基于公众平台的产品抽奖方法 |
CN108335401A (zh) * | 2018-01-02 | 2018-07-27 | 佛山市所能网络有限公司 | 基于社交软件平台的分享抽奖系统 |
CN108597092A (zh) * | 2018-05-04 | 2018-09-28 | 广州所能网络有限公司 | 一种互联网抽奖系统及方法 |
CN109685559A (zh) * | 2018-12-14 | 2019-04-26 | 平安城市建设科技(深圳)有限公司 | 基于大数据分析的抽奖方法、装置、设备及存储介质 |
-
2021
- 2021-06-22 CN CN202110691853.4A patent/CN113421115A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729782A (zh) * | 2014-01-09 | 2014-04-16 | 吴操 | 基于公众平台的产品抽奖方法 |
CN108335401A (zh) * | 2018-01-02 | 2018-07-27 | 佛山市所能网络有限公司 | 基于社交软件平台的分享抽奖系统 |
CN108597092A (zh) * | 2018-05-04 | 2018-09-28 | 广州所能网络有限公司 | 一种互联网抽奖系统及方法 |
CN109685559A (zh) * | 2018-12-14 | 2019-04-26 | 平安城市建设科技(深圳)有限公司 | 基于大数据分析的抽奖方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114712851A (zh) * | 2022-03-25 | 2022-07-08 | 深圳鼎鸿保龄球有限公司 | 游戏设计方法、保龄球计分游戏系统以及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101733458B1 (ko) | 게임 로그 분석 방법 | |
Lee et al. | Game data mining competition on churn prediction and survival analysis using commercial game log data | |
CN106529968A (zh) | 一种基于交易数据的客户分类方法及其系统 | |
CN107103097A (zh) | 基于区块链技术的抽签方法和终端设备 | |
CN103729782A (zh) | 基于公众平台的产品抽奖方法 | |
CN103489120A (zh) | 一种积分销售网络抽奖系统及其实现方法 | |
EP2885773A1 (en) | Global lottery | |
CN113421115A (zh) | 中奖信息的生成方法、装置、设备及存储介质 | |
CN113569199B (zh) | 抽奖数据处理方法、系统、装置及可读存储介质 | |
EP3714953A1 (en) | Interactive gaming system and method for playing a remotely accessible interactive game | |
CN110941680B (zh) | 一种数据处理方法、装置及存储介质 | |
KR20100118042A (ko) | 복권번호의 그룹화와 당첨그룹의 추세분석을 통한 예측당첨번호제공시스템 | |
CN108335401A (zh) | 基于社交软件平台的分享抽奖系统 | |
KR102529564B1 (ko) | 복수 개 응모번호 중에서 당첨번호 추첨방법 | |
US20120123566A1 (en) | Systems and methods for recording and displaying gaming metrics for players and products incorporating the same | |
CA2541439C (en) | An apparatus and method for allocating a prize | |
KR20200076079A (ko) | 인공지능을 활용한 로또 번호 추출 방법 | |
CN112668049B (zh) | 一种多方联合计算的联盟链处理方法 | |
KR101355493B1 (ko) | 온라인 이벤트 시스템에서의 당첨자 선정 방법 및 이를 위한 장치 | |
CN114862173A (zh) | 店铺数据的处理方法、装置、计算机设备和存储介质 | |
KR101309185B1 (ko) | 온라인 아이템 추첨 시스템 및 그 방법 | |
CN112651820A (zh) | 一种案件信息处理方法、装置、服务器及存储介质 | |
CN107909481B (zh) | 一种投资共建展示与认股信息分析系统及方法 | |
CN110956494A (zh) | 虚拟物品的投放方法、装置、存储介质和电子装置 | |
US20210106911A1 (en) | Computerized gaming system and method of operating thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |