GAMEPLAY PACING Using a World of Warcraft client-side plugin created to record data about players' progress through a cooperative scenario and analyzing the data, the level of difficulty can be quantified in order to design scalable and adaptable scenarios to challenge players.
WHY ARE ORGANICS HARD TO KILL? Despite the complex biochemical processes at work in cells, you can mess with a cell's DNA, douse it in toxins, and expose it to extreme temperatures and it will survive. We're working to uncover aspects of cellular design that evolution has used to make living systems so resilient.
ASTROPHYSICS SIMULATIONS Integrating continuous and discrete event paradigms to provide a new and powerful approach to the simulation problems of continuous simulations such as those for astrophysics and weather, using reverse computation as a key component.
ORIGIN OF LIFE ON EARTH Ribonucleic Acids (RNAs) could be at the origin of life on earth. We develop algorithms to design synthetic biological systems and simulate molecular evolution based on RNAs.
ADAPTIVE CACHING CumuloNimbo is a novel platform as a service (PaaS) that will provide high scalability (100+ nodes), high availability, and adaptability for traditional transactional workloads without sacrificing data consistency and ease of programming as is the norm in today's PaaS.
3D GENOMICS Two metres of DNA fit into the nucleus of each cell. The precise way DNA is packaged is highly organized, dynamic, and has major implications on how genes are expressed. In collaboration with the Dostie Lab, we investigate experimental and computational approaches.
LOCATION VERIFICATION SYSTEM Location-based services (LBS) is a computer program-level services used to include controls for location and time data as control features. LBS has many uses in social networking today, through the mobile devices' network accessing its geographical position.
REINFORCEMENT LEARNING AND TIME SERIES ANALYSIS Algorithms for learning good representations of time series data and how to control a stochastic, complex environment to maximize a long-term objective. Applications in medical decision making, energy management, e-commerce, music, etc.
adapID Designing secure e-ID card apps to protect citizens’ privacy with research in digital credentials, secure integration of biometry and cryptology, reliable dispute handling, trusted modules for securing applications, and services and legal aspects of trust in an open network.
SOCIAL ACCESS CONTROL Include social factors in confidentiality control and integrity management decisions to create flexible schemes where policies can be expressed in terms of social linkages and risks of sharing or upfdating can be related to the interactions observed in the social network.
TaskNav With the TaskNav project, we are exploring the use of natural language processing to re-index programming tutorials so that they map to questions programmers have.
PROMIS The goal of this international collaboration with INRIA, CMU and UMn is to develop a unified framework for specifying and certifying safety properties of computational systems, in particular distributed computation.
MODAL LOCOMOTION Efficient locomotion should exploit the natural passive response of the character's dynamical system, specifically focusing on the natural vibration modes, which are affected by parameters such as shape, size, mass, and joint stiffness.
BOOLEAN FUNCTIONS Boolean functions are central to complexity theory and combinatorics as objects of interest in these areas can often be represented as such. Fourier analysis provides some of the strongest tools, with applications to graph theory, circuit complexity, communication complexity, etc.
TEXTURE AND FOCUS Boolean functions are central to complexity theory and combinatorics as objects of interest in these areas can often be represented as such. Fourier analysis provides some of the strongest tools, with applications to graph theory, circuit complexity, communication complexity, etc.
SOCIAL COMPUTING Designing digital systems to make socially produced information available to their users, either directly, after having been filtered and aggregated, or indirectly - in all cases, info that is produced by a group of people is used to provide or enhance the functioning of a system.
TOUCHRAM TouchRAM is aimed at developing scalable and reusable software design models, giving the designer access to a vast library of reusable design models encoding essential recurring design concerns and featuring a multi-touch enabled user interface.
SOOT Provides four intermediate representations for analyzing and transforming Java bytecode, and can be used as a standalone tool to optimize or inspect class files, as well as a framework to develop optimizations or transformations on Java bytecode.
POWER MINIMIZATION OF MOBILE POSITIONING A modern mobile device must position itself and support remote position tracking. Research involves building low-power location-based services that can run for hours on mobile phones depending on how different phone features and different types of LBSs consume power.
POST-QUANTUM ZERO-KNOWLEDGE Describing and relating several zero-knowledge languages from the fields of coding theory, lattices, and multivariate polynomials. As far as we know these problems are intractable, even equipped with a quantum computer.
GSSP We are developing an interface for controlling mobile robots that combines aspects of graphical trajectory specification and state space programming. Our objective is to facilitate the programming and debugging of robot execution plans, containing both scheduled trajectories and activities, as well as contingency plans and failsafe behaviors.
Event Extraction and Understanding What happens at a play? The audience enters the theatre, the lights go off, then the performance begins! We are developing computational models to extract typical sequences of events and their participants from text.
Help us send McGill students to the Grace Hopper Celebration of Women in Computing...
The Evolving Internet
Diverse Particle Selection for Inference in Continuous Graphical Models
From the Linux Kernel to Cryptography APIs: Supporting and Leveraging Software Product Lines
FACULTY CANDIDATE TALK
Boosting Developer Productivity: How Personal Data Will Revolutionize Software Development
FACULTY CANDIDATE TALK
The Secret Life of Mobile Applications
FACULTY CANDIDATE TALK