![Page 1: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/1.jpg)
IntroductionAlgorithm
The Assignment Problem
E.A Dinic, M.A Kronrod
Moscow State UniversitySoviet Math.Dokl. 1969
January 30, 2012
E.A Dinic and M.A Kronrod
![Page 2: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/2.jpg)
IntroductionAlgorithm
1 IntroductionMotivationProblem Definition
2 AlgorithmBasic IdeaDeficiency reductionFinding Maximum delta
E.A Dinic and M.A Kronrod
![Page 3: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/3.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Outline
1 IntroductionMotivationProblem Definition
2 AlgorithmBasic IdeaDeficiency reductionFinding Maximum delta
E.A Dinic and M.A Kronrod
![Page 4: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/4.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Find the best way toassign each constructorwith a job, paying theminimal cost.
E.A Dinic and M.A Kronrod
![Page 5: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/5.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Find the best way toassign each constructorwith a job, paying theminimal cost.
Valid solution2082$
E.A Dinic and M.A Kronrod
![Page 6: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/6.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Find the best way toassign each constructorwith a job, paying theminimal cost.
Valid solution2081$
E.A Dinic and M.A Kronrod
![Page 7: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/7.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Find the best way toassign each constructorwith a job, paying theminimal cost.
Optimal solution1912$
E.A Dinic and M.A Kronrod
![Page 8: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/8.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Outline
1 IntroductionMotivationProblem Definition
2 AlgorithmBasic IdeaDeficiency reductionFinding Maximum delta
E.A Dinic and M.A Kronrod
![Page 9: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/9.jpg)
IntroductionAlgorithm
MotivationProblem Definition
Problem Definition
Input:
Square matrix, A, of order n
Output:
A set of an n elements (cells), exactly one in each row and eachcolumn, such that the sum of these elements is minimal withrespect to all such sets.
E.A Dinic and M.A Kronrod
![Page 10: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/10.jpg)
IntroductionAlgorithm
MotivationProblem Definition
So what is a solution?
A permutaion β over the set {1, ..., n}such that for any permutation λ:∑n
i=1 ai ,β(i) ≤∑n
i=1 ai ,λ(i).
In which cases is it easy to find the solution?
Example
E.A Dinic and M.A Kronrod
![Page 11: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/11.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Outline
1 IntroductionMotivationProblem Definition
2 AlgorithmBasic IdeaDeficiency reductionFinding Maximum delta
E.A Dinic and M.A Kronrod
![Page 12: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/12.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Definition
Let some vector ∆ = (∆1, .....,∆n) be given.An element, ai j , of the matrix A is called ∆-minimal if
∀1≤k≤n ai j −∆j ≤ ai k −∆k
Example:
1 2 3 4
1 2 5 4 1
2 9 8 10 2
3 12 15 7 4
4 7 8 9 3
∆ 3 7 3 1
→
1 2 3 4
1 2 5 4 1
2 9 8 10 2
3 12 15 7 4
4 7 8 9 3
E.A Dinic and M.A Kronrod
![Page 13: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/13.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Definition
Let some vector ∆ = (∆1, .....,∆n) be given.An element, ai j , of the matrix A is called ∆-minimal if
∀1≤k≤n ai j −∆j ≤ ai k −∆k
Example:
1 2 3 4
1 2 5 4 1
2 9 8 10 2
3 12 15 7 4
4 7 8 9 3
∆ 3 7 3 1
→
1 2 3 4
1 2 5 4 1
2 9 8 10 2
3 12 15 7 4
4 7 8 9 3
E.A Dinic and M.A Kronrod
![Page 14: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/14.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Let some vector ∆ = (∆1, .....,∆n) be given.An element, ai j , of the matrix A is called ∆-minimal if
∀1≤k≤n ai j −∆j ≤ ai k −∆k
Lemma
For any ∆ let there be given a set of n ∆-minimal elements:a1j1 , a2j2 , ...., anjn , 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 sumamong all sets of n elements one from each column.
2 A set of n ∆-minimal elements one from each row and each columnis a minimal and valid solution.
E.A Dinic and M.A Kronrod
![Page 15: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/15.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Let some vector ∆ = (∆1, .....,∆n) be given.An element, ai j , of the matrix A is called ∆-minimal if
∀1≤k≤n ai j −∆j ≤ ai k −∆k
Lemma
For any ∆ let there be given a set of n ∆-minimal elements:a1j1 , a2j2 , ...., anjn , 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 sumamong all sets of n elements one from each column.
2 A set of n ∆-minimal elements one from each row and each columnis a minimal and valid solution.
E.A Dinic and M.A Kronrod
![Page 16: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/16.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
For some vector ∆ = (∆1, .....,∆n) .A set of n ∆-minimal elements has the minimal sumamong all sets of n elements one from each column.
Proof:
Let there be a set of n elements a1j1 , a2j2 , ...., anjnwe can write the sum of the set as:∑n
i=1 ai ji =∑n
k=1 ∆k +∑n
i=1(ai ji −∆ji )
Let there be a set of n ∆-minimal elements a∗1c1 , a∗
2c2 , ...., a∗ncn∑n
i=1 a∗i ci =∑n
k=1 ∆k +∑n
i=1(a∗i ci −∆ji )
⇓ ∀1≤k≤n ai j −∆j ≤ ai k −∆k∑nk=1 ∆k +
∑i=1n (a∗i ci −∆ci ) ≤
∑nk=1 ∆k +
∑i=1n (ai ji −∆ji )
⇓∑ni=1 a∗i ci ≤
∑ni=1 ai ji
E.A Dinic and M.A Kronrod
![Page 17: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/17.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
More definitions
Given a vector ∆, an element ai 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
1 2 5 4
2 9 8 10
3 12 15 7
∆ 1 1 5
deficiency=2
.
E.A Dinic and M.A Kronrod
![Page 18: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/18.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
More definitions
Given a vector ∆, an element ai 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
1 2 5 4
2 9 8 10
3 12 15 7
∆ 1 1 5
deficiency=2.
E.A Dinic and M.A Kronrod
![Page 19: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/19.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding 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
![Page 20: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/20.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Integer linear programming problem
Given the n ∗ n matrix C we will define an n ∗ n matrix X ofinteger variables. The following constraints define the equivalentlinear programming problem.
linear constraints:
1 All the variables of X are 0 or 1:∀i , j xi ,j ∈ {0, 1}.
2 In each row and column the sum of variables is 1:∀i
∑nj=0 xi ,j =
∑nj=0 xj ,i = 1.
Goal function:
minimize∑n
i=0
∑ni=0 xi ,jci ,j .
E.A Dinic and M.A Kronrod
![Page 21: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/21.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Primal-dual method
In the primal-dual method we generate a dual linear programingproblem such that for every variable in the original problem wehave a constraint in the dual problem, and for every constraint inthe original we have a variable in the dual.
E.A Dinic and M.A Kronrod
![Page 22: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/22.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Primal-dual method
We iterate on the pairs: primal and dual solutions. At any time wehave 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 processwe have a feasible, and thus optimal solution to the originalproblem.
E.A Dinic and M.A Kronrod
![Page 23: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/23.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Intuition continues
We would want a function f such that for a matrix A with asoultion β, 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 ofthe first column of A.
E.A Dinic and M.A Kronrod
![Page 24: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/24.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
The function f
Input:
∆ = (∆1, .....,∆n), A an n ∗ n matrix
Output: f∆(A) = B = (bi ,j)
for every indice (i , j) ∈ {1, ..., n}2 bi ,j = ai ,j −∆j .
E.A Dinic and M.A Kronrod
![Page 25: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/25.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding 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
![Page 26: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/26.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Deficiency reduction
We will solve this in an iterative maner, such that in each itrationwe 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 basicsand the deficiancy takes O(n2).
E.A Dinic and M.A Kronrod
![Page 27: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/27.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Outline
1 IntroductionMotivationProblem Definition
2 AlgorithmBasic IdeaDeficiency reductionFinding Maximum delta
E.A Dinic and M.A Kronrod
![Page 28: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/28.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
We begin with vector ∆ and a set of basics a1,j(1), ..., an,j(n)
E.A Dinic and M.A Kronrod
![Page 29: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/29.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
Let s1 be the index of a free column.
E.A Dinic and M.A Kronrod
![Page 30: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/30.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
We will increase ∆s1 with maximal δ1 such that all basics remain∆-minimal elements (lets assume we have a function which findssuch a δ).
E.A Dinic and M.A Kronrod
![Page 31: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/31.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
We obtain that for some row index i1 ai1,s1 −∆s1 = ai1,j(i1)−∆j(i1).ai1,s1 is called an alternative basic.
E.A Dinic and M.A Kronrod
![Page 32: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/32.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
We define s2 = j(i1).
E.A Dinic and M.A Kronrod
![Page 33: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/33.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
We now increase ∆s1 , ∆s2 with maximal δ2 such that all basicsremain ∆-minimal.
E.A Dinic and M.A Kronrod
![Page 34: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/34.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
Again for same row index i2 6= i1 ai2,sk −∆sk = ai2,j(i2) −∆j(i2)
were k ∈ {1, 2}. ai2,sk is an alternative basic.
E.A Dinic and M.A Kronrod
![Page 35: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/35.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Finding alternative Basics
We define s3 = j(i2). We will continue this process until we find analternative basic in a column with 2 or more basics.
E.A Dinic and M.A Kronrod
![Page 36: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/36.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Pseudo Code
Input:
(ax,y ) nxn matrix
∆ n long vector
j(i) function such that for each row ai,j(i) is a basic
S = {chooseEmptyColumn(j)}R = {}do:δ = findMaxPreserving∆Minimalty(R, S , (ax ,y ),∆, j(i))for s ∈ S do: ∆s = ∆s + δlet i ∈ {1, ..., n} \ R such that ∃s ∈ S ai ,j(i) −∆j(i) = ai ,s −∆s .R = R ∪ {i}S = S ∪ {j(i)}
while every column in S has 1 or 0 basics.
E.A Dinic and M.A Kronrod
![Page 37: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/37.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 1 - Complexity Analysis
In each step of phase 1:
δ is found - O(n2)
∆ is updated - O(n)
A new alternative basic is found (during the search of δ)- O(1)
In each round the size of S increses by 1, and S is bounded by n⇓
There are at most n − 1 steps in phase 1.
Total complexity: O(n)x [O(n2) + O(n) + O(1)] =
O(n3)
E.A Dinic and M.A Kronrod
![Page 38: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/38.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 2 - Change of basics
Now as we mark a column (s3) with 2 or more basics.This is the end of phase 1.We start changing our basics.
E.A Dinic and M.A Kronrod
![Page 39: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/39.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 2 - Change of basics
We reduce the number of basics for our last marked column byone.
E.A Dinic and M.A Kronrod
![Page 40: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/40.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 2 - Change of basics
In total we reduce the deficiency by 1.
E.A Dinic and M.A Kronrod
![Page 41: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/41.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Phase 2 - Complexity Analysis
The complexity of this step is O(n) as the number of basics.
E.A Dinic and M.A Kronrod
![Page 42: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/42.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Example continues
We start phase 1 again and choose a column s1 with no basics.S = {s1}. ∆ remains as it was built at the previous iteration⇒ all basics remain ∆-minimal.
E.A Dinic and M.A Kronrod
![Page 43: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/43.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Example continues
We find a maximal δ to add to ∆s were s ∈ S , such that itpreserves ∆-minimality.
E.A Dinic and M.A Kronrod
![Page 44: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/44.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Example continues
For some row index i1 ai1,s1 −∆s1 = ai1,j(i1) −∆j(i1).ai1,s1 is an alternative basic.
E.A Dinic and M.A Kronrod
![Page 45: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/45.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Example continues
We end phase 1 as we found a column j(i1) = s2 ∈ S with morethen one basic.
E.A Dinic and M.A Kronrod
![Page 46: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/46.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Example continues
Changing our basics leads us to a set of basics with deficiencym = 0. Therefor it is a optimal solution. B = (ai ,j −∆j).
E.A Dinic and M.A Kronrod
![Page 47: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/47.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Outline
1 IntroductionMotivationProblem Definition
2 AlgorithmBasic IdeaDeficiency reductionFinding Maximum delta
E.A Dinic and M.A Kronrod
![Page 48: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/48.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Naive computation
δ = mini∈R,s∈S [(ai ,s −∆s)− (ai ,j(i) −∆j(i))]
Where:
R -set of row indices which do not contain alternative basics
S -set of potential alternative basics column indices
(ax ,y ) -nxn matrix
∆ -n long vector
j(i) -function such that for each row ai ,j(i) is the basic in row i
Computing δ in a strightforward manner takes O(n2)
E.A Dinic and M.A Kronrod
![Page 49: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/49.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Total Complexity Analysis
The maximum deficiency is n − 1.
In each itration we preform phase 1 + phase 2: O(n3) + O(n)
Total complexity: O(n)x [O(n3) + O(n)] = O(n4)
E.A Dinic and M.A Kronrod
![Page 50: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/50.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]
For each k, let bk= (b1k , ..., bnk) be a column of the values:bi k = [(aik −∆k)− (aiji −∆ji )]Let B be the nxn matrix: (b∗1, ..., b
∗n),
where b∗k = Sort(bk)
Example
1 2 3
1 2 5 4
2 9 8 10
3 12 15 7
∆ 0 0 0
b1
0
1
5
b2
3
0
8
b3
2
2
0
Bb∗1 b∗2 b∗30 0 0
1 3 2
5 8 2
n × O(n log(n))↓
O(n2 log(n))
E.A Dinic and M.A Kronrod
![Page 51: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/51.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]
For each k, let bk= (b1k , ..., bnk) be a column of the values:bi k = [(aik −∆k)− (aiji −∆ji )]Let B be the nxn matrix: (b∗1, ..., b
∗n),
where b∗k = Sort(bk)
Example
1 2 3
1 2 5 4
2 9 8 10
3 12 15 7
∆ 0 0 0
b1
0
1
5
b2
3
0
8
b3
2
2
0
Bb∗1 b∗2 b∗30 0 0
1 3 2
5 8 2
n × O(n log(n))↓
O(n2 log(n))
E.A Dinic and M.A Kronrod
![Page 52: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/52.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]
For each k, let bk= (b1k , ..., bnk) be a column of the values:bi k = [(aik −∆k)− (aiji −∆ji )]Let B be the nxn matrix: (b∗1, ..., b
∗n),
where b∗k = Sort(bk)
Example
1 2 3
1 2 5 4
2 9 8 10
3 12 15 7
∆ 0 0 0
b1
0
1
5
b2
3
0
8
b3
2
2
0
Bb∗1 b∗2 b∗30 0 0
1 3 2
5 8 2
n × O(n log(n))↓
O(n2 log(n))
E.A Dinic and M.A Kronrod
![Page 53: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/53.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]
For each k, let bk= (b1k , ..., bnk) be a column of the values:bi k = [(aik −∆k)− (aiji −∆ji )]
Let B be the nxn matrix: (b∗1, ..., b∗n),
where b∗k = Sort(bk)
What is the compexity of the construction of B?
n × O(n log(n))↓
O(n2 log(n))
E.A Dinic and M.A Kronrod
![Page 54: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/54.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]
For each k, let bk= (b1k , ..., bnk) be a column of the values:bi k = [(aik −∆k)− (aiji −∆ji )]
Let B be the nxn matrix: (b∗1, ..., b∗n),
where b∗k = Sort(bk)
What is the compexity of the construction of B?
n × O(n log(n))↓
O(n2 log(n))
E.A Dinic and M.A Kronrod
![Page 55: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/55.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
As preprocessing phase of an iteration build matrix BO(n2 log n).
In each succeeding step of phase 1:
clear the matrix from items of rows which are not in R.n × O(1) = O(n)
find mink∈Sbk O(n)
What is the total complexity?
O(n3 log n)
E.A Dinic and M.A Kronrod
![Page 56: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/56.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
As preprocessing phase of an iteration build matrix BO(n2 log n).
In each succeeding step of phase 1:
clear the matrix from items of rows which are not in R.n × O(1) = O(n)
find mink∈Sbk O(n)
What is the total complexity?
O(n3 log n)
E.A Dinic and M.A Kronrod
![Page 57: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/57.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
As preprocessing phase of an iteration build matrix BO(n2 log n).
In each succeeding step of phase 1:
clear the matrix from items of rows which are not in R.n × O(1) = O(n)
find mink∈Sbk O(n)
What is the total complexity?
n × [O(n2 log n)︸ ︷︷ ︸phase0
+ n × (O(n) + O(n) + O(n))︸ ︷︷ ︸phase1
+ n︸︷︷︸phase2
]
︸ ︷︷ ︸one iteration
O(n3 log n)
E.A Dinic and M.A Kronrod
![Page 58: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/58.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
First improvement
As preprocessing phase of an iteration build matrix BO(n2 log n).
In each succeeding step of phase 1:
clear the matrix from items of rows which are not in R.n × O(1) = O(n)
find mink∈Sbk O(n)
What is the total complexity?
O(n3 log n)
E.A Dinic and M.A Kronrod
![Page 59: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/59.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]
↓↓
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 60: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/60.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
↓
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 61: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/61.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
δ = mini∈R [ mins∈S [(ais −∆s)− (aiji −∆ji )] ]
↓
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 62: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/62.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
δ = mini∈R [ mins∈S [(ais −∆s)]− (aiji −∆ji )︸ ︷︷ ︸const. for a row
]
↓
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 63: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/63.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
δ = mini∈R [ mins∈S [(ais −∆s)]− (aiji −∆ji )︸ ︷︷ ︸const. for a row
]
↓
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 64: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/64.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
δ = mini∈R [ mins∈S [(ais −∆s)]− (aiji −∆ji )︸ ︷︷ ︸const. for a row
]
↓δ = mini∈R [ mins∈S(ais −∆s) −(aiji −∆ji )]
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 65: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/65.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
δ = mini∈R [ mins∈S [(ais −∆s)]− (aiji −∆ji )︸ ︷︷ ︸const. for a row
]
↓δ = mini∈R [ mins∈S(ais −∆s)︸ ︷︷ ︸
qi
−(aiji −∆ji )]
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 66: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/66.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second Improvement
δ = mini∈R,s∈S [(ais −∆s)− (aiji −∆ji )]↓
δ = mini∈R [ mins∈S [(ais −∆s)]− (aiji −∆ji )︸ ︷︷ ︸const. for a row
]
↓δ = mini∈R [ mins∈S(ais −∆s)︸ ︷︷ ︸
qi
−(aiji −∆ji )]
At the begining of an iteration compute the column vector qi
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]
E.A Dinic and M.A Kronrod
![Page 67: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/67.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second improvement
At the begining of an iteration compute the column vector qi
O(n)
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]O(n)
What is the total complexity?
O(n3)
E.A Dinic and M.A Kronrod
![Page 68: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/68.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second improvement
At the begining of an iteration compute the column vector qi
O(n)
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]O(n)
What is the total complexity?
n × [O(n)︸ ︷︷ ︸phase0
+ n × O(n)︸ ︷︷ ︸phase1
+ n︸︷︷︸phase2
]
︸ ︷︷ ︸one iteration
O(n3)
E.A Dinic and M.A Kronrod
![Page 69: The Assignment Problem - BGUdinitz/Course/SS-12/... · Introduction Algorithm The Assignment Problem E.A Dinic, M.A Kronrod Moscow State University Soviet Math.Dokl. 1969 January](https://reader030.vdocuments.us/reader030/viewer/2022041005/5ea96b9da4e9580a505a2fda/html5/thumbnails/69.jpg)
IntroductionAlgorithm
Basic IdeaDeficiency reductionFinding Maximum delta
Second improvement
At the begining of an iteration compute the column vector qi
O(n)
In each succeeding step of phase 1:
update the vector q:∀i qi ← min[aism −∆sm ; qi − δ]O(n)
What is the total complexity?
O(n3)
E.A Dinic and M.A Kronrod