世界そのものが最良のモデルである
シミュレーションが実機の遭遇するすべてを捉えていると信じてはいけない。物理的な試作機を早期に頻繁にテストせよ。モデル化されていない摩擦、センサーノイズ、バックラッシュは、数式の中より先に必ず作業台の上に現れる。
ロボット技術者 · 感知し、判断し、物理世界で行動する機械を設計する仕事。真の難問は知能ではなく、世界そのものだった。
回路基板をはんだ付けしたりブラケットを手加工したりするロボット技術者のイメージは、画面によって狭められはしたが取って代わられてはいない。CADソフト、制御システムのコード、シミュレーション環境が働く週の大半を占めるが、この仕事は今も日常的にオシロスコープを手にした作業台で終わる。誤作動するロボットは遅かれ早かれ実機でデバッグしなければならないからだ。
経験豊富な技術者たちが伝えるのは、特定のツールについてというより、実機でテストされていないあらゆるものを疑ってかかる姿勢だ――洗練されたシミュレーションより実際のテストを信じ、電力と計算資源を固定された通貨のように予算配分し、ロボットが全速力で初めて動く瞬間を、何かがうまくいかない可能性が最も高い瞬間として扱う。
ロボットに可動域と可搬荷重を与える物理的構造、関節、機構を設計し、バックラッシュ、摩擦、コンプライアンスが組み立て後にどう現れるかを知っている。
厳密なタイミングでセンサーを読みモーターを駆動する低レベルコードを書きデバッグする。締め切りを逃せば、単に遅いだけでなく不安定または危険なロボットになりかねない。
カメラ、ライダー、深度センサーのデータを、世界に対する使える理解に変換する。手書きの特徴検出よりも訓練済みモデルに頼る傾向がますます強まっている。
安全で効率的な経路や軌道を生成・実行し、現実の外乱にもかかわらずロボットをその経路上に保つフィードバックループを調整する。
ロボットの機械・電気・ファームウェア・ソフトウェアの各層――個々には正常に動いている――を協調させる。実際の故障の大半はそのどれか2つの間の境界で発生する。
非常停止、力の制限、安全な故障モードを設計に組み込み、ロボットが予期せぬ挙動をした理由を、近くに人がいる状態で再発する前に突き止める。
夜間のテスト実行や現場で無人稼働しているロボットのデータやエラーを確認し、その後優先事項と未解決のバグについて短いチームミーティングを行う。
ハードウェア作業の主要な時間帯――配線、センサーの較正、ブラケットの加工や3Dプリント、あるいは荷重下で関節がずれる原因の追跡。
本物の休憩だが、デモや競技、製品発売前の追い込み期には真っ先に消えがちだ。
作業台ではなく机で、制御コードを書いたり調整したり、シミュレーションを実行したり、知覚・計画パイプラインに取り組んだりする。
実際のハードウェアでシステム全体を一緒に動かす。個別には隠れていた機械・電気・ソフトウェアの問題が普通ここで一斉に表面化する。
普段の日は自分の時間と睡眠。競技、デモ、製品出荷日の前は、技術者は夜遅くまで作業台に戻ることがある。
Craft knowledge practitioners actually pass on — not motivation.
シミュレーションが実機の遭遇するすべてを捉えていると信じてはいけない。物理的な試作機を早期に頻繁にテストせよ。モデル化されていない摩擦、センサーノイズ、バックラッシュは、数式の中より先に必ず作業台の上に現れる。
ロボットが誤作動したら、コードを疑う前に電源とコネクタを確認せよ――謎めいたロボットの故障の圧倒的多数は、緩んだコネクタ、瞬間的な電圧降下、誤配線されたセンサーに起因し、ソフトウェアのバグではない。
非常停止、トルク制限、安全区域は出荷前に最後に加える機能ではなく、最初の試作機から設計に組み込まれる。既に高速で動いているロボットに安全機能を後付けすることが、人が怪我をする典型的な原因だからだ。
あらゆるセンサー、モーター、オンボードコンピューターは、ロボットのバッテリーと処理能力の予算の中から一定の割り当てを消費する。何かを削らずに機能を一つ追加することが、有望な試作機が自分の作業日すら終えられなくなる原因になる。
クリーンなモデルで調整された制御アルゴリズムは、モデル化されていないギアのバックラッシュ、ケーブルの摩擦、関節のコンプライアンスのために実機で失敗しうる。こうした問題はエラーメッセージとしては現れず、ただ不可解に不正確なロボットとしてしか現れない。
新しいコードや新しい機構は、誰かがキルスイッチに手をかけた状態で、まず動作速度の一部でテストされる――誰かが全速力で動かすことを許可する前に。アトラスやスポットのような機械のあらゆる新しい動作にこの規律を適用していると技術者たちは語る。
業界の大半で使われるオープンソースのミドルウェアフレームワークで、センサー、アクチュエーター、ソフトウェアモジュールを、毎回配管を作り直すことなく一つの動くロボットへとつなぐ。
ロボットの機械的構造をモデル化し、干渉をチェックし、金属やプラスチックを切り出す前に製造図面を生成するパラメトリック3D設計ツール。
制御システムと力学のモデル化における標準ツール。特にフィードバックループの調整や、実機のコードを信頼する前にロボットの挙動をシミュレートするのに使われる。
今も仕事の中心にある基本的なハードウェアデバッグ機器――実際のロボットの故障の大半は、これらのツールが直接明らかにする配線、電源、信号の問題に起因する。
実機を危険にさらす前に、制御コードのテストや知覚・操作モデルの訓練を可能にする物理ベースの仮想環境。ただし決して実機の完全な代わりにはならない。
GazeboやMuJoCoで完璧に動くコントローラーが、シミュレーターがモデル化していないセンサーノイズ、遅延、摩擦のせいで実機では失敗しうる――初期のハードウェアテストを省くチームは、しばしばこれを高くつく形で、しかも遅くなってから発見する。
ロボットの本体を固定所与として扱い、努力をソフトウェアに集中させると、最初から機構とソフトウェアを一緒に設計するのではなく、バックラッシュ、脆弱な関節、センサー配置といったハードウェアの実際の限界と戦うことになる。
適切なリスク評価と非常停止テストなしにロボットをデモや出荷に急がせることが、危うい事態を実際の怪我に変える典型例だ。特にロボットが柵の外で人の近くで働くようになってからは。
現代生活を動かすコードを書き、テストし、保守する仕事であり、AIが自分自身の日々の作業を自動化していく様子を最初に目の当たりにしている職業の一つでもある。
AI-resistant 35 🤖機械知能を支えるアルゴリズムを設計・検証する仕事。今やその研究プロセス自体の自動化を競う分野になりつつある。
AI-resistant 50 🛰️地上を離れる航空機・ロケット・宇宙船を設計・解析・認証する仕事で、推測の余地を残さない安全マージンを守り続ける。
AI-resistant 74 🌉川と岩と重力を橋・道路・清潔な水に変える職業――イムホテプ以来、文明を静かに支え続ける仕事。
AI-resistant 72 🔌自動車のブレーキから核ミサイルの誘導システムまで、あらゆるコンピュータや携帯電話の中にあるトランジスタを設計・製造する。地球上でごく一部の工場しか動かせないほど精密な機械を使う仕事だ。
AI-resistant 60