CN113706325B - 一种面向事件社交网络的规划方法及系统 - Google Patents
一种面向事件社交网络的规划方法及系统 Download PDFInfo
- Publication number
- CN113706325B CN113706325B CN202110876077.5A CN202110876077A CN113706325B CN 113706325 B CN113706325 B CN 113706325B CN 202110876077 A CN202110876077 A CN 202110876077A CN 113706325 B CN113706325 B CN 113706325B
- Authority
- CN
- China
- Prior art keywords
- event
- user
- preference
- vector
- maxheap
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 239000013598 vector Substances 0.000 claims abstract description 117
- 239000011159 matrix material Substances 0.000 claims abstract description 56
- 238000005304 joining Methods 0.000 claims abstract description 5
- 238000009826 distribution Methods 0.000 claims description 11
- 239000000203 mixture Substances 0.000 claims description 7
- 239000000126 substance Substances 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 2
- 238000011524 similarity measure Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 6
- 238000012163 sequencing technique Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 17
- 238000003860 storage Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000009194 climbing Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 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
- 238000013138 pruning Methods 0.000 description 1
- 238000011160 research Methods 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向事件社交网络的规划方法及系统,为基于事件的社交网络构造兴趣度效应、用户偏好、事件冲突矩阵,用户容量、事件容量、事件类型向量和最大堆MaxHeap,为每个用户生成偏好队列集合并对偏好队列进行排序。接下来遍历每个用户,将收益度高的规划加入最大堆MaxHeap。接下来,对最大堆中的规划进行遍历操作直到最大堆MaxHeap为空。遍历操作为判断能否将当前收益度最高的加入规划并将用户下一个可能的收益规划加入最大堆MaxHeap。最终返回整体收益最大且满足用户、事件容量,避免用户所参与事件相互冲突的规划作为输出结果。本方法提高了用户在基于事件社交网络中参与事件的用户体验。
Description
技术领域
本发明属于计算机数据挖掘技术领域,具体涉及一种面向事件社交网络的规划方法及系统。
背景技术
近年来,诸如Meetup、豆瓣同城等基于社交事件的社交网络(Event-based SocialNetworks)作为一种提供在线社交事件信息的社交网站,越来越受到人们的青睐。EBSN是一种新型的社交网络,它的核心竞争力是提供给用户了一个能够创建、发布和组织社交事件(Social Events)的在线平台来促进具有相似兴趣度的用户进行线下交流。例如,在加入Meetup后,用户可以通过发布一个社交事件(爬山、聚会等等)来吸引具有相似兴趣的用户参与该事件,来获得愉快的用户体验。
EBSN每天都会产生大量的事件。例如Meetup的已注册用户超过0.25亿,平均每天发布的事件数超过10000个。因此,在EBSN中如何根据用户对事件的感兴趣程度,合理的规划用户所参与事件来提高用户的满意程度是当前研究的热点内容之一。目前很多规划算法通过考虑部分影响规划收益的因素包括用户可参与事件数量,事件的容纳人数,事件之间的冲突关系,用户参与事件的收益等等来对用户参与事件的行为进行规划。这些算法的评判标准大多集中在计算“总效应值”上,即将所有用户的所有规划集中事件的兴趣值相加,该值越大,则表明该规划算法的表现越好。
然而,这些规划算法没有对事件的类型以及规划的公平性进行深入的研究,存在着以下问题:
首先,目前规划算法通常考虑用户的兴趣标签与事件的描述,通过计算户兴趣标签栏和事件描述标签栏中两组标签的相似度,用效用值(utility score)来衡量每个用户对每个事件的感兴趣程度。算法整体的规划目标为在考虑事件冲突的基础上使所有规划中的效用值之和最大。这种规划方法没有考虑到事件类型产生的影响,算法很难对用户对不同类型事件的偏好进行考虑,进而规划相似的事件给用户,导致用户的效用值降低,进而降低整体算法规划的效用值。
其次,这些规划算法没有考虑的用户事件容量的不均衡型,容易导致对感兴趣事件容纳量低的用户在规划上少于容纳量的用户,导致出现规划的公平性不足的问题。
发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种面向事件社交网络的规划方法及系统,解决规划算法中的未考虑到用户事件类型偏好和公平性的问题,从而提高规划的人均效用。
本发明采用以下技术方案:
一种面向事件社交网络的规划方法,包括以下步骤:
S1、定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;
S2、利用步骤S1得到的用户偏好矩阵P和事件类型向量Vt,对每个用户uj构建一个偏好队列集合Qi;
S4、根据步骤S1中的最大化目标MaxAvgSum(M)、步骤S3中排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到步骤S1构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;
S5、从步骤S4或步骤S6得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从步骤S1得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将步骤S3排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;
S6、根据步骤S5得到的用户ui和步骤S1得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;
S7、重复步骤S5和步骤S6直到最大堆MaxHeap为空;
S8、将步骤S7所得到的规划M作为基于事件社交网络的冲突事件规划方法的结果。
具体的,步骤S1中,最大化目标MaxAvgSum(M)计算如下:
其中,β为超参数,u为用户,U为用户集合,disSim为概率分布相似度度量函数,为用户u期望和当前的事件偏好概率分布,m(u,v)为该用户u事件v是否被规划的取值,sim(lu,lv)为用户u和v的兴趣偏好相似度,cu为用户u的容量。
进一步的,最大化目标MaxAvgSum(M)满足条件如下:
m(u,v)={0,1}即每个用户对每个事件的规划取值只有0代表不规划对应用户参与对应事件和1代表参与;
规划给任何用户的事件互相之间不冲突。
具体的,步骤S1中,用户ui对事件vj的兴趣度效用值Ii,j为:
用户ui对事件类型为j的期望数量Pi,j为:
事件vi和事件vj是否为冲突事件对Ci,j为:
其中,CF为冲突事件对集合;
具体的,步骤S2中,设事件为vj,事件类型为t,若Pi,j>0,Pi,j表示用户ui对事件类型为j的期望数量,若偏好队列集合Qi中不存在该事件类型t的偏好队列则创建该偏好队列并将事件j加入该事件类型t的偏好队列中,否则直接将事件vj加入该事件类型t的偏好队列中;
具体的,步骤S4中,对偏好队列集合中每一个不为空的子队列的取出第一个事件设置为k,对应收益Gaini,k为:
进一步的,当前收益Gaini为:
其中,β为超参数,JSsimilarity为Jensen-Shannon相似度,为预期偏好向量,为已规划偏好向量,Mi,j为用户ui是否规划事件vj,Ii,j为用户ui对事件vj的兴趣度效用值,代表用户ui的事件容纳量,n为待安排事件数,j为当前遍历值。
具体的,步骤S5中,若事件vj为空或Gaini,j<0,则将对应用户的偏好队列集合移除,代表已经没有任何规划能进一步提高对应用户的偏好效用值;否则将元组(ui,vj,Gaini,j)加入最大堆MaxHeap中。
本发明的另一技术方案是,一种面向事件社交网络的规划系统,包括:
向量模块,定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;
集合模块,利用向量模块得到的用户偏好矩阵P和事件类型向量Vt,对每个用户ui构建一个偏好队列集合Qi;
事件模块,根据向量模块中的最大化目标MaxAvgSum(M)、排序模块中排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到向量模块构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;
判断模块,从事件模块或规划模块得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从向量模块得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将排序模块排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;
规划模块,根据判断模块得到的用户ui和向量模块得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;
执行模块,重复判断模块和规划模块直到最大堆MaxHeap为空;
规划模块,将执行模块所得到的规划M作为基于事件社交网络的冲突事件规划方法的结果。
与现有技术相比,本发明至少具有以下有益效果:
本发明一种面向事件社交网络的规划方法,定义最大化目标MaxAvgSum(M),通过累计规划对用户的兴趣度度量用户的兴趣度偏好、通过计算规划对用户的事件类型向量和期望的事件类型偏好差异来度量用户的事件类型偏好满足程度,最后让规划能够提高规划的人均效用值;本规划方法构造了兴趣度效应、用户偏好、事件冲突矩阵,用户容量、事件容量、事件类型向量、最大堆MaxHeap和用户偏好队列集合减少算法运行所需时间;本规划方法遍历过程中利用用户偏好队列集合和当前用户偏好进行剪枝操作,减少算法所需运行时间。
进一步的,设置最大化目标MaxAvgSum(M)的意义使产生的安排在考虑用户兴趣度的同事兼顾事件类型收益。
进一步的,最大化目标MaxAvgSum(M)满足条件设置的目的是为了防止方法产生的规划不符合用户或者事件的容量要求。
进一步的,Ii,j、Pi,j、Ci,j、容量向量及类型向量设置的目的是让后续步骤查找更加快速。
进一步的,设置P矩阵的目的是计算用户的偏好向量。
进一步的,对偏好队列集合中每一个不为空的子队列的取出第一个事件设置为k,对应收益Gaini,k设置的目的是减少遍历过程的次数。
进一步的,当前收益Gaini设置的目的是计算当前用户收益最大的安排。
进一步的,若事件vj为空或Gaini,j<0,则将对应用户的偏好队列集合移除,代表已经没有任何规划能进一步提高对应用户的偏好效用值;否则将元组(ui,vj,Gaini,j)加入最大堆MaxHeap中设置的目的是保留只可能产生收益增益的安排,减少运算时间。
综上所述,本发明考虑到用户事件类型偏好和公平性的问题,提高规划的人均效用。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为兴趣度效应、用户偏好、事件冲突矩阵,用户容量、事件容量、事件类型向量示意图;
图2为用户2的偏好队列集合Q2和排序完的偏好队列集合Q2示意图;
图3为初始的最大堆MaxHeap示意图;
图4为初始化建立最大堆中用户2计算最大堆MaxHeap元组的过程示意图;
图5初始状态时的规划M和最大堆MaxHeap示意图
图6加入m(u3,v5)=1的规划M和最大堆MaxHeap示意图;
图7加入m(u2,v4)=1的规划M和最大堆MaxHeap示意图;
图8移除用户2的过程示意图;
图9最终返回的规划M示意图;
图10面向事件社交网络的规划方法流程图;
图11为仿真实验图,其中,(a)为用户数量m=500,(b)为事件数量n=500。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在附图中示出了根据本发明公开实施例的各种结构示意图。这些图并非是按比例绘制的,其中为了清楚表达的目的,放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
本发明提供了一种面向事件社交网络的规划方法,为基于事件的社交网络构造兴趣度效应、用户偏好、事件冲突矩阵,用户容量、事件容量、事件类型向量和最大堆MaxHeap,为每个用户生成偏好队列集合并对偏好队列进行排序。接下来遍历每个用户,将收益度高的规划加入最大堆MaxHeap。接下来,对最大堆中的规划进行遍历操作直到最大堆MaxHeap为空。遍历操作为判断能否将当前收益度最高的加入规划并将用户下一个可能的收益规划加入最大堆MaxHeap。最终返回整体收益最大且满足用户、事件容量,避免用户所参与事件相互冲突的规划作为输出结果。本方法对事件社交网络的规划方法进行建模,考虑到了用户对事件的类别偏好并提高了基于事件社交网络平台对用户和事件进行规划的公平性,提高了用户在基于事件社交网络中参与事件的用户体验。
定义事件v=<lv,cv,tv>,其中,且lv是一个d维向量用来代表该事件的属性信息,cv∈[1,2,3,…]代表事件的容纳量即所规划给该事件的用户数量不能超过该量,tv∈[1,2,…,t]代表该事件的类型信息其中t代表总的类型数量。
定义用户u=<lu,cu,pu>,其中,且 lu是一个d维向量用来代表该用户的属性信息,cu∈[1,2,3,…]代表用户的容纳量即所规划给该用户的事件数量不能超过该量,而且 pu代表用户的偏好向量,代表用户对事件类型为i的事件的期望个数,代表用户对所有类型事件的期望数量之和应该等同于用户的事件容纳量。
冲突事件对,代表一对事件{ei,ej},最多只能给用户规划参与冲突事件对中的一个事件,但不能两者全都规划给同一个用户。
兴趣效用值,代表若规划用户u参与事件v所能获得到的兴趣度收益,由相似性函数sim(lv,lv)∈[0,1]通过用户隐藏属性向量lu以及事件隐藏属性向量lv来度量,具体来说,用以下公式来度量:
分布相似性函数disSim(p1,p2)计算公式如下:
disSim(p1,p2)=JSDisSim(p1,p2)
其中,JSDisSim(p1,p2)代表两个概率分布p1,p2的Jensen–Shannon相似度,JS(p1,p2)代表两个概率分布p1,p2的Jensen–Shannon散度,KL(p1,p2)代表两个概率分布p1,p2的Kullback–Leibler散度。
请参阅图10,本发明一种面向事件社交网络的规划方法,包括以下步骤:
定义基于事件社交网络的用户事件参与规划问题及其相关概念;
给定一系列事件V,事件V中每个事件v都拥有最大可容纳用户数量cv,隐藏属性向量lv和事件类型tv,一系列用户U,每个用户u都有最大可容纳事件数量cu,隐藏属性向量lu和事件类型期望偏好向量pu,一系列冲突事件对CF,相似性函数sim(.,.),分布相似性函数disSim(.,.),优化权重系数β∈[0,1]。
S1、为了解决基于事件社交网络的用户事件参与规划问题,设规划用户与事件之间的参与来最大化目标MaxAvgSum(M),其计算公式如下:
满足条件如下:
m(u,v)={0,1}即每个用户对每个事件的规划取值只有0代表不规划该用户参与该事件和1代表参与。
不存在一个这样的三元组(vi,vj,uk)满足m(vi,uk)=1,m(vj,uk)=1且{vi,vj}∈CF,即规划给任何用户的事件互相之间都是不冲突的。
设基于事件社交网络的用户数的用户数量为m,待安排事件数为n,事件类别数t,构造用户事件兴趣度效用矩阵I,其大小为m×n,计算公式如下:
其中,Ii,j代表用户ui对事件vj的兴趣度效用值。
构造用户偏好矩阵P,其大小为m×n,计算公式如下:
其中,Pi,j代表用户ui对事件类型为j的期望数量。
构造事件冲突矩阵C,其大小为n×n,计算公式如下:
其中,Ci,j代表事件vi和事件vj是否为冲突事件对。
假设基于事件社交网络的用户事件参与规划问题中,用户数量为4,事件数量为3,事件类别数量为3,β=0.5,所随机生成的用户与事件隐藏向量所产生的兴趣度效用矩阵,用户偏好矩阵,事件冲突矩阵,用户容量向量,事件容量向量,事件类型向量如图1所示。
构建一个最大堆MaxHeap,其中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值为堆的比较依据,该元组代表假如能将事件vj规划给用户ui当前所能增加的收益为Gaini,j;
S2、对基于事件的社交网络的每个用户ui构建一个偏好队列集合Qi;接下来对每一个用户遍历所有事件;设该事件为vj,事件类型为t,若Pi,j>0,若偏好队列集合Qi中不存在该事件类型t的偏好队列则创建该偏好队列并将事件j加入该事件类型t的偏好队列中,否则直接将事件vj加入该事件类型t的偏好队列中;若Pi,j=0,若偏好队列集合Qi中不存在其他事件类型的偏好队列则创建其他事件类型的偏好队列并将事件j加入该否则直接将该事件vj加入该用户的其他事件队列
S3、遍历每个用户的偏好队列集合;
图2展示了用户2的偏好队列集合Q2,和排序完的偏好队列集合Q2。
S4、遍历每个用户,设遍历到的用户为用户ui,访问其下一个当前收益最大的事件,假设该事件为vj,预期收益设置为Gaini,j,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到最大堆MaxHeap中,当加入完所有的元组之后,对最大堆MaxHeap进行初始化建堆;
访问用户i的下一个当前收益最大的事件的方法和收益Gaini,j的计算如步骤S6所示。图3显示了初始的最大堆MaxHeap和建堆后的最大堆MaxHeap。
假设当前用户为ui,规划矩阵为M,该用户当前的偏好队列集合Qi,首先计算已规划偏好向量(该向量长度为t,其中),其预期偏好向量为计算其当前收益 对偏好队列集合中每一个不为空的子队列的取出第一个事件设置为k,计算其其中为假设m(ui,vk)=1所计算的当前收益值。j为所有可能规划事件中使Gaini,k取得最大值的事件,记为vj,收益记为Gaini,j;
图4显示了初始化建堆过程中用户2计算vj和Gaini,j的过程。
S5、从堆中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,判断规划m(ui,vj)=1是否合法,即向规划矩阵中添加该规划之后是否还满足限制条件,即若满足上述条件,则将规划m(ui,vj)=1加入规划M中,同时将该用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素即当前事件j从队列当中移除;否则丢弃该元组,直接进入下一步进行操作;
图5显示了初始状态时的规划M和最大堆MaxHeap。
S6、若即该用户的容量还有剩余,寻求将下一个可能的事件加入堆,通过上述步骤S6寻求用户ui的下一个可能规划,得到事件vj,和收益Gaini,j;若事件vj为空或Gaini,j<0,则将该用户的偏好队列集合移除,代表已经没有任何规划能进一步提高该用户的偏好效用值;否则将元组(ui,vj,Gaini,j)加入最大堆MaxHeap中。
图6显示了加入m(u3,v5)=1的规划M和最大堆MaxHeap,图7显示了加入m(u2,v4)=1的规划M和最大堆MaxHeap;图8显示了移除用户2的过程。
S7、重复步骤S5和步骤S6直到最大堆MaxHeap为空;
S8、返回所得到的规划M,作为基于事件社交网络的冲突事件规划方法的结果。
图9显示了最终返回的规划M。
本发明再一个实施例中,提供一种面向事件社交网络的规划系统,该系统能够用于实现上述面向事件社交网络的规划方法,具体的,该面向事件社交网络的规划系统包括向量模块、集合模块、排序模块、事件模块、判断模块、计算模块、执行模块以及规划模块。
其中,向量模块,定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;
集合模块,利用向量模块得到的用户偏好矩阵P和事件类型向量Vt,对每个用户ui构建一个偏好队列集合Qi;
事件模块,根据向量模块中的最大化目标MaxAvgSum(M)、排序模块中排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到向量模块构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;
判断模块,从事件模块或规划模块得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从向量模块得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将排序模块排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;
计算模块,根据判断模块得到的用户ui和向量模块得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;
执行模块,重复计算模块和规划模块直到最大堆MaxHeap为空;
规划模块,将执行模块所得到的规划M作为基于事件社交网络的冲突事件规划方法的结果。
本发明再一个实施例中,提供了一种终端设备,该终端设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于面向事件社交网络的规划方法的操作,包括:
定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;利用得到的用户偏好矩阵P和事件类型向量Vt,对每个用户ui构建一个偏好队列集合Qi;遍历构建的每个用户的偏好队列集合中每个偏好队列并将每个偏好队列中的事件按照构建的矩阵I和用户ui对事件vj的效用值Ii,j从大到小完成排序;根据最大化目标MaxAvgSum(M)、排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;从得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;根据得到的用户ui得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;重复直到最大堆MaxHeap为空;将所得到的规划M作为基于事件社交网络的冲突事件规划方法的结果。
本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端设备中的内置存储介质,当然也可以包括终端设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。
可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关面向事件社交网络的规划方法的相应步骤;计算机可读存储介质中的一条或一条以上指令由处理器加载并执行如下步骤:
定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;利用得到的用户偏好矩阵P和事件类型向量Vt,对每个用户ui构建一个偏好队列集合Qi;遍历构建的每个用户的偏好队列集合中每个偏好队列并将每个偏好队列中的事件按照构建的矩阵I和用户ui对事件vj的效用值Ii,j从大到小完成排序;根据最大化目标MaxAvgSum(M)、排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;从得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;根据得到的用户ui得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;重复直到最大堆MaxHeap为空;将所得到的规划M作为基于事件社交网络的冲突事件规划方法的结果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图11,是在仿真数据集上的实验结果,图11(a)是在用户数量m=500的情况下,MxAvgSum(M)随着事件数量变化的变化情况,图11(b)是事件数量n=500的情况下,MxAvgSum(M)随着用户数量变化的变化情况,可以看出本发明方法在仿真数据集上不同的参数设置下都大幅超过了对比方法。
综上所述,本发明一种面向事件社交网络的规划方法及系统,考虑了户对事件的类别偏好并提高了基于事件社交网络平台对用户和事件进行规划的公平性,提高了用户在基于事件社交网络中参与事件的用户体验。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
Claims (10)
1.一种面向事件社交网络的规划方法,其特征在于,包括以下步骤:
S1、定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;
S2、利用步骤S1得到的用户偏好矩阵P和事件类型向量Vt,对每个用户ui构建一个偏好队列集合Qi;
S4、根据步骤S1中的最大化目标MaxAvgSum(M)、步骤S3中排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到步骤S1构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;
S5、从步骤S4得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从步骤S1得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将步骤S3排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;
S6、根据步骤S5得到的用户ui和步骤S1得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;
S7、重复步骤S5和步骤S6直到最大堆MaxHeap为空;
S8、将步骤S7最大堆MaxHeap为空后对应的规划M作为基于事件社交网络的冲突事件规划方法的结果。
9.根据权利要求1所述的方法,其特征在于,步骤S5中,若事件vj为空或Gaini,j<0,则将对应用户的偏好队列集合移除,代表已经没有任何规划能进一步提高对应用户的偏好效用值;否则将元组(ui,vj,Gaini,j)加入最大堆MaxHeap中。
10.一种面向事件社交网络的规划系统,其特征在于,包括:
向量模块,定义规划用户与事件之间参与的最大化目标为MaxAvgSum(M),同时构造规划所需要的中间变量如下:构造大小为m×n的用户事件兴趣度效用矩阵I,m为用户数量,n为待安排事件数;构造大小为m×n的用户偏好矩阵P;构造大小为n×n的事件冲突矩阵C;构造用户容量向量Cu,构造事件容量向量Cv和构造事件类型向量Vt,构建一个最大堆MaxHeap,最大堆MaxHeap中存放的元素为元组(ui,vj,Gaini,j),并设置Gaini,j值作为最大堆MaxHeap的比较依据;
集合模块,利用向量模块得到的用户偏好矩阵P和事件类型向量Vt,对每个用户ui构建一个偏好队列集合Qi;
事件模块,根据向量模块中的最大化目标MaxAvgSum(M)、排序模块中排序后的用户偏好队列集合遍历每个用户ui,访问用户ui下一个当前收益最大的事件,若事件vj不为空,把元组(ui,vj,Gaini,j)加入到向量模块构建的最大堆MaxHeap中,Gaini,j为预期收益,加入所有用户的元组之后,得到包含m个元组的最大堆MaxHeap;
判断模块,从事件模块得到的最大堆MaxHeap中取得当前堆中Gaini,j最大的元组,得到用户ui和事件vj,根据从向量模块得到的事件冲突矩阵C、用户容量向量Cu、事件容量向量Cv判断规划m(ui,vj)=1是否合法,若满足条件,则将规划m(ui,vj)=1加入规划M中,同时将排序模块排序后的对应用户偏好队列集合Qi中当前事件vj所对应的偏好队列的首元素从队列中移除;否则丢弃对应元组;
规划模块,根据判断模块得到的用户ui和向量模块得到的用户容量向量Cu进行判断,若对应用户的容量有剩余,寻求用户ui的下一个规划,得到事件vj和收益Gaini,j;并将对应元组(ui,vj,Gaini,j)加入最大堆MaxHeap中;
执行模块,重复判断模块和规划模块直到最大堆MaxHeap为空;
规划模块,将执行模块最大堆MaxHeap为空后对应的规划M作为基于事件社交网络的冲突事件规划方法的结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110876077.5A CN113706325B (zh) | 2021-07-30 | 2021-07-30 | 一种面向事件社交网络的规划方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110876077.5A CN113706325B (zh) | 2021-07-30 | 2021-07-30 | 一种面向事件社交网络的规划方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113706325A CN113706325A (zh) | 2021-11-26 |
CN113706325B true CN113706325B (zh) | 2022-12-09 |
Family
ID=78651066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110876077.5A Active CN113706325B (zh) | 2021-07-30 | 2021-07-30 | 一种面向事件社交网络的规划方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113706325B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107657034A (zh) * | 2017-09-28 | 2018-02-02 | 武汉大学 | 一种社交信息增强的事件社交网络推荐算法 |
CN111428127B (zh) * | 2020-01-21 | 2023-08-11 | 江西财经大学 | 融合主题匹配与双向偏好的个性化事件推荐方法及系统 |
CN113094593B (zh) * | 2021-03-11 | 2023-03-28 | 西安交通大学 | 社交网络事件推荐方法、系统、设备及存储介质 |
-
2021
- 2021-07-30 CN CN202110876077.5A patent/CN113706325B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113706325A (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Getreal: Towards realistic selection of influence maximization strategies in competitive networks | |
CN108875955A (zh) | 基于参数服务器的梯度提升决策树的实现方法及相关设备 | |
CN111967971B (zh) | 银行客户数据处理方法及装置 | |
CN112214499B (zh) | 图数据处理方法、装置、计算机设备和存储介质 | |
CN111428127A (zh) | 融合主题匹配与双向偏好的个性化事件推荐方法及系统 | |
CN113962358A (zh) | 一种基于时序超图注意力神经网络的信息扩散预测方法 | |
CN113094593A (zh) | 社交网络事件推荐方法、系统、设备及存储介质 | |
CN114021735A (zh) | 一种联邦学习中数据处理的方法及装置 | |
CN109919793A (zh) | 活动参与分析及推荐方法 | |
CN113706325B (zh) | 一种面向事件社交网络的规划方法及系统 | |
CN110209704B (zh) | 用户匹配方法及设备 | |
CN110867224B (zh) | 用于大规模脑病历分割的多粒度Spark超信任模糊方法 | |
CN111966916A (zh) | 一种推荐方法、装置、电子设备及计算机可读存储介质 | |
CN111461188A (zh) | 一种目标业务控制方法、装置、计算设备及存储介质 | |
CN110874609B (zh) | 基于用户行为的用户聚类方法、存储介质、设备及系统 | |
CN113448876B (zh) | 一种业务测试方法、装置、计算机设备及存储介质 | |
Yang et al. | When feedback loops collide: a complex adaptive systems approach to modeling human and nature dynamics | |
CN110633784A (zh) | 一种多规则人工蜂群改进算法 | |
CN115409661A (zh) | 基于集成学习模型的就业推荐方法、系统、设备及介质 | |
CN111931035B (zh) | 业务推荐方法、装置及设备 | |
CN110175296B (zh) | 网络图中的节点推荐方法和服务器以及存储介质 | |
CN114550737A (zh) | 一种基于神经通路的图垂直联邦数据增强方法与装置 | |
CN109460490B (zh) | 社交网络中中心顶点的确定方法、装置、设备及存储介质 | |
CN112507185A (zh) | 用户肖像的确定方法和装置 | |
CN113704635B (zh) | 一种社交网络事件推荐方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |