ABEJA Tech Blog

中の人の興味のある情報を発信していきます

LeRobot Worldwide HackathonにABEJAチームとして参加しました

2025年6月14日から15日にかけて、LeRobot Worldwide Hackathonが開催され、ABEJAのロボット好きメンバーも参加しました! このハッカソンでの挑戦内容や学びについてまとめていきます。

そもそもLeRobotとは

LeRobotは、Hugging Face社が主導するオープンソースのロボティクスフレームワークです。フレームワークといってもその範囲はソフトだけでなくハードにまで及び、学習済みモデルだけでなく、そのデータセットやシミュレーター、学習用のパイプライン、そしてSO-101ロボットアームなどの公開されたハードウェアで構成されます。 従来のルールベースやモデルベースのロボット制御に対し、データ駆動型のアプローチを提示するなど、今回のハッカソンを含め汎用性の高いロボットの開発を促進しています。

SO-101アームのLeaderアーム(学習時に動きを教える側)とFollowerアーム(操作される側)Credits: Hugging Face

特徴

  • LeRobotは明示的なプログラミングや精密な物理モデル構築に依存する従来のロボット制御とは異なり、大量のデモンストレーションデータから直接ロボットの行動パターンを学習する模倣学習(Imitation Learning)を主要な手法として採用しています。連続する観測(画像フレーム、関節角度データ等)からロボットの次にとるべき行動(関節角度、エンドエフェクタ位置)を予測するモデルを構築します。

  • 実機のロボットプラットフォーム(SO-101と呼ばれるアーム型ロボット)や物理シミュレーション環境(Isaac Gym、MuJoCo)などのエコシステムがあり、誰でも簡単に使い始めることができます。本ハッカソンで主役となるSO-101アームは5~6万円程度以下で購入ができるため、実験機としては大変リーズナブルです。少なくともこの価格帯で購入できる、実験で使えるようなロボットは市場には少なかったと記憶しています。

ハッカソンの概要

  1. 開催期間: 2025年6月14日から15日にかけて全世界で同時開催
  2. 開催場所: 世界各地の90以上の都市でオフライン・オンライン会場の両方が設置
  3. テーマ: 機械学習、AI、ロボティックプロセスオートメーションに焦点を当て、ロボット学習とEmbodied AIの可能性を探ること
  4. 結果の評価: 模倣学習、データセットの拡張、シミュレーション、ハードウェア改造などをそれぞれのチームごとに取り組み、主にSO-101などを使ったデモ動画1分を提出し、投票による評価が行われる。技術的な実装の品質、実用性などが評価対象となる。
  5. 賞品: SO-101アーム本体やその足回りとなるロボットLeKiwi、限定Tシャツ、メダルなど

最終的な成果物

抹茶を点てる一連の動きを模倣学習によってロボットにもできるようにするということを目指しました。 提出したデモ動画を見ていただいた上で、どのように抹茶ロボットの構築をしたかをご説明いたします。 動画の前半は模倣学習のプロセス(人による操作の部分)で、後半部分がそれらのプロセスを自動化したものとなります。

youtu.be

タスクの整理

世界から参加を募っているハッカソンであり、日本ぽい動きができるテーマが良さそうという話はもともとしており、寿司や焼き鳥という話も出てきておりました。タスクとして既存のロボットでは自動化がされきっていないことも重要です。 抹茶を点てるという動作は、抹茶の粉という粉体を扱うこと、お湯という流体を扱うこと、撹拌にもその位置や深さ・スピードなどを制御する必要があります。既存のロボティクスにおける制御技術では、多種多様な形状のお茶碗への対応や上記の定型ではないタスクへの対応が非常に難しかったことから、データ駆動のアプローチであるAction Chunking with TransformersやVision Language Actionを試す価値があると考えました。 チームメンバーの二人が、茶道経験者であったことも理由の一つです。

チームでの議論のログの一部

テーマが決まり材料やアームを補助する機材などの手配も行い始めました。ソフトウェアやデータでのアプローチはもちろん重要ですが「ロボットが働きやすい環境、道具」を用意することも重要となります。ロボット掃除機が動くためには、まず床を空け、足の長い家具をおくこと、そして生活を合わせるなどが重要になることと同じです。

茶筅と呼ばれる茶を点てる道具も、そのままでは保持しにくい可能性がありアタッチメントを3Dプリントしました

実装プロセス

それでは実際にどのようにデータ取得、学習、実装を行なったかをご説明します。 ロボットのセットアップや、詳細な技術についてはこちらのABEJA TechBlogにも記載があります!

tech-blog.abeja.asia

tech-blog.abeja.asia

今回はAction Chunking with TransformersおよびVision Language Actionによる実装を行うため、それに合わせたデータ取得が必要です。ACTは模倣学習に焦点を当てた学習手法で、短期的な連続動作の生成が行えます。 ロボットの制御を四段階に分けると、ACTやVLAの必要性が分かりやすくなります。

  1. ルールベースの制御:ロボットに事前に厳密な手順や動作(ルール)をプログラムしておく最も基本的な制御方法です。ロボットは、決められた通りにしか動くことができません。ただし、高精度かつ高信頼性という特徴があるため、産業ロボットで使われています。
  2. 従来の模倣学習(単一ステップ予測)に基づく制御:人間がロボットを操作したデモンストレーションデータ(視覚情報とそれに対応するロボットの動作履歴)を用いて、ロボットに観測から「次の瞬間の単一のアクション」を予測・実行させる学習方法です。ただし、わずかな予測誤差でもそれが時間の経過とともに積み重なり、最終的にタスクの失敗につながりやすい(複合誤差の問題)という問題がありました。
  3. ACT(Action Chunking with Transformers)による模倣学習に基づく制御:従来の模倣学習の課題を解決するために開発された手法です。単一のアクションではなく、未来の「一連のまとまった動作(アクションチャンク)」を一度に予測し、Transformerモデルを使って長期的な時間的コンテキストを学習します。
  4. VLA(Vision Language Action)による制御:ロボットが視覚情報(Vision)と自然言語(Language)の指示を理解し、それに基づいて物理世界で適切な行動(Action)を実行できるようにすることを目指す、より広範なモデルのカテゴリです。タスク全体を完了するための行動を計画し実行します。人間との自然なインタラクションとして「赤いコップをとる」という指示などの画像とテキストなど関係性を把握する能力の獲得が目的となります。

厳密には、ACTはロボットに人間の複雑な動きを模倣させるための模倣学習をおこなうための手法であり、VLAと必ずしも直列に扱われる技術ではありません。 VLAモデルは、大きく分けて「高レベルな理解(何をすべきか)」と「低レベルな行動生成(どう動くか)」の2つの部分から構成されます。ACTは後者の低レベルな行動生成の質を高めるためにVLAのコンポーネントとして直接利用されることやその設計思想を取り入れられることがあります。より具体には、視覚と言語情報という高レベルな意味情報やタスクの意図から具体的なモーターのコマンド(関節角度や速度)に変換を行うためのアクションデコーダーとして、ACTによってロボット動作に変換するために用いられるケースがあります。

一方で、データセットとしてはロボットと対象のタスクの関係(第三者視点による2つ以上のカメラ)とロボットの関節角度や制御値を扱うため、まずこの取得が両者で重要となります。 今回のケースではそれぞれのタスクに対して50回の学習用データセットをつくり(すなわち、1回30秒程度のタスク50回分を人間が操作したものを録画、制御値の記録をし)、Google Colaboratoryで学習を行いました。今回のHackathonではHugging Face社の開発したACT、SmolVLAを利用しています。

🤗 LeRobot Notebooks

データセット取得のプロセスについて

抹茶を入れる、お湯を注ぐ、攪拌するという三つの動作を扱うことを決め、それぞれのデータ取得を始めました。 いずれも、まずは人間がこの動作をLeaderアームと呼ばれる教える側のアームを操作する必要があります。

MuJoCoの環境で3Dスキャンをした抹茶腕を使うなども試しました

1. 実験場所のセットアップ

模倣学習のためにロボット2台および、PC、カメラ3台を最適な形で設定するにはかなりのスペースが必要となります。また、やってみると気づくのがUSBケーブルの取り回しや、撮影位置の調整など、学習開始までに必要な調整も多数存在します。 実現場での実装においてはこのロジ周りや現場調整がまず重要な観点になるというのが、取り組んでみて改めてわかったことです。

学習に不要なものの映り込みが無いよう、専用のスペースを作ります

2. 抹茶を入れる

抹茶を茶腕に入れる主な難しさは、さじ(スプーン)の形状です。 人間でもこぼさないようにするのが大変な形状ですので、ロボット向けに短く加工し、持ち手も作成するなど工夫が必要でした。 普段何気なく使っている道具でも、いざロボットで行うには工夫が必要です。

すくう、という動作についても次のようにいくつかステップをふむ必要があります。 ①目標粉体の上方に移動する、②目標粉体の中にさじを滑り込ませる、③さじの角度を変える、④その角度をたもったまま移動させる、⑤角度を変えてリリース

今回のデータセット作りでは、これらを座標指定する必要はないですが、人間がロボットアームで繰り返し行う必要があるため練習も必要でした。また、例えば④についても入れ物の縁には当てないなど無意識に行っている動作がいくつもあり、人間と同じ道具で実装することの難しさも感じることができます。 粉体の操作に特化させるのであれば、ホースにするなど自動化を目的とした場合は方法があるはずです。

すくう、という動作にも実はいくつか種類があります

茶さじの形状から3Dモデルを作成

3. お湯を注ぐ

こちらの道具も、さじ同様に工夫が必要でした。 また、お湯という特性上一度こぼすと大変なため、事前に空の状態で人間が操作の練習をした上で取り組んでいます。

お湯をすくう

4. 撹拌する

茶筅を把持し、茶碗の中でかき混ぜるという動作です。 茶筅のサイズを認識した上で茶碗の中に動かすことと、その後の撹拌自体もお茶を点てるという意味では最も重要な動作となります。 Leaderアームを操作すること自体も難易度が高いため操作の工夫が必要となります。 より高速に撹拌する必要があるため、「茶碗の上まで移動し位置決めをする」部分まではACTで行い「高速に攪拌をする」という部分をルールベースで行うという両者の制御の良いところを組み合わせたハイブリッド制御手法も検討していましたが、時間の関係で実装には至りませんでした。

ACTによる撹拌の成功例はこちらです。

youtu.be

MuJoCoの環境で3Dスキャンをした抹茶腕を使うなども試しました

学習

ACTでの学習自体は50回x30秒ほどのデータで、A100であれば1時間ほどです。 学習時間は別のデータセットを作ったり休憩をするなど、束の間の休息となります。

HuggingFaceにも、つぎのような記載があります

Expected training time for 100k steps: ~1.5 hours on an NVIDIA A100 GPU with batch size of 64.

学習の様子

HuggingFaceのCo-founder & CEOからリツイートされる場面も

学習後のモデル

先ほどのデモのような成功例もあれば、失敗例もあります。教師データとなる50パターンではカバーしきれないタスクの差分や、アクションチャンクにおける時系列の前ステップの処理がうまくいかなかった場合(前提行動がうまくいかなかった場合)次の動きができないなどで、意図した動作にならないケースがありました。

youtu.be

学習後のモデルはACT、SmolVLA両者ともにHuggingFaceにアップロード済みですので、ご自宅で抹茶を点てたい方はぜひお試しください。 なお、抹茶が飛び散った、お湯がこぼれた、点てた抹茶が美味しくない等には責任を負いませんので自己責任でお願いいたします。

huggingface.co

結果

日本の参加チームとしては3チームが30位以内に入賞したものの、我々のチームは残念ながら入賞できませんでした。 どのチームも、創意工夫と実装力が高く「こんなことができたんだ」という学びも多くありました。 ロボットに対する指示の工夫、ロボットの動作の工夫(動ける場所や、軸、ハンドの拡張など)、静的な対象だけでなく動的なものを扱うなど適用対象の工夫、協調など多岐に渡っています。デモ動画は下のリンクから確認ができます。

huggingface.co

学び

ハッカソンとして特定のテーマが決まっていたわけではなく、自由なお題に近い状態だったため、何をやりたいか、と技術的に何が可能かを考えるのが最初の難しさでした。 そんななかでも、自分たちで設定した抹茶をすくう、攪拌をするについては自動で動かす部分までは2日間で実装できました。なにより、50回程度の学習でこれらの動作をある程度汎化できるACTが革新的です。 一方で、そのデータ取得や学習までのロジ周り・環境作りのお膳立てが非常に重要です。ロボットができること以外をいかに整えるかという良い問いの立て方が実装においては肝になりそうです。 またロボットがなぜか動かなくなりハンダづけをする、作ったパーツを修正するなども適時対応が必要です。ロボットはやはりハードウェア、ソフトウェアという両技術の総合格闘技です。

場所の調整、ロボットの調整を繰り返しながら準備をする

We Are Hiring!

ABEJAは、テクノロジーの社会実装に取り組んでいます。 技術を社会やビジネスに組み込んでいくかを考えるのが好きな方は、下記採用ページからエントリーください! 新卒の方やインターンシップのエントリーもお待ちしております!

careers.abejainc.com