460 likes | 474 Views
Algorithms and Modern Computer Science. Dr. Marina L. Gavrilova. Dept of Comp. Science, University of Calgary, AB, Canada, T2N1N4. Presentation outline. About my research Data structures and algorithms to be studied Application areas Optimization and computer modeling
E N D
Algorithms and Modern Computer Science Dr. Marina L. Gavrilova Dept of Comp. Science, University of Calgary, AB, Canada, T2N1N4
Presentation outline • About my research • Data structures and algorithms to be studied • Application areas • Optimization and computer modeling • Image processing and computer graphics • Spatial data • Biometrics • Summary
My Research Interests • Computer modeling and simulation • Computational geometry • Image processing and visualization • Voronoi diagram and Delaunay triangulation • Biometric technologies • Collision detection optimization • Terrain modeling and visualization • Computational methods in spatial analysis and GIS
Interests and affiliations SPARCS Lab Co-Founder and Director BT Lab Co-Founder and Director Computational Geometry and Applications Founder and Chair since 2001 ICCSA Conference series Scientific Chair (since 2003) Transactions on Computational Science Journal Springer Editor-in-Chief Research topics: optimization, reliability, geometric algorithms, data structures representation and visualization, GIS, spatial analysis, biometric modeling
Data Structures to be Studied • Hashing and hash tables • Trees • Spatial subdivisions • Graphs • Flow networks • Geometric data structures
Algorithms to be studies • Search heuristics • Encoding and compression techniques • Linear programming • Dynamic programming • Game design techniques • Randomized algorithms
Long-Term Goals of Research in Computer Science • Provide a solution to a problem • Decrease possibility of an error • Improve methodology or invent a novel solution • Make solution more robust • Make solution more efficient • Make solution less memory consuming
Examples of data structures applications in areas of computer science • Typical applications: • Heaps for data ordering and faster access in operating systems • K-d trees for multi-dimensional database searches • B, B*, B+ trees for file accesses • Geometric data structures for geographical data representation and processing • Compression algorithms for remote access, Internet, network transmission and security • Search heuristics for game strategy implementation
Recent trends • The old definition of computer science—the study of phenomena surrounding computers—is now obsolete. Computing is the study of natural and artificial information processes. ACM Communications 50-07-2007
More Advanced Applications • Data structures in Optimization and Computer Simulation • Data structures in Image Processing and Computer Graphics • Data structures in GIS (Geographical Information Systems) and statistical analysis • Data structures in biometrics
And now… Einar Rustad, VP Business Development,Dolphin Interconnect Solutions
State of the art in computing Horst Simon Director NERSC, Lawrence Berkeley National Laboratory
Part 1. Optimization and Computer Modeling • Space partitioning • Trees • Geometric data structures • Biological systems (plants, corals) • Granular-type materials (silo, shaker, billiards) • Molecular systems (fluids, lipid bilayers, protein docking) • GIS terrain modeling
k cells Pool of Data Structures Dynamic Delaunay triangulation Spatial subdivisions Segment trees K-d trees Interval trees Combination of data structures
Collision detection optimization Problem: A set of n moving particles is given in the plane or 3D with equations of their motion. It is required to detect and handle collisions between objects and/or boundaries. Collisions are instantaneous and one-on-one only. Approach: Use dynamic data structures in the context of time-step event oriented simulation model. Data structures implemented are: • dynamic generalized DT • regular spatial subdivision • regular spatial tree • set of segment tree
The nearest-neighbor problem Task:To find the nearest-neighbor in a system of circular objects {Gavrilova 01} Approach: To use generalized Voronoi diagram in Manhattan and power metric and k-d tree as a data structure. The Initial Distribution Generator (IDG) module: Used to create various input configurations: the uniform distribution of sites in a square, the uniform distribution of sites in a circle, cross, ring, degenerate grid and degenerate circle. The parameters for automatic generation are: the number of sites, the distribution of their radii, the size of the area, and the type of the distribution. The Nearest-Neighbour Monitor (NNM) module: The program constructs the additively weighted supremum VD, the power diagram and the k-d tree in supremum metric; performs series of nearest-neighbour searches and displays statistics. Tests: large data sets (10000 particles), silo model
Example: supremum VD and DT The supremum weighted Voronoi diagram (left) and the corresponding Delaunay triangulation (right) for 1000 randomly distributed sites .
Study of porous materials in 3d Collaborators: N.N. Medvedev, V.A.Luchnikov, V. P. Voloshin, Russian Academy of Sciences, Novosibirsk [Luchnikov 01]. Task: To study the properties of the system of polydisperse spheres in 3D, confined inside a cylindrical container. Approach: A boundary of a container is considered as one of the elements of the system. • To compute the Voronoi network for a set of balls in a cylinder we use the modification of the known 3D incremental construction technique, discussed in {Gavrilova et. al.} • The center of an empty sphere, which moves inside the system so that it touches at least three objects at any moment of time, defines an edge of the 3D Voronoi network. Tests: porous materials, molecular structures
Example: 3D Euclidean Voronoi diagram 3D Euclidean Voronoi diagram: hyperbolic arcs identify voids – empty spaces around items obtained by Monte Carlo method.
Experiments The approach was tested on a system representing dense packing of 300 Lennard-Jones atoms. The largest channels of the Voronoi network occur near to the wall of the cylinder.A fraction of large channels along the wall is higher for the model with the fixed diameter (right) than for the model with relaxed diameter (left).
Part 2. Image processing and Computer Graphics • Space partitioning • Trees • Geometric data structures • Compression • Search heuristics • Image reconstruction • Image compression • Morphing • Detail enhancement • Image comparison • Pattern recognition
Pattern Matching • Aside from a problem of measuring the distance, pattern matching between the template and the given image is a very serious problem on its own.
Template Matching approach to Symbol Recognition Compare an image with each template and see which one gives the best mach (courtesy of Prof. Jim Parker, U of C)
Good Match Most of the pixels overlap means a good match (courtesy of Prof. Jim Parker, U of C) Image Template
Distance Transform Given an n x m binary image I of white and black pixels, the distance transform of I is a map that assigns to each pixel the distance to the nearest black pixel (a feature).
Medial axis transform • The medial axis, or skeleton of the set D, denoted M(D), is defined as the locus of points inside D which lie at the centers of all closed discs (or spheres) which are maximal in D, together with the limit points of this locus.
Part 3. Spatial Data and GIS • Space partitioning • Grids • Distance metrics • Geometric data structures • Terrain visualization • Terrain modeling • Urban planning • City planning • GIS systems design • Navigation and tracking problems • Statistical analysis
GIS studies - SPARCS Lab Collaborators: S. Bertazzon, Dept. of Geography, C. Gold, Hong Kong Polytechnic, M. Goodchild, Santa Barbara Problem: study or patterns and correlation among attributed geographical entities, including health, demographic, education etc. statistics. Approach: pattern analysis using3D Voronoi diagram, spatial statistics and autocorrelation using Lp metrics, pattern matching and visualization
DEM: Digital Elevation Model • Contains only relative Height • Regular interval • Pixel color determine height • Discrete resolution X Kluanne National Park Y
A B Non-Photo-Realistic Real-time 3D Terrain Rendering • Uses DEM as input of the application • Generates frame coherent animated view in real-time • Uses texturing, shades, particles etc. for layer visualization
Part 4. Biometrics • Hashing • Space partitioning • Trees • Geometric data structures • Searching • Biometric identification • Biometric recognition • Biometric synthesis
Background • Biometrics refers to the automatic identification of a person based on his/her physiological or behavioral characteristics.
Thermogram vs. distance transform Thermogram of an ear (Brent Griffith, Infrared Thermography Laboratory, Lawrence Berkeley National Laboratory)
Voronoi diagram Directions of feature points Nearest Neighbor Approach
(a) Binary Hand (b) Hand Contour
Spatial Interpolation using RBF(Radial Basis Functions) Deformation in 2D and 3D
Summary • Data structures and algorithms studies in the course are powerful tools not only for basic operation of computer systems and networks but also a vast array of techniques for advancing the state of the research in various computer science disciplines.