teaching:is:main_is_old
This is an old revision of the document!
Table of Contents
Intelligent Systems (IS)
Watch the page
You can “subscribe” to any page on the wiki and you’ll be sent an email message whenever it’s changed. To do that, click the [Subscribe changes] button at the bottom of the page.
Official course presentation form
- The course presentation form. The lectures and the exams will be delivered in Italian.
Open Learning Environment (OLE) web page
- The official course page in OLE.
Timetable
The official week-by-week Faculty timetable can be found on the RIS BSc 3rd year.
Language used in the course
- Italian spoken (lectures and lab)
- English written (lecture and lab material, exam paper)
Textbooks
- Main book: David Poole and Alan Mackworth. Artificial Intelligence: Foundations of Computational Agents. Cambridge University Press, 2010.
- Auxiliary book: Stuart Jonathan Russell and Peter Norvig. Artificial Intelligence: A Modern Approach. Prentice Hall, 2010.
You can read below which chapters of the above books are used in the various parts of the course.
Slides & Reference Material
red means material not done this year.
- Slides: Welcome Aboard
-
- Material: chapter 1 of Poole and Mackworth
-
- Material: chapter 2 of Poole and Mackworth
-
- Material chapter 3 of Poole and Mackworth
-
- Material chapter 4 of Poole and Mackworth
-
- Material chapter 5 of Poole and Mackworth
-
- Material chapter 12 of Poole and Mackworth
- Slides: Natural Language Understanding
- Material chapter 12 of Poole and Mackworth
-
- Material chapter 5 of Poole and Mackworth
- Slides: Ontologies and Knowledge-Based Systems part 1, part 2, Introduction to RDF, RDF Semantics, E/R semantics, E/R and logic
- Material chapter 13 of Poole and Mackworth, Introduction to RDF, Semantics of Conceptual Modelling
Lab
Lab instructor: Davide Lanti
Start date: 10 October 2017
- LAB 1: Robot Control (applet).
- LAB 2: Recap of Prolog. Material here.
- LAB 3: Graph Searching (applet):
- Explore the Delivery Robot (Acyclic) and the Delivery Robot (cyclic) sample problem graphs: with Depth First, Breadth First, Lowest Cost First search strategies using different Neighbour Ordering Strategies.
- Create your own problem graph for a delivery robot starting from a map with edge costs.
- Create a problem graph for a simple problem chosen by you.
- Do the Practice Exercise 3.B.
- Exercise: 3.3(a) - depth-first and breadth-first search strategies.
- Exercise: 3.4(a) - lowest-cost-first search strategy.
- LAB 4 & 5: Graph Searching
- Explore the sample problem graphs below, with Lowest Cost First, Best First, Heuristic Depth First, A* search strategies, with or without Multiple-Path Pruning or Loop Detection, using different Neighbour Ordering Strategies:
- Delivery Robot (acyclic and cyclic)
- Misleading Heuristic Demo
- Multiple-Path Pruning Demo
- Module 4 Graph
- Module 5 Graph
- Bicycle Courier Problem (acyclic and cyclic)
- Do the Practice Exercise 3.C.
- Do the Practice Exercise 3.D.
- Exercise: 3.3(b, c, d) - best-first, heuristic depth-first, A* with multiple-path pruning search strategies.
- Exercise: 3.4(b) - heuristic function.
- LAB 6
-
- Exercises: 4.1, 4.2, 4.3 (a,b), 4.5 - CSP and arc consistency.
-
- Lab 5: Search in prolog
- Another (simpler?) version in prolog of Depth-first and Breadth-first
- LAB
- Practise with iterative deepening, branch-and-bound, and bidirectional search strategies
- Towers of Hanoi:
- LAB 7: propositions
- AILog2, a representation and reasoning system for definite clauses, with declarative debugging tools.
- To start AILog just load the file ailog2.pl into SWI Prolog
- Go through the manual, from Section 1 to Section 6.
- Exercises: 5.1,5.2,5.3,5.4 - Propositions and Inference.
- elect_prop.ail electrical wiring example (Example 5.5 from Section 5.2)
- plumbing.ail plumbing domain example (Exercise 5.2)
- LAB 8
- Knowledge bases (complete set):
- elect_ask.ail electrical wiring example with askables; Example 5.10 from Section 5.3.2
- elect_bug.ail the buggy electrical wiring knowledge base from Example 5.14 in Section 5.3.4
- elect_bug2.ail the buggy electrical wiring example from Exercise 5.6
- elect_bug3.ail a buggy electrical wiring example, which fails to prove lit_l2, but should succeed
- LAB 9
- Exercises: 12.1,12.2 - Individuals and Relations: model theory
- LAB 10
- Exercises: 12.3,12.7,12.10,12.12,12.15 - Individuals and Relations: derivations
- LAB
- Exercises: 12.17 - Natural Language Processing
- cfg_simple.ail a simple context free grammar and associated dictionary from Figures 12.6 and 12.7 in Section 12.5 (also in Prolog)
- nl_numbera.ail a simple grammar that enforces number agreement and builds a parse tree; from Figure 12.9 in Section 12.6.5 (also in Prolog)
- nl_interface.ail a simple natural language interface to a database; from Figures 12.10 and 12.11 in Section 12.6.6 (also in Prolog)
- LAB
- Exercises: 5.7,5.8,5.9,5.13 - Diagnosis.
- More KBs:
- AILog exercises (use extensively How?, Why not?, Why? questions and Depth Bound):
- elect_relational.ail electrical wiring example from Section 12.3.2
- west.ail a knowledge base about rooms from Figure 12.2 in Section 12.3.3
- before.ail the before relation of Example 12.26 in Section 12.5
- trees.ail the tree code of Example 12.27 in Section 12.5
- elect_cbd.ail electrical wiring example for consistency-based diagnosis; Example 5.20 in Section 5.4.3
- elect_naf.ail electrical wiring example with negation as failure; Example 5.26 in Section 5.5
- beach.ail default reasoning about swimming at beaches; Example 5.27 in Section 5.5.1
- bronchitis.ail diagnosis Example 5.30 in Section 5.6
- elect_abd.ail electrical wiring example with abduction; Example 5.31 in Section 5.6
Assessment
Final Written Exam: 100%
Exam
xxx
teaching/is/main_is_old.1508318732.txt.gz · Last modified: by dlanti