南京大学学报(自然科学), 2023, 59(4): 570-579 doi: 10.13232/j.cnki.jnju.2023.04.004

基于数据流的时间条件占优查询

田金灿, 孙雪姣,

烟台大学计算机与控制工程学院,烟台,264005

Query time⁃conditional preference query based on data flow

Tian Jincan, Sun Xuejiao,

College of Computer and Control Engineering,Yantai University,Yantai,264005,China

通讯作者: E⁃mail:sunxuejiao6@sina.com

收稿日期: 2023-06-05  

基金资助: 国家自然科学基金.  62072392

Received: 2023-06-05  

摘要

传统的偏好推理使用权衡增强的条件偏好网络(Tradeoff⁃Enhanced Conditional Preference Networks,TCP⁃nets)进行用户的偏好推理,不仅能高效地表示对元组的定性偏好关系并优化用户偏好结果,还能描述每个属性之间的偏好关系,其主要聚焦于关系元组中的单个属性的偏好.但把对条件偏好查询的技术推广到数据流的条件提取却是一个挑战,面临的技术困难主要是对数据流中序列的提取,对提取的序列进行占优查找等.首先,针对偏好数据流,提出一种时间条件查询语言Stream Pref来处理数据流;其次,在Stream Pref中加入时间索引来推理和规范数据流提取序列的时间条件偏好,提出提取对象序列算法、占优对象及占优序列查找算法和数据流序列间占优对比的算法;最后,在数据集上分析验证提出的算法的有效性.实验结果证明,提出的算法与min Top⁃k,Partition和Incpartition算法相比,得到的结果更准确.

关键词: TCP⁃nets ; 偏好查询 ; 连续查询语言 ; 时间索引 ; 占优对比

Abstract

Traditional preference inference uses tradeoff⁃enhanced conditional preference networks for user preference inference,which not only efficiently represent qualitative preference relations over tuples and optimize user preference results,but also describe preference relations between each attribute. The main focus is on the preference of individual attributes in relational tuples,but it is a challenge to extend the technique of conditional preference query to the conditional extraction of data streams,and the technical difficulties are mainly the extraction of sequences in the data streams and the preference finding of the extracted sequences. Firstly,a temporal conditional query language Stream Pref is proposed to process the data streams for preference data streams. Secondly,Stream Pref incorporates a temporal index to reason and standardize the temporal conditional preferences of the extracted sequences of data streams. An algorithm for extracting object sequences,an algorithm for finding preference objects and preference sequences and an algorithm for preference comparison among data stream sequences are proposed. Finally,the effectiveness of the algorithm proposed in this paper is analyzed and verified on the data set. Experimental results show that the proposed algorithm gets more accurate results compared with min top⁃k algorithm,partition algorithm and incpartition algorithm.

Keywords: TCP⁃nets ; preference query ; continuous query language ; time index ; dominant contrast

PDF (729KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

田金灿, 孙雪姣. 基于数据流的时间条件占优查询. 南京大学学报(自然科学)[J], 2023, 59(4): 570-579 doi:10.13232/j.cnki.jnju.2023.04.004

Tian Jincan, Sun Xuejiao. Query time⁃conditional preference query based on data flow. Journal of nanjing University[J], 2023, 59(4): 570-579 doi:10.13232/j.cnki.jnju.2023.04.004

偏好在很多情况下可以引导用户的选择,用户偏好分定量和定性,定量偏好通过效用函数1来描述用户的偏好,定性偏好通过定义二元关系来表示偏好关系.用户偏好的特征分两点:(1)偏好通常受一组属性所影响,例如用户旅游时天气等因素会影响用户的体验;(2)用户偏好之间有依赖关系,例如用户选择上衣时依赖裤子的颜色2.过去几十年,偏好推理的研究在人工智能、数据库等领域不断发展,许多研究都致力于评价偏好问题.

大数据技术的发展,在网络中产生了大量的无界数据,导致需要处理数据流的新应用程序的增加,因此,提取偏好信息是数据流领域3-4的重要任务.数据流具有连续性、无限性,只能读取一次,而且数据总量大,因此处理数据流时需要实时处理新生成的数据元素5.同时,数据的不断变化使用户需要长时间连续查询并更新查询结果,成为偏好领域的热门研究之一.在数据流场景中,数据元素按时间顺序关联,因此,用户可以使用时间条件偏好来表达偏好如何受前一个时刻的影响,更加适用于对数据流的偏好处理.

Stream Pref语言主要处理带有时间索引的条件偏好连续查询(Continuous Temporal Condition Preference Queries),其使用逻辑框架TPref,对时间索引对象序列进行定性偏好诱导和推理,通过在CP⁃nets中使用静态规则外的时间条件偏好来推广CP⁃nets的形式体系,提出一种算法来产生满足给定时间约束的最优序列.本文提出一种时间偏好查询算法,首先提取数据流中的序列,其次利用占优对比算法对序列进行偏好比较,最终,得到满足用户偏好的信息.

1 相关工作

1.1 偏好推理

偏好推理可以得到数据流中最符合用户需求的信息.

权衡增强的条件偏好网络(Tradeoff⁃Enhanced CP⁃nets,TCP⁃nets)6-7是研究偏好推理、描述用户偏好的主要工具之一,它使用图形模型高效地表示对元组的定性偏好关系,同时优化用户所有感兴趣的偏好结果.Amor et al8提出关于偏好表示的图形模型来描述用户偏好.Kießling and Köstler9提出偏好SQL (Structured Query Language)语言,第一次引入偏好推理的相关概念,通过基于严格偏序的偏好模型扩展了结构化查询语言,提出基本偏好构造函数,将Preference SQL偏好转换为标准的SQL查询.TCP⁃nets10是CP⁃nets的一种演化,引入了属性的绝对和相对重要性.Ahmed and Mouhoub11提出逻辑形式主义,通过允许不同的属性来概括CP⁃nets和TCP⁃nets方法,可以减缓Ceteris Paribus语义,达到更高的表达能力.这种逻辑形式主义也是CPrefSQL语言使用的偏好模型的基础.de Amo and Giacometti12用TPref形式来表达时间条件偏好.Ribeiro et al13提出Stream Pref形式主义,是TPref形式主义的改进,但Stream Pref更适合对数据流进行推理.Stream Pref查询语言的BESTSEQ运算符使用Stream Pref形式来比较序列.

1.2 偏好查询

一个查询被启动后连续不断地运行直到该查询被终止,对于数据流偏好的查询是考虑用户偏好进行的连续查询.

刘兆伟14提出基于流式数据的增量式学习方法.Alguliyev et al15基于skyline操作符来解决用户偏好查询的算法.El Maarry et al16提出skyline操作符的偏好查询优化,还提出一些基于启发式的方法.Huo and Zhang17提出的skyline操作符提高了查询效率.Zervoudakis et al18提出与连续偏好查询相关的内容.杨茸和牛保宁19提出文本数据流的连续查询.传统的连续查询语言(Continuous Query Language,CQL)不支持序列结构20.Ribeiro et al21提出连续查询语言的等效算法,在其中加入元组(tuple),用一组tuple表示对序列的处理.Kontaki et al22提出对最近数据的连续偏好查询进行评估的算法,其中每个元组都有一个时间戳和有效区间.de Amo and Bueno23提出一种基于祖先列表的增量算法来评估连续CP⁃queries.Ribeiro et al24提出Stream语言,在传统CQL基础上添加了两个操作符SEQ和BESTSEQ来选择提取最佳序列.王卫星25提出一种流式数据的CP⁃nets的学习方法,通过比较基本块与滑动窗口的大小,对偏好关系进行实时更新.

本文算法加入了时间索引,使用基于哈希的访问方法对数据序列进行处理,占优对比得到最优序列;同时,减少了序列间对象的对比次数,提高了偏好信息的查询效率.

2 相关定义

定义1

X=A1,A2,,An是表示决策属性的集合,其中,DomAi代表属性Αi的定义域,X上的对象集Ω=DomA1×DomA2××DomAn表示所有属性的可能组合.序列s=t1,t2,,tn是一个元组的有序集合,对于i1,2,,n,有tiΩ.

s表示序列s的长度,序列s中位于位置i的元组用符号si表示,A表示在s的第i个位置的属性A.符号si,j表示序列s'=ti,,tj是序列s的子序列1in,ijn.两个序列的连接s=t1,,tns'=t1',t2',,tn'',用s+s'表示为s=t1,t2,,tn,t1',t2',,tn''.属性X上所有可能序列的集合用SeqX表示.

Stream Pref使用命题构成的公式,形式如式(1)所示:

AθaA为命,aDomA,θ,<,=,,>,

假设QA是一个命题,a=QA表示满足命题QASQA=aDomAa=QA表示满足QA的值集.

定义2

在对象集Ω上定义一个二元关系,具有自反性、传递性和反对称性,即是严格的偏序关系时称Ω上的严格偏好关系.反映决策者对于两个配置oo'的偏好强弱关系,即oo'表示决策者对o的偏好强于对o'的偏好.

定义3

Ceteris Paribus理论上表示其他条件均有相同的偏好,这种偏好关系表达了所有配置上可能存在的偏好信息,若其他条件不变,对象之间偏序的关系会被单个属性的改变影响.CP⁃nets严格遵循Ceteris Paribus(all else being equal)的语义,即对于oΩ,除了某个属性Xi值不同而其他属性值都相同的情况下,用户对Xi不同取值的一种偏好排序.

定义4

基本公式26truefalse是基本公式.如果F是一个命题,那么F是一个基本公式.如果FG是基本公式,则FGFGF since G¬F¬G是基本公式.

序列s=t1,t2,,tn在位置i1,2,,n

s,i=F表示,满足公式F的概念定义如式(2)~(7)所示:

s,i=QAsi=QA
s,i=FGs,i=Fs,i=G
s,i=FGs,i=Fs,i=G
s,i=¬Fs,iF
s,i=F since Gs,j=Gs,k=Fj,1ji,j+1<ki
s,i=F until Gs,j=Gs,k=Fj,ijs,j+1<ki

还有以下派生公式,如式(8)~(11)所示:

Prev QA:s,i=Prev QAs,i-1=Q(A)
SomePrev QA:s,i=SomePrev QAs,j=QAj,1ji
AllPrev QA:s,i=AllPrev QAs,j=QAj1,2,,i-1
First:s,i=FirstQAi=1

定义5

时间条件是F=F1F2Fn,其中F1,F2,,Fn是命题或导出公式.F的时态分量(F)为F中所有推导公式的合取.F表示F的非时态分量,是F中所有命题的合取,在F中不存在.符号AttF表示出现在F中的属性.

定义6

给定TCP两个规则φφ',且Cφ=F1F2FpCφ'=F1'F2'Fp'.如果命题FiFj'在时间上是兼容的,那么两个TCP规则是时间兼容的,i1,2,,p,j1,2,,q.

定义7

假设X是一组属性集合.时间条件偏好规则(Temporal Condition Preference rules,TCP⁃rules)的表达式如式(12)所示:

CφQφ+AφQφ-Aφ

(1)在同一个属性Aφ上,命题Qφ+Qφ-分别表示占优项和非占优项,属性Aφ被称为偏好属性.SQφ+AφSQφ-Aφ=.

(2) WφX是无关属性的集合,例如AφWφ.

(3) Cφ是一个时间条件,AttCφWφ=.

时间条件偏好理论(TCP理论)是有限的TCP⁃rules集合.

给定一条TCP⁃rules和两个序列ss',根据φ,用sφs'表示序列s优先于序列s',iff i.

(1)在i之前的所有位置在两个序列中都必须相同,sj=s'j,j1,,i-1.

(2) ss'的位置必须满足规则条件Cφs,i=Cφs',i=Cφ.

(3) s的位置i具有优选值,而s'的位置i具有非优选值,有si.Aφ=Qφ+s'i.Aφ=Qφ-.

(4)不包括偏好属性AφWφ的无关属性,位置i的所有属性在两个序列中必须有相同的值,si.A'=s'i.A',对于所有A'AφWφ.

实例1 假设一名足球教练使用足球场信息管理系统来查询球员在球场移动的实时数据信息,有属性集合Mm(球员的移动类型)、L(运动员在足球场的位置)、H(是否控球).Mm的取值有前进(Qi)、后退(Ho)、横向(Pi).L的取值有守门区(aa)、防守区(ab)、前卫(ac)、进攻区(ad)和射门区(ae).H的取值为1(控球)或0(不控球).例如序列s=ab,1,Qi,ac,1,Pi,ab,1,Ho表示运动员s在球场中的位置行动轨迹是:在防守区控球前进,在前卫控球横向移动,在防守区控球向后移动,如图1所示.考虑该应用程序的场景,足球教练可以决定以下关于球员移动的时间偏好:

图1

图1   运动员的行动轨迹

Fig.1   The athletes' action trajectory


(1)假如在某时刻球员控球,并且在此刻之前该球员处在ab,那么教练更喜欢该球员去ac而不是ab,与Mm无关.

(2)假如在某时刻球员不控球,并且在此之前球员控球并且处于ad,那么教练更喜欢球员在ac而不是ab.

(3)横向移动比前进更好.

使用TCP理论Φ=φ1,φ2,φ3来表示偏好信息.该理论由以下TCP规则组成:

φ1:PreL=abH=1        L=acL=abMmφ2:AllPreH=1H=0PreL=ad        (L=ac)(L=ad)φ3:Mm=PiMm=Qi

根据TCP理论Φ=φ1,φ2,φ3,对以下序列进行优先级推理.

sa=ab,1,Qi,ac,1,Qi,ad,1,Qi,ac,0,Pi
sb=ab,1,Qi,ac,1,Qi,ad,1,Qi,ad,0,Pi
sc=ab,1,Qi,ab,1,Pi,ac,1,Qi,ac,0,Ho

由TCP规则φ1可知,在防守区saφ1sc,且sbφ1sc;由TCP规则φ2可知,在进攻区saφ2sb.因此可知saΦsbΦsc.

3 算法设计

3.1 算法详细设计

本节详细描述从数据流中提取序列的算法、对提取序列的查找算法以及占优查找算法.

算法1是提取序列算法,使用散列表H来增量地执行序列的提取.以秒为单位接受时间范围参数k,基于时间滑动窗口,时间间隔为1 s.

算法1 提取序列算法EXT sequences

输入:要提取的数据流S,属性z,时间滑动间隔k

输出:散列表H中的序列

Step 1

for each oSλ

Step 1.1

zGetIdo,Z /*获取对象的属性*/

Step 1.2

if zH.Keys,szo/Zz /*将对象o中移除z的属性标识符*/

Step 1.3

elseszH.Getz+o/Zz/*从H中获取属性z,移除z的属性标识符*/

Step 2

H.Putz,sz /*将序列插入散列表*/

Step 3

for each szHDelete sz,λ-k /*循环散列表序列删除过期元素*/

Step 4

return H

散列表H将每个属性z与序列sz关联.散列表最初是空表,在时间滑动间隔k时,算法更新散列表并返回序列,直至当前时刻λ.首先循环遍历数据流对象集合,通过Step1.1获取对象的属性;通过Step1.2判断对象的属性是否属于散列表H,如果属于H,将对象o中移除z的属性标识后赋值给sz,否则将o/Z加入原有的散列表H;Step2将插入各自序列,通过Step3将循环遍历sz删除过期元素,最后Step4返回H中的序列.

占优对象查找算法使用深度优先搜索(Depth First Search,DFS)寻找从对象o+到对象o-的规则,用来验证序列间对应位置i处对象si是否优于对象s'i.

算法2

占优对象查找算法(FDO)

输入:条件偏好理论Γ,对象o+o-

输出:占优对象o'

Step 1

interviewed

Step 2

continueStackintervalObjecto+ /*将对象o+转化为区间再转为堆栈存储到continue中*/

Step 3

while true

Step 3.1

if continue=0 break /*判断continue是否为空*/

Step 3.2

ocontinue.pop /*从continue中获取对象o并将o标记为已访问*/

Step 3.3

interviewedinterviewedo

Step 3.4

if IsGoalo-,oreturn true/*判断属性Ai,是否存在从对象o.Aio-.Ai的规则*/

Step 3.5

for each φΓ /*循环时间条件偏好规则φ*/

Step 3.5.1

if oCφoQφ+Aφ return /*判断对象o是否满足条件偏好规则或是否为占优项*/

Step 3.5.2

o'.AφIntervalQφ-Aφ /*获取新对象o-*/

Step 3.5.3

for each AiWφo'.Ai-,+ /*在Wφ循环属性Ai*/

Steo 3.5.4 if o'NULL&o'interviewed /*判断对象o'不为空且未被访问*/

continue.pusho'

Step 3.6 return false

Step 1~3.3查找目标对象,Step 2中intervalObjecto+将对象o+转换为区间,再通过Stack转化成堆栈,Step3.1判断continue是否为空,不为空时将o出栈并标记为已访问.通过IsGoal判断o.Aio-.Ai的规则是否存在,若存在返回true,反之通过循环Step 3.4在o应用偏好规则φ.获取新的对象o-,若o-不为空且未被访问,将o-推回continue中,在另一个堆栈中搜索.

占优序列查找算法搜索序列第一个不同位置标记为i,然后在位置i处创建TCP规则,通过在i处的偏好进而对序列之间的偏好关系进行验证.

算法3

占优序列查找算法(DS)

输入:提取序列ss'

输出:ss'

Step1

jmins,s'

Step 2

for each i1,2,,j

Step 2.1

if sis'iΓ /*判断位置i是否相同,创建TCP规则和TCP理论*/

Step 2.2

for each φΦ /*循环φ*/

Step 2.2.1

if s,i=Cφ,s',i=Cφ

ΓΓφ0 /*判断序列在位置i是否满足TCP规则*/

Step 2.2.2

return FDOΓ,si,s'i /*算法2*/

Step 3 return false

循环遍历找到序列第一个不同位置i,创建TCP规则和TCP理论.通过验证位置i处对象的偏好关系验证序列之间的偏好关系,最后输出占优序列.

占优对比算法通过序列和TCP理论,验证序列ss'之间的占优对比,将占优序列保存到T'中.

算法4

占优对比算法(DS)

输入:一组序列T,TCP理论Φ

输出:占优序列T'

Step 1

T'T /*将序列T复制到T'中*/

Step 2

for each s,s'T'

Step 2.1

if DSΦ,s,s'T'T'-s' /*算法3,判断位置iss'T'删除s'*/

Step 2.2

else DSΦ,s',sT'T'-s /*从T'删除s*/

Step 3

return T'

Step1将序列T复制到T'中,循环遍历属于T's,s'.通过调用算法3返回的占优序列来占优对比,若ss',从T'中删除非占优序列s',反之若s's,从T'中删除s,其他情况下不对T'进行操作.

3.2 时间复杂性分析

算法1提取序列算法对象插入的成本为Onl,其中l为属性数.删除过期序列的成本为Onk,其中k为时间范围.因此算法1的复杂度为Onl+nk,即On.

算法2占优对象查找算法的时间复杂度为Olmm,其中l为属性数,m为偏好规则数.

算法3占优序列查找算法的时间复杂度为Oklmm,其中k为序列的最大长度.

算法4占优对比算法的时间复杂度为On2klmm,即On2mm,其中,n为序列数,m为偏好规则数.

实例2 给出实例1的TCP理论和以下提取序列,用t1,t2,t3,t4,t5表示时刻1到时刻5.

t1:s1=ab,0,Qi
s2=ab,0,Qi
s3=ab,0,Qi

将输入的序列对象添加到t1序列末尾.

t2s1=ab,0,Qi,ac,1,Qi

s2=ab,0,Qi,ac,1,Qi
s3=ab,0,Qi,ab,1,Pi

t3s1=ab,0,Qi,ac,1,Qi,ac,1,Qi

s2=ab,0,Qi,ac,1,Qi,ac,1,Qi
s3=ab,0,Qi,ab,1,Pi,ac,1,Qi

如果序列长度大于3,将删除序列的第一个元组.

t4s1=ac,1,Qi,ac,1,Qi,ad,1,Pi

s2=ac,1,Qi,ac,1,Qi,ad,1,Pi
s3=ab,1,Pi,ac,1,Qi,ad,1,Pi

t5s1=ac,1,Qi,ad,1,Pi,ad,0,Pi

s2=ac,1,Qi,ad,1,Pi,ac,0,Pi
s3=ac,1,Qi,ad,1,Pi,ac,0,Pi

t5中提取序列运动员s1s2的占优对比.

(1)在第三次迭代中,算法找到要比较的位置i=3.

(2)循环扫描TCP,寻找在位置i=3处满足序列s1s2的TCP规则.

(3)由φ2φ3产生的偏好理论Γ规则如下:

φ20H=0L=acL=ad

φ30Mm=PiMm=Qi

(4)由占优对象查找算法,可以得到o+=ac,0,Pio-=ad,0,Qi.占优查找算法的搜索树如图2所示.

图2

图2   占优对象查找算法的搜索树

Fig.2   Search tree of the dominant object finding algorithm


(5)由占优序列查找算法可得序列s2s1.

(6)由占优对比算法可得T'=s2.

4 实验

在合成模拟数据集和世界杯足球赛真实数据集上对提出的算法进行验证.合成数据集通过程序设置参数和变量值,按照合理性和可操作性准则生成.在合成数据集上进行测试的目的是评估算法处理数据的能力,在真实数据集上进行测试是为了评估算法的可应用性.处理器为Inter (R) Core (TM) i5⁃7000u CPU @ 2.5 GHz,RAM 4 GB,64位操作系统,使用Python语言.

4.1 在合成数据集上的实验结果

在合成数据集上的实验验证了合成参数和提取序列参数对EXT sequences与CQL equivalent算法的影响,测试在不同参数下算法的运行时间.算法采用对应的TCP规则对数据流提取序列,其运行时间受到属性维度的影响.算法生成tuple数由序列数决定,时间范围(RAN)和时间滑动间隔(SLI)决定对象的选择.合成数据集上的生成参数如表1所示,提取数据流序列的参数如表2所示.

表1   合成数据集的生成参数

Table 1  Generation parameters of synthetic dataset

参数变量默认值
属性数量8,10,12,14,1610
序列数量4,8,16,24,328

新窗口打开| 下载CSV


表2   从合成数据集提取数据流序列的参数

Table 2  Parameters for extracting data stream sequences from synthetic datasets

参数变量默认值
时间范围(s)10,20,40,60,80,10020
时间滑动间隔(s)1,10,20,30,401

新窗口打开| 下载CSV


根据TCP⁃rules提取数据流序列,序列的属性标识符如下:

A1:φu=FirstQA3QA2+QA2-A4,A5
φv=PrevQA3SomePrevA4AllPrevQA5Q(A3)QA2+QA2-A4,A5

实验结果如图3所示.

图3

图3   合成数据集中使用不同参数时两种算法运行时间的对比

(a)属性数不同;(b)序列数不同;(c)时间范围不同;(d)滑动间隔不同;其余参数均采用默认值

Fig.3   Running time of two algorithms with different parameters on synthetic dataset


第一组实验测试生成属性的数量对算法的影响,属性数量8~16(其他参数不变),如图3a所示.由图可见:(1)即使生成的属性数很少,EXT sequences也优于CQL equivalent;(2)随着属性数量的增加,EXT sequences和CQL equivalent的运行时间都在增加,但CQL equivalent的增幅较大.

第二组实验测试序列数对算法的影响,序列数量4~32,如图3b所示.由图可见:(1)随着序列数量的增加,提取序列算法的性能优于CQL equivalent;(2)随着序列数量的增加,提取序列算法处理tuple的数量也增加.

第三组实验测试时间范围对提取序列算法的影响,时间范围10~100 s,如图3c所示.由图可见,当RAN不断增加,提取序列算法的性能优于CQL equivalent.

第四组实验测试时间滑动间隔对算法的影响,时间滑动间隔1~40 s,如图3d所示.由图可见:(1)EXT sequences的性能优于CQL equivalent;(2)随着时间滑动间隔的增大,两个算法的运行时间都在减少.

四组实验结果证明,随着属性数、序列数、时间范围以及滑动时间间隔的增加,本文的提取序列算法对偏好数据流中提取序列的效率更高,用时更短.

4.2 在真实数据集上的实验结果

在世界杯足球赛数据集上采用TCP规则,对数据流进行序列提取,分析EXT sequences与CQL equivalent算法的时耗.真实数据集的参数如表3所示,提取数据流序列的参数如表4所示.

表3   真实数据集的参数

Table 3  Parameters of real dataset

属性变量时刻
比赛队伍3232
比赛场次6462
运动员736736
动作1670812621
移动方向1306072040
场上位置1376212150

新窗口打开| 下载CSV


表4   从真实数据集提取数据流序列的参数

Table 4  Parameters for extracting data stream sequences from real datasets

参数变量默认值
时间范围 (s)6,12,18,24,3024
时间滑动间隔 (s)1,3,6,9,121

新窗口打开| 下载CSV


实验采用以下的TCP规则:

φ1:PreL=abH=1L=acL=abMm
φ2:AllPreH=1H=0PreL=adL=acL=ad
φ3:Mm=PiMm=Qi.

第五组实验测试改变时间范围RAN及滑动时间间隔SLI对提取序列算法性能的影响,如图4所示.由图可见,随着RAN和SLI的不断增加,提取序列算法的性能优于CQL equivalent.

图4

图4   真实数据集上使用不同参数时两种算法运行时间的对比

(a)时间范围不同(滑动间隔为1 s);

(b)滑动间隔不同(时间范围为24 s)

Fig.4   Running time of two algorithms with different parameters on real dataset


为了测试RAN及SLI参数对算法的影响,选用RAN和SLI进行实验,如表5所示,实验结果如图5所示.

表5   真实数据参数

Table 5  Real data parameters

参数变量默认值
时间范围(s)5,10,20,40,80,16040
时间滑动间隔(s)1,3,6,9,121

新窗口打开| 下载CSV


图5

图5   在真实数据集上使用不同参数的连续查询算法运行时间的对比

(a)时间范围不同(滑动间隔为1 s);

(b)滑动间隔不同(时间范围为24 s)

Fig.5   Running time of consecutive query algorithms with different parameters in real dataset


由图可见:(1)Dominant Contrast算法比其他算法的性能更好;(2)算法的运行时间随着时间范围的扩大而增加,但是占优算法运行时间增长的幅度最小;(3)随着时间滑动间隔的增加,产生的新元组会覆盖过期序列元组,序列间占优对比的次数减少,占优查询算法的运行时间减少.原因在于:(1)占优算法处理按时间条件提取数据流中的序列,不需要多次扫描窗口;(2)Partition和Incpartition算法对时间滑动参数不敏感;(3)min Top⁃k算法在时间范围不变而增加时间滑动间隔时,候选集合的访问次数也在不断地增加,候选对象数量变少.

综上,占优对比算法和Partition,Incpartition,min Top⁃k算法相比,表现最优.

5 结论

本文提出一种加入时间索引对数据流提取序列并对所得序列进行占优查询的方法,扩展了CQL,对数据流上的数据进行偏好查询有进一步了解.在不同的数据集上对提出的Dominant Contrast算法和其他查询算法进行了实验对比,实验结果证明,提出的提取序列算法和占优查找算法,运行时间比其他算法更少,性能更优,得到了更精确的查询结果.

未来的研究方向:(1)完善提取数据流序列算法和占优对比算法,提高偏好查询效率;(2)获取时间条件偏好的属性优先级,生成一致性排序算法,并进行验证.

参考文献

Doyle J.

Prospects for preferences

Computational Intelligence,200420(2):111-136.

[本文引用: 1]

栾艳红孙雪姣.

基于CP⁃net偏好的关系数据库的Top⁃k实现

中国科学技术大学学报,201949(2):93-99.

[本文引用: 1]

Luan Y HSun X J.

Top⁃k query of relational database based on CP⁃net

Journal of University of Science and Technology of China,201949(2):93-99.

[本文引用: 1]

Lughofer EPratama M.

Online active learning in data stream regression using uncertainty sampling based on evolving generalized fuzzy models

IEEE Transactions on Fuzzy Systems,201826(1):292-309.

[本文引用: 1]

刘琴.

大数据分析下分布式数据流处理技术研究

软件工程,201922(12):44-46.

[本文引用: 1]

Liu Q.

Research on distributed data flow processing technology under big data analysis

Software Engineering,201922(12):44-46.

[本文引用: 1]

王卫星刘兆伟石敬华.

基于时间敏感滑动窗口的CP⁃nets结构学习

南京大学学报(自然科学),202056(2):175-185.

[本文引用: 1]

Wang W XLiu Z WShi J H.

Learning of CP⁃nets structure based on a time⁃sensitive sliding window

Journal of Nanjing University (Natural Science),202056(2):175-185.

[本文引用: 1]

Ahmed SMouhoub M.

Representation and reasoning with probabilistic TCP⁃nets

Computer and Information Science,2018,11(4):9-28.

[本文引用: 1]

Alanazi E.

Extending conditional preference networks to handle changes

International Journal of Advanced Computer Science and Applications,201910(9):571-577.

[本文引用: 1]

Amor N BDubois DGouider Het al.

Graphical models for preference representation:An overview

Proceedings of the 10th International Conference on Scalable Uncertainty Management. Springer Berlin Heidelberg201696-111.

[本文引用: 1]

Kießling WKöstler G.

Preference SQL⁃design,implementation,experiences

Proceedings of the 28th International Conference on Very Large Databases. Hong Kong,ChinaVLDB2002990-1001.

[本文引用: 1]

Santhanam G RBasu SHonavar V. Representing and reasoning with qualitative preferences:Tools and applications. San Rafael,CA,USAMorgan & Claypool2016138.

[本文引用: 1]

Ahmed SMouhoub M.

Conditional preference networks with user's genuine decisions

Computa⁃tional Intelligence,202036(3):1414-1442.

[本文引用: 1]

de Amo SGiacometti A.

Temporal conditional preferences over sequences of objects

Proceedings of the 19th IEEE International Conference on Tools with Artificial Intelligence. Patras,GreeceIEEE2007246-253.

[本文引用: 1]

Ribeiro M RBarioni M C Nde Amo Set al.

Reasoning with temporal preferences over data streams

Proceedings of the 30th International Florida Artificial Intelligence Research Society Conference. Marco Island,FL,USAAI Magzine2017700-705.

[本文引用: 1]

刘兆伟. 基于偏好数据库的无环CP⁃nets结构学习方法研究. 博士学位论文. 济南山东大学2018.

[本文引用: 1]

Liu Z W. Research on structure learning methods of acyclic CP⁃nets based on preference database. Ph.D. Dissertation. Ji'nanShandong University2018.

[本文引用: 1]

Alguliyev R MAliguliyev R MAlakbarov R Get al.

The skyline operator for selection of virtual machines in mobile computing

International Journal of Modern Education and Computer Science,201810(11):1-10.

[本文引用: 1]

El Maarry KLofi CBalke W T.

Crowdsourcing for query processing on web data:A case study on the skyline operator

Journal of Computing and Information Technology⁃CIT,201523(1):43-60.

[本文引用: 1]

Huo YZhang J D.

A nonlinear service composition method based on the Skyline operator

Journal of Systems Engineering and Electronics,202031(4):743-750.

[本文引用: 1]

Zervoudakis PKondylakis HSpyratos Net al.

Query rewriting for incremental continuous query evaluation in HIFUN

Algorithms,202114(5):149.

[本文引用: 1]

杨茸牛保宁.

空间文本数据流上连续查询评估技术综述

计算机科学与探索,202115(4):631-640.

[本文引用: 1]

Yang RNiu B N.

Survey of continuous queries over spatial⁃textual data streams

Journal of Frontiers of Computer Science Technology,202115(4):631-640.

[本文引用: 1]

Arasu ABabu SWidom J. The CQL continuous query language:Semantic foundations and query execution. The VLDB JournalThe International Journal on Very Large Data Bases200615(2):121-142.

[本文引用: 1]

Ribeiro M RBarioni M C Nde Amo Set al.

StreamPref:A query language for temporal conditional preferences on data streams

Journal of Intelligent Information Systems,201953(2):329-360.

[本文引用: 1]

Kontaki MPapadopoulos A NManolopoulos Y.

Continuous Top⁃k dominating queries

IEEE Transactions on Knowledge and Data Engineering,201224(5):840-853.

[本文引用: 1]

de Amo SBueno M L.

Continuous processing of conditional preference queries

Proceedings of the 26th Simpósio Brasileiro de Banco de Dados. Florianópolis,Santa Catarina,BrasilSBC201125-32.

[本文引用: 1]

Ribeiro M RBarioni M C Nde Amo Set al.

Temporal conditional preference queries on streams

Proceedings of the 28th International Conference on Database and Expert Systems Applications. Springer Berlin Heidelberg2017143-158.

[本文引用: 1]

王卫星. 流式数据的CP⁃nets结构学习研究. 硕士学位论文. 烟台烟台大学2021.

[本文引用: 1]

Wang W X. The research of CP⁃nets structure learning on streaming data. Master Dissertation. YantaiYantai University2021.

[本文引用: 1]

李润泽孙雪姣.

基于时间条件提取序列的数据流偏好查询

计算机应用,202242(3):724-730.

[本文引用: 1]

Li R ZSun X J.

Data stream preference query based on extraction sequence according to temporal condition

Journal of Computer Applications,202242(3):724-730.

[本文引用: 1]

/