8Module Title: Advanced Topics in Artificial Intelligence
Teaching hours: 39
Credits: 7,5
Semester: 2nd
Instructor: Marakakis Emmanouil Professor
Course Objectives
Artificial Intelligence (AI) is a broad field. It is concerned with getting computers to do tasks that require human intelligence. The aim of this course is to teach students the fundamental concepts and principles of AI as well as advanced techniques of AI. In addition, its aim is to teach the appropriate programming tools for developing AI applications which use advanced AI techniques, as well as to develop an appreciation for the engineering issues underlying the design and development of AI systems. The students are expected to get the required knowledge in order to be able to develop projects and to carry out research in AI.
Indicative Syllabus
- The Prolog Language.
- Syntax and meaning of Prolog programs, unification.
- Lists and arithmetic in Prolog.
- Search trees, backtracking and negation.
- input-output predicates.
- User defined operators.
- Built-in predicates.
- Programming Techniques.
- Problem Solving by Search.
- State space representation of problems.
- Blind search techniques.
- Heuristic search techniques.
- Knowledge representation and reasoning schemes.
- Declarative and procedural knowledge representation.
- Reasoning.
- Knowledge representation and reasoning in logic (propositional logic, predicate logic)..
- Rule-based systems.
- Uncertain knowledge and reasoning.
- Knowledge-based Systems.
- Knowledge-based systems architecture.
- Knowledge acquisition.
- Tools for constructing knowledge-based systems.
- Knowledge-based systems development.
- Natural Language Processing.
- Definite clause grammar.
- Syntax and parsing.
- Semantics and meaning.
- Meta-programming.
- Ground representation.
- Non ground representation.
- Meta-interpreters.
- Other Topics in AI.
- Logic Programming.
- Automated Software Engineering.
Bibliography:
1. S. Russell, P. Norving, Artificial Intelligence: A Modern Approach, Prentice-Hall International, Third edition, 2010.
2. G.F. Luger, W. A. Stubblefield, Artificial Intelligence: Structures and Strategies for Complex Problem Solving, Addison-Wesley, 6th edition, 2009.
3. David Poole, Alan Mackworth, Randy Goebel, Computational Intelligence: a logical approach, Oxford University Press, 2004.
4. Bratko, “Prolog Programming for Artificial Intelligence”, Addison-Wesley, fourth edition, 2012.
5. W. F. Clocksin, C. S. Melish, “Programming in Prolog”, Springer-Verlag, 5th edition, 2003.