January 13 (Mon), 2003 HW1 assigned, due Friday. Administrative information: textbooks. Beginning of course questionnaire, with discussion. Definitions of AI.
January 15 (Wed), 2003 HW1 due date changed to Wednesday, Janaury 22. Definitions of AI. Turing Test, Cognitive Science, Neuroscience, Logic.
January 17 (Fri), 2003 Intelligent Agents. Aristotle's connection between need (goals)and praxis (actions). Agent functions. Agent programs. Evaluation criteria. PEAS: Performance, Environment, Actuators, Sensors. Rational agents. Goals, utility function, performance evaluation. (Ch.1, Ch.2 [R])
January 22 (Wed), 2003 HW1 collected. HW2 assigned, due Monday, January 27. Rational agents. Review of last class. The automated taxi example. Characteristics of Task Environments. (Ch.2 [R])
January 24 (Fri), 2003 Some examples of Task Environments and their characteristics (Ch.2 [R]). Introduction to Prolog (Ch.1 [B]): demo with SWI-Prolog on laptop.
January 27 (Mon), 2003 PR1 announced. It is due on Monday, February 3. HW2, due today, was postponed until Wednesday, January 29. More Prolog Introduction from Ch.1 [B]: using rules to define relations. Powepoint notes for Bratko's Ch.1 linked to syllabus.
January 29 (Wed), 2003 More Prolog introduction from Ch.1 [B].
January 31 (Fri), 2003 PR1 changed to include only exercises from ch.1 [B]. PR2 and PR3 changed accordingly. Ch.1 [B] completed: more examples of relation definition by facts and rules, introduction to declarative and procedural meaning of Prolog programs, goal trees.
February 3 (Mon), 2003 PR1 collected. Prolog data objects: Ch.2 [B]: initial part.
February 5 (Wed), 2003 PR2 will be due in Monday, February 10. Prolog data objects: Ch.2 [B]: matching (unification), computation with matching, declarative meaning of Prolog programs, exercise 2.6.
February 7 (Fri), 2003 PR2 will be due Wednesday, February 12. Procedural meaning of Prolog programs, with examples. Monkey and banana (not completed).
February 10 (Mon), 2003 PR2 will be due Wednesday, February 12. Monkey and banana. Order of clauses, with examples. Order of clauses and goals, with example. Declarative vs. procedural meaning of Prolog programs, revisited. Ch.2 [B] completed.
February 12 (Wed), 2003 PR2 collected. Lists: [ Head,Tail] representation; list as terms: empty list ([]) and list constructor (.) Some operations on lists: memb, conc. Reversibility and non-determinism.
February 14 (Fri), 2003 PR3 will be due Wednesday, February 19. Midterm will be on Friday, February 21. More on lists.
February 17 (Mon), 2003 More on lists. Operators. Arithmetic. Ch.3 [B] completed.
February 19 (Wed), 2003 PR3 due Friday, February 21. MT1 will be Friday, February 21. All ppt files posted (link from syllabus). Correctness of Euclid's algorithm. A case study: seven versions of length. Arithmetic in logic: Peano's Postulates. Binary arithmetic in logic.
February 21 (Fri), 2003 MT1 (Proctored by Ananda Mondal, TA for the course).
February 24 (Mon), 2003 MT1 post-mortem, with many questions.
February 26 (Wed), 2003 Correction of exercise 3.10 (monkey and banana, with record of moves): two solutions discussed.
February 28 (Fri), 2003 PR4 assigned: exercises 4.2, 4.3, 4.5, 4.6, 4.7 [B], due Friday, 2003-03-07. Function (function names, denote an individual) vs. relations (predicates). Datalog: function-free Prolog. How to simulate relation algebra in Prolog. Structured information in databases: the family example.
March 3 (Mon), 2003 Ambiguous syntax in Prolog: it is impossible to distinguish function names from predicate names from lexical information alone. The travel agency example.
March 5 (Wed), 2003 Reminder that PR4 is due Friday. Correction guides for PR1, PR2, PR3 are on the web site, linked to the syllabus page. Eight queens: three solutions. (Surprisingly, more than half of the students have not seen this example in 146 or elsewhere.) Generate and test is inefficient. Prolog time predicate. LIPS (Logical Inferences Per Second).
March 7 (Fri), 2003 PR4 collected. Controlling backtracking: the cut. Negation as failure. Logical negation: "A Hole in Goal Trees" solution by Loveland and Stickel.
March 17 (Mon), 2003 (Last week: spring break.) Review of March 7 lecture. I/O in Prolog (Ch. 6).
March 19 (Wed), 2003 I/O in Prolog completed, with a discussion of intermediate compilation to Warren Abstract Machine (WAM) code and quick loading files (.qlf). Metalogical ("additional built in") predicates (parts of ch.7): determining type of terms, cryptarithmetic puzzle example (e.g., SEND + MORE = MONEY), clauses as terms.
March 21 (Fri), 2003 PR5 assigned: exercises 7.8, 8.2, 8.3, 8.5 due Friday, March 29, 2003. Graduate student presentations assigned; each pair of graduate students will choose one. More on Ch.7.
March 24 (Mon), 2003 Ch.7 completed. Ch.8 started: maplist as an example of a recursive procedure; discussion of maplist in the original LISP (McCarthy, 1960).
March 26 (Wed), 2003 PR5 due date changed to Monday, March 31. Problems with laptop and projector. More on chapter 8.
March 28 (Fri), 2003 PR5 due date changed to Wednesday, April 2. More on Ch.8, up to and including accumulators (but not difference lists).
March 31 (Mon), 2003 PR5 is confirmed as due on Wednesday, April 2. Difference lists in detail, including append_dl (in Bratko's book: concat with difference lists). Delete with accumulator as delete with difference lists. Ch.8 completed.
April 2 (Wed), 2003 PR5 collected. Sorting in Prolog: mergesort (in detail) and quicksort.
April 4 (Fri), 2003 PR6: Exercise 9.11, due 03-04-11 (Friday, one week from today) MT2 is tentatively scheduled for Wednesday, April 9; it will cover Prolog (Bratko's text, Chs. 1-9.)
April 7 (Mon), 2003 MT2 scheduled for Friday, April 11. BSTs completed.
April 9 (Wed), 2003 Graphs. Ch.9 completed.
April 11 (Fri), 2003 Ch.3 R+N: State-Space search: preliminaries, examples
April 14 (Mon), 2003 MT2, to be considered a mock test for the reasons explained on Wednesday, April 15. Actual MT2 will be on Monday, April 20.
April 16 (Wed), 2003 Blind Methods for State-Space Search: Ch.12 [B]: up to iterative deepening depth-first search. Two of the three graduate student presentations will be on Friday.
April 18 (Fri), 2003 PR 7 assigned: Exercises 12.1 and 12.4, due on Friday, April 25. Presentation on Inductive Logic Programming, based on Bratko's Ch.19, by Jangbo Dang, Vincent Ellerby, and Bingyu Zhu. Completion of Ch.11 on blind (uninformed) search, including a discussion of Dijkstra's algorithm and its optimality (in number of node expansions and in the RAM model and decision tree models, with one condition).
April 23 (Wed), 2003 MT2. PR7 delayed to Monday, April 28.
April 25 (Fri), 2003 PR7 delayed to Wednesday, April 30. Presentation on AND/OR Graphs, based on on Bratko's Ch.13, by Hrishikesh Goradia and Seang Char Ryu.
April 28 (Mon), 2003 Presentation on Expert Systems, based on Bratko's Ch.15, by Stephen Brown and Sujan Pakala. Some discussion of Dijkstra's algorithm.
April 30 (Mon), 2003 Search algorithms in Prolog: depth-first search, breadth-first search, A*, using Shoham's implementations. End of course.