Categorical Skylines for Streaming Data

Size: px
Start display at page:

Download "Categorical Skylines for Streaming Data"

Transcription

1 Ctegoricl Skylines for Streming Dt ABSTRACT Nikos Srks University of Toronto Nick Kouds University of Toronto The prolem of skyline computtion hs ttrcted considerle reserch ttention. In the ctegoricl domin the prolem ecomes more complicted, primrily due to the prtilly-ordered nture of the ttriutes of tuples. In this pper, we initite study of streming ctegoricl skylines. We identify the limittions of existing work for offline ctegoricl skyline computtion nd relize novel techniques for the prolem of mintining the skyline of ctegoricl dt in streming environment. In prticulr, we develop lightweight dt structure for indexing the tuples in the streming uffer, tht cn grcefully dpt to tuples with mny ttriutes nd prtilly ordered domins of ny size nd complexity. Additionlly, our study of the dominnce reltion in the dul spce llows us to utilize geometric rrngements in order to index the ctegoricl skyline nd efficiently evlute dominnce queries. Lstly, thorough experimentl study evlutes the efficiency of the proposed techniques. Ctegories nd Suject Descriptors H.2.8 [Dtse Mngement]: Dtse pplictions Generl Terms Algorithms, Performnce Keywords Skyline, dt strem, ctegoricl, prtil order 1. INTRODUCTION Aundnce of dt hs een oth oon nd curse, s it hs ecome incresingly difficult to process dt in order to isolte useful nd relevnt informtion. In order to compenste, the reserch community hs invested considerle effort into developing tools tht fcilitte the explortion of dt spce. One such successful tool is the skyline query. The skyline of dt set is the suset of tuples tht re not dominted on ll of their ttriutes y ny Permission to mke digitl or hrd copies of ll or prt of this work for personl or clssroom use is grnted without fee provided tht copies re not mde or distriuted for profit or commercil dvntge nd tht copies er this notice nd the full cittion on the first pge. To copy otherwise, to repulish, to post on servers or to redistriute to lists, requires prior specific permission nd/or fee. SIGMOD 8, June 9 12, 28, Vncouver, BC, Cnd. Copyright 28 ACM /8/6...$5.. Gutm Ds University of Texs t Arlington gds@cse.ut.edu Anthony K. H. Tung Ntionl Univ. of Singpore tung@comp.nus.edu.sg other tuple. Intuitively, the skyline consists of the tuples tht hve uniquely interesting comintion of ttriute vlues tht no other tuple cn mtch. Given the prcticlity of skyline queries, which rises from the elegnt nd prmeterless mnner in which they cpture notion of interestingness, previous work hs concentrted on the efficient evlution of skyline queries in oth offline nd online environments. In n offline environment dt resides on disk nd skyline queries re nswered on demnd, while in n online dt streming environment the skyline of the most recent strem dt is continuously mintined up to dte. Most of this work resoned out tuples with numericl ttriutes nd totlly ordered domins, nd relied on the clenness of the dominnce reltion etween tuples, induced y the linerity of the numericl domins, in order to derive efficient solutions. However, in rel pplictions dt cn either include or e exclusively comprised of ttriutes tht re ctegoricl nd prtilly ordered in nture. A hierrchicl ctegoricl domin is possily the most fmilir exmple of prtilly ordered domin. Complex reltionships nd hierrchl structure cnnot e cptured y simple mpping of ctegoricl vlues to numers nd this immensely complictes the skyline computtion prolem. Recent work [5] considered the on-demnd evlution of skyline queries on tuples with prtilly ordered ctegoricl ttriutes, ut in n offline environment. As we will susequently rgue nd experimentlly demonstrte, the proposed techniques re inpproprite for highly dynmic dt streming environment where tuples constntly flow into the system. In this setting, we require n efficient solution to continuously mintin the skyline up to dte for the most recent tuples tht rrived in the strem. This leves significnt gp in the rry of ville skyline techniques. The omission ecomes more importnt when one considers the wide pplicility of such n online skyline mintennce solution for prtilly ordered dt. As n exmple, consider service tht ggregtes nd displys news rticles s they re pulished y news sources. News posts streming into the system re ssocited with ctegoricl ttriutes like the nme of the news source, the suject of the event nd the geogrphicl re ssocited with the event. An expert hs defined prtil order over the ctegoricl domins expressing the service s preferences nd defining its unique style. The system will then select for disply, or more extensive filtering y n expert, the most interesting news tht comprise the skyline of the most recent rticles. For exmple, skyline rticle is of interest ecuse it ws pulished in high qulity news source nd is relted to populr geogrphicl re, even though the suject itself might not e tht preferle. In this pper, we identify nd study the prolem of mintin- 239

2 ing the skyline of streming dt with prtilly ordered, ctegoricl ttriutes nd relize two novel techniques tht constitute the uilding locks of STARS (Streming Arrngement Skyline), the proposed efficient solution to the prolem. In prticulr, we ssume sliding window model of strem computtion nd introduce lightweight, grid-sed dt structure for indexing the tuples in the system uffer. Our initil, sic indexing solution is progressively refined: we first identify nd utilize property tht is unique to the grid-oriented structure of the index nd susequently develop techniques tht offer flexiility in controlling the grnulrity of the grid. The resulting indexing structure cn grcefully dpt to tuples with mny ttriutes nd prtilly ordered domins of ny size nd structure in n optiml mnner. We susequently study the dominnce reltion etween two tuples with prtilly ordered ttriutes in the dul spce: tuples re mpped to lines nd the interction of their corresponding lines is used in order to infer their dominnce reltion. This mpping llows us to utilize powerful tools from computtionl geometry, known s geometric rrngements, in order to orgnize nd query the skyline efficiently. As we discuss, the rrngement-sed orgniztion of the skyline llows us to nswer dominnce queries y considering only smll frction of the skyline tuples. The rest of the pper is orgnized s follows. In Section 2 we survey relted work. In Section 3 we introduce the sic definitions nd nottions tht we will use throughout this pper nd offer high level discussion of the skyline mintennce tsk. The core techniques comprising our solution re presented in Section 4. Section 5 presents our experimentl evlution of the proposed solution, while Section 6 concludes the pper. 2. RELATED WORK Since the inception of the skyline opertor [4], reserchers hve considered the efficient evlution of skyline queries over numericl dt in the sence [8, 12] or presence [24, 16, 23, 18] of supporting indexing structures. More recent work hs concentrted on vritions of the originl query [7, 6, 2]. In this section we riefly review the relevnt literture. A more comprehensive review of the re is ville elsewhere [18]. The Block-nested-loops lgorithm introduced in [4] reds dt sequentilly from disk, while mintining in memory the temporry skyline of the tuples tht hve een red so fr. At the end of the computtion, when ll dt hve een red, the temporry skyline is the true skyline of the dt set. [8] oserved tht if the dt re first sorted in n order tht is comptile with the dominnce reltion, then the mintennce of the in-memory temporry skyline ecomes simpler nd more efficient. The LESS lgorithm of [12] cpitlizes on this ide nd integrtes skyline computtion with the externl sorting procedure. Skyline computtion cn gretly enefit y the presence of supporting indexing structure. The BBS lgorithm of [23] utilizes n R-tree to progressively construct the skyline. The R-tree is used to prioritize ccess over nodes tht re likely to contin skyline tuples nd to prune entire nodes whose tuples re definitely dominted y the prtilly constructed skyline. The BBS lgorithm ws found to e superior thn the index-sed solutions presented in [24, 16]. Recent work [18] introduced B-tree vrint tht stores nd clusters the tuples sed on their Z-order, which is comptile with the dominnce reltion. The size of the skyline cn increse drmticlly with dt dimensionlity. This is incomptile with the skyline s role s n explortory tool. In order to compenste, [6] introduced the notion of k-dominnce: tuple is declred dominnt s long s it is etter thn nother tuple on suset of its ttriutes. [2] dopted different pproch to the sme prolem nd introduced lgorithms for computing the k most representtive skyline tuples. With respect to skyline mintennce, [26, 18] discuss the prolem for non-streming, numericl dt. However, most relevnt to our work re existing solutions for performing skyline mintennce for strem of numericl dt [25, 19, 21]. These techniques mke no provision for prtilly ordered ctegoricl dt. The work of [5] is designed to hndle such dt, leit in n offline environment. Becuse of the limittions of the techniques presented in [5] when pplied to streming dt, we initite study of the prolem of mintining the skyline of streming dt with prtilly ordered ttriutes nd design novel solution for performing this tsk. 3. BACKGROUND 3.1 Definitions An unounded strem of tuples rrives t the system t high rtes. We mintin limited-cpcity, sliding-window uffer B in memory tht only stores the n most recent tuples from the strem. When new tuple rrives from the strem, the oldest tuple in the uffer is removed in order to free up spce for the incoming tuple. At ny time instnce, the contents of the uffer constitute dt set denoted y D. The dt set is comprised of n tuples t 1,...,t n with d ctegoricl ttriutes X 1,...,X d. The domin Dom i of ech of the ttriutes is prtilly ordered nd constitutes prtilly ordered set, lsoreferredtosposet. Ech domin Dom i is ssocited with inry reltion i.let,, c e three elements of Dom i. The prtil order reltion i is trnsitive ( i nd i c implies i c),reflexive ( i holds) nd ntisymmetric (if i nd i, then = ). We further denote with i the strict ordering reltion, i.e., i implies tht i nd. We will lso refer to the reltion i s domintes. Additionlly, we sy tht nd re comprle if either i or i nd incomprle otherwise. Lstly, we will lso denote the reltion i s i. Posets re commonly represented s directed cyclic grphs. Ech domin vlue is mpped to vertex nd directed edge is introduced for ech pir of comprle vlues whose reltion cnnot e inferred y using the trnsitive property of the prtil order reltion. The following exmple clrifies the forementioned definitions. EXAMPLE 1. Consider the poset of Figure 1. Vlues nd re comprle nd domintes. On the contrry, vlues nd c re incomprle. Furthermore, due to trnsitivity in the ordering reltion, domintes d, ut n edge on the grph etween nd d would e redundnt, since their reltion cn e esily inferred. One cn notice tht given node, every other node in the poset tht is rechle y it, is lso dominted y it. d Figure 1: A simple poset. The definitions cn e esily extended to tuples comprised of d ctegoricl ttriutes. We will sy tht tuple t 1 domintes tuple t 2 nd write t 2 t 1 or t 1 t 2, if for every ttriute X i, t 2.X i i t 1.X i nd there is t lest one ttriute X j such tht t 2.X j t 1.X j. When two tuples t 1 nd t 2 do not dominte one c 24

3 nother, we will sy tht they re tied nd write t 1 t 2. Then, the skyline of dt set D is the suset of ll tuples tht re not dominted y ny other tuple. Notice tht the dominnce reltion for tuples is trnsitive nd not symmetric. This implies tht given dt set D, its skyline S nd tuple t D, in order to find out if t elongs to the skyline of D {t} we only need to check if t is dominted y tuples in S. If it is dominted y tuple in S, then of course it cnnot e prt of the skyline. However, if it is not dominted y ny tuple in S,then it is not dominted y ny tuple in D nd should therefore ecome prt of the skyline of D {t} EXAMPLE 2. Consider three tuples t 1, t 2 nd t 3 with two ctegoricl ttriutes. The domin of oth ttriutes is the poset of Figure 1. Let us ssume tht t 1 =(, ), t 2 =(, d) nd t 3 =(, c). Then, oth t 1 nd t 3 dominte t 2,utt 1 nd t 2 re tied (vlues nd c re incomprle). Therefore, the skyline of this smll dt set consists of tuples t 1 nd t Skyline mintennce At the core of existing solutions tht mintin the skyline of streming tuples with numericl ttriutes [19, 21, 25] is simple frmework tht cn lso e utilized for streming tuples with ctegoricl ttriutes. As mtter of fct, the frmework is independent of the definition of tuple dominnce. The definition only ecomes relevnt in the reliztion of the strct frmework tht we descrie. At ny given time, the uffer B contins the n most recent tuples from the strem. Let S e the skyline of the tuples in the uffer. A uffer updte, i.e., the insertion of new tuple in the uffer nd the expirtion of the oldest one, cn ffect the skyline in limited numer of wys. In prticulr, the incoming tuple cn either e dominted y t lest one tuple in the skyline nd therefore fils to ffect the skyline, or is not dominted y ny tuple in the skyline nd should therefore ecome prt of the skyline itself (s we rgued in Section 3.1). In tht cse, the incoming tuple might lso dominte tuples currently in the skyline which must of course e removed. Respectively, if the outgoing tuple does not elong in the skyline, then its expirtion hs not effect. However, if the tuple is prt of the skyline, then ll tuples in the uffer dominted exclusively y the outgoing tuple (i.e., dominted y the outgoing tuple, ut no other tuple in the skyline) must e inserted in the skyline. Therefore, skyline mintennce solution must efficiently support two opertions: (i) checking whether tuple is dominted y the current skyline nd (ii) retrieving the tuples in the uffer tht re dominted y the outgoing skyline tuple, since only these tuples re cndidtes for entering the skyline. The ility of ny technique to perform this second tsk efficiently cn e ugmented y utilizing the following oservtion. LEMMA 1. Let t 1,t 2 Be two tuples so tht t 1 t 2. Then, if t 2 rrived fter t 1 in the strem, t 1 will never e in the skyline of B. PROOF. Sincet 1 rrived efore t 2, it will lso leve the uffer efore t 2. Therefore, while t 1 is in the uffer, there will e t lest one tuple, nmely t 2, tht domintes it nd consequently cnnot ecome prt of the skyline. The lemm implies tht significnt numer of tuples in the uffer is irrelevnt for the skyline mintennce tsk, since they cn never ecome prt of the skyline. We will refer to the relevnt prt of the uffer s the skyuffer. Thus, when we need to mend the skyline fter the expirtion of skyline tuple, we only need to consider tuples in the skyuffer insted of the entire uffer. The incrementl mintennce of the skyuffer is simple. When new tuple rrives from the strem, it is inserted in the skyuffer, while ll the skyuffer tuples dominted y it re removed. When tuple expires, it is simply removed from the skyuffer. Algorithm 1 summrizes the high level strtegy tht is employed in order keep the skyline of the uffer up to dte. Notice tht the skyline S is suset of the skyuffer SB. After uffer updte, ny chnges to the composition of the skyline cn e optionlly reported. Algorithm 1 Skyline mintennce frmework Input: skyuffer SB, skyline S SB, incoming tuple in, outgoing tuple out if in not dominted y S then Insert in in S nd remove ny dominted tuples from S; end if Insert in in SB nd remove ny dominted tuples from SB; if out is in S then Find tuples in SB dominted y out nd use them to mend S; end if Remove out from SB; 4. EFFICIENT SKYLINE MAINTENANCE FOR CATEGORICAL TUPLES In this section we present two novel techniques for relizing the uilding locks of the skyline mintennce frmework: indexing the skyuffer so tht we cn efficiently identify the skyuffer tuples dominted y query tuple nd orgnizing the skyline in order to e le to rpidly nswer whether query tuple is dominted y the skyline. We initite the presenttion of the proposed techniques y riefly reviewing the notion of the topologicl sort of single poset nd discussing the extension of this ide to tuples comprised of multiple prtilly ordered ttriutes. Bsed on these results, we introduce our seline grid-sed solution for indexing the skyuffer nd discuss the dvntges of this pproch over potentil lterntives. This sic solution is progressively refined. The first enhncement exploits the unique structure of the grid index to optimize query evlution y focusing on specific, relevnt cells insted of n entire region of cells, mny of which cn e irrelevnt. The index is further refined y developing domin prtitioning technique tht offers solute control over the grnulrity of the grid. Prt of the technique is n lgorithm for constructing n optiml posetprtitionthtminimizestheexpected query evlution cost. We then focus our ttention on designing n efficient skyline orgniztion. This is ccomplished y identifying the connection etween the dominnce reltion of two tuples nd the interction of their dul spce representtion s lines. The mpping of tuples to lines llows us to utilize powerful tools from computtionl geometry, known s geometric rrngements, in order to orgnize nd query the skyline efficiently. As we discuss, the rrngement-sed orgniztion llows us to nswer dominnce queries y considering only smll frction of the skyline tuples. 4.1 Topologicl sorting A topologicl sort [2] is numering of the vertices of DAG such tht every edge from vertex numered i to vertex numered j stisfies i<j. Figure 2 presents poset nd two possile topologicl sorts. A poset cn hve lrge numer of vlid topologicl 241

4 sorts, lthough for our purposes ny one of them will e eqully pproprite. Finding topologicl sort for poset is liner cost opertion [2]. c d e f g h (i) c d e f g h (ii) c f d e h g Figure 2: Topologicl sorting. Informlly, topologicl sort of poset is liner ordering of its vlues which is comptile with its prtil-ordering reltion. In other words, if for two vlues, we hve, then will pper efore in the ordering. Therefore, the gurntee we otin is the following: for given vlue x, ll vlues dominted y x will pper fter it in the liner order, while x cn never dominte ny vlue tht precedes it in the ordering. Conversely, no vlue ppering fter x cn ever dominte it, while ll vlues tht dominte x pper efore it. This intuition is cptured y the following lemm. DEFINITION 1. Letv e vlue of prtilly-ordered domin. We denote y r(v) the integer corresponding to v s position in certin topologicl sort of the domin. LEMMA 2. Let v 1,...,v m e the m vlues of prtilly-ordered domin Dom. Thenv i v j only if r(v i) <r(v j). Consider for exmple vlue d nd the topologicl sort (ii) in Figure 2. d does not dominte ny of the vlues tht pper efore it nd ll vlues tht dominte it pper efore it (, in tht cse). Furthermore, ll vlues dominted y d (only g in this cse) pper fter it in the order. These oservtions nd resoning concerning single domin, cn e extended to multiple ttriute domins. Consider set of tuples with d prtilly-ordered ctegoricl ttriutes. For tuple t 1 to dominte nother tuple t 2, it needs to dominte t 2 in every ttriute 1. In order for this to e possile, ll d ttriutes of t 1 must e locted efore t 2 s ttriutes in the corresponding topologicl sorts. As efore, this is not n if nd only if reltion. The gurntee we hve is tht for t 1 to dominte t 2, its ttriutes must e locted efore t 2 s ttriutes in the corresponding liner orders. Formlly: LEMMA 3. Let t 1, t 2 e two tuples with d prtilly-ordered ctegoricl ttriutes X 1,...,X d.thent 1 t 2 only if r(t 1.X i) < r(t 2.X i), 1 i d. This reltion hs nother very useful impliction: given two tuples t 1 nd t 2, if there is disgreement in the ordering of the vlues for two of their ttriutes, then one cnnot dominte the other nd re therefore tied. LEMMA 4. Let t 1, t 2 e two tuples with d prtilly-ordered ctegoricl ttriutes X 1,...,X d. If i, j such tht r(t 1.X i) < r(t 2.X i) nd r(t 1.X j) >r(t 2.X j), thent 1 t Orgnizing the skyuffer tuples in grid One of our gols in developing n efficient skyline mintennce solution is indexing the skyuffer so tht we cn efficiently insert 1 To simplify the discussion, we ignore the cse of equl ttriute vlues. nd delete tuples, s well s identify the tuples dominted y query tuple. The lineriztion of poset vlues tht we introduced will llow us to do so. A tuple t(x 1,...,X d ) in the skyuffer cn e mpped to point (r(t.x 1),...,r(t.X d )). Then, in order to identify the skyuffer tuples tht re dominted y query tuple q(x 1,...,X d ), we only need to consider tuples/points t with q(x 1) t(x 1),...,q(X d ) t(x d ). All these tuples will e checked for dominnce ginst q in order to identify the ones dominted. Notice however tht this is precisely rectngulr rnge query tht cn e efficiently supported y vriety of sptil dt structures, like grid or n R-tree. We chose to uild our skyuffer indexing solution round simple grid. The reson for doing so is twofold. Firstly, previous reserch rgues [9, 17, 22] tht in streming environment, the potentil query performnce gins y using more sophisticted dt structure re offset y the hevy mintennce costs induced y the dt voltility, which is inherent in streming ppliction. Secondly, the unique structure of the grid intercts fvorly with the properties of our prolem. This interction will llow us to susequently introduce optimiztions nd refinements whose pplicility is exclusive to our grid-sed index. Let us discuss concrete exmple tht will help clrify how grid cn e used to index the skyuffer nd identify the skyuffer tuples dominted y query tuple. EXAMPLE 3. Consider set of tuples with two ctegoricl ttriutes, the domin of oth ttriutes eing the poset of Figure 2. Suppose tht the poset vlues hve een mpped to integers ccording to topologicl sort (i) of Figure 2. Then, we crete the grid y using this topologicl sort s the grid scles nd plce the skyuffer tuples in its cells. Figure 3 illustrtes. Ech grid cell corresponds to unique comintion of ttriute vlues nd only contins tuples with these exct vlues. As n exmple, the cell corresponding to tuples with ttriute vlues (d, e) hs een mrked with n in the figure. h g f e d X Figure 3: Orgnizing the skyuffer s grid. In our 2-dimensionl exmple, ll tuples dominted y certin tuple t must hve vlues in oth ttriutes tht pper fter the corresponding vlues of t in the liner order. However, tuples with this property re plced in cells lying in single rectngulr re of the grid. In our running exmple of Figure 3, ll tuples tht re dominted y tuple (d, e) re locted in the rectngulr re whose upper-right corner is cell (d, e). Notice tht this does not imply tht ll tuples in tht re re dominted. It merely mens tht the tuples tht re dominted y (d, e) must lie in tht re. As mtter of fct, only tuples locted in the cells mrked with in Figure 3 re dominted. Summrizing our progress so fr, we demonstrted how grid cn e used to index the skyuffer tuples. The scles of the grid c c d e f g h 242

5 for ech dimension is the lineriztion of the corresponding poset. Then, in order to identify the skyuffer tuples tht re dominted y query tuple, we need to issue rectngulr rnge query, which the grid cn efficiently support, nd only consider the tuples lying in the query re. Insertions nd deletions cn lso e crried out extremely efficiently. Depth Depth 1 Depth 2 c d e f g h f,g,h c,d,e X,, c,d,e f,g,h 4.3 Improving the skyuffer orgniztion Visiting only relevnt cells An dditionl dvntge of the grid-sed index is tht insted of issuing rectngulr rnge query in order to visit the cells tht potentilly contin dominted tuples, we cn directly identify nd process precisely the cells tht contin dominted tuples. We will refer to this unique cpility of the grid-sed index s the ility to perform focused serch. Let us revisit the exmple of Figure 3. We clim tht we cn directly visit the cells mrked with insted of every cell in the rectngulr region. The query tuple is (d, e). The domin vlues dominted y d (nd including d) re{d, g}. Respectively, the domin vlues dominted y e re {e, g, h}. Then, due to the definition of dominnce (Section 3.1), only tuples with vlues in {d, g} {e, g, h} re dominted y (d, e). This is cptured y the following lemm. LEMMA 5. (Focused Serch) Let t e tuple with d prtillyordered ctegoricl ttriutes X 1 Dom i,...,x d Dom d.let dom(t.x i) e the vlues in Dom i such tht t.x i v, v Dom i. Then, t domintes tuple s if nd only if s dom(t.x 1) dom(t.x d ). The lemm llows us to identify nd focus on the cells in the grid contining tuples dominted y the query tuple, which is clerly much more efficient thn issuing rectngulr rnge query nd considering tuples tht re irrelevnt to the query Controlling the grid grnulrity A prolem with the grid-sed index - s presented so fr - is the lck of control over the grnulrity of the grid. The scles of the grid for ech dimension re directly derived from topologicl sort of the corresponding domin nd introduce s mny uckets per scle s vlues in the domin. While this fine grnulrity might e cceptle for tuples with few ttriutes nd domins with hndful of vlues, it is ovious tht the solution does not scle. The numer of cells in the grid for tuples with d ttriutes is Dom 1 Dom d. As n exmple, if the tuples hve 4 ttriutes nd ech domin size is out 5, then the grid would e comprised of 62.5 illion cells, which is clerly infesile. In generl, the grid grnulrity hs significnt impct on the performnce of ny grid-sed indexing solution. Since pruning t query time occurs t the cell level, corser grnulrity nd therefore igger cells result in less effective pruning. On the other hnd, setting finer grnulrity produces greter numer of smller cells. Besides incresed memory requirements, such n rrngement results in incresed query time, since ccessing cell is ssocited with n overhed. There is lwys well-performing grnulrity rnge where these competing trends do not dominte query time. This rnge is certinly ppliction specific, ut cn lso e dt dependent, so it is prmount to provide flexiility in controlling grid grnulrity. We egin the introduction of our grnulrity control mechnism y conducting few simple oservtions. First, let us formlly define the depth of domin vlue. Figure 4: Depth-sed vlue grouping. DEFINITION 2. Consider DAG nd its vertices. A vertex is source if it hs no incoming edges. Then, the depth of vertex in DAG is the length of the longest pth from source to the vertex. Figure 4 depicts n exmple poset nd the ssocited depth of its domin vlues. In the figure we cn oserve tht vlue only domintes other vlues tht re locted deeper in the poset. This implies tht sorting the vertices in incresing depth vlues (nd reking ties ritrrily) produces perfectly vlid topologicl sort. Using this insight, we cn restte Lemm 2 s follows. LEMMA 6. Let v 1,...,v m e the m vlues of prtilly-ordered domin Dom. Thenv i v j only if depth(v i) <depth(v j). The lemm gurntees tht given poset vlue, ll vlues tht it domintes hve to e locted deeper in the poset, ut this doesn t imply tht ll vlues locted deeper re dominted. Lemmt 3 nd 4 cn lso e restted in terms of depth, ut we do not do so in the interest of spce. The impliction of these results is tht we cn crete nd use the grid using scles t the grnulrity of depth level. Let us discuss concrete exmple. EXAMPLE 4. Consider dt set consisting of tuples with 2 prtilly-ordered ctegoricl ttriutes, the domin of oth of them eing the poset of Figure 4. Then, we cn group domin vlues tht lie on the sme depth nd crete the grid of Figure 4. In Section 4.2, every cell would contin tuples with the sme ttriute vlues. Now, tuples with corresponding ttriutes tht lie t the sme depth level re plced in the sme cell. For exmple, tuple (d, e) lies in the cell mrked with in Figure 4, long with other tuples with vlues in {c, d, e} {c, d, e}. This reduction of the grid grnulrity does not come without price. When querying the grid to retrieve the tuples dominted y the query tuple, we cn no longer perform focused serch nd only ccess cells tht exclusively contin tuples dominted y the query tuple. Insted, we must ccess ll cells contining tuples with ttriute vlues locted deeper in their corresponding posets. This is equivlent to full rectngulr rnge query (Figure 4). Furthermore, the cells cn contin tuples oth dominted nd not dominted y the query tuple nd therefore dominnce check ginst ll the tuples in the cells is required to identify the dominted tuples Poset prtitioning The proposed depth-sed grouping of poset vlues improves the initil solution, ut does not llow to explicitly set the desired grid grnulrity nd is tied to the structure of the posets - constrint tht cn introduce prolems. As n exmple, consider poset with only two depth levels, ut mny vlues spred evenly etween the levels. The solution of Section would produce oversized grid cells nd therefore reduced pruning efficiency t query time. 243

6 In Section 4.3.2, we grouped ll the vlues of poset hving the sme depth. We cn further refine this prtition of vlues into groups y creting more thn one group per depth level. Let us see the potentil dvntges of such n pproch with the following exmple. EXAMPLE 5. Suppose tht our dt set contins tuples with two prtilly-ordered ctegoricl ttriutes, the domin of oth eing the poset of Figure 5. The vlues of the domin hve een grouped s illustrted in the figure. If we order the groups in scending order of their depth vlue, reking ties ritrrily, we gin come up with vlid topologicl sort for the poset. We cn therefore use the sme rtionle s efore to crete nd query the grid. Depth Depth 1 Depth 2 c d e f g h g,h f d,e X c Figure 5: Refined depth-sed vlue grouping. Figure 5 presents the resulting grid y using s scles the grouping of Figure 5. As n exmple, tuple (d, e) lies in the cell mrked with. As efore, ll cells tht cn potentilly contin tuples tht re dominted y (d, e) re locted in the rectngulr re highlighted in Figure 5. However, unlike the exmple we studied in Section 4.3.2, not ll cells in the rectngulr re contin tuples tht cn e dominted y the query tuple. The cells tht contin cndidtes re mrked with. This llows us to use focused serch in order to directly ccess relevnt cells insted of issuing rnge query. Note tht cells will contin tuples tht re oth dominted nd not dominted y the query tuple, ut we cn completely ignore cells tht exclusively contin not dominted tuples. Formlly, let Dom e prtilly ordered domin with vlues v 1,...,v m tht hs een prtitioned into k groups, g 1,...,g k.we sy tht group g i domintes nother group g j if there exists one vlue in v i g i nd nother vlue v j g j such tht v i domintes v j. Let dom(g) e the union of the groups dominted y g, including g itself. Furthermore, let g(v),v Dom e the group tht vlue v elongs to. Then, in order to locte the tuples dominted y query tuple q(x 1,...,X d ) we only need to visit the grid cells tht contin groups dom(g(q.x 1)) dom(g(q.x d )). The intuition is tht we only need to check tuples in the groups where the vlues dominted y v i lie. To ese nottion we will denote the vlues in dom(g(v i)) s dom g(v i) nd sy tht the vlues re group-dominted y v i. A nturl question tht rises is tht given udget of B uckets for poset, how should the poset e prtitioned into groups. Not ll groupings will offer eqully good pruning opportunities tht the focused serch procedure cn exploit. In the worst cse, we cn come up with scenrio where even though we hve used more uckets thn depth levels, we still end up visiting s mny cells s we would visit y issuing rnge query on the grid. This cse would e equivlent in cost to the simpler depth-sed grouping. Let us concentrte on single ttriute with vlues v 1,...,v m nd grouping g 1,...,g k. Hd we creted the grid t the finest c d,e f g,h grnulrity possile, then, given query tuple with vlue v i for the ttriute, we would only exmine (check for dominnce) tuples with vlues in dom(v i). However, ecuse of the grouping of domin vlues we lso need to exmine ll tuples with vlues tht re group-dominted y v i, i.e., tuples with vlues in dom g(v i). Let us ssume tht the domin vlues re uniformly distriuted. Then, the numer of tuples tht must e checked for dominnce is n domg(vi), i.e., n tuples, where n is totl numer of tuples in m m the skyuffer, for every vlue in dom g(v i). Furthermore, the proility tht the query tuple hs ttriute vlue v i is 1. Therefore, m the expected numer of tuples tht must e checked for dominnce in every query is E = m 1 n i domg(vi). Sincen nd m re m m constnts, in order to minimize E we need to come up with grouping tht minimizes i domg(vi), which is the sum of the numer of group-dominted vlues, from every vlue in the domin. Unfortuntely, we cn demonstrte tht even for simple instnces, the prolem is NP-complete. THEOREM 1. Given prtilly ordered domin Dom withvlues v 1,...,v m, the prolem of identifying prtition of the domin into k groups g 1,...,g k, so tht m i dom g(v i) is minimized, is NP-complete. PROOF. A simple instnce, involving domin with only two levels, cn e reduced from the mximum k-set pcking prolem, which is NP-Complete [3]. To compenste, we developed prtitioning heuristic tht we found to work extremely well in prctice, s we experimentlly demonstrte in Section 5. The heuristic hs two min steps: it first lloctes frction of the uckets ville to ech level nd then performs greedy, ottom-up prtition of the poset, i.e., it strts from the deepest level nd prtitions it, then prtitions the level ove nd so on, until the uppermost level is prtitioned. In order to prtition level, the heuristic leverges locl informtion coming from the lredy prtitioned level elow nd the level ove. The ucket lloction strtegy tht we selected is the following: ech level is initilly ssigned one ucket nd the remining uckets re distriuted mong the depth levels proportionlly to the numer of nodes tht they contin. The outline of this prtition frmework is illustrted in Algorithm 2. Algorithm 2 Prtitioning heuristic frmework Input: Poset with vlues v 1,...,v m, numer of uckets B Output: Disjoint vlue groups G 1,...,G B Vriles: Mximum depth level of the poset h, set of groups t depth i, {G} i Group together vlues ccording to their depth into groups D 1,...,D h ; Allocte to level i, i =1+ D i (B h) uckets; m for i = h down to 1 do Utilize informtion from domin vlues in D i 1 (level ove) nd groups in {G} i+1 (level elow); Prtition vlues in D i into i groups G i,1,...,g i,i nd plce them in {G} i ; end for Let us now concentrte on how depth level is prtitioned given udget of k uckets for tht level. The prtitioning is sed on locl informtion, coming from the level ove nd the level elow tht hs lredy een prtitioned. For ech pir of nodes we define notion of enefit tht we cn expect y plcing these nodes into different groups. 244

7 c1 c2 c3 c c1 c2 c3 c4 1/k)w(E j) to the weight of the cut, where w(e j) is the sum of edge weights in E j. This is direct consequence of our plcement strtegy. Then C = l j=1 Cj (1 1/k) l j=1 w(ej) =(1 1/k)w(E),wherew(E) is the sum of ll edge weights in the grph. However, w(e) OP T, therefore, C (1 1/k)OP T. Figure 6: Poset prtitioning heuristic. EXAMPLE 6. Consider the exmple of Figure 6. Suppose tht we wnt to mesure the enefit of seprting nodes 1 nd 2 (Figure 6). Rememer tht we need to minimize the numer of poset vlues tht ech vlue group-domintes. Then, if we plce them in the sme group (Figure 6): Node 1 will not e ffected, since it lredy group-domintes nodes c1 to c4 in the lower level. Therefore the enefit y seprting 1 nd 2 is. Node 2 however, will now group-dominte nodes c1 nd c2. This would increse the cost function y t lest 2. Therefore, the enefit for seprting 1 nd 2 is +2. Node 1 lredy group domintes nodes 1 nd 2. Therefore no enefit is derived e seprting them. If 1 nd 2 re grouped together, node 2 will group-dominte node 1, esides node 2. Therefore, y seprting 1 nd 2 we derive enefit of +1 for 2. The totl enefit for seprting 1 nd 2 is now +2++1=3. Therefore, for ech pir of nodes in level, we cn connect them with n undirected edge weighted y the enefit we cn derive y seprting the nodes. Then, good prtitioning for this level cn e done y considering the mximum k-cut of the nodes. The mximum k-cut will prtition the nodes of the level into k groups so tht the totl weight of edges spnning two groups is mximized. Effectively, this procedure mximizes the sum of the pirwise enefits for this level. Generting mximum k-cut of grph with n nodes is n NPcomplete prolem. [11] introduced semi-definite progrmming (SDP) relxtion lgorithm tht provides 1 1/k +2lnk/k 2 pproximtion to the optiml solution. However, much simpler greedy heuristic cn identify 1 1/k pproximtion to the optiml solution, gurntee tht is only mrginlly worse thn the one offered y the SDP relxtion. The greedy lgorithm considers the nodes in ritrry order nd plces them in one of the k groups g 1,...,g k. A node v is plced in the group whose nodes v g minimize the sum v g g w(v, vg), wherew(v, vg) is the weight (enefit) of the edge etween v nd v g, thus mximizing the weight of the cut edges. The procedure for prtitioning the poset vlues of depth level is illustrted in Algorithm 3. THEOREM 2. The weight of the k-cut produced y Algorithm 3 is greter thn (1 1/k)OP T. PROOF. The weight C of the k-cut is the sum of the edges tht spn different groups. Let G(V,E) e the grph nd v 1,...,v j,...,v l the order in which its nodes re processed. We define disjoint prtition of edges E into groups E j = {v iv j i <j}. Then, the plcement of node v j in group contriutes y C j (1 Algorithm 3 Level prtitioning lgorithm Input: Poset vlues v 1,...,v l, numer of uckets k Output: Disjoint vlue groups g 1,...,g k For every pir of nodes v i, v j, clculte enefit w(v i,v j ); Initilize groups to e empty; for i =1up to l do Plce v i in group g j such tht v j g j w(v i,v j ) is minimum; end for Our prtitioning heuristic ssumes tht ttriute vlues re uniformly distriuted. Nevertheless, potentil knowledge out the vlue distriution could e incorported in the prtitioning process y modifying in n pproprite mnner the enefit vlues etween the nodes. Lstly, we hve ssumed tht the numer of uckets tht re llocted for prtitioning poset is greter thn the poset s mximum depth, so tht t lest one ucket is ville per depth level. In the rre cse tht fewer uckets thn levels re ville, we cn merge into single group consecutive depth levels. A nturl strtegy tht cn utilize this oservtion would e to merge consecutive levels into groups, so tht every group contins pproximtely the sme numer of poset vlues. This is identicl to the process of producing n equi-depth histogrm [15]. 4.4 Arrngement representtion of the skyline The second uilding lock of the mintennce frmework is n efficient skyline orgniztion. The employed indexing structure must e le to determine whether query tuple is dominted y the skyline, checking s few skyline tuples s possile. This opertion is essentil for good performnce s it is conducted for ech incoming strem tuple, s well s during the skyline mending procedure tht occurs fter skyline tuple expirtion. To chieve this gol, we study the dominnce reltion in the dul spce nd design n efficient solution tht utilizes geometric rrngements [1, 13] Arrngements of lines The rrngement A(L) of finite collection of lines L, isthe prtition of the plne induced y the lines in L [1, 13]. The lines decompose the 2-dimensionl plne into -dimensionl vertices (intersections of lines), 1-dimensionl edges (line segments etween vertices) nd 2-dimensionl fces (the convex tiles of the plne ounded y the intersecting lines). Figure 7 presents n rrngement of three lines, with fces highlighted in grey. Arrngements re well studied structures nd there exists welth of comintoril results tht reson out their complexity, s well s fir numer of min memory dt structures for storing nd operting on them. An rrngement of s lines is composed of O(s 2 ) vertices, O(s 2 ) edges nd O(s 2 ) fces. An interesting sustructure of n rrngement is the zone of line not present in the rrngement. The zone is comprised of the fces sted y the line, nd the celerted Zone Theorem sttes tht these fces re in turn comprised of only O(s) edges [1, 13]. It is prtly ecuse of the fvorle comintoril ound promised y the Zone Theorem, tht rrngements re 245

8 ε 2 ε 1 ε 3 Arrngement exmple e'3 e3 f1 e1 e'1 e2 e'2 The DCEL dt structure Figure 7: Arrngements of lines. of gret prcticl, esides theoreticl interest: insertions nd deletions of lines, nd mny interesting queries on the rrngement cn e performed in liner O(s) time. Although vriety of dt structures is ville for representing n rrngement, the one most suitle for our purposes is the douly-connected-edge-list (DCEL) dt structure [1] (Figure 7). At its core, the rrngement is plnr grph consisting of vertices nd undirected edges connecting these vertices. The DCEL uses pir of twin directed hlf-edges, moving in opposite directions, to represent ech edge connecting two vertices. Furthermore, the DCEL mintins dditionl incidence nd connectivity informtion in order to offer gret flexiility in trversing the rrngement. For exmple, ll the hlf-edges comprising the internl oundry of fce re linked in circulr list (edges e 1, e 2 nd e 3 in Figure 7) nd ech hlf-edge mintins link to its twin (edges e i nd e i in Figure 7). This informtion suffices to enle the trversl of the zone of n externl line nd consequently the identifiction of ll lines in the rrngement intersected y the externl line. To summrize, the DCEL cn store the rrngement of s lines using O(s 2 ) spce nd cn perform insertions, deletions in O(s) time. Furthermore, it cn identify ll lines intersected y query line in O(s) time. Although the comintoril ounds ssocited with the rrngements might not seem ttrctive, rrngements hve een successfully utilized in demnding streming environment in order to perform opertions similr to the ones required in the current prolem [9]. Given tht in our scenrio s will e equl to the size of the skyline, which should e normlly smll, we cn expect the rrngement sed skyline orgniztion to perform well, in ddition to the dvntges tht we susequently present Dominnce checking in the dul spce In the context of computtionl geometry nd relted disciplines, the dul spce is symmetricl version of the originl (or priml) prolem spce, where ech point in the priml is mpped to line in the dul nd vice vers. Priml/dul trnsformtions re used widely s they offer fresh insight into the prolem nd point to solutions tht re not esy to conceive in the priml spce. We hve lredy discussed in Sections 4.1 nd 4.2 how tuples with d prtilly-ordered ctegoricl ttriutes cn e mpped to d- dimensionl points y utilizing topologicl sort of the ttriutes nd representing ech ttriute vlue with its position in the corresponding liner order. Lemmt 3 nd 4 utilized this representtion to reson out the possile dominnce reltion etween two tuples, given their point representtion. Let us initilly concentrte on tuples with two ttriutes. Rememer tht we denote with r(v) the position of vlue v in topologicl sort of its corresponding domin. We define the following mpping: ech tuple t(, ) is mpped to line y = r x r in the dul crtesin plne (x, y). Then, we cn prove tht two tuples re comprle (one domintes the other) if the intersection of their corresponding lines lies in the positive hlf of the x xis in the dul plne. As with ll our results, this is not n iff reltion. However, we cn e sure tht if the intersection point lies on the negtive hlf of the xis, then the tuples re definitely tied. LEMMA 7. Consider two tuples t 1, t 2 with two ctegoricl ttriutes X 1, X 2. Then, t 1, t 2 re comprle only if the intersection point (x I,y I) of lines y = r(t 1.X 1) x r(t 1.X 2) nd y = r(t 1.X 1) x r(t 1.X 2) hs x I >. PROOF. Using simple lger, we cn find tht the x I coordinte of the intersection point is x I = r(t1.x2) r(t2.x2) r(t 1.X 1) r(t.notice tht if x I <, thenr(t 1.X 2) <r(t 2.X 2) nd r(t 1.X 1) > 2.X 1) r(t 2.X 1) or r(t 1.X 2) >r(t 2.X 2) nd r(t 1.X 1) < (t 2.X 1). In either cse, Lemm 4 sttes tht tuple t 1 nd t 2 re tied. If x I >,thenr(t 1.X 2) <r(t 2.X 2) nd r(t 1.X 1) <r(t 2.X 1) or r(t 1.X 2) >r(t 2.X 2) nd r(t 1.X 1) > (t 2.X 1). Agin, in either cse, Lemm 3 sttes tht the tuples cn e comprle. Lemm 7 points to technique tht llows us to prune significnt frction of the skyline tuples when checking query tuple t for dominnce: we cn mp the skyline tuples to lines nd store in the rrngement only the prt of the lines tht lies on the positive hlf of the x-xis. Then, in order to nswer whether t is dominted y the skyline, we mp t to line nd query the rrngement to retrieve the lines/tuples intersected y t. Their intersection point is gurnteed to hve x I >, since only the positive prt of the lines is stored in the rrngement. Consequently, tuples not intersected y t in the rrngement, nd which re definitely tied with t, re pruned. An dditionl dvntge is tht the query on the rrngement returns the intersected tuples progressively, therefore the computtion cn stop s soon s tuple tht dominted t is found. EXAMPLE 7. Consider skyline consisting of three tuples t 1, t 2, t 3. The tuples re mpped to lines in the dul plne nd their positive hlf is stored in n rrngement (Figure 8). The vertices of the rrngement re emphsized using solid ullets. In order to determine whether query tuple q is dominted y skyline tuple, q is lso mpped to line nd the rrngement is queried. Using the connectivity informtion provided y the DCEL structure to trverse the rrngement, we progressively retrieve the tuples intersected y q, i.e., t 2 nd t 3 in our exmple. The intersection of q with t 3 is encountered first, therefore q will initilly e checked for dominnce ginst t 3.Ifqisdominted, the query is nswered nd the trversl stops of the rrngement stops. Otherwise, the trversl continues nd intersected tuple t 2 is recovered nd checked for dominnce. Notice tht q does not intersect t 1 nd therefore we do not need to check for dominnce ginst it. q t 1 t 2 t 3 y 1 2 Figure 8: Utilizing n rrngement for pruning. The technique cn e directly pplied to tuples with d ttriutes X 1,...,X d. In tht cse, we need to ritrrily select two ttriutes X i nd X j nd use them consistently to mp tuples t to t3 t 2 t1 x 246

9 lines y = r(t.x i) x r(t.x j) nd store them in n rrngement. The query tuple is lso mpped to line using the sme two ttriutes X i nd X j nd the forementioned trnsformtion. Then, s in the 2-dimensionl cse, the query tuple will e tied with the skyline tuples tht it does not intersect in the rrngement nd therefore we only need to progressively check for dominnce ginst intersected tuples. This holds since if there is n ordering mismtch in the corresponding topologicl sorts for ny two of their ttriutes, then the tuples re tied (Lemm 4). Formlly: LEMMA 8. Consider two tuples t 1, t 2 with d ctegoricl ttriutes X 1...,X d.letx i, X j e ny two of the ttriutes. Then, t 1, t 2 re comprle only if the intersection point (x I,y I) of lines y = r(t 1.X i) x r(t 1.X j) nd y = r(t 1.X i) x r(t 1.X j) hs x I >. For tuples with more thn two ttriutes, we lso considered more complex skyline orgniztions tht utilized multiple low dimensionl rrngements, ut the improved pruning efficiency nd query performnce filed to compenste for the dditionl mintennce overhed. 4.5 Numericl ttriutes So fr in our discussion, we hve only considered tuples comprised exclusively of prtilly-ordered ctegoricl ttriutes. Nevertheless, the proposed solutions cn hndle tuples with mixed ctegoricl nd numericl ttriutes without requiring ny dditionl modifiction. This is possile since prtil-ordered domins re generliztion of fully-ordered numericl domins. The DAG representing numericl domin is simply liner chin of vlues nd, s it is evident, the proposed techniques cn hndle posets of ny size nd shpe. More specificlly, for the rrngement orgniztion of the skyline, when numericl ttriute is used in the tuple to line mpping, we cn directly use the numericl vlues insted of their position in the (unique) topologicl sort nd our nlysis remins perfectly vlid. On the other hnd, when constructing nd using the grid-sed skyuffer index, the scles of the numericl ttriutes will consist of uckets corresponding to disjoint rnges of numericl vlues, i.e., s in norml numericl grids. Then, ech ucket group-domintes ll the other uckets tht contin smller numericl vlues. 5. EXPERIMENTAL EVALUATION 5.1 Adpting existing work In lck of techniques deling directly with the prolem of mintining the skyline of streming ctegoricl dt, we dpted the offline, ctegoricl skyline evlution technique of [5] for use in streming environment. Previous work on mintining the skyline of numericl tuples [25] hs utilized R-trees to index the skyuffer nd the skyline. In the numericl domin, identifying the tuples of dt set tht either dominte or re dominted y query tuple is equivlent to rectngulr rnge serch opertion tht cn e efficiently supported y n R-tree, or ny other dt structure offering similr query cpilities. Chn et l. [5] study the prolem of evluting externl (i.e., disk-sed) skyline queries ginst tuples with ctegoricl ttriutes. In their solution, every ctegoricl ttriute is mpped to two numericl ttriutes, Dom i R 2 +. Therefore, tuple with d ctegoricl ttriutes is mpped to tuple with 2d numericl ttriutes. In the suggested solution, the tuples of the dt set re indexed in the numericl domin. The mpping tht [5] employs hs the following property. Consider two ctegoricl vlues, Dom i tht re mpped to two 2-dimensionl points p nd p. If p domintes p, then conclusively. However, if p nd p re tied, we cn mke no inference out the reltion of nd : we could hve, or. This is illustrted in Figure 9. Ctegoricl vlue is mpped to point p in the numericl domin nd prtitions the plne into four qudrnts. Any vlue tht is mpped to re (I) domintes, vlues mpped to re (II) re dominted y, while we cnnot drw ny conclusions if the vlue is mpped to qudrnts (III) or (IV). (III)? p (II) dominted y (I) domintes Figure 9: Ctegoricl to numericl domin mpping in [5]. Due to the properties of the mpping, if the skyline itself is orgnized in the trnsformed numericl domin, flse positive tuples will creep into the skyline. In order to compenste, the uthors suggest solution tht orgnizes the skyline in the originl ctegoricl domin. The tuples re prtitioned into four disjoint groups tht hve the following property: some tuple groups cn never dominte some of the other tuple groups. This reduces the numer of tuples tht need to e considered when checking if tuple is dominted y the skyline or not. The min components of the solution presented in [5] cn e dpted to the skyline mintennce frmework. The skyline cn e orgnized s suggested y the uthors. The skyuffer cn e indexed with n R-tree or grid. When tuple needs to e inserted in the skyuffer, rnge query identifies nd removes tuples lying in the high-dimensionl equivlent of re (II). However, this implies tht tuple in res (III) nd (IV) tht re dominted y the inserted tuple will remin in the skyuffer, incresing its size. When tuple is removed from the skyline, we must use ll tuples tht lie in res (II), (III) nd (IV) in order to retrieve ll the tuples in the skyuffer tht re dominted y the expiring tuple. However, in high dimensionl spce, these three res comprise lmost the entire serch spce. Although the techniques of [5] re efficient for evluting skyline queries on disk-sed ctegoricl dt, they do not provide n ttrctive streming solution. As we susequently demonstrte in Section 5.4, the increse in the dt dimensionlity incurred y the mpping, s well s the complexities of mintining nd querying the skyuffer, result in reduced performnce. 5.2 Dt genertion We performed our experimentl evlution utilizing oth rel nd synthetic dt. Our rel dt set will e descried lter in the section. For synthetic dt, we generted prtilly-ordered domins with different structures nd shpe to cover wide rnge of possile settings. Figure 1 illustrtes two clsses we used. The poset of Figure 1 hs tree structure. Every depth level hs twice the numer of vlues from the level ove. On the other hnd, the poset of Figure 1 hs wll structure nd ll depth levels hve the sme numer of vlues. A poset is defined y its structure, i.e., tree (IV)? 247

If you are at the university, either physically or via the VPN, you can download the chapters of this book as PDFs.

If you are at the university, either physically or via the VPN, you can download the chapters of this book as PDFs. Lecture 5 Wlks, Trils, Pths nd Connectedness Reding: Some of the mteril in this lecture comes from Section 1.2 of Dieter Jungnickel (2008), Grphs, Networks nd Algorithms, 3rd edition, which is ville online

More information

A Tautology Checker loosely related to Stålmarck s Algorithm by Martin Richards

A Tautology Checker loosely related to Stålmarck s Algorithm by Martin Richards A Tutology Checker loosely relted to Stålmrck s Algorithm y Mrtin Richrds mr@cl.cm.c.uk http://www.cl.cm.c.uk/users/mr/ University Computer Lortory New Museum Site Pemroke Street Cmridge, CB2 3QG Mrtin

More information

COMP 423 lecture 11 Jan. 28, 2008

COMP 423 lecture 11 Jan. 28, 2008 COMP 423 lecture 11 Jn. 28, 2008 Up to now, we hve looked t how some symols in n lphet occur more frequently thn others nd how we cn sve its y using code such tht the codewords for more frequently occuring

More information

A dual of the rectangle-segmentation problem for binary matrices

A dual of the rectangle-segmentation problem for binary matrices A dul of the rectngle-segmenttion prolem for inry mtrices Thoms Klinowski Astrct We consider the prolem to decompose inry mtrix into smll numer of inry mtrices whose -entries form rectngle. We show tht

More information

Slides for Data Mining by I. H. Witten and E. Frank

Slides for Data Mining by I. H. Witten and E. Frank Slides for Dt Mining y I. H. Witten nd E. Frnk Simplicity first Simple lgorithms often work very well! There re mny kinds of simple structure, eg: One ttriute does ll the work All ttriutes contriute eqully

More information

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Lecture 10 Evolutionry Computtion: Evolution strtegies nd genetic progrmming Evolution strtegies Genetic progrmming Summry Negnevitsky, Person Eduction, 2011 1 Evolution Strtegies Another pproch to simulting

More information

2 Computing all Intersections of a Set of Segments Line Segment Intersection

2 Computing all Intersections of a Set of Segments Line Segment Intersection 15-451/651: Design & Anlysis of Algorithms Novemer 14, 2016 Lecture #21 Sweep-Line nd Segment Intersection lst chnged: Novemer 8, 2017 1 Preliminries The sweep-line prdigm is very powerful lgorithmic design

More information

P(r)dr = probability of generating a random number in the interval dr near r. For this probability idea to make sense we must have

P(r)dr = probability of generating a random number in the interval dr near r. For this probability idea to make sense we must have Rndom Numers nd Monte Crlo Methods Rndom Numer Methods The integrtion methods discussed so fr ll re sed upon mking polynomil pproximtions to the integrnd. Another clss of numericl methods relies upon using

More information

Presentation Martin Randers

Presentation Martin Randers Presenttion Mrtin Rnders Outline Introduction Algorithms Implementtion nd experiments Memory consumption Summry Introduction Introduction Evolution of species cn e modelled in trees Trees consist of nodes

More information

From Dependencies to Evaluation Strategies

From Dependencies to Evaluation Strategies From Dependencies to Evlution Strtegies Possile strtegies: 1 let the user define the evlution order 2 utomtic strtegy sed on the dependencies: use locl dependencies to determine which ttriutes to compute

More information

Algorithm Design (5) Text Search

Algorithm Design (5) Text Search Algorithm Design (5) Text Serch Tkshi Chikym School of Engineering The University of Tokyo Text Serch Find sustring tht mtches the given key string in text dt of lrge mount Key string: chr x[m] Text Dt:

More information

Tries. Yufei Tao KAIST. April 9, Y. Tao, April 9, 2013 Tries

Tries. Yufei Tao KAIST. April 9, Y. Tao, April 9, 2013 Tries Tries Yufei To KAIST April 9, 2013 Y. To, April 9, 2013 Tries In this lecture, we will discuss the following exct mtching prolem on strings. Prolem Let S e set of strings, ech of which hs unique integer

More information

Before We Begin. Introduction to Spatial Domain Filtering. Introduction to Digital Image Processing. Overview (1): Administrative Details (1):

Before We Begin. Introduction to Spatial Domain Filtering. Introduction to Digital Image Processing. Overview (1): Administrative Details (1): Overview (): Before We Begin Administrtive detils Review some questions to consider Winter 2006 Imge Enhncement in the Sptil Domin: Bsics of Sptil Filtering, Smoothing Sptil Filters, Order Sttistics Filters

More information

EECS150 - Digital Design Lecture 23 - High-level Design and Optimization 3, Parallelism and Pipelining

EECS150 - Digital Design Lecture 23 - High-level Design and Optimization 3, Parallelism and Pipelining EECS150 - Digitl Design Lecture 23 - High-level Design nd Optimiztion 3, Prllelism nd Pipelining Nov 12, 2002 John Wwrzynek Fll 2002 EECS150 - Lec23-HL3 Pge 1 Prllelism Prllelism is the ct of doing more

More information

SOME EXAMPLES OF SUBDIVISION OF SMALL CATEGORIES

SOME EXAMPLES OF SUBDIVISION OF SMALL CATEGORIES SOME EXAMPLES OF SUBDIVISION OF SMALL CATEGORIES MARCELLO DELGADO Abstrct. The purpose of this pper is to build up the bsic conceptul frmework nd underlying motivtions tht will llow us to understnd ctegoricl

More information

1. SEQUENCES INVOLVING EXPONENTIAL GROWTH (GEOMETRIC SEQUENCES)

1. SEQUENCES INVOLVING EXPONENTIAL GROWTH (GEOMETRIC SEQUENCES) Numbers nd Opertions, Algebr, nd Functions 45. SEQUENCES INVOLVING EXPONENTIAL GROWTH (GEOMETRIC SEQUENCES) In sequence of terms involving eponentil growth, which the testing service lso clls geometric

More information

In the last lecture, we discussed how valid tokens may be specified by regular expressions.

In the last lecture, we discussed how valid tokens may be specified by regular expressions. LECTURE 5 Scnning SYNTAX ANALYSIS We know from our previous lectures tht the process of verifying the syntx of the progrm is performed in two stges: Scnning: Identifying nd verifying tokens in progrm.

More information

Complete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li

Complete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li 2nd Interntionl Conference on Electronic & Mechnicl Engineering nd Informtion Technology (EMEIT-212) Complete Coverge Pth Plnning of Mobile Robot Bsed on Dynmic Progrmming Algorithm Peng Zhou, Zhong-min

More information

Agilent Mass Hunter Software

Agilent Mass Hunter Software Agilent Mss Hunter Softwre Quick Strt Guide Use this guide to get strted with the Mss Hunter softwre. Wht is Mss Hunter Softwre? Mss Hunter is n integrl prt of Agilent TOF softwre (version A.02.00). Mss

More information

Efficient Algorithms For Optimizing Policy-Constrained Routing

Efficient Algorithms For Optimizing Policy-Constrained Routing Efficient Algorithms For Optimizing Policy-Constrined Routing Andrew R. Curtis curtis@cs.colostte.edu Ross M. McConnell rmm@cs.colostte.edu Dn Mssey mssey@cs.colostte.edu Astrct Routing policies ply n

More information

OUTPUT DELIVERY SYSTEM

OUTPUT DELIVERY SYSTEM Differences in ODS formtting for HTML with Proc Print nd Proc Report Lur L. M. Thornton, USDA-ARS, Animl Improvement Progrms Lortory, Beltsville, MD ABSTRACT While Proc Print is terrific tool for dt checking

More information

Unit #9 : Definite Integral Properties, Fundamental Theorem of Calculus

Unit #9 : Definite Integral Properties, Fundamental Theorem of Calculus Unit #9 : Definite Integrl Properties, Fundmentl Theorem of Clculus Gols: Identify properties of definite integrls Define odd nd even functions, nd reltionship to integrl vlues Introduce the Fundmentl

More information

CS143 Handout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexical Analysis

CS143 Handout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexical Analysis CS143 Hndout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexicl Anlysis In this first written ssignment, you'll get the chnce to ply round with the vrious constructions tht come up when doing lexicl

More information

10.5 Graphing Quadratic Functions

10.5 Graphing Quadratic Functions 0.5 Grphing Qudrtic Functions Now tht we cn solve qudrtic equtions, we wnt to lern how to grph the function ssocited with the qudrtic eqution. We cll this the qudrtic function. Grphs of Qudrtic Functions

More information

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5 CS321 Lnguges nd Compiler Design I Winter 2012 Lecture 5 1 FINITE AUTOMATA A non-deterministic finite utomton (NFA) consists of: An input lphet Σ, e.g. Σ =,. A set of sttes S, e.g. S = {1, 3, 5, 7, 11,

More information

INTRODUCTION TO SIMPLICIAL COMPLEXES

INTRODUCTION TO SIMPLICIAL COMPLEXES INTRODUCTION TO SIMPLICIAL COMPLEXES CASEY KELLEHER AND ALESSANDRA PANTANO 0.1. Introduction. In this ctivity set we re going to introduce notion from Algebric Topology clled simplicil homology. The min

More information

MATH 25 CLASS 5 NOTES, SEP

MATH 25 CLASS 5 NOTES, SEP MATH 25 CLASS 5 NOTES, SEP 30 2011 Contents 1. A brief diversion: reltively prime numbers 1 2. Lest common multiples 3 3. Finding ll solutions to x + by = c 4 Quick links to definitions/theorems Euclid

More information

The Greedy Method. The Greedy Method

The Greedy Method. The Greedy Method Lists nd Itertors /8/26 Presenttion for use with the textook, Algorithm Design nd Applictions, y M. T. Goodrich nd R. Tmssi, Wiley, 25 The Greedy Method The Greedy Method The greedy method is generl lgorithm

More information

9 Graph Cutting Procedures

9 Graph Cutting Procedures 9 Grph Cutting Procedures Lst clss we begn looking t how to embed rbitrry metrics into distributions of trees, nd proved the following theorem due to Brtl (1996): Theorem 9.1 (Brtl (1996)) Given metric

More information

F. R. K. Chung y. University ofpennsylvania. Philadelphia, Pennsylvania R. L. Graham. AT&T Labs - Research. March 2,1997.

F. R. K. Chung y. University ofpennsylvania. Philadelphia, Pennsylvania R. L. Graham. AT&T Labs - Research. March 2,1997. Forced convex n-gons in the plne F. R. K. Chung y University ofpennsylvni Phildelphi, Pennsylvni 19104 R. L. Grhm AT&T Ls - Reserch Murry Hill, New Jersey 07974 Mrch 2,1997 Astrct In seminl pper from 1935,

More information

Graphs with at most two trees in a forest building process

Graphs with at most two trees in a forest building process Grphs with t most two trees in forest uilding process rxiv:802.0533v [mth.co] 4 Fe 208 Steve Butler Mis Hmnk Mrie Hrdt Astrct Given grph, we cn form spnning forest y first sorting the edges in some order,

More information

1 Quad-Edge Construction Operators

1 Quad-Edge Construction Operators CS48: Computer Grphics Hndout # Geometric Modeling Originl Hndout #5 Stnford University Tuesdy, 8 December 99 Originl Lecture #5: 9 November 99 Topics: Mnipultions with Qud-Edge Dt Structures Scribe: Mike

More information

Misrepresentation of Preferences

Misrepresentation of Preferences Misrepresenttion of Preferences Gicomo Bonnno Deprtment of Economics, University of Cliforni, Dvis, USA gfbonnno@ucdvis.edu Socil choice functions Arrow s theorem sys tht it is not possible to extrct from

More information

Stained Glass Design. Teaching Goals:

Stained Glass Design. Teaching Goals: Stined Glss Design Time required 45-90 minutes Teching Gols: 1. Students pply grphic methods to design vrious shpes on the plne.. Students pply geometric trnsformtions of grphs of functions in order to

More information

Bleach: A Distributed Stream Data Cleaning System

Bleach: A Distributed Stream Data Cleaning System Blech: A Distriuted Strem Dt Clening System Yongcho Tin Eurecom Biot, Frnce Emil: yongcho.tin@eurecom.fr Pietro Michirdi Eurecom Biot, Frnce Emil: pietro.michirdi@eurecom.fr Mrko Vukolić IBM Reserch Zurich,

More information

6.2 Volumes of Revolution: The Disk Method

6.2 Volumes of Revolution: The Disk Method mth ppliction: volumes by disks: volume prt ii 6 6 Volumes of Revolution: The Disk Method One of the simplest pplictions of integrtion (Theorem 6) nd the ccumultion process is to determine so-clled volumes

More information

6.3 Volumes. Just as area is always positive, so is volume and our attitudes towards finding it.

6.3 Volumes. Just as area is always positive, so is volume and our attitudes towards finding it. 6.3 Volumes Just s re is lwys positive, so is volume nd our ttitudes towrds finding it. Let s review how to find the volume of regulr geometric prism, tht is, 3-dimensionl oject with two regulr fces seprted

More information

A New Learning Algorithm for the MAXQ Hierarchical Reinforcement Learning Method

A New Learning Algorithm for the MAXQ Hierarchical Reinforcement Learning Method A New Lerning Algorithm for the MAXQ Hierrchicl Reinforcement Lerning Method Frzneh Mirzzdeh 1, Bbk Behsz 2, nd Hmid Beigy 1 1 Deprtment of Computer Engineering, Shrif University of Technology, Tehrn,

More information

CS311H: Discrete Mathematics. Graph Theory IV. A Non-planar Graph. Regions of a Planar Graph. Euler s Formula. Instructor: Işıl Dillig

CS311H: Discrete Mathematics. Graph Theory IV. A Non-planar Graph. Regions of a Planar Graph. Euler s Formula. Instructor: Işıl Dillig CS311H: Discrete Mthemtics Grph Theory IV Instructor: Işıl Dillig Instructor: Işıl Dillig, CS311H: Discrete Mthemtics Grph Theory IV 1/25 A Non-plnr Grph Regions of Plnr Grph The plnr representtion of

More information

The Math Learning Center PO Box 12929, Salem, Oregon Math Learning Center

The Math Learning Center PO Box 12929, Salem, Oregon Math Learning Center Resource Overview Quntile Mesure: Skill or Concept: 80Q Multiply two frctions or frction nd whole numer. (QT N ) Excerpted from: The Mth Lerning Center PO Box 99, Slem, Oregon 9709 099 www.mthlerningcenter.org

More information

What are suffix trees?

What are suffix trees? Suffix Trees 1 Wht re suffix trees? Allow lgorithm designers to store very lrge mount of informtion out strings while still keeping within liner spce Allow users to serch for new strings in the originl

More information

such that the S i cover S, or equivalently S

such that the S i cover S, or equivalently S MATH 55 Triple Integrls Fll 16 1. Definition Given solid in spce, prtition of consists of finite set of solis = { 1,, n } such tht the i cover, or equivlently n i. Furthermore, for ech i, intersects i

More information

arxiv: v1 [cs.db] 16 Sep 2016

arxiv: v1 [cs.db] 16 Sep 2016 Blech: A Distriuted Strem Dt Clening System Yongcho Tin Eurecom yongcho.tin@eurecom.fr Pietro Michirdi Eurecom pietro.michirdi@eurecom.fr Mrko Vukolić IBM Reserch - Zurich mvu@zurich.im.com rxiv:169.5113v1

More information

A Sparse Grid Representation for Dynamic Three-Dimensional Worlds

A Sparse Grid Representation for Dynamic Three-Dimensional Worlds A Sprse Grid Representtion for Dynmic Three-Dimensionl Worlds Nthn R. Sturtevnt Deprtment of Computer Science University of Denver Denver, CO, 80208 sturtevnt@cs.du.edu Astrct Grid representtions offer

More information

Pointwise convergence need not behave well with respect to standard properties such as continuity.

Pointwise convergence need not behave well with respect to standard properties such as continuity. Chpter 3 Uniform Convergence Lecture 9 Sequences of functions re of gret importnce in mny res of pure nd pplied mthemtics, nd their properties cn often be studied in the context of metric spces, s in Exmples

More information

a(e, x) = x. Diagrammatically, this is encoded as the following commutative diagrams / X

a(e, x) = x. Diagrammatically, this is encoded as the following commutative diagrams / X 4. Mon, Sept. 30 Lst time, we defined the quotient topology coming from continuous surjection q : X! Y. Recll tht q is quotient mp (nd Y hs the quotient topology) if V Y is open precisely when q (V ) X

More information

UNIT 11. Query Optimization

UNIT 11. Query Optimization UNIT Query Optimiztion Contents Introduction to Query Optimiztion 2 The Optimiztion Process: An Overview 3 Optimiztion in System R 4 Optimiztion in INGRES 5 Implementing the Join Opertors Wei-Png Yng,

More information

Simrad ES80. Software Release Note Introduction

Simrad ES80. Software Release Note Introduction Simrd ES80 Softwre Relese 1.3.0 Introduction This document descries the chnges introduced with the new softwre version. Product: ES80 Softwre version: 1.3.0 This softwre controls ll functionlity in the

More information

arxiv: v2 [cs.dm] 17 May 2014

arxiv: v2 [cs.dm] 17 May 2014 EXTENDING ARTIAL RERESENTATIONS OF INTERVAL GRAHS. KLAVÍK, J. KRATOCHVÍL, Y. OTACHI, T. SAITOH, AND T. VYSKOČIL rxiv:1306.2182v2 [cs.dm] 17 My 2014 Astrct. Intervl grphs re intersection grphs of closed

More information

ASTs, Regex, Parsing, and Pretty Printing

ASTs, Regex, Parsing, and Pretty Printing ASTs, Regex, Prsing, nd Pretty Printing CS 2112 Fll 2016 1 Algeric Expressions To strt, consider integer rithmetic. Suppose we hve the following 1. The lphet we will use is the digits {0, 1, 2, 3, 4, 5,

More information

View, evaluate, and publish assignments using the Assignment dropbox.

View, evaluate, and publish assignments using the Assignment dropbox. Blckord Lerning System CE 6 Mnging Assignments Competencies After reding this document, you will e le to: Crete ssignments using the Assignment tool. View, evlute, nd pulish ssignments using the Assignment

More information

Approximation of Two-Dimensional Rectangle Packing

Approximation of Two-Dimensional Rectangle Packing pproximtion of Two-imensionl Rectngle Pcking Pinhong hen, Yn hen, Mudit Goel, Freddy Mng S70 Project Report, Spring 1999. My 18, 1999 1 Introduction 1-d in pcking nd -d in pcking re clssic NP-complete

More information

Ma/CS 6b Class 1: Graph Recap

Ma/CS 6b Class 1: Graph Recap M/CS 6 Clss 1: Grph Recp By Adm Sheffer Course Detils Adm Sheffer. Office hour: Tuesdys 4pm. dmsh@cltech.edu TA: Victor Kstkin. Office hour: Tuesdys 7pm. 1:00 Mondy, Wednesdy, nd Fridy. http://www.mth.cltech.edu/~2014-15/2term/m006/

More information

Efficient K-NN Search in Polyphonic Music Databases Using a Lower Bounding Mechanism

Efficient K-NN Search in Polyphonic Music Databases Using a Lower Bounding Mechanism Efficient K-NN Serch in Polyphonic Music Dtses Using Lower Bounding Mechnism Ning-Hn Liu Deprtment of Computer Science Ntionl Tsing Hu University Hsinchu,Tiwn 300, R.O.C 886-3-575679 nhliou@yhoo.com.tw

More information

this grammar generates the following language: Because this symbol will also be used in a later step, it receives the

this grammar generates the following language: Because this symbol will also be used in a later step, it receives the LR() nlysis Drwcks of LR(). Look-hed symols s eplined efore, concerning LR(), it is possile to consult the net set to determine, in the reduction sttes, for which symols it would e possile to perform reductions.

More information

Midterm 2 Sample solution

Midterm 2 Sample solution Nme: Instructions Midterm 2 Smple solution CMSC 430 Introduction to Compilers Fll 2012 November 28, 2012 This exm contins 9 pges, including this one. Mke sure you hve ll the pges. Write your nme on the

More information

Fig.25: the Role of LEX

Fig.25: the Role of LEX The Lnguge for Specifying Lexicl Anlyzer We shll now study how to uild lexicl nlyzer from specifiction of tokens in the form of list of regulr expressions The discussion centers round the design of n existing

More information

A Heuristic Approach for Discovering Reference Models by Mining Process Model Variants

A Heuristic Approach for Discovering Reference Models by Mining Process Model Variants A Heuristic Approch for Discovering Reference Models by Mining Process Model Vrints Chen Li 1, Mnfred Reichert 2, nd Andres Wombcher 3 1 Informtion System Group, University of Twente, The Netherlnds lic@cs.utwente.nl

More information

Solving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016

Solving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016 Solving Prolems y Serching CS 486/686: Introduction to Artificil Intelligence Winter 2016 1 Introduction Serch ws one of the first topics studied in AI - Newell nd Simon (1961) Generl Prolem Solver Centrl

More information

CSCI 3130: Formal Languages and Automata Theory Lecture 12 The Chinese University of Hong Kong, Fall 2011

CSCI 3130: Formal Languages and Automata Theory Lecture 12 The Chinese University of Hong Kong, Fall 2011 CSCI 3130: Forml Lnguges nd utomt Theory Lecture 12 The Chinese University of Hong Kong, Fll 2011 ndrej Bogdnov In progrmming lnguges, uilding prse trees is significnt tsk ecuse prse trees tell us the

More information

CSCI 104. Rafael Ferreira da Silva. Slides adapted from: Mark Redekopp and David Kempe

CSCI 104. Rafael Ferreira da Silva. Slides adapted from: Mark Redekopp and David Kempe CSCI 0 fel Ferreir d Silv rfsilv@isi.edu Slides dpted from: Mrk edekopp nd Dvid Kempe LOG STUCTUED MEGE TEES Series Summtion eview Let n = + + + + k $ = #%& #. Wht is n? n = k+ - Wht is log () + log ()

More information

UT1553B BCRT True Dual-port Memory Interface

UT1553B BCRT True Dual-port Memory Interface UTMC APPICATION NOTE UT553B BCRT True Dul-port Memory Interfce INTRODUCTION The UTMC UT553B BCRT is monolithic CMOS integrted circuit tht provides comprehensive MI-STD- 553B Bus Controller nd Remote Terminl

More information

Qubit allocation for quantum circuit compilers

Qubit allocation for quantum circuit compilers Quit lloction for quntum circuit compilers Nov. 10, 2017 JIQ 2017 Mrcos Yukio Sirichi Sylvin Collnge Vinícius Fernndes dos Sntos Fernndo Mgno Quintão Pereir Compilers for quntum computing The first genertion

More information

An Efficient Divide and Conquer Algorithm for Exact Hazard Free Logic Minimization

An Efficient Divide and Conquer Algorithm for Exact Hazard Free Logic Minimization An Efficient Divide nd Conquer Algorithm for Exct Hzrd Free Logic Minimiztion J.W.J.M. Rutten, M.R.C.M. Berkelr, C.A.J. vn Eijk, M.A.J. Kolsteren Eindhoven University of Technology Informtion nd Communiction

More information

SUPPLEMENTARY INFORMATION

SUPPLEMENTARY INFORMATION Supplementry Figure y (m) x (m) prllel perpendiculr Distnce (m) Bird Stndrd devition for distnce (m) c 6 prllel perpendiculr 4 doi:.8/nture99 SUPPLEMENTARY FIGURE Confirmtion tht movement within the flock

More information

Unit 5 Vocabulary. A function is a special relationship where each input has a single output.

Unit 5 Vocabulary. A function is a special relationship where each input has a single output. MODULE 3 Terms Definition Picture/Exmple/Nottion 1 Function Nottion Function nottion is n efficient nd effective wy to write functions of ll types. This nottion llows you to identify the input vlue with

More information

Today. CS 188: Artificial Intelligence Fall Recap: Search. Example: Pancake Problem. Example: Pancake Problem. General Tree Search.

Today. CS 188: Artificial Intelligence Fall Recap: Search. Example: Pancake Problem. Example: Pancake Problem. General Tree Search. CS 88: Artificil Intelligence Fll 00 Lecture : A* Serch 9//00 A* Serch rph Serch Tody Heuristic Design Dn Klein UC Berkeley Multiple slides from Sturt Russell or Andrew Moore Recp: Serch Exmple: Pncke

More information

Lexical Analysis. Amitabha Sanyal. (www.cse.iitb.ac.in/ as) Department of Computer Science and Engineering, Indian Institute of Technology, Bombay

Lexical Analysis. Amitabha Sanyal. (www.cse.iitb.ac.in/ as) Department of Computer Science and Engineering, Indian Institute of Technology, Bombay Lexicl Anlysis Amith Snyl (www.cse.iit.c.in/ s) Deprtment of Computer Science nd Engineering, Indin Institute of Technology, Bomy Septemer 27 College of Engineering, Pune Lexicl Anlysis: 2/6 Recp The input

More information

1.1. Interval Notation and Set Notation Essential Question When is it convenient to use set-builder notation to represent a set of numbers?

1.1. Interval Notation and Set Notation Essential Question When is it convenient to use set-builder notation to represent a set of numbers? 1.1 TEXAS ESSENTIAL KNOWLEDGE AND SKILLS Prepring for 2A.6.K, 2A.7.I Intervl Nottion nd Set Nottion Essentil Question When is it convenient to use set-uilder nottion to represent set of numers? A collection

More information

Definition of Regular Expression

Definition of Regular Expression Definition of Regulr Expression After the definition of the string nd lnguges, we re redy to descrie regulr expressions, the nottion we shll use to define the clss of lnguges known s regulr sets. Recll

More information

GENERATING ORTHOIMAGES FOR CLOSE-RANGE OBJECTS BY AUTOMATICALLY DETECTING BREAKLINES

GENERATING ORTHOIMAGES FOR CLOSE-RANGE OBJECTS BY AUTOMATICALLY DETECTING BREAKLINES GENEATING OTHOIMAGES FO CLOSE-ANGE OBJECTS BY AUTOMATICALLY DETECTING BEAKLINES Efstrtios Stylinidis 1, Lzros Sechidis 1, Petros Ptis 1, Spiros Sptls 2 Aristotle University of Thessloniki 1 Deprtment of

More information

8.2 Areas in the Plane

8.2 Areas in the Plane 39 Chpter 8 Applictions of Definite Integrls 8. Ares in the Plne Wht ou will lern out... Are Between Curves Are Enclosed Intersecting Curves Boundries with Chnging Functions Integrting with Respect to

More information

Lecture 7: Integration Techniques

Lecture 7: Integration Techniques Lecture 7: Integrtion Techniques Antiderivtives nd Indefinite Integrls. In differentil clculus, we were interested in the derivtive of given rel-vlued function, whether it ws lgeric, eponentil or logrithmic.

More information

I/O Efficient Dynamic Data Structures for Longest Prefix Queries

I/O Efficient Dynamic Data Structures for Longest Prefix Queries I/O Efficient Dynmic Dt Structures for Longest Prefix Queries Moshe Hershcovitch 1 nd Him Kpln 2 1 Fculty of Electricl Engineering, moshik1@gmil.com 2 School of Computer Science, himk@cs.tu.c.il, Tel Aviv

More information

File Manager Quick Reference Guide. June Prepared for the Mayo Clinic Enterprise Kahua Deployment

File Manager Quick Reference Guide. June Prepared for the Mayo Clinic Enterprise Kahua Deployment File Mnger Quick Reference Guide June 2018 Prepred for the Myo Clinic Enterprise Khu Deployment NVIGTION IN FILE MNGER To nvigte in File Mnger, users will mke use of the left pne to nvigte nd further pnes

More information

Registering as a HPE Reseller. Quick Reference Guide for new Partners in Asia Pacific

Registering as a HPE Reseller. Quick Reference Guide for new Partners in Asia Pacific Registering s HPE Reseller Quick Reference Guide for new Prtners in Asi Pcific Registering s new Reseller prtner There re five min steps to e new Reseller prtner. Crete your Appliction Copyright 2017 Hewlett

More information

Position Heaps: A Simple and Dynamic Text Indexing Data Structure

Position Heaps: A Simple and Dynamic Text Indexing Data Structure Position Heps: A Simple nd Dynmic Text Indexing Dt Structure Andrzej Ehrenfeucht, Ross M. McConnell, Niss Osheim, Sung-Whn Woo Dept. of Computer Science, 40 UCB, University of Colordo t Boulder, Boulder,

More information

Rethinking Virtual Network Embedding: Substrate Support for Path Splitting and Migration

Rethinking Virtual Network Embedding: Substrate Support for Path Splitting and Migration Rethinking Virtul Network Emedding: Sustrte Support for Pth Splitting nd Migrtion Minln Yu, Yung Yi, Jennifer Rexford, Mung Ching Computer Science, Princeton University, Emil: {minlnyu,jrex}@cs.princeton.edu

More information

MA1008. Calculus and Linear Algebra for Engineers. Course Notes for Section B. Stephen Wills. Department of Mathematics. University College Cork

MA1008. Calculus and Linear Algebra for Engineers. Course Notes for Section B. Stephen Wills. Department of Mathematics. University College Cork MA1008 Clculus nd Liner Algebr for Engineers Course Notes for Section B Stephen Wills Deprtment of Mthemtics University College Cork s.wills@ucc.ie http://euclid.ucc.ie/pges/stff/wills/teching/m1008/ma1008.html

More information

Systems I. Logic Design I. Topics Digital logic Logic gates Simple combinational logic circuits

Systems I. Logic Design I. Topics Digital logic Logic gates Simple combinational logic circuits Systems I Logic Design I Topics Digitl logic Logic gtes Simple comintionl logic circuits Simple C sttement.. C = + ; Wht pieces of hrdwre do you think you might need? Storge - for vlues,, C Computtion

More information

Memory-Optimized Software Synthesis from Dataflow Program Graphs withlargesizedatasamples

Memory-Optimized Software Synthesis from Dataflow Program Graphs withlargesizedatasamples EURSIP Journl on pplied Signl Processing 2003:6, 54 529 c 2003 Hindwi Publishing orportion Memory-Optimized Softwre Synthesis from tflow Progrm Grphs withlrgesizetsmples Hyunok Oh The School of Electricl

More information

Blackbaud s Mailwise Service Analyse Records Updated by MailWise

Blackbaud s Mailwise Service Analyse Records Updated by MailWise Blckud s Milwise Service Anlyse Records Updted y MilWise To nlyse the updtes tht hve een performed y the import, run the relevnt queries from the list elow. The queries selected depend on the MilWise Services

More information

AI Adjacent Fields. This slide deck courtesy of Dan Klein at UC Berkeley

AI Adjacent Fields. This slide deck courtesy of Dan Klein at UC Berkeley AI Adjcent Fields Philosophy: Logic, methods of resoning Mind s physicl system Foundtions of lerning, lnguge, rtionlity Mthemtics Forml representtion nd proof Algorithms, computtion, (un)decidility, (in)trctility

More information

Planning with Reachable Distances: Fast Enforcement of Closure Constraints

Planning with Reachable Distances: Fast Enforcement of Closure Constraints Plnning with Rechle Distnces: Fst Enforcement of Closure Constrints Xinyu Tng, Shwn Thoms, nd Nncy M. Amto Astrct Motion plnning for closed-chin systems is prticulrly difficult due to dditionl closure

More information

Mobile IP route optimization method for a carrier-scale IP network

Mobile IP route optimization method for a carrier-scale IP network Moile IP route optimiztion method for crrier-scle IP network Tkeshi Ihr, Hiroyuki Ohnishi, nd Ysushi Tkgi NTT Network Service Systems Lortories 3-9-11 Midori-cho, Musshino-shi, Tokyo 180-8585, Jpn Phone:

More information

Orthogonal line segment intersection

Orthogonal line segment intersection Computtionl Geometry [csci 3250] Line segment intersection The prolem (wht) Computtionl Geometry [csci 3250] Orthogonl line segment intersection Applictions (why) Algorithms (how) A specil cse: Orthogonl

More information

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv Compression Outline 15-853:Algorithms in the Rel World Dt Compression III Introduction: Lossy vs. Lossless, Benchmrks, Informtion Theory: Entropy, etc. Proility Coding: Huffmn + Arithmetic Coding Applictions

More information

Summer Review Packet For Algebra 2 CP/Honors

Summer Review Packet For Algebra 2 CP/Honors Summer Review Pcket For Alger CP/Honors Nme Current Course Mth Techer Introduction Alger uilds on topics studied from oth Alger nd Geometr. Certin topics re sufficientl involved tht the cll for some review

More information

ON THE DEHN COMPLEX OF VIRTUAL LINKS

ON THE DEHN COMPLEX OF VIRTUAL LINKS ON THE DEHN COMPLEX OF VIRTUAL LINKS RACHEL BYRD, JENS HARLANDER Astrct. A virtul link comes with vriety of link complements. This rticle is concerned with the Dehn spce, pseudo mnifold with oundry, nd

More information

MTH 146 Conics Supplement

MTH 146 Conics Supplement 105- Review of Conics MTH 146 Conics Supplement In this section we review conics If ou ne more detils thn re present in the notes, r through section 105 of the ook Definition: A prol is the set of points

More information

a < a+ x < a+2 x < < a+n x = b, n A i n f(x i ) x. i=1 i=1

a < a+ x < a+2 x < < a+n x = b, n A i n f(x i ) x. i=1 i=1 Mth 33 Volume Stewrt 5.2 Geometry of integrls. In this section, we will lern how to compute volumes using integrls defined by slice nlysis. First, we recll from Clculus I how to compute res. Given the

More information

PARALLEL AND DISTRIBUTED COMPUTING

PARALLEL AND DISTRIBUTED COMPUTING PARALLEL AND DISTRIBUTED COMPUTING 2009/2010 1 st Semester Teste Jnury 9, 2010 Durtion: 2h00 - No extr mteril llowed. This includes notes, scrtch pper, clcultor, etc. - Give your nswers in the ville spce

More information

Lists in Lisp and Scheme

Lists in Lisp and Scheme Lists in Lisp nd Scheme Lists in Lisp nd Scheme Lists re Lisp s fundmentl dt structures, ut there re others Arrys, chrcters, strings, etc. Common Lisp hs moved on from eing merely LISt Processor However,

More information

Dr. D.M. Akbar Hussain

Dr. D.M. Akbar Hussain Dr. D.M. Akr Hussin Lexicl Anlysis. Bsic Ide: Red the source code nd generte tokens, it is similr wht humns will do to red in; just tking on the input nd reking it down in pieces. Ech token is sequence

More information

Registering as an HPE Reseller

Registering as an HPE Reseller Registering s n HPE Reseller Quick Reference Guide for new Prtners Mrch 2019 Registering s new Reseller prtner There re four min steps to register on the Prtner Redy Portl s new Reseller prtner: Appliction

More information

An Expressive Hybrid Model for the Composition of Cardinal Directions

An Expressive Hybrid Model for the Composition of Cardinal Directions An Expressive Hyrid Model for the Composition of Crdinl Directions Ah Lin Kor nd Brndon Bennett School of Computing, University of Leeds, Leeds LS2 9JT, UK e-mil:{lin,brndon}@comp.leeds.c.uk Astrct In

More information

LR Parsing, Part 2. Constructing Parse Tables. Need to Automatically Construct LR Parse Tables: Action and GOTO Table

LR Parsing, Part 2. Constructing Parse Tables. Need to Automatically Construct LR Parse Tables: Action and GOTO Table TDDD55 Compilers nd Interpreters TDDB44 Compiler Construction LR Prsing, Prt 2 Constructing Prse Tles Prse tle construction Grmmr conflict hndling Ctegories of LR Grmmrs nd Prsers Peter Fritzson, Christoph

More information

On Achieving Optimal Throughput with Network Coding

On Achieving Optimal Throughput with Network Coding In IEEE INFOCOM On Achieving Optiml Throughput with Network Coding Zongpeng Li, Bochun Li, Dn Jing, Lp Chi Lu Astrct With the constrints of network topologies nd link cpcities, chieving the optiml end-to-end

More information

ZZ - Advanced Math Review 2017

ZZ - Advanced Math Review 2017 ZZ - Advnced Mth Review Mtrix Multipliction Given! nd! find the sum of the elements of the product BA First, rewrite the mtrices in the correct order to multiply The product is BA hs order x since B is

More information

Ma/CS 6b Class 1: Graph Recap

Ma/CS 6b Class 1: Graph Recap M/CS 6 Clss 1: Grph Recp By Adm Sheffer Course Detils Instructor: Adm Sheffer. TA: Cosmin Pohot. 1pm Mondys, Wednesdys, nd Fridys. http://mth.cltech.edu/~2015-16/2term/m006/ Min ook: Introduction to Grph

More information