Undergraduate study
Computing & Web

Computer Science with Artificial Intelligence
BSc (Hons)

I402 BSc/CAI (I404 BSc/CAIFY for Year 0 entry)

 
 
 

Course overview

Artificial intelligence (AI) is increasingly important in developments in all parts of business and society. This course will provide you with knowledge of computer science topics and specialist skills in artificial intelligence, opening the door to a range of careers from automative design to health care.

You will develop strong theoretical and technical knowledge and skills in computer science as well as specialist knowledge and skills in artificial intelligence, which will provide the directly transferable skills for a career in the artificial intelligence industry.

You explore state-of-the-art technologies, concepts and theories supported by a thriving active research community. You will gain specialist knowledge and experience in the development of intelligent systems. Topics studied will include machine learning, agent based modelling, intelligent support systems, planning and logistics, virtual agents and hybrid algorithm design.

The distinctive nature of this award is the alignment with our AI and Machine Learning research groups coupled with direct involvement with industry partners throughout the student journey.

 

Course details

Course structure

Year 0 (foundation year) core modules

Agile Development Project

This module gives you the opportunity to undertake a programming project. Working in small teams, you design, develop and demonstrate a software solution that relates to an agreed requirements specification.

Computational Thinking

Algorithms are considered to be at the heart of computing and are critical to developing computer-driven applications. Designing algorithms requires you to think like a machine, using computational thinking to construct procedures to implement as computer programmes.

This module introduces you to the fundamental building blocks of algorithms through classic puzzles and recreational games. You develop your knowledge of design principles and your proficiency in creating algorithmic procedures by cultivating your ability to think computationally in solving puzzles and creating routines for playing simple, computer-enabled games.

Information Systems Development

This module introduces you to the analysis, design and development of simple information systems. You learn the tools, techniques and methods associated with information systems development, such as gathering requirements, modelling requirements, designing data models and implementing a solution.

Introduction to Mathematics

This module introduces the relevant mathematical notations and techniques if you are preparing to study a technical computing degree at undergraduate level. The emphasis is on developing the skills that enable you to understand technical specifications of computing devices.

Topics include the number systems prevalent in computing, algebraic manipulation and equation solving, and the concept of functions – both algebraic and graphical formulations.

The module is delivered through lecture and tutorial sessions. Worked examples illustrate how each mathematical technique is applied. Problem-solving tutorial exercises give you the opportunity to practise each skill or technique.

Introduction to Programming

This module is ideal if you have little or no experience of programming – it uses tools that are easily available, easy to use and familiar to anyone who has used a computer.

You learn how programming language constructs are applied to different problems of increasing complexity. All programming solutions are executed in a web browser although the module is not specifically targeting web development.

 

Year 1 core modules

Algorithms and Data Structures

You develop intricate programmes to solve complex problems, using data structures and appropriate algorithms. You study a variety of algorithmic techniques and the use and importance of data structures. You are introduced to classifying data according to its abstract behaviour, as distinct from its representation.

A range of well-established data structures are examined and their properties are described. You gain an understanding of the basic skills needed in algorithmic design and the interaction between algorithm and data structure in creating efficient code.

Internet Architecture and Security

The internet is a massive collection of networks that work together to enable the web. This module is intended to provide the next generation of web technologists a thorough understanding of the role of computer networks to fully appreciate and utilise within modern web-applications. Specific network design solutions are introduced; current trends in network design are explored, including the increased demand for bandwidth, mobile and wireless solutions. You will get hands on experience using key network devices for wired and wireless network.

Security threads, hazards and issues will be explored along with security risk assessment and management. Relevant protocols and hardware technologies will be introduced along with the role of legal requirements, social and ethical issues.

Java Applications Development

You study the syntax of Java programming language and the Java API, as well as object-oriented concepts including inheritance, abstraction and polymorphism. The emphasis is on problem solving, design and documentation adopted in Java Programming.

You gain an understanding of professional practice, codes of conduct and copyright/licencing.

Java Programming

You are introduced to the fundamental concepts of software development through Java programming language. You study key aspects of the software development process, including designing solutions, writing application code, developing documentation, and formal approaches to testing.

Mathematics and Problem Solving

You are introduced to the mathematics supporting computer science, including number bases, statistical methods, matrix algebra, and discrete mathematics.

You study topics in discrete mathematics which form the basis of the notation used in software specification. Statistical methods, including probability, are covered at an introductory level, preparing you for growing areas of computer science applications such as big data.

You are introduced to problem-solving using recreational problems, including games and puzzles, to convey algorithmic concepts.

Systems Design and Databases

Successful, robust and user-friendly systems or applications begin with a requirements analysis and detailed design. You are introduced to the concepts and techniques of systems analysis and design, enabling you to break down and simplify complex systems and represent them visually using industry-standard approaches such as Unified Modelling Language (UML). In industry, the resulting models are used to communicate designs to developers and stakeholders prior to implementation.

You learn to design and implement fully normalised relational databases as part of an information system. Using data modelling techniques you define how the system stores data and interacts with it. You implement your design using Structured Query Language (SQL): Data Definition Language for creating tables, and Data Manipulation Language for accessing the data.

You develop professional practice and transferrable skills essential for industry, including project management."

 

Year 2 core modules

Advanced Java Programming

A number of advanced topics in software construction will be explored. You will study object oriented design and examine a number of design principles that lead to better quality code, and a set of design patterns that solve commonly occurring software problems. In the second half of the module, you will be introduced to concurrency, middleware and software architecture. This is a very practical module that will encourage you to adopt agile software development methods.

Artificial Intelligence

This module provides a general introduction to artificial intelligence (AI) with real-world applications around us. This includes the fundamental concepts of AI, common frameworks used in the analysis and design of intelligent systems, generic algorithms used for implementation and major techniques used in problem solving. It also introduces popular applications of AI (for example, game design, virtual agents, robotics etc) and benefits of using AI (for example, how to enhance efficiency, productivity and reduce costs).

Artificial Intelligence Programming

This module examines the practicalities of building AI systems to solve problems, specify inference mechanisms and drive behaviours. It builds on earlier study of programming and algorithms to introduce the functional programming and artificial intelligence paradigms, bridging the gap between theoretical understanding and implementation to developing programming skills necessary to construct knowledge based artificial intelligence software.

The module primarily uses the Clojure dialect of Lisp (taking an approach that explores the semantics of the language rather than concentrating on its syntax) but may also make some use of a graphics and simulation environment (NetLogo) and in-house artificial intelligence modelling software.


Artificial Intelligence Team Project

Plan, design and build an AI app or model within a small software development team. You explore the frameworks, libraries, patterns and industry-standard development tools used to build today’s AI apps and/or model. This requires a professional approach, informed by current industry practice, to plan a successful software development project.

Relational and NoSQL Databases

You will develop your ability to design and implement database applications to meet business needs. A case study is used to follow the system development life cycle, and you will develop a server database application from inception to implementation for a real world scenario.

The module will investigate the issues and technologies associated with implementing and supporting databases and the services that are needed to maintain and access a repository of data. Investigations will be undertaken in a number of areas including data modelling, data management and approaches that support the modelling and visualisation of data for a range of use views.

 

Final-year core modules

AC Drives and Control

Agent-based Modelling

You investigate how to develop computer models and software simulations of the many naturally occurring systems that act in unexpected ways. You explore systems producing large-scale behaviours that are not predictable from their component parts; those ecosystems, human social organisations and financial markets which generate novel, emergent phenomena that are not easily explained by traditional computing methods.

You gain a theoretical understanding of these systems and strong practical skills in implementing models and simulations in NetLogo. You follow a research based approach where you undertake a significant amount of self-directed investigation and use a variety of appropriate resources.

Applied Machine Learning

Machine learning is an important topic in the area of artificial intelligence. The methodology involves building a model of a given task based on observations to make predictions about unseen data. Such techniques are useful when the desired output is known - but an algorithm is unknown, or when a system needs to adapt to unforeseen circumstances. Machine learning draws significantly from statistics and probability theory as (though the applications are many and various) the fundamental task is to make inferences from data samples. The contribution from other areas of computer science is also essential for efficient task representation, learning algorithms, and inferences procedures. You also gain an exposure to a breadth of tasks and techniques in machine learning.

Computing Project

You complete a large scale piece of work, under the supervision of an academic staff member. You produce a substantial artefact relating to the computing field, and complete your report and viva consisting of a presentation, demonstration and discussion of the artefact.

You are guided to develop an appropriate sense of work-discipline coupled with a professional outlook. You take responsibility for the planning and execution of an extended piece of work including the consideration of associated legal, social, ethical and professional issues. You are able to explore in depth a chosen subject area, and thereby demonstrate your ability to analyse, synthesise, and creatively apply what has already been studied on the programme while demonstrating critical and evaluative skills and professional awareness.


Internet of Things

The Internet of Things (IoT) incorporates a number of technologies, including wireless sensor networks, embedded systems, pervasive computing, machine learning, context awareness and distributed systems. IoT has been successfully applied to environmental monitoring, smart homes, industrial controls and digital cities.
You cover a mixture of theoretical and practical topics such as coverage of the range of IoT-enabled devices, low power communications, and processing data gained from the IoT. You also gain experience of practical skills required for the programming of IoT devices.

 

Modules offered may vary.

 

Our Disability Services team provide an inclusive and empowering learning environment and have specialist staff to support disabled students access any additional tailored resources needed. If you have a specific learning difficulty, mental health condition, autism, sensory impairment, chronic health condition or any other disability please contact a Disability Services as early as possible.
Find out more about our disability services

Find out more about financial support
Find out more about our course related costs

 
 

Entry requirements

Entry requirements

A typical offer is 96-112 tariff points.

For additional information please see the entry requirements in our admissions section

International applicants can find out what qualifications they need by visiting Your Country


You can gain considerable knowledge from work, volunteering and life. Under recognition of prior learning (RPL) you may be awarded credit for this which can be credited towards the course you want to study.
Find out more about RPL

 

Employability

Career opportunities

There are wide range of opportunities open to computer scientists with artificial intelligence ranging from foundation level:

• software analysts and developers
• computer scientists and computer engineers
• AI architect
• machine learning engineers

Industry demand for individuals with these skills sets is increasing at a significant rate, and with a shortage of skills in these areas demand is continuing to rise. As a Computer Science with Artificial Intelligence graduate you will be well placed to pursue a technical career in a wide range of industries

Throughout your course we offer a wide range of business networking opportunities for you to extend your knowledge of the industry and show case your skills, enhancing your opportunity of securing your dream job. We host events such as:-

ExpoTees our end of course showcase of graduate work which attracts over 150 business partners each year, these are businesses who are looking for the emerging talent in the digital fields.

ExpoTential and ExpoTalent are student showcase events taking place in the first and second year of your course. These events are aimed at preparing you for the final year ExpoTees event, ensuring you are at your best when you exhibit in your final year. These events attract around 80 business representatives all looking to identify future digital talent.

Students Futures Week – a week-long event in which business partners network with our students across all years of study. Providing industry panels, presentations and networking opportunities the week builds your professional skills and knowledge field preparing you for the next step in your career.

Drawing on our extensive industry links we invite guest speakers in your field to present to our students. Throughout your course we bring in industry speakers to ensure that you develop your knowledge of the industry that you plan to build your career in. In addition to covering technical subjects these speakers provide an insight into what employers are looking for in their employees, from technical to professional skills.

 

Information for international applicants

Qualifications

International applicants - find out what qualifications you need by selecting your country below.

Select your country:

  
 

Useful information

Visit our international pages for useful information for non-UK students and applicants.

Talk to us

Talk to an international student adviser

 
 

Full-time

Entry to 2019/20 academic year

Fee for UK/EU applicants
£9,250 a year

More details about our fees


What is included in your tuition fee?

  • Length: 3 years (or 4 years including a work placement)
  • UCAS code: I402 BSc/CAI
    I404 BSc/CAIFY for Year 0 entry
  • Semester dates
  • Typical offer: 96-112 tariff points and interview

Apply online (full-time) through UCAS

 

Part-time

2019 entry

Fee for UK/EU applicants:
£4,500 (120 credits)
More details about our fees

  • Length: Up to 6 years
  • Attendance: Daytime
  • Enrolment date: September
  • Admission enquiries: 01642 342639
  • Semester dates

Apply online (part-time)

 
 
 
 

Facilities

ExpoTalent is a unique opportunity to meet businesses to secure placements, internships and future employment opportunities.

 

Choose Teesside

iPad

Are you eligible for an iPad, keyboard and £300 credit for learning resources?

 

Accommodation

Live in affordable accommodation right on-campus

 

Campus

Study in our town-centre campus with over £270m of recent investment

 

Industry ready

Benefit from work placements, live projects, accredited courses

 

Get in touch

 

Open days

17 August 2019
Clearing fair

Book now