Logo

Artificial Intelligence

Code: 102768
Credits: 6
2026/2027
Degree programme Type Course
Computer Engineering OB 2

Contact lecturer

Name :
Maria Vanrell Martorell
Email :
maria.vanrell@uab.cat

Teaching staff

Carles Sanchez Ramos
Guillem Arias Bedmar
Alberto Rubio Perez
Jordi Cortes Comellas

Group languages

You can consult this information at the end of the document.

Prerequisites

Given the introductory nature of this subject, we assume the student does not have any previous knowledge about this topic. Is the aim of the subject to give to the students the means to acquire the knowledge contents described in the contents section of this guide. About other skills we expect from the students:

  • Having coursed a technological or scientific background in the secondary school.
  • Having passed the programming subjects of the 1st and 2nd year of this degree.
  • Knowing basic notions of python programming
  • Having skills at a user level of one of the following platforms (Windows, Mac or Linux)
  • Having access to a computer, and much better if it is a laptop

Objectives

This is a subject devoted to introducing the Student to the artificial intelligence (AI) field. Two main objectives are pursuit:

a)    let the students to learn how resolution of AI problems is performed with their own specificities in representation, evaluation and solving methodologies, and

b)    let the students to know a wide range of techniques and basic algorithms that allow to solve the proposed problems and improving their programming skills.

More specifically, these two aims are pursuing:

  • Giving a basic historical introduction and aims of the AI field
  • Facing the student with the problem of selecting a good knowledge representation as the basic step to solve an AI problem
  • Familiarize the student in 4 different knowledge representations and their corresponding algorithms.
  • Giving to the student the ability to design solutions to contextualized problems
  • Giving to the student the ability to present and justify the adequacy of the designed solutions.

Learning outcomes

  • CM18 (Integrate all components of a smart decision-making system.) Integrate all components of a smart decision-making system.
  • KM17 (Identify the basic problems that must be solved in problems of exploration of alternatives, pattern recognition and logical reasoning in artificial intelligence.) Identify the basic problems that must be solved in problems of exploration of alternatives, pattern recognition and logical reasoning in artificial intelligence.
  • KM19 (Explain knowledge representations and appropriate algorithms that can be used to solve basic problems in artificial intelligence.) Explain knowledge representations and appropriate algorithms that can be used to solve basic problems in artificial intelligence.
  • SM24 (Identify the best software tools to code the techniques that make it possible to solve search, classification and reasoning problems in artificial intelligence.) Identify the best software tools to code the techniques that make it possible to solve search, classification and reasoning problems in artificial intelligence.

Contents

1. Introduction to AI. Aim and brief history of the field. Definition of rational agent, methodologies for solving AI problems and knowledge representation.

2. Problem solving by Searching on alternatives

2.1. Informed Search. Basic definitions on search and review of non-informed search algorithms. Analysis of search algorithms: Completeness, Optimality and Complexity. Heuristic concept and examples. Informed Search: basic and optimal. A* and its properties. Effective branching factor and heuristic properties.

2.2. Local Search. Basic definitions, pros and cons. Understanding local search as exploring the heuristic function landscape. Local search with known goal: Hill-Climbing algorithm. Problems of local search: local maxima, plateaus and ridges. Local search with unknown goal: Steepest Ascent, Steepest Ascent with local maxima control, Simulated Annealing.

2.3. Adversarial Search with Minimax. Basic definitions. Minimax algorithm. Examples. Alpha-beta pruning. Complexity analysis. Minimax improvements: progressive deepening, singular extension heuristic (horizon effect). Examples of heuristic functions.

2.4. Adversarial Search with Random Simulations. Basic definitiions. Monte-Carlo Tree Search algorithm. Examples.

3. Solving pattern recognition problems.

3.1. Statistical approaches. Feature spaces as a representation for case-based reasoning. Basic definitions on feature spaces. Feature selection and dimension reduction. Classification based on supervised learning: decision functions, assumptions about the data distribution, local search to find decision function, k-nearest neighbour functions. Classification based on unsupervised learning: K-means algorithm, searching the best k with Fisher discriminant. Analysis of the algorithms.

3.2 Structural approaches. Graphs and semantic networks. Basic definitions and representation with adjacency matrices. The graph matching problem, basic algorithms, improvements (AC4) and complexity. Inexact graph matching: similarity measures, edition distance. Study case: String-matching.

4. Solving problems of reasoning

4.1. Logic and inference mechanisms. Knowledge representation: propositional logic and predicate logic. Review of basic algorithms: natural deduction, resolution mechanism, unification, clausal form conversion. Basic definitions and algorithms on rule-based Systems: rule base, working memory, rule chaining mechanisms, conflict resolution strategies.

Learning activities and methodology

Title Hours ECTS Learning outcomes
Theoretical lectures 30 1.2 KM17, KM19
Individual study 38 1.52 KM17, SM24
Problem-based sessions 10 0.4 CM18, SM24
Practical work on project 51 2.04 CM18, KM17, KM19, SM24
Practical sessions 12 0.48 CM18, SM24

Artificial Intelligence is defined by the type of problems is trying to solve, thus in this course, the type of problem is organizing the course content. We will work in three different types of sessions:

  • Theoretical session: These sessions are classical lectures based on the lecturer explanations, motivating the students to participate in order to ensure they are achieving the knowledge transmission.
  • Problem-based session: These sessions are with a more reduced number of students to facilitate interaction. In these sessions we pursuit to reinforce the understanding of the topics presented in theoretical sessions by posing practical cases that require the design of a solution using the methods presented in theory. It is impossible to follow these sessions without following theoretical sessions, since they are strongly linked. In these sessions we do interactive quizzes to evaluate the participation and the the achievements of the students.
  • Practical session: It is the type of session where different activities are performed connected to perform individual and team-based projects. Different kinds of activities are done in these sessions: (a) sessions for team work but tutored by teaching assistants, (b) sessions to individually evaluate through quizzes to the students on site, (c) sessions to present the results, where all the team members must explain and defend the results of the developed project.
Annotation: within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.

Assessment

Continuous assessment activities

Title Weight Hours ECTS Learning outcomes
Practical project defence (Report+Code+Intra_grupal+Presentation+Quiz) 0.4 3 0.12 CM18, KM19, SM24
Delivery of solved exercises 0.1 0 0 KM17, KM19
Individual Exam 0.24 6 0.24 CM18, KM17, KM19

To evaluate the learning level of the students we establish a formula that combines acquisition of knowledge, abilities in problem solving and the skills to work in a team as well as to justify the obtained results in a project.

Final grade is computed as a weighted sum of the marks obtained in the different performed activities:

Final Score = 0.5 * Theory Score + 0.1 * Problem Score + 0.4 * Practice Score

This formula will be computed only in the case that Theory Score is greater or equal than 5, and the Project Score is greater or equal than 6. No constrain is applied on the Problem Score. If the Final Score is >=5, but the minimum thresholds are not achieved in on the the Scores, then the Score in the transcript will be 4.5.


The Theory Score is calculated as the average of the score of two Partial Exams:

Theory Score = 0.5 * Partial 1 Score + 0.5 * Partial 2 Score

this mark is computed only if the Partial Scores are both equal or greater than 3.5. When the Scores are given, a date and time of an Exam Review Session will be announced.

Retake Exam. In case the Theory Score does not achieve the 5 to pass, the student can retake the exam 1, the exam 2 or both. To compute the final Theory Score we consider the maximum between the first mark and the corresponding retake mark.


The Problem Score pursuits the student to work on the theoretical content as they are given during the course, specific problems are posed to make the student have to apply the theoretical contents just after they have been explained in the lectures. To evaluate this activity students are asked to do a weekly delivery of solved problems, and the active participation of the students in the weekly Problem Sessions.

Problem Score = 0.7 * Deliveries Score + 0.15 * Session Attendance + 0.15 * Session-Quiz Scores

this score is included in the Final Score if the % of deliverables is superior to 70% of the total.


The Practice Score has an essential weight in the final mark, it pursuits the student to program and explore the studied techniques within the frame of the global goal of a contextualized project. Additionally, the student has to demonstrate its skills in doing all this work both, individually and in a team, and defending the final results in a presentation. The final Project Score is computed as:

Practice Score = 0.5 * Project 1 Score + 0.5 * Project 2 Score

To compute this Score every one of the projects has to get a mark greater or equal than 6. The mark for each one of the projects is computed from a compilation of marks:

Project 1 Score= 0.5 * Code + 0.5 * Exam

  • Code Score: is evaluated with quizzes where the student uploads parts of the code.
  • Exam Score: is evaluated with an exam where the student can access own code on personal laptop.

Code Score and Exam Score must be greater or equal than 6.

Project 2 Score= 0.3 * Code + 0.3 * Report + 0.15 * Group Presentation + 0.15 * Individual Presentation + 0.1 Intragroup Evaluation

  • Code Score: is evaluated with quizzes where the student uploads parts of the code.
  • Report Score: is evaluated with a delivered report
  • Group Presentation Score: is evaluated with the presentation document
  • Individual Presentation Score: is evaluated with the oral presentation and posterior Q&A.
  • Intragroup Evaluation Score: is evaluated with a quizz.

All these Scores (Code, Report, Group Presentations, Individual Presentation, and Intragroup Evaluation) must be greater or equal to 6.

Attendance to Practice Sessions must be superior to 70% and the attendance to the Oral Presenatation is mandatory for all the team members. We recommend to bring a personal laptop for the Final Practicum Quizes and a mobile phone for the Problems and ordinary Practice Sessions.


Practice Retake. If a Project grade does not reach the required level to obtain a passing final grade, the student will have the opportunity to retake it. If any project grade has had to be retaken, the final grade for that project will be capped at 7 out of 10. In the specific case of having to retake the Individual Grade for Project 2, this will be done through a Project 2 Exam similar to the Project 1 Exam.

Single Assessment

This course does not have single assessment.

Important notes:

In case the subject is not passed due to one of the evaluation activities does not arrive to the minimum required score, the final score in the transcript will be the minimum between 4.5 and the final mark obtained if the threshold is not considered, with the exception that the numeric score in the transcript will be in between 3.0 and the final mark obtained if the threshold is not considered, for the case the student have performed any irregular act in an evaluation activity, such as those explained below.

Grade will be “Non-Graded” (“No Avaluable”) in the case the student did not participate in any of the evaluation activities.

Grade will be “Honours” (“Matrícula d’Honor”) in the case the rank of the grade is less than the maximum number of honours can be given in a course, and the value of the grade is over a threshold that will be stablished by the teacher.

The evaluation and delivery dates will be published Campus Virtual cv.uab.cat and might be shifted if there is any change in the planning due to any unexpected event. Students will be informed about any change through cv.uab.cat that will be the usual communication mean between students and teachers.

For the case of students retaking the course, no recognition with grades of the previous year will be considered.

Notwithstanding other disciplinary measures deemed appropriate, and in accordance with the academic regulations in force, assessment activities will receive a zero whenever a student commits academic irregularities that may alter such assessment. Assessment activities graded in this way and by this procedure will not be re-assessable. If passing the assessment activity or activities in question is required to pass the subject, the awarding of a zero for disciplinary measures will also entail a direct fail for the subject, with no opportunity to re-assess this in the same academic year. Irregularities contemplated in this procedure include, among others:

  • the total or partial copying of a practical exercise, report, or any other evaluation activity,
  • allowing others to copy,
  • presenting teamwork that has not been entirely done by the members of the team,
  • presenting any materials prepared by a third party as one’s ownwork, even if these materials are translations or adaptations, including work that is not original or exclusively that of the student,
  • having communication devices (such as mobile phones, smart watches, etc.) accessible during theoretical-practical assessment tests (individual exams).

In this course, it is allowed to use Artificial Intelligence (AI) technologies as an integrated tool to deploy the tasks if the final result shows up a significant contribution of the student in analysis and personal thoughts. The student must clearly identifty which parts have been generated with the AI tool, identifying which tools have been used, and to include a critical thought about how these tools have determined the process and the final result of the activity. The lack of transparency in the use of AI will be considered a breach of academic integrity and may result in a grade penalty for the activity, or more severe sanctions in serious cases.

An overall grade of 5 or higher is required to pass the subject. A "non-assessable" grade cannot be assigned to students who have participated in any of the individual partial tests or the final exam.

No special treatment will be given to students who have completed the course in previous academic years, except that the seminar grade previously obtained can be assigned to this course gradebook.

The grade in the Transcript of Records (ToR) will be thelowest value between3.0 and the weighted average grade, in the eventof irregularities having been committed for any assessment activity (and therefore re-assessment will not be possible).

If an exam needs to be rescheduled, you must follow the Engineering School Protocol for Requesting the Rescheduling of Assessment Activities.

Bibliography

  • S. Russell i P. Norvig, Artificial Intelligences - A modern approach. Prentice Hall, 2022, http://aima.cs.berkeley.edu/

https://bibcercador.uab.cat/permalink/34CSUC_UAB/avjcib/alma991010688804606709

  • Tveter, Donald R., (1998), The Pattern Recognition basis of Artificial Intelligence. IEEE Computer Society.
  • Stuart Russell. Human Compatible: AI and the Problem of Control Penguin Publishing Group, Octubre 2019
  • Melanie Mitchell. Artificial Intelligence: A Guide for Thinking Humans. Farrar, Straus and Giroux, Octubre 2019.

Interesting videos:

  • Documental CODEBREAKER http://www.turingfilm.com/about/overview
  • Documental Netflix AlphaGo (2017) https://es.wikipedia.org/wiki/AlphaGo_(pel%C3%ADcula)

Software

Tools for Programming in Python Language with special attention to the Numpy library

Course groups and languages

The information provided is provisional until November 30. After this date, you will be able to consult the language of each group through this link. To access the information, you will need to enter the course CODE

Type of teaching Group Language Semester Shift
(TE) Theory 41 English second semester morning-mixed
(TE) Theory 43 Catalan second semester morning-mixed
(TE) Theory 45 Catalan second semester afternoon
(PAUL) Classroom practices 411 English second semester morning-mixed
(PLAB) Practical laboratories 411 English second semester morning-mixed
(PAUL) Classroom practices 412 English second semester morning-mixed
(PLAB) Practical laboratories 412 English second semester morning-mixed
(PLAB) Practical laboratories 413 English second semester morning-mixed
(PLAB) Practical laboratories 414 Catalan second semester morning-mixed
(PLAB) Practical laboratories 415 Catalan second semester morning-mixed
(PLAB) Practical laboratories 416 Catalan second semester morning-mixed
(PLAB) Practical laboratories 417 Catalan second semester morning-mixed
(PLAB) Practical laboratories 418 Catalan second semester morning-mixed
(PLAB) Practical laboratories 419 Catalan second semester morning-mixed
(PLAB) Practical laboratories 420 Catalan second semester morning-mixed
(PLAB) Practical laboratories 421 Catalan second semester morning-mixed
(PLAB) Practical laboratories 422 Catalan second semester morning-mixed
(PLAB) Practical laboratories 423 Catalan second semester morning-mixed
(PAUL) Classroom practices 431 Catalan second semester morning-mixed
(PAUL) Classroom practices 432 Catalan second semester morning-mixed
(PAUL) Classroom practices 451 Catalan second semester afternoon
(PAUL) Classroom practices 452 Catalan second semester afternoon