MSc and PhD Research Interests

Below is a listing of research areas represented in the Computer Science Department. For some areas, their parent branch of Computer Science (such as Scientific Computing) is indicated in parentheses.

Research Area and Research Topics

1. AI: Computational Linguistics & NLP Research Topics: natural language processing (NLP), speech processing, information retrieval, machine translation, language acquisition, formal perspectives on language, cognitive modelling of language acquisition and processing, semantic change, lexical evolution, lexical composition, cross-linguistic semantic typology, applications of NLP in health and medicine, applications of NLP in the social sciences and humanities
2. AI: Computational Social Science Research Topics: novel digital data and computational analyses for addressing societal challenges, analysis of online social networks and social media, intersection of AI and society, application of machine learning to social data, analysis of large-scale online data for social science applications, algorithmic fairness and bias
3. AI: Computer Vision Research Topics: tracking, object recognition, 3D reconstruction, physics-based modelling of shape and appearance, computational photography, content-based image retrieval and human motion analysis
4. AI: Knowledge Representation and Reasoning Research Topics: knowledge representation, reasoning and inference, planning and decision making, search, multi-agent systems, sequential decision-making, cognitive robotics, reasoning about knowledge, belief, acting and sensing, constraint and satisfiability reasoning
5. AI: Machine Learning Research Topics:
  • Methods: deep learning, graphical models, reinforcement learning, stochastic optimization, approximate inference, structured prediction, representation learning
  • Theory: analysis of machine learning algorithms, convex and non-convex optimization methods, statistical learning theory
  • Focus in health: developing and applying machine learning methods that leverage the structure of data and problems in health including representation learning, reinforcement learning and inverse RL, prediction, risk stratification, and model interpretability
  • Focus in robotics: reinforcement learning, robot perception, learning and control, imitation learning, predictive models, exploration, lifelong learning, learning for self-driving cars
  • Focus in computer vision and graphics: image segmentation, detection
  • Focus in systems: cloud computing, operating systems, hardware acceleration for machine learning
6. AI: Robotics Research Topics:
  • Medical robotics, surgical robotics, continuum robotics, soft robots
  • Robot manipulation, kino-dynamic modelling of robots, motion planning, optimal control
  • Self-driving cars, mobile and field robotics, autonomous vehicles
  • Human-robot interaction, multi-agent systems

7. Computational Biology Research Topics: algorithms, machine learning, biomedical NLP, visualization for genomics, proteomics, and systems biology

8. Computational Medicine Research Topics: machine learning, human computer interaction, vision, speech and NLP for healthcare and medicine, translating computational tools to the bedside, use of mobile devices in medicine, assistive technologies: design and deployment of enabling technology to be accessible to broader groups in society

9. Computer Graphics Research Topics:
  • Computational fabrication: 3D printing, laser cutting, geometric optimizations
  • Computational imaging: novel 3D sensors, computational cameras, modelling real-world light transport, computer vision for photography
  • Geometry processing: discrete differential geometry, surface acquisition
  • Animation: physics-based animation, character and facial animation, biomechanical simulation
  • Shape modeling: sketch-based modeling and rendering
  • Augmented and virtual reality: interaction, perception

10. Computer Science & Education Research Topics:
  • Computer science education: teaching and learning of computer science. Examples include: introductory programming, advanced programming, software development, visual & end-user programming for non-computer scientists, computational thinking, fostering positive attitudes and motivating diverse learners in CS.
  • Using computer science to enhance education: using computer science techniques to investigate educational principles and design technology for learning. Examples include: human-computer interaction design of educational technologies, adaptive and personalized learning, crowdsourcing & human computation that involves learners and instructors, educational data mining, learning analytics, artificial intelligence and statistical machine learning in education (e.g. active learning, reinforcement learning for adaptive instruction), intelligent self-improving systems & intelligent tutoring systems, randomized A/B experimentation at scale, software learning, cognitive & interactive tutorials

11. Data Management Systems Research Topics: query processing and optimization, web data management, video and image query processing systems, applications of machine learning to processing massive data sets, approximate techniques for query processing, spatial query processing, database system internals

12. Human-Computer Interaction Research Topics:
  • Computer-Supported Cooperative Learning (CSCL)
  • Computer-Supported Cooperative Work (CSCW), crowdsourcing, human computation, education/learning at scale, MOOCs, interactive tutorials, software learning
  • Information and Communication Technology and Development (ICTD): analysis, design and development of computing technologies for sustainable development
  • Information visualization: visual analytics, perception & cognition, graphical design, interface design, interaction methods
  • UI technologies: input/output sensors and displays, interaction methods, ubiquitous computing, AR/VR, mobile and wearable computing, room scale computing
  • Critical computing: critical study of contemporary computing culture, design theory
  • Digital fabrication: methods, materials, tools
  • Human-robot interaction: interface design, modelling of robots and interfaces, shared autonomy, human-robot teamwork, user modelling, intent prediction

13. Programming Languages & Formal Methods Research Topics: study of programming languages, language theory, program analysis (static and dynamic), program logics and proofs of program correctness, program synthesis (automated programming), automated verification, model checking, quantitative reasoning about software systems, software safety and security, theorem proving

14. Quantum Computing Research Topics: algorithms, cryptography, complexity, verification of quantum computers, algorithms for near-term quantum computers, quantum hamiltonian complexity, quantum machine learning, optimization, applications to physics and chemistry

15. SC: Compilers for Scientific Applications Research Topics: domain-specific compilers, code generation, programming languages for scientific computing, autotuning, verification of numerical codes
16. SC: High-Performance Computing Research Topics:parallel algorithms, extreme-scale scientific computing, computational science, performance modelling, compilers for scientific computing
17. SC: Numerical Analysis and Computing Research Topics: numerical methods and analysis of ODEs and PDEs, solution of large sparse linear systems, numerical software, high performance scientific computing, scientific visualization, computational finance, medical imaging, stochastic models, effective software for systems of ODEs, DDEs and related problems, sensitivity analysis of ODE solvers

18. SN: Computer Architecture Research Topics: architecture, hardware, compiler optimization, hardware-based acceleration, high performance computing, energy-efficient computing, hardware/software cooperation, memory systems, hardware security
19. SN: Computer Networks Research Topics: network protocols/algorithms/systems/architecture, software-defined networking, theory of networks, online social networks, wireless networks, data centre networks, rate control, quality of service and pricing
20. SN: Systems Research Topics: operating systems, mobile/pervasive/ubiquitous computing, virtual machines, compiler optimization, file and storage systems, reliability, cloud computing, data-intensive computing, distributed systems, datacentres

21. Social Networks Research Topics: algorithms for social network analysis, graph structure of social networks, user behavior and interaction, reputation and influence, content distribution and sharing, incentive mechanisms, game theory, optimal design of online social networks, network formation and dynamics, social networks and economic theory

22. Software Engineering Research Topics:
  • Software modeling and reasoning: modelling and reasoning about software, including reasoning specifically about safety and security, product line analysis, analysis of change in requirements, designs and code, analysis in/for model-driven software development
  • Requirements engineering: analysis and modelling of software requirements, enterprise contexts and stakeholder dependencies
  • Social media and collaborative work: support for team collaboration and awareness, software as a service, open source communities and distributed software development

23. Sustainability Informatics Research Topics: computational models of climate change, sustainability analytics, energy efficient computing, and green IT

24. Theoretical Computer Science Research Topics: general interest in theoretical computer science including areas 25-30
25. Theory: Algorithms Research Topics: design and analysis of algorithms and data structures, continuous and discrete optimization, randomization, approximation, fairness, algorithmic aspects of social networks
26. Theory: Computational Complexity Research Topics: complexity of boolean functions (including circuit complexity, algebraic circuits, and quantum complexity), proof complexity, communication complexity, classes and resources (time, space, randomness)
27. Theory: Cryptography and Foundations of Privacy Research Topics: rigorous definitions of security, cryptographic algorithms and protocols, quantum cryptography, private data analysis
28. Theory: Game Theory and Social Choice Research Topics: equilibrium analysis, voting, resource allocation, incentives in machine learning
29. Theory: Graph Theory and Graph Algorithms
30. Theory: Distributed Computing Research Topics: algorithms and lower bounds for distributed computing problems