CMPSC 291I Haptics: Touch Perception, Interaction, and Engineering

Haptics lies at the intersection of robotics, human-computer interaction, and computational and human perception. The term "haptics" is often used to refer to science and engineering related to the sense of touch. This course introduces human haptics, including sensory specializations and touch perception. It reviews the engineering of electronic technologies for haptic (touch) feedback, emerging technologies, and the design of haptic systems for human-computer interaction, sensory substitution, virtual reality, augmented reality, and other emerging areas.

CMPSC 291A Adversarial Machine Learning

Deep neural networks have achieved remarkable success owing to their superior predictive performance. Yet, they are extremely vulnerable to adversarial attacks. This makes adversarial machine learning an emerging topic. The idea of learning with adversaries is crucial for expanding the learning capability, ensuring trustworthy decision-making, and enhancing the generalizability of AI models. Despite diverse adversarial concepts and applications, they share very similar learning, computation, and optimization foundations.

CMPSC 190I Deep Learning

Deep Learning has been driving the progress of AI in the past decade and has found versatile applications in many products and everyday life. Examples include recommendation systems for online videos, automatic language translation, smart home assistants, and autonomous driving vehicles. This course will introduce general principles, methods, network architectures, and applications of Deep Learning. We cover neural network architectures including convolutional neural networks, recurrent neural networks, Transformer, and graph neural networks.

CMPSC 190B IoT Systems

The Internet of Things (IoT) embeds ordinary physical objects in our environment with digital intelligence -- via sensing, control, communications, and compute capabilities. As such, IoT advances are likely key drivers of the next computing revolution.  This course will teach IoT systems end-to-end, including the fundamentals of IoT devices, software architectures, communication protocols, security approaches, as well as the distributed, multi-tier (e.g. sensors, edge, and cloud) programming and deployment considerations needed to support emerging IoT applications.