# Module Information

Module Identifier
CS26210
Module Title
The Artificial Intelligence Toolbox - Part ii: Programming in An Uncertain World
2014/2015
Co-ordinator
Semester
Semester 2
Pre-Requisite
Other Staff

#### Course Delivery

Delivery Type Delivery length / details
Lecture 20 Hours.

#### Assessment

Assessment Type Assessment length / details Proportion
Semester Assessment In class test  15%
Semester Assessment Programming exercise (approx 10 hours)  15%
Semester Assessment Written report (1,000 words)  20%
Semester Assessment Assignment (approx 30 hours)  will cover knowledge representation, Prolog, and Expert Systems  50%
Supplementary Assessment Resubmission of failed coursework components or ones of equivalent value.  100%

### Learning Outcomes

On successful completion of this module students should be able to:

1. Describe the importance of propositional and predicate logic in Artificial Intelligence systems.

2. Solve simple problems in propositional and first order predicate logic.

3. Write Prolog programs to solve simple AI problems.

4. Explain the function and use of fuzzy logic.

5. Explain the application of Bayesian probabilty to simple reasoning scenarios.

### Brief description

Artificial Intelligence (AI) has made many important contributions to computer science in general, and most experts believe AI techniques will become increasingly important. This module follows on from the introduction to the fundamental concepts of AI given in CS26110. Key issues including knowledge representation, reasoning and the problem of approximate information are addressed both theoretically and practically. Applications of AI techniques in computer security are discussed.

### Aims

Artificial Intelligence is the study of computer systems which can perform the sort of tasks that are usually associated with human intelligence. Examples are: chess playing, pattern recognition, anomaly and intrusion detection, speech understanding and problem solving. The aim of this module is to introduce the main ideas and current problems in Artificial Intelligence including the key concepts of knowledge representation, reasoning and the problem of approximate information. Students will be required to implement and utilise these concepts by means of an Artificial Intelligence programming language.

### Content

Knowledge representation [1 lecture]

All AI sets out to solve a problem. How do we represent problems and their solutions? We can use logic (symbolic) or numbers (sub-symbolic).

Logic and Reasoning (symbolic) [3 lectures]

What is logical representation and what can it do?
Inference: deduction, abduction and induction.

Prolog and Logic Programming [5 lectures]

Expert systems [2 lectures]

Uncertainty - Probability [4 lectures]

Probability (when things may or may not happen)
Probabilistic Reasoning and Baysian Nets.

Uncertainty - Fuzzy Sets and Systems [4 lectures]

Fuzzy sets (when things are partially true)
Fuzzy systems.