See the Course home page for grading information. If there are any problems, contact the course staff either through the course forum (preferable for general issues related to the course, including project works) or by e-mail (main contact of general course related issues is Tomi (Aalto e-mail: tomi.peltola); for project works, main contact is Mert (Aalto e-mail: mustafa.celikok).
Paper presentation and handout
Choose a paper for you presentation in mycourses: Assignments -> Paper presentation assignment selection. The presentations are prepared in groups of 1-3 students (there will be only one presentation of each paper; you can divide the work within your group as you see appropriate).
The presentation should be about 20 minutes, which will then leave us about 25 minutes for discussing the paper. There will be only one presentation per paper, so if there's more than one student assigned to a paper, you will need to prepare the presentation in group and choose how to divide the workload (in any way you decide is useful, but everyone should contribute to a similar extent).
Some papers can be difficult if your background does not coincide perfectly with them and contain a lot of material. It is not necessary to understand everything and it is not desirable to try to cover everything in your presentation. Please, try to focus on giving some necessary background or context for understanding the paper (unless it should be covered by the prerequisite knowledge) and the main ideas/methods and key results in the paper. You can also add points to discuss/questions about what was unclear to you or of interesting connections to other work to the end of your presentation to initiate the discussion part.
You should also prepare a short handout of the paper. This should be returned to mycourses within one week after the presentation (filetype: PDF; please, post it to the course forum as a new topic in General discussion; this allows possible further discussion). The structure should be similar to the learning diary (see below, 2-3 pages), except with more focus on (1) and (3) and, in addition, it would be great if it would include notes on the discussion (that happens after your presentation in the meeting) of the paper.
Paper presentation is required for passing the course (=getting credits for the course).
Learning diaries on the seminar papers
Learning diaries should be returned in mycourses (Assignments -> Learning diaries) before the meeting where the paper is discussed. (To facilitate discussion, the idea is that everyone would read the papers to be discussed in the meeting before the meeting. The learning diaries provide some structure and motivation for this.)
You can choose on which papers you return the learning diaries. The number of learning diaries returned will determine your grade (for the 3 ECTS part of the course). So, you will need to return at least one learning diary to get grade above 0. If you return 5 learning diaries, your grade will be 5. In principle, you can return 11 learning diaries (there's 12 papers in total, but you'll present one of the papers, so that will not count for the learning diaries), but, of course, the maximal grade is 5.
Structure (1-2 pages; file type: PDF): You can adapt the structure to your liking, but the following gives the basic idea: (1) brief summary of the paper (e.g., main contributions, key ideas, take away messages, possible limitations), (2) what was unclear/what did you not understand, (3) are there connections to previously discussed papers or your own research or interests.
Choose a project work topic in mycourses: Assignments -> Project work topic selection.
You can choose your focus in the project work: if you are more interested in the implementation, you can try to implement the algorithms yourself and discuss the implementation and computational issues in your report; if you are more interested in the application, you can use any available code, and then experiment with different settings or extensions of the scenarios and describe these in the report. In both cases, however, you should include some information on the implementation/modelling and some results of using the model for the tasks (but the emphasis of your work can be on one or the other).
(1) Project report (due at the end of the course; return in mycourses: Assignments -> Project work report):
- 3-6 pages.
- Structured like a short scientific paper (plus an additional short section for reflecting on the work and feedback to course staff about the project work): Abstract, Introduction, Method, Results, Discussion/Conclusion, Reflection and feedback about the project work (you can adapt the section titles to your liking, but structure should be approximately this).
(2) Short presentation of your work (final meeting; ~10 minutes or poster depending on the number of participants).Topics:
Project 0: Suggest your own topic
A plan similar to the description of the other project topics is required to be returned by DL of the project topic selection.
Project 1: Interactive Bayesian optimization
In this project, you will implement a system that uses Bayesian optimization for interactive optimization of a generative system’s parameters to user’s preferences. First, familiarize yourself with basics of Bayesian optimization and the Brochu et al. paper. In this project, you can simplify the task of querying the user by just asking the user to evaluate a single candidate on some ordinal or continuous scale (e.g., 1-5), instead of the preferential feedback (choosing between alternatives). It is suggested that you first implement the approach for a simple known 1D function and then extend to some more interesting task [possible ideas, although no idea how feasible these are: generative art (audio or visual; see http://teropa.info/loop for some inspiration) or design. (Note: BO will probably not work efficiently with high-dimensional parameters.) Ask other students or staff for ideas if you cannot come up with anything]. You can use GPyOpt for the Bayesian optimization code (http://sheffieldml.github.io/GPyOpt/) or try prefopt-package (https://github.com/prefopt/prefopt) if you’d like to try implementing the preferential feedback approach.
 Brochu et al. A Bayesian interactive optimization approach to procedural animation design. 2010, Proceedings of the 2010 ACM SIGGRAPH/Eurographics Symposium on Computer Animation, https://dl.acm.org/citation.cfm?id=1921443
Project 2: Computational rationality in human-computer interaction
In this project, the task is to implement a reinforcement learning agent with human-like sensorimotor bounds, and to study if human-like motor performance (e.g., gaze patterns, cursor movements) emerge. You can replicate and experiment with an agent for a task in which prior examples are available in literature, menu interaction and visual search, or you can choose the interactive task, and we are happy to give feedback on ideas. You can use existing code implemeting reinforcement learning algorithms (see the general instructions for how to focus your work).
 https://www.researchgate.net/profile/Xiuli_Chen7/publication/312922361_A_Cognitive_Model_of_How_People_Make_Decisions_Through_Interaction_with_Visual_Displays/links/59ddd4e3aca272b698f8e4bf/A-Cognitive-Model-of-How-People-Make-Decisions-Through-Interaction-with-Visual-Displays.pdfProject idea contributed by Antti Oulasvirta.
Project 3: POMDP modelling of agents and probabilistic programming
In this project, the task is to model possibly inconsistent agent behaviour using POMDP. Write an implementation or/and experiment with different scenarios, for example, in simple gridworld settings. See [1,2] for some possible ideas, or come up with your own. You can use, for example, the probabilistic programming language WebPPL (see [1,2]) for implementation (or Python or other programming languages).
 Owain Evans, Andreas Stuhlmueller, Noah Goodman. Learning the Preferences of Ignorant, Inconsistent Agents, AAAI2016. https://www.aaai.org/ocs/index.php/AAAI/AAAI16/paper/view/12476
 Modeling Agents with Probabilistic Programs book, https://agentmodels.org/
Project idea contributed by Antti Oulasvirta.