Targeted Coupon Distribution Using Social Networks

Size: px
Start display at page:

Download "Targeted Coupon Distribution Using Social Networks"

Transcription

1 Targeted Coupon Dstrbuton Usng Socal Networks Srnvas Shakkotta Texas A&M Unversty Le Yng Iowa State Unversty Sankalp Sah Texas A&M Unversty ABSTRACT We propose to explot onlne socal networks n order to reveal user preferences such that goods and servces mght be targeted approprately. We consder goods and servces that are consumed perodcally, and a user model where users could buy dfferent numbers of goods at a marked (hgh ) prce and at a dscounted (low ) prce. The problem s to dentfy users who are nterested n the good, and to dscount them suffcently that the entre demand s realzed, but not so much that revenue s compromsed. Usng technques from backpressure routng used for control of multhop communcaton networks, we develop a mult-hop coupon forwardng scheme n whch users are ncentvzed to forward the rght number of coupons to approprate neghbors such that the above target s acheved. We also develop a smple delay-based heurstc algorthm that also shows a near-optmal performance. 1. INTRODUCTION Onlne socal networks are ncreasngly beng seen by marketng frms as a means of obtanng nformaton about user preferences. For example, dsplayng selected advertsements and observng user responses can be used to explore an ndvdual user s tastes. Such nformaton would help marketers to target selected goods and servces at partcular users, so ncreasng the effcency of an advertsng campagn. Onlne socal networks could also be used n a slghtly dfferent fashon to create a market wth dfferentated prces, based on users consumpton capacty. Consder goods or servces that are consumed on a perodc bass such as move tckets, car washes, ftness club vsts etc. There could be users who would purchase goods at the marked (hgh ) prce, and others who mght need to be subsdzed to some extent (low prce) n order to make a purchase. Such dfferentated prces can be acheved through the dstrbuton of dscount coupons. However, t s not clear whch users should be gven such coupons, or how many coupons should be gven to them. The questons are not easy to answer snce the onlne retaler s unlkely to know the consumpton capacty of users, and perhaps not be even aware that they exst. Floodng coupons s not a good soluton snce gvng too many coupons to users would be a dsncentve to purchase goods at the marked prce, even f they are capable of dong so. Smlarly, restrctng the coupon generaton rate to a small number mght not acheve the true market potental. Fnally, user preferences and avalable goods change wth tme, whch makes the whole system dynamc. In ths paper we propose a scheme wheren some number of users regster wth onlne stores n order to receve coupons for goods that they may not necessarly be nterested n. Each coupon has a unque dentty and may be redeemed at a store n order to purchase the good t corresponds to. Users may forward such coupons to any of ther frends on the socal network, who n turn could forward t to ther frends and so on. Eventually, the coupon must reach a user (a leaf-node) who actually would use t to make a purchase. Questons that requre algorthmc solutons are () at what rate should coupons be nected nto the system? () to whch neghbor should a user who possesses coupon forward t to, and what ncentves would cause her to do so? and () how do we ensure that customers do not obtan too many or too few coupons? An example of such a system n practce s mgnger [1] that acts as a mult-hop advertsng and dscount dstrbuton system usng SMS messages, wth rewards beng pad n a pyramdal fashon to forwarders. In ths paper, we develop revenue maxmzng, ncentve compatble schemes based on deas of backpressure [2] that has been used as a throughput optmal scheme for packet routng n multhop wreless networks [3, 4, 5, 6]. Our system s descrbed as follows. 2. SYSTEM MODEL Denote by N the set of nodes and L the set of lnks. There are three dfferent node types coupon dstrbutor, users, and store n the network. The lnks represent socal connectons. A lnk from a coupon source to a user represents the dea that the user has regstered wth the source to receve ts coupon perodcally. A lnk from a user to a product means that the user buys that product perodcally. The lnks between users are assumed to be bdrectonal, and represent frendshp between the connected users. In ths paper, we assume that the coupon sources and the store are managed by the same entty. We use s to denote the store and d to denote the coupon dstrbutor. We defne S to be the set of products and B s the set of users who wll buy product (these are the customers). A customer who presents a coupon obtans a dscount. Users are rewarded f they forward coupons to the rght neghbor (how ths neghbor s chosen, and how much reward s gven wll be descrbed n Secton 4). Note that we use the term dscount to ndcate customer remuneraton when a coupon s redeemed durng purchase of goods, and reward to ndcate remuneraton to users who forwarded the coupon. We consder a synchronzed slotted-tme system. We defne µ to be the coupon transmsson capacty of node, whch s the maxmum number of coupons user can send out n one

2 tme-step. We consder two dfferent tme scales n ths paper. The small tme scale t s the one n whch purchases are made and coupons are delvered. The large tme-scale, consstng of T small tme slots, s the buyng nterval after whch coupons expre and the customers start afresh. For example, we may thnk of t as beng of the order of an hour, whle T could be on the order of a week. Good mght be sold at the marked (hgh ) prce p or at the dscounted (low ) prce q. We assume that these prces are such that the store makes a proft regardless of whether the good s sold at the hgh or low prce. Of course, the proft made by sellng goods at the hgh prce s hgher than at the low prce. We assume that the capacty for consumpton of a good by user (per unt tme at scale t), can be dvded naturally nto two parts one at at the hgh prce ˆx h, and one at the low prce ˆx l. We denote the total as b = ˆx h + ˆx l. We assume that these values are fxed for some multple of T, and so can be learned. The number of coupons gven to a customer must be carefully regulated; f t s larger than ˆx l, the store loses profts due to excessve dscountng (snce the customer would not buy as many hgh-prce goods as possble), whle f t s less than ˆx l, the entre demand s not realzed. 3. PROFIT MAIMIZATION We frst develop expressons correspondng to the proft made by the store. We say a coupon s vald f t s eventually used to purchase a product. We denote by y (m,n) the average number of vald type- coupons sent from user m to user n n a tme slot. The proft the store extracts from user s n o q y (,s) + p mn ˆx h, b y (,s). Thus, the maxmum proft the store can extract s defned by the followng optmzaton problem: OPT 1: max n o q y (,s) + p mn ˆx h, b y (,s) (1) S B s.t. y (m,) µ m, m N (2) S :(m,) L, s y (m,) = y(n,m) m N (3) :(m,) L n:(n,m) L y (m,) = f m B and s (4) where (2) s the capacty constrant, whch ndcates node m cannot send more than µ m coupons n a tme-slot, (3) s the flow-conservaton constrant for the coupons, and (4) ndcates that user wll not forward type- coupons to her neghbors f she uses type- coupons. Note that we have not explctly ncluded the total reward pad out to coupon forwarders snce ths value s a constant and can be subsumed nto q. We need to answer the followng two questons n order to maxmze revenue. Frst, the value of ˆx h and ˆx l are unknown at the store, and need to be learned. Second, snce all users nterested n a good may not be regstered to receve coupons drectly from the coupon generator, the store cannot drectly control the number of coupons sent to such users. The next secton develops a coupon dstrbuton scheme that conssts of two control loops correspondng to the two tme scales. 4. COUPON DISTRIBUTION The control loops n our coupon dstrbuton algorthm can be descrbed as follows: 1. Choce of Coupon Forwardng Reward Rate: At the large tme scale, each store must adapt the target rate γ for the next buyng nterval usng the nformaton gathered about the customers preferences over the past ntervals. In our algorthm, γ s an estmate of ˆx l. If γ s set too low, customer may not purchase all the goods that she potentally could, and f γ s too hgh, customer may be beng dscounted excessvely and the store s not extractng the maxmum extractable revenue. 2. Coupon Routng at Target Rate: At the small tme scale, a store attempts to meet the current target rate of coupon delvery γ for each product and each customer that purchases goods from t. As we wll see below, t does ths by settng the rate at whch t rewards neghbors of customer as γ. Mathematcally, we wll guarantee that the coupon dstrbuton algorthm solves the followng optmzaton problem: OPT 2: s.t. S max S B y,s 1 A (5) y (m,) µ m, m N (6) :(m,) L, s y (m,) = y(n,m) m N (7) :(m,) L n:(n,m) L y (,s) γ, (8) y (m,) = f m B and s (9) It s easy to show that gven that γ = ˆx l for all and, OPT 1 s equvalent to OPT 2. Next, we develop a dstrbuted coupon routng algorthm that solves OPT Backpressure-based coupon routng at the small tme scale We frst ntroduce the coupon management scheme whch conssts of three parts: () each user mantans a per-product queue, and montors the lengths of the queues; () store rewards the neghbors that forwarded type coupons used by each customer at a rate γ, and montors the number of unrewarded coupons at each customer; () coupon generator montors the number of coupons t has not yet sent out, and generates addtonal coupons based on ths value. A1: Coupon Management: (1) Per-product queues are mantaned at each user, and the number of type coupons user has at a fner tme-step t s denoted by Q [t]. Thus, the dynamcs of Q [t] s as follows: If B, then Q [t + 1] [t] + y (m,)[t] n:(,n) L y (,n)[t] 1 A + ;

3 otherwse Q [t + 1] = Q [t] + where 8 < y(,s)[t] = mn : Q [t] + t 1 b T τ= y (m,)[t] y (,s)[t], y (,s)[τ]! 9 + = ;, y (m,)[t],.e., user wll use up all avalable coupons unless she has already bought enough (b T) products. (2) Store mantans a queue for unrewarded coupons correspondng to each of product and ts customers. We may thnk of these as vrtual coupons that are used to mantan a pressure on s neghbors. Note that t s only the neghbors of that are not rewarded for forwardng these coupons, the rest of the users nvolved n forwardng coupons would be guaranteed a reward (and, of course, has already redeemed these coupons for a dscount). Denote by Q [t] the number of such unrewarded coupons correspondng to customer. We have + Q [t + 1] = Q [t] + y(,s)[t] γ, where γ s the coupon forwardng reward rate for neghbors of customer. (3) Coupon dstrbutor d mantans a separate queue for each type of coupons that have not been sent out. The length of the queue s denoted by Q d[t] for each product. We have Q d[t + 1] d[t] + Θ [t] 1+ y(d,)[t] A, :(d,) L where Θ [t] s the number of new type coupons generated by coupon dstrbutor at tme t. (4) We also assume that when user receves a type coupon such that B, user wll nsert her dentty and the coupon queue length Q [t] n the coupon before sendng the coupon to her neghbor. Ths nformaton allows the store to reconstruct path and reward the coupon relays based on Q [t]. In our system the store needs to reward coupon fowardng n order to motvate users to forward coupons to ther frends. The effcency of a coupon dstrbuton scheme s determned by: () the ncentve scheme that the stores use, and () the users decsons under the ncentve scheme. Next, we propose a coupon rewardng scheme, under whch a ratonal user wll dstrbute the coupons accordng to a backpressure polcy. The optmalty of the coupon dstrbuton scheme wll be proved n Theorem 1. A2: Reward Scheme for Coupon Forwardng: The store rewards the users nvolved n forwardng each used type coupon wth a total of α dollars. Consder a specfc coupon assocated wth product, and assume R s the path (consstng of the sequence of transmssons used to dstrbute the coupon) over whch the coupon was transferred. Then node m gets a reward Q m Q n:(m,n) R + α P l R Q s(l) Q r(l) +, (1) where l s a lnk on path R, s(l) s the sender, and r(l) s the recever. Note that ths queue length nformaton s nserted by the users before they forward the coupons to ther neghbors. Furthermore, note that the amount of reward user m obtans s proportonal to the queue dfference. The dea s to motvate user m to send her coupon to a neghbor who has the least number of coupons and hence s most lkely the one who needs the coupon. Under ths scheme, the user has the motvaton to follow the backpressure-lke coupon dstrbuton scheme. A3: User Behavor: (1) Frst, f node s nterested n buyng product, then user uses all avalable type coupons up to her purchasng lmt b. Thus, at fner tme-step t, user purchases y (,s )[t] products wth coupons such that 8 < y(,s)[t] = mn : Q [t] + y(m,)[t], b T t τ= y (,s)[τ]! 9 + = ;, We assume that user never forwards type- coupons to her neghbors f user buys product. (2) If user s not a customer buyng product, then user needs to dstrbute type coupons to her neghbors. We assume that at the begnnng of fner tme-step t, user requests Q m[t] f user m s her neghbor, and also polls the store to obtan Q m[t]. Snce the amount of coupon forwardng reward s determned by the queue dfference as descrbed n (1), user selects a coupon type and neghbor m such that (, m ) arg max (,m) L Q [t] + Q [t] Q m[t] Q m[t], n o and transfers mn µ, Q [t] of type coupons to node m. Snce Q m[t] s the number of coupons that have been used by user m but have not yet been rewarded, Q m[t] = f user m s not a customer buyng product. A store mantans ths unrewarded coupon queue to prevent a customer recevng too many coupons. When user uses too many coupons, the unrewarded coupon queue becomes large. After a neghbor of user fnds a large Q [t], the neghbor realzes that user has receved too many coupons and the store mght not reward hm for forwardng coupons to user. Then the neghbor wll stop forwardng more coupons to user. A4: Coupon Generaton Scheme: The coupon dstrbutor needs to decde the number of coupons to nect nto the

4 network. We assume that coupon dstrbutor generates µ d type- coupons when Q d[t] Q Tq, and zero type- coupon otherwse. Here, Q T s a constant threshold value. In other words, Θ [t] = µ d f Q d[t] Q Tq, and Θ [t] = otherwse. In the followng theorem, we analyze the performance of the backpressure coupon routng, and prove that Theorem 1. Assume that γ b for all and. Under the coupon management, coupon rewardng and generatng scheme, and user behavor defned above, we have 1 P T lm lm t=1 Θ [t] A, (11) Q T T T and lm lm Q T T P T t=1 y (,s)[t] T B ˇy (,s) where ˇy s the optmal soluton of OPT 2. = ˇy (,s), (12) Proof. We skp the proof detals due to space constrants. Interested readers can fnd the detals n [7]. Note that although the theorem s an asymptotc result, the algorthm tself works for any value of T. A fnte value of T may result n a sub-optmal soluton. In our smulatons, we choose T = 3 and the fnal coupon allocaton s very close to the optmal. 4.2 Coupon rate selecton at the large tme scale We assume that the algorthm for coupon delvery at the small tme scale converges quckly to the target rate, and now consder how to choose ths target rate. Recall that our means of mplementng coupon delvery at rate γ s to reward the neghbors of a customer for forwardng coupons to at rate γ. In ths secton all dynamcs take place at the large tme. Thus, we have the sequence of target rates γ [],, γ [k 1], γ [k], γ [k + 1],, and the large tme scale algorthm needs to guarantee that lm k ˆγ [k] = ˆx l. Denote by z h [k] and z l [k] the number of product that user buys from store n the nterval [k, k+1] at the marked prce and the dscounted prce, respectvely. Let the total number of goods purchased n the nterval [k, k + 1] be denoted z[k] = z h [k] + z l [k]. Further, denote the dfference n purchases made by user over ntervals [k, k + 1] and [k 1, k] by z[k] = z[k] z [k 1] correspondng to a dfference n the coupon delvery rate γ[k] = γ[k] γ [k 1]. We use the followng controller to choose γ. γ [k + 1] = (γ [k] + δ)χ { γ [k] z [k]>} +(γ[k] δ)χ { γ [k] z [k]=}. (13) Here, δ > s a constant small amount by whch we ncrease or decrease γ. The controller ncreases γ f the customer has a greater potental of buyng goods at the dscounted prce, and decreased f the customer has already reached her maxmum potental. We can now easly prove that the controller converges to wthn δ/2 of the desred value of ˆγ. Theorem 2. Under the tme scale separaton assumpton, usng the controller (13) we have lm k γ [k] ˆx l δ/2 S, R. Proof. We use a Lyapunov argument, wth the Lyapunov functon 2 J[k] = γ[k] ˆγ. Then we have J[k + 1] J[k] = (γ [k + 1]) 2 + (ˆγ ) 2 2ˆγ γ [k + 1] = (γ[k]) 2 (ˆγ ) 2 + 2ˆγ γ [k] γ[k + 1] γ[k] γ[k + 1] + γ[k] 2ˆγ We have two cases. Case I: If γ z [k] >,.e., γ [k] < ˆγ, we have from (13) J[k + 1] J[k] = δ(2(γ [k] ˆγ) + δ), whch s non-postve except n γ [k] ˆγ [ δ/2, ]. Case II: γ z [k] =,.e., γ [k] ˆγ, we have from (13) J[k + 1] J[k] = δ(2(γ [k] ˆγ) + δ), whch s non-postve except n γ [k] ˆγ [, δ/2]. Thus, the system s globally asymptotcally stable and γ ˆγ wll converge to the nterval [ δ/2, +δ/2]. Note that when δ s smaller enough and the algorthm starts wth a small γ [], we can guarantee that γ [k] b for all k. Combnng Theorem 1 and Theorem 2, we conclude that the number of coupons consumed under the two tmescale algorthm converges to the optmal soluton to OPT DELAY-BASED COUPON FORWARDING Suppose that the store rewards relays only after a coupon has been used to make a purchase. The nsght that we obtan from the optmalty of backpressure s the followng: If coupons are not used on a partcular path, queues buld up. Ths would cause the average delay n beng rewarded to all relays on the path to ncrease. If a hgher rate of coupons than that set by the store are transferred along a path, the store does not reward the relays for some fracton of coupons and vrtual coupons buld up. Agan, ths would mean that the average delay n beng rewarded to all relays on the path would ncrease. The observaton mmedately suggests that perhaps a smpler algorthm would be to replace the backpressure based user control of Secton 4 A3 wth a much smpler scheme. Users need only keep track of the average delay experenced n obtanng rewards when they forward coupons to each of ther neghbors. They choose to forward coupons to that neghbor who has the lowest such delay. The scheme s ntutvely ncentve compatble, snce users mght want to obtan rewards as soon as possble. Thus, we may replace the reward scheme of Secton 4 A2 wth an equal reward for all users n the path. Further, we choose a threshold value of delay and users do not forward coupons to any neghbor that yelds a delay larger than ths threshold. 6. SIMULATION RESULTS

5 REVENUE OBTAINED Backpressure Max Random Delay Based TIME Fgure 1: Traectory of revenue obtaned by the store usng dfferent schemes. We frst consder a smple tree topology wth 9 nodes, where the root s the store, and the leaves are customers. We plot the total revenue obtaned by the store for the two dfferent schemes, and compare them to the maxmum possble revenue n Fgure 1. The upper bound s the value P pˆxh + qˆx l, whch s the maxmum extractable revenue. We see that the randomzed algorthm does sgnfcantly worse than backpressure as well as delay-based schemes. Even accountng for the fact that a constant part of the revenue would have to be used to ncentvze the scheme, the performance mprovement s stll sgnfcant, although the delay-based scheme performs worse than backpressure. We then consder a power-law topology that mght bear a closer resemblance to real-world socal networks. The graph conssts of 1 nodes wth 2 lnks. Nodes are connected to the coupon source, are relays, and are customers wth probabltes.2,.7 and.1, respectvely. Customers have arbtrary spendng capactes. We show the upper bound and the performance of the three schemes n Fgure 2. Backpressure clearly performs the best, followed by the delay-based and random schemes. The results ndcate that usng such coupon dstrbuton schemes could sgnfcantly ncrease the revenue obtaned. REVENUE OBTAINED Max Backpressure Random Delay Based 7. CONCLUSION In ths paper we studed the problem of creatng dfferentated prces by means of dsbursng dscounts n a dstrbuted fashon usng onlne socal networks. We desgned algorthms n whch some users act as sources of coupons, whch they then forward to other uses based on approprate ncentves. We used the concept of backpressure routng borrowed from the control of communcaton networks, whch we modfed approprately to our scenaro. We also desgned a smpler heurstc that sacrfces some performance, and showed how both schemes outperform a smple random coupon forwardng scheme. 8. ACKNOWLEDGMENT Ths work was funded n part by NSF grant CNS-9452 and Qatar Telecom, Doha, Qatar. The authors gratefully acknowledge nput receved from Prof. Sanay Shakkotta (UT Austn) and Prof. Ramesh Johar (Stanford Unversty). 9. REFERENCES [1] mgnger, [2] L. Tassulas and A. Ephremdes, Stablty propertes of constraned queueng systems and schedulng polces for maxmum throughput n multhop rado networks, IEEE Transactons on Automatc Control, pp , December [3] M. Neely, E. Modano, and C. L, Farness and optmal stochastc control for heterogeneous networks, n Proc. IEEE Infocom., vol. 3, Mam, FL, March 25, pp [4] A. Stolyar, Maxmzng queueng network utlty subect to stablty: Greedy prmal-dual algorthm, Queueng Systems, vol. 5, no. 4, pp , August 25. [5] A. Erylmaz and R. Srkant, Jont Congeston Control, Routng and MAC for Stablty and Farness n Wreless Networks, IEEE Journal on Selected Areas n Communcatons, vol. 24, no. 8, pp , August 26. [6] L. Chen, S. H. Low, M. Chang, and J. C. Doyle, Cross-layer congeston control, routng and schedulng desgn n ad hoc wreless networks, n IEEE Infocom, Barcelona, Span, Aprl 26. [7] S. Shakkotta, L. Yng, and S. Sah, Implct Learnng for Explct Dscount Targetng n Socal Networks, Tech. Report avalable at sshakkot/coupon-tech.pdf TIME Fgure 2: Traectory of revenue obtaned by the store usng dfferent schemes for the power-law topology.