a trading agent for real-time procurement of bundles of complementary goods on multiple simultaneous...

17
A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats Carlsson, Joakim Eriksson, Niclas Finne, Sverker Janson, Lars Rasmusson, Magnus Boman, Per Kreuger Intelligent Systems Laboratory Swedish Institute of Computer Science (SICS) http://www.sics.se/isl/

Upload: emmeline-cummings

Post on 18-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges

Erik Aurell, Mats Carlsson, Joakim Eriksson, Niclas Finne, Sverker Janson, Lars Rasmusson, Magnus Boman, Per Kreuger

Intelligent Systems LaboratorySwedish Institute of Computer Science (SICS)

http://www.sics.se/isl/

Page 2: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Combinations of Goods/Resources

• Complementary goods– Demand in one

decreases when price of the other increases

– ”both needed”

• Substitutable goods– Demand in one

increases when price of the other increases

– ”one or the other”

• Buyer combinations– Flight and hotel nights– Project resources– VPN links– ...

• Seller combinations– Match production

facilities– Economy of scale– Byproducts– ...

Page 3: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Combinatorial Markets and Trading

• How make the best possible global exchange of goods/resources?

• How buy/sell the best possible combinations at the best possible prices?

• Combinatorial markets – All goods on one market– Global optimization of

combinatorial bids– See, e.g., Trade Extensions

(tradeextensions.se)

• Trading agents– Goods on multiple

markets– Optimized trading

(online decision problem) for one or more clients

Page 4: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Trading Agent Competition (TAC)

• Trading Agent Competition– International annual event– Aim: stimulate research

into automated combinatorial trading

• Model problem– Goods in travel domain:

flights, hotel nights, event tickets

– Agents represent clients with different preferences

– Goal: buy best possible combinations at the lowest possible price

• A game instance– 8 competing agents,

each representing 8 clients

– 28 markets, auctions, exchanges

– 12 minutes

• The TAC-01 competition– 25 participating academic

and industrial research groups

– Winner, livingagents by Living Systems AG, determined by thousands of games over several weeks

Page 5: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

8 agents

8 clients

006

28 auctions

LivingAgents

ATTac

RoxyBot

Harami

Arc2k

Whitebear

Urlaub

flightmarkets

hotelauctions

event ticketexchanges

Page 6: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Communicationwith trading

agentsMarketserver

Informationdatabase

Publish datavia web and

applet

TAC ServerTrading Agents

Game Spectators

LivingAgents

ATTac

006

Page 7: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

TAC-01 Game Monitor (Game 5716)

Page 8: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Travel Packages, Goods and Feasibility

• Inflight tickets Ii– i in 1 .. 4

• Outflight tickets Oi– i in 2 .. 5

• Hotel nights Hij– i in 1 .. 2, j in 1 .. 4

• Event tickets Eij– i in 1 .. 3, j in 1 .. 4

• Flights, in preceding out

• Hotel nights in-date to out-date – 1, same hotel

• Up to three different events on different hotel nights

• E.g., I1, O3, H11, H12, E21, E32

Page 9: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Client Preferences and Utility

• Preferred arrival and departure date– PA in 1 .. 4, PD in 2..5

• Bonus for H1– BH1 in 50 .. 150

• Bonus for E1, E2, E3– BE1, BE2, BE3 in 0 ..

200

• E.g., PA = 1, PD = 4, BH1 = 63, BE1 = 120, BE2 = 23, BE3 = 184

• Utility = 1000 – TravelPenalty + HotelBonus + EventBonus

• TravelPenalty = 100 * (|AA–PA| + |AD–PD|)

• E.g., 1000 – 100*(|1-1| + |3-4|) + 63 + 23 + 184 = 1170

• Max 1750, min 400

Page 10: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Auction/Market Types

• Flight tickets– ”Over-the-counter”– Unlimited supply– Prices in $150 .. $800– Start in $250 .. $400– Updated every ~30

seconds by -10 .. X(t)

• Event tickets– Continuous double

auction– 8 tickets / event / day– 12 endowed / agent

• Hotel nights– Ascending multi-unit

Nth price auctions– 16 rooms / hotel /

night– Price = 16th highest

bid– Price updates once a

minute– Auctions close

randomly, one every minute from 4th minute

Page 11: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Trading Agent Problems

• Strategy problem– Buy which packages?– Which packages demanded by others?– Modeling opponents?– Price expectations?– Uncertainty/risk? (Binding bids.)

• Optimization problem– Combine goods into travel packages for clients– Analogous to combinatorial auctioneer

problem

Page 12: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

006 Strategy

Initialize

Estimate prices

Flight

Event

Hotel

Endowment

Client prefs

Find optimalholdings

Compute target holdings

Inform auctionhandlers

Optimizer(“The Solver”)

marginal costsand prefs

target holdingsand price

e.g. Hotel auction handler

Compute new bid fromcurrent holdings, old bidand target holdings. Bid.

Monitor bid.Increase if necessary.

If transaction, auctionclose, or price > max

costthen initiate replanning.

Page 13: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

006 Optimizer (”The Solver”)

• Constraint programming– Finite domain

constraints– Global constraints

• cumulatives(Ts, Ms)– task(S, D, E, H, M)– machine(M, L)

• Limited discrepancy search– Limit allowed backtracks– Anytime

• Branch-and-Bound– Bound = best so far

• Variable order– Arrivals, departures– Hotels– Events– Order by max utility

of pertaining client

• Value order– Descending estimated

value of X = v– I.e. average of upper

and lower bound– Arrival, departure

ordered pairwise

Page 14: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Communication andScheduling

GameHandler

TAC Server(Michigan Auction Bot)

FlightHandler

Auction Handler

HotelHandler

Auction Handler

EntertainmentHandler

Auction Handler

”The Solver”TAC

Optimizer

Flight StrategyFlight Strategy Flight StrategyHotel Strategy Flight StrategyEnter. Strategy

006 Architecture & Implementation

• SICStus Prolog

• Explicit task scheduling

• Optimizer in separate process

Page 15: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

TAC-01 Scores (Semifinals)

# Agent Affiliation Score Std dev

Heat

1 livingagents Living Systems AG 3660.2 893.8 1

2 Southampton TAC University of Southampton 3614.5 747.3 1

3 Urlaub01 Penn State University 3484.8 924.1 1

4 whitebear Cornell University 3469.7 1043.0 1

5 Retsina Carnegie Mellon University 3293.5 630.9 2

6 ATTac AT&T Labs 3249.2 407.9 2

7 006 SICS 3240.8 1108.1 1

8 CaiserSose University of Essex 3038.1 640.9 2

9 TacsMan Stanford University 2966.1 595.2 2

10

PainInNEC NEC Research 2905.9 540.6 2

11

polimi_bot Politecnico di Milano 2834.7 1102.1 2

12

umbctac University of Maryland, BC 2772.9 813.5 2

13

RoxyBot Brown University 2112.4 1478.7 2

14

arc-2k Chinese U of Hong Kong 1746.3 1948.7 1

15

jboadw McGill University, CA 1716.7 1281.3 1

16

harami Bogazici University, Istanbul

94.4 2537.2 1

Page 16: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

006 Problem: Unstable Solver Output

• Time– 260 ms

• Utility– 2736

• Flight allocation– [4,4,4,4,4,4,3,4]– [5,5,5,5,5,5,4,5]

• Hotel allocation– [0,0,0,0,0,0,0,0]– [1,1,1,1,1,1,1,1]

• Event allocation– [0,4,0,4,0,0,3,0]– [0,0,0,0,0,0,0,0]– [4,0,0,0,4,4,0,0]

• Time– 540 ms

• Utility– 2978

• Flight allocation– [3,1,3,1,2,2,3,3]– [5,5,5,4,3,5,4,5]

• Hotel allocation– [1,1,1,1,0,1,1,1]– [0,0,0,0,1,0,0,0]

• Event allocation– [0,0,3,3,0,0,3,0]– [0,0,0,0,0,0,0,0]– [4,4,0,0,2,4,0,0]

Page 17: A Trading Agent for Real-Time Procurement of Bundles of Complementary Goods on Multiple Simultaneous Internet Auctions and Exchanges Erik Aurell, Mats

Trading Agent Competition 2002

• Hosted by SICS

• Info/registration:http://www.sics.se/tac/

• New open source game and market server software