プロローグ的な
2月のある木曜日、アメリカに進出した日本の某ベンチャーの CEO と話す中で、「急ですが来週サンフランシスコに来て1週間ロボットをやりませんか」と誘っていただき、3日後にアメリカに飛び、丸一週間ロボット開発をしてきました。
突然の5日間の有給取得、航空券等の費用は自費で、宿泊だけ助けていただく形の弾丸サンフランシスコ合宿でした。幸い仕事は都合がつきましたが、巨額の出費とプライベートへの影響も避けられない中、我ながら思い切った行動でした。
元々多少の行動力はある方ですが、さすがに「来週アメリカに来て開発する?」と言われて即OKするほどのフッ軽ではなく、自身にとってもチャンスと考えての決断でした。具体的には、
- 前々から関心のあったロボット領域の開発に触れられる
- 短期間とはいえ有名な起業家のCEOと近い距離で働ける
- 日本ベンチャーのアメリカ挑戦の現場を見られる
- これまで触れたことのないシリコンバレーの熱を感じられる
等、自身にとって大きなプラスになると感じました。
もちろん先方の文脈としては採用活動の一環であり、私は言うなれば無給の一週間インターン、というイメージでしょうか。仕事の強度が合うか、会社とカルチャーが合うか、などを実際の1週間の開発を通して互いに見極めるプロセスです。
私はロボットへの関心とアメリカで働きたい思いはあっても転職活動中ではなく、話しの中で挑戦したい思いを強くしての急展開でした。 結果として転職しない意思決定をしましたが、短期間ながら多くの刺激を得て学ばせていただきました。一部はすでにブログとして書いていますが、ロボット開発についての学び・考えを書きたいと思います。
現地で関わった方には非常に良くしていただけましたし、大変感謝しております。
ロボット開発
ロボット開発といっても私はソフトウェアエンジニアであり、開発はロボットのソフトウェアを書くことです。 工具を使ってロボット部品を組み立てたわけでもなく、開発言語も C++ と Python なので、全く馴染みがない言語でもありません。 (ちなみに開発以外に家具の組み立てとかオフィスの設営も手伝いました。「なんでもやる」のはスタートアップらしいですね)
普段の開発と違うのは、ソフトウェアのデプロイ先がクラウドではなく物理的なロボットであり、プログラムはメモリ上の電気ではなくハードウェアを動かしているということです。
そもそも私は、何がどうなってヒューマノイドロボットが動くのか、事前知識はありませんでした。「アメリカ、行きます」と言った時点では、シミュレーション環境で高速に強化学習を回すことでヒューマノイド含むロボット領域の進化が加速していること、学習しているのは関節のモーターの数値であるくらいの認識しかありませんでした。
大学院で深層学習を研究しており、強化学習も簡単に触ったこともありましたが、ロボット・ロボティクスは全くの未経験、素人です。
AI による知の高速道路
一週間の短い時間で最大限の学びを得る(&採用候補者としてアピールする)ため、渡米前の2日で予習をすることにしました。 参考書を買って読んでも超短期的には間に合わないので、(当然) AI を使ってのキャッチアップを試みました。
有名論文のリストアップ、素人が理解しやすいようなスライド化、基礎知識のインプットと疑問の解決、全てを AI で行いました。 ベースが 0 なので付け焼き刃の表面的知識でもドメインへの理解は雲泥の差となりました。
知識だけでなく手触り感も得るため、"Unitree" の強化学習のレポジトリを動かしました。 4年前に「そのうち AI をローカルで回したくなるかも」と調達した自作 PC と GPU が役に立ちました。 (いつどこで何が役に立つかわかりませんね)
https://github.com/unitreerobotics/unitree_rl_mjlab
Unitree とは世界のヒューマノイドロボット領域のトップ企業の一つの中国企業です(それも今回初めて知りましたが)。 このレポジトリは Unitree が販売しているヒューマノイドロボット "G1" をシミュレーション環境で動かして学習させるサンプルレポジトリです。 渡米直前までパラメータ調整を頑張って、フラフラしながら直進することはできるようになりました。
2 日でもある程度のインプットができたのは、間違いなく AI のおかげでした。 まさに ChatGPT が出てきた頃に言われていた知の高速道路です。 裏を返せば、専門違いの領域へのチャレンジも、キャッチアップのマインドと馬力さえあればハードルはかつてないほど低く、非現実的ではないと感じました。 実際ロボティクスでいえば、 SO101 (数万円で試せるロボットアーム)で趣味でちょっとしたロボット開発をするソフトウェアエンジニアが増えていると感じます。
もちろん経験と現場で得られるドメイン理解はそれぞれに深さがあり、AI 以上の専門性を手に入れるのは至難の業ですが、少なくともスタートラインには立ちやすいはずです。
いざ実践へ
渡米して私が動かしたのは、 Booster K1 という中学生くらいのサイズのヒューマノイドロボットです。
https://www.booster.tech/booster-k1/
先に述べたようにスクラッチでC言語で制御処理を書くわけではなく、制御をある程度抽象化した SDK を使います。 あらかじめプログラムされた基本的な挙動(手を挙げる、両手を挙げる、等)も API で呼び出すことが可能です。 また、関節のパラメータ(位置や角度)も API で取得可能なので、センサーへの接続を自分で実装などもしません。
K1 含め、多くのヒューマノイドロボットにはコントローラーが付属しており、デフォルトで歩かせたり踊らせることが可能です。 ジョイスティックを倒したらその方向にしっかり歩くというのはそれだけで感動です。 子供の頃に ASIMO がノロノロ歩くのをみた記憶が蘇り、その時との違いから飛躍的な進歩を感じました。(実際にはソフトウェア技術だけでなく、部品が安価に量産可能になったことで中小企業でも入手可能になったことも進歩の一つです。)
コントローターや API でデフォルトの動きは呼び出せますが、タスクは愚か、腕を好きな方向に動かすのも一苦労です。 一週間でできたのは、
- ロボットの腕の動きを記録可能な状態にする
- 人間が腕を動かす
- 記録された動きを API 経由で再現させる
というものでした。ヒューマノイドロボットにおいては初歩的なタスクですが、苦労しました。
ソフトウェアエンジニアリングやウェブアプリケーションの世界ではグーグル検索やコードリーディングでアクセス可能な情報を辿れば大体の問題が解決しますが、ロボットではそうはいきません。 ヒューマノイドロボット自体がまだ黎明期で、エコシステムはまだ未成熟。
Unitree の G1 が広く使われていますが、まだまだ各社がしのぎを削ってデファクトが定まっているわけでもありません。 情報は全く整っておらず、実際 K1 はドキュメントの記載に古い箇所があったり、同シリーズのグレードによる違いがドキュメントに反映されていませんでした。
SDK があると言っても内部の制御詳細は非公開で、エラーに詳細なスタックトレースもつきません。 プレイヤーが少ないのもあって、trial & error がネットでは見つかりません(そもそも高いロボットを買える企業は限られます)。 さらに、固有パラメータを持つハードウェアが絡むことで、再現性が低下し、問題の複雑性も増します。
結局、前の記事に書いたように、何か壁に当たったら(以前の記事に書いた)「開発企業の人に聞く」ことが最適解となります。 (困っていた問題について直接答えを聞いた後でも、それが解であることは公開コードからは読み取れませんでした。)
ロボット、あるいはヒューマノイドロボット業界について
ロボット開発の難しかった点を書きましたが、開発自体は全くもって辛くはなく、非常に楽しい時間でした。
新しいものを学ぶことが元々好きでもありますし、自分が書いたコードでロボットが動くのは、 hello world を初めて表示した時と同じ感動があります。
そんなワクワクするロボット開発ですが、スタートアップのような速度感で、ソフトウェアエンジニアが未経験から挑戦できる機会は貴重です。 構造的に費用と環境の問題があるからです。
前述のように、ロボットは始めるだけでも大きなお金がいります。 どこから何を買うかにもよりますが、booster K1 も100万前後、 Unitree の G1 も数百万かかるそうです。 Web サービスやアプリと違ってまずハードウェアを買う必要があり、それは多くのの日本のスタートアップにとっては回収の見込みも薄い高額な初期費用です。
フィジカルAI がバズワード化しているとはいえ、ヒューマノイドロボットはまだ利益を生むかは未知数で、0から始めるにはリスクマネーが必要です。 キャッシュに余裕が必要となると、プレイヤーは大きな企業に限られてきます。
一方、大きな企業であればステークホルダーが多く、動きは遅く、保守的になりやすいです。 そうなると、外部から未経験の人材をそれなりの給料で雇うことは非常に難しいですし、仮に採用されても高速に PDCA を回すことはまた並並ならぬソフトスキルを必要とします。
ロボット、Bet するかどうか
フィジカル AI は注目を浴びて資金を集めていますが、まだ確証はありません。 個人的に、ロボットがいずれ人間の仕事を代替し、世界中に溢れていくのは確実だと考えていますが、一方でそれがいつなのかはわかりません。 世界に溢れるロボットがヒューマノイドロボットとも限りません。
巨大な資本が動いている中で、求められるのがロボット開発なのか、ロボットをデプロイするスキル(ロボット版FDE)なのか、それともセールスなのか。 帰国してから色々な情報を仕入れるようになりましたが、今でもわかりません。 まだ何もかもたりません。
そうは言っても、10 年先には世界がロボットで溢れていることは間違いなく、今から何らかの形で関わっておくのはキャリア視点で良いと思いますし、物理的にロボットを触ることが楽しくてワクワクするなら、是非もありません。 (じゃぁなんで転職しないねん、というツッコミはすみません、まだうまく語れないのでぼかしておきます。会社の人に話しても「話を聞いてるとおまえはロボットやりたそうに見えるけどね」と言われます。)
今回のサンフランシスコは色々な刺激を受け、特に多くの起業経験者と話す中で自分で事業をやりたい、起業したいという思いも芽生えてきました。諦めかけていたアメリカで働きたいという思いも再燃してきました。 現職でもまだまだやりたいことがあります。現職も頑張りつついろいろな人と話し、課題とチャンスを探したいと考えています。
(今回お世話になった CEO には、記事にすることについて口頭で許可をいただいています。








