======T-622-ARTI, Introduction to Artificial Intelligence, Spring 2011===== ===== Basic Info ===== * **Instructor: ** [[http://www.ru.is/kennarar/hannes|Hannes Högni Vilhjálmsson]] (hannes+ru.is, skuggavera+hotmail.com on MSN) * **Assistant:** Angelo Cafaro (angelo08+ru.is) * **Office: ** 2nd floor, Venus, 559-6323, 824-8814 * **Theory Lectures: ** Mondays 13:10-14:45, Fridays 10:20-11:55 (M.1.02) * **Paper Discussion: ** Mondays 13:10-14:45 (M.1.02) * **Labs: ** Thursdays 14:00-15:40 (M.1.03) * **Online Forum:** [[http://ruclasses.proboards.com/index.cgi?board=arti2011]] (You need to register using your own name) ===== Description ===== Artificial intelligence (AI) is devoted to the computational study of intelligent behavior, including areas such as problem solving, knowledge representation, reasoning, planning and scheduling, machine learning, perception and communication. This course gives an overview of the aforementioned AI subfields from a computer science perspective and introduces fundamental solution techniques for addressing them. An important part of the course is an independent final project where the students develop AI software in an area of their choice. ===== Goals ===== On the completion of the course the students should: * have a good overview of the field of artificial intelligence (AI) and a thorough understanding of the fundamental solution methods used to attack a wide variety of AI-related problems. * have gained experience building a small special-purpose AI system. =====Book===== The textbook for this class is: "//Artificial Intelligence: A Modern Approach// (Third Edition)" by Stuart Russell and Peter Norvig. This book has a [[http://aima.cs.berkeley.edu/|very good web site]] full of useful AI resources. ===== Coursework Overview ===== ==== Assignments (50%) ==== You complete two programming assignments, two problem sets and a final programming project. These can all be group projects (up to 3 people). Make sure you clearly indicate who is part of the group. Remember that the assignments and problem sets is practice for the final exam, so all group members should make sure they understand the solution. You should discuss final project ideas with instructor in week 6, hand in a proposal in week 7 and demonstrate final project in week 12. Everything that has to be turned in, should arrive no later than at 23:59 on the due date, or else incur 10% penalty for each additional day, including weekends and holidays. ^Assignment^Code^Description^Material^Assigned^Due^Weight^ |[[public:t-622-arti-11-1:program_1|Program 1]]|PROG1|First Programming Assignment| Ch. 1-3 | Jan 27 | Feb 10 |5%| |{{:public:t-622-arti-11-1:arti-s2011-problemset1.pdf|Problems 1}}|PROB1|First Problem Set| Ch. 4-5 | Feb 10 | Feb 17 | 5% | |[[http://ruclasses.proboards.com/index.cgi?action=display&board=arti2011&thread=82|Final Project Proposal]]|FP-PROP|Submission of Final Project Proposal| - | - | Feb 24 |0%| |[[public:t-622-arti-11-1:program_2|Program 2]]|PROG2|Second Programming Assignment| Ch. 4-6 | Feb 17 | Mar 3 |5%| |{{:public:t-622-arti-11-1:arti-s2011-problemset2.pdf|Problems 2}}|PROB2|Second Problem Set| Ch. 7-8 | Mar 4 | Mar 17 | 5% | |[[public:t-622-arti-11-1:final_project|Final Project]]|FP|Final Programming Project with Demo| All | - |Mar 28-31 |30%| ^ Total 50% ^^^^^^^ ==== Paper Discussion (20%) ==== After every Monday class, the instructor will post a link on [[http://ruclasses.proboards.com/index.cgi?board=arti2011|the course online forum]] to a paper or article on an interesting aspect of Artificial Intelligence. This may or may not be directly related to the book chapter being covered that week. **You need to read this paper or article by the end of Sunday and post, under the same forum thread, 2 questions you have about the contents of the reading**. This post has to arrive by 23:59 on Sunday night 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. No grade will be given for these questions, you automatically get points for being on time. In the discussion section of the following Monday class, chosen questions from those submitted will be discussed by the group as a whole and you are expected to participate. ^Due^Thread^Reading^Comments^ |Jan 17 | | [[http://polaris.gseis.ucla.edu/pagre/critical.html|"Toward a Critical Technical Practice: Lessons Learned in Trying to Reform AI"]] | You only need to read sections 2, 3 and 4 | |Jan 24 | | [[http://www.abelard.org/turpap/turpap.php|"Computing Machinery and Intelligence"]] | You may read [[http://en.wikipedia.org/wiki/Computing_Machinery_and_Intelligence|a summary]] if you prefer | |Jan 31 | | [[http://www.ru.is/faculty/hannes/classes/ai2009/programming_intelligence.pdf|"Programming Intelligence: The Piecemeal Approach"]] | An overview article. Relatively easy. | |Feb 07 | | [[http://www.ru.is/faculty/hannes/classes/ai2011/JAIR_WhenGravityFailsLocalSearch.pdf|When Gravity Fails: Local Search Topology]] (quite heavy, but give it a try) | Guest: J. Deon Garrett (from [[http://www.iiim.is/|IIIM]]) | |Feb 14 | | [[http://www.ru.is/faculty/yngvi/pdf/BjornssonF09.pdf|"CADIA PLAYER: A Simulation-Based General Game Player"]] | Guest: Yngvi Björnsson | |Feb 21 | | [[http://web.media.mit.edu/~push/Kurzweil.html|"The Open Mind Common Sense Project"]] | | |Feb 28 | | [[http://www.ru.is/faculty/hannes/publications/IVA2009a.pdf|"Spontaneous Avatar Behavior for Human Territoriality"]] | Guest: Claudio Pedica (from [[http://www.iiim.is/|IIIM]])| |Mar 07 | | [[http://ti.arc.nasa.gov/m/pub/902h/0902%20(Bresina).pdf|"Activity Planning for The Mars Exploration Rovers"]] | Guest: Ari K. Jónsson | |Mar 14 | | [[http://xenia.media.mit.edu/~kris/ftp/CustructivistAI-BICA-09-Thorisson-Keynote.pdf|"From Constructionist to Constructivist A.I."]] | Guest: Kristinn R. Thórisson | |Mar 21 | | [[http://www.ru.is/faculty/hannes/publications/IITSEC2004.pdf|"The DARWARS Tactical Language Training System]] | "Guest:" Hannes | ^ ^^^^ ===== Course Schedule ===== ^Week^Date^Chapters^Topic^Assigned^Due^ |1|Jan 10| 1|{{:public:t-622-arti-11-1:arti-introduction.pdf|Introduction+History}}| | | | |Jan 13| Lab|Lisp ([[public:t-622-arti-11-1:lab_1_materials|Lab material]]) ({{:public:t-622-arti-11-1:arti-introduction-to-lisp.pdf|Introduction to Lisp}})| | | | |Jan 14| 2|{{:public:t-622-arti-11-1:arti-c02-intellligentagents.pdf|Intelligent Agents}}| | | |2|Jan 17| 3|{{:public:t-622-arti-11-1:arti-c03-searchproblems.pdf|Search Problems}} (updated!)| |Q| | |Jan 20| Lab|Agents ([[public:t-622-arti-11-1:lab_2_materials|lab material]]) | | | | |Jan 21| 3|Search Problems (continued)| | | |3|Jan 24| 3|{{:public:t-622-arti-11-1:arti-c03-blindsearch.pdf|Blind Search}}| |Q| | |Jan 27| Lab|Braitenberg Vehicles ([[public:t-622-arti-11-1:lab_3_materials|lab material]]) ({{:public:t-622-arti-11-1:arti-braitenberg-vehicles.pdf|Braitenberg Vehicles}})|PROG1| | | |Jan 28| 3|{{:public:t-622-arti-11-1:arti-c03-heuristicsearcha.pdf|Heuristic Search A}}| | | |4|Jan 31| 3|{{:public:t-622-arti-11-1:arti-c03-heuristicsearchb.pdf|Heuristic Search B}}| |Q| | |Feb 03| Lab|A* Pathfinding Search ([[public:t-622-arti-11-1:lab_4_materials|lab material]]) | | | | |Feb 04| 5|{{:public:t-622-arti-11-1:arti-c05-adversarialsearch.pdf|Adversarial Search}}| | | |5|Feb 07| 5|Guest: Deon Garrett| |Q| | |Feb 10| Lab|Formulating Search Problems ([[public:t-622-arti-11-1:lab_5_materials|lab material]])|PROB1|PROG1| | |Feb 11| 5|Adversarial Search (continued) | | | |6|Feb 14| 7|Guest: Yngvi Björnsson | |Q| | |Feb 17| Lab|Review of PROG1 |PROG2|PROB1| | |Feb 18| 7|{{:public:t-622-arti-11-1:arti-c07-propositionallogic.pdf|Propositional Logic}}| | | |7|Feb 21| 8|Common Sense Discussion| |Q| | |Feb 24| Lab|Review of PROB1 | |FP-PROP| | |Feb 25| 8|{{:public:t-622-arti-11-1:arti-c08-firstorderlogic.pdf|First-Order Logic}} | | | |8|Feb 28| | Guest: Claudio Pedica | |Q| | |Mar 03| Lab|PowerLoom ([[public:t-622-arti-11-1:lab_6_materials|lab material]])| |PROG2| | |Mar 04| 10|{{:public:t-622-arti-11-1:arti-c10-planning.pdf|Planning}}|PROB2| | |9|Mar 07| 10|Guest: Ari Jónsson| |Q| | |Mar 10| Lab| Connect 4 Tournament| | | | |Mar 11| 13,14|{{:public:t-622-arti-11-1:arti-c13-uncertainty.pdf|Uncertainty}} / {{:public:t-622-arti-11-1:arti-c14-bayesian.pdf|Bayesian nets}} | | | |10|Mar 14| NA|Guest: Kristinn R. Thórisson| |Q| | |Mar 17| Lab|Bayesian Nets ([[public:t-622-arti-11-1:lab_7_materials|lab material]])| |PROB2| | |Mar 18| 18-21|{{:public:t-622-arti-11-1:arti-machinelearning.pdf|Learning}}| | | |11|Mar 21| NA|"Guest:" Hannes| |Q| | |Mar 24| Lab|Bayesian Nets Excercise + Review of PROB2| | | | |Mar 25| | {{:public:t-622-arti-11-1:arti-examreview.pdf|Exam Review}} | | | |12|Mar 28| | [[http://ruclasses.proboards.com/index.cgi?action=display&board=arti2011&thread=76&page=1#774|Other AI Resources]] and Discussions | | | | |Mar 31| | [[final_project|Final Project Demos / Presentations]] | |FP| | |Apr 01| | [[final_project|Final Project Demos / Presentations]] | |FP| ^^^^^^^ =====Grading===== ^Part of Course^Total Weight^ |Discussion/Participation | 20%| |Programming Assignments (x2) | 10%| |Problem Sets (x2) | 10%| |Final Project | 30%| |Final Written Exam| 30%| ^ Total 100% ^^