Open Source Robotics

Una colección curada de proyectos, herramientas y software de robótica de código abierto de alta calidad.

Control Barrier Function

  • También llamado: CBF, barrier function, CBF-QP
  • Categoría: Control › Feedback control
  • Etiquetas: safety, nonlinear-control, optimization, quadratic-programming, safety-filter, collision-avoidance

Una función del estado de un robot cuyo signo delimita un conjunto seguro, usada para restringir las entradas de control de modo que un sistema que empieza dentro del conjunto seguro nunca salga de él, de forma demostrable.

Definición

Funciones barrera de control (control barrier functions, CBF) son una herramienta de la teoría del control no lineal para imponer restricciones de seguridad a sistemas dinámicos. Un conjunto seguro se describe como la región en la que una función escalar del estado h(x) es no negativa, por ejemplo la distancia a un obstáculo menos un margen. Una función barrera de control añade una condición sobre la rapidez con la que h puede disminuir: la entrada de control debe mantener la derivada temporal de h por encima de una función negativa de la propia h. Si esta condición se cumple en cada instante, el conjunto seguro es invariante hacia adelante, lo que significa que un sistema que empieza en estado seguro permanece seguro.

La formulación más usada en robótica la desarrollaron Aaron Ames y sus colaboradores a mediados de la década de 2010. Para sistemas afines en el control, cuya dinámica tiene la forma ẋ = f(x) + g(x)u, la condición de barrera es lineal en la entrada de control u. Por tanto, una entrada segura puede encontrarse en línea resolviendo un pequeño programa cuadrático (QP) en cada paso de control: encontrar la entrada más cercana a un comando nominal deseado, sujeta a la restricción de barrera y a los límites de los actuadores.

Este QP suele llamarse filtro de seguridad. Cualquier controlador, ya sea un controlador de seguimiento ajustado a mano, un planificador o una política aprendida, propone un comando, y el CBF-QP lo modifica solo lo necesario para cumplir la restricción de seguridad. Las CBF se combinan de forma natural con las funciones de control de Lyapunov (CLF), que codifican objetivos de estabilidad o de seguimiento; un QP combinado CLF-CBF equilibra rendimiento y seguridad tratando la seguridad como una restricción dura.

El uso práctico plantea varias cuestiones. Encontrar una función barrera válida para geometrías complejas o robots de alta dimensión puede ser difícil. Cuando la restricción no depende directamente de la entrada, como un límite de posición en un robot comandado mediante aceleraciones, se necesitan extensiones como las CBF exponenciales o de orden superior. Las garantías valen solo en la medida en que el modelo es preciso, por lo que las variantes robustas y basadas en datos tienen en cuenta el error de modelo, los límites de entrada y el tiempo de muestreo. Las restricciones CBF también pueden incluirse dentro de un problema de control predictivo basado en modelo, de modo que el controlador mira hacia adelante a lo largo de un horizonte en lugar de actuar solo sobre el estado actual.

Por qué importa

Los robots operan cada vez más cerca de personas, obstáculos y sus propios límites físicos, y las funciones barrera de control ofrecen una forma con base matemática de imponer esos límites independientemente de qué controlador genere el comando nominal. Como el filtro de seguridad es un problema de optimización pequeño, puede ejecutarse a la frecuencia de control en hardware embebido, lo que hace que los argumentos formales de seguridad sean prácticos y no puramente teóricos.

Aplicaciones clave

  • Evitación de colisiones — mantener robots móviles, drones y brazos robóticos a una distancia segura de los obstáculos
  • Filtros de seguridad para políticas aprendidas — modificar mínimamente los comandos de controladores de aprendizaje por refuerzo o de aprendizaje por imitación
  • Robots con patas y robots humanoides — imponer restricciones sobre la colocación de los pies, el equilibrio o la autocolisión
  • Sistemas multirrobot — mantener la separación entre robots en formaciones y enjambres
  • Conducción automatizada — mantener distancias de seguimiento seguras en el control de crucero adaptativo

En la práctica

Un equipo suele empezar escribiendo los requisitos de seguridad como desigualdades sobre el estado, como una distancia mínima a los obstáculos, límites articulares o una región para la colocación de los pies, y convierte cada uno en una función barrera h(x). El controlador existente del robot o la política aprendida produce un comando nominal y, en cada ciclo de control, un solucionador de QP como OSQP o qpOASES encuentra el comando más cercano que cumple todas las restricciones de barrera y los límites de los actuadores. Los ingenieros ajustan la función de clase K extendida, a menudo una simple ganancia lineal sobre h, para fijar con cuánta antelación interviene el filtro, y prueban con comandos nominales deliberadamente inseguros para confirmar que el filtro mantiene la frontera. Como el QP puede volverse infactible cuando las restricciones entran en conflicto o las entradas se saturan, el sistema también necesita un comportamiento de respaldo definido.

Ideas erróneas comunes

  • Una CBF garantiza incondicionalmente la seguridad en el robot real — la garantía vale para el modelo utilizado; la dinámica no modelada, los retardos y los límites de entrada requieren formulaciones robustas y márgenes
  • Las CBF sustituyen al controlador principal — actúan como un filtro alrededor de un controlador nominal y solo intervienen cerca de la frontera del conjunto seguro
  • Cualquier función de distancia es una CBF válida — la función debe cumplir la condición de barrera dada la actuación del sistema, algo que muchas elecciones ingenuas con grado relativo alto no cumplen
  • El CBF-QP siempre tiene solución — las restricciones en conflicto o la saturación de los actuadores pueden hacerlo infactible, por lo que se necesita un comportamiento de respaldo

Quién debería saberlo

  • Ingenieros de control que diseñan controladores de robots críticos para la seguridad
  • Investigadores en aprendizaje de robots que añaden capas de seguridad a políticas aprendidas
  • Desarrolladores de drones y vehículos autónomos
  • Estudiantes de posgrado que estudian control no lineal y control basado en optimización

Tecnologías relacionadas

  • Función de control de Lyapunov (Control Lyapunov Function)
  • Programación cuadrática (Quadratic Programming)
  • Control predictivo basado en modelo (Model Predictive Control)
  • Filtro de seguridad (Safety Filter)
  • Alcanzabilidad de Hamilton-Jacobi (Hamilton-Jacobi Reachability)
  • OSQP

Términos relacionados

  • Model Predictive Control
  • Obstacle Avoidance
  • Whole-Body Control

Proyectos relacionados

  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • GTSAM: Factor-graph optimization library powering many modern SLAM backends
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • PyPose: PyTorch library for differentiable robotics with deep learning and Lie group optimization
  • mink: Python inverse kinematics library built on MuJoCo supporting 20+ robot platforms
  • NeuPAN: Real-time end-to-end planner that maps raw lidar points directly to robot actions

Vídeos

  • Lec 40 Control Barrier Function (CBF): NPTEL - Indian Institute of Science, Bengaluru

Este sitio web requiere JavaScript. Por favor, habilite JavaScript para explorar nuestros proyectos de robótica.