Department of Computer Science

UBC's Department of Computer Science is one of the top two Computer Science departments in Canada. UBC is ranked as one of the world’s top 25 universities for Computer Science.

The department was established in May 1968 by six founding UBC faculty members. Recognized internationally for excellence in research and teaching with a conscious focus on interdisciplinary programs, the Department encourages diversity both within its community and areas of study. It plays a leadership role in research, teaching and outreach activities to champion the understanding and integration of Computer Science within all aspects of society.

Research Supervisors

Name Research Interests
Aiello, William
Ascher, Uri Michael Ultibody systems applications, multilevel methods, numerical methods for differential equations with constraints, scientific computing
Beschastnikh, Ivan cloud computing, distributed systems, software engineering, software analysis
Carenini, Giuseppe Artificial intelligence, user modeling, decision theory, machine learning, social issues in computing, computational linguistics, information visualization
Conati, Cristina artificial intelligence, human-computer interaction, affective computing, personalized interfaces, intelligent user interfaces, intelligent interface agents, virtual agent, user-adapted interaction, computer-assisted education, educational computer games, computers in education, user-adaptive interaction, Artificial intelligence, adaptive interfaces, cognitive systems, user modelling
Condon, Anne Algorithms, Molecular Programming
Evans, William theoretical computer science, computational geometry, graph drawing, program compression
Feeley, Michael Distributed systems, operating systems, workstation and pc clusters
Friedlander, Michael numerical optimization, numerical linear algebra, scientific computing, Scientific computing
Friedman, Joel Computer Science Theory, Algebraic Graph Theory, Combinatorics
Fu, Hu
Garcia, Ronald programming language semantics, design, and implementation, including language support for library-centric and modular software development, generic and generative programming, and domain specific languages and libraries.
Greenstreet, Mark Dynamic systems, formal methods, hybrid systems, differential equations
Greif, Chen scientific computing, numerical linear algebra, iterative linear solvers, constrained optimization, numerical solution of partial differential equations
Gupta, Arvind Algorithmic Issues in Bioinformatics; Constructive Combinatorics
Harvey, Nicholas randomized algorithms, combinatorial optimization, graph sparsification, discrepancy theory and learning theory; algorithmic problems arising in computer networking, including cache analysis, load balancing, data replication, peer-to-peer networks, and network coding.
Heidrich, Wolfgang computational imaging and display, an emerging research area within visual computing, which combines methods from computer graphics, machine vision, imaging, inverse methods, optics and perception to develop new sensing and display technologies
Holmes, Reid computer science, software engineering, software testing, software quality, open source software, software development tools, software comprehension, static analysis
Hoos, Holger computers and creativity, intelligent problem solving, mathematical analysis for software / problem solvers, computer music, molecular design, Music, agorithms, bioinformatics, compuational intelligence
Hu, Alan formal verification, formal methods, model checking, software analysis, post-silicon validation, security, nonce to detect automated mining of profiles
Hutchinson, Norman Computer Systems, Distributed Systems, File Systems, Virtualization
Kiczales, Gregor MOOCs, Blended Learning, Flexible Learning, University Strategy for Flexible and Blended Learning, Computer Science Education, Programming Languages, Programming languages, aspect-oriented programming, foundations, reflections and meta programming, software design
Lakshmanan, Laks data management and data cleaning, data warehousing and OLAP, data and text mining, analytics on big graphs and news, social networks and media, recommender systems
Leyton-Brown, Kevin Artificial intelligence, Auction theory, Game theory, Machine learning, Algorithms
Little, James Joseph Artificial intelligence, computational vision, geographic information systems, robotics
Mackworth, Alan vision; robotics, Intelligent systems, programming
MacLean, Karon Usability, evaluation techniques, psychophysics, parasitic power interfaces, physical gesture recognition
McGrenere, Joanna human-computer interaction, personalized user interfaces, universal usability, interactive technologies for older users and people with cognitive disorders, computer supported cooperative work (CSCW), computer science
Mitchell, Ian safety critical systems, assistive technology (mobility), robotics, scientific computing, cyber-physical systems, Mathematical software, computational science and engineering, hybrid and cyber-physical systems, verification and validation, reproducible research, level set methods, robotic path, planning
Munzner, Tamara visualization, information visualization, visual analytics, data science
Murphy, Gail software engineering, software evolution, software design, knowledge worker productivity
Ng, Raymond Tak-yan Data mining and analysis, health informatics, text summarization, text mining
Pai, Dinesh Robotics, computer graphics, medical imaging, neuroscience, sensorimotor computation
Poole, David Artificial Intelligence, Machine Learning, Knowledge Representation, Decision Analysis, Preference Elicitation, Reasoning under Uncertainty, Graphical Models
Pottinger, Rachel databases, data management, data integration, metadata management
Ravanbakhsh, Siamak machine learning, probabilistic inference within structured and complex domains and its real-world applications
Rensink, Ronald vision, attention, consciousness, interface design, Cognitive vision
Schmidt, Mark Machine learning; Numerical Optimizaiton; Probabilistic Graphical Models; Causality
Sheffer, Alla Computer graphics, shape modeling and geometry processing
Sigal, Leonid recognition, scene understanding, articulated motion capture, motion modeling, action recognition, motion perception, manifold learning, transfer learning, character and cloth animation
Van de Panne, Michiel computer graphics, Computer graphics, robotics, computer animation, novel interface techniques, physics-based modelling and stimulation, motor control, motor learning
Wagner, Alan Parallel computation, interconnection networks, parallel programming environments
Warfield, Andrew Cloud Computing, Big Data, Data Storage, Virtualization, Computer Security, Computer Networks
Yoon, Dongwook Human-computer interaction (HCI), Multimodal interaction, Interaction and interface design, Computer supported cooperative work (CSCW), Educational technology, Speech, touch, multitouch, stylus, gesture, augmented reality, virtual reality, 3d interaction


Barry Po

Doctor of Philosophy in Computer Science (PhD)