Programming for Artificial Intelligence
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
XE33PUI | Z,ZK | 4 | 2+2s |
- The course is a substitute for:
- Programming for Artificial Intelligence (X33PUI)
- Lecturer:
- Tutor:
- Supervisor:
- Department of Cybernetics
- Synopsis:
-
Introduction to alternative programming languages that are suitable for design of artificial intelligence techniques and methods. Logic programming in Prolog and introduction to constrain logic programming (CLP). Principles of symbolic and funkcional programming in Lisp and object-oriented symbolic programming. Foundations of rule-based programming in JESS environment and introduction to programming techniques for multi-agent systems design.
- Requirements:
-
Attending the labs, completing the Task 1 and the Task 2, demonstrating and presenting the results
- Syllabus of lectures:
-
1.Principles and exploitation of functional programming
2.Lisp: Foundations of Lisp, atoms, lists, functions
3.Lisp: Itterate constructs, lambda calculus, parallel state space search
4.CLOS - oject-oriented programming in Common Lisp
5.Requirements for artificial intelligence programming. Principles of declarative programming languages
6.Logic programming principles. Introduction to Prolog and querry processing
7.Prolog: atoms, numbers, lists. recursion
8.Prolog: special predicates (not, set-of) and its use (graph search)
9.Foundations of constrain logic programming (CLP)
10.Programming in Eclipse, solving scheduling problems
11.Rule-based programming foundataions
12.Syntax and applications of Jess (Java Expert System Shell)
13.Design of a knowledge base for an expert system
14.Programming for multi-agent systems
- Syllabus of tutorials:
-
1.Introduction, labs organization. Functional programming in Lisp
2.Parallel state space search in Lisp
3.Task 1 - implementing parallel state space search
4.Task 1 - implementing parallel state space search
5.CLOS (Common Lisp Object System)
6.Declarative programming in Prolog
7.Facts, rules, queries in Prolog. List and basic operations on them
8.Negation in Prolog. Implementation of various types of search
9.Task 2 - programming in Prolog
10.Task 2 - programming in Prolog
11.Task 1 and Task 2 - demonstration and results presentation
12.Task 1 and Task 2 - demonstration and results presentation
13.Hands on exercise with rule based programming in Jess
14.Credit assignment
- Study Objective:
- Study materials:
-
[1] Graham, P.: Ansi Common Lisp. New Jersey, Prentice-Hall, 1996
[2] Giarantano, J., Riley, G.: Expert Systems - Principles and Programming. Boston, PWS Publishing Company, 1994
[3] Clocksin, W. F., Melish, C. S.: Programming in Prolog. Berlin-Heidelberg-New York, Springer Verlag, 1994
[4] Bratko, I.: PROLOG Programming for Artificial Intelligence, Addison-Wesley 2001
- Note:
- Further information:
- No time-table has been prepared for this course
- The course is a part of the following study plans:
-
- Cybernetics and Measurements- structured studies (compulsory elective course)