Robótica

Robótica fica na interseção de corporeidade (embodiment) (ter um corpo físico), percepção (perception) (sensoriar e entender o mundo), planejamento (planning) (escolher o que fazer) e controle (control) (executar ações por meio de motores). A “IA para robótica (AI for robotics)” moderna trata cada vez mais os robôs como sistemas de IA incorporada (embodied AI systems): agentes que precisam tomar decisões sob incerteza, restrições de tempo real e dinâmicas físicas complexas e “bagunçadas”.

Este artigo se concentra em três pilares:

  • IA incorporada (Embodied AI): como ter um corpo muda o problema de IA.
  • Pipelines de percepção a controle (Perception-to-control pipelines): a pilha clássica de robótica e como a IA se encaixa nela.
  • Aprendizado para robótica (Learning for robotics): como Aprendizado Profundo (Deep Learning), Aprendizado por Reforço (Reinforcement Learning) e modelos fundamentais (foundation models) estão remodelando o comportamento de robôs.

O que torna a robótica diferente de uma IA “pura”?

Um classificador na web pode errar sem consequências imediatas. Um robô que erra pode colidir, derrubar objetos ou ferir alguém. A robótica introduz restrições que moldam fortemente o desenho de algoritmos:

  • Interação em malha fechada (closed-loop interaction): as ações alteram observações futuras. O robô precisa sensoriar e se adaptar continuamente.
  • Observabilidade parcial (partial observability): sensores não revelam o estado completo do mundo (oclusões, ruído). Os problemas costumam ser modelados como POMDPs (Partially Observable Markov Decision Processes; ver Processos de Decisão de Markov (Markov Decision Processes)).
  • Operação em tempo real (real-time operation): laços de controle podem rodar a 100 Hz–1 kHz; a percepção pode rodar a 10–60 Hz.
  • Segurança e robustez (safety and robustness): casos de borda são a norma: a iluminação muda, o atrito varia, objetos deformam.
  • Corporeidade (embodiment): a morfologia (morphology) do robô (rodas vs. pernas vs. braços) influencia profundamente quais políticas são aprendíveis e transferíveis.

Dentro da taxonomia do wiki, a robótica se conecta de perto à tomada de decisão agente (agentic decision-making) e a tarefas de longo horizonte (long-horizon tasks), sobrepondo-se a Agentes e Planejamento (Agents & Planning): robôs são agentes operando ao longo do tempo, muitas vezes com objetivos hierárquicos (“navegar até a cozinha, pegar um copo, colocar na mesa”).

Componentes centrais de um robô

A maioria dos robôs pode ser descrita por alguns subsistemas que interagem entre si.

Sensores (entradas de percepção)

Sensores comuns incluem:

  • Câmeras (RGB, estéreo, profundidade): informação semântica rica; sensíveis à iluminação e à oclusão.
  • LiDAR: profundidade precisa para navegação e mapeamento; pistas semânticas esparsas.
  • IMU (unidade de medição inercial — Inertial Measurement Unit; acelerômetros/giroscópios): pistas de movimento em alta taxa; deriva ao longo do tempo.
  • Codificadores (encoders): posições/velocidades das juntas; essenciais para manipuladores e robôs com pernas.
  • Sensores de força/torque e táteis: críticos para agarrar, inserção e tarefas ricas em contato.
  • Microfones: às vezes usados para HRI e detecção de eventos.

Atuadores (saídas de controle)

Atuadores convertem comandos de controle em movimento:

  • Motores elétricos com redutores (comuns, precisos)
  • Motores de acionamento direto (direct-drive) (retroacionáveis, menor atrito)
  • Sistemas hidráulicos/pneumáticos (alta potência; controle complexo)
  • Atuadores macios (soft actuators) (complacentes; mais difíceis de modelar)

Estado, cinemática e dinâmica

Robôs são tipicamente modelados com:

  • Cinemática: geometria do movimento (cinemática direta/inversa (forward/inverse kinematics) para braços).
  • Dinâmica: forças, torques, inércia, contato (importante para tarefas rápidas ou ricas em contato).

Na prática, a robótica combina modelos baseados em física (physics-based models) com aprendizado orientado por dados (data-driven learning) porque dinâmicas exatas (especialmente contato) são difíceis.

O pipeline de percepção a controle (a “pilha de robótica (robotics stack)”)

Uma arquitetura clássica de robótica decompõe o sistema em etapas:

  1. Percepção: estimar o estado relevante do mundo a partir dos sensores
  2. Estimação de estado (state estimation): acompanhar pose/velocidade do robô e incerteza
  3. Mapeamento (opcional): construir uma representação do ambiente
  4. Planejamento: escolher uma trajetória ou sequência de ações
  5. Controle: computar comandos de motor para seguir o plano
  6. Segurança: checagem de colisão, imposição de restrições, comportamentos de fallback

Essa modularidade é útil para engenharia, depuração e certificação de segurança — mas também pode criar passagens frágeis entre componentes. A robótica baseada em aprendizado muitas vezes tenta melhorar etapas individuais ou aprender políticas ponta a ponta.

Percepção: de pixels a significado

A percepção robótica frequentemente combina:

  • Geometria (profundidade, nuvens de pontos, pose)
  • Semântica (quais objetos são, onde estão)
  • Afordâncias (affordances) (como objetos podem ser usados: pontos de pega, regiões empurráveis)

Tarefas comuns de percepção com IA incluem:

  • Detecção/segmentação de objetos (ver Visão Computacional)
  • Estimação de pose (pose 6D de objetos)
  • Compreensão de cena (espaço livre, obstáculos, trafegabilidade)
  • Predição de pega (agarras antipodais, pontos de sucção)

Exemplo prático (coleta em caixa (bin picking)):
Um braço robótico pega peças de uma caixa. Uma câmera de profundidade fornece uma nuvem de pontos; uma rede prediz agarras candidatas; um planejador de movimento checa colisões; um controlador executa a trajetória. Falhas frequentemente vêm de oclusões, objetos refletivos ou calibração imprecisa.

Estimação de estado: lidando com a incerteza

Robôs precisam estimar seu próprio movimento e, às vezes, o movimento de outros. Métodos clássicos continuam centrais:

  • Filtros de Kalman (Kalman filters) e variantes (EKF/UKF): fusão de IMU + codificadores + GPS/visão (ver Filtros de Kalman)
  • Filtros de partículas (particle filters): localização não linear e multimodal
  • Odometria visual-inercial (visual-inertial odometry): câmera + IMU para rastreamento com menor deriva
  • Localização e mapeamento simultâneos (Simultaneous Localization and Mapping, SLAM): (ver SLAM)

A estimação de estado não está “resolvida” — condições do mundo real (corredores sem características, multidões dinâmicas, falhas de sensores) estressam continuamente esses sistemas.

Planejamento: de objetivos a ações viáveis

O planejamento vai da tomada de decisão em alto nível até a otimização contínua de trajetórias.

  • Planejamento de tarefas (task planning): etapas simbólicas ou semelhantes a linguagem (“abrir porta → entrar na sala → pegar objeto”)
  • Planejamento de movimento (motion planning): caminhos sem colisão no espaço de configurações (por exemplo, RRT*, PRM)
  • Otimização de trajetórias (trajectory optimization): movimentos suaves e dinamicamente viáveis (CHOMP, STOMP, MPC)

O planejamento em robótica é fortemente ligado a Agentes e Planejamento, especialmente para problemas hierárquicos de longo horizonte em que o robô precisa replanejar sob incerteza.

Controle: transformando planos em comandos de motor

Controladores operam sob restrições rígidas de tempo real. Abordagens comuns:

  • Controle PID (PID control): simples, onipresente, eficaz quando bem ajustado
  • Controle no espaço operacional (operational space control): controla forças/posições do efetuador final
  • Controle baseado em modelo (model-based control): usa a dinâmica para computar torques (computed torque control)
  • Controle Preditivo por Modelo (Model Predictive Control, MPC): otimiza em um horizonte móvel com restrições (ver Controle Preditivo por Modelo)

O controle precisa lidar com atrito, folga mecânica (backlash), atrasos de tempo e contatos. Esse é um grande motivo pelo qual robôs podem parecer impressionantes em simulação, mas ter dificuldades no mundo real.

Um esqueleto mínimo em malha fechada

Sistemas robóticos quase sempre são estruturados como laços contínuos:

# Pseudocode for a perception-to-control loop
while robot.is_running():
    obs = sensors.read()                      # camera, lidar, encoders, IMU
    x_hat, cov = estimator.update(obs)         # state estimate with uncertainty
    world = perception.infer(obs, x_hat)       # objects, obstacles, affordances
    plan = planner.replan_if_needed(world)     # path/trajectory to goal
    u = controller.compute(plan, x_hat)        # torques/velocities
    u_safe = safety.filter(u, world, x_hat)    # enforce constraints
    actuators.send(u_safe)

Essa decomposição é conceitualmente limpa — e destaca onde o aprendizado pode se encaixar: módulos de percepção, modelos de dinâmica aprendidos, planejadores/políticas aprendidos e filtros de segurança.

Aprendizado para robótica

O aprendizado é usado em robótica porque é inviável projetar manualmente todos os casos de borda. Existem três padrões principais:

  1. Aprender percepção (amplamente implantado)
  2. Aprender componentes dentro do laço de controle/planejamento (cada vez mais comum)
  3. Aprender políticas ponta a ponta de observações para ações (poderoso, mas mais difícil de garantir)

Aprendizado por imitação (aprendizado a partir de demonstrações)

Em aprendizado por imitação (imitation learning), o robô aprende comportamento a partir de demonstrações de especialistas (teleoperação, captura de movimento, especialistas roteirizados). A forma mais simples é a clonagem de comportamento (behavior cloning): aprendizado supervisionado mapeando observação → ação (ver Aprendizado por Imitação).

  • Prós: mais eficiente em dados do que RL; treinamento estável
  • Contras: sofre com erros acumulados quando o robô encontra estados que não estão no conjunto de dados (mudança de distribuição (distribution shift))

Uma correção comum é a coleta de dados no estilo DAgger (DAgger-like): coletar dados iterativamente a partir dos próprios estados do robô, consultando um especialista para correções.

Exemplo prático (separação em armazém):
Colete milhares de agarras teleoperadas com câmeras no punho e sensoriamento de força. Treine uma política para predizer o movimento da garra. Adicione dados direcionados para falhas (embalagens escorregadias, oclusões).

Aprendizado por reforço (aprendizado por tentativa e erro)

Em aprendizado por reforço (reinforcement learning), o robô otimiza um sinal de recompensa (ver Aprendizado por Reforço). O aprendizado por reforço em robótica é desafiador devido a:

  • Ineficiência amostral (sample inefficiency) (robôs reais não podem fazer milhões de tentativas inseguras)
  • Restrições de segurança (colisões, superaquecimento)
  • Recompensas esparsas (sucesso apenas no final)

O uso prático de aprendizado por reforço em robótica frequentemente envolve:

  • Treinamento em simulação (simulation training) com aleatorização de domínio (domain randomization)
  • Recompensas modeladas (shaped rewards) ou aprendizado curricular (curriculum learning)
  • Aprendizado por reforço offline (offline RL) a partir de dados de robôs registrados (evita exploração arriscada)
  • Métodos híbridos: o aprendizado por reforço faz ajuste fino (fine-tuning) de um controlador em torno de uma linha de base estável

Exemplo prático (locomoção quadrúpede):
Treine uma política de locomoção em simulação com atrito, massa e terreno aleatórios. Transfira para o hardware; adicione uma pequena quantidade de ajuste fino no mundo real.

Aprendizado baseado em modelo: aprendendo dinâmica e modelos de mundo

Em vez de aprender uma política diretamente, robôs podem aprender modelos:

  • Dinâmica aprendida (learned dynamics): predizer o próximo estado dado o estado atual e a ação
  • Modelos de mundo (world models): modelos latentes da evolução do ambiente para planejamento

Isso dá suporte ao planejamento via MPC ou otimização de trajetórias, e pode melhorar a eficiência amostral. No entanto, erros de modelo — especialmente em torno de contato — podem desestabilizar o planejamento.

Ideias relacionadas incluem Filtragem Bayesiana (Bayesian Filtering) para predição com consciência de incerteza e controle robusto.

Aprendizado de representações para contextos incorporados

Robôs se beneficiam de aprender representações compactas que dão suporte ao controle:

  • Embeddings visuais (visual embeddings) que codificam pose/afordâncias de objetos
  • Representações multimodais combinando visão + toque + propriocepção
  • Objetivos auto-supervisionados (self-supervised objectives) (predizer quadros futuros, aprendizado contrastivo (contrastive learning))

Essas representações podem reduzir a necessidade de características projetadas manualmente e podem transferir entre tarefas.

Modelos visão-linguagem-ação e modelos fundamentais

Uma área em rápido avanço é usar grandes modelos pré-treinados (large pre-trained models) (frequentemente baseados em transformadores (transformer-based)) para habilitar:

  • Planejamento condicionado por linguagem (language-conditioned planning): “pegue a caneca vermelha e coloque na pia”
  • Manipulação generalizável (generalizable manipulation) em muitos objetos e cenas
  • Uso de ferramentas e raciocínio (tool use and reasoning) integrados às habilidades do robô

Esses sistemas frequentemente combinam:

  • Um modelo de linguagem/visão de alto nível que seleciona objetivos ou sub-habilidades
  • Um controlador de baixo nível ou uma política aprendida que executa movimentos com robustez

Isso espelha o desenho de agentes hierárquicos de Agentes e Planejamento: um “gerente” propõe subobjetivos; um “trabalhador” executa.

Simulação-para-real (simulation-to-real, sim2real)

A simulação acelera aprendizado e testes, mas a transferência para o mundo real é difícil devido à lacuna da realidade (reality gap): discrepâncias em física, sensoriamento e aparência.

Técnicas comuns de sim2real:

  • Aleatorização de domínio: aleatorizar texturas, iluminação, massa, atrito, atrasos
  • Identificação de sistema (system identification): ajustar parâmetros do simulador para corresponder ao comportamento do robô real
  • Aprendizado residual (residual learning): manter um controlador físico; aprender uma correção residual
  • Ajuste fino em dados reais: pequenas quantidades de rollouts reais após pré-treinamento em simulação

Simuladores usados com frequência em pesquisa e desenvolvimento incluem MuJoCo, Isaac Sim e vários motores de física integrados a frameworks de robótica.

Segurança, confiabilidade e avaliação

Robôs devem ser avaliados além de “recompensa média”:

  • Taxa de sucesso e tempo para conclusão
  • Generalização para novos objetos, layouts, iluminação e desgaste
  • Robustez a perdas de sensores e perturbações
  • Restrições de segurança: taxa de colisão, forças de contato, violações de proximidade humana
  • Consciência de incerteza: saber quando parar ou pedir ajuda

Padrões práticos de segurança:

  • Camadas de segurança / escudos (safety layers / shields): filtrar ações inseguras antes da execução
  • MPC com restrições (constraint-based MPC): impor limites de juntas, limites de torque, restrições de colisão
  • Comportamentos de fallback: desacelerar, congelar, recuar ou entregar o controle a um supervisor
  • Monitoramento e detecção de anomalias: detectar falhas de sensores ou contatos inesperados

Aplicações no mundo real

A navegação autônoma tipicamente usa:

  • SLAM + detecção de obstáculos
  • Planejadores locais para evitar colisões
  • Um planejador global para atingir o objetivo

O aprendizado pode melhorar:

  • Predição de trafegabilidade (traversability prediction) (qual terreno é seguro)
  • Navegação social (social navigation) (passagem considerando humanos)
  • Percepção robusta sob iluminação/clima

Manipulação em fábricas e casas

Desafios principais:

  • Pose precisa do objeto sob oclusão
  • Ações ricas em contato: inserção, parafusamento, dobragem
  • Objetos diversos e materiais deformáveis

O aprendizado é usado para:

  • Políticas de pega a partir de grandes conjuntos de dados
  • Inserção baseada em tato e detecção de deslizamento
  • Bibliotecas de habilidades: pegar/colocar, abrir/fechar, empurrar/puxar

Locomoção com pernas e robótica de campo

Robôs com pernas operam em ambientes não estruturados onde rodas falham. Isso exige:

  • Estimação de estado rápida
  • Controle de corpo inteiro (whole-body control)
  • Posicionamento robusto dos pés sob incerteza

O aprendizado ajuda com:

  • Passadas adaptativas
  • Recuperação de perturbações
  • Políticas conscientes do terreno

Interação humano-robô (human-robot interaction, HRI)

Robôs trabalhando perto de pessoas precisam inferir intenção e se comunicar com clareza. A IA contribui via:

  • Percepção de gestos e olhar
  • Interfaces de linguagem
  • Segurança preditiva (antecipar movimento humano)

Desafios em aberto e direções de pesquisa

A robótica continua sendo uma fronteira porque exige generalização sob física:

  • Tarefas de longo horizonte: compor habilidades de forma confiável por minutos/horas (conecta com Agentes e Planejamento)
  • Eficiência de dados: aprender comportamentos úteis com experiência real limitada
  • Manipulação rica em contato: deformáveis, atrito e inserção precisa
  • Generalização: novos objetos, novos cômodos, novas ferramentas sem retreinamento
  • Verificação e garantias: combinar aprendizado com segurança certificável
  • Benchmarking: avaliação realista além de configurações estreitas de laboratório

Começando na prática

Se você está construindo sistemas de robótica, um caminho pragmático é:

  1. Aprender a pilha clássica: quadros de coordenadas, cinemática, estimação, planejamento, controle.
  2. Usar ferramentas padrão:
    • ROS/ROS 2 para mensageria e integração
    • MoveIt para planejamento de movimento de braços
    • Um simulador (MuJoCo / Isaac Sim) para iteração
  3. Adicionar aprendizado onde ele mais ajuda:
    • percepção (detecção de objetos, segmentação, pose)
    • predição de pega ou controle reativo local
    • aprendizado de políticas com uma forte estrutura de segurança

Um padrão comum e bem-sucedido é a robótica híbrida (hybrid robotics): manter componentes confiáveis baseados em modelo (estimação, controle, checagem de colisão) e usar aprendizado para as partes que são difíceis de modelar (visão, heurísticas de contato, seleção de habilidades em alto nível).

Robótica, vista como IA incorporada, é, em última instância, sobre construir agentes que agem — não apenas predizem. Os sistemas mais capazes hoje misturam percepção, planejamento e controle com componentes baseados em aprendizado para alcançar robustez no mundo real.