the assignment problem
play

The Assignment Problem E.A Dinic, M.A Kronrod Moscow State - PowerPoint PPT Presentation

Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January 30, 2012 E.A Dinic and M.A Kronrod Introduction Algorithm 1 Introduction Motivation Problem Definition 2 Algorithm


  1. Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January 30, 2012 E.A Dinic and M.A Kronrod

  2. Introduction Algorithm 1 Introduction Motivation Problem Definition 2 Algorithm Basic Idea Deficiency reduction Finding Maximum delta E.A Dinic and M.A Kronrod

  3. Introduction Motivation Algorithm Problem Definition Outline 1 Introduction Motivation Problem Definition 2 Algorithm Basic Idea Deficiency reduction Finding Maximum delta E.A Dinic and M.A Kronrod

  4. Introduction Motivation Algorithm Problem Definition Find the best way to assign each constructor with a job, paying the minimal cost. E.A Dinic and M.A Kronrod

  5. Introduction Motivation Algorithm Problem Definition Find the best way to assign each constructor with a job, paying the minimal cost. Valid solution 2082$ E.A Dinic and M.A Kronrod

  6. Introduction Motivation Algorithm Problem Definition Find the best way to assign each constructor with a job, paying the minimal cost. Valid solution 2081$ E.A Dinic and M.A Kronrod

  7. Introduction Motivation Algorithm Problem Definition Find the best way to assign each constructor with a job, paying the minimal cost. Optimal solution 1912$ E.A Dinic and M.A Kronrod

  8. Introduction Motivation Algorithm Problem Definition Outline 1 Introduction Motivation Problem Definition 2 Algorithm Basic Idea Deficiency reduction Finding Maximum delta E.A Dinic and M.A Kronrod

  9. Introduction Motivation Algorithm Problem Definition Problem Definition Input: Square matrix, A, of order n Output: A set of an n elements (cells), exactly one in each row and each column, such that the sum of these elements is minimal with respect to all such sets. E.A Dinic and M.A Kronrod

  10. Introduction Motivation Algorithm Problem Definition So what is a solution? A permutaion β over the set { 1 , ..., n } such that for any permutation λ : � n i =1 a i ,β ( i ) ≤ � n i =1 a i ,λ ( i ) . In which cases is it easy to find the solution? Example E.A Dinic and M.A Kronrod

  11. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Outline 1 Introduction Motivation Problem Definition 2 Algorithm Basic Idea Deficiency reduction Finding Maximum delta E.A Dinic and M.A Kronrod

  12. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Definition Let some vector ∆ = (∆ 1 , ....., ∆ n ) be given. An element, a i j , of the matrix A is called ∆ - minimal if ∀ 1 ≤ k ≤ n a i j − ∆ j ≤ a i k − ∆ k Example: 1 2 3 4 2 5 4 1 1 9 8 10 2 2 12 15 7 4 3 7 8 9 3 4 3 7 3 1 ∆ E.A Dinic and M.A Kronrod

  13. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Definition Let some vector ∆ = (∆ 1 , ....., ∆ n ) be given. An element, a i j , of the matrix A is called ∆ - minimal if ∀ 1 ≤ k ≤ n a i j − ∆ j ≤ a i k − ∆ k Example: 1 2 3 4 1 2 3 4 2 5 4 1 1 1 2 5 4 1 9 8 10 2 2 2 9 8 10 2 → 12 15 7 4 3 3 12 15 7 4 7 8 9 3 4 4 7 8 9 3 3 7 3 1 ∆ E.A Dinic and M.A Kronrod

  14. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Let some vector ∆ = (∆ 1 , ....., ∆ n ) be given. An element, a i j , of the matrix A is called ∆ - minimal if ∀ 1 ≤ k ≤ n a i j − ∆ j ≤ a i k − ∆ k Lemma For any ∆ let there be given a set of n ∆- minimal elements: a 1 j 1 , a 2 j 2 , ...., a nj n , one from each row and each column. Then this set is an optimal solution for the Assignment Problem. E.A Dinic and M.A Kronrod

  15. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Let some vector ∆ = (∆ 1 , ....., ∆ n ) be given. An element, a i j , of the matrix A is called ∆ - minimal if ∀ 1 ≤ k ≤ n a i j − ∆ j ≤ a i k − ∆ k Lemma For any ∆ let there be given a set of n ∆- minimal elements: a 1 j 1 , a 2 j 2 , ...., a nj n , one from each row and each column. Then this set is an optimal solution for the Assignment Problem. Proof 1 For some vector ∆ = (∆ 1 , ....., ∆ n ) . A set of n ∆- minimal elements has the minimal sum among all sets of n elements one from each column. 2 A set of n ∆- minimal elements one from each row and each column is a minimal and valid solution. E.A Dinic and M.A Kronrod

  16. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta For some vector ∆ = (∆ 1 , ....., ∆ n ) . A set of n ∆- minimal elements has the minimal sum among all sets of n elements one from each column. Proof: Let there be a set of n elements a 1 j 1 , a 2 j 2 , ...., a nj n we can write the sum of the set as: � n i =1 a i j i = � n k =1 ∆ k + � n i =1 ( a i j i − ∆ j i ) Let there be a set of n ∆- minimal elements a ∗ 1 c 1 , a ∗ 2 c 2 , ...., a ∗ nc n � n i =1 a ∗ i c i = � n k =1 ∆ k + � n i =1 ( a ∗ i c i − ∆ j i ) ⇓ ∀ 1 ≤ k ≤ n a i j − ∆ j ≤ a i k − ∆ k � n k =1 ∆ k + � i =1 ( a ∗ i c i − ∆ c i ) ≤ � n k =1 ∆ k + � i =1 ( a i j i − ∆ j i ) n n ⇓ � n i =1 a ∗ i c i ≤ � n i =1 a i j i E.A Dinic and M.A Kronrod

  17. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta More definitions Given a vector ∆, an element a i j is a basic if it is a ∆- minimal element of the row i. A set of basics is a set of n basics, one from each row. Deficiency of a set of basics is the number of free columns, i.e. columns without a basic. 1 2 3 2 5 4 1 9 8 10 2 12 15 7 3 1 1 5 ∆ . E.A Dinic and M.A Kronrod

  18. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta More definitions Given a vector ∆, an element a i j is a basic if it is a ∆- minimal element of the row i. A set of basics is a set of n basics, one from each row. Deficiency of a set of basics is the number of free columns, i.e. columns without a basic. 1 2 3 2 5 4 1 9 8 10 2 12 15 7 3 1 1 5 ∆ deficiency=2. E.A Dinic and M.A Kronrod

  19. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Redfenition of problem Input: Square matrix, A, of order n Output: vector, ∆, of size n a set of an n basics, with deficiancy 0. E.A Dinic and M.A Kronrod

  20. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Integer linear programming problem Given the n ∗ n matrix C we will define an n ∗ n matrix X of integer variables. The following constraints define the equivalent linear programming problem. linear constraints: 1 All the variables of X are 0 or 1: ∀ i , j x i , j ∈ { 0 , 1 } . 2 In each row and column the sum of variables is 1: ∀ i � n j =0 x i , j = � n j =0 x j , i = 1. Goal function: minimize � n � n i =0 x i , j c i , j . i =0 E.A Dinic and M.A Kronrod

  21. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Primal-dual method In the primal-dual method we generate a dual linear programing problem such that for every variable in the original problem we have a constraint in the dual problem, and for every constraint in the original we have a variable in the dual. E.A Dinic and M.A Kronrod

  22. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Primal-dual method We iterate on the pairs: primal and dual solutions. At any time we have a NON-FEASIBLE primal solution S to the primal problem, while the dual solution PROVES that S is OPTIMAL among the ”similarly non-feasible” primal solutions. In the end of the process we have a feasible, and thus optimal solution to the original problem. E.A Dinic and M.A Kronrod

  23. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Intuition continues We would want a function f such that for a matrix A with a soultion β , f ( A ) is a matrix for which β is a row minimal soultion. Example: f-function Notice: f ( A ) is obtaind by substracting 1 from all the elemnts of the first column of A . E.A Dinic and M.A Kronrod

  24. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta The function f Input: ∆ = (∆ 1 , ....., ∆ n ), A an n ∗ n matrix Output: f ∆ ( A ) = B = ( b i , j ) for every indice ( i , j ) ∈ { 1 , ..., n } 2 b i , j = a i , j − ∆ j . E.A Dinic and M.A Kronrod

  25. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Redfenition of problem Input: Square matrix, A, of order n Output: vector, ∆, of size n a set of an n basics, with deficiancy 0. E.A Dinic and M.A Kronrod

  26. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Deficiency reduction We will solve this in an iterative maner, such that in each itration we will reduce the deficiency by 1. Input: Square matrix, A, of order n vector, ∆, of size n a set of n basics, with deficiancy m. Output: vector, ∆ ′ , of size n a set of n basics, with deficiancy m-1. In the first itration we start with ∆ = (0 , ..., 0), finding the basics and the deficiancy takes O ( n 2 ). E.A Dinic and M.A Kronrod

  27. Basic Idea Introduction Deficiency reduction Algorithm Finding Maximum delta Outline 1 Introduction Motivation Problem Definition 2 Algorithm Basic Idea Deficiency reduction Finding Maximum delta E.A Dinic and M.A Kronrod

Recommend


More recommend