The University of Sheffield
Department of Computer Science

COM1005 Machines and Intelligence

Summary This module provides an introduction to Artificial Intelligence, and to key concepts and problems in the field, such as whether a computer is capable of understanding, and whether humans should themselves be viewed as machines. It also provides a brief historical overview of the subject and reviews the state-of-the-art and open questions in some of the major sub-areas of AI, pointing out connections to research work in the Department. As well as providing a first encounter with the main issues that underlie attempts to create Artificial Intelligence, the module also has a more practical component that introduces algorithms and data structures for AI problem solving through practical programming examples, as well as hands-on experience with simple programming of robots. The emphasis here is on identifying the abstract nature of the problem which is to be solved, matching this to an appropriate algorithm or technique and implementing a solution. It also serves as an introduction to programming for research rather than for software engineering.
Session Academic Year 2021/22
Credits 20
  • Blackboard quizzes
  • Assignments
  • Group assignment
Lecturer(s) Prof. Rob Gaizauskas, Prof. Tony Prescott & Dr Heidi Christensen
Aims The aims of the module are
  • to provide students with the historical and cultural context of modern day research into artificial intelligence
  • to introduce the student to the AI research carried out in the Department.
  • to introduce a number of classic AI problem-solving algorithms and data structures
  • to develop an ability to select appropriate techniques to address particular problems.
  • to develop the technical knowledge necessary to implement AI problem solving
  • to provide experience of scientific programming as opposed to software engineering.
Objectives By the end of the course the students should be able to:
  • Discuss the main issues involved in defining intelligence
  • Explain representative AI programs that are introduced in the module
  • Explore how AI is being used to create autonomous agents such as robots
  • Demonstrate the ability to select and implement appropriate techniques to address particular problems
  • Demonstrate the application of simple AI programs in robotics
Content Semester 1 content:

Semester 1 addresses foundational questions in AI about the nature and possibility of artificial intelligence, provides a brief historical overview of the subject and also reviews the state-of-the-art and open questions in some of the major sub-areas of AI.

Students will use both physical and simulated robots as an introduction to programming for research.

Topics covered in Semester 1:

  • What is intelligence? Is AI Possible?
    • Turing Test
    • Chinese Room Argument and Strong versus Weak AI
    • Physical Symbol System Hypothesis and Computationalism
  • Origins and Early History of AI
  • Open Questions in some of:
    • Robotics
    • Machine Learning
    • Machine Vision
    • Speech and Language Understanding
    • Knowledge Representation and Reasoning
  • Ethics and Artificial Intelligence

Semester 2 content:

In contrast to semester 1, the objective here is to give students knowledge and experience of AI programming by implementing classic symbolic problem-solving paradigms. It also provides students with experience of programming for scientific research in contrast with software engineering.

Topics covered in Semester 2:

  • State-space search: search algorithms and strategies.
  • The dynamic programming principle and A* search
  • Symbolic knowledge representation and pattern matching.
  • Reasoning in deductive systems: forward and backward chaining, production systems, rule networks and the RETE match algorithm.
  • Planning and goal reduction
  • AI, Connectionism and Perception - limitations of symbolic reasoning.
Teaching Method Lecture based, with assignments and lab classes in semester 1. Assignments and lab classes in semester 2.
Feedback Semester 1: Assignments will be marked using published criteria and returned within 3 weeks of submission. General feedback given during face to face labs and online interactive sessions.
Semester 2: Feedback on labs during the sessions as well as in lectures. Assessments will be marked using published criteria and the submissions commented. They will be returned within 3 weeks of submission.
Recommended Reading

Comprehensive Textbooks:

  1. Russell and Norvig: Artificial Intelligence: A Modern Approach [it is not necessary to buy this -- there is an e-copy in the library]
  2. Joe Minichino, Joseph Howse. Learning OpenCV 4 Computer Vision with Python 3: Get to grips with tools, techniques, and algorithms for computer vision and machine learning, 3rd Edition.