Algorithms and Data Structures Group Gerth Stølting Brodal Faculty Meeting, Department of Computer Science, Aarhus University, October 3, 2014.

Slides:



Advertisements
Similar presentations
I/O-Algorithms Lars Arge Spring 2012 April 17, 2012.
Advertisements

Master Thesis Algorithms. Algorithms – Who? Faculty Lars Arge Gerth Stølting Brodal Gudmund Skovbjerg Frandsen Kristoffer Arnsfelt Hansen Peter Bro Miltersen.
Kandidatorientering, April 20, 2012 Algorithms and Data Structures.
Lars Arge Gerth Stølting Brodal Algorithms and Data Structures Computer Science Day, Department of Computer Science, Aarhus University, May 31, 2013.
Gerth Stølting Brodal University of Aarhus Monday June 9, 2008, IT University of Copenhagen, Denmark International PhD School in Algorithms for Advanced.
The Study of Cache Oblivious Algorithms Prepared by Jia Guo.
Tight Bounds for Dynamic Convex Hull Queries (Again) Erik DemaineMihai Pătraşcu.
Lars Arge 1/43 Big Terrain Data Analysis Algorithms in the Field Workshop SoCG June 19, 2012 Lars Arge.
Kandidatorientering, November 1, 2010 Algorithms and Data Structures.
MADALGO ― Center for Massive Data Algorithmics MADALGO is a major new basic research center funded by The Danish National Research Foundation initially.
Kandidatorientering, October 28, 2011 Algorithms and Data Structures.
Msb(x) in O(1) steps using 5 multiplications Word size n = g∙g, g a power of 2 [M.L. Fredman, D.E. Willard, Surpassing the information-theoretic bound.
Computational Complexity 1. Time Complexity 2. Space Complexity.
Hierarchy-conscious Data Structures for String Analysis Carlo Fantozzi PhD Student (XVI ciclo) Bioinformatics Course - June 25, 2002.
I/O-Algorithms Lars Arge January 31, Lars Arge I/O-algorithms 2 Random Access Machine Model Standard theoretical model of computation: –Infinite.
Gerth Stølting Brodal Cache-Oblivious Algorithms - A Unified Approach to Hierarchical Memory Algorithms Current Trends in Algorithms, Complexity Theory,
Computer Science Day 2008 Algorithms and Data Structures for Faulty Memory Gerth Stølting Brodal Department of Computer Science, University of Aarhus,
Lecture 5: Linear Time Sorting Shang-Hua Teng. Sorting Input: Array A[1...n], of elements in arbitrary order; array size n Output: Array A[1...n] of the.
External-Memory and Cache-Oblivious Algorithms: Theory and Experiments Gerth Stølting Brodal Oberwolfach Workshop on ”Algorithm Engineering”, Oberwolfach,
I/O-Algorithms Lars Arge Spring 2009 February 2, 2009.
I/O-Algorithms Lars Arge Spring 2009 January 27, 2009.
I/O-Algorithms Lars Arge Spring 2007 January 30, 2007.
I/O-Algorithms Lars Arge Aarhus University February 7, 2005.
I/O-Algorithms Lars Arge Aarhus University February 6, 2007.
I/O-Algorithms Lars Arge Spring 2006 February 2, 2006.
Fully Persistent B-Trees 23 rd Annual ACM-SIAM Symposium on Discrete Algorithms, Kyoto, Japan, January 18, 2012 Gerth Stølting Brodal Konstantinos Tsakalidis.
I/O-Algorithms Lars Arge Aarhus University April 16, 2008.
Lecture 5: Master Theorem and Linear Time Sorting
Massive Data Algorithmics Faglig Dag, January 17, 2008 Gerth Stølting Brodal University of Aarhus Department of Computer Science.
Comparison Based Dictionaries: Fault Tolerance versus I/O Efficiency Gerth Stølting Brodal Allan Grønlund Jørgensen Thomas Mølhave University of Aarhus.
Cache Oblivious Search Trees via Binary Trees of Small Height
External Memory Algorithms Kamesh Munagala. External Memory Model Aggrawal and Vitter, 1988.
Lars Arge 1/12 Lars Arge. 2/12  Pervasive use of computers and sensors  Increased ability to acquire/store/process data → Massive data collected everywhere.
I/O-Algorithms Lars Arge Spring 2008 January 31, 2008.
Cache-Oblivious Dynamic Dictionaries with Update/Query Tradeoff Gerth Stølting Brodal Erik D. Demaine Jeremy T. Fineman John Iacono Stefan Langerman J.
Algorithm Engineering, September 2013Data Structures, February-March 2010Data Structures, February-March 2006 Cache-Oblivious and Cache-Aware Algorithms,
Retreat Sandbjerg, November 19-20, Homework Session 16:30 Homework handout 16:40 Homework 19:00 Dinner 21:00 Homework presentations.
I/O-Algorithms Lars Arge Fall 2014 August 28, 2014.
Algorithms and Data Structures Gerth Stølting Brodal Computer Science Day, Department of Computer Science, Aarhus University, May 25, 2012.
B-trees and kd-trees Piotr Indyk (slides partially by Lars Arge from Duke U)
Lars Arge1 Permuting Lower Bound Permuting N elements according to a given permutation takes I/Os in “indivisibility” model Indivisibility model: Move.
An Optimal Cache-Oblivious Priority Queue and Its Applications in Graph Algorithms By Arge, Bender, Demaine, Holland-Minkley, Munro Presented by Adam Sheffer.
MotivationFundamental ProblemsProblems on Graphs Parallel processors are becoming common place. Each core of a multi-core processor consists of a CPU and.
Path Minima on Dynamic Weighted Trees Pooya Davoodi Aarhus University Aarhus University, November 17, 2010 Joint work with Gerth Stølting Brodal and S.
Algorithms and Data Structures Gerth Stølting Brodal Computer Science Day, Department of Computer Science, Aarhus University, May 25, 2012.
Λίστα Εργασιών External Memory Data Structures Vitter, J. S. and Shriver, E. 1994a. Algorithms for parallel memory I: Two-level memories. Algorithmica.
Cache-efficient string sorting for Burrows-Wheeler Transform Advait D. Karande Sriram Saroop.
Equivalence Between Priority Queues and Sorting in External Memory
ProblemAssumption and PreliminariesAlgorithm  How does the water flow and depressions fill during non-uniform rain over a terrain?  Can we efficiently.
15-853: Algorithms in the Real World Locality II: Cache-oblivious algorithms – Matrix multiplication – Distribution sort – Static searching.
CSE332: Data Abstractions Lecture 12: Introduction to Sorting Dan Grossman Spring 2010.
Optimal Planar Orthogonal Skyline Counting Queries Gerth Stølting Brodal and Kasper Green Larsen Aarhus University 14th Scandinavian Workshop on Algorithm.
MotivationLocating the k largest subsequences: Main ideasResults Problem definitions Problem instance ( k=5 ) Bibliography
Sorting Integers in the RAM Model Gerth Stølting Brodal Joint work with Djamal Belazzougui and Jesper Sindal Nielsen (to be presented at the 14th Scandinavian.
ProblemResultsConcurrent Range Reporting Input: n points in d dimensional space. Support reporting the t points in a query box. The best previous result:
Efficient data structures are the core of many algorithms and the design of data structures is a classical topic covered in most introductory text books.
1 Cache-Oblivious Query Processing Bingsheng He, Qiong Luo {saven, Department of Computer Science & Engineering Hong Kong University of.
ProblemData StructuresLower Bound Preprocess a set of N 3-dimensional points into an I/O-efficient data structure, such that all points inside an axis.
Internal Memory Pointer MachineRandom Access MachineStatic Setting Data resides in records (nodes) that can be accessed via pointers (links). The priority.
Lecture 5 Algorithm Analysis Arne Kutzner Hanyang University / Seoul Korea.
Memory Hierarchies [FLPR12] Matteo Frigo, Charles E. Leiserson, Harald Prokop, Sridhar Ramachandran. Cache- Oblivious Algorithms. ACM Transactions on Algorithms,
(A Survey on) Priority Queues IanFest, University of Waterloo, Waterloo, Ontario, Canada, August 14-15, 2013 Gerth Stølting Brodal Aarhus Universty.
arxiv.org/abs/ y 3-sided x1 x2 x1 x2 top-k
Sorting by Tammy Bailey
STACS arxiv.org/abs/ y 3-sided x1 x2 x1 x2 top-k
Thesis Preparation Algorithms Gerth Stølting Brodal.
Lecture 5 Algorithm Analysis
8th Workshop on Massive Data Algorithms, August 23, 2016
Presentation transcript:

Algorithms and Data Structures Group Gerth Stølting Brodal Faculty Meeting, Department of Computer Science, Aarhus University, October 3, 2014

VIP Lars Arge (Professor) Gerth Stølting Brodal (Lektor) Peyman Afshani (Adjunkt) Kasper Green Larsen (Adjunkt) PostDocs Allan Grønlund Jørgensen (HTF) Wanbin Son Zengfeng Huang Constantinos Tsirogiannis (AUFF) PhD students Bryan Wilkinson Edvin Berglin Ingo van Duijn Jakob Truelsen Jesper Asbjørn Sindahl Nielsen Jungwoo Yang Morten Revsbæk Sarfraz Raza Mathias Rav Konstantinos Mampentzidis MSc students Claus Jespersen Mikkel Engelbrecht Hougaard Bo Mortensen Programmer Svend Christian Svendsen Administration Trine Ji Holmgaard Jensen, Katrine Østerlund Rasmussen, Ellen Kjemtrup Weekly visitors Peder Klith Bøcher Brody Steven Sandel (Biodiversity Group)

Events  Workshop on Massive Data Algorithmis (2009 -)  Symposium on Computational Geometry (2009)  European Symposium on Algorithms / ALGO 2016  MADALGO Summer Schools 2007, 2008,  MADALGO retreat (October)

Research – Efficiency quartet distance between two trees ? integer sorting, cost per element ? Less practical ? Deeper insights Improved asymptotics More complicated ? lower bound ? algorithm engineering ?

Algorithms Research Theory Algorithm engineering Applications Peyman Gerth Lars EcoInformatics BioInformatics COWI, DES, EIVA, … Kasper

Research – Models of Computation  RAM model memory access and other operations O(1), sometimes * is  (1)  Pointer model disallow arrays, memory is a graph with O(1) out-degree  Functional model pointer model with no side-effects, implies persistence  Comparison model/decision trees simple lower bounds  Cell-probe model strong lower bounds, applies to RAM model  Bit-probe model fundamental lower bounds, special case of cell-probe  Implicit model O(1) working space, store information as input permutation  IO model focus on number of memory-disk transfers  Cache-oblivious model abstract model to model multiple memory layers  Streaming model limited working space, single or multiple scans of input

NEW Integer Sorting Results Bucket sortO(n+2 w ) Radix sort; Hollerith 1887 van Emde Boas 1975 Willard 1983 superlinear space expected Kirkpatrick and Reicsh 1983 Merge sort: von Neumann 1945 comparison based optimal Thorup and Han 2002expected Andersson et al. 1998O(n) Belazzougui, Brodal, Nielsen 2014O(n) Time per element w log 2 n·loglog nlog 2+ε n O(1) log n ? (n words of w bits)

Threesomes, Degenerates, and Love Triangles Allan Grønlund, Seth Pettie FOCS SUM problem : Given real numbers x 1,..., x n, does there exist x i + x j + x k = 0 ? Conjecture : 3SUM requires time Θ(n 2 ) Theorem : 3SUM can be solved in time O(n 2 / (log n/loglog n) 2/3 )

Planar Orthogonal Skyline Queries Space (words) Query Reporting O(n) O(n  lglg n) O(n  lg ε n) O(k  lg ε n) O(k  lglg n + lg n/lglg n) O(k + lg n/lglg n) Counting O(n) O(n  lg O(1) n) O(lg n/lglg n)  (lg n/lglg n)  Gerth Brodal, Kasper Larsen SWAT 2014

Half-Space Range Reporting Peyman Afshani JCGA 2013

Memory Hierarchies Processor L1L2 A R M L3Disk bottleneck increasing access times and memory sizes CPU

IO Model  I/O model...but algorithms do not know B and M  Assume optimal cache replacement strategy  Optimal on all levels (under some assumptions) Memory, size M Block size B Alok Aggarwal and Jeff Vitter. The Input/Output Complexity of Sorting and Related Problems. Communications of the ACM 31(9) Matteo Frigo, Charles E. Leiserson, Harald Prokop, Sridhar Ramachandran. Cache-Oblivious Algorithms. ACM Transactions on Algorithms, 8(1), Article No. 4, Disk Cache-Oblivious Model  Cost = # block transfers Scanning O(N/B) IOs, Sorting O(N/B  log M/B N/B) IOs

Harald Prokop 1999, MIT MSc thesis ”Cache-Oblivious Algorithms”, June 1999 Recursive layout of binary tree Searches O(log B N) IOs Example: Dictionary RAM Binary Search Tree IO Model B-tree Cache Oblivious Model Recursive (van Emde Boas) Layout

Computing Multiresolution Rasters Input n x n Output IO Model - O(Sort(n 2 )) IOs Lars Arge, Herman Haverkort and Constantinos Tsirogiannis. ACM SIGSPATIAL Cache Oblivious Model - O(Scan(n 2 )) IOs Lars Arge, Gerth Stølting Brodal, Jakob Truelsen, and Constantinos Tsirogiannis. ESA  x  average Output size =... 1x1 RAM algorithm O(n 2 ) time

Lars Water

Terrain Research Height matrix Terrain model

Areas Flooded by 100 mm Rain SoCG 2010  MADALGO prototype  SCALGO prodct Lars Arge, Morten Revsbæk, and Norbert Zeh SoCG 2010

Algorithms Research Theory Algorithm engineering Applications Peyman Gerth Lars EcoInformatics BioInformatics COWI, DES, EIVA, … Kasper