Title: Multi-Attribute Exchange Market: Search for Optimal Matches
1Multi-Attribute Exchange MarketSearch for
Optimal Matches
Eugene Fink Jianli Gong John Hershberger
2Motivation
- Build an automated
- exchange for trading
- goods and services
3Previous work
- Combinatorial auctions
- Standardized exchanges
- Simple goods - Symmetry between
buyers and sellers - Liquid
4Research goals
Build an automated exchangefor non-standardized
goods.
- Support fast-paced trading for markets with
millions of orders
- Include optimization techniques to maximize
traders satisfaction
5Outline
- Multi-attribute orders
- Best-price matches
- Quality functions
- Experimental results
6Market
A market is a set of items that can be traded,
defined by a list of attributes.
Example A used-car market is a set of all
conceivable vehicles, defined by model, year,
and mileage.
7Orders
A trader specifies a buy or sell order by
attribute values and a price limit.
A value specification may include lists of values
and numeric ranges.
Buy order Model Mustang or Corvette Year
2002..2004 Mileage 0..10K Price ? 32,000
8Matching
Sell order Mustang, made in 2004, 30,000
Price
Year
32,000
Buy order Mustang, made after 2001, 32,000
04
30,000
03
02
01
Model
Camaro
Mustang
Corvette
9Outline
- Multi-attribute orders
- Best-price matches
- Quality functions
- Experimental results
10Main structures
- Tree of fully specified orders
- Unordered list of the other orders
11Depth-first search
Buy OrderAny car madeafter 1990
12Depth-first search
Drawback If there are many matching leaves,the
search takes a long time.
Solution Apply best-first search
-
- Store the best price for each subtree
- Use these prices to guide the search
13Best prices for subtrees
4,000
14Search for the best price
Buy OrderAny car madeafter 1990
15Outline
- Multi-attribute orders
- Best-price matches
- Quality functions
- Experimental results
16Quality functions
A trader can specify a quality function that
ranks the acceptable transactions.
The transaction quality may depend on an item and
its price.
17Quality functions
A trader can specify a quality function that
ranks the acceptable transactions.
The transaction quality may depend on an item and
its price. The system searches for the matches
with the highest quality.
18Depth-first search
Buy OrderAny car madeafter 1990
19Monotonic attributes
- The quality monotonically changes with the
price
- Usually, it is also monotonic on several
other attributes
- Example
- Car quality
- Increases with the year
- Decreases with the mileage
20Best-first search
- For every subtree, store the best value of
each monotonic attribute
- Use these values to estimate the quality of
the best match in every subtree
21Best values for subtrees
2000, 10K, 4,000
22Search for the best match
Buy OrderAny car madeafter 1990
50K, 7,000
23Outline
- Multi-attribute orders
- Search for matches
- Quality functions
- Experimental results
24Performance
Experiments using aPentium computer
-
- 2 GHz CPU
- 1 Gbyte memory
- 166 MHz bus
25Cars and bonds
- Car market with eight attributes
500 to 50,000 orders per second
- Bond market with two attributes
bonds
cars
26Artificial markets
- Synthetic market data
- 1 to 100 attributes
- 300,000 orders
Best-First
Depth-First
27Summary
- General model for trading of multi-attribute
goods
- Fast identification of matches between buy
and sell orders