BRICS Research Activities Algorithms
Gerth Stølting Brodal
BRICS Retreat, Sandbjerg, 21–23 October 2002
1
BRICS Research Activities Algorithms Gerth Stlting Brodal BRICS - - PowerPoint PPT Presentation
BRICS Research Activities Algorithms Gerth Stlting Brodal BRICS Retreat, Sandbjerg, 2123 October 2002 1 Outline of Talk The Algorithms Group Courses Algorithm Events Expertise within BRICS Examples Algorithms for
BRICS Retreat, Sandbjerg, 21–23 October 2002
1
Examples
BRICS Retreat, Sandbjerg, 21–23 October 2002
2
Erik Meineche Schmidt
Algorithms, Complexity Theory
PhD students
Sven Skyum
Algorithms, Complexity Theory
Alex Rune Berg
Graph Theory
Peter Bro Miltersen
Complexity Theory, Data Structures
Jesper Makholm Byskov
Algorithms for NP-hard problems
Gudmund Skovbjerg Frandsen
Algebraic Algorithms, Dynamic Algorithms
Bolette Ammitzbøll Madsen
Algorithms for NP-hard problems
Christian Nørgaard Storm Pedersen
Bioinformatics, String Algorithms
Bjarke Skjernaa
Algorithms for NP-hard problems
Gerth Stølting Brodal
Data Structures, External Memory
Kristoffer Arnsfelt Hansen
Complexity
Rolf Fagerberg
Data structures, External Memory
BRICS Retreat, Sandbjerg, 21–23 October 2002
3
Frandsen
Brodal, Schmidt
Skyum, Miltersen
Pedersen
Skyum
Miltersen
Frandsen
Brodal, Fagerberg
—
—
Pedersen
—
BRICS Retreat, Sandbjerg, 21–23 October 2002
4
Upcoming
18th IEEE Conference on Computational Complexity (June 2003, organizing chair Peter Bro Miltersen)
Ongoing
Alcom seminar
Recent
EEF Summer School on Massive Data Sets (June 2002) ALGO 2001 (August 2001) ESA 2001 - 9th Annual European Symposium on Algorithms WAE 2001 - 5th Workshop on Algorithm Engineering WABI 2001 - 1st Workshop on Algorithms in BioInformatics
BRICS Retreat, Sandbjerg, 21–23 October 2002
5
Algorithms and Complexity – Future Technologies
The ALCOM-FT project is a joint effort between eleven of the leading groups in algorithms research in Europe. The aim of the project is to discover new algorithmic concepts, identify key algorithmic problems in im- portant applications, and contribute to the accelerated transfer of advanced algorithmic techniques into commercial systems. The project takes place from June 2000 to June 2003.
(Erik Meineche Schmidt, Rolf Fagerberg)
BRICS Retreat, Sandbjerg, 21–23 October 2002
6
BRICS Erik Meineche Schmidt Barcelona Josep Díaz Cologne Michael Jünger INRIA Rocquencourt Philippe Flajolet Max-Planck-Institut für Informatik Kurt Mehlhorn Paderborn Burkhard Monien Friedhelm Meyer auf der Heide Patras Paul Spirakis Rome “La Sapienza” Giorgio Ausiello Utrecht Jan van Leeuwen Warwick Mike Paterson Cyprus Marios Mavronicolas
BRICS Retreat, Sandbjerg, 21–23 October 2002
7
BRICS Retreat, Sandbjerg, 21–23 October 2002
8
BRICS Retreat, Sandbjerg, 21–23 October 2002
9
f e c d b d c b f e a a a d b c induced quartets a c b d
BRICS Retreat, Sandbjerg, 21–23 October 2002
10
CPU A R M
Add: O(1) Mult: O(1) Mem access: O(1)
BRICS Retreat, Sandbjerg, 21–23 October 2002
11
CPU A R M
Add: O(1) Mult: O(1) Mem access: O(1) Real life
Disk CPU L2 L1 A R M C a c C c a e h h e
Bottleneck: transfer between two highest memory levels in use
BRICS Retreat, Sandbjerg, 21–23 October 2002
11
CPU External I/O Memory y r
e M
N = problem size M = memory size B = I/O block size
Aggarwal and Vitter 1988
N
B logM/B N B
BRICS Retreat, Sandbjerg, 21–23 October 2002
12
Frigo, Leiserson, Prokop, Ramachandran, FOCS’99
Advantages
BRICS Retreat, Sandbjerg, 21–23 October 2002
13
Frigo, Leiserson, Prokop, Ramachandran, FOCS’99
Prokop 99 Bender, Demaine, Farach-Colton, FOCS’00 Rahman, Cole, Raman, WAE’01 Bender, Duan, Iacono, Wu and Brodal, Fagerberg, Jacob, SODA’02
Arge, Bender, Demaine, Holland-Minkley, Munro, STOC’02 Brodal, Fagerberg, ISAAC’02
Bender, Cole, Raman, ICALP’02 Brodal, Fagerberg, ICALP’02
Bender, Cole, Demaine, Farach-Colton, ESA’02
BRICS Retreat, Sandbjerg, 21–23 October 2002
14
X, Y arrays of length n:
X Y i j
I/O complexity: n × n B = n2 B
BRICS Retreat, Sandbjerg, 21–23 October 2002
15
More I/O-efficient version:
X Y M M
I/O complexity: n M × n M × M B = n2 MB
BRICS Retreat, Sandbjerg, 21–23 October 2002
16
Cache-oblivious version:
X Y n/2 n/2 n/2 n/2
+ recursion I/O complexity: Again n2 MB
BRICS Retreat, Sandbjerg, 21–23 October 2002
17
Cache-oblivious version
BRICS Retreat, Sandbjerg, 21–23 October 2002
18
1 10 100 1000 10000 15 16 17 18 19 20 21 time (seconds) log2 of array size (bytes) plain cache-aware (L1) cache-aware (L2) cache-oblivious
Sizes within RAM (element size 4 bytes)
366 MHz Pentium II, 128 MB RAM, 256 KB Cache, gcc -O3, Linux
BRICS Retreat, Sandbjerg, 21–23 October 2002
19
0.1 1 10 100 1000 19 20 21 22 23 24 25 26 27 time (seconds) log2 of array size (bytes) plain cache-aware (L2) cache-aware (RAM) cache-oblivious
Sizes exceeding RAM (element size 1 KB)
366 MHz Pentium II, 128 MB RAM, 256 KB Cache, gcc -O3, Linux
BRICS Retreat, Sandbjerg, 21–23 October 2002
20
Recursive memory layout (van Emde Boas layout)
Prokop 1999
Bk A B1 A B1 Bk · · · · · · h ⌈h/2⌉ ⌊h/2⌋ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
Binary tree Searches use O(logB N) I/Os Dynamization
Bender, Demaine, Farach-Colton, FOCS’00 Rahman, Cole, Raman, WAE’01 Bender, Duan, Iacono, Wu, SODA 02 Brodal, Fagerberg, Jacob, SODA’02
BRICS Retreat, Sandbjerg, 21–23 October 2002
21
6 4 1 3 5 8 7 11 10 13
Search O(logB N) Range Reporting O
B
O
B
22
BRICS Retreat, Sandbjerg, 21–23 October 2002
23