Batched Colored Intersection Searching Sparse Matrix Multiplication

1 / 36
About This Presentation
Title:

Batched Colored Intersection Searching Sparse Matrix Multiplication

Description:

Batched Colored Intersection Searching Sparse Matrix Multiplication. Elad Verbin ... (number of columns of A and rows of B unimportant) ... –

Number of Views:73
Avg rating:3.0/5.0
Slides: 37
Provided by: admi1176
Category:

less

Transcript and Presenter's Notes

Title: Batched Colored Intersection Searching Sparse Matrix Multiplication


1
  • Batched Colored Intersection Searching Sparse
    Matrix Multiplication
  • Elad Verbin
  • Joint work with Haim Kaplan and Micha Sharir

2
(Batched) Colored Intersection Searching (CI)
  • INPUT n points n hypercubes each object
    colored in one of c colors.
  • GOAL Report all intersecting pairs of colors

OUTPUT the Intersection graph
Naïve Algorithm O(cn)
3
Our results - The Bottom Line
  • CI of points and hypercubes costs O(nc0.69). (for
    nc1.69)
  • CI of points and halfplanes costs O(n4/3c0.46).
    (for nc1.44)
  • Generalizable to many classes of objects

4
(Boolean) Sparse Matrix Multiplication (SMM)
  • You are given Boolean matrices A with c rows, B
    with c columns, where A and B have n non-zero
    entries
  • Compute AB
  • (number of columns of A and rows of B
    unimportant)
  • (input matrices given in sparse representation)

5
Today we show
  • These two problems have the same complexity! (up
    to polylog factors)
  • Why the connection?
  • Because both are aggregation problems!
  • (Many algorithms use MM, less results show
    equivalence to MM)

6
Aggregation problems
1001101
1
X

1101001
3 witnesses aggregation!
2 witnesses aggregation!
7
Motivation for colored problems
  • Nice generalization of Range Searching.
    Interesting behavior.
  • Computing intersection between polygons
  • Terrain Guarding

8
Intersections Between polygons
  • .

9
Intersections Between polygons
Triangulate and use CI
  • .

10
History of Colored Problems
  • Defined by Gupta, Janardan Smid in beginning of
    90s.
  • Mostly geometrical techniques
  • Try to transform to an input where each pair of
    color intersects only once
  • Some tricks to allow output-sensitivity.
  • A paper on the batched problem by Bozanis,
    Kitsios,Makris and Tsakalidis

11
Lecture Outline
  • SMM CI
  • CI SMM
  • Points and Halfplanes
  • Sparse Matrix Multiplication
  • More Extensions of our method
  • Open Problems

12
I. SMM CI
?
13
I. SMM CI
1.Color code the rows of A / columns of B
14
I. SMM CI
2. Number the columns / rows
1 2 3
1
2
3
15
I. SMM CI
3. Translate to points
1 2 3
1
2
3
R
1
2
3
16
I. SMM CI
3. Translate to points and degenerate hypercubes
1 2 3
1
2
3
R
1
2
3
17
I. SMM CI
  • In other words SMM Degenerate CI

R
1
2
3
18
II. CI SMM
19
1 dimension
1. Build Segment Tree over Input Points and
Segments
p5, p6, p7, p8 I3, I2
p3, p4, I2
p3 I1
p2 , I1,I2
p1
p2
p3
p4
p5
p6
p7
p8
20
2. Represent as union of bi-cliques
p3 I1
p3, p4 I2
p3
I2
p4
p5, p6, p7, p8 I3, I2
p2 I1,I2
I3
p5, p6
p1
p2
p3
p4
p5
p6
p7
p8
p7
I2
p8
Total number of vertices Õ(n)
21
3. Compute union of bicliques by matrix
multiplication
p3
I2
p4
I3
p5, p6
p7
I2
p8
22
3. Compute union of bicliques by matrix
multiplication
  • union of bi-cliques SMM

23
3. Compute union of bicliques by matrix
multiplication
  • union of bi-cliques SMM

24
Higher dimensions
  • Higher-dimensional segment tree

p7
p6
p8
p5
p1
p2
p3
p4
p5
p6
p7
p8
p8, p5 R1, R2
2-d segment tree
25
III. Points and Halfplanes
26
Points and Halfplanes
  • For points and halfplanes, a cutting theorem
    Matouek,Chazelle gives that the graph of
    object intersections can be written as the
    disjoint union of bi-cliques with total size
    Õ(m4/3).
  • Lower bound SMM with m 1s
  • Upper bound SMM with Õ(m4/3) 1s.
  • With an additional idea Gives O(m4/3n0.46). (for
    mn1.44)

gap!
27
Same for Points and Triangles
28
IV. Matrix Multiplication
  • Usual MM Multiply two nn matrices.
  • How fast?
  • Trivial O(n3)
  • Optimistic O(n2)
  • Strassen (69) O(n2.81) big surprise!
  • Currently Best -- Coppersmith and Winograd (90)
    O(n2.376). Complicated and impractical.
  • Recently another method by Cohn et al. hope to
    finally get O(n2).

2.81log27. Method Look at the matrix as a block
matrix. Show how to multiply two 22 matrices
with 7 multiplications and 18 additions
?
29
Complexity of SMM
  • Yuster and Zwick (04) Multiplying Square sparse
    matrices
  • We multiply rectangular sparse matrices. Same
    technique.
  • Running time
  • so, O(mn0.69). (for mn1.69)

30
SMM
Multiply heavy and light separately
X
31
SMM
Multiply heavy and light separately
X

X
32
V. Extensions
  • Any set of orthogonal objects of constant
    dimension (boxes vs. boxes, etc.) equivalent to
    SMM
  • Non-orthogonal objects Points and Halfplanes,
    Points and Triangles, Triangles and Triangles
    use cuttings to reduce to MM. Also in higher
    dimension.
  • No longer equivalent to MM lower bound does not
    match upper bound.
  • Application Check for intersections in a set of
    convex polytopes in Rd

33
Extensions
  • Input set of boxes goal report all triplets
    of colors that intersect. Equivalent to
    matrix-multiplication variant.
  • Counting version Each object has weight. Want to
    compute, for each pair of colors c1,c2,
    , where the sum is over all x of
    color c1, y of color c2, that intersect.
    Equivalent to non-Boolean MM. (here you need a
    disjoint partition into bi-cliques).

34
VI. Further work and Open Questions
  • Colored range counting objects vs. colors
  • INPUT n points n hypercubes each point colored
    in one of c colors. (cn).
  • GOAL For each hypercube, count how many colors
    it touches.
  • In ongoing work with Natan Rubin this is also
    equivalent to a matrix multiplication variant

35
VI. Further work and Open Questions
  • Lower bound for SMM?
  • Easier Prove that computing AAT when A has n
    rows, columns, 1s in each
    column takes at least time (assume e.g.
    mn6). What computational model?!
  • Output-Sensitive Algorithm? (need
    output-sensitive algorithm for SMM!)

36
Thank you!
Any Questions?
Write a Comment
User Comments (0)
About PowerShow.com