Guía Docente 2020-21


Id.: 30064
Subject type: OBLIGATORIA
Year: 3 Teaching period: Primer Cuatrimestre
Credits: 6 Total hours: 150
Classroom activities: 59 Individual study: 91
Main teaching language: Inglés Secondary teaching language: Castellano
Lecturer: DEL HOYO ALONSO, RAFAEL (T) Email:


Artificial intelligence (AI) is considered to be the new electricity. With electricity, the human being goes from living by day to living by day and by night. Today we do everything with electricity: the cold chain, communications, everything. In the same way, AI has a transverse DNA. It is not a technology that you decide to adopt or not, but one that you are already using on a daily basis. For example, your cell phone already has AI engines if you shop through Amazon or use Google, you are using artificial intelligence.
Professionals capable of designing and building this systems are highly appreciated in modern corporations. This course is an introduction to the methods and algorithms for developing intelligent software systems, with a focus in information representation and reasoning. We will review several topics originated in the Artificial Intelligence field, like datamining and machine learning, problem-solving techniques (graph search, heuristics), and in the field of Knowledge Engineering, like reasoning with ontologies. Theory will be complemented with programming assignments in Python, Java, RapidMiner, R ....This course builds on the knowledge and competences acquired by the student in previous courses like Discrete Mathematics, Programming Fundamentals,Algorithms and Data Structures, and Information Systems.


General programme competences G13 Capacity to use individual learning strategies aimed at continuous improvement in professional life and to begin further studies independently.
G14 Capacity for abstraction to handle various complex knowledge models and apply them to examining and solving problems.
G15 Capacity to structure reality by means of linking objects, situations and concepts through logical mathematical reasoning.
Specific programme competences E02 Capacity to apply the intrinsic engineering principles based on mathematics and a combination of scientific disciplines.
E03 Capacity to recognise the technical principles and apply the appropriate practical methods satisfactorily to analyse and solve engineering problems.
E12 Capacity to manage complexity through abstraction, modelling, 'best practices', patterns, standards and the use of the appropriate tools.
Learning outcomes R1 Present knowledge using various methodologies.
R2 Design and construct algorithms for automatic reasoning.
R3 Identify the 'difficult' problems and formulate some adequate strategies using 'intelligent' methods and techniques.
R4 Read and understand the basic Intelligent Systems bibliography.


Students enrolled in this course should have a good understanding of Python, Graph Theory, Relational Database Theory, and Algorithms and Data Structures


Subject contents:

1 - Artificial Intelligent Introduction
    1.1 - Introduction
2 - Machine Learning and Data Mining
    2.1 - Introduction to the Information Extraction
    2.2 - Clasification Methods
    2.3 - Clustering Methods
    2.4 - Deep Learning
3 - Knowledge Representation
    3.1 - Introduction to the Expert Systems
    3.2 - Logic and Knowledge Representation
    3.3 - Ontologies
    3.4 - Applications
4 - Search and Planning
    4.1 - Graph Search
    4.2 - Heuristic Search
    4.3 - Applications

Subject planning could be modified due unforeseen circumstances (group performance, availability of resources, changes to academic calendar etc.) and should not, therefore, be considered to be definitive.


Teaching and learning methodologies and activities applied:

The teaching methodology used in this course is Problem Based Learning (PBL).
Each topic, the teacher will present to the students a problem related to the topic corresponding to that module. The students must:
Analyze the problem
- Identify learning objectives, recognize what is known and what is not in relation to the problem.
- Develop a work scheme to address the problem.
- Gather information about the problem.
- Use the information collected to propose or develop a solution to the problem.
- Examine one's own ability to solve the problem, making self-control over one's own work done.
The problems will be available through the PDU. In Machine Learning units the problems will be based on python Notebooks on Colab platform. It is expected that the student will be able to perform the proposed activity throughout the difrents unitsc. Each activity will include a list of deliverables that must be prepared by the student for evaluation, and which will normally be a small document of 2-4 pages with the work scheme, the sources consulted, the proposed solution, the results and conclusions, as well as complementary auxiliary material (database schemas, database exports, executable programs ...).
From time to time, this documentation must be submitted to the teacher for evaluation. Through the PDU will be enabled special links that will allow the student to upload their material and through which the teacher will proceed to the evaluation of the activity. One of these links will be enabled for each activity to be delivered to facilitate its control.
Through the PDU, the delivery dates of each activity will be informed in a timely manner. The activities may be delivered after the deadline, as explained later in detail. The active participation of the student is very important, but given the eminently practical nature that has been given to this subject, the teacher expects to adequately motivate students to make the most of this course. That each student is able to self-assess and verify that they are really learning new things is also very important, and tutorials are a perfect place for the teacher to help answer any questions on this subject, so important in Continuous Learning and throughout of the life. Another important feature of this methodology is that minimum objectives are set to be overcome by subject, but not maximum. Each student is free to explore more complex alternatives than those requested in those topics that are of their immediate interest. This dedication has, of course, a taken into account  in the note obtained in the activity. Regarding the material necessary to follow the course, the student is recommended to acquire the basic bibliography. One of the recommendations we always make to new students is that they have at least one general reference book for each area of computer science, one that will not be easily outdated (such as the one proposed in the basic bibliography or Russell's and Norvig book for Artificial Intelligence). You will also need a computer with enough power and hard disk space to be able to install several database managers, as well as an internet connection to access the PDU. To be able to use virtual meetings, you must have a microphone, speaker and webcam.
In case of not entering the practice on time, 2 points of the grade will be reduced

Student work load:

Teaching mode Teaching methods Estimated hours
Classroom activities
Master classes 13
Practical work, exercises, problem-solving etc. 13
Debates 9
Workshops 15
Laboratory practice 2
Assessment activities 5
Extra-curricular activities (visits, conferences, etc.) 2
Individual study
Tutorials 2
Individual study 27
Individual coursework preparation 25
Group cousework preparation 9
Project work 17
Compulsory reading 9
Extra-curricular activities (visits, conferences, etc.) 2
Total hours: 150


Calculation of final mark:

Written tests: 25 %
Individual coursework: 10 %
Group coursework: 25 %
Final exam: 30 %
Participation: 10 %
TOTAL 100 %

*Las observaciones específicas sobre el sistema de evaluación serán comunicadas por escrito a los alumnos al inicio de la materia.


Basic bibliography:

Bonifacio Martín del Frio, Alfredo Sanz Molina, Redes neuronales y sistemas difusos, Alfaomega, 2002.
Dean Allemang and Jim Hendler, Morgan Kaufmann Semantic Web for the Working Ontologist (2nd ed.), 2011,
Drew Conway, John Myles White. Machine Learning for Hackers O\\\'Reilly Media February 2012
RUSSELL, S; NORVIG, P. Artificial Intelligence: A Modern Approach, 2nd ed. Prentice Hall, 2003

Recommended bibliography:

Recommended websites: