======T-720-ATAI, ADVANCED TOPICS IN ARTIFICIAL INTELLIGENCE, SPRING 2016====== ====This Is The Main Page For The Course==== **Instructor: Kristinn R. Thórisson** \\ **Teaching Assistants: Jordi Bieger (Throstur Thorarensen)** \\ **8 ECTS Units, full Master's-level course** \\ **Days: Tuesdays & Fridays** | **Time: 12:20 - 13:50** | **Classroom: M113** \\ **[[#Class Schedule|Class Schedule]]** | **[[public:t-720-atai:ATAI-16:readings|Readings]]** \\ [[#W5 FEB]] | [[#W6 FEB]] | [[#W7 FEB]] | [[#W8 MAR]] | [[#W9 MAR]] | [[#W10 MAR]] \\ [[https://piazza.com/ru.is/spring2016/t720atai2016/home|T-720 on Piazza]] \\ \\ ====Course Description==== The course focuses on the phenomenon of intelligence and how to create a truly intelligent machine. In the past 10-15 years attempts to answer this question has been have been made under the rubric of //artificial general intelligence (AGI)//, developmental robotics and cognitive robotics. Looking further into the future than linear advances on some of the most popular technologies being applied in various industries today, the course centers on the issues of intelligence architecture, system autonomy, realtime attention, anytime planning, model-based knowledge representation, and what could be considered holistic integration issues. Ideas from systems theory, constructivist AI, control theory and cybernetics provide a conceptual foundation. The course takes inspiration from the questions asked by the founders, e.g. Turing, McCarthy, Minsky and others, -- //What is intelligence?// and //How can we implement intelligence in a machine?// -- as well as the ideas of cyberneticians and early pioneers of systems science. Historical background and relevant topics from constructionist AI ("good old-fashioned AI") provide a contrasting backdrop for our treatment of how to build more autonomous and self-contained intelligent systems than possible with today's methods. Relevance of AGI to autonomous robotics and systems operating in the physical world will be discussed. ===Prerequisites=== * Programming experience necessary (LISP, Prolog, Haskel or related is a plus) * A prior introductory class in one or more of the following is recommended: Artificial intelligence, Simulation techniques, cognitive science * Dedication * Patience, resilience, and focus to read at 2-3 papers per week. === Goals === After taking the course, diligently attended the classes and doing the assignments, thorough reading, and participation in discussions, students should be able to: * Identify key challenging research questions related to advanced machine learning and (AML) artificial general intelligence (AGI) * List the methodological difficulties and proposed solutions to building AML/AGI systems * Explain key components of some AML/AGI architectures, and how these relate to the creation of truly intelligent machines of the future * Students should have a good idea of: * The limitations of current AI methodologies * How AGI differs from "narrow AI" * Some AML/AGI projects in progress * What the main requirements are for building complete minds * What methodologies are currently available and applicable for building complete minds * How software architecture plays a central role in AI, robotics, and AGI * How to apply presently-known techniques and methodologies for building complex AI systems * Emergence, self-organization, and synergism * Students will have had hands-on experience with: * Selected machine learning methods, notably reinforcement learning * One programming environment targeting AGI \\ ====Readings==== * [[public:t-720-atai:ATAI-16:readings|Readings and Study Material page]] - readings and material organized by topic. * To see readings in temporal order, see [[#Class Schedule|schedule]] below on this page. * Readings for the class will be published incrementally. \\ ====Assignments==== //Note: This assignment outline is indicative only; until February 31st some details of these assignments, and their percentage of total grade, may change.// * Students should hand in their assignments (using MySchool) on time; if there will be any unnecessary delay in handing in the assignment then students must assume the potential of a resulting lower grade. === Programming Assignments === These will be assigned regularly in the first half of the course. * Individual programming assignments will be handed out in the first 8 weeks. * Each assignment counts 5% of the final grade. An extra 1% bonus point (over and above 100%) will be given for quality hand-ins (quality is judged by the depth of the insights expressed, meticulousness, thoroughness and overall quality and coherence). * The code for TEAL can be found here: [[https://github.com/ThrosturX/rl-mouse|TEAL on GitHub]] * Instructions for each exercise will be provided at the end of the class they are assigned in. * **Grading: 15%** of final grade. === Class Discussions === This will be pursued in the second half of the course. * Regular Discussions of reading material will be held for 30-40 minutes in Friday classes. * For discussions we will use the forum on [[https://piazza.com/ru.is/spring2016/t720atai2016/home|Piazza.com]]. * After most Tuesday classes in the second half of the course the instructor will post a link on the online forum to a paper or article on an interesting aspect of AI (more likely than not related to the last 2 week's lecture topics). You need to read this paper or article by Thursday at midnight and post, under the same forum thread, 2 questions you have about the contents of the reading. * Your posting must arrive by 23:59 on Thursday night (unless an exception has been explicitly mentioned) to count towards your paper discussion grade. * The questions can point out concepts that you have difficulty understanding, but preferably they should be questions that provoke discussion from the material. * In the discussion section of the following Tuesday class, chosen questions from those submitted will be discussed by the group as a whole and you are expected to participate. * Participation in class discussions is an important part of the course, and mandatory. * **Grading: 20%** of final grade. * Each topic counts equally towards the grade * Attendance in 2 in-class discussions may be omitted with no effect on grade * In-person attendance at 2 discussion classes may be omitted with no effect on grade === Pair Programming Project === * As a final programming exercise students will pair up in teams of 2 students per team. We will decide no later than Feb 19 whether this project will be: * A project of your own design using the TEAL platform. * A project of your own design using the AGI-aspiring system NARS [[http://code.google.com/p/open-nars/|NARS environment]] (see [[http://code.google.com/p/open-nars/source/browse/trunk/nars-dist/Examples/|examples]]). * Some other kind of project and/or combination of things. * **Grading of programming assignments: 10%** of final grade. //Note: percentage of final grade may change.// * [[:public:t-720-atai:ATAI-16:programming_assignment_5|Programming Project 5]] === Short Essay === * One short essay. * **Document & Presentation: 10%** of final grade. * [[public:t-720-atai:atai-16:short-essay-page|Short essay page]] * **Due**: //April 8 @ 10:00 am// * **Mandatory presentation of Short Essay:** //April 8 @ 12:20 - 14:00// ===Final Exam=== * Final Exam will **count 45%** of final grade (includes 2 bonus points, each counting 0,25 out of 10,0). //Note: percentage of final grade may change.// * Subject matter / material: Any and all material covered, in readings, assignments, discussions, and in class. * A grade of 4,75 or higher on the final exam is required to pass the course. * Handing in the assignments is not a requirement to get permission to take the final exam. * Assume to be able to draw architectural diagrams, write pseudo-code, and write (short) essays. * Closed-book: No helping material is allowed. * [[:public:t-720-atai:ATAI-16:final_exam_examples|Example Final Exam Questions]] \\ \\ --------------------------------------- --------------------------------------- ==== Class Schedule ==== ===W1 JAN === **F-1 TUE 12.01.2016** \\ Topics: Introduction to course structure, programming exercises & project, reading material, discussion sessions. * [[Lectures Notes F-1 12.01.2016]] **F-2 FRI 15.01.2016** \\ Topics: Goals, plans, knowledge, agents, tasks & environments * [[Lectures Notes F-2 15.01.2016]] * [[Programming Assignment 1]] * //Readings assigned for this class:// \\ * Papers in the [[Readings#Intelligence|Intelligence section]] on the [[Readings|Readings]] page. * First 3 papers in the [[Readings#Artificial Intelligence|Artificial Intelligence section]] on the [[Readings|Readings]] page. * First 2 chapters of the paper [[http://www.atlantis-press.com/php/download_paper.php?id=1900|Cognitive Architecture Requirements for Achieving AGI]] by J.E. Laird et al. //Note: Assigned readings should be read **before** class. Alternatively, as a less desirable alternative, readings may be read after class. Reading the assigned readings not at all should generally be avoided.// --------------------------------------- ===W2 JAN === **F-3 TUE 19.01.2016** \\ Overview of key concepts \\ Reinforcement learning * [[Lecture Notes F-3 19.01.2016]] * //Readings assigned for this class:// \\ * First 2 papers in the [[Readings#Reasoning|Reasoning section]] on the [[Readings|Readings]] page. * First paper in the [[Readings#Meta-Cogntion|Meta-Cogntition section]] on the [[Readings|Readings]] page. * First paper in the [[Readings#Attention|Attention]] on the [[Readings|Readings]] page. * Optional: [[https://www.youtube.com/watch?v=2pWv7GOvuf0|Introduction to RL video]] by D. Silvers. **F-4 FRI 22.01.2016** \\ Systems & Architectures, good old-fashioned AI, control theory \\ Review of Programming Assignment 1 * [[Lecture Notes F-4 22.01.2016]] * [[Programming Assignment 2]] * //Readings assigned for this class (read before lecture):// \\ * First 2 papers in [[Readings#Introductory Material Constructionist AI|Introductory Material Constructionist AI section]] on the [[Readings|Readings]] page. --------------------------------------- ===W3 JAN === **F-5 TUE 26.01.2016** \\ Requirements for artificial general intelligence \\ Artificial general intelligence, features of intelligence, architecture * [[Lecture Notes F-5 26.01.2016]] * Marvin Minsky, founding father of AI dies at age 88 [[http://www.nytimes.com/2016/01/26/business/marvin-minsky-pioneer-in-artificial-intelligence-dies-at-88.html|Article in New York Times]] * //Readings assigned for this class (read before lecture):// * The readings assigned for F-3 19.01.2016 (if you didn't read them already, now is your chance). **F-6 FRI 29.01.2016** \\ Features of (artificial) general intelligence \\ Review of Programming Assignment 2 * [[Lecture Notes F-6 29.01.2016]] * [[Programming Assignment 3]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Evaluation: Worlds, Tasks, Environments section|Evaluation: Worlds, Tasks, Environments]] on the [[Readings|Readings]] page. * [[http://www.cs.bham.ac.uk/research/projects/cogaff/Sloman.kd.pdf|Architectural Requirements for Human-like Agents Both Natural and Artificial]] by A. Sloman * [[http://www.cs.bham.ac.uk/research/projects/cogaff/misc/fully-deliberative.html|Requirements for deliberative systems]] by A. Sloman -- key sections: from 8 onwards. --------------------------------------- ===W4 FEB === **F-7 TUE 02.02.2016** \\ Tasks, environments, goals: A second look \\ * [[Lecture Notes F-7 02.02.2016]] * //Readings assigned for this class (read before lecture):// * No new readings - please catch up on unread assigned readings! And start reading next class' papers. **F-8 FRI 05.02.2016** \\ Evaluating AIs \\ Review of Programming Assignment 3 * [[Lecture Notes F-8 05.02.2016]] * [[Reading assignment 1]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Limitations of Constructionist AI|Limitations of Constructionist AI]] on the [[Readings|Readings]] page. --------------------------------------- ===W5 FEB === **F-9 TUE 09.02.2016** \\ Agents & environments: Take two * [[Lecture Notes F-9 09.02.2016]] * //Readings assigned for this class (read before lecture):// * First 4 items in the [[Readings#Evaluation: Worlds, Tasks, Environments|Evaluation: Worlds, Tasks, Environments section]] on the [[Readings|Readings]] page. **F-10 FRI 12.02.2016** \\ Review of programming project 3 \\ Discussion of questions posted on Piazza * [[Lecture Notes F-10 12.02.2016]] * //Readings assigned for this class (read before lecture):// * [[Reading assignment 2]] * No new readings - please catch up on unread assigned readings! And start reading next class' papers. --------------------------------------- ===W6 FEB === **F-11 TUE 16.02.2016** \\ Agents & models \\ Meaning and symbols, part I * [[Lecture Notes F-11 16.02.2016]] * //Readings assigned for this class (read before lecture):// * First 3 papers in the [[Readings#Symbols & Meaning|Symbols & Meaning]] on the [[Readings|Readings]] page. **F-12 FRI 19.02.2016** \\ Constructionist versus constructivist methodology \\ Discussion of reading assignment questions posted on Piazza * [[Lecture Notes F-12 19.02.2016]] * [[Reading assignment 3]] * //Readings assigned for this class (read before lecture):// * Make sure you read the [[Lecture Notes F-12 19.02.2016]] * First 2 papers in the [[Readings#AGI Methodology|AGI Methodology section]] on the [[Readings|Readings]] page. --------------------------------------- ===W7 FEB === **F-13 TUE 23.02.2016** \\ Constructivist methodology * [[Lecture Notes F-13 23.02.2016]] * //Readings assigned for this class (read before lecture):// * First 5 papers in the [[Readings#AGI Methodology|AGI Methodology section]] on the [[Readings|Readings]] page. **F-14 FRI 26.02.2016** \\ Semiotic circularity, emergence, auto-catalysis \\ Discussion of reading assignment questions posted on Piazza * [[Lecture Notes F-14 26.02.2016]] * [[Reading assignment 4]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Self-Organization & Emergence|Self-Organization & Emergence section]] on the [[Readings|Readings]] page. --------------------------------------- ===W8 MAR === **F-15 TUE 01.03.2016** \\ Attention \\ * [[Lecture Notes F-15 01.03.2016]] * //Readings assigned for this class (read before lecture):// * First 3 papers in the [[Readings#Attention|Attention section]] on the [[Readings|Readings]] page. **F-16 FRI 04.03.2016** \\ Reasoning \\ Discussion of reading assignment questions posted on Piazza * [[Lecture Notes F-16 04.03.2016]] * [[Reading assignment 5]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Reasoning|Reasoning section]] on the [[Readings|Readings]] page. --------------------------------------- ===W9 MAR === **F-17 TUE 08.03.2016** \\ Metacognition / Integrated Cognitive Control and self-programming\\ * [[Lecture Notes F-17 08.03.2016]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Metacognition / Integrated Cognitive Control|Metacognition / Integrated Cognitive Control section]] on the [[Readings|Readings]] page. * First 2 papers in the [[Readings#Self-Programming|Self-Programming section]] on the [[Readings|Readings]] page. **F-18 FRI 11.03.2016** \\ Seed-AI \\ Discussion of reading assignment questions posted on Piazza * [[Lecture Notes F-18 11.03.2016]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Seed AI|Seed AI section]] on the [[Readings|Readings]] page. --------------------------------------- ===W10 MAR === **F-19 TUE 15.03.2016** \\ Creativity, consciousness and emotions * [[Lecture Notes F-19 15.03.2016]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Consciousness|Consciousness section]] on the [[Readings|Readings]] page. * [[https://www.willamette.edu/~gorr/classes/ids101/links/nutshell.pdf|Creativity in a Nutshell]] by M. Boden. **F-20 FRI 18.03.2016** \\ NARS \\ * [[Lecture Notes F-20 18.03.2016]] * [[Programming assignment 4]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#NARS|NARS section]] on the [[Readings|Readings]] page. --------------------------------------- ===W11 MAR === **F-21 TUE 22.03.2016** \\ Universal Pedagogy \\ * [[Lecture Notes F-21 22.03.2016]] * [[Programming Assignment 5]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#Universal Pedagogy|Universal Pedagogy section]] on the [[Readings|Readings]] page. **F-22 FRI 25.03.2016** // NO CLASS - EASTER HOLIDAY // \\ --------------------------------------- ===W12 MAR / APR === **F-23 TUE 29.03.2016** // NO CLASS - EASTER HOLIDAY // \\ **F-24 FRI 01.04.2016** \\ Review of Programming Assignment 4 \\ AERA * [[Lecture Notes F-24 01.04.2016]] * //Readings assigned for this class (read before lecture):// * First 2 papers in the [[Readings#AERA|AERA section]] on the [[Readings|Readings]] page. --------------------------------------- ===W13 APR === **F-25 TUE 05.04.2016** \\ Review of Programming Assignment 5 * [[Lecture Notes F-25 05.04.2016]] * //Readings assigned for this class (read before lecture):// **F-26 FRI 08.04.2016** \\ Student presentation of Programming Assignment 5 \\ Short review and summary of course material and Final Exam \\ * [[Lecture Notes F-26 08.04.2016]] * //Readings assigned for this class (read before lecture):// \\ \\ \\ //EOF//