180 likes | 195 Views
Multi-Agents System CMSC 691B Gunjan Kalra Peter DSouza. Outline. Introduction Overview of TAC Background Strategy used by LARS Strategy used by UMBCTAC MASTAC strategy Design Conclusion. Introduction. TAC - trading agent competition held annually
E N D
Outline • Introduction • Overview of TAC • Background • Strategy used by LARS • Strategy used by UMBCTAC • MASTAC strategy • Design • Conclusion
Introduction • TAC - trading agent competition held annually • Strategies used involve single agent per competitor • Winners (Living Agents) used a multi-agent strategy that proved to be most effective • MASTAC : Enhancing UMBCTac’s strategy by incorporating Living Agents’ architecture
Trading Agent Competition • 12 minute game - 8 competitors per game • Agents communicate with AuctionBot server • Each competitor has 8 clients • 3 commodities - flight tickets, hotel reservations and entertainment tickets • Objective - maximize the total satisfaction of the clients • Learning patterns developed in qualifying rounds
Commodities • Flights • One flight both ways per day (no in-flights on last day, no out-flights on first day) • Single seller auctions • Prices set by AuctionBot agent according to stochastic function - Perturbations induced in price periodically • Unlimited supply of seats
Commodities • Hotel Reservations • high priced (Tampa Towers) • low priced (Shoreline Shanty) • Ascending auctions • 16 rooms auctioned off each day • 16 highest bids accepted • Cost price for all winners = price of 16th highest bid = Ask price of next set of bids • Only hotels can sell rooms
Commodities • Entertainment • Alligator wrestling, amusement park and museum • Each agent receives allotment of 12 tickets • 8 tickets per event type allotted • Agents exchange bids continuously through double auctions • One auction for each event-night combination
Scoring • Penalty of 200 assessed for each ticket owed (sell tickets the agent does not own) • Allocation done by TAC scorer • Value = sum of individual client utilities • Final score=(value of allocation) - (travel agent’s expenses) - (penalty for negative entertainment balances) • Optimal allocation done
Background • General strategies used • Strategies based on obtaining hotel rooms • Price prediction algorithm • Hotel auction models • Concentrating on individual preferences vs. aggregate purchases • Linear programming solution to find an optimal purchase • Greedy algorithm used in some cases
Background • Risk analysis strategies prior to purchase • lengthen travel if customer preferences showed higher score for attending entertainment • shorten travel if cost of hotel exceeded penalty • Analysis of average response time to overcome network delay and server performance • Allocation provided by agents themselves in some cases
Living Agents’ Strategy • 20 agents of 5 different types used • 1 TACManager • 5 TACDataGrabber agents • 8 TACClient agents • 5 TACAuctioneer agents • 1 ResultGrabber (offline agent) • Strategy (never changes) - offer high prices as soon as possible, win bids • No bids withdrawn or changed
Living Agents’ Strategy • Flight and hotel auctioneers bid for needs of the clients only • Entertainment auctioneers place higher bids for buying and lower bids for selling • Best journey calculated based on client-preferences, flight prices and average hotel prices
UMBCTac strategy • An adaptive best plan for every client • Computes TAC value by contrasting every possible plan against client preferences • Larger the TAC value, better the match • Best plans may change every time new TAC data is obtained • Concentrate on only three clients per cycle due to huge computation time
UMBCTac strategy • Sleeps for a minute to compute new bids • Flights - tickets bought early in the game • Hotels - offer higher price initially itself • Entertainment - first find one ticket that had maximum entertainment and assign it to a customer who is willing to pay for it
Design • Strategy • one agent works toward obtaining one client’s best travel plan • one MASTACmgr agent acts as an interface between 8 client agents and TAC server • computes next set of bids based on best bid estimates received from each client agent
Design • Flights • Collect tickets as soon as possible • Hotels • Same as that of UMBCTac • Decision made on per-customer basis • Entertainment • Adjust entertainment tickets between agents to optimize distribution of tickets
Advantages • Huge search space distributed amongst 8 client agents • Less computation time per agent • Additional capability to bid for more goods than a single agent can • Better allocation possible due to better travel plans for every client
Conclusion • Performance benefits observed in real-life scenarios with longer time duration • Implementation results still to be obtained • Less overhead in communication time as compared to Living Agents’ strategy • Higher throughput as compared to UMBCTac strategy