|Deletions are marked like this.||Additions are marked like this.|
|Line 1:||Line 1:|
|= DBM130 - Designing Intelligence in Interaction - Q2 2016 =
== Assignment resources ==
* The assignment resources are mentioned in the AssignmentDescription
== Schedule ==
== Lecture and workshop materials and instructions ==
=== Lecture 1: Intelligence for optimization - Loe Feijs ===
Intelligence for optimization. There exists algorithms for solving a class of problems called "combinatorial optimization". Typical examples are finding the shortest path in a network (packet routing), finding a tour along cities (delivery service) or finding an optimal path along graph edges (3D printing).
Loe Feijs will illustrate the famous traveling salesman problem showing an interactive and intelligent G-code generator project for shoe soles (joint work with Troy Nachtigall). Another illustration is the optimal computerized embroidery path for the Pied de Pulse project (joint work with Marina Toeters).
Feijs, L.M.G. & Toeters, M.J. (2016). Pied de pulse: packing embroidered circles and coil actuators in pied de poule (houndstooth). In C. Sequin, D. McKenna, E. Torrence, R. Sarhangi, B. Torrence & K. Fenyvesi (Eds.), Proceedings of Bridges 2016: Mathematics, Music, Art, Architecture, Education, Culture, Jyväskylä, August 9-13, 2016 (pp. 415-418), http://archive.bridgesmathart.org/2016/bridges2016-415.html
Feijs, L.M.G., Nachtigall, T., Tomico, O. Sole Maker: Towards Ultra-personalised Shoe Design Using Voronoi Diagrams and 3D Printing. Proceedings of SMI'2016 Fabrication and Sculpting Event (FASE),
Reprinted in: Hyperseeing, Tthe Publication of the international Society of Arts, Mathematics and Architecture; SUMMER 2016, http://www.geometrysummit.org/proceedings/fase2016/papers/1.pdf
* [[attachment:Lecture1.pdf|Lecture 1 slides]]
* [[attachment:shortestpathalgorithms.zip|Lecture 1 examples in processing]]
=== Lecture 2: Information processing for learning systems - Matthias Rauterberg ===
* [[attachment:Lecture2.pdf|Lecture 2 slides]]
=== Lecture 3: Adaptivity in games - Erik van der Spek ===
Games and playful interactions have the unique ability to entice users to start interacting and keep them fully engaged with products for long periods of time. A wellknown theory in this regard is that of Flow, which describes that people should be optimally challenged according to their skill level. But what is cognitively interesting for one might be boring for another, necessitating intelligent adaptation to the player's cognition and abilities. This lecture will show a number of these adaptive approaches, and also, why they might be wrong.
* [[attachment:Lecture3.pdf|Lecture 3 slides]]
=== Lecture 4: Design of social scenarios - Emilia Barakova ===
This lecture will introduce four classes of computational problems that most often need to be resolved in design applications. Especially Pattern recognition will be featured as potentially most frequently encountered problem.
* [[attachment:Lecture4.pdf|Lecture 4 slides]]
* Reading material: [[attachment:PatternClassification.pdf]]
=== Lecture 5: Supporting the design of intelligent systems with OOCSI - Mathias Funk ===
Designing intelligent products nowadays often means designing intelligent systems, or simply designing systems that act in smart ways for the purpose of improving the quality of life for stakeholders. System design is neither easy, nor well-understood as it happens in a multi-disciplinary design space that borders interaction design, complex adaptive systems, and engineering distributed systems. In this lecture/week we will look at the challenges, important values and tools for system design. We will use OOCSI and its system-level building blocks to design systems in a hands-on way; this will be done in a short group project.
* [[attachment:Lecture5.pdf|Lecture 5 slides]]
=== Lecture 6: Control systems, dynamic systems, and Blocks World - Frank Delbressine ===
Topics to be dealt with are:
* Dynamical systems
* Feedback Control
* Robot Programming (if time is left)
Regarding Dynamical Systems:
All systems, especially mechanical systems, show oscillations. How do these oscillations look like. What are factors influencing these oscillations? How can these oscillations be minimized?
Regarding Feedback Control:
One method to control the behavior of systems, not only mechanical, is feedback control. How does this work? Why does it work? What kind of controllers are there and what is their performance?
Regarding Robot Programming:
If I have time left. I want to talk about Blocks World. A famous example from the book of Terry Winograd, "Understanding Natural Language”.
* [[attachment:Lecture6.pdf|Lecture 6 slides]]
=== Lecture 7: Pattern recognition and neural network - Jun Hu ===
=== Lecture 8: Simulating behavior - Peter Peters ===
Simulating complex systems and behaviors using !NetLogo
* [[attachment:Lecture8.pdf|Lecture 8 slides]]
== Team and coach division ==
== Deliverables ==
* As a team (of 4 or 5 persons) you will define a project. Using the theory (and practice) of this course, you design an intelligent product/system/service. As a team you will be coached by one of the lecturers (assignment of lecturer to team can be seen above). You will meet the coach twice (the first time on 20/12/2016 or 22/12/2016, and the second time on 10/1/2017 or 12/1/2017). Expert advice is available from the lecturer (which one depends on the topic you want advice on). To be delivered are:
* A presentation (to be presented on 17/1/2017 or 19/1/2017).
* A final report describing the rationale, built application (due 27/1/2017).
* A personal reflection per team member (to be added as appendices in the report).
== Rubrics ==
== Installing NetLogo ==
1. Follow the instructions on the [[https://ccl.northwestern.edu/netlogo/|NetLogo website]] to download and install !NetLogo
1. Check out the description [[https://ccl.northwestern.edu/netlogo/docs/|here]] and the [[https://ccl.northwestern.edu/netlogo/videos.shtml|videos]]