Only pens and simple calculators (nelilaskin) or function calculators (funktiolaskin) allowed. Books, notes, phones, computers, graphical calculators etc. are not permitted.
Maximum number of points is 50. The minimum required for passing the course is 25. Grading emphasizes conceptual understanding over mathematical precision. Please note that equivocated answers -- i.e., fishing points by generating answers that are blatantly false or might in real life have damaging consequences -- will be penalized by deducing points.
Contents and learning objectives
Primary material: 1) Lecture slides and 2) assignments marked as Recommended. These are sufficient for a passing-to-good grade. Pay attention to topics marked as "Learning Objectives". Secondary materials: To aim for the highest grade, we advise reading selected papers listed in Materials as well as papers flagged in the assignments.
Format and task types
The exam will consist of 10 pages. Each page will contain one task worth of max. 5 points. The following task types may be used to test general understanding:
- Definition: E.g., define a concept in text or by a diagram.
- Explanation: E.g., explain a concept, model, or theory briefly in text or by a diagram.
- Assessment of a theory or model: E.g,. analyze pros and cons of a given theory, model, or concept.
- Short essay: E.g., provide an account of some phenomenon in interaction from a perspective coming from the course materials.
The following task types may be used to test the ability to apply knowledge to practical problems. In these problems:
- Analysis: E.g., given a design, analyze its different aspects from the perspective of a concept, model, or theory.
- Comparison: E.g., given two designs, analyze their pros and cons from the perspective of a concept, model, or theory.
- Numerical problem: E.g., given a design, identify the value of some property or outcome using a model.
- Re-design: E.g., given a design, propose a simple improvement by reference to a concept, theory, or model.
- Assessment of a design: E.g., given a design, analyze its pros and cons using appropriate models, concepts, or theories provided in the course. Assessment can be verbal or numerical.
LECTURE 1: INTRODUCTION
(1) Concepts: Objective function; Constraint; Task instance; Optimization; Predictive modelling; Inference; Sensitivity analysis. (2) Computational interaction: characteristics as a research topic and examplary applications. (3) Example task: Define "element grouping" as an objective function.
LECTURE 2: INTEGER PROGRAMMING
(1) Integer programming: what and why and why not; (2) Concepts: Integer program; decision variable; objective function; constraint. (3) Example application: The same as above for Lecture 1 but as an integer program.
LECTURE 3: BLACK BOX OPTIMIZATION
(1) Black box optimization as opposed to exact methods. (2) Concepts: heuristic optimization; meta-heuristic optimization, be able to explain e.g. how simulated annealing works. (3) Example task: shown a piece of code implementing a heuristic approach for computational UI generation, tell about pros and cons of the approach.
LECTURE 4: HUMAN PERFORMANCE MODELS
(1) Concepts: Response processes. (2) Models: Fitts' law (a must!), Hick's law, KLM (on slides). (3) Example task: Analyze a UI using a model and propose an improvement.
LECTURE 5: PROBABILISTIC DECODING
(1) Probabilistic decoding, its relationship to information theory (limited capacity channel), and example applications; (2) Define a probabilistic decoder; (3) Example task: Explain how Bayes theorem is used in a touch or language model.
LECTURE 6: BAYESIAN OPTIMIZATION
(1) What, why, and when, difference to combinatorial optimization; example applications. (2) Concepts: proxy model, acquisition function, exploration/exploitation problem. (3) Example task: Given a concrete task (think: the color preference problem or similar), explain how BO works.
LECTURE 7: BANDITS
(1) What and when and why; applications; also: difference to BO; (2) Concepts: the bandit problem, multi-armed bandit, contextual bandit, regret. (3) Example task: e.g., explain how bandits can be used to recommend designs to a designer. (4) Thompson sampling: if you get this, great!
LECTURE 8: HUMAN VISUAL SYSTEM MODELS: SALIENCY
(1) Visual saliency: definition (important!) and applications; (2) Be ready to explain: How "classical" (non-parametric) models work (like Itti-Koch) versus newer, data-driven models? Pick one model from each category and be ready to explain; (3) Example task: given a graphical layout, explain what would draw attention according to a saliency model and why.
LECTURE 9: SIGNAL PROCESSING
(1) Input sensing flow, using mouse as the example; (2) Concepts: transfer function, information, sensor, recognition, hysteresis, calibration. (3) Example task: Filtering: learn at least one filter and be ready to explain (visually) how it works in input processing. Another: compute information in a simple input sensing scenario.