03-IBAT-ALG | Advanced Algorithms (in English) https://lvb.informatik.uni-bremen.de/ibat/03-ibat-alg.pdf Algorithms are a fundamental part of computer science. An algorithm is an abstract description of a procedure for solving a problem. Understanding how to design efficient algorithms is an essential skill for developing complex programs, models, and applications.
This course assumes basic knowledge of algorithm design principles and algorithm analysis. Building on these foundatinos, we explore faster and more sophisticated algorithms for well-known problems such as
- network flows, and
- maximum matchings in bipartite graphs.
Beyond these, we study more general problems and develop algorithms to solve them, including:
- minimum-cost flows,
- maximum matchings in general graphs, and
- stable matchings.
Additionally, we introduce new concepts that model a broad class of fundamental problems and explore fast meta-algorithms for them. These topics include:
- linear programming and the ellipsoid method, and
- matroids, the Greedy algorithm, and matroid intersection.
The goals of this course are to provide a broad overview of fundamental problems in algorithmics and combinatorial optimization. Moreover, participants will develop a strong toolkit for designing and analyzing efficient algorithms, well beyond the standard undergraduate level in algorithm theory.
You can find course dates and further information in Stud.IP. | Prof. Dr. Nicole Megow Dr. Felix Christian Hommelsheim Dr. Alexander Lindermayr |
03-IBAP-MRCA | Modern Robot Control Architectures (in English) Schwerpunkt: AI https://lvb.informatik.uni-bremen.de/ibap/03-ibap-mrca.pdf
Robotics is a complex field that emerged at the intersection of multiple disciplines such as physics, mathematics and computer science. New advances in hardware and software design and progress in artificial intelligence enable robotics research to pursue higher goals and achieve increased autonomy in various environments. For instance, robots can operate in disaster zones for search and rescue operations, can be employed in rehabilitation and healthcare, space and underwater exploration, etc. Given the complexity of such scenarios, it is essential to develop robust robotic systems with a high degree of autonomy, able to assist humans in difficult and tedious tasks.
This course aims to provide the fundamentals of modern robot control approaches that enable robots to operate in the environment autonomously. The course introduces a basic understanding of robotics, along with tools and methods to control mobile robotic platforms and manipulators. Firstly, the course presents the basics of modeling robotic systems in terms of geometry, kinematics, and dynamics. Next, real robotic systems are considered with their different types of sensors and actuators. Furthermore, system identification as a means to adapt the robot model to the reality is treated. Finally, the course provides methods and approaches to control robots from a deliberative and reactive point of view. Students will put this knowledge into practice during tutorials and exercise sheets using Python implementation and robot simulations.
Contents
- Introduction to Robotics and AI: long term robot autonomy, artificial intelligence, deliberative vs. reactive control, robotic applications.
- Robot Geometry and Transformations: robot transformations in the 3D space, exponential and logarithmic maps, forward and inverse geometric models.
- Kinematics: definition of twists and wrenches for rigid bodies, geometric Jacobian formulation, forward and inverse kinematics.
- Dynamics: an introduction to Lagrangian and Newtonian mechanics, robot dynamics formulation, recursive Newton-Euler algorithm.
- Sensing and Actuation Modalities: types of sensors and actuators, sensor fusion, actuator control.
- System Identification: methods to identify geometry, kinematic and dyanmic parameters of a robot.
- Localization: direct and probabilistic methods for robot localization, odometry, global localization, particle filter.
- Path Planning: path vs. trajectory generation, graph-based methods for path planning (e.g. Djikstra, A*).
- Dynamic Control: PD gravity compensation control, computed torque control, admittance vs impedance control.
Learning Outcomes
At the end of the course, the student is expected to be able to:
- Have a basic understanding about autonomous robots and AI.
- Compute the coordinate transformations for rigid bodies commonly used in robotics.
- Apply the robot forward and inverse kinematics.
- Describe a robotic system based on its kinematic and dynamic properties.
- Implement and understand the low-level actuator control methods.
- Describe the sensor and actuator modalities used in robotics, and explain their relevance for robot control.
- Apply system identification methods to improve robot models and adapt them to reality.
- Use probabilistic methods for robot localization.
- Generate a path for a mobile robot or manipulator using motion planning methods.
- Apply dynamical control methods on robotic systems such that they are robust against disturbances.
- Assess the strengths and limitations of different control methods presented in the course.
- Identify open challenges in robotics research and current trends in state-of-the-art.
- Communicate confidently using the terminology in the field of robotics.
- Cooperate and work in teams in order to solve tasks.
Examination
During the semester, students are required to complete 6 worksheets in groups of 4. To pass the course, students must achieve a minimum of 50% on both the worksheets and the written exam. The final grade is 40% based on worksheets and 60% on the written exam.
You can find course dates and further information in Stud.IP. | Frank Kirchner M. Sc. Mihaela Popescu M. Sc Jonas Haack |