Скачать презентацию Computational Mechanisms for Multi-Attribute Exchange Markets Eugene Fink Скачать презентацию Computational Mechanisms for Multi-Attribute Exchange Markets Eugene Fink

e3af0eed15bc72f6dee6a46399e13b62.ppt

  • Количество слайдов: 70

Computational Mechanisms for Multi-Attribute Exchange Markets Eugene Fink Part I: Research interests and projects Computational Mechanisms for Multi-Attribute Exchange Markets Eugene Fink Part I: Research interests and projects Part II: Automated exchange system

Part I: Research Interests and Projects 1992– 1998 Ph. D. Student 1999– 2003 Assistant Part I: Research Interests and Projects 1992– 1998 Ph. D. Student 1999– 2003 Assistant Professor

Research interests • Artificial intelligence Major • Machine learning • Algorithm theory Minor • Research interests • Artificial intelligence Major • Machine learning • Algorithm theory Minor • Computational geometry

Research projects • Artificial intelligence Representation changes Medical expert systems • Machine learning Multi-attribute Research projects • Artificial intelligence Representation changes Medical expert systems • Machine learning Multi-attribute exchanges Approximate data matching • Algorithm theory Indexing of time series Meshing in three dimensions • Computational geometry Generalized convexity

Representation changes Artificial intelligence and learning Automated simplification of search problems. • Integrated library Representation changes Artificial intelligence and learning Automated simplification of search problems. • Integrated library of search and learning algorithms • Top-level module that selects appropriate algorithms for each given problem • Automated problem reformulation, to improve efficiency of the selected algorithms

Medical expert systems Artificial intelligence Automated selection of cancer patients for experimental treatment procedures. Medical expert systems Artificial intelligence Automated selection of cancer patients for experimental treatment procedures. • Guiding a nurse through the related questions • Identifying the appropriate medical tests • Reducing the cost of the selection process Joint work with the Moffitt Cancer Center.

Approximate data matching Artificial intelligence, learning, and algorithms Fast identification of approximate matches in Approximate data matching Artificial intelligence, learning, and algorithms Fast identification of approximate matches in massive structured data. • Indexing of alphanumeric data • Search for approximate matches • Application to homeland security Joint work with Carnegie Mellon University and the DYNAMi. X Technologies Corporation.

Indexing of time series Artificial intelligence and algorithms Indexing and retrieval of time series Indexing of time series Artificial intelligence and algorithms Indexing and retrieval of time series by their major minima and maxima. 4 3 • Fast compression of time series 1 1 3 • Hierarchical indexing of compressed series • Search for series similar to a given pattern

Meshing in three dimensions Algorithms and computational geometry Representation of spatial objects by triangle Meshing in three dimensions Algorithms and computational geometry Representation of spatial objects by triangle and quadrilateral meshes. • Indexing in three dimensions • Search for optimal meshes • Repair of meshes with holes Joint work with the Sandia National Laboratories and USF Civil Engineering Department.

Generalized convexity Computational geometry Exploration of mathematical and computational properties of restricted-orientation convexity. • Generalized convexity Computational geometry Exploration of mathematical and computational properties of restricted-orientation convexity. • Definition of generalized convex sets in terms of their intersections with lines from some fixed set of orientations • Study of convex sets in higher dimensions

Part II: Automated Exchange System for Multi-Attribute Markets Joint work with the DYNAMi. X Part II: Automated Exchange System for Multi-Attribute Markets Joint work with the DYNAMi. X Technologies Corporation.

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Motivation • Build an automated exchange for trading goods and services • Combine the Motivation • Build an automated exchange for trading goods and services • Combine the speed of the stock exchange with the flexibility of e. Bay +

Previous work • Combinatorial auctions • Standardized exchanges Previous work • Combinatorial auctions • Standardized exchanges

Combinatorial auctions • Complex goods • Asymmetry between buyers and sellers • Illiquid Combinatorial auctions • Complex goods • Asymmetry between buyers and sellers • Illiquid

Standardized exchanges • Simple goods • Symmetry between buyers and sellers • Liquid Standardized exchanges • Simple goods • Symmetry between buyers and sellers • Liquid

Research goals Build an automated exchange for non-standardized goods. • Allow complex constraints in Research goals Build an automated exchange for non-standardized goods. • Allow complex constraints in the specification of desirable trades • Support fast-paced trading for markets with millions of orders • Include optimization techniques to maximize traders’ satisfaction

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Main concepts • Market • Orders • Matches • Fills • Attributes Main concepts • Market • Orders • Matches • Fills • Attributes

Market All items that can be traded form a market. Example: All conceivable vehicles Market All items that can be traded form a market. Example: All conceivable vehicles compose a car market.

Orders An order is a subset of the market along with a price function. Orders An order is a subset of the market along with a price function. Example: Any Mustang or Corvette; Mustang for $28, 000 or Corvette for $32, 000 , –$1 for every ten miles.

Orders Price Buy order Sell order Orders Price Buy order Sell order

Matching A buy order matches a sell order if: There is item buy-items sell-items, Matching A buy order matches a sell order if: There is item buy-items sell-items, such that buy-price(item) sell-price(item).

Matching Sell order Price Buy order Matching Sell order Price Buy order

Matching Sell order Price Fill Buy order Matching Sell order Price Fill Buy order

Fills A fill is defined by a specific item and its price , which Fills A fill is defined by a specific item and its price , which must match the buy order and the sell order : • fill-item buy-items sell-items • fill-price buy-price(fill-item) • fill-price sell-price(fill-item)

Fills Buy order: Sports car $30, 000 Sell order: Mustang $28, 000 or Corvette Fills Buy order: Sports car $30, 000 Sell order: Mustang $28, 000 or Corvette $32, 000 Fill: Mustang $29, 000

Attributes A specific market is defined by a list of attributes. Example: A used-car Attributes A specific market is defined by a list of attributes. Example: A used-car market is a set of all possible vehicles, defined by model, year, and mileage.

Attributes A trader specifies acceptable items by attribute values. An item specification may include Attributes A trader specifies acceptable items by attribute values. An item specification may include lists of values and numeric ranges. Example: Sell order Model: Mustang Year: 2003 Mileage: 0 Buy order Model: Mustang Year: 2001. . 2003 Mileage: 0. . 10 K

Attributes Sell order Model: Mustang Year: 2003 Price Year 02 01 00 03 Camry Attributes Sell order Model: Mustang Year: 2003 Price Year 02 01 00 03 Camry Mustang Corvette Buy order Model: Mustang Year: 2000. . 2003 Model

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Architecture The system consists of a central matcher and user interfaces that run on Architecture The system consists of a central matcher and user interfaces that run on separate machines. Traders enter orders through the interface machines, which send the orders to the matcher. Matcher User interface ills f fills or orders d fill ord s ers User interface

Data structures The matcher includes a central structure for indexing of orders. • Tree Data structures The matcher includes a central structure for indexing of orders. • Tree of fully specified orders, which are called index orders • Unordered list of the other orders, which are called nonindex orders

Indexing tree Model Mustang Corvette Year 1996 Mileage 50 K 1996 Mustang, 50 K Indexing tree Model Mustang Corvette Year 1996 Mileage 50 K 1996 Mustang, 50 K miles, $7, 000 1997 Mileage Year 1985 1986 Mileage 1988 Mileage

Indexing tree Model Mustang Year 1996 Mileage 50 K 1996 Mustang, 50 K miles, Indexing tree Model Mustang Year 1996 Mileage 50 K 1996 Mustang, 50 K miles, $5, 000 Corvette Camry Year 1997 Year 2000 Mileage 10 K Mileage 1999 180 K 1999 Camry, 10 K miles, $18, 000 1986 Mileage 2000 Camry, 180 K miles, $5, 000 1988 Mileage 20 K 1988 Corvette, 20 K miles, $4, 000

Trading cycle The matcher alternates between processing new orders and identifying matches for old Trading cycle The matcher alternates between processing new orders and identifying matches for old nonindex orders. Process all new orders Re-match all old nonindex orders

Processing Process Re-match For every new order: Search for matches in the indexing tree. Processing Process Re-match For every new order: Search for matches in the indexing tree. If it is not filled, and it is an index order, then add it to the indexing tree. If it is not filled, and it is a nonindex order, then add it to the unordered list.

Re-matching Process Re-match For every old nonindex order: Search for matches in the indexing Re-matching Process Re-match For every old nonindex order: Search for matches in the indexing tree, among new index orders. If it is filled, then remove it from the unordered list.

Drawbacks Process Re-match • The system does not find matches between two nonindex orders Drawbacks Process Re-match • The system does not find matches between two nonindex orders • The system delays matches between a new index order and an old nonindex order

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Optimal matches The system searches for the bestprice matches in the indexing tree. • Optimal matches The system searches for the bestprice matches in the indexing tree. • Depth-first search • Best-first search

Depth-first search Buy Order: Any car made after 1990 Model Mustang Year Camry Corvette Depth-first search Buy Order: Any car made after 1990 Model Mustang Year Camry Corvette Year 1996 1999 2000 1988 Mileage 50 K 180 K 20 K 1996 Mustang, 50 K miles, $7, 000 1999 Camry, 10 K miles, $18, 000 2000 Camry, 180 K miles, $5, 000 Best price 1988 Corvette, 20 K miles, $4, 000

Depth-first search Drawback: If there are many matching leaves, the search takes a long Depth-first search Drawback: If there are many matching leaves, the search takes a long time. Solution: Limit the number of matches.

Depth-first search Buy Order: With limited number of matches Any car made after 1990 Depth-first search Buy Order: With limited number of matches Any car made after 1990 Model Mustang Year Limit: 2 matches Camry Corvette Year 1996 1999 2000 1988 Mileage 50 K 180 K 20 K 1996 Mustang, 50 K miles, $7, 000 Best price among found matches 1999 Camry, 10 K miles, $18, 000 2000 Camry, 180 K miles, $5, 000 Actual best price 1988 Corvette, 20 K miles, $4, 000

Depth-first search With limited number of matches Drawback: The system may not find the Depth-first search With limited number of matches Drawback: The system may not find the best-price match. Solution: Apply best-first search: • Store the best price for each subtree • Use these prices to guide the search

Best prices for subtrees Model $4, 000 Mustang $7, 000 Year Mileage 50 K Best prices for subtrees Model $4, 000 Mustang $7, 000 Year Mileage 50 K 1996 Mustang, 50 K miles, $7, 000 Corvette Year $5, 000 1999 $18, 000 Mileage 180 K Year $4, 000 2000 10 K 1996 $7, 000 Camry 1999 Camry, 10 K miles, $18, 000 1988 $5, 000 2000 Camry, 180 K miles, $5, 000 Mileage $4, 000 20 K 1988 Corvette, 20 K miles, $4, 000

Search for the best price Buy Order: Any car made after 1990 Model $4, Search for the best price Buy Order: Any car made after 1990 Model $4, 000 Mustang $7, 000 Year Mileage 50 K 1996 Mustang, 50 K miles, $7, 000 Corvette Year $5, 000 1999 $18, 000 Mileage 180 K Year $4, 000 2000 10 K 1996 $7, 000 Camry 1999 Camry, 10 K miles, $18, 000 1988 $5, 000 2000 Camry, 180 K miles, $5, 000 Best price Mileage $4, 000 20 K 1988 Corvette, 20 K miles, $4, 000

Search for the best price Advantages: • The system finds the best match • Search for the best price Advantages: • The system finds the best match • It is much faster than DFS without a limit on the number of matches Drawback: • It is usually slower than DFS with a small limit on the number of matches

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Quality functions A trader can specify a quality function that ranks the acceptable transactions. Quality functions A trader can specify a quality function that ranks the acceptable transactions. The transaction quality may depend on an item and its price. Quality Price Buy order Attributes

Quality functions A trader can specify a quality function that ranks the acceptable transactions. Quality functions A trader can specify a quality function that ranks the acceptable transactions. The transaction quality may depend on an item and its price. Example: Quality of a car purchase +4 for each year after 1970 – 5 for each 10 K miles – 6 for each $1, 000

Quality functions A trader can specify a quality function that ranks the acceptable transactions. Quality 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.

Depth-first search Buy Order: Any car made after 1990 Model Mustang Year Camry Corvette Depth-first search Buy Order: Any car made after 1990 Model Mustang Year Camry Corvette Year 1996 1999 2000 1988 Mileage 50 K 180 K 20 K 1996 Mustang, 50 K miles, $7, 000 1999 Camry, 10 K miles, $18, 000 2000 Camry, 180 K miles, $5, 000 Highest Quality: 37 quality: 37 Quality: 3 Quality: 0 1988 Corvette, 20 K miles, $4, 000

Monotonic attributes • The quality monotonically changes with the price • Usually, it is Monotonic 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

Best-first search • For every subtree, store the best value of each monotonic attribute Best-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

Best values for subtrees Model Mustang 1996, 50 K, $7, 000 Year 1996 50 Best values for subtrees Model Mustang 1996, 50 K, $7, 000 Year 1996 50 K, $7, 000 Mileage 50 K 1996 Mustang, 50 K miles, $7, 000 2000, 10 K, $4, 000 Camry Year 1999 10 K, $18, 000 Mileage 10 K 1999 Camry, 10 K miles, $18, 000 Corvette 2000, 10 K, $5, 000 Year 1988, 20 K, $4, 000 2000 1988 180 K, Mileage $5, 000 20 K, Mileage $4, 000 180 K 2000 Camry, 180 K miles, $5, 000 20 K 1988 Corvette, 20 K miles, $4, 000

Search for the best match Model Mustang 1996, 50 K, 37 $7, 000 Year Search for the best match Model Mustang 1996, 50 K, 37 $7, 000 Year 1996 50 K, 37 $7, 000 Mileage 50 K 1996 Mustang, 50 K miles, $7, 000 Highest quality: 37 1999 10 K, $18, 000 Mileage 10 K 1999 Camry, 10 K miles, $18, 000 Any car made after 1990 2000, 10 K, 91 $4, 000 Camry Year Buy Order: Corvette 2000, 10 K, 85 $5, 000 Year 1988, 20 K, 38 $4, 000 2000 1988 180 K, Mileage $5, 000 20 K, Mileage $4, 000 180 K 2000 Camry, 180 K miles, $5, 000 20 K 1988 Corvette, 20 K miles, $4, 000

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Performance Experiments using a Pentium computer : • 1. 5 GHz CPU • 1 Performance Experiments using a Pentium computer : • 1. 5 GHz CPU • 1 Gbyte memory • 166 MHz bus

Variables Control variables: • Search strategy • Number of orders • Number of attributes Variables Control variables: • Search strategy • Number of orders • Number of attributes Measurements: • Processing time • Re-matching time • Throughput

Processing time Process Re-match Logarithmic scale Linear scale 1, 000 time (sec) 400 10 Processing time Process Re-match Logarithmic scale Linear scale 1, 000 time (sec) 400 10 300 200 0. 1 0. 001 100 1 10 100 1, 000 100, 000 number of orders 0 50 K 100 K 150 K 200 K 250 K number of orders Best-First Search, Unlimited DFS, and Limited DFS

Re-matching time Process Re-match Logarithmic scale Linear scale 1, 000 time (sec) 400 10 Re-matching time Process Re-match Logarithmic scale Linear scale 1, 000 time (sec) 400 10 300 200 0. 1 0. 001 100 1 10 100 1, 000 100, 000 number of orders 0 50 K 100 K 150 K 200 K 250 K number of orders Best-First Search, Unlimited DFS, and Limited DFS

Total time Process Re-match Logarithmic scale Linear scale 1, 000 time (sec) 400 10 Total time Process Re-match Logarithmic scale Linear scale 1, 000 time (sec) 400 10 300 200 0. 1 0. 001 100 1 10 100 1, 000 100, 000 number of orders 0 50 K 100 K 150 K 200 K 250 K number of orders Best-First Search, Unlimited DFS, and Limited DFS

Throughput orders per second 100, 000 1, 000 10 1 3 30 10 number Throughput orders per second 100, 000 1, 000 10 1 3 30 10 number of attributes 100 Best-First Search, Unlimited DFS, and Limited DFS

Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions Outline • Motivation • Main concepts • Architecture • Best-price matches • Quality functions • Performance • Conclusions

Summary • General model for trading multi-attribute goods • Hard and soft constrains in Summary • General model for trading multi-attribute goods • Hard and soft constrains in the specification of orders • Fast identification of matches between buy and sell orders

Other results • Limited support for multi-order matches Buy order: 1 Mustang $28, 000 Other results • Limited support for multi-order matches Buy order: 1 Mustang $28, 000 Sell order: 2 Mustangs $30, 000 Fill: 1 Mustang $28, 000 Buy order: 1 Mustang $32, 000 Fill: 1 Mustang $32, 000

Other results • Limited support for multi-order matches • Limited support for combinatorial orders Other results • Limited support for multi-order matches • Limited support for combinatorial orders and or Buy order: Mustang $28, 000 Buy order: Corvette $32, 000 Sell order: Camry $18, 000

Other results • Limited support for multi-order matches • Limited support for combinatorial orders Other results • Limited support for multi-order matches • Limited support for combinatorial orders • Distributed broker modules Matcher Broker module User interface

Current work • Advanced indexing structures • Search for approximate matches • Trading different Current work • Advanced indexing structures • Search for approximate matches • Trading different types of goods in a common exchange • Integration with combinatorial auction algorithms • Use of multiple matchers