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.

Master's Students
Doctoral Students
Graduate Degrees Awarded

Research Supervisors

Name Research Interests
Beschastnikh, Ivan Computer and information sciences; software engineering; distributed systems; cloud computing; software analysis; Machine Learning
Bowman, William Computer and information sciences; Programming languages and software engineering; Programming languages; Compilers; programming languages
Carenini, Giuseppe Artificial intelligence, user modeling, decision theory, machine learning, social issues in computing, computational linguistics, information visualization
Clune, Jeff
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
Ding, Jiarui Bioinformatics; Basic medicine and life sciences; Computational Biology; Machine Learning; Probabilistic Deep Learning; single-cell genomics; visualization; Cancer biology; Computational Immunology; Food Allergy; neuroscience
Evans, William Computer and information sciences; Algorithms; theoretical computer science; Computer Sciences and Mathematical Tools; 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 and information sciences; Algebraic Graph Theory; Combinatorics; Computer Science Theory
Garcia, Ronald Programming languages; programming languages
Greenstreet, Mark Dynamic systems, formal methods, hybrid systems, differential equations
Greif, Chen Numerical computation; Numerical analysis; scientific computing; numerical linear algebra; numerical solution of elliptic partial differential equations
Gujarati, Arpan Computer and information sciences; Systems
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.
Holmes, Reid Computer and information sciences; computer science; open source software; software comprehension; software development tools; software engineering; software quality; software testing; static analysis
Hu, Alan Computer and information sciences; formal methods; formal verification; model checking; nonce to detect automated mining of profiles; post-silicon validation; security; software analysis
Hutchinson, Norman Computer and information sciences; 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
Lecuyer, Mathias Machine learning systems; Guarantees of robustness, privacy, and security
Lemieux, Caroline Programming languages and software engineering; help developers improve the correctness, security, and performance of software systems; test-input generation; specification mining; program synthesis
Leyton-Brown, Kevin Computer and information sciences; Artificial Intelligence; Algorithms; theoretical computer science; Resource Allocation; Computer Science and Statistics; Auction theory; game theory; Machine Learning
MacLean, Karon Computer and information sciences; Information Systems; design of user interfaces; haptic interfaces; human-computer interaction; human-robot interaction
McGrenere, Joanna Computer and information sciences; computer science; computer supported cooperative work (CSCW); human-computer interaction; interactive technologies for older users and people with cognitive disorders; personalized user interfaces; universal usability
Mehta, Aastha Networking, Security & Privacy, Systems security, Data privacy, Operating systems, Distributed systems
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 Human-centered computing; visualization; information visualization; visual analytics; data science
Murphy, Gail Programming languages and software engineering; Software Development; knowledge worker productivity; software design; software engineering; software evolution
Ng, Raymond Tak-yan Data mining and analysis, health informatics, text summarization, text mining
Pai, Dinesh Robotics, computer graphics, medical imaging, neuroscience, sensorimotor computation
Park, Mi Jung Privacy-preserving machine learning algorithms, Compressing neural network models using Bayesian methods, Relationships between differential privacy and other emerging notions in machine learning
Pasquier, Thomas Development of more transparent computer systems, Whole-system provenance, Computational experiments reproducibility, Intrusion detection, privacy and compliance
Poole, David Computer and information sciences; Artificial Intelligence; Decision Analysis; Knowledge Representation; Machine Learning; Preference Elicitation; Probabilistic Graphical Models; Reasoning under Uncertainty; Relational Learning
Pottinger, Rachel Computer and information sciences; Computer Science and Statistics; data integration; data management; databases; metadata management
Roth, Andrew Bioinformatics; Cancer Evolution; Cancer omics data; computational statistics; Computational Biology; computational methods for studying clonal population structures and tumour evolution; Evolutionary cancer biology; genomics; Machine Learning; Methodological work in computational statistics; Molecular Oncology
Schmidt, Mark Machine learning; Numerical Optimizaiton; Probabilistic Graphical Models; Causality
Seltzer, Margo Computer Systems; Data Quality; Storage; Machine Learning & Systems; Systems for capturing and accessing data provenance; File Systems; databases; Transaction processing systems; Storage and analysis of graph-structured data; New architectures for parallelizing execution; Systems that apply technology to problems in healthcare.; Artificial Intelligence; Decision-making & Action; Software Practices; Networks, Systems and Security
Sheffer, Alla Computer graphics, shape modeling and geometry processing
Shepherd, Bruce algorithms, optimization, convex geometry, and graph theory
Shwartz, Vered Artificial Intelligence; Machine Learning; Natural Language Processing
Sigal, Leonid Computer and information sciences; Artificial Intelligence; Computer Science and Statistics; Parametric and Non-Parametric Inference; Computer Vision; Machine Learning; Semantic Recognition; Vision + Natural Language Processing; Visual Recognition and Understanding
Summers, Alexander Programming languages and software engineering; programming languages; software engineering
Sutherland, Danica
Van de Panne, Michiel Computer Science and Statistics; Computer Sciences and Mathematical Tools; Robotics and Automation; simulation of human movement; computer animation; Robotics; deep reinforcement learning; motor control; computer graphics
Wagner, Alan Parallel computation, interconnection networks, parallel programming environments
Wang, Daochen Quantum Computation, structures beneath quantum speed-ups, quantum cryptography
Wood, Frank Donald Computer and information sciences; Artificial Intelligence; Computational neuroscience; Machine Learning; Natural Language Processing; New models and inference algorithms; Probabilistic models; Probabilistic programming; Probabilistic programming systems; Reinforcement learning; Robotics; vision
Xiao, Robert human-computer interaction; Virtual/augmented reality



Barry Po

Doctor of Philosophy in Computer Science (PhD)

Baraa Orabi

Doctor of Philosophy in Computer Science (PhD)

Michael Yin

Doctor of Philosophy in Computer Science (PhD)

Betty Shea

Doctor of Philosophy in Computer Science (PhD)



Discover the amazing research that is being conducted at UBC!