2 pontos por GN⁺ 2024-02-24 | 3 comentários | Compartilhar no WhatsApp
  • OK-Robot é um framework robótico aberto e modular que busca executar, em zero-shot, tarefas de pick-and-drop encontrando, pegando e movendo objetos em novos ambientes domésticos apenas com instruções em linguagem natural
  • Combina modelos de visão-linguagem (VLMs), primitivas de navegação e primitivas de preensão para conectar reconhecimento de objetos, deslocamento e manipulação sem treinamento adicional
  • Foram avaliadas 171 tarefas em 10 residências reais na cidade de Nova York, registrando 58,5% de taxa de sucesso em casas totalmente novas
  • Em ambientes limpos e sem desordem, a taxa de sucesso subiu para 82%, e o sistema mostrou desempenho cerca de 1,8x superior a trabalhos anteriores em Open Vocabulary Mobile Manipulation (OVMM)
  • As principais falhas ocorreram em busca de objetos, posturas de manipulação difíceis e problemas de hardware, mostrando que a integração fina entre modelos de conhecimento abertos e módulos robóticos é decisiva para o desempenho

Composição e objetivo do framework

  • OK-Robot é um framework aberto e modular para executar tarefas de pick-and-drop em zero-shot, condicionadas por linguagem, em casas arbitrárias
  • O sistema combina três componentes
    • Modelo de visão-linguagem (VLM): detecção de objetos com base em consultas em linguagem natural
    • Primitivas de navegação: controle de deslocamento do sistema móvel
    • Primitivas de preensão: manipulação de objetos diversos
  • Sem uma etapa de treinamento separada, adota uma abordagem system-first que integra reconhecimento de objetos, deslocamento e preensão para realizar tarefas reais em ambientes domésticos
  • Materiais do projeto:

Avaliação em residências reais e fatores de falha

  • Foram tentadas 171 tarefas de pick-and-drop em 10 ambientes domésticos na cidade de Nova York
  • A taxa de sucesso em casas totalmente novas foi de 58,5%, com desempenho cerca de 1,8x superior a trabalhos anteriores em Open Vocabulary Mobile Manipulation (OVMM)
    • Taxa de sucesso: {p:58}
  • Em ambientes mais limpos e sem desordem, a taxa de sucesso subiu para 82%
    • Taxa de sucesso em ambiente organizado: {p:82}
  • As causas das falhas seguem uma distribuição de cauda longa, e as três maiores foram as seguintes
    • Não encontrar, na memória semântica, o objeto correto a ser movido: 9,3%
    • O módulo de manipulação receber uma postura difícil: 8,0%
    • Dificuldades de hardware: 7,5%
  • Ao combinar sistemas de conhecimento abertos como VLMs com módulos robóticos, não basta apenas o desempenho do modelo; memória de objetos, postura de manipulação e estabilidade de hardware também precisam estar alinhadas

3 comentários

 
yeorinhieut 2024-02-24

https://hello-robot.com/purchase

O produto em si custa US$ 25 mil...
Além disso, precisa de um iPhone Pro
O carregador com dock custa US$ 995 kkkkk

É um preço pra fazer otário de trouxa?

 
yeorinhieut 2024-02-24

Por que a docking station é realmente tão cara assim?
O jeito de conexão também parece ser de encaixar diretamente um conector DC.. kkk

https://hello-robot.com/stretch-docking-station

 
GN⁺ 2024-02-24
Comentários do Hacker News
  • Parece que o mercado para esse tipo de robô será pequeno até que ele consiga lidar com obstáculos
    Brinquedos que o gato deixa no meio do chão, papéis que voaram da mesa por causa de uma janela aberta, brinquedos espalhados pelas crianças, lápis que caíram da mesa enquanto ninguém estava olhando, roupa no chão, desníveis entre carpete e piso de madeira, portas abertas ou fechadas, tudo isso vira problema
    Antes da tarefa principal, podem surgir várias tarefas intermediárias, como guardar brinquedos, pegar papéis, recolher roupa ou abrir portas
    Cabos, pilhas de coisas que não podem ser movidas, móveis, animais de estimação dormindo ou montes de caixas de entrega podem bloquear um robô com rodas de forma quase permanente
    Por isso, um robô doméstico de uso geral deveria ter pernas, não rodas, e talvez mais de duas para dar estabilidade
    Pode soar estranho, mas o design ideal talvez fique em algum ponto entre uma aranha grande e simpática e um cachorro
    É estranho como a robótica em geral parece presa à ideia de ver o mundo como uma superfície 2D plana, como se tivesse idealizado e eliminado o problema realmente difícil de mobilidade em um mundo 3D
    Tudo o que esse robô faz também acontece apenas em superfícies horizontais planas, e parece que, para funcionar, uma pessoa primeiro precisa andar pelo cômodo arrumando tudo
    O Roomba tem o mesmo problema

    • Muita gente provavelmente aceitaria os sacrifícios necessários em troca da conveniência
      Bastaria não deixar cabos espalhados pelo chão, dá para colocar fita de marcação nos móveis, e também seria possível deixar o robô pegar e guardar objetos para que não virem risco de tropeço
      Também poderíamos trocar os objetos por versões amigáveis para robôs e para humanos, como acontece com utensílios que a lava-louças consegue pegar, mover e lavar com facilidade
      Já fazemos isso ao comprar produtos compatíveis com micro-ondas ou lava-louças, e chega a surpreender quando algo não é
      Também aceitamos o custo de instalar uma portinhola para pets em uma porta humana para que os animais possam usá-la sozinhos
      Humanos são uma espécie muito adaptável
      Em segundo lugar, sempre gostei da ideia de suspender o robô em trilhos no teto
      Dá para ver isso no excelente filme Moon, e a vantagem é que ele pode flutuar por cima dos móveis, tendo melhor mobilidade do que humanos
    • Isso não é tanto uma crítica ao conceito geral, mas mais às limitações de uma plataforma específica
      Basta fazer o braço conseguir pegar objetos no chão à frente do robô
      Não parece impossível, e a demonstração em que vários modelos foram conectados para permitir dizer “leve os Takis para a mesa de cabeceira do quarto” e ver isso ser executado é impressionante
      Então só restaria o “pequeno” problema de robótica de fazer o braço ser articulado o bastante para alcançar o chão
    • Se for um equipamento com rodas, o mesmo problema existe em ambientes hospitalares
      Lá isso é resolvido com um code pusher
      É um tipo de grade, parecida com um protetor contra gado, que empurra os objetos do chão para fora do caminho
      Nem todo problema precisa de uma solução complexa
      O grande mérito deste projeto, na minha opinião, está especialmente na simplicidade do design do robô
  • Muito legal
    Talvez seja uma pergunta boba, porque tenho pouquíssima experiência com robótica, mas fiquei curioso
    Como ele sabe o que é um objeto? Usa algo como uma rede neural de classificação de objetos em tempo real, e quais são as limitações?
    O robô sabe quando não consegue executar um pedido? Por exemplo, se mandarem mover uma caixa grande ou um kettlebell muito pesado?
    Quão bem ele lida com objetos escondidos ou obstruídos? Ele sai procurando? E o que acontece quando precisa remover outros objetos para alcançar o objeto solicitado?

    • Trabalho nessa área, embora eu não seja um dos autores, e diria que as perguntas acertam em cheio no ponto central
      Esse trabalho é realmente muito legal, mas também expõe várias limitações dos sistemas modernos de aprendizado para robótica
      1. Ele usa um classificador de objetos
        Está explicado aqui(https://github.com/ok-robot/ok-robot/tree/main/ok-robot-navi...) e, pelo que entendi, basicamente ele usa um modelo ViT, ou seja, um modelo de classificação de imagens, para rotular imagens e projetá-las em uma grade de voxels
        Depois conecta a linguagem e a grade de voxels com embeddings linguísticos do CLIP
        A limitação é que, para rodar isso em um robô, não dá para usar versões gigantescas desses modelos
        Dá para usar modelos grandes na nuvem, mas isso introduz muita latência
      2. Ele quase certamente não identifica pedidos inválidos
        Se o pedido estiver fora do que os embeddings de linguagem conseguem abranger, o robô talvez simplesmente não faça nada
        Mas, tirando os limites de hardware do controlador físico, esse sistema aparentemente não tem conhecimento de física
      3. Objetos escondidos quase certamente não funcionam
        A rotulagem por voxels depende de um módulo que atribui rótulos aos voxels, e sem informação visual não há como rotular
        Também não parece haver raciocínio complexo de alto nível do tipo “o garfo está na gaveta, a gaveta está na cozinha, e a cozinha normalmente fica nos fundos da casa”
        Em casos de oclusão parcial, pode até funcionar, mas isso depende dos limites do classificador visual
        O ViT é muito bom, mas vai depender de quanto o objeto está encoberto
    • Confirmando como autor do projeto/artigo, o fishbotics abaixo já respondeu muita coisa, mas posso acrescentar mais alguns pontos
      O reconhecimento de objetos usa principalmente o Lang-SAM(https://github.com/luca-medeiros/lang-segment-anything), e o trabalho pesado de ligar imagem e texto fica com embeddings do CLIP(https://openai.com/research/clip)
      Uma das vantagens dos modelos do tipo CLIP é que você não precisa definir antecipadamente quais classes poderão ser consultadas depois; dá para usar diretamente expressões pensadas no momento da execução
      Atualmente o robô não sabe quando um pedido é impossível de executar
      O modelo atual é bem simples e não tenta fazer nenhum processamento especialmente inteligente
      Mas foi justamente por isso que publicamos o código, na esperança de que a comunidade consiga construir por cima deste projeto robôs mais inteligentes, que aproveitem melhor as pistas visuais do ambiente
      Se um objeto estiver escondido ou obstruído na varredura inicial, ele falha
      Ainda assim, isso pode ser um bom ponto de partida para pesquisas adicionais
      Uma vantagem é que ele considera a informação 3D como um todo, então, se um objeto aparecer apenas em alguns ângulos, ainda há chance de o robô encontrá-lo
  • Parece ser uma tecnologia capaz de mudar vidas para pessoas com deficiência, idosos, gamers, pessoas extremamente preguiçosas e quem cuida delas

    • Não lembro onde vi isso, mas, em geral, tudo o que é melhorado para pessoas com deficiência acaba sendo melhor para todo mundo
      Se você torna as calçadas acessíveis para cadeiras de rodas, isso também ajuda pais empurrando carrinhos de bebê, pessoas carregando peso, pessoas com bengala, crianças de bicicleta e pessoas com baixa visão
    • Uma das grandes motivações neste trabalho com robôs domésticos é pensar em idosos, pessoas com deficiência ou pais ocupados que simplesmente não têm tempo para dar conta de tudo
      Pessoalmente, espero que possamos ensinar a IA a assumir os trabalhos que ninguém quer, e não os empregos que todo mundo quer
  • Muito legal
    Se fosse possível treiná-lo para dobrar roupa e guardá-la no lugar, eu consideraria seriamente comprar um robô de 25 mil dólares

    • Se ele conseguisse lavar a roupa, lavar a louça, cozinhar e arrumar a bagunça que as crianças deixam, eu compraria na hora até um robô de 100 mil dólares
    • Para a parte de dobrar, talvez seja preciso comprar um segundo robô além deste: https://pantor.github.io/speedfolding/
  • Para resolver tarefas longas, como encontrar algo que está faltando, daria para transformar uma cena anotada em descrições padronizadas e colocá-las em um modelo grande o bastante treinado com ficção interativa
    “Você está na cozinha. À sua frente, à direita, há uma geladeira grande com a maçaneta do lado direito. À esquerda há armários, e no balcão acima deles há pratos.”
    > get beer
    “Você não vê nenhuma cerveja aqui.”
    << COT: eu sei que cerveja costuma ficar na geladeira. Devo abrir a geladeira
    > open fridge
    “Ao abrir a geladeira, você vê quatro latas de cerveja.”
    > get beer
    “Pegou”
    Claro, ainda faltam alguns anos para isso funcionar de verdade, mas, pensando bem, é muito interessante
    Seria uma forma de combinar uma narrativa de ficção interativa alimentada por sensores reais com blocos de cadeia de pensamento como monólogo interno

    • Agora já dá para ensinar o robô a andar pelo cômodo murmurando “chaves, chaves, chaves... onde foi que eu deixei as chaves?”
    • LLMs multimodais já são muito bons nesse tipo de tarefa
      Basta tirar uma foto da cozinha e perguntar ao ChatGPT onde procurar a cerveja
      Na prática, eu uso isso com bastante frequência
      Por preguiça, tiro foto de componentes e placas e pergunto como fazer a fiação no ESP32; só com algumas fotos ele distingue a placa, o chip e o layout dos pinos, diz qual fio ligar onde e ainda aponta cuidados a tomar
      Muitas vezes também sugere bibliotecas úteis para os componentes, e honestamente parece magia
  • A análise de falhas está muito bem feita
    Fico curioso sobre o que significa uma falha de hardware
    Por exemplo, há 5 tentativas com “o Realsense forneceu profundidade incorreta”; queria saber como isso foi determinado

    • Eles coletam todos os dados e depois fazem uma análise posterior das causas da falha
      Nessas 5 tentativas mencionadas, o Realsense produziu valores de profundidade incorretos em objetos transparentes ou semitransparentes, então a nuvem de pontos gerada pela câmera na cabeça do robô já estava errada
  • Mesmo sendo open source, isso custa quase 25 mil dólares
    Fico pensando por que é tão caro

    • Porque é um produto de pequena escala, que precisa bancar os salários dos engenheiros que o constroem e mantêm
    • Pelos padrões de robótica, 25 mil dólares nem é tão ruim
      A maioria dos robôs móveis de manipulação custa cinco dígitos ou mais, principalmente porque o mercado é pequeno, o custo de materiais e engenharia é alto, e construir robôs em si já é uma dor de cabeça
    • Desde quando open source significa barato?
      Trabalho não é de graça
      Fazer PCBs customizadas e hardware em pequena escala também não sai barato, e construir, calibrar e testar robôs também não
    • Onde está o preço?
      Queria saber se existe um link para a página do produto
    • O software é open source
      O hardware é proprietário e protegido por patente
  • Isso não é a mesma coisa que o Dobb-E?
    https://dobb-e.com/

    • Não
      Mas há algumas das mesmas pessoas na equipe
      Por exemplo, eu sou o primeiro autor do Dobb-E, e meu orientador supervisiona os dois projetos
      A principal diferença é que este projeto é zero-shot, então não precisa de nenhum dado novo em uma casa nova, mas só tem duas habilidades: pegar e colocar
      Já o Dobb-E pode ter várias habilidades, mas exige algumas demonstrações na casa nova
    • Os dois projetos parecem relacionados e têm autores em comum
      Ambos são mencionados no site do robô usado pelos dois: https://hello-robot.com/stretch-embodied-ai
  • Venho acompanhando este projeto há algum tempo, e o progresso é excelente
    Consigo imaginar isso integrado a um dispositivo de auxílio à mobilidade, como uma cadeira de rodas, para pessoas com controle limitado dos braços e pernas
    Se virar algo como um exoesqueleto “inteligente” que ajude em tarefas antes impossíveis, isso pode realmente mudar o jogo para muita gente

  • Eu realmente queria um veículo-plataforma estabilizado no qual eu pudesse colocar carga e mandar de um ponto a outro
    Seria ótimo ter uma plataforma estabilizada por giroscópio, tipo um Segway, que pudesse ir do ponto A ao ponto B e voltar por um trajeto como uma trilha irregular, não terrível, mas acidentada
    Já tentei várias vezes procurar opções, mas nunca vi nada adequado para esse uso
    Queria saber se alguém conhece algum produto novo voltado para esse caso de uso
    Mais especificamente, ele precisaria transportar uma bandeja com bebidas e hors d’oeuvres de um lado ao outro de uma propriedade sem derramar nada, então pelo menos alguma capacidade off-road seria necessária