This action might not be possible to undo. Are you sure you want to continue?

BTP term1 report

**Project Adviser Prof. Sumit Ganguly sganguly@cse.iitk.ac.in November 9, 2008
**

Anupam Ashish Y5101 anupash@cse.iitk.ac.in Naveen Kumar Kushwaha Y5274 naveenk@cse.iitk.ac.in

Abstract

Auction Algorithms have been used to solve the general assignment problem in [1].They have been used in more than one ways to solve resource allocation problems. They are pretty useful if the existing deterministic algorithm are NP-hard as we can design heuristics based on auction mechanism to get a nearly optimal solution. Network bandwidth allocation problem can be transformed to assignment problem and solved using method given in [1] by converting it to ﬂow problem or we can propose another auction based mechanism to solve a bandwidth allocation problem. Here we are trying to solve a bandwidth allocation problem where K source-sink pair wish to communicate with each other. We have been motivated by [1] and an another auction algorithm to solve this problem.

Introduction

Auction based algorithm are being used extensively these days in problems where the deterministic algorithm takes too much time. Bandwidth allocation for users in a network is one of such kind of problem.There are many variations to the Network bandwidth problem in which auction based mechanism can be applied.

**Model of a simple Auction
**

Suppose A service provider wants to sell the bandwidth at a single link in the network.There is a ﬁxed amount of for the available bandwidth.But many users want to get the bandwidth.So demand for the Bandwidth would be more than the Available. So to allocate the Bandwidth Service provider will start an auction. Auctioneer suggests a price and bidder bids for the amount of bandwidth which they want to get at this price.This is one simple notion of an auction.There are variety of techniques for Auctions. Some famous types of auctions are English vs Dutch, Single Dimensional vs Multi Dimensional, Sealed bid vs Closed bid, Single sided vs Double sided, ﬁrst price vs second price(VCG). A brief introduction about auctions can be found in [3].

1

Each person tries to maximize his value. j) ∈ A} (1) (2) Solution to this problem would be the a set S congaing pairs of (i. To break such cycle there is a concept of complementary slackness mechanism .They deﬁne a price reduction policy called price Freezing. So if an object j has price P(j) then value for person i for that j object is a[i. Naive Auctions Two types of problem exists here one is the symmetric assignment and second is asymmetric assignment. j] − P (j).j) where S is such that S = {(i.So here γi will be equal to vi − wi + . We have extended the problem solved by them and gave a solution for a modiﬁed problem. So here n our aim is to maximize the total beneﬁt 0 a[ij] .Suppose we have two equally qualiﬁed object for a person . These auction work like real life auctions where persons/bidders compete for the objects by increasing their prices through competitive bidding. Here is a situation where this algorithm fails to work . j) ∈ A} B(j) = {i|(i. Although each auction runs independently.Motivation & Literature Bertsekas’s Survey on Network Flow problems [1] The prototypes being used here is auction algorithms for assignment problems. Note that γi can never be negative.In that case will be zero and hence algorithm inters in next iteration without raising objects prices.xl (t)] where r and s are constants.xl (t) is the allocated bandwidth at link l.So we have A(i) = {j|(i. The Algorithm tries to optimize this feasible n solution by maximizing the total beneﬁt 0 a[ij]. We have given a set A of (i . If all bidders are assigned then algorithm terminates.Otherwise not-empty subset of unassigned persons is selected and computation for the best is performed. jk ] − P (jk ) = max{a[i.j) that can be matched . a[i. In Price reduction price at time t at a link l will be as Pl (t) = Pl (0) − r ∗ [t − s.In this mechanism each bid must increase the price of an object by some minimum positive increment . link with lowest remaining capacity has the highest price. He solves the problem to a general topology network. bidding increment is γi = vi − wi where vi is the value of best object for i and wi is value of second best object for i . j] − P (j)} is satisﬁed for all pairs in assignment. Hence algorithm gets into a cycle. Proposition 1: There exist a choice for initial prices for the various links such that at any time . Let I be that non empty subset. wi is −∞ if no other object is there. Approach is to run auction simultaneously at each node for the bandwidth allocation. To simulate an auction we will introduce a beneﬁt a[ij] for matching bidder i to object j. Price Freezing policy says that when allocation of bandwidth takes place price at that link will freeze for some time of period. He explores the problem using Dutch auctions. j)| object j is assigned to some person i} And this assignment would be feasible if set S has n elements and each bidder ’i’ is assigned to a distinct object ’j’. Pl (0) is the initial price set. Network Bandwidth Allocation over paths [2] This paper gave us deep insight into the problem of Network Bandwidth Allocation.For the support of their Mechanism they had given three simple propositions. for every pair of links for none of which prize are frozen . In the ﬁrst problem n bidder matches for n object and assignment is one-one while later in later problem a bidder may have more than one objects.Now we associate price with each object. 2 . Each person i in I ﬁnds object j in A(i) for which its value is maximal.

Ci − xi (t) < Cj − xj (t) . E) where V is a ﬁnite set of vertices/nodes and E is the set of edges/arcs.They showed that experimented results are better than other techniques.s ≥ 0 this condition is true for Ci − xi (t) < Cj − xj (t) Proposition 2:The Maximal execution time for algorithm is proportional to the link’s initial price and capacity.Then he can decide the optimal point of termination. Users submit their bid i with their demand.Ci i Proposition 3:Algorithm allocates bandwidth eﬃciently if optimal price of links are already known. Proof: As auction will terminate at Price = 0 . source and sink pair represent two modes who want to communicate with each other.Proof: Suppose at time t remaining capacity at link i is less then at j ie. It can be mathematically stated as : min i.xi (t) > Pj (0) − rt + rs. The problem is to ﬁnd a minimum cost allocation of bandwidth across the network. The criteria of optimization may be either the Revenue Maximization or the Social Welfare.j k f (ek ) ∗ pij ij where f (ek ) is the bandwidth corresponding to Sk in the edge eij ij f (Sk ) if −f (Sk ) if 0 otherwise i = sk i = tk f (ek ) − ij j|(i.[xj (t) + Cj − Cj ] Pi (0) + rsCi ]rs[Ci − xi (t)] > Pj (0) + rsCj ]rs[Cj − xj (t)] as r. Bidders are then allocated and charged according to VCG rule. The problem can be varied with integral bandwidth or non-linear cost function.j)∈E j|(j.[xi (t) + Ci − Ci ] > Pj (0) + rs. And we have to ﬁnd the minimum cost allocation of bandwidth to such nodes so that they can communicate.For having Pi (t) > Pj (t) condition Pi (0) − rt + rs. (3) (4) (5) Problem Statement Given a network represented by graph G = (V.The auctioneer will decides on price vector when should auction will end. This problem can directly model a network where there are nodes ready to communicate with each other.t0 + r. j element of V has a capacity cij and a cost/price pi.s.j . Sk .x∗ Algorithm works in two stages 1. 3 .i)∈E f (ek ) = ji (6) f (ek ) <= cij ij k f (ek ) >= 0 ij It can be seen that the number of variable here are equal to the number of arcs multiplied by the number of pairs Sk . Let there be a set of pairs of source and sink Sk = (sk .So Pi (0) − r.xj (t) Pi (0) + rs.xi (t0 ) i i set xi (t0 ) = Ci i we get t0 = Pi (0)/r + s. tk ) each with a supply and demand. 2. Proof:Let optimal price at link i is Pi∗ and allocation with respect to it is x∗ (Computed by Lagrange i Multipliers) we have Pi (0) = Pi∗ +rt−rs. They have not proven any optimality constraints. Each edge eij where i. Hence as the number of variables gets bigger and bigger the time to solve even gets bigger.

• End: The main program determines the winner of the bid. If there still remains some arc/edge which has a conﬂict then return to step 2. One such path is chosen and the algorithm start with it. Hence ﬁnd an individual optimal solution which corresponds to and optimal path. Termination It is easy to see that the algorithm never terminates if the solution is not feasible. This happens because algorithm will keep on iterating till all the conﬂicts have been removed. The losers have to change the maximal capacity in that arc to zero. Sk starts a new auction if it has lost an arc/edge and migrates to some other arc where it again faces conﬂict. then subtracting it with the current optimal value. Now we would look at the conﬂicts at the common edges i. Proof and Termination The algorithm will work only if the output is an optimal solution given feasible solution exists. So unless there are inﬁnite number of arcs/edges or number of pairs Sk the termination time will be bounded.e for any edge eij there are more than Sk who are interested in taking that path. In such cases the previous auction can be reopened and the capacity of the arc/edge be changed to the original value. otherwise we have to have bidding in order to determine the winner. We now look at the number of conﬂicts.Auction/Bidding • Begin: Each of Sk who have a conﬂict at the corresponding edge eij and satisfy the condition for bidding would have to bid for the link/edge keeping in mind it’s usage and the cost of avoiding it. 2. So we have to take care of the feasibility and the optimality. So essentially the number of times Sk will reopen an auction is the number of edges/arcs. The bid value for each of Sk can be evaluated by solving a new min-cost ﬂow without the current edge. So the maximal number of auctions are |E|2 .Basis We run the min-cost ﬂow algorithm individually for each Sk . 3.Updating and Iteration After all the capacities are updated then each of Sk solve their (adapted) min-cost ﬂow. Moreover the maximal number of conﬂicts per arc/edge depends on the maximal number of auctions started by Sk (source. Otherwise stop.sink pair) multiplied with the number of such pairs. 4 . Condition for bidding : If the some of the ﬂows/bandwidth allocated to all Sk at the edge does not exceed the capacity then there will be no bidding. • Reopen Auctions: Some of the Sk lost their bid and have to consider changing their route and therefore they can reconsider their bids on previous auctions.Auction Algorithm There can be various such approach such ﬁrst ﬁnding a feasible solution and iterating it to get a solution close to optimal. Sk .|K| K is the number of pairs Sk and |E| is the number of arcs/edges. 1. But our algorithm would ﬁrst ﬁnd an optimal solution for each Sk and then combine them to get a feasible solution. The number of conﬂicts is equal to the maximal number of conﬂicts per arc/edges multiplied with the number of arcs/edges. The edge/link is then assigned to the winner of the bid. Note that we have determined only one winner and all other are kicked out.

Optimality Only way the solution can’t be optimal. George D. Too high strength of the opposition can only happen if it has faced a large number of losses. It would be very interesting to watch the performance of the application after parallelization. This can only happen if somebody didn’t occupy an optimal path. This can only happen if somebody loses the auction due to too low bidding strength or too high bidding strength of the opposition. References [1] Dimitri P. First there exist some arc which is free and has to be used by some Sk . There can be two such cases. A bulﬀers guide to auction algorithm. 2007. But the ﬁrst auction is without an earlier auction so this situation is not feasible. This can only happen if the capacity if the arc has been changed to zero. An auction mechanism for allocating the bandwidth of networks to their users. 2007. Sumit Ganguly for his guidance and for being very encouraging and helpful throughout this work. [2] Costas Courcoubetis Manos Dramitinos *. [3] Simon Parson. is that there exists some Sk for which the route is not optimal. However there are ﬁnite number of auctions. Also we would like to extend this approach for other algorithms and problems. Too low strength can occur only if there is some free path incorrectly available. Because otherwise this would have led to an increase in strength. Bertsekas. pages 1–64. And this can happen if there was an error in the earlier auctions. Conclusion and Future Work We have proposed an algorithm which would work for the minimum cost allocation of bandwidth over a given network and proved it’s feasibility and optimality. Stamoulis. 5 . Secondly there exist some arc which is wrongly occupied. Acknowledgment We would like to thank our supervisor Prof. But the step 3 of our algorithm will ensure the arc is repined for bidding by changing it’s capacity to original value. 1992. So it had losses before earlier auction and losses before it. Auction algorithms for network ﬂow problems.

Sign up to vote on this title

UsefulNot useful- GSP-ExR
- Distributed and Centralized Task Allocation- When and Where to Use Them
- US Treasury
- US Treasury
- US Treasury
- 6508308 Preparing for the Lsat
- Notice
- Auction Program Sample 1
- The Auction Report 4.8.11 Issue
- tv-icalp
- Reach for a Million
- chapter 14
- Lawyers Fiduciary Obligations
- MarchApril2009
- LSATPreparationweb
- LSAT
- User Manual
- Proposed Rule
- Game Theory 1
- Tim DeChristopher appeal
- Design and Analysis of Wireless and Mobile
- The Hoogsteder Mercury
- Pampas Railroads Rules
- 10qbwdth
- Oesterreich-5448-5520
- SRM-ONGC
- 159 - PNB vs CA
- Simulating the Turing Machine and Markov Models
- Decoupling Object-Oriented Languages from Wide-Area Networks in Lamport Clocks
- Designing the Algorithm
- Term 1 Final

Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

We've moved you to where you read on your other device.

Get the full title to continue

Get the full title to continue reading from where you left off, or restart the preview.