1 A Semi Distributed Approach for Min-Max Fair Car-Parking Slot Assignment Problem E. Alfonsetti, P. C. Weeraddana, Member, IEEE, and C. Fischione, Member, IEEE Abstract—Designingefficientcarparkingmechanismsthatcan in big cities can take an average of 6 to 20 minutes to be potentially integrated into future intelligent transportation searchforanemptyparkingslot,whichaccountsformonetary systems is of crucial importance. Usually, the related design losses (e.g., deterioration, unnecessary fuel wastage), as well problemsarecombinatorialandtheworst-casecomplexityofop- asfornonmonetaryexpenses(e.g.,frustration,psychophysical 4 timal solution approaches grows exponentially with the problem 1 sizes. Therefore, such optimal approaches are not scalable and stresses). 0 practically undesirable. As a result, almost all existing methods In the context of future intelligent transportation systems 2 for parking slot assignment are simple and greedy approaches, (ITS),therearemanyrelevantresearchactivities,whichdesign n whereeachcarisassignedafreeparkingslot,whichiscloserto various traffic congestion control mechanisms, see [3]–[7] its destination. Moreover, no emphasis is placed to optimize the a and references therein. However, [2] suggests that designing socialbenefitoftheusersduringtheparkingslotassignment.In J thispaper,thefairnessasametricformodelingtheaggregateso- efficient car parking mechanisms, which are instrumental in 3 cialbenefitoftheusersisconsideredandadistributedalgorithm directly reducing the cruising traffic is just as important as 2 based on Lagrange duality theory is developed. The proposed other related methodologies to minimize undesired traffic algorithmisgracefullyscalablecomparedtotheoptimalmethods. conditions, especially, in big cities. ] Inaddition,itisshownthattheproposedcarparkingmechanism C Several research attempts have been made in the field of preserves privacy in the sense that any car involved in the O algorithmwillnotbeabletodiscoverthedestinationofanyother ITS, which support drivers to locate a free parking slots, . car during the algorithm iterations. Numerical results illustrate see [8]–[17]. In general, these existing methods employ a h the performance of the proposed algorithm compared to the central authority (CA) who is responsible for providing the at optimal assignment and a greedy method. They show that our underlying infrastructure. For example, thousands of sensors m algorithm yields a good tradeoff between the implementation- have to be deployed to detect the availability of free parking level simplicity and the performance. Even though the main [ emphasisinthispaperresidesinthecarparkingslotassignment slots [8]–[14], [17]. The authors in [15], [16] have considered problem,ourformulationandthealgorithms,ingeneral,canalso astageofvehicularadhocnetworks,whereadvancedroadside 1 v be applied or adopted in fair agent-target assignment problems units are widely deployed and every vehicle is equipped with in other application domains. 0 sophisticated onboard units. In addition, efficient database 1 IndexTerms—Intelligenttransportationsystems,optimization management systems together with real-time communication 2 methods, algorithms, privacy protocols have to be implemented to meet the demands. 6 The proliferation of smartphones has encouraged a num- . 1 ber of private, as well as state companies to deploy real- 0 I. INTRODUCTION time car parking mechanisms in central areas of large cities, 4 The car is certainly one of the most used means of trans- see ParkingCarma [18], Steeteline Parker [19], VehicleSense 1 : port, but its introduction, despite having brought comfort and StreetParkingInformationNetwork(SPIN)[20],VehicleSense v simplification of life, has generated well-known problems of SmartLot [20], and SFMTA SFpark [21]. Like other research i X increasing traffic, and thus clogging roads in the city centers. work proposed in [8]–[17], these methods are also relying on r Especially in large cities, these problems are pronounced by a central authority for providing the underlying infrastructure, a hundreds or even thousands of drivers who are looking for such as wireless sensors, database management systems, etc. parking slots during their daily activities. In [1] it is claimed In almost all existing methods, no emphasis has been that seeking for parking slots (cruising) can account for more placed to optimize an aggregate social benefit of the users than 10% of the local circulations in central areas of large during the parking slot assignment. Arguably, the existing cities. In [2], it is reported that cruising for open parking mechanismscanbeinterpretedasgreedymethods,whereeach spaces accounts for 30% of the traffic, causing undesired userselectstheclosestfreeparkingslottoitsdestination.Such congestioninbigcities.Inaddition,cruisingcreatesadditional agreedymethodcaneasilyaccountforsubstantialimbalances delays and drivers can even spend up to 10-20 minutes before among the distances between users’ parking slots and their they could find a proper parking slot. According to a recent destinations, i.e., is not fair. In other words, some users can British study, it is estimated that a person who owns a car be assigned to parking slots that are very close to their destinations while others can be assigned to parking slots that Manuscriptreceived...ThisresearchwassupportedbyEUprojectsHycon2, are far from their destinations. For example, Figure 1 shows Hydrobionets,andVRprojectInnetworkOptimization. E.AlfonsettiwithTerraSwarmLab,ElectricalEngineeringDepartment,UC a case where two cars are to be assigned to two parking slots. Berkeley,California,USA(e-mail:[email protected]). A greedy assignment approach yields the (car, parking slot) P. C. Weeraddana and C. Fischione with Electrical Engineering, KTH assignment (1,1) and (2,2) which accounts for a total cost of Royal Institute of Technology, Stockholm, Sweden (e-mail: [email protected], carlofi@kth.se). 6 (i.e., 1+5) and a cost imbalance of 5. On the other hand, a 2 . the subgradient methods [25] to accomplish distributed implementation (among users) of the proposed algo- rithm with a little coordination of the central authority. . Therefore, the proposed algorithm has rich scalability . . properties, which is indeed favorable in practice. 3) Theproposedcarparkingmechanismisprivacypreserv- ing in the sense that any car involved in the algorithm will not be able to find out the destination of any other car during the algorithm iterations. This privacy is (a) accomplished as a result of the inherent decomposition structure of the problem together with randomization of 1 car or user 1 parking slot 1 the step size of the subgradient method. 4 4) A number of numerical examples are provided to eval- uate the performance of the algorithm. In addition, the 4 proposedalgorithmiscomparedwiththeoptimalassign- 5 ment method and with a greedy assignment method. car or user 2 parking slot 2 Thus,oursolutionapproachforthecarparkingproblemisfair, (b) distributed, and is easily deployed with the coordination of a central entity. In addition, it has appealing privacy properties. Fig. 1: Car-Parking slot assignment: (a) Physical locations of free The rest of the paper is organized as follows. A description parking slots (squares) and cars’ destinations (circles); (b) Graph, wheretheweightsdenotethedistancesbetweenthedestinationsand ofthesystemmodelandtheproblemformulationispresented parking slots. in Section II. In Section III, we provide the solution method to the car parking problem by using duality theory and sub- fair assignment yields the assignment (1,2) and (2,1) which gradient method. Section IV presents our proposed algorithm accounts for a cost imbalance of 1. for distributed car parking assignment problem. In Section V, Therefore, it is worth seeking efficient, as well as advanced wedescribeprivacypropertiesofthealgorithm.InSectionVI, algorithms that are capable of optimizing some aggregate numerical results are provided. Lastly, Section VII concludes social benefit for the users of the system. Because the in- the paper. volvement of a central authority is instrumental in coordi- nating the car parking mechanisms, optimization criteria can Notations be integrated in to the parking assignment methods, where Boldfacelowercaseanduppercaselettersrepresentvectors some aggregate social metric (utility) is considered during the and matrices, respectively, and calligraphy letters represent assignment process. One such simple, yet appealing utility is sets. The set of real n-vectors is denoted by IRn and the set users’ fairness [22]. of real m×n matrices is denoted IRm×n. We use parentheses Ensuring privacy of the associated algorithms, which can to construct matrices from comma separated sub-matrices of be in various contexts, is also important, see [16]. Naturally, agreed dimensions, e.g., (A,B,C) = [AT BT CT]T. We users would not like to publish information, such as their denote by (A ) the matrix A=(A ,A ,...,A ). destinations to prevent a third party from predicting private i i=1,2,...,N 1 2 N The cardinality of a set A is denoted by card A. traveling patterns. For example, government agencies can probe such information during investigations and business II. SYSTEMMODELANDPROBLEMFORMULATION entities might be interested in exploiting such information to A system consisting of M parking slots and a number of promote their products and services. Therefore, exposure of destinationsisconsidered.WedenotebyM={1,...,M}the privateinformationraisesseriousconcernsofpersonalprivacy. setofparkingslots.Destinationscanincludeanygeographical The main contributions of this paper are as follows: location,suchasshops,bars,banks,cinemas,casinos,houses, 1) We consider the min-max fairness as a metric for mod- parks,hotels,amongothers.Theparkingslotsandthedestina- eling the aggregate social benefit of the users [22]. In tionscanbegeographicallydispersedandneednotnecessarily particular, we consider the distance between parking be concentrated. Knowledge of geographical location of each slot and the destination that corresponds to every user. parking slot is assumed to be available to anyone in the We refer to this distance, associated with any user, system.Atrustworthycentalcontroller(CC)isresponsiblefor as the parking distance. Then we design an algorithm coordinating the parking slot assignment mechanism, namely to minimize the maximum parking distance among all it is the central authority. The coordinations are carried out the users. The proposed algorithm is based on duality through secured channels. theory [23, Section 5]. Our formulation and the corre- Theparkingslotassignmentmechanismisassumedtooper- spondingalgorithmcanbeapplieddirectlyorwithminor ate in slotted time, with the slots normalized to integer values modificationsinfairagent-targetassignmentproblemsin t∈{1,2,3,...}.Atthebeginningofeverytimeslott,theset other application domains as well, and therefore is not M ⊆M of free parking slots is known. 1 In addition, at the t restricted to the car-parking assignment. 2) Wecapitalizeondualdecompositiontechniques[24]and 1Suchinformationisretrievedbyinstallingsensorsateveryparkingslots. 3 (a) (b) Carindex FreeParkingSlot,j Carindex FreeParkingSlot,j i j=1 2 3 4 5 i j=1 2 3 4 5 1 0 1 0 0 0 1 0 1 0 0 0 2 0 0 1 0 0 2 0 0 1 0 0 3 0 1 0 0 0 3 1 0 0 0 0 TABLE 1: Assignment: N ={1,2,3}, M ={1,2,3,4,5}: (a) An infeasible assignment; (b) A feasible assignment. t t beginningofeverytimeslott,asetNt ={1,...,Nt}ofcars III. SOLUTIONAPPROACHVIADUALPROBLEM is scheduled for parking slot assignment, where N ≤|M | is t t In this section, we first equivalently formulate problem (2) the total number of cars. We denote by des(i) the destination in its its epigraph form [23]. Then we apply duality theory to of car i ∈ N and by d the distance from des(i) to free t ij obtain the related dual problem, and show that the problem parking slot j ∈M . We assume that each car i can compute t is split into subproblems and a master problem which can be {d } simply by knowing the geographical location of ij j∈Mt solved efficiently. des(i). Such computations can easily be performed by using The equivalent problem is given by 2 the state-of-the-art global positioning system (GPS). Toformallyexpresstheproblem,letusfirstintroducebinary minimize s (3a) decision variables (x ) , which indicate the i to j ij i∈Nt, j∈Mt subject to (cid:80) d x ≤s, i∈N (3b) assignments as follows: j∈M ij ij (cid:80) x ≤1, j ∈M (3c) i∈N ij (cid:26) 1 car i is assigned to parking slot j (cid:80) x =1, i∈N (3d) xij = 0 otherwise . (1) j∈M ij x ∈{0,1}, i∈N, j ∈M , (3e) ij A feasible assignment should be such that one car is assigned where the variables are s and x = (x ) . Note that ij i∈N, j∈M to only one free parking slot and no more than one car like problem (2), (3) is still nonconvex. Now we seek to is assigned to a free parking slot. For example, Table (a) decouple the problem among the cars, in order to maintain showsaninfeasibleassignmentandTable(b)showsafeasible scalability properties of the car parking mechanism. In this assignment. Now we can formally express the distance from context, we can clearly see that constraints (3d), (3e) are car i’s assigned parking slot to its destination des(i) as already decoupled, yet constraints (3b), (3c) are coupled (cid:80) (cid:80) j∈Mtdijxij.Wereferto j∈Mtdijxij asparkingdistance among the cars, which is an obstacle to distributed solution of car i. methods. In order to ensure min-max fairness among the cars, we Let us now form the partial Lagrangian by dualizing the minimize the maximum parking distance. Min-max fairness is coupling constraints (3b) and (3c). To do this, we introduce appealinginmanyapplicationdomainsinthesensethatiten- multipliersλ=(λ ) fortheinequalityconstraints(3b)and i i∈N sures equalization of the costs incurred by the users, see [22]. multipliers µ = (µ ) for the inequality constraints (3c). j j∈M Specifically, the problem can be formally expressed as The Lagrangian associated with problem (3) is (cid:16) (cid:17) (cid:80) (cid:80) (cid:80) minimize max d x (2a) L(s,x,λ,µ)=s+ λ d x −s i∈Nt j∈Mt ij ij i ij ij (cid:80) i∈N j∈M subject to x ≤1, j ∈M (2b) (cid:80)i∈Nt ij t + (cid:80) µ (cid:16) (cid:80) x −1(cid:17) x =1, i∈N (2c) j ij j∈Mt ij t j∈M i∈N (4) x ∈{0,1}, i∈N , j ∈M , (2d) (cid:16) (cid:17) ij t t =s 1− (cid:80) λ + (cid:80) (cid:80) (λ d +µ )x i i ij j ij i∈N i∈Nj∈M wherethevariableis(x ) .Constraint(2b)ensures (cid:80) ij i∈Nt, j∈Mt − µj . that no more than one car is assigned to a free parking slot. j∈M Constraint (2c) imposes that each car is assigned to only one freeslot.Finally,constraint(2d)ensuresthatthevaluesofxij The dual function g(λ,µ) is given by are either 0 or 1. (cid:0) (cid:1) (cid:0) (cid:1) Notethattheproblemisnonconvexandevencombinatorial. g λ,µ = inf L s,x,λ,µ (5a) s∈IR, Hence we have to rely on global optimal methods [26] (cid:80)j∈Mxij=1, i∈N, such as exhaustive search and branch and bound methods xij∈{0,1}, i∈N, j∈M to solve it. The main disadvantage of global methods is the inf (cid:80) (cid:80) (λ d +µ )x −(cid:80) µ pprroohbilbemitisv.eScuocmhpumtaettihoondaslcaorempnloetxistcya,leavbelen,inanthdetchaesreefoofresmcaalnl =xi(cid:80)j∈j{∈0M,1}x,iij∈=N1,,i∈jN∈M, i∈Nj∈M i ij j (cid:80)ijj∈M j (5b) if λ =1 be impractical. In the sequel, we provide a method based i∈N i on duality. Even though the optimality cannot be guaranteed, −∞ otherwise the proposed method is efficient, fast, and allows distributed implementation with a little coordination from the CC. 2Withoutlossofgenerality,wedropthesubindextfornotationalsimplicity. 4 (cid:32) (cid:33) i(cid:80)∈N (cid:80)j∈Minxfij=1,j∈(cid:80)M(λidij+µj)xij −j∈(cid:80)Mµj oafptohseitivsuebsgcraaldaire.nStinmceethtohde, fee.ags.i,blαekse=t ofα/dku,alwphreorbelemα iiss = xij∈{0,1}, j∈M (cid:80) (5c) separable in λ and µ, the projection P(·) can be performed −∞ otherwise if i∈Nλi =1 ipnedrfeopremndedenatlsy.foTllhoewrse:fore, the iteration (11) is equivalently (cid:40) (cid:80) g (λ,µ)− (cid:80) µ (cid:80) λ =1 λ(k+1) =P (λ(k)−α u(k)) (12) i j i s k = i∈N j∈M i∈N (5d) −∞ otherwise , µ(k+1) =[µ(k)−αkv(k)]+, (13) where the equality (5b) follows from that the linear function where P (·) is the Euclidean projection onto the probability s (cid:80) s(1− i∈N λi) is bounded below only when it is identically simplex [27], zero, the equality (5c) follows from that constraints (3d), (3e) (cid:110) (cid:12) (cid:111) areseparable,andgi(λ,µ)istheoptimalvalueoftheproblem Π= λ(cid:12)(cid:12)(cid:80)Ni=1λi =1,λi ≥0 (14) (cid:80) minimize (λidij +µj)xij and [ · ]+ is the Euclidean projection onto the nonnegative j∈(cid:80)M orthant.NotethattheEuclideanprojectionontotheprobability subject to x =1 (6) ij simplex can be posed as a convex optimization problem that j∈M x ∈{0,1}, j ∈M , can be solved efficiently, see Appendix A. ij withthevariable(x ) .Notethatproblem(6)isacombi- ij j∈M IV. ALGORITHMDEVELOPMENT natorial problem. Nevertheless, it has a closed-form solution In this section, we first present our distributed algorithm to (cid:40) 1 j =argmin(λ d +µ ) i il l address problem (2) via the dual problem (8). The resulting x(cid:63) = l∈M (7) ij 0 otherwise . algorithmisindeedthedistributedcarparkingmechanismthat can be coordinated by the CC or the central controller. Next, The dual master problem is we discuss the convergence properties of the algorithm. (cid:80) maximize g(λ,µ)= g (λ,µ) (8a) i∈N i subject to (cid:80) λ =1 (8b) A. Distributed algorithm implementation i∈N i λ ≥0, i∈N (8c) Roughly speaking, the algorithm capitalizes on the ability i of the CC to construct the subgradient (u,v) in a distributed µ ≥0, j ∈M , (8d) j fashion via the coordination of scheduled cars. Note that, wherethevariablesareλandµ.Inthesequel,wedescribean the involvement of a CC (e.g., an authority who handles the approachtosolvethedualproblem(8),basedontheprojected parkingslots)isessentialforrealizingtheoverallalgorithmin subgradient method [25]. practice. This involvement is mainly for coordinating certain parameter among the scheduled cars, and for constricting a Solving the dual feasibleassignmentincasetheassignmentfromdualproblem isinfeasible.Thealgorithmisformallydocumentedbelow,see Note that g(λ,µ) is a concave function, therefore, we need also Fig. 2 for a concise block diagram. tofindthesubgradients∈IRN+M of−g atafeasible(λ,µ). For clarity we separate s into two vectors as follows: Algorithm: DISTRIBUTEDCAR-PARKING(DCP) s=(u,v), (9) 1) Given the distances (d ) for each car i ∈ N. The ij j∈M centralcontroller(CC)setsk =1,setscurrentobjective where u=(u ) is the part of s that corresponds to λ and i i∈N value pcur(0) = ∞, sets number of conflicting users v=(v ) the part that corresponds to µ. The negative of dual fujncjt∈ioMn −g(λ,µ) is given by Nconflict = N, and broadcasts the initial (feasible) λ(ik) and µ(k) =(µ(k)) to each car i∈N. −g(λ,µ)= (cid:80) µ − (cid:80) µ (cid:80) x(cid:63) − (cid:80) λ (cid:80) d x(cid:63) , j j∈M j j ij i ij ij 2) Every car i sets λ = λ(k) and µ = µ(k) and locally j∈M j∈M i∈N i∈N j∈M i i computes x(k) =(x(cid:63)) from (7). Let jk denote the and particular choices for ui, i∈N and vj, j ∈M are given i ij j∈M i by index of the nonzero component of x(k). i 3) Local subgradients: Each car i ui =− (cid:80) dijx(cid:63)ij and vj =1− (cid:80) x(cid:63)ij . (10) a. sets scalar u(k) = − (cid:80) d x(k) = −d , [com- j∈M i∈N i ij ij ijk j∈M i Thus the projected subgradient method is given by pare with (10)]. b. transmits (u(k),jk) to CC. (λ(k+1),µ(k+1))=P((λ(k),µ(k))−α (u(k),v(k))) , (11) i i k 4) Current assignment and Subgradient iteration at CC where k is the current iteration index of the subgradient a. find the set J(k) of users assigned to slot j, method, P(z) is the Euclidean projection of z∈IRN+M onto j i.e., J(k) = {i | jk = j}. Set Nconflict = the feasible set of the dual problem (8), and α > 0 is the j i k kth step size, chosen to guarantee the asymptotickconvergence (cid:80)j|card(J(k))≥2card(Jj(k)). j 5 b. if no conflicting assignments (i.e., Nconflict =0), set stopping criterion in practice includes running subgradient k Nconflict = Nconflict and go to step 4-c. Otherwise, method for a fixed number of iterations. k go to step 4-d. Recall that, solution method for the primal problem (3) by c. if pcur(k − 1) > max d , set pcur(k) = considering its dual problem (8) does not always guarantee i∈N ijk max d and set Xcur(k) i= (cid:0)eT (cid:1) ∈ the primal feasibility, because the original problem (3) is IRN×i∈MN. Giojikto step 4-e. jik i∈N nonconvex [27]. Therefore, if a feasible assignment is not d. if Nconflict < Nconflict, set Nconflict = Nconflict, achieved,asubroutinecallisrequiredtoconstructoneafterthe pcur(kk) = ∞, Xcur(k) = (cid:0)eT (cid:1) ∈ IRN×Mk, and stopping criterion is satisfied. Step 6 is essentially to address jik i∈N this infeasibility problem. In particular, once the stopping Jcur =J(k), j ∈M. Go to step 4-e. j j criterion is satisfied (step 5), CC checks whether the current e. form u(k) = (u(ik))i∈N and perform (12) to find assignment Xcur(k) obtained is feasible. If it is feasible, λ(k+1). algorithm terminates by returning Xfinal =Xcur(k), where CC f. set v = 1−card(J ), v(k) = (v ) , [compare informseachcari,itsparkingslot.Otherwise,CCperformsa j j j j∈M with (10)]. simple subroutine to construct a feasible assignment Xfinal by g. perform (13) to find µ(k+1). using the current infeasible assignment Xinfeasible, before the 5) Stopping criterion: If the stopping criterion is satisfied, algorithm terminates. In the sequel, we outline a subroutine that can be implemented at CC for constructing a feasible a. go to step 6. assignment. Otherwise, b. CC broadcasts the new λ(k+1) and µ(k+1) to each i C. Constructing a feasible assignment from Xinfeasible car i∈N. The key idea of the subroutine is summarized as follows: c. increment k, i.e., set k =k+1. 1) select the set of cars that are assigned to the same parking d. go to step 2. slot, 2) find the set of free parking slots, and 3) assign the 6) Output: If Nconflict = 0 (i.e., a feasible assignment is conflicting cars found in the first stage to the free parking achieved), CC returns Xfinal = Xcur(k) and terminates slots found in the second stage in an iterative manner. In the the algorithm. Otherwise, CC sets Xinfeasible =Xcur(k), following, we describe this idea in the detail. performs a simple subroutine to construct a feasible We start by introducing some useful notations for clarity. assignment Xfinal from Xinfeasible, returns Xfinal, and We denote by Mover-assigned the set of parking slots, where terminates the algorithm. two or more than two cars are assigned, i.e., Mover-assigned = {j | card(Jcur)≥2}. Moreover, we denote by Mfree the set B. Algorithm description j of free parking slots, i.e., Mfree = {j ∈ M | Jcur = ∅}. j In step 1, the algorithm starts by choosing initial feasible For example, suppose Table (a) corresponds to the current values for λ(k), i ∈ N and µ(k), j ∈ M. Step 2 corre- assignment Xinfeasible, which is infeasible. Then we have i j sponds to the local computations of x(k) at each car i. These Mover-assigned = {2} and Mfree = {1,4,5}. To formally i computations involve simple comparisons [see (7)] and can express the subroutine, it is further useful to introduce some be performed in a parallelized manner by the scheduled cars. minor notations, where we relabel the indices of cars and Step 3 involves coordination of scheduled cars and CC. First, parking slots. Let σ = (σl)l=1,...,card(Mover-assigned) denote the each car i constructs scalar parameter u(k). Then it transmits parkingslotindicesj ∈Mover-assignedarrangedinanincreasing i u(k) together with the potential car slot index jk to CC. order. Moreover, we denote by nj the total cars assigned to i i jth parking slot (cid:2)i.e., card(Jcur)(cid:3), where j ∈ Mover-assigned. In step 4, CC keeps records of the best assignment so j Now, the subroutine can be formally expressed as follows: far. The assignment is best, in the following sense. First suppose algorithm yields at least one feasible assignment, i.e., Nconflict = 0. Then the best assignment is the one that Algorithm: CONSTRUCT A FEASIBLE ASSIGNMENT FROM Xinfeasible corresponds to the smallest objective value among all feasible 1) GiventheinfeasibleassignmentXinfeasible;Mover-assigned; assignments, see step 4-c. On the other hand, suppose algo- rithmdoesnotyieldanyfeasibleassignment,i.e.,Nconflict >0. Mfree, σ, and nj ∀j ∈ Mover-assigned. Set Xfinal = Xinfeasible, k =1, and l=1. Thenthebestassignmentistheonecorrespondstothesmallest NthakctonflNictcoanflmicotnigs aelqluianlfetoasitbhleetaostsailgncomneflnitcst,insgeeussteerps,4a-ndd. Nthoutes 2) JCCσclurseatrsraπnge=d (inπna)nn=in1c,.r.e.,ansσilngtoorbdeert.he car indices i ∈ 3) For n=2:n quantifies the degrees of infeasibility, see step 4-a. Moreover, σl by using the information received from scheduled cars, CC a. CC sends Mfree to car πn. constructs the global subgradient components u(k) ∈IRN and b. carπn choosesslotj,wherej =argminjdπnj and v(k) ∈IRM,whichinturnareusedtoperformthesubgradient sends j to CC. iterations (12)-(13), see steps 4-e,4-f,4-g. c. CC updates Mfree as Mfree =Mfree\{j} and sets The new parameters λ(k+1) and µ(k+1) are broadcasted to [Xfinal]πnj =1. everycarandthealgorithmisperformedinaniterativemanner 4) If l = card(Mover-assigned), return Xfinal and STOP. until a stopping criterion is satisfied, see step 5. Natural Otherwise, set l=l+1 and go to step 2. 6 (1) initialization,broadcastλ(0),µ(0),k=1 (2) caricomputesx(k),i∈N i caricomputesitspartrelated (3) tothesubgradient,i.e.,u(k)andjk i i No (4-a,b) is(cid:0)x(k)(cid:1) feasible? i i∈N Yes keepthebestfeasibleobjective trackthebest andthecorrespondingsolutionifany (4-c) feasibleobjective& (4-d) OTHERWISE thecorrespondingsolution trackthebestinfeasiblesolution (4-e,f,g) subgradientiterationatCC (6) returnbestfeasiblepoint Yes (5) STOPPINGcriterionsatisfied? ifexistanyorotherwise runsubroutinetogetone No broadcastλ(k+1),µ(k+1),k=k+1 (5-b,c) Fig. 2: Block diagram of the DCP algorithm. (λ(cid:63),µ(cid:63)) denote the optimal solution of dual problem (8). Step1istheinitializationofthesubroutine.Step2takesevery Suppose (cid:107)(λ(1),µ(1)) − (λ(cid:63),µ(cid:63))(cid:107) is bounded from above. over-assigned parking slots in the order defined by σ and the Then,∀ε>0, ∃n≥1suchthat∀k k ≥n⇒(d(cid:63)−g(k))<ε, best corresponding conflicting car indices are ordered as π. In where d(cid:63) is the optimal value of the dual problem (8). step 3, all of these cars, but π1 are assigned to free parking Proof: The proof is based on the approach of [25], [27]. slots in an iterative manner. In particular, the conflicting cars We have (except π1) in the given over-assigned parking slot are given (cid:13)(cid:13)(λ(k+1),µ(k+1))−(λ(cid:63),µ(cid:63))(cid:13)(cid:13)2 the free parking slot indices (see step 3-a) and every car 2 chooses its parking slots in a greedy manner (see step 3-b). = (cid:13)(cid:13)P(cid:0)(λ(k)−αku(k))−λ(cid:63),(µ(k)−αkv(k))−µ(cid:63)(cid:1)(cid:13)(cid:13)22 (15) rNeomteainthaitnththeeasssliogtnmalerenatdoyf scpaercπifi1eids nboyt Xchfiannalg,edbeacnadusiet ctahne ≤ (cid:13)(cid:13)((λ(k)−αku(k))−λ(cid:63),(µ(k)−αkv(k))−µ(cid:63))(cid:13)(cid:13)22 (16) other cars are reassigned in step 3-a and step 3-b. Moreover, = (cid:107)(λ(k),µ(k))−(λ(cid:63),µ(cid:63))(cid:107)22−2αku(k)T(λ(k)−λ(cid:63)) CC updates the assignment Xfinal accordingly, see step 3-c. −2α v(k)T(µ(k)−µ(cid:63))+α2(cid:107)u(k)(cid:107)2+α2(cid:107)v(k)(cid:107)2 (17) k k 2 k 2 Stopping criterion in step 4 checks whether all the cars in ≤ (cid:107)(λ(k),µ(k))−(λ(cid:63),µ(cid:63))(cid:107)2−2α (cid:0)g(λ(cid:63),µ(cid:63)) the over-assigned parking slots have been reassigned. If so, 2 k subroutine terminates by returning the feasible assignment −g(λ(k),µ(k))(cid:1)+α2(cid:107)u(k)(cid:107)2+α2(cid:107)v(k)(cid:107)2 , (18) k 2 k 2 Xfinal. Otherwise, the subroutine continues by moving to where (15) follows from (11), (16) follows from that the the next over-assign parking slot. If the subroutine above EuclideanprojectionP(z)ofanyz∈IRN+M ontothefeasible is applied to Xinfeasible given in Table (a), then a possible set of the dual problem (8) always decreases the distance of feasible assignment Xfinal is shown in Table (b). P(z) to every point in the feasible set and in particular to the optimal point (λ(cid:63),µ(cid:63)), and (18) follows from the definition D. Convergence of subgradient. Recursively applying (18) and rearranging the In this section, we present the convergence properties of terms we obtain the proposed DCP algorithm for car parking. In particular, we show that for a sufficiently large number of subgradient 2 (cid:80) αl(d(cid:63)−g(λ(l),µ(l))≤−(cid:13)(cid:13)(λ(k+1),µ(k+1))−(λ(cid:63),µ(cid:63))(cid:13)(cid:13)22 l=1:k iterations, the DCP algorithm converges to the dual optimal +(cid:107)(λ(1),µ(1))−(λ(cid:63),µ(cid:63))(cid:107)2+ (cid:80) α2(cid:107)u(l)(cid:107)2+ (cid:80) α2(cid:107)v(l)(cid:107)2 value of problem (8). The convergence is established by the 2 l 2 l 2 l=1:k l=1:k following proposition: (19) Proposition 1: Let gb(kes)t = ≤(cid:107)(λ(1),µ(1))−(λ(cid:63),µ(cid:63))(cid:107)2+ (cid:80) α2(cid:0)(cid:107)u(l)(cid:107)2+(cid:107)v(l)(cid:107)2(cid:1) max{g(λ(1),µ(1)),...,g(λ(k),µ(k))} denote the dual 2 l 2 2 l=1:k objective value found after k subgradient iterations and (20) 7 ≤R2+G2 (cid:80) α2+G2 (cid:80) α2 =R2+(G2+G2) (cid:80) α2 , 1 l 2 l 1 2 l l=1:k l=1:k l=1:k (21) d1j1m ..... ≡parkingslots w(λh(cid:63)e,rµe(cid:63))(cid:13)(cid:13)(220)≥ fo0l,lo(w2s1) ffroollmowsthfarotm(cid:13)(cid:13)t(hλa(tk+(cid:107)1()λ,(µ1)(,kµ+1(1)))) −− ..... ≡des(1) 2 j=jm (λ(cid:63),µ(cid:63))(cid:107) is bounded from above, i.e., ∃ R < ∞ such 1 that (cid:107)(λ(1),µ(1)) − (λ(cid:63),µ(cid:63))(cid:107) < R and the norm of the subgradient (u,v) is bounded from above as (cid:107)u(cid:107)2 ≤G1 =(cid:113)(cid:112)(cid:80)i∈N(maxj∈Mdij)2 (22) d1j1p j.....=j1p ..... d1j1l (cid:107)v(cid:107)2 ≤G2 = (N −1)2+(M −1) . (23) j=j1l The bound (22) is obtained by noting that there exist at most onenonzeroelementin(x ) ,see(7)and(10).Moreover, ij j∈M (23) follows when all cars are assigned to one parking slot, see (10). By using the trivial relation aFdigve.r3sa:ryGi(vceanr n(j)1p,,jdp1j(cid:54)=1p)j,l(,jj1lp,d(cid:54)=1j1lj)m,,(ja1nmd,djilj1m(cid:54)=)jpma,irdsiskcnoovwenrintog tthhee d(cid:63)−g(k) ≤d(cid:63)−g(λ(l),µ(l)), l=1,...,k , (24) 1 1 1 1 1 1 best location of des(1). and (21), we obtain an upper bound on d(cid:63)−g(k) as best of data associated with car 1, where K is the total iterations d(cid:63)−g(k) ≤ (cid:0)R2+(G2+G2)(cid:80)k α2(cid:1)/(2(cid:80)k α ) (25) of DCP algorithm. Provided there exists at least three distinct best 1 2 l=1 l l=1 l jks, car n can simply locate des(1) as illustrated in Fig. 3. 1 Nsuomtimngabtlhe,ati.set.e,p(cid:80)si∞lz=e1ααl2l == αα/2πl,/60. M<oαreo<ver,∞(cid:80)ikls=1sqαularies dEavteanaisfsoccairatnedkwnoitwhscoanrl1y,tihtetusrentsDo1ut=th{adt1cja1kr}kn=1c,a2n,...l,oKcaotef strictlymonotonicallyincreasingink (itgrowswithoutbound des(1) exhaustively. In particular, in every iteration k, car n as k → ∞). Therefore, for any (cid:15) > 0, we can always find drawsM−1circleswithradiusd centeredatparkingslots an integer n ≥ 1 such that (cid:80)kl=1αl > (cid:15) (R2/2+a2(G21 + M\{jnk}. Let Sk denote the afo1rje1kmentioned set of circles. G22)π/12) if k ≥n, which concludes the proof. Providedthereareatleastthreedistinctj1ks,whichcorrespond The bound derived in (25), together with (22)-(23) allows to some iteration indexes l,m, and p, one can see that there us to predict some key behaviors of the convergence of the exists at least one point at which a circle in Sl, a circle in proposedalgorithm.Forexample,thelargerthedij values,the Sm, and a circle in Sp intersect. If this point is unique, then largertheG1,andtherefore,thelargerthenumberofiterations it corresponds to des(i). 3 The discussion above indicates that to achieve a given accuracy. Nevertheless, the influence of if the adversary (car n) knows C or even D , under mild 1 1 G1 can be made negligible by arbitrarily scaling down the conditions, it can locate des(i). In the sequel, we show how objective function of problem (2). From (23), we note that DCP precludes such situations. In particular, we show how the number of scheduled cars (i.e., N) and the number of {d } is kept hidden from the adversary car n. 1jk k=1,2,...,K freeparkingslots(i.e.,M)directlyinfluencetheconvergence. 1 In the next section, we highlight some appealing privacy B. How to preserve privacy preserving properties of the DCP algorithm. Note that the only means by which car n gets access to V. PRIVACYPROPERTIESOFTHEALGORITHM some functions of {d1jk}k=1,2,...,K is via {λ(nk)}k=1,2,...,K, 1 We see that the proposed car parking mechanism DCP is see step 5 of DCP algorithm. In other words, the involvement preserving privacy in the sense that any car n(cid:54)=i will not be of car n during the DCP algorithm is restricted so that, abletofindoutthedestinationdes(i)ofithcarwhileusingthe in every iteration k, it has access to only some interface DCP algorithm. We refer to an attempt of an arbitrary car n variables λ(nk) and µ(k). 4 This restriction is indeed achieved to discover the destination of any other car i, as a passive by the decomposition structure of problem (2). Moreover, we attack [28, § 5.1-5.3], where car n keeps records of possibly considerthesituationthatCCusesthestepsizeαk ofDCPas all the information that it exchanges with CC and by using α α = , (26) those it tries to discover private data des(i). In what follows, k k we first present sufficient information that an arbitrary car n where α is arbitrarily chosen on [αmin,αmax], αmin and αmax canusetodiscoverdes(i).ThenweshowhowDCPalgorithm are positive numbers known only to CC such that αmin < cancels such a sufficient information and ensures privacy. αmax. Note that the above choice of α still preserves the k A. Sufficient information to discover the destination 3Whentheparkingslotsarenotarbitrarilylocatedandtherearesymmetric Let us first fix the adversary to be car n and assume that properties,thentherecanbemorethanoneintersectionpoint,whichinturn willcreateuncertaintiesincorrectlylocatingdes(i). car n wants to discover des(1), i.e., the destination of car 1. 4The knowledge of µ(k) is irrelevant here because it does not carry any NowsupposecarnknowsthesetC1 ={(j1k,d1jk)}k=1,2,...,K informationofd1jk. 1 1 8 λ2 ofequationsineveryiterationk asgiveninTable2.Notethat a. the set of equations for k >1 are nonlinear, because there are products of unknowns, e.g., (2.2), (2.3), (3.2), and (3.3). A A 2 1 When documenting the relations of unknowns in Table 2, we assume {a } lies only in the shaded area A . k k=1,2,3... 1 a1=(cid:0)λ(11)+α1d1j11,λ(21)+α1d2j21(cid:1) In contrast, suppose ak lies either in the hatched area A2 1 . or A3 for some iterations. One such point is depicted in Fig. 4, where a = a, see the hatched area A . In this case, 1 2 (λ(2),λ(2)) will be (0,1). Consequently, car 2 can locate a 1 2 1 . . only up to a cone instead of a ray, which in turn accounts (cid:0)λ(11),λ(21)(cid:1) b1 a2=(cid:0)λ(12)+α2d1.j12,λ(22)+α2d2j22(cid:1) for more uncertainties in determining a1. Such situations can (cid:0)λ(2),λ(2)(cid:1).−−−−−− . onlyincreasethedifferencebetweenthenumberofunknowns 1 2 (cid:124) (cid:123)(cid:122) (cid:125) b2 (Uk) and the number of equations (Ek). For example, in this β1 case, we will have U2−E2 > 1, instead of U2−E2 = 1 as in Table 2. (cid:0)λ(2),λ(2)(cid:1).−−−−−−. Thus, we can conclude that, the total unknowns are always 1 2 (cid:124) (cid:123)(cid:122) (cid:125) greater than the total equations. This results an under de- β2 A3 termined set of nonlinear equations, see Table 2. Therefore, car 2 cannot make records of unknowns {d } 1jk k=1,2,...,K 0 1 λ1 and consequently it cannot discover des(1) as d1iscussed in Fig. 4: The evolution of λ(k) =(λ(k),λ(k)) in a case of 2-cars. Section V-A. 1 2 convergence properties established in Proposition 1 (see Sec- VI. NUMERICALRESULTS tion IV-D) for the following reasons [compare with (25)]: In this section we present the numerical evaluation of our 1) (cid:80)∞ α → ∞. This result is shown by noting that proposed algorithm DCP. We compare the DCP algorithm to k=1 k (cid:80)∞ αmin/k →∞ and 0<αmin/k ≤α for all k. the following benchmarks: k=1 k 2) (cid:80)∞ α2 converges to a point on (a) Greedy parking policy: In this case, each car selects the k=1 k [(αmin)2π/6,(αmax)2π/6]. This result is achieved closest parking slot to its destination. by noting that (cid:80)∞ (αmin)2/k2 → (αmin)2π/6, (b) Optimal parking policy: A solution of the optimization k=1 (cid:80)∞ (αmax)2/k2 → (αmax)2π/6, and problem (3) is found by using the general solver, the k=1 (αmin)2/k2 ≤α2 ≤(αmax)2/k2 for all k. IBM CPLEX optimizer [29]. k The arbitrary step size above (i.e., 26) essentially introduces In each time slot, the proposed algorithm is carried out for more protection to the problem data {d } . K subgradient iterations. In fact, K is used to define the 1jk k=1,2,...,K 1 Now we pose the following question: Does the proposed stopping criterion at step 5 of DCP algorithm, see Fig. 2. DCPallowcarnalonetomakerecordsof{d } ,so In addition, the greedy policy and the optimal policy have 1jk k=1,2,...,K 1 that it can locate des(1) as discussed in Section V-A? It turns alsobeenperformedateverytimeslot.Weaveragetheresults out that even though, car n can document the connections over T time slots to demonstrate the average performances among the unknown parameters including {d } , of the DCP algorithm. Specifically, at the beginning of every 1jk k=1,2,...,K 1 among others, it can only come up with an under determined time slot, the total number of cars N and the total number of set of nonlinear equations. Therefore {d } cannot free parking slots M are considered to be fixed and the dis- 1jk k=1,2,...,K 1 be computed as we will see next. tances {d } are considered uniformly distributed on ij i∈N,j∈M We consider only the case with n=2 and suppose car 2 is [0,1000]. The parking distances, {d } are changed ij i∈N,j∈M the adversary that wants to discover the destination of car 1, from slot to slot. i.e., des(1). The discussion can be generalized to scenarios To simplify the presentation, we denote by pcur(t,k) the with n>2, in a straightforward manner. bestobjectivevalueachievedattimeslottafterk subgradient First,notethatCCperformstheprojectionofλ(k)−α u(k) iterations [compare to pcur(k) in step 4-c,d of the DCP k onto the probability simplex to yield λ(k+1) [see step 4-c of algorithm]. In particular, DCP algorithm]. In the considered 2-car case, the probability pcur(t,k)=arg min p(t,l) , (27) simplex is the line segment form (0,1) to (1,0), see Fig. 4. l=1,...,k Once car 2 is given λ(1), it can locate (λ(1),λ(1)), because 2 1 2 where p(t,l) is the objective value at time slot t and at λ(11) =1−λ(21). Yet car 2 cannot locate a1 =λ(1)−α1u(1). subgradientiterationl.Notethatpcur(t,k)issimilartopcur(k) After receiving λ(2), car 2 can locate (λ(2),λ(2)). It can of DCP algorithm with an additional index t to indicate the 2 1 2 also locate a1 up to the ray originating at b1, see Fig. 4. time slot. Moreover, we denote by Xcur(t,k) the best feasible However, car 2 cannot exactly locate a1. The algorithm or infeasible solution, which is identical to Xcur(k) of DCP continues in a similar manner. For example, the evolution of algorithm with an additional index t to indicate the time slot. λ(k) =(λ(k),λ(k)) is illustrated in Fig. 4 for k =1, 2, and 3. In all the considered simulations, we use T = 1000. 1 2 With this knowledge of λ(k) evolution, car 2 can write a set Moreover, K is chosen to be 300 or 500. To simplify the 9 iteration(k) relationsofunknownparametersabc unknowns no.ofunknowns(Uk) no.ofequations(Ek) 1 λ(1)+λ(1)=1 →(1.1) λ(1) 1 1 1 2 1 (1.1) λ(1),λ(2) 1 1 2 λ(12)+λ(22)=1 →(2.1) β1 5 4 λ(12)+β1=λ(11)+α1d1j1 →(2.2) α1 1 λ(22)+β1=λ(21)+α1d2j1 →(2.3) d1j1 2 1 (1.1),(2.1),(2.2),(2.3) λ(1),λ(2),λ(3) 1 1 1 3 λ(13)+λ(23)=1 →(3.1) β1,β2 9 7 λ(13)+β2=λ(12)+α2d1j2 →(3.2) α1,α2 1 λ(23)+β2=λ(22)+α2d2j2 →(3.3) d1j1,d1j2 2 1 1 . . . . . . . . . . . . . . . TABLE 2: Relations of unknown parameters as seen by the adversary car 2. presentation, we refer to problem setups with N/M ≤ 0.5 100 as lightly loaded cases and refer to problem setups with 98 N/M ≥ 0.5 as heavily loaded cases. Moreover, the problem setups with N/M (cid:39)0.5 are referred to as moderately loaded 96 cases. 94 We first define a performance metric called the degree of 92 feasibility of Xcur(t,k). Note that Xcur(t,k) is, in fact, the %] assignmentatthebeginningofstep6ofDCPalgorithm,which F [K 90 D canbeeitherfeasibleorinfeasible.IfXcur(t,k)isfeasible,we 88 have Nconflict = 0 or equivalently, pcur(t,K) < ∞ [compare 86 with step 6, 4-c, and 4-d]. On the other hand, if Xcur(t,k) is infeasible, we have Nconflict >0 or equivalently, pcur(t,K)= 84 ∞[comparewithstep6,4-c,and4-d].Thismotivatestodefine 82 K=500 the degree of feasibility (DF) of Xcur(t,k) as K=300 80 2 4 6 8 10 12 14 16 18 20 (cid:80)T I(cid:0)pcur(t,K)<∞(cid:1) Total Scheduled Cars, N DFK = t=1 T ×100% , (28) (a) whereI(E)istheindicatorfunctionofeventE,i.e.,I(E)=1 100 if E is true or I(E)=0 otherwise. K=500 K=300 90 Fig. 5 shows DFK versus N for fixed M. In particular a smaller dimensional problem with M = 20 [Fig. 5(a)] and a 80 larger dimensional problem with M =100 [Fig. 5(b)] is con- 70 sidered.ResultsshowthatwhenN issignificantlysmallerthan M, the degree of feasibility is almost 100%. Results further 60 %] showthatasN becomesclosertoM,thedegreeoffeasibility [K 50 F starts deteriorating. Moreover, it becomes significantly law in D 40 the case of larger dimensional problem [Fig. 5(b)] compared withthesmallerdimensionalproblem[Fig.5(a)].Forexample, 30 when N = M, algorithm yields DFK values in the range 20 94−96%forthesmallerdimensionalproblemsetup.However, 10 in the case of larger dimensional problem, when N =M, the degree of feasibility is almost zero. Not surprisingly, running 0 10 20 30 40 50 60 70 80 90 DCP algorithm for larger number of subgradient iterations Total Scheduled Cars, N (e.g., K = 500 ) yields better feasibility results compared (b) withsmallernumberofsubgradientiterations(e.g.,K =300). Fig.5:DegreeoffeasibilityDFK versustotalcarsN:(a)M = However, the performance gap has been pronounced in the 20 ; (b) M =100. case of M =100 [Fig. 5(b)] compared to the case M =20. Fig. 6 shows DFK versus M for fixed N. Again a smaller To see the average behavior of the DCP algorithm, now we dimensional problem (N = 10) and a larger dimensional considerthefollowingperformancemetric,whichisameasure problem with N = 50 is considered, see Fig. 6(a)] and of the average objective value at subgradient iteration k: Fig. 6(b), respectively. Results resemble the observations of pave(k)= 1 (cid:80)T pcur(t,k) , k =1,...,K . (29) Fig.5,whereadesirablefeasibilityisachievedwhenM issig- T t=1 nificantly larger than N and the performances are pronounced Fig. 7 shows pave(k) versus subgradient iterations k for for smaller dimensional problems. cases M = 20, N = 4 [Fig. 7(a)] and M = 20, 10 100 110 Greedy method Proposed method CPLEX 95 105 90 %] DF [K avep(k) 85 100 80 K=300 75 K=500 95 10 15 20 25 50 100 150 200 250 300 350 400 450 500 Total Parking Slots, M Subgradient iterations, k (a) (a) 100 190 Greedy method 95 Proposed method CPLEX 90 180 85 80 170 %] DF [K 75 avep(k)160 70 65 150 60 55 K=300 140 K=500 50 50 100 150 200 Total Parking Slots, M 50 100 150 200 250 300 350 400 450 500 Subgradient iterations, k (b) (b) Fig.6:Degreeoffeasibility DFK vstotalparkingslotsM:(a) Fig. 7: Average objective pave(k) versus subgradient iterations N =10 ; (b) N =50. k: (a) N =4 and M =20; (b) N =10 and M =20. N = 10 [Fig. 7(b)]. Note that the vertical drops of the curves associated with our proposed method correspond to of the proposed method is not critical. For example, the the subgradient iteration, before which a feasible assignment performance loss of DCP method compared with the optimal is found during any time slots t = {1,...,T}. Results show is 0.88% in the case of N = 4 and 3.89% in the case of thatinthelightlyloadedcasethatcorrespondstoasmallerN N = 10. It is interesting to note that the proposed DCP (i.e.,N =4),afeasibleassignmentisfoundmuchearlierthan algorithm outperforms the greedy method. For example, the the moderately loaded case which corresponds to N = 10. performancedegradationofthegreedymethodcomparedwith Specifically,whenN =4,theDCPalgorithmyieldsafeasible the optimal is 5.86% and 29.43% in the cases of N =4 and assignmentatmostafterk =6subgradientiterations,whereas N =10, respectively, which is significantly higher compared when N = 10, it yields a feasible assignment at most after with our DCP method. k = 31 subgradient iterations. This result is consistent with Fig. 8 shows pave(k) versus subgradient iterations k for a Fig. 5 and Fig. 6, because for fixed M, the higher the N, the larger dimensional problem setup. In particular, we consider higher the number of time slots among t=1,...,T at which the cases M =100, N =10 [Fig. 8(a)] and M =100, N = feasible solutions are achieved. For comparison, we also plot 20 [Fig. 8(b)]. The behavior of the plots are similar to those the average objective values obtained from the greedy method inFig.7.InthecaseofN =10,theperformancedegradation andtheoptimalCPLEXmethod.Notsurprisingly,theoptimal of DCP method compared with the optimal is 0.66% and that CPLEX method gives the best average objective, which is of the greedy method is 3.95%. In the case of N = 20, the achieved at the expense of high computational complexity. performance degradation of DCP method is 1.72% and that However, our proposed method trades off an increase in of the greedy method is 10.48%. Results thus show that even averageobjectivevalueforalowcomplexityinthealgorithm, in larger networks our proposed DCP method can outperform which gracefully scalable. Still the performance degradation the greedy approach substantially.