Clearing Algorithms for Barter Exchange Markets: Enabling Nationwide Kidney Exchanges Hyunggu Jung Computer Science University of Waterloo Oct 6, 2008.

Slides:



Advertisements
Similar presentations
The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.
Advertisements

Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
C&O 355 Lecture 23 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
GRAPH BALANCING. Scheduling on Unrelated Machines J1 J2 J3 J4 J5 M1 M2 M3.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
ANDREW MAO, STACY WONG Regrets and Kidneys. Intro to Online Stochastic Optimization Data revealed over time Distribution of future events is known Under.
Seminar In Game Theory Algorithms, TAU, Agenda  Introduction  Computational Complexity  Incentive Compatible Mechanism  LP Relaxation & Walrasian.
CS774. Markov Random Field : Theory and Application Lecture 17 Kyomin Jung KAIST Nov
Planning under Uncertainty
Approximating Maximum Edge Coloring in Multigraphs
Computational problems, algorithms, runtime, hardness
1 Spanning Trees Lecture 20 CS2110 – Spring
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
Circuit Retiming with Interconnect Delay CUHK CSE CAD Group Meeting One Evangeline Young Aug 19, 2003.
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
1 Introduction to Linear and Integer Programming Lecture 9: Feb 14.
Implicit Hitting Set Problems Richard M. Karp Harvard University August 29, 2011.
Computational Methods for Management and Economics Carla Gomes
Approximation Algorithms
Solving the Protein Threading Problem in Parallel Nocola Yanev, Rumen Andonov Indrajit Bhattacharya CMSC 838T Presentation.
2-Layer Crossing Minimisation Johan van Rooij. Overview Problem definitions NP-Hardness proof Heuristics & Performance Practical Computation One layer:
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
Job Scheduling Lecture 19: March 19. Job Scheduling: Unrelated Multiple Machines There are n jobs, each job has: a processing time p(i,j) (the time to.
Processing Rate Optimization by Sequential System Floorplanning Jia Wang 1, Ping-Chih Wu 2, and Hai Zhou 1 1 Electrical Engineering & Computer Science.
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
Column Generation Approach for Operating Rooms Planning Mehdi LAMIRI, Xiaolan XIE and ZHANG Shuguang Industrial Engineering and Computer Sciences Division.
Network Aware Resource Allocation in Distributed Clouds.
CPS 173 Kidney exchanges (largely follows Abraham, Blum, Sandholm 2007 paper) Vincent Conitzer
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Graph Colouring L09: Oct 10. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including the famous.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
V. Cacchiani, ATMOS 2007, Seville1 Solving a Real-World Train Unit Assignment Problem V. Cacchiani, A. Caprara, P. Toth University of Bologna (Italy) European.
Column Generation By Soumitra Pal Under the guidance of Prof. A. G. Ranade.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
Lecture 6 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
1 Approximation Algorithm Updated on 2012/12/25. 2 Approximation Algorithm Up to now, the best algorithm for solving an NP-complete problem requires exponential.
Minicourse on parameterized algorithms and complexity Part 4: Linear programming Dániel Marx (slides by Daniel Lokshtanov) Jagiellonian University in Kraków.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
EMIS 8373: Integer Programming Column Generation updated 12 April 2005.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
1 Approximation algorithms Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij TexPoint fonts used in EMF. Read the TexPoint manual.
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
Constraint Programming for the Diameter Constrained Minimum Spanning Tree Problem Thiago F. Noronha Celso C. Ribeiro Andréa C. Santos.
The geometric GMST problem with grid clustering Presented by 楊劭文, 游岳齊, 吳郁君, 林信仲, 萬高維 Department of Computer Science and Information Engineering, National.
Ion I. Mandoiu, Vijay V. Vazirani Georgia Tech Joseph L. Ganley Simplex Solutions A New Heuristic for Rectilinear Steiner Trees.
Approximation Algorithms based on linear programming.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
::Network Optimization:: Minimum Spanning Trees and Clustering Taufik Djatna, Dr.Eng. 1.
Institute of Chemical engineering- Bulgarian academy of sciences
Lap Chi Lau we will only use slides 4 to 19
Topics in Algorithms Lap Chi Lau.
1.3 Modeling with exponentially many constr.
Analysis of Algorithms
Finding Subgraphs with Maximum Total Density and Limited Overlap
Instructors: Fei Fang (This Lecture) and Dave Touretzky
Kidney exchanges (largely follows Abraham, Blum, Sandholm 2007 paper)
1.3 Modeling with exponentially many constr.
Alan Kuhnle*, Victoria G. Crawford, and My T. Thai
Chapter 1. Formulations.
Presentation transcript:

Clearing Algorithms for Barter Exchange Markets: Enabling Nationwide Kidney Exchanges Hyunggu Jung Computer Science University of Waterloo Oct 6, 2008

CS 8862

Kidney Transplants CS 8863 Dialysis ?? Kidney Transplants - The demand for kidneys far outstrips supply - Seen as the only ethical way to significantly reduce the 4,000 deaths per year attributed to kidney disease

Kidney Transplants CS 8864 Finding a living donor Compatible or incompatible Blood type and tissue type Difficult! Why?

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contribution 6.Future works 5CS 886

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contribution 6.Future works 6CS 886

Key Insight Barter-exchange market – Agents seek to swap their items with one another in order to improve their own utilities – Swaps consist of cycles of agents, with each agent receiving the item of the next agent in the cycle CS 8867

Key Insight CS 8868 Kidney exchange marketBarter exchange marketClearing problem

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contribution 6.Future works 9CS 886

Design 1.Encode a barter exchange market as a directed graph G = (V, E) 2.Construct one vertex for each agent 3.Add a weighted edge e from one agent Vi to another Vj, if Vi wants the item of Vj CS 88610

Terms and Definition CS TermsDefinition Weight W e of a edge e Utility to Vi of obtaining Vj ’s item Cycle cA possible swap, with each agent in the cycle obtaining the item of the next agent Weight W c of a cycle c The sum of its edge weights ExchangeA collection of disjoint cycles Weight of an exchange The sum of its cycle weights

Graph CS 88612

Components CS {v1, v2, …, v5}, in which all edges have weight 1 5 agents c1 =, c2 =, c3 =, c4 = 4 cycles M1 = {c4}, M2 = {c1, c3} 2 (inclusion) maximal exchanges

Clearing Problem To find a maximum- weight exchange consisting of cycles with length at most some small constant L CS Is everything OK if we solve a clearing problem? No, a kidney exchange market is a barter- exchange market having some constraints

Constraints All operations in a cycle have to be performed simultaneously – The upcoming national kidney exchange market will likely allow only cycles of length 2 and 3 If the cycle fails to exchange, fewer agents are affected CS 88615

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contribution 6.Future works 16CS 886

Solution Approaches CS However, an exact algorithm based on an integer-linear program (ILP) formulation, which we solve using specialized tree search Heuristic or approximation algorithm The clearing problem is NP-complete for L ≥ 3

Integer-Linear Program CS What is ILP? - If the unknown variables are all required to be integers, then the problem is called an integer-linear program (ILP) problem - ILPs are in many practical situations (those with bounded variables) NP-hard

Solution Approaches CS Solving the directed cycle cover problem with no cycle-length constraints A formation of the clearing problem as an ILP with one variable for each edge Solving the directed cycle cover problem when cycles have length 2 A formation of the clearing problem as an ILP with one variable for each cycle

Incremental Problem formulation Too large to construct on current hardware The key, incremental problem formulation Two paradigms for the task: CS Constraint generation Column generation Column generation

Constraint generation Construct a subgraph of edges with positive value In the first constraint generator, search for length-L paths with value sum more than L-1 In the second constraint generator, add on constraint for such cycles CS 88621

Column generation Start with a restricted LP containing only a small number of columns (variables, i.e., cycles) Repeatedly add columns until an optimal solution to this partially formulated LP is an optimal solution to the original LP CS 88622

Solution Approaches CS THEOREM 2. The LP relaxation of the cycle formulation weakly dominates the LP relaxation of the edge formulation The cycle formulation is tighter than the edge formulation For a graph with m edges, the edge formulation requires O(m³) constraints, while the cycle formulation requires only O(m²)

Solution Approaches The edge formulation approach cannot clear a kidney exchange with 100 vertices in the time the cycle formulation can clear on with 10,000 vertices Column generation based approaches are better than constraint generation based approaches Focus on the cycle formulation and the column generation based approaches CS 88624

Solution Approaches The edge formulation approach cannot clear a kidney exchange with 100 vertices in the time the cycle formulation can clear on with 10,000 vertices Column generation based approaches are better than constraint generation based approaches Focus on the cycle formulation and the column generation based approaches CS 88625

Solution Approaches CS However, an exact algorithm based on an integer-linear program (ILP) formulation, which we solve using specialized tree search Heuristic or approximation algorithm The clearing problem is NP-complete for L ≥ 3

Tree Search Performs a branch-and-price tree search to find an optimal integral solution Explores the search tree in depth-first order Primal heuristics and cycle brancher CS 88627

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contribution 6.Future works 28CS 886

Experimental Results In Linux (Red Hat 9.0), using a Dell PC with a 3GHz Intel Pentium 4 processor, and 1GB of RAM Randomly generated 10 markets, and attempted to clear then using each of the algorithms CS Average runtime with standard deviation bars

Experimental Results CS 88630

Experimental Results CPLEX – Fails to clear any markets with 1000 patients or more – Running time on markets smaller than this is significantly worse than the other algorithms Proposed algorithm – Manages to clear a market with 10,000 patients in about the same time it would otherwise have taken to clear a 6000 patient market CS 88631

CPLEX An optimization software package It is named for the simplex method and the C programming language, although today it contains interior point methods and interfaces in the C++, C Sharp, and Java languages Developed by Robert E. Bixby and sold via CPLEX Optimization Inc., which was acquired by ILOG in 1997 Solves integer programming problems, very large linear programming problems, quadratic programming problems, and has recently added support for problems with convex quadratic constraints CS 886: Multiagent Systems32

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contributions 6.Future works 33CS 886

Contributions: to Society Presented the first algorithm capable of clearing kidney-exchange markets on a nationwide scale Supported generalizations, as desired by real- world kidney exchanges Replaced CPLEX as the clearing algorithm of the Alliance for Paired Donation in Dec 2006 CS 88634

Contributions: to Field Developed the most scalable exact algorithms for barter exchanges to date Treated the kidney exchange as a batch problem with full information Incremental problem formulation: Constraint generation and column generation Outperforms CPLEX experimentally CS 88635

Outline 1.Key Insight 2.Problem 3.Solution approaches 4.Experimental Results 5.Contributions 6.Future works 36CS 886

Future works Donees and donors will be arriving into the system over time, and it may be best to not execute the myopically optimal exchange now Save part of the current market for later matches The graph provided as input is not complete correct It would be desirable to perform an optimization with the fact in mind CS Online aspect Limited- information aspec t

Reference ming ming 38CS 886

Thank you CS 88639