E36JUI - Languages for Artificial Intelligence

 
Semester: Winter 2006/2007  
Lecturer: Doc. RNDr. Josef Kolář,CSc.
Course timetable:  http://www.feld.cvut.cz/FEE/education/rozvrhy/predmety/01/01/p10180.html
Lecture : Room K4  Thu 18:00-19:30
Labs: Room K311 Tue 11:00-12:30

Lecture outline:

  1. Basic features of languages for AI, Lisp: atoms, symbolic expressions, definition of variables and functions.
  2. Conditions and predicates, basic operations with symbolic expressions.
  3. Rational agents, simple implementation.
  4. Standard functions, eval-apply-funcall, types of recursion.
  5. Argument definition, generalized variables, modification functions.
  6. Implementation of search, heuristic search.
  7. Control structures, lambda, mapping functionals, structures.
  8. Macros, structure definition, metods and generic functions.
  9. I/O operations, strings and chars, arrays, hash tables.
  10. Programming style, games, alpha-beta procedure, CSP.
  11. Prolog, program structure and execution, data types.
  12. Declarative and procedural semantics, lists, search implementation.
  13. Backtracking and cut, standard predicates, implementation of CSP.
  14. Reserved
(Lecture syllabi in .PPT format can be found here)

Lab program outline:

  1. Functional notation, inductive/recursive definition of numerical functions, symbolic data types.
  2. LispWorks System, debugging and extending functions from lab 1.
  3. Design and testing of functions that process symbolic expressions, debugging in LispWorks.
  4. Designing efficient recursive functions, profiling.
  5. AIMA code (doc, utilities) – modification and testing of selected functions.
  6. AIMA code (agents, search) – modification and testing of selected functions.
  7. Team formation and homework projects assignment.
  8. Consultation to projects, usage of control structures.
  9. Consultation to projects, usage of macros.
  10. Consultation to projects, usage of I/O functions and hash tables.
  11. Consultation to projects.
  12. Prolog programming environment, debugging simple programs.
  13. Presentation and evaluation of projects.
  14. Assessment.

Supplementary info:

  • Software
  • Useful informations
  • Examples
  • Tests
  • Homework projects
  • Literature
  • Grading
  • Exams 2006/2007: January 11, January 16
  • February 5

    Software:

    Useful informations:

    Examples:

    ... to be presented later ...

    Basic info concerning homework projects:

    Literature:

  • Kolář, J.: Jazyky pro umělou inteligenci. Skripta, Vyd. ČVUT, 1996
  • Slade, S.: Object-Oriented Common Lisp. New Jersey, Prentice Hall 1998

  • lokálně, lokálně ps
    archiv html stránek, lokálně, lokálně ps z html
  • S. Russell - P. Norvig: Artificial Intelligence: A Modern Approach Prentice Hall, 2003.
  • Paula Graham's WWW pages
  • Seibel, P.: Practical Common Lisp. Apress, 2005, ISBN 1-59059-239-5
  • Bratko, I.: PROLOG Programming for Artificial Intelligence (3rd Ed). Addison-Wesley, 2000.
  • CAPI User Guide, pdf, ps, lokálně, locally ps z html
  • CAPI Reference Manual, pdf, ps, locally
  • Grading:

     
    Points gained What for
    50
    Labs and project
    50
    Final exam
     
    Points Grade
    >= 80
    >= 70
    2
    >= 60
    3



    J. Kolář / kolar@fel.cvut.cz
    Last change: 17. 1. 2007