User Tools

Site Tools


teaching:is:main_is

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
teaching:is:main_is [2024/03/04 14:32]
Franconi Enrico [Slides & Reference Material]
teaching:is:main_is [2024/04/23 09:48]
Franconi Enrico [Lab]
Line 1: Line 1:
-====== Foundations of Artificial Intelligence (FoundAI) ======+====== Foundations of Artificial Intelligence ======
  
 ===== Watch the page ===== ===== Watch the page =====
Line 26: Line 26:
   * **Main book**: David Poole and Alan Mackworth. //[[https://artint.info/|Artificial Intelligence: Foundations of Computational Agents]]//. Cambridge University Press, 2023, 3rd edition 2017. The book is fully available online.   * **Main book**: David Poole and Alan Mackworth. //[[https://artint.info/|Artificial Intelligence: Foundations of Computational Agents]]//. Cambridge University Press, 2023, 3rd edition 2017. The book is fully available online.
   * //Auxiliary book//: Stuart Jonathan Russell and Peter Norvig. //Artificial Intelligence: A Modern Approach//. Prentice Hall, 4th edition 2020.   * //Auxiliary book//: Stuart Jonathan Russell and Peter Norvig. //Artificial Intelligence: A Modern Approach//. Prentice Hall, 4th edition 2020.
-  * Reading list from the UniBZ Library: [[https://eu.alma.exlibrisgroup.com/leganto/readinglist/lists/29916890000001241|76251A_21-22-2_CS Artificial Intelligence / Artificial Intelligence: Foundation of Artificial Intelligence]]+  * Reading list from the UniBZ Library: [[https://eu.alma.exlibrisgroup.com/leganto/readinglist/lists/29916890000001241| Artificial Intelligence / Artificial Intelligence: Foundation of Artificial Intelligence]]
  
 ===== Slides & Reference Material ===== ===== Slides & Reference Material =====
Line 35: Line 35:
 /* The striked-through text (i.e., <del>text</del>) corresponds to parts not done this year. */ /* The striked-through text (i.e., <del>text</del>) corresponds to parts not done this year. */
  
-  * Slides: {{lect.1.0.pdf|Welcome Aboard}} +  * Slides: {{ :teaching:is:lect_01_0_h.pdf |Welcome Aboard}} 
-  * Slides: Artificial Intelligence and Agents /* {{:teaching:is:lect.1.1.pdf|part 1}}, {{:teaching:is:lect.1.2.pdf|part 2}}, {{:teaching:is:lect.1.3.pdf|part 3}},  {{:teaching:is:lect.1.4.pdf|part 4}} */+  * Slides: Artificial Intelligence and Agents {{ :teaching:is:lect_01_1.pdf |parts 2}}, {{ :teaching:is:lect_01_3_h.pdf |part 3}}, {{ :teaching:is:lect_01_4_h.pdf |part 4}}
     * Material: chapter 1 of //Poole and Mackworth//     * Material: chapter 1 of //Poole and Mackworth//
-  * Slides: Agent Architectures /* {{:teaching:is:lect.2.1.pdf|part 1}}, {{:teaching:is:lect.2.2.pdf|part 2}} */ +  * Slides: States and Searching {{:teaching:is:lect.3.1.pdf|part 1}}, {{:teaching:is:lect.3.2.pdf|part 2}}, {{:teaching:is:lect.3.3.pdf|part 3}}, {{:teaching:is:lect.3.4.pdf|part 4}} 
-    * Material: chapter 2 of //Poole and Mackworth// +
-  * Slides: States and Searching /* {{:teaching:is:lect.3.1.pdf|part 1}}, {{:teaching:is:lect.3.2.pdf|part 2}}, {{:teaching:is:lect.3.3.pdf|part 3}}, {{:teaching:is:lect.3.4.pdf|part 4}} */+
     * Material: chapter 3 of //Poole and Mackworth//     * Material: chapter 3 of //Poole and Mackworth//
-  * Slides: Features and Constraints /* {{:teaching:is:lect.4.1.pdf|part 1}}, {{:teaching:is:lect.4.2.pdf|part 2}} */+  * Slides: Features and Constraints {{:teaching:is:lect.4.1.pdf|part 1}}, {{:teaching:is:lect.4.2.pdf|part 2}}
     * Material: chapter 4 of //Poole and Mackworth//     * Material: chapter 4 of //Poole and Mackworth//
   * Slides: Propositions and Inference /* {{:teaching:is:lect.5.1.pdf|part 1}}, {{:teaching:is:lect.5.2.pdf|part 2}}, {{:teaching:is:lect.5.3.pdf|part 3}}, {{:teaching:is:lect.5.4.pdf|part 4}} */ \\ Slides: Diagnosis /* {{:teaching:is:lect.5.5.pdf|part 1}}, {{:teaching:is:lect.5.6.pdf|part 2}}, {{:teaching:is:lect.5.7.pdf|part 3}}, {{:teaching:is:lect.5.8.pdf|part 4}}, {{:teaching:is:lect.5.9.pdf|part 5}} */   * Slides: Propositions and Inference /* {{:teaching:is:lect.5.1.pdf|part 1}}, {{:teaching:is:lect.5.2.pdf|part 2}}, {{:teaching:is:lect.5.3.pdf|part 3}}, {{:teaching:is:lect.5.4.pdf|part 4}} */ \\ Slides: Diagnosis /* {{:teaching:is:lect.5.5.pdf|part 1}}, {{:teaching:is:lect.5.6.pdf|part 2}}, {{:teaching:is:lect.5.7.pdf|part 3}}, {{:teaching:is:lect.5.8.pdf|part 4}}, {{:teaching:is:lect.5.9.pdf|part 5}} */
Line 54: Line 52:
 ===== Lab ===== ===== Lab =====
  
-  * <color #22b14c>LAB 1</color>: [[http://aispace.org/robot/|Robot Control]] ({{:teaching:is:robot_applet.zip|applet}}) -- Download Java if you need it from [[https://www.oracle.com/java/technologies/downloads/|here]]. +  * <color #22b14c>LAB 1</color>: Graph Searching with uninformed techniques ({{ :teaching:is:search_applet.zip |Java applet}})
-    * {{ :teaching:is:robot_1_-_quickstart.pdf |Quick start}} +
-    * {{ :teaching:is:robot_2_-_general_help.pdf |General help}} +
-    * {{ :teaching:is:robot_3_-_tutorial_1.pdf |Tutorial 1}} with [[http://aispace.org/robot/help/CreateAnEnvTutorial.avi|video]] +
-    * {{ :teaching:is:robot_4_-_tutorial_2.pdf |Tutorial 2}} with [[http://aispace.org/robot/help/RunRobotTutorial.avi|video]] +
-    * {{ :teaching:is:robot_5_-_tutorial_3.pdf |Tutorial 3}} with [[http://aispace.org/robot/help/DebugTutorial.avi|video]] +
-  * <color #22b14c>LAB 2</color>: Graph Searching with uninformed techniques ({{ :teaching:is:search_applet.zip |applet}})+
     * Manuals:     * Manuals:
       * {{ :teaching:is:search_1_-_quick_start.pdf |Quick start}}       * {{ :teaching:is:search_1_-_quick_start.pdf |Quick start}}
Line 73: Line 65:
     * Create your own problem graph for a delivery robot starting from a map with edge costs.     * 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.     * Create a problem graph for a simple problem chosen by you.
-  * <color #22b14c>LAB 3</color>: Graph Searching with Heuristics+    * IMPORTANT: learn how to write on paper the frontier evolution for each search. 
 +* <color #22b14c>LAB 2</color>: Graph Searching with Heuristics
     * Explore the **Delivery Robot (Acyclic)**, the **Delivery Robot (cyclic)**, the **Vancouver Neighbourood**, the **Module 4** sample problem graphs: with //Best First, Heuristic Depth First, A*, Branch and Bound// search strategies, with or without //Multiple-Path Pruning// or //Loop Detection//, using different //Neighbour Ordering Strategies//. Explore also the behaviour with the abovementioned search graphs with potentially non terminating depth first strategies (e.g., //Depth First// or //Heuristic Depth First//) without cycle checking, and with loop detection or multiple path pruning.     * Explore the **Delivery Robot (Acyclic)**, the **Delivery Robot (cyclic)**, the **Vancouver Neighbourood**, the **Module 4** sample problem graphs: with //Best First, Heuristic Depth First, A*, Branch and Bound// search strategies, with or without //Multiple-Path Pruning// or //Loop Detection//, using different //Neighbour Ordering Strategies//. Explore also the behaviour with the abovementioned search graphs with potentially non terminating depth first strategies (e.g., //Depth First// or //Heuristic Depth First//) without cycle checking, and with loop detection or multiple path pruning.
     * Do the [[http://www.aispace.org/exercises.shtml|Practice Exercises]] 3.C, 3.D, 3.E.      * Do the [[http://www.aispace.org/exercises.shtml|Practice Exercises]] 3.C, 3.D, 3.E. 
-    * Exercise: [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_71.html|3.4]]([[teaching:is:heuristics-solution|solution]]). +    * Exercise: [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_71.html|3.4]] ([[teaching:is:heuristics-solution|solution]]). 
-  * <color #22b14c>LAB 4</color>: Constraints - Consistency+    * IMPORTANT:  
 +      * learn how to write on paper the frontier evolution for each search; 
 +      * check whether the heuristics are admissible and monotone. 
 +* <color #22b14c>LAB 3</color>: Constraints - Consistency
     * [[http://aispace.org/constraint/|Consistency Based CSP Solver]] ({{:teaching:is:constraint.jar.zip|applet}}):     * [[http://aispace.org/constraint/|Consistency Based CSP Solver]] ({{:teaching:is:constraint.jar.zip|applet}}):
      * Explore with the CSP applet the sample problems: Simple Problem 1, Simple Problem 2, Scheduling Problem 1, Crossword Problem 1, Crossword Problem 2. These sample problems have been seen already in the course lectures; for the crossword problems, try to reconstruct the crossword graphical structure.      * Explore with the CSP applet the sample problems: Simple Problem 1, Simple Problem 2, Scheduling Problem 1, Crossword Problem 1, Crossword Problem 2. These sample problems have been seen already in the course lectures; for the crossword problems, try to reconstruct the crossword graphical structure.
     * Do the [[http://www.aispace.org/exercises.shtml|Practice Exercises]] 4.A, 4.B.      * Do the [[http://www.aispace.org/exercises.shtml|Practice Exercises]] 4.A, 4.B. 
-    * Exercises: [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_99.html|4.2, 4.3 (only a,b), 4.5]] - CSP and arc consistency /*([[teaching:is:csp-solutions|solutions]])*/. +    * Exercises: [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_99.html|4.2, 4.3 (only a,b), 4.5]] - CSP and arc consistency ([[teaching:is:csp-solutions|solutions]]).
-  * <color #22b14c>LAB 5</color>: Propositions and Inference +
-    * Getting started with [[https://artint.info/code/ailog/ailog_man.html|AILog2]], a representation and reasoning system for definite clauses, with declarative debugging tools. +
-      * Download the file [[https://artint.info/code/ailog/ailog2.pl|ailog2.pl]], install and launch [[https://www.swi-prolog.org/download/stable|SWI Prolog]], and load (consult) AILog2 in Prolog: +
-        * Windows: <html><tt>?- consult("C:\\path-to-file\\ailog2.pl").</tt></html> +
-        * Mac: <html><tt>?- consult('/path-to-file/ailog2.pl').</tt></html> +
-      * Go through the [[https://artint.info/code/ailog/ailog_man.html|AiLog2 manual]], from Section 1 to Section 6. +
-        * To load a knowledge base file from AILog2: +
-          * Windows: <html><tt>ailog: load 'C:\\path-to-kbfile\\kbfile.ail'.</tt></html> +
-          * Mac: <html><tt>ailog: load '/path-to-kbfile/kbfile.ail'.</tt></html> +
-    * Play with the [[https://artint.info/code/ailog/ailog_code/ch05/elect_prop.ail|elect_prop.ail]] electrical wiring example 5.7 from Section 5.3 of the book and the slides. +
-    * Do Exercises [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_137.html|5.1, 5.2 (not question b), 5.3, 5.4]] ([[teaching:is:prop-rules-solutions|solutions]]) +
-/*    * Find other AILog knowledge base examples [[https://www.cs.ubc.ca/~poole/aibook/code/ailog/ailog_code/ailog_code.html|here]] */ +
-  * <color #22b14c>LAB 6</color>: Debug, Diagnosis, Abduction +
-     * Keep using [[https://artint.info/code/ailog/ailog_man.html|AILog2]] +
-     * Go through Sections 6, 7, 9 of the [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_man.html|manual]] +
-     * Play with the following knowledge bases: +
-       * [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_code/ch05/elect_ask.ail|elect_ask.ail]] electrical wiring example with askables; Example 5.10 from [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_113.html|Section 5.3.2]] +
-       * [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_code/ch05/elect_bug.ail|elect_bug.ail]] the buggy electrical wiring knowledge base from Example 5.14 in [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_118.html|Section 5.3.4.1]] +
-       * [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_code/ch05/elect_bug2.ail|elect_bug2.ail]] the buggy electrical wiring example from Exercise 5.6  +
-       * [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_code/ch05/elect_bug3.ail|elect_bug3.ail]] a buggy electrical wiring example, which fails to prove lit_l2, but should succeed  +
-       * [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_code/ch05/elect_cbd.ail|elect_cbd.ail]] electrical wiring example for consistency-based diagnosis; Example 5.20 in [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_124.html|Section 5.4.3]] +
-       * [[http://www.inf.unibz.it/~franconi/teaching/artint.info/code/ailog/ailog_code/ch05/elect_abd.ail|elect_abd.ail]] electrical wiring example with abduction; Example 5.31 in [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_133.html|Section 5.6]] +
-       * Exercises: [[http://www.inf.unibz.it/~franconi/teaching/artint.info/html/ArtInt_137.html|5.5, 5.6, 5.7, 5.9, 5.13]] ([[teaching:is:diag-rules-solutions|solutions]]) +
-  * <del><color #22b14c>LAB 7</color>: Planning with Certainty +
-    * Do {{ :teaching:is:ex_strips.pdf |Practice Exercise 8.A}} and {{ :teaching:is:ex_csp_planning.pdf |Practice Exercise 8.B}}; you can use the {{ :teaching:is:stripstocsp.jar.zip |STRIPS-to-CSP applet}} and exercise some of the sample problems pre-loaded on the applet ({{ :teaching:is:ex_strips_sol.pdf |Practice Exercise 8.A solution}} and {{ :teaching:is:ex_csp_planning_sol.pdf |Practice Exercise 8.B solution}})</del> +
-  * <del><color #22b14c>LAB 8</color>: Multiagent Systems and Games</del> +
-    * <del>xxx</del> +
- +
  
teaching/is/main_is.txt · Last modified: 2024/05/08 17:06 by Franconi Enrico