Skip to main content

Artificial Intelligence

Credits
6
Types
  • GRAU: Specialization compulsory (Computing)
  • GCED: Elective
Requirements
Department
CS
Web
https://sites.google.com/upc.edu/intelligencia-artificial
Artificial intelligence is a multi-disciplinary science that combines concepts and methods from diverse areas such as mathematics, computer science, philosophy, psychology and biology. Its main objective is to provide computer systems with characteristics or behaviors that simulate intelligence. With more than 60 years of history as an independent scientific discipline, it has been integrated in a wide range of industry sectors to create decision support systems, diagnose systems, automatic control mechanisms or industrial and domestic robotics, to name a few. Currently, the emergence of web technologies and the availability of increasingly powerful mobile devices has boosted artificial intelligence, becoming a powerful mechanism to create systems that reduce the difficulty of finding and using information or applications on the network, or even being the basis of innovation to create new applications and successful products. The Google search engine, Amazon's recommender system, autonomous driving vehicles or the latest generation of video games that adapt to the user's playing skills are some good examples. In this course we aim to give an overview of artificial intelligence, introducing the types of problems that can be solved, its theoretical foundations, the basic techniques and how to apply them. The approach of the course will be to balance theory with practical activities.

Teachers

Person in charge

Others

Weekly hours

Theory
3
Problems
0
Laboratory
1
Guided learning
0.4
Autonomous learning
5.6

Competences

Teamwork

  • G5 [Avaluable] - To be capable to work as a team member, being just one more member or performing management tasks, with the finality of contributing to develop projects in a pragmatic way and with responsibility sense; to assume compromises taking into account the available resources.
    • G5.3 - To identify the roles, skills and weaknesses of the different members of the group. To propose improvements in the group structure. To interact with efficacy and professionalism. To negotiate and manage conflicts in the group. To recognize and give support or assume the leader role in the working group. To evaluate and present the results of the tasks of the group. To represent the group in negotiation involving other people. Capacity to collaborate in a multidisciplinary environment. To know and apply the techniques for promoting the creativity.
  • Entrepreneurship and innovation

  • G1 [Avaluable] - To know and understand the organization of a company and the sciences which govern its activity; capacity to understand the labour rules and the relation between planning, industrial and business strategies, quality and benefit. To develop creativity, entrepreneur spirit and innovation tendency.
    • G1.3 - To have strong decision-making skills. To use knowledge and strategic skills for the creation and management of projects, apply systematic solutions to complex problems, and design and manage the innovation in the organization. To demonstrate flexibility and professionalism when developing her work.
  • Computer science specialization

  • CCO2 - To develop effectively and efficiently the adequate algorithms and software to solve complex computation problems.
    • CCO2.1 - To demonstrate knowledge about the fundamentals, paradigms and the own techniques of intelligent systems, and analyse, design and build computer systems, services and applications which use these techniques in any applicable field.
    • CCO2.2 - Capacity to acquire, obtain, formalize and represent human knowledge in a computable way to solve problems through a computer system in any applicable field, in particular in the fields related to computation, perception and operation in intelligent environments.
    • CCO2.4 - To demonstrate knowledge and develop techniques about computational learning; to design and implement applications and system that use them, including these ones dedicated to the automatic extraction of information and knowledge from large data volumes.
  • Objectives

    1. Know the origins and foundations of artificial intelligence.
      Related competences: CCO2.1,
    2. Understand the basic concepts: artificial intelligence and rationality.
      Related competences: CCO2.1,
    3. Learn different problem-solving techniques based on search.
      Related competences: CCO2.1,
    4. Understanding knowledge representation concepts and techniques.
      Related competences: CCO2.1,
    5. Analyze a problem and determine which problem-solving techniques are best suited.
      Related competences: G1.3, G5.3, CCO2.2,
    6. Analyze the knowledge needed to solve a problem.
      Related competences: G5.3, CCO2.1, CCO2.2,
    7. Extracting and representing the knowledge needed to build an application in the field of knowledge-based systems.
      Related competences: G5.3, CCO2.2,
    8. To analyze a problem and determine which representation and reasoning techniques are best suited.
      Related competences: G1.3, G5.3, CCO2.1, CCO2.2,
    9. Understand the basic planning concepts and techniques.
      Related competences: CCO2.1,
    10. Extract and represent the actions needed to solve a problem by means of a planner.
      Related competences: CCO2.2,
    11. Understand the machine learning concept and know some of its types.
      Related competences: CCO2.1, CCO2.4,
    12. Understanding the relationship between adaptation and learning.
      Related competences: CCO2.1, CCO2.4,
    13. Applying machine learning techniques to simple problems.
      Related competences: CCO2.4,
    14. Knowing some artificial intelligence application areas.
      Related competences: G1.3, G5.3, CCO2.1,

    Contents

    1. Introduction to Artificial Intelligence
      What is Artificial Intelligence? Origins and foundations of artificial intelligence. Application areas.
    2. Problem-Solving by means of Search
      Introduction to automatic probelm-solving methods: state space representation, informed and local search algorithms, genetic algorithms, games, and constraint satisfaction problems.
    3. Knowledge representation and reasoning
      Introduction to knowledge representation techniques. Motivation. Procedural representations and production systems. Structured representations (Ontologies). Representing uncertainty in knowledge.
    4. Planning
      Introduction to problem-solving through planning. Linear and hierarchical planning. Planning in deterministic and stochastic environments.
    5. Machine Learning
      Machine Learning and its role in systems which adapt to the user or the environment. Types of learning. Learning Decision Trees. Artificial Neural Networks.
    6. Other Artificial Intelligence techniques, areas and applications
      Data Mining, Case Based Reasoning, Qualitative Reasoning, Multiagent Systems, Automatic Text and Speech Processing, Perception and Vision, Recommender Systems, Intelligent Tutor Systems, Artificial Intelligence in Web Services' environments, Grid Computing and Cloud Computing.

    Activities

    Activity Evaluation act


    Introduction to Artificial Intelligence

    Students will learn the origins and foundations of Artificial Intelligence and some of the application areas. To reinforce learning, the student must read chapter 1 of the book of Russell & Norvig, which is available online.
    Objectives: 2 1 14
    Contents:
    Theory
    2h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    2h

    Problem-Solving through Search

    Students not only should attend the teacher lectures, but also do exercises on the use of search algorithms, and participate in discussions with the teacher and other students on when is best to use each of the algorithms. In the laboratory students will apply what they learned in a moderate problem.
    Objectives: 3 5 6
    Contents:
    Theory
    16h
    Problems
    0h
    Laboratory
    5h
    Guided learning
    0h
    Autonomous learning
    31h

    Delivering the Search practical assignment.

    Delivery of the report on the search algorithms practical assignment that students have done in the lab sessions.
    Objectives: 3 5
    Week: 6
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    0h

    Partial AI exam

    Partial exam on problem solving
    Objectives: 3 5 6
    Week: 7
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    0h

    Knowledge Representation and Reasoning

    Students not only should attend the teacher lectures, but also do exercises on the use of Knowledge Representation techniques and discuss with the teacher and other students on when is best to use each technique. In the laboratory students will apply what they learned in a moderate problem.
    Objectives: 4 6 7
    Contents:
    Theory
    15h
    Problems
    0h
    Laboratory
    7h
    Guided learning
    0h
    Autonomous learning
    25.5h

    Problem-solving through Planning

    Students not only need to attend the presentations the teacher, but also do exercises on the use of planning algorithms, and participate in discussions with the teacher and other students on when is best to use each of the algorithms. In the laboratory students will apply what they learned in an easy problem.
    Objectives: 6 9 10
    Contents:
    Theory
    6h
    Problems
    0h
    Laboratory
    3h
    Guided learning
    0h
    Autonomous learning
    9h

    Delivering the Knowledge Representation practical assignment.

    Delivery of the report of the practical assignment on knowledge representation that students have developed in the laboratory.
    Objectives: 4 6 7 8
    Week: 12
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    0h

    Machine Learning

    Students not only should attend the teacher lectures, but also do exercises on the use of basic Machine Learning algorithms and participate in discussions with the teacher and other students on when is best to use these algorithms.
    Objectives: 11 12 13
    Contents:
    Theory
    2h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    9h

    Delivering the Innovation assignment.

    Delivery of the report on examples of business innovation related to the use of Artificial Intelligence techniques.
    Objectives: 2 14
    Week: 14
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    0h

    Other Artificial Intelligence techniques, areas and applications

    Students not only should attend to the other student's presentations, but also participate in discussions with the professor and the other students on the potential impact Artificial Intelligence techniques have had on the companies analyzed in the Innovation assignment that students have made during the course.
    Objectives: 14
    Contents:
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    6h
    Autonomous learning
    7.5h

    Final AI exam

    Final exam for the course contents.
    Objectives: 5 6 7 8 10 13
    Week: 15 (Outside class hours)
    Theory
    0h
    Problems
    0h
    Laboratory
    0h
    Guided learning
    0h
    Autonomous learning
    0h

    Teaching methodology

    The classroom sessions are divided into theory, problems and laboratory sessions.

    Theory sessions introduce the knowledge of the course concepts, switching between the exhibition of new material with examples and discussion with students on concepts and examples.

    Problem sessions deepen the knowledge on techniques and algorithms explained in the Theory sessions. They stimulate the participation of students to discuss possible alternatives.

    Laboratory sessions develop small practical assignments by using AI tools and languages ​in order to practice and enhance the students' knowledge on concepts, techniques and algorithms.

    Evaluation methodology

    The student assessment will consist of a partial exam mark, a final exam mark, a mark for the Innovation assignment and a laboratory mark.

    The partial exam will be done during standard class hours. Passing the partial exam does not mean that those course contents won't appear again int he final exam. People who do not pass the partial will be evaluated their theoretical knowledge only on the final exam mark.

    The mark of the Innovation assignment will come from a group work where examples on business innovation related to the use of Artificial Intelligence techniques should be found and analyzed. the work will be presented and siscussed in the classroom.

    The laboratory mark will come from the ptractical assignments' reports.

    The calculation of the final mark will be as follows:
    PM = partial exam mark
    FM = final exam mark
    LM = laboratory mark
    IM = Innovation assignment mark

    MARK = max ((PM*0.25 + FM*0.35), FM*0.6) + LM*0.3 + IM*0.1

    Competences' Assessment

    The assessment of the competence on entrepreneurship and innovation is based on work done during the laboratory assignments and the Innovation assignment. The ABCD grade is calculated from a detailed rubric given to students at the beginning of the course.

    The assessment of the competence on teamwork is also based on work done during the laboratory assignments and the Innovation assignment. The ABCD grade is calculated from a detailed rubric given to students at the beginning of the course.

    Bibliography

    Basic

    Complementary

    Web links

    Previous capacities

    Prior skills on Logics acquired in the course Mathematica Foundations (FM):
    - Knowledge of the basic concepts: logical propositions and predicates
    - Ability to formulate a problem in logical terms.
    - Knowledge of logical inference and decision. Understanding resolution strategies.

    Prior skills on Algorithmics acquired in the course on Data Structures and Algorithmics (EDA):
    - Knowledge on tree and graph structures,
    - Knowledge pn tree and graph search algorithms.
    - Basic notions in algorithmic complexity.