Programming for Artificial Intelligence
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
XD33PUI | Z,ZK | 4 | 14+6s | Czech |
- 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. Requirements for artificial intelligence programming. Principles of declarative programming languages
2. Logic programming principles. Introduction to Prolog and querry processing
3. Prolog: atoms, numbers, lists. recursion
4. Prolog: special predicates (not, set-of) and its use (graph search)
5. Foundations of constrain logic programming (CLP)
6. Programming in Eclipse, solving scheduling problems
7. Principles and exploitation of functional programming
8. Lisp: Foundations of Lisp, atoms, lists, functions
9. Lisp: Itterate constructs, lambda calculus, parallel state space search
10. CLOS - oject-oriented programming in Common Lisp
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. Declarative programming in Prolog
2. Facts, rules, queries in Prolog. List and basic operations on them
3. Negation in Prolog. Implementation of various types of search
4. Task 1 - programming in Prolog
5. Task 1 - programming in Prolog
6. CLP system Eclipse demonstration
7. Functional programming in Lisp
8. Parallel state space search in Lisp
9. Task 2 - implementing parallel state space search
10. Task 2 - implementing parallel state space search
11. CLOS (Common Lisp Object System)
12. Hands on exercise with rule based programming in Jess
13. Task 1 and Task 2 - demonstration and results presentation
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
- 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)