The University of Sheffield
School of Computer Science

COM413 Principles of Artificial Intelligence

Summary

This module provides students with practical skills to integrate modern AI technologies into real-world software applications. Rather than focusing on mathematical foundations, the course emphasises hands-on experience with contemporary AI frameworks, APIs, and cloud services.

Students will explore the current AI landscape, including large language models, reinforcement learning systems, and generative AI tools. The curriculum covers prompt-engineering, model selection, performance evaluation, and the critical decision-making process of when and how to incorporate AI capabilities into software projects.

Through working with pre-trained models and various AI service providers, students will learn to implement AI-powered features and manage data pipelines for AI systems. Practical experience with popular frameworks and cloud-based services will enable students to build applications that incorporate diverse AI capabilities.

The module places strong emphasis on the ethical and practical considerations of AI deployment, including bias detection and mitigation, privacy concerns, explainability requirements, and the social implications of AI-powered systems. Students will explore the environmental impact of AI systems, examining energy footprints and how training-inference trade-offs are reshaping approaches to AI scaling and deployment. Students will develop critical thinking skills to distinguish between marketing hype and genuine AI potential, enabling them to make informed technical decisions in this rapidly evolving field and understand the real limitations versus the potential for impact of future AI solutions.

Session Spring 2026/27
Credits 15
Assessment
  • AI Programming Task
  • Formal examination
Lecturer(s) Prof. Jon Barker
Resources
Aims

The aims of this module are to:

  • provide students with an understanding of the fundamental principles that underpin modern artificial intelligence systems.
  • develop an understanding of the principal approaches used for perception, reasoning, learning and decision making in AI.
  • enable students to select and apply appropriate AI techniques to solve computational problems.
  • develop practical experience of implementing AI methods using contemporary software tools and libraries.
  • develop critical awareness of the engineering, ethical and societal implications of deploying AI systems.
Learning Outcomes By the end of the unit, a student will have acquired:
  • Explain the principles of a range of models and approaches used in modern artificial intelligence.
  • Identify appropriate artificial intelligence tools and approaches to use for a given problem.
  • Use standard packages, frameworks and APIs to develop AI solutions to specific problems.
  • Critically analyse the ethical and societal impacts associated with AI use.
Content

The module introduces the principles and techniques underpinning modern artificial intelligence, including topics such as:

  • intelligent agents and rational decision making
  • search algorithms and problem solving
  • knowledge representation and logical reasoning
  • probabilistic reasoning and decision making under uncertainty
  • machine learning and neural networks
  • reinforcement learning
  • multimodal AI and perception
  • large language models and foundation models
  • AI engineering, deployment and evaluation
  • ethics, safety and responsible AI

Practical laboratory classes provide experience of implementing and evaluating AI techniques using contemporary software tools. Specific technologies and case studies may vary from year to year to reflect developments in this rapidly evolving field.

Restrictions

Only available to students on COMT19 MSc in Computer Science.

Teaching Method

The module is delivered through:

  • two lectures each week introducing key concepts and demonstrating practical applications
  • a weekly laboratory session in which students implement and investigate AI techniques using Python
  • directed reading and independent study
  • formative exercises providing opportunities for feedback before the assessed coursework
Feedback Feedback will be provided by:
  • written feedback and marks on the programming assignment
  • automated feedback and tutor support during laboratory classes
  • formative exercises with provided solutions discussed during lectures and labs