Credits
6
Types
Compulsory
Requirements
This subject has not requirements
, but it has got previous capacities
Department
ESAII
The students will learn to apply advanced techniques of artificial intelligence to solve robotics problems in complex and dynamic environments. This includes planning tasks, movements and routes, reasoning about tasks to be performed, space, managing uncertainty, accommodation between objects, perception and other advanced skills.
Teachers
Person in charge
- Isiah Zaplana Agut ( isiah.zaplana@upc.edu )
Others
- Anais Garrell Zulueta ( anais.garrell@upc.edu )
Weekly hours
Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
6
Competences
Transversals
Basic
Especifics
Generic
Objectives
-
Learn to program robots and design robotic applications.
Related competences: CE24, CE25, CE26, CG4, CG6, CG8, CG9, CT1, CT5, CB3, CB5, CE15, CE17, -
Be able to make judgments that include a reflection on relevant social, scientific or ethical issues related to current robotics and its potential applications.
Related competences: CE28, CG5, CG6, CG7, CG8, CT2, CT3, CT8, -
Learn to coordinate actions between robots.
Related competences: CG3, CG5, CG6, CT3, CT5, CE15, CE17, -
Be able to merge different sources of information to obtain, formalize and represent the physical environment in a computable way for problem solving.
Related competences: CE24, CE25, CG3, CG5, CG6, CG8, CT2, CT5, CB3, CB5, CE17, -
Application of Computer Vision techniques to Robotic Systems
Related competences: CE24, CE25, CE26, CG4, CG5, CG6, CT5, CE15, -
Application of Artificial Intelligence techniques to Robotic Systems
Related competences: CE24, CE26, CE28, CG4, CG5, CG9, CT3, CT5, CE15, CE17, -
Creation of interaction systems between robots and humans
Related competences: CE24, CE25, CE26, CE28, CG3, CG4, CG5, CG6, CG7, CG8, CG9, CT1, CT3, CT5, CT8, CE15, CE17,
Contents
-
Introduction
The contents that were achieved in the previous subject Introduction to robotics will be reviewed. -
Introduction to motion planning -- The configuration space.
Trajectory planning versus movement planning. Forward and inverse kinematics. Geometric and topological definition of the configuration space of a robotic manipulator. -
Potential fields-based solutions to the motion planning problem.
Discretization of the configuration space of a manipulator robot. Repulsive and attractive potential fields. Functions without local minima: Navigation functions and harmonic functions. -
Sampling-based solutions to the motion planning problem.
Sampling type (random, Halton, SDK, etc.). Methods based on road maps, Probabilistic Road Maps (PRMs), and exploration trees, Randomly Exploring Rapid Trees (RRTs) and their application to movement planning problems. Improvements to standard planners (PRM with Gaussian sampling, RRT-CONNECT, RRT*). -
Task planning.
Motion planning taking into account the restrictions imposed by the tasks. Modelling tasks with directed graphs. STRIPS and PDDLs languages. Search and heuristics guided search algorithms. FF algorithm. -
Cognitive robotics.
Ontologies. Types of ontologies and reasoning from ontologies. Behaviour trees (BTs). -
Kinematics of mobile robots.
Differential kinematics, differential constraints imposed by wheels and the concept of holonomic and non-holonomic robots (review). Differential kinematics, relationship between the velocity of a robotic platform and the differential constraints imposed by a single wheel, forward and inverse differential kinematics for a specific wheeled mobile robot. -
Mobile robots' dynamics.
Dynamics of a mobile robot. Modeling the dynamics. -
Perception of mobile robots.
Types of sensors. Error propagation. Visual Servoing. -
Location of mobile robots.
Introduction to map-based location. Review of probability theory. Markov approach. Kalman filter approach. The problem of SLAM. SLAM-EKF, FastSLAM, GraphSlam. -
Route planning for mobile robots.
Introduction, representations, collision avoidance. Potential fields. Solved example. Graph construction, graph search. Concepts applied to mobile robotics.
Activities
Activity Evaluation act
Review of the contents of the course "Introducció a la Robòtica".
The contents that were achieved in the previous course "Introducció a la Robòtica" will be reviewed.Objectives: 2
Contents:
Theory
1h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
4h
Introduction to motion planning -- The configuration space.
Trajectory planning versus movement planning. Forward and inverse kinematics. Geometric and topological definition of the configuration space of a robotic manipulator.Objectives: 2 4
Contents:
Theory
1h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
6h
Potential fields-based solutions to the motion planning problem.
Discretization of the configuration space of a manipulator robot. Repulsive and attractive potential fields. Functions without local minima: Navigation functions and harmonic functions.Objectives: 2 4
Contents:
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
6h
Sampling-based solutions to the motion planning problem.
Sampling type (random, Halton, SDK, etc.). Methods based on road maps, Probabilistic Road Maps (PRMs), and exploration trees, Randomly Exploring Rapid Trees (RRTs) and their application to movement planning problems. Improvements to standard planners (PRM with Gaussian sampling, RRT-CONNECT, RRT*).Objectives: 2 4
Contents:
Theory
4h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
12h
Task planning.
Motion planning taking into account the restrictions imposed by the tasks. Modelling tasks with directed graphs. STRIPS and PDDLs languages. Search and heuristics guided search algorithms. FF algorithm.Objectives: 1 2 3 4 6
Contents:
Theory
4h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
8h
Kinematics of mobile robots.
Differential kinematics, differential constraints imposed by wheels and the concept of holonomic and non-holonomic robots (review). Differential kinematics, relationship between the velocity of a robotic platform and the differential constraints imposed by a single wheel, forward and inverse differential kinematics for a specific wheeled mobile robot.Objectives: 1 2 3 6
Contents:
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
10h
Mobile robots' dynamics.
Dynamics of a mobile robot. Modeling the dynamics.
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
6h
Perception of mobile robots.
Types of sensors. Error propagation. Visual Servoing.
Theory
4h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
8h
Location of mobile robots.
Introduction to map-based location. Review of probability theory. Markov approach. Kalman filter approach. The problem of SLAM. SLAM-EKF, FastSLAM, GraphSlam.
Theory
4h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
12h
Route planning for mobile robots.
Introduction, representations, collision avoidance. Potential fields. Solved example. Graph construction, graph search. Concepts applied to mobile robotics.
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
10h
Teaching methodology
- The theoretical classes will be complemented by putting into practice on PC the techniques presented.- In the laboratory classes, real computer vision problems will be solved.
- Problems of higher complexity will be raised as homework.
Evaluation methodology
- There will be two partial exams P1 and P2 with marks NPI1 and NP2. There is no final exam.- There will be a minimum of one evaluable exercise presented in the theoretical class with mark E.
- There will be a final practice with mark NPF.
The final grade of the subject will be calculated as follows --> NF=0.3*NP1+0.3*NP2+0.1*E+0.3*NPF.
Attendance at laboratory classes is mandatory, unjustified non-attendance will penalize the final grade of the subject.
Reassessment
No minimum grade will be established to access the reassessment, and only students who previously have attended exams and have failed are able to concur (only students who have not concurred to any of the two partial exams are excluded). In this reevaluation, the maximum grade will be a 7, and it will only be for the theoretical part of the course, that is, it will be an exam of the theoretical part of the entire course.
Bibliography
Basic
-
Principles of robot motion : theory, algorithms, and implementation
- Choset, Howie M,
MIT Press,
2005.
ISBN: 0262033275
https://ebookcentral-proquest-com.recursos.biblioteca.upc.edu/lib/upcatalunya-ebooks/detail.action?pq-origsite=primo&docID=3339140 -
Robotics : modelling, planning and control
- Siciliano, Bruno,
Springer,
cop. 2010.
ISBN: 1-84628-642-5
https://link-springer-com.recursos.biblioteca.upc.edu/book/10.1007/978-1-84628-642-1 -
Introduction to autonomous mobile robots
- Siegwart, Roland; Nourbakhsh, Illah Reza; Scaramuzza, Davide,
MIT Press,
2011.
ISBN: 9780262015356
https://ebookcentral-proquest-com.recursos.biblioteca.upc.edu/lib/upcatalunya-ebooks/detail.action?pq-origsite=primo&docID=3339191 -
Introduction to AI robotics
- Murphy, R.R,
The MIT Press,
2019.
ISBN: 9780262348157
https://ebookcentral-proquest-com.recursos.biblioteca.upc.edu/lib/upcatalunya-ebooks/detail.action?pq-origsite=primo&docID=6340541
Previous capacities
Mathematics* To know and be able to apply the concept of derivative and partial derivative.
* To know the basic methods of graphical representation of functions (asymptotes, maxima, minima, ...).
* To know the elementary properties of trigonometric functions.
* To know the basic concepts of manipulation and operation with matrices.
Programming and Data Structure
* To know how to specify, design and implement simple algorithms with an imperative programming language.
* To know how to build correct, efficient and structured programs.
* To know the concepts of interpreted languages and compiled languages.
* To know search algorithms on data structures (tables, lists, trees, ...).
Computer Architecture and Technology
* To know at a functional level the different types of logic gates.
* To know how to analyse and implement simple combinational and sequential logic systems.
* To know the basic structure of a computer.
* To know the input / output and interruption subsystem of computers.
Robotics Area
* Knowledge of ROS.
* Knowledge of Matlab.
* Knowledge of the kinematics of both mobile robots and robotic manipulators.