MacLean (maclean at cs dot ubc dot ca)
||by arrangement; open door policy
||Paul Bucci (pbucciat cs dot ubc dot ca)
||2015/16 Term 2
(opt: 543 priority in x360):
-- Mon 13:00-16:00 (required)
-- Thur 09:30-11:00 (required / supervised)
-- [NEW] Mon 16:00-17:00, after lecture
-- [WAS] Tues 11:00-12:30
| location (all):
||course dashboard (TENTATIVE)
|Enrolling late in CPSC 543: Students are expected to attend initial classes. Adding the course late is not encouraged, and will not be permitted at all after the 2nd class.
This is a graduate-level introduction
to the inception, creation and evaluation of physical
and multimodal human-computer interfaces. It emphasizes control and/or display of virtual environments through
the sense of touch for the purpose of human-system communication, as well as perceptual/attentional foundations. Types of communication include tactile signaling, affective touch, and shared control between human and smart system.
Format: lectures, assignments and labs,
reading and discussion of current literature; culminating in a team design or evaluation project of the student's choice.
Labs and projects will employ available active-haptic display
hardware ("active" means it can generate force),
and/or prototyping of passive physical interfaces; they
should focus on creative crafting of the interface to
suit the application.
This course's labs and projects are based on Arduino-based "haptic sketching:" a rapid iterative cycle in design explorations.
Each student will be required to purchase an Arduino prototyping kit, costing about $100 CAD (bought in bulk by the department and passed at cost to class), the contents of which you will use throughout the course (labs and project) and keep at the end. In addition the lab will stock tools and extra components and materials. You may find worthwhile for creativity's sake to scavenge and possibly purchase other low-cost sensors, actuators and materials in your project explorations (recycling encouraged!)
& current hot research areas
Physical user interfaces are anything
we touch to learn something from a computer or networked system, or to direct
it in some way. While this includes the computer mouse and
the power button, programmed physical interfaces can be powerful information displays, intuitive and undemanding of attention. Exactly how to make them work well, in an age of attentional overload, is what makes this a hot research topic. In this course, we'll use haptic force-feedack and tactile display technology as the means, either alone or in combination with other sensory modalities, and focus on the interaction design that's necessary for solving real problems.
Today, we know how to build and control
small safe robots, we have mastered some techniques
for haptic rendering, and we understand some of the
key human psychophysic and cognitive abilities that
translate into specifications for haptic displays. This
has paved the way to the current research frontiers:
Communication: How do we ideally
use these devices? What is the languague with which
we will communicate with or through them? How should
they be integrated into the world?
- Contextual Responsiveness: How can recent advances in sensor technology, machine learning methods, and other relevant technology be repurposed to problems of physical interaction -- for example, creative use of touch sensing to render an interface contextually sensitive and responsive (i.e. implicit as well as explicit sensing and reactions of the interface)
- Evaluation: How do we know when a
physical interface has improved an application in
some way? In many cases the benefits are long-term,
health-related (physical or emotional), or
emotional/aesthetic; despite their importance, these can be difficult to measure and quantify. When immediate performance improvement
is expected, it may be in dynamic situations tough
to reproduce in a test lab. Coming up with trustworthy
and practical test scenarios that will satisfy both
the academic community and a venture capitalist
is a challenge with rich potential rewards.
Cost: At present, active haptic displays
may be [relatively] cheap or high performance, but
are rarely both at the same time. Creativity is required
to make cheap devices feel good, and/or find new
technologies to reduce the cost of high performance.
Power: Some of the most provocative
applications for force-feedback displays are in
handheld and portable devices; yet the added power
and bulk of state-of-the-art displays make this
impractical. New actuation technology and unconventional
uses of existing technologies are needed.
- Applications: Above all, what will
ultimately be their best, most irresistable uses?
|The detailed schedule is maintained the course dashboard.
|I. Introduction - Physical Interaction Design
- Course overview; what and why
|II. Technology, 1st pass
- Simple force and tactile feedback: overview, actuation and sensing
- Haptic control architectures
|III. Ways to Physically Communicate
- Signals: haptic icons
- Affect: haptic and gestural
- Sharing control using forces
- Tactile sensing and responsive interfaces
- Abstractions and higher level control of information
|Technology, next step
- Intro to controls: the PID
- Rendering: Rigid surfaces and static linear building blocks
- Rendering: Dynamic systems, Textures
- Workload theory and multimodal interfaces
- Experiment Design/Analysis - overview; ethics
- Experiment Design/Analysis - workload
- Human haptic sensing & motor control
- Cross-modal interactions
wide learning goals
A student who successfully completes this course will ...
1) Know some basics about haptic interfaces,
their actuation, control and programming, able to:
- describe a variety of types of physical
- list and deploy a number of methods to sense the user-imposed state of a physical interface, and for actuating
- haptically render a rigid surface,
several different surface properties, and a deformable
- reate a simple dynamic haptic virtual environment
2) Be aware of application areas, and
how to think about new ones, able to:
- list several current and potential
applications of haptic feedback
- describe essential features of handheld
tools, both traditional and computationally augmented
- list and use a number of methods for rapidly prototyping
and designing physical application interfaces
3) Possess a rudimentary understanding of haptic psychophysics, able to:
- identify the primary mechanisms of
human haptic sensing
- describe key cross-modal relationships
between the haptic sense and vision / audition
- design a simple psychophysical test
4) Take a
physical interface concept through multiple iterative cycles of design and description, able to:
- use a sequence of complementary prototyping
methods to explore, develop and demonstrate a physical
- explore the relation between a physical
interaction modality and some kind of content
- [possibly] use basic experimental techniques
to evaluate the effectiveness of that interface
- document and share process and findings in a variety of formats, including an online blog
- design and deliver a research presentation
Physical user intefaces are intensely
interdisciplinary: I encourage students from Computer
Science, Engineering (Mech, ECE) and Psychology with
interests in HCI and novel interface technologies to
take this course. It will make both our discussions
and our projects more interesting.
Given the interdisciplinary part, prerequisites
are minimal, but be prepared to absorb new information
in a variety of areas.
- decent programming skills, ideally in 2 or more languages to facilitate picking up more
(C/C++, Java). The main language used within class is Arduino, but your project may benefit from other tools.
- basic physics (phys 170
- Introductory HCI: cpsc 344/544 or equivalent, pre- or co-req. Students coming
from other departments (and welcomed for their
diverse background) may find it difficult
to access this recommendation or fit it into their curriculum.
These individuals will have a mild but
overcomable handicap; if a minority, you should
be able to pick up necessary background in
part from your team and classmates.
Skills that are especially welcomed: The following are not necessary, but if you have one or more it will come in handy!
- introductory level controls (you
can write and rapidly tune a PID controller).
- introductory robotics
- hardware programming experience. Familarity
with multithreaded coding and device I/O on at least
one platform, with ability to transfer knowledge
- basic mechatronics experience (circuits,
micros and mechanisms)
- basic experiment design & statistical
- basic haptic and/or auditory psychophysics
- basic modelmaking or machine design
/ fabrication experience & access to facilities
Finally, bring your creative and artistic
side. While a technical background is essential
to build interfaces, some of the best ideas and intuitions
for them come from the hours you spend with old-fashioned
hand tools, musical instruments, drawing/painting/sculpting
implements, and anything else where you've found the
physical medium allows you some control over content
that a keyboard and mouse doesn't.
Deliverables need to be turned in on time and according to instructions to allow marking, feedback and collaboration / peer review with your team and classmatees to proceed smoothly. Please familiarize yourself with the class rhythm and adhere to it.
Late deliverables (reading questions, assignments/labs, project blog posts and other project deliverables) will be reviewed as possible, but will suffer a subtantial late penalty:
- reading questions: no credit given for late emails; marked down for not following instructions on format that allows efficient filtering
- assignments/labs and project blog posts: immediate 10% reduction, increasing by amount late
- other project deliverables: case by case. If there's a problem, clear it with instructor ahead of time.
This is a highly participatory and project-oriented
course. Final distribution of credit (adjusted slightly at end of term to more accurately reflect effort distribution observed by instructor. Balance between project and non-project components remained the same).
assigned readings & discussion questions [individual] --- 1-2 papers are assigned for reading for each leacture. Students must complete the readings before class and send written questions/comments to the instructor PRIOR to class. (details)
||assignments and labs
[indiv & group] --- several deliverables during
first half of course.
| Project-related: |
team project [group] --- the iterative design project (several phases) will be a primary activity
throughout the course, and replaces a formal
final exam. Time in and outside of class is available
for progress checking and consulting with
the instructor. While a variety of approaches to the project may be taken (e.g. iterations that branch, or conversely build upon one another), marks will depend on:
- originality and elegance
of concept and approach
- stretch and ambitiousness of explorations
- progress over the term, according to criteria provided in class
- adherence to progress milestones
- timelieness and quality of interim
- quality of final public presentation
- completeness and quality of final team-written report
||personal project blogs [individual] --- individuals maintain personal blogs documenting their perspective and contributions to their team project. These blogs are assessed on a 4-level mark scheme and shared with the class.
||peer evaluation [individual] --- teammates will assess your contribution to the project.