Perspective-2-Ellipsoid: Bridging the Gap Between Object ...
Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under...
Transcript of Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under...
![Page 1: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/1.jpg)
Sorting under partial information(without the ellipsoid algorithm)
Jean CardinalULB
Samuel FioriniULB
Gwenael JoretULB
Raphael JungersUCL/MIT
Ian MunroWaterloo
![Page 2: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/2.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
![Page 3: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/3.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
![Page 4: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/4.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
![Page 5: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/5.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
OR ?
![Page 6: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/6.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
?OR
![Page 7: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/7.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
![Page 8: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/8.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
OR ?
![Page 9: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/9.jpg)
Sorting by comparisons under partial informationInput:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
OR ?
![Page 10: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/10.jpg)
Sorting by comparisons under partial information
Input:
I set V = {v1, . . . , vn}, with unknown linear order 6
I poset P = (V , 6P) compatible with (V , 6)
Goal: Discover 6 by making queries “is vi 6 vj?”
Objective function: #queries
![Page 11: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/11.jpg)
Lower bound on #queries
Every algorithm can be forced to a #queries that is at least
lg(#linear extensions of P) = lg e(P)
lg n! lg e(P) 0
uncertainty
![Page 12: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/12.jpg)
Results
• Known results
#queries complexity
Fredman 1976 lg e(P) + 2n super-polynomialKahn & Saks 1984 O(lg e(P)) super-polynomialKahn & Kim 1995 O(lg e(P)) polynomial (ellipsoid alg.)
• Our contribution: two ellipsoid-free algorithms
#queries complexity
Algorithm 1 (1 + ε)lg e(P) + Oε(n) ∀ε > 0 O(n2.5)Algorithm 2 O(lg e(P)) O(n2.5)
+ preprocessing in O(n2.5), sort linear in #queries and n
+ better understanding of entropy of P
![Page 13: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/13.jpg)
Results
• Known results
#queries complexity
Fredman 1976 lg e(P) + 2n super-polynomialKahn & Saks 1984 O(lg e(P)) super-polynomialKahn & Kim 1995 O(lg e(P)) polynomial (ellipsoid alg.)
• Our contribution: two ellipsoid-free algorithms
#queries complexity
Algorithm 1 (1 + ε)lg e(P) + Oε(n) ∀ε > 0 O(n2.5)Algorithm 2 O(lg e(P)) O(n2.5)
+ preprocessing in O(n2.5), sort linear in #queries and n
+ better understanding of entropy of P
![Page 14: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/14.jpg)
Computing the lower bound
Computing e(P) is #P-complete Brightwell & Winkler 1991
As Kahn & Kim 1995, use the entropy H(P)
Why?
I lg e(P) = Θ(nH(P)) Kahn & Kim 1995
I H(P) can be “computed” in poly-time using the ellipsoidalgorithm (or an interior point algorithm)
![Page 15: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/15.jpg)
Computing Approximating the lower bound
Computing e(P) is #P-complete Brightwell & Winkler 1991
As Kahn & Kim 1995, use the entropy H(P)
Why?
I lg e(P) = Θ(nH(P)) Kahn & Kim 1995
I H(P) can be “computed” in poly-time using the ellipsoidalgorithm (or an interior point algorithm)
![Page 16: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/16.jpg)
Computing Approximating the lower bound
Computing e(P) is #P-complete Brightwell & Winkler 1991
As Kahn & Kim 1995, use the entropy H(P)
Why?
I lg e(P) = Θ(nH(P)) Kahn & Kim 1995
I H(P) can be “computed” in poly-time using the ellipsoidalgorithm (or an interior point algorithm)
![Page 17: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/17.jpg)
Computing Approximating the lower bound
Computing e(P) is #P-complete Brightwell & Winkler 1991
As Kahn & Kim 1995, use the entropy H(P)
Why?
I lg e(P) = Θ(nH(P)) Kahn & Kim 1995
I H(P) can be “computed” in poly-time using the ellipsoidalgorithm (or an interior point algorithm)
![Page 18: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/18.jpg)
Entropy“New” definition – original definition due to Korner 1973, applies to any graph
{(yv− , yv+)}v∈V is consistent with P if
I ∀v ∈ V : (yv− , yv+) open interval ⊆ (0, 1)
I v 6P w =⇒ yv+ ≤ yw−
P 0 1 I
H(P) := min{− 1
n
∑v∈V
lg xv | ∃{(yv− , yv+)}v∈V consistent with P
s.t. xv = yv+ − yv− ∀v ∈ V}
H(P) = 1nדinformation” in P
![Page 19: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/19.jpg)
Entropy“New” definition – original definition due to Korner 1973, applies to any graph
{(yv− , yv+)}v∈V is consistent with P if
I ∀v ∈ V : (yv− , yv+) open interval ⊆ (0, 1)
I v 6P w =⇒ yv+ ≤ yw−
P 0 1 I
H(P) := min{− 1
n
∑v∈V
lg xv | ∃{(yv− , yv+)}v∈V consistent with P
s.t. xv = yv+ − yv− ∀v ∈ V}
H(P) := lg n − H(P) = 1nדuncertainty” in P
![Page 20: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/20.jpg)
Bounds I“Additive” bound via the order polytope
O(P) := {y ∈ [0, 1]V | v 6P w =⇒ yv ≤ yw}
Easy fact 1. volume O(P) =e(P)
n!
Easy fact 2. {(yv− , yv+)}v∈V consistent with P
=⇒∏v∈V
[yv− , yv+ ] ⊆ O(P)
=⇒∏v∈V
xv ≤ volume O(P)
Corollary.
nH(P) ≤ lg e(P) + n lg e K&K 1995
![Page 21: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/21.jpg)
Bounds II“multiplicative” bound
lg e(P) ≤ nH(P) ≤ c · lg e(P) K&K 1995
where c = 1 + 7 lg e ' 11.1
Rmk: Lower bound tight, but not upper bound
I K&K conjectured
nH(P) ≤ (1 + lg e) · lg e(P) (1 + lg e ' 2.44)
I We provenH(P) ≤ 2 · lg e(P)
(tight)
![Page 22: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/22.jpg)
Bounds II“multiplicative” bound
lg e(P) ≤ nH(P) ≤ c · lg e(P) K&K 1995
where c = 1 + 7 lg e ' 11.1
Rmk: Lower bound tight, but not upper bound
I K&K conjectured
nH(P) ≤ (1 + lg e) · lg e(P) (1 + lg e ' 2.44)
I We provenH(P) ≤ 2 · lg e(P)
(tight)
![Page 23: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/23.jpg)
Bounds II“multiplicative” bound
lg e(P) ≤ nH(P) ≤ c · lg e(P) K&K 1995
where c = 1 + 7 lg e ' 11.1
Rmk: Lower bound tight, but not upper bound
I K&K conjectured
nH(P) ≤ (1 + lg e) · lg e(P) (1 + lg e ' 2.44)
I We provenH(P) ≤ 2 · lg e(P)
(tight)
![Page 24: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/24.jpg)
K&K’s algorithm
Key lemma:
∃ incomparable pair a, b s.t.
max{
nH(P(a < b)), nH(P(a > b))}≤ nH(P)− c ,
where c ' 0.2
Algorithm:
1. Repeat:
1.1 Compute H(P) and optimal solution x∗
1.2 Find good incomparable pair a, b using x∗
1.3 Compare a and b1.4 Update P
#steps = O(nH(P)) = O(lg e(P))
![Page 25: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/25.jpg)
GreedyGreedy chain decomposition of P → U := C1 ∪ · · · ∪ Ck
C1 C2 C3 C4 C5 C6 C7
H(U) =k∑
i=1
−|Ci |n
lg|Ci |n
From perfectness of incomparability graph of P:
H(U) ≤ (1 + ε)H(P) + Oε(1) ∀ε > 0 CFJJM 2009
Extends to every perfect graph!
![Page 26: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/26.jpg)
GreedyGreedy chain decomposition of P → U := C1 ∪ · · · ∪ Ck
C1 C2 C3 C4 C5 C6 C7
H(U) =k∑
i=1
−|Ci |n
lg|Ci |n
From perfectness of incomparability graph of P:
H(U) ≤ (1 + ε)H(P) + Oε(1) ∀ε > 0 CFJJM 2009
Extends to every perfect graph!
![Page 27: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/27.jpg)
Algorithms
#queries complexity
Algorithm 1 (1 + ε)lg e(P) + Oε(n) ∀ε > 0 O(n2.5)Algorithm 2 O(lg e(P)) O(n2.5)
Algorithm 1: greedy + merge sort
Algorithm 2: greedy + “cautious” merge sort
![Page 28: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/28.jpg)
Algorithm 1
1. Compute greedy chain decomposition of P
2. Iteratively merge two smallest chains
C1 C2 C3 C4 C5 C6 C7
![Page 29: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/29.jpg)
Algorithm 1
1. Compute greedy chain decomposition of P
2. Iteratively merge two smallest chains
![Page 30: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/30.jpg)
Algorithm 1
1. Compute greedy chain decomposition of P
2. Iteratively merge two smallest chains
![Page 31: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/31.jpg)
Algorithm 1
1. Compute greedy chain decomposition of P
2. Iteratively merge two smallest chains
![Page 32: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/32.jpg)
Algorithm 1
1. Compute greedy chain decomposition of P
2. Iteratively merge two smallest chains
ETC.
![Page 33: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/33.jpg)
Algorithm 1
Huffman trees: average root-to-leaf distance in tree at most(k∑
i=1
−|Ci |n
lg|Ci |n
)+ 1 = H(U) + 1
![Page 34: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/34.jpg)
Algorithm 1
Huffman trees: average root-to-leaf distance in tree at most(k∑
i=1
−|Ci |n
lg|Ci |n
)+ 1 = H(U) + 1
⇒ . . . ⇒ at most (H(U) + 1)n comparisons
![Page 35: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/35.jpg)
Algorithm 1
Huffman trees: average root-to-leaf distance in tree at most(k∑
i=1
−|Ci |n
lg|Ci |n
)+ 1 = H(U) + 1
⇒ . . . ⇒ at most (H(U) + 1)n comparisons
(H(U) + 1)n ≤ (1 + ε)nH(P) + Oε(n) greedy
≤ (1 + ε)(lg e(P) + n lg e
)+ Oε(n) K&K’s additive bd
= (1 + ε)lg e(P) + Oε(n)
![Page 36: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/36.jpg)
Algorithm 2
Pick a maximum chain A
AApply Algorithm 1 on P −A
BA
Merging UnderPartial Information(MUPI)
![Page 37: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/37.jpg)
Algorithm 2
Pick a maximum chain A
AApply Algorithm 1 on P −A
BA
Merging UnderPartial Information(MUPI)
#comparisons in step 2 at most
![Page 38: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/38.jpg)
Algorithm 2
Pick a maximum chain A
AApply Algorithm 1 on P −A
BA
Merging UnderPartial Information(MUPI)
#comparisons in step 2 at most
(1 + ε) lg e(P − A) + Oε(|P − A|)
![Page 39: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/39.jpg)
Algorithm 2
Pick a maximum chain A
AApply Algorithm 1 on P −A
BA
Merging UnderPartial Information(MUPI)
#comparisons in step 2 at most
(1 + ε) lg e(P − A) + Oε(|P − A|)
[ Interlude ] An easy lemma (take all intervals of length xv = 1|A|):
H(P) ≥ − lg|A|n
⇒ |A| ≥ 2−H(P)n
⇒ |P −A| ≤ n(
1− 2−H(P))≤ ln 2 · nH(P) (using 1− 2−x ≤ ln 2 · x)
![Page 40: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/40.jpg)
Algorithm 2
Pick a maximum chain A
AApply Algorithm 1 on P −A
BA
Merging UnderPartial Information(MUPI)
#comparisons in step 2 at most
(1 + ε) lg e(P − A) + Oε(|P − A|)≤ (1 + ε) lg e(P − A) + Oε
(ln 2 · nH(P)
)≤ (1 + ε)lg e(P) + Oε (lg e(P)) K&K’s multiplicative bd
= Oε (lg e(P))
![Page 41: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/41.jpg)
Algorithm 2
Pick a maximum chain A
AApply Algorithm 1 on P −A
BA
Merging UnderPartial Information(MUPI)
#comparisons in step 2 at most
(1 + ε) lg e(P − A) + Oε(|P − A|)≤ (1 + ε) lg e(P − A) + Oε
(ln 2 · nH(P)
)≤ (1 + ε)lg e(P) + Oε (lg e(P)) K&K’s multiplicative bd
= Oε (lg e(P))
What about partial information P ′ in step 3?
P ′ ⊇ P ⇒ lg e(P ′) ≤ lg e(P)
⇒ enough to solve MUPI = Merging under Partial Information!
![Page 42: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/42.jpg)
![Page 43: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/43.jpg)
Merging under partial information
Overview for MUPI:
1. Compute entropy exactly (easier) Korner and Marton 1988
2. Use Hwang-Lin merging algorithm guided by x∗
3. Update x∗
![Page 44: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/44.jpg)
Posets of width ≤ 2
In that special case, the incomparability graph of P is bipartite
A1
A2B2
B3
B1
A3
Korner and Marton 1988:
I optimal solution for entropy has “block structure”
I can be computed via a greedy algorithm
![Page 45: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/45.jpg)
Posets of width ≤ 2
bipartite incomparability graphs =⇒ x∗ defining H(P) has aneven nicer structure
A1
A2B2
B3
B1
A3
I Ai interval of A, Bi interval of B, same ordering
I x∗v = (|Ai |+ |Bi |)/n|Ai | whenever v ∈ Ai
Can compute H(P) and x∗ in time O(n2 log2 n)
![Page 46: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/46.jpg)
Solving MUPI - general ideas
A1
A2B2
B3
B1
A3
Compute entropy and x∗
Apply Hwang-Ling merging algorithm on each component Ai ∪ Bi
with |Ai | ≥ |Bi |, in a certain order
Update x∗ locally after each merging (details omitted)
Overall #comparisons is ≤ 3nH(P)
![Page 47: Sorting under partial information (without the ellipsoid ...vetta/Workshop/fiorini.pdfSorting under partial information (without the ellipsoid algorithm) Jean Cardinal ULB Samuel Fiorini](https://reader035.fdocuments.us/reader035/viewer/2022070706/5e9ab547a3d39278744be499/html5/thumbnails/47.jpg)
Thank You!