Advanced Robotics

Credits
6
Types
Compulsory
Requirements
This subject has not requirements, but it has got previous capacities
Department
ESAII
The Advanced Robotics course is an advanced-level course that allows students to acquire specialized knowledge about programming, control, and operation of manipulators and mobile robots. Through this course, students can deepen their skills in perception, planning, and action, as well as the ability to solve problems in real and unpredictable environments.

Students in the course will learn to apply advanced Artificial Intelligence techniques to solve robotics problems in complex and dynamic environments. This includes route planning, reasoning about space, managing uncertainty, object accommodation, perception, and other advanced skills.

Teachers

Person in charge

  • Anais Garrell Zulueta ( )

Others

  • Isiah Zaplana Agut ( )

Weekly hours

Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
6

Competences

Transversal Competences

Transversals

  • CT1 - Entrepreneurship and innovation. Know and understand the organization of a company and the sciences that govern its activity; Have the ability to understand labor standards and the relationships between planning, industrial and commercial strategies, quality and profit.
  • CT2 - Sustainability and Social Commitment. To know and understand the complexity of economic and social phenomena typical of the welfare society; Be able to relate well-being to globalization and sustainability; Achieve skills to use in a balanced and compatible way the technique, the technology, the economy and the sustainability.
  • CT3 - Efficient oral and written communication. Communicate in an oral and written way with other people about the results of learning, thinking and decision making; Participate in debates on topics of the specialty itself.
  • CT5 - Solvent use of information resources. Manage the acquisition, structuring, analysis and visualization of data and information in the field of specialty and critically evaluate the results of such management.
  • CT8 [Avaluable] - Gender perspective. An awareness and understanding of sexual and gender inequalities in society in relation to the field of the degree, and the incorporation of different needs and preferences due to sex and gender when designing solutions and solving problems.

Basic

  • CB3 - That students have the ability to gather and interpret relevant data (usually within their area of ??study) to make judgments that include a reflection on relevant social, scientific or ethical issues.
  • CB5 - That the students have developed those learning skills necessary to undertake later studies with a high degree of autonomy

Technical Competences

Especifics

  • CE15 - To acquire, formalize and represent human knowledge in a computable form for solving problems through a computer system in any field of application, particularly those related to aspects of computing, perception and performance in intelligent environments or environments.
  • CE17 - To develop and evaluate interactive systems and presentation of complex information and its application to solving human-computer and human-robot interaction design problems.
  • CE24 - To ideate, design and build intelligent robotic systems to be applied in production and service environments, and that have to be capable of interacting with people. Also, to create collaborative and social intelligent robotic systems.
  • CE25 - To ideate, design and integrate mobile robots with autonomous navigation capability, fleet formation and interaction with humans.
  • CE26 - To design and apply techniques for processing and analyzing images and computer vision techniques in the area of artificial intelligence and robotics
  • CE28 - To plan, ideate, deploy and direct projects, services and systems in the field of artificial intelligence, leading its implementation and continuous improvement and assessing its economic and social impact.

Generic Technical Competences

Generic

  • CG3 - To define, evaluate and select hardware and software platforms for the development and execution of computer systems, services and applications in the field of artificial intelligence.
  • CG4 - Reasoning, analyzing reality and designing algorithms and formulations that model it. To identify problems and construct valid algorithmic or mathematical solutions, eventually new, integrating the necessary multidisciplinary knowledge, evaluating different alternatives with a critical spirit, justifying the decisions taken, interpreting and synthesizing the results in the context of the application domain and establishing methodological generalizations based on specific applications.
  • CG5 - Work in multidisciplinary teams and projects related to artificial intelligence and robotics, interacting fluently with engineers and professionals from other disciplines.
  • CG6 - To identify opportunities for innovative applications of artificial intelligence and robotics in constantly evolving technological environments.
  • CG7 - To interpret and apply current legislation, as well as specifications, regulations and standards in the field of artificial intelligence.
  • CG8 - Perform an ethical exercise of the profession in all its facets, applying ethical criteria in the design of systems, algorithms, experiments, use of data, in accordance with the ethical systems recommended by national and international organizations, with special emphasis on security, robustness , privacy, transparency, traceability, prevention of bias (race, gender, religion, territory, etc.) and respect for human rights.
  • CG9 - To face new challenges with a broad vision of the possibilities of a professional career in the field of Artificial Intelligence. Develop the activity applying quality criteria and continuous improvement, and act rigorously in professional development. Adapt to organizational or technological changes. Work in situations of lack of information and / or with time and / or resource restrictions.

Objectives

  1. Learn to program robots and design robotic applications.
    Related competences: CE24, CE25, CE26, CG4, CG6, CG8, CG9, CT1, CT5, CB3, CB5, CE15, CE17,
  2. 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,
  3. Learn to coordinate actions between robots.
    Related competences: CG3, CG5, CG6, CT3, CT5, CE15, CE17,
  4. 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,
  5. Application of Computer Vision techniques to Robotic Systems
    Related competences: CE24, CE25, CE26, CG4, CG5, CG6, CT5, CE15,
  6. Application of Artificial Intelligence techniques to Robotic Systems
    Related competences: CE24, CE26, CE28, CG4, CG5, CG9, CT3, CT5, CE15, CE17,
  7. 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

  1. Introduction
    The contents that were achieved in the previous subject Introduction to robotics will be reviewed.
  2. Planning Methods Based on Graphs
    Introduction to the route planning problem through meshes where the robot can only occupy discrete positions. These situations can be modeled as graphs where nodes correspond to grid positions and edges to routes between adjacent grid cells. We present several algorithms that can be used to plan paths between a start node and an end node, including breadth-first search or the grassfire algorithm, Dijkstra's algorithm, and the A* procedure
  3. Configuration space
    Introducing the concept of configuration space, which is a mathematical tool we use to think about the set of positions our robot can reach. Then the notion of obstacles in the configuration space will be studied. This formulation allows one to think of path planning problems in terms of constructing trajectories for a point through configuration space. We will also describe some approaches that can be used to discretize the continuous configuration space into graphs so that we can apply graph-based tools to solve our motion planning problems.
  4. Planning Methods Based on Sampling
    The concept of sampling-based path planning techniques will be presented. This involves randomly sampling points in the configuration space and then creating collision-free edges between neighboring sample points to form a graph that captures the structure of the robot's configuration space. Probabilistic Road Maps and Randomly Exploring Rapid Trees (RRTs) methods and their application to motion planning problems will be presented.
  5. Methods of Artificial Potential Fields
    A new approach to motion planning involves the construction of artificial potential fields that are designed to attract the robot to the desired goal configuration and move it away from obstacles in the configuration space. The motion of the robot can be guided by considering the gradient of this potential function. They will illustrate these techniques in the context of a simple two-dimensional configuration space.
  6. Motion Planning
    Constraints in configuration space, graphs and trees, and A* graph search.
    Motion planning on a discretized configuration space grid, planners based on random sampling, virtual potential fields, and nonlinear optimization.
  7. Robot Control
    First- and second-order linear error dynamics, stability of a feedback control system, and robot motion control when controller output commands joint velocities.
    Motion control of robots when the controller output commands the joint torsions, force control and hybrid motion-force control.
  8. Mobile robots with wheels
    Kinematic models of mobile robots with omnidirectional and non-holonomic wheels.
    Controllability, motion planning and feedback control of non-holonomic wheeled mobile robots; odometry for wheeled mobile robots; and mobile manipulation.
  9. Dynamics of open chains
    Lagrangian formulation of dynamics, centripetal and Coriolis forces, robot mass matrix, rigid body dynamics, and inverse Newton-Euler dynamics for an open chain robot.
    Direct dynamics of an open chain, task space dynamics, constrained dynamics, and practical effects due to gears and friction.
  10. Generation of trajectories
    Point-to-point trajectories in a straight line and polynomial trajectories passing through traveling points.
    Optimal movements in time along a specified trajectory under robot dynamics and actuator limits.
  11. Control of manipulators
    Local motion control strategies vs. centralized
    Independent control of "joints".
    Anticipated torque action computed.
    Lyapunov stability analysis of MIMO controls.
    Feedback linearization.
    Control of the operating space.
    Indirect vs. Force Control Strategies direct
    Impedance control.
    Direct force control.
    Cascading controllers.

Activities

Activity Evaluation act


Review of the contents of the subject Introduction to Robotics.

The contents that were achieved in the previous subject Introduction to robotics will be reviewed.
Objectives: 2
Contents:
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
8h

Planning Methods Based on Graphs

Introduction to the route planning problem through meshes where the robot can only occupy discrete positions. These situations can be modeled as graphs where nodes correspond to grid positions and edges to routes between adjacent grid cells. We present several algorithms that can be used to plan paths between a start node and an end node, including breadth-first search or the grassfire algorithm, Dijkstra's algorithm, and the A* procedure
Objectives: 2 4
Contents:
Theory
2h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
6h

Configuration space

Introducing the concept of configuration space, which is a mathematical tool we use to think about the set of positions our robot can reach. Then the notion of obstacles in the configuration space will be studied. This formulation allows one to think of path planning problems in terms of constructing trajectories for a point through configuration space. We will also describe some approaches that can be used to discretize the continuous configuration space into graphs so that we can apply graph-based tools to solve our motion planning problems.
Objectives: 2 4
Contents:
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
4h

Planing methods based on Sampling

The concept of sampling-based path planning techniques will be presented. This involves randomly sampling points in the configuration space and then creating collision-free edges between neighboring sample points to form a graph that captures the structure of the robot's configuration space. Probabilistic Road Maps and Randomly Exploring Rapid Trees (RRTs) methods and their application to motion planning problems will be presented.
Objectives: 2 4
Contents:
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
8h

Methods of Artificial Potential Fields

A new approach to motion planning involves the construction of artificial potential fields that are designed to attract the robot to the desired goal configuration and move it away from obstacles in the configuration space. The motion of the robot can be guided by considering the gradient of this potential function. They will illustrate these techniques in the context of a simple two-dimensional configuration space.
Objectives: 1 2 3 4 6
Contents:
Theory
4h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
8h

Motion Planning

Obstacles a l'espai de configuració, grafs i arbres, i cerca de grafs A*. Planificació de moviments en una graella de l'espai de configuració discretitzat, planificadors basats en mostreig aleatori, camps potencials virtuals i optimització no lineal.

Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
8h

Robot Control

First- and second-order linear error dynamics, stability of a feedback control system, and robot motion control when controller output commands joint velocities. Motion control of robots when the controller output commands the joint torsions, force control and hybrid motion-force control.
Objectives: 2 6
Theory
4h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
10h

Mobile robots with wheels

Kinematic models of mobile robots with omnidirectional and non-holonomic wheels. Controllability, motion planning and feedback control of non-holonomic wheeled mobile robots; odometry for wheeled mobile robots; and mobile manipulation.

Theory
2h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
6h

Dynamics of open chains

Lagrangian formulation of dynamics, centripetal and Coriolis forces, robot mass matrix, rigid body dynamics, and inverse Newton-Euler dynamics for an open chain robot. Direct dynamics of an open chain, task space dynamics, constrained dynamics, and practical effects due to gears and friction.

Theory
2h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
6h

Generation of trajectories

Point-to-point trajectories in a straight line and polynomial trajectories passing through traveling points. Optimal movements in time along a specified trajectory under robot dynamics and actuator limits.

Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
8h

Control of manipulators

Local motion control strategies vs. centralized Independent control of "joints". Anticipated torque action computed. Lyapunov stability analysis of MIMO controls. Feedback linearization. Control of the operating space. Indirect vs. Force Control Strategies direct Impedance control. Direct force control. Cascading controllers.

Theory
4h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
12h

Interaction systems between Robots and Humans

Application of the knowledge obtained in the creation of a system capable of interacting with humans. Learning new assessment methods.
Objectives: 1 2 4 6 7
Contents:
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
6h

Final Project

Els alumnes hauran d'aplicar els coneixements obtinguts en un robot real i hauran de fer una demostració del seu funcionament.
Objectives: 1 2 3 4 5 6
Week: 15 (Outside class hours)
Type: assigment
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h

Teaching methodology

The teaching methodology will be generally deductive in nature. The aim is to avoid the expository/lecture method. The approach will always be the same:

•- Propose a problem
•- Try to solve it
•- Add the necessary pieces of theory to be able to solve the problem adequately.

There will be no distinction between theory classes and problem-solving, as in classroom sessions the presentation of concepts and the resolution of application problems are intercalated. The laboratory classes are the complement where students put the concepts into practice using simulators and/or real robotic systems.

In addition to the classroom and laboratory activities, students must solve and submit a set of exercises to the teachers for evaluation. These exercises allow them to consolidate the acquired knowledge, serve as a mechanism for self-evaluation and teamwork.

Evaluation methodology

The course will be evaluated continuously. There will be no final exam.
Throughout the course, a series of exercises will be requested that will help the teacher evaluate the student at the end of the course. These exercises can be both face-to-face and non-face-to-face and can consist of the presentation of the results of practices developed in the laboratory (NL), as well as the theoretical / practical solution of problems proposed by the teacher in class (NT). In addition, a final project (NPF) will have to be presented at the end of the course, consisting of a report, a presentation, and a demonstration with a robot or a simulation.

The final grade of the course will be calculated as follows:NF=0'1NL+0'1NT+0,5NPF+0.15EP+0.15EP

Bibliography

Basic:

  • Robotics, vision and control : fundamental algorithms in MATLAB - Corke, Peter I, Springer, 2017. ISBN: 9783319544120
    https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004155909706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
  • Introduction to autonomous mobile robots - Siegwart, Roland; Nourbakhsh, Illah Reza; Scaramuzza, Davide, MIT Press, 2011. ISBN: 9780262015356
  • Springer handbook of robotics - Siciliano, Bruno; Khatib, Oussama, Springer International Publishing, 2016. ISBN: 9783319325521
  • Introduction to AI robotics - Murphy, R.R, The MIT Press, 2019. ISBN: 9780262348157

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 analyze 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, Peter Corke library