Reasoning Techniques
Full course description
Central in this course is how, based on available data, new knowledge and information can be obtained using reasoning processes. The course will be supported by tutorials, in which the acquired techniques can be put into practice by using Prolog. The following four techniques are discussed:
(1) Reasoning using logic: syntax, semantics, and inference in first-order logic, situation calculus, forward and backward reasoning, completeness, logic programming with Prolog.
(2) Problem solving using search: problem types, blind-search methods, informed-search methods, comparison of search methods, games as search problems, minimax, alpha-beta pruning, Monte Carlo Tree Search, chance games, constraint satisfaction problems.
(3) Planning: planning in situation calculus, representation of states, goals and operators, state space and plan space, algorithms for classic planning.
(4) Reasoning with uncertainty: uncertainty and probability theory, conditional probability, the Rule of Bayes, semantics of belief networks, exact and approximate inference in belief networks.
Prerequisites
Desired Prior Knowledge: Introduction to Data Science and Knowledge Engineering, Logic.
Recommended reading
Required literature:
- Russell, S. and Norvig, P., Artificial Intelligence: A Modern Approach, 4th edition. Pearson, 2020.
- Bratko, I. (2012). Prolog: Programming for Artificial Intelligence, 4th edition. Addison-Wesley.