2019年、私は会社の「脳」を作っていた——それをToDoリストだと勘違いしたまま
1分でわかる要点——ここから持ち帰れること
物理AI企業は、ロボットが使うのと同じMPCループ——つまり毎サイクル「次の最善手」を解き直すことで——ソフトウェア、ハードウェア、フロンティアR&D、マーケティング、営業、製造といったあらゆる部門にリソースを配分すべきだ。私はこのエンジンを2019年にLife GPS(二値整数計画法)として作りながら、それをただのToDoリストだと勘違いしていた。
物理AI企業がソフトウェア、ハードウェア、R&D、マーケティング、営業、製造にどうリソースを配分すべきか——ロボットが経路を再計画するのとまったく同じやり方で、毎サイクル「次の最善手」を解き直すことによって。
創業者もCEOも、実はひそかに答えるのが苦手な問いがある。
うちにはソフトウェア、ハードウェア、フロンティアR&D、マーケティング、営業、製造がある。資金は一つの財布に、エンジニアの工数も一つのプールにまとまっている。では次の1ドルと次の1時間は、どこに投じるべきか?
たいていの企業はこれに、原始人があらゆることに答えるのと同じやり方で答える——一番声が大きい者が勝つ。 シリコンバレーではこれを指す名前まである。HiPPO、つまりHighest-Paid Person's Opinion(訳:最も給料の高い人の意見)だ。 一番話がうまいVPがヘッドカウントを勝ち取る。それは戦略ではない。その場しのぎの芝居にすぎない。
本当の答えを見せよう。そのうえで、実は6年前に自分でそれを作っておきながら、自分が何を手にしているのか分かっていなかったことを白状する。
まず罠から:「深く行くか、広く行くか」
エンジニアにこの資源配分の問題を尋ねると、みんな見慣れた絵を思い浮かべる。木構造だ。行き方は深さ優先――一本の枝を結果が出るまで突き詰めるか、それとも幅優先――すべての枝を少しずつ進めるか。 深さ優先か幅優先か。DFSかBFSか。いかにも正しそうに聞こえる。
だが、これは罠だ。なぜ罠なのか、見ておく価値がある。
グラフ探索が答えるのは「各ノードをどの順番で訪れるか」であり、各ノードをちょうど一度だけ訪れる。 しかし予算配分は「訪問」ではない。営業チームを「訪れる」わけではなく、注ぎ込むのだ――分割可能で上限のある資源を注ぎ込み、返ってくるものを測る。深さ優先も幅優先も、しょせん同じ仕組みのダイヤルを二つの間抜けな極端に固定しているにすぎない。DFSは「常に一番新しい枝へ」、BFSは「常に一番古い枝へ」。どちらも、唯一重要なことを無視している。それは――いま最も価値のある枝はどれか、ということだ。
そこで正直に訂正しておこう。以前の自分の枠組みは、ここで気持ちよく撤回する。答えは巡り方の順序ではなかった。目的関数と制約条件こそが本質だったのだ。必要な道具はグラフ探索ではない。最適化だ。そしてこれは70年前から存在する、地味で解決済みの問題クラスにすぎない。自分の会社がその一事例であると認識しさえすればいい。
告白:私は2019年にこれを作り、「Life GPS」と名付けていた
6年前、私は溺れかけていた——学ぶべきことは多すぎ、時間は足りず、どんなに厳格に組んだ週次計画も水曜日には崩壊した。そこで私は自分自身を直すための小さなアプリを作った。自分を修正するために。それをLife GPSと名付け、売り文句はシンプルだった——a planner that tells you the next best step, no matter how many turns you miss — like a GPS.(訳:何回道を間違えても、次に取るべき最善の一手を教えてくれるプランナー——GPSのように。)
まず全体像を知りたいなら、こちらにMedium上の元記事がある。読むだけでなく体感したいなら?6年経った今でも実際に動くアプリをいじってみることができる——いくつか目標を設定し、「Update My Plan」を押せば、再計算される様子を見られる。(コードはGitHubにある.)
その可愛らしいUIの裏側にあったのは、二値整数計画法(Binary Integer Linear Program)だった。 平たく言えばこうだ。1週間を時間枠のグリッドとして扱い、各枠をタスクに割り当てるかどうかをオン・オフで決める。目的は、本当に重要なことがどれだけ実際に達成されるかを最大化することであり、そのために厳格なルールも課される——各タスクには最低限必要な時間はあるが上限もある、1時間にひとつのタスクしか入らない、締め切りを超えてスケジュールしない、といった具合だ。ソルバーがグリッドの最適な埋め方をひとつ見つけ出す。それだけだ。 それが脳のすべてだ——そして「時間枠」を「エンジニア時間とドル」に置き換えれば、それは会社そのものになる。
maximize Σ value(department) × resource(department) # the best next move
subject to each team-hour spent only once # no double-booking
each effort ≥ floor, ≤ cap # min viable, don't over-invest
respect dependencies + deadlines # the graph
then RE-SOLVE every cycle as reality reports back # ← the GPS reroute (MPC)
最後の一行がすべての仕掛けだ。それより上はただの計画にすぎない。だがこの一行が、計画を生きたものに変える。
そしてここからが、今考えても鳥肌が立つ部分だ。「実際に」何が起きたかを伝えたとき——「今朝はディープワークが2時間ではなく、40分しか取れなかった」——そしてUpdate My Planを押すと、それは具体的なあることをやってのけた。すなわち、過去を凍結し、すでに使った分を残りのすべての予算から差し引き、その週の残りを最初から解き直したのだ。
これにはロボティクスの世界で、れっきとした名前がついている。モデル予測制御(Model Predictive Control) — ——計画し、実行し、現実が動くのを見届け、実際にいる地点からまた計画し直す。廊下に箱が現れたとき、自動運転ロボットが経路を再計画するのに使うのと、まったく同じ制御則である。私は週末のうちに、組織レベルのMPCを書き上げていた。それを生産性アプリだと勘違いしていたのだ。
その古いコードには、幽霊のように残っているものすらある。うまく動かせなくてコメントアウトした機能だ。それは「これに最低3日、ただし最大5日まで取り組む」というルールで——DFS対BFSの背後にある本当の緊張関係、つまり集中か多様性かを、不器用ながらも表現しようとした試みだった。2019年の私のソルバーはこれに躓いた(非線形制約だからだ)。だが現代のソルバーなら朝飯前でこなす。かつて私が諦めたものが、今ではたった一行で済んでしまう。
なぜそれはおもちゃのままだったのか——そしてそれこそが、丸ごとチャンスである理由
Life GPSは正しかった。 それがノートパソコンの外に出なかった理由はひとつだ。人間が手作業で打ち込むしかない三つのものに、飢えていたのだ。
- 重み。 私は「学び=10、遊び=6」と入力していた。純粋な勘だ。企業では、誰もこの数字に合意していない。それなのに、それがすべてを決める。
- タスクとルール。 表に手打ちしていた。面倒で、静的で、いつも古びていく。
- フィードバック。 一日に二回、自己採点しなければならなかった。面倒で、結局やめてしまった。
この三つはどれも人力クランクだった。 そして、この三つこそ、AIネイティブな企業がいま自動化しているものそのものだ。
- 重み → エージェントが見積もる。 AIが証拠を読み、各施策の期待価値・コスト・リスクを――継続的に、安価に、会議なしで――値付けする。
- タスクとルール → 組織から直接読み取る。 会社はすでに自らの仕事を、依存関係を持つ項目のグラフとして追跡している。オプティマイザは、それを再入力させるのではなく、そのまま読み取る。
- フィードバック → 計測される。 テストが通ること、ロボットのエラー率が下がること、契約が成立すること——そうした出来事そのものが「Update My Plan」ボタンを自動的に押す。
この論考の核心は、まさにこの一文に尽きる:Life GPSは、3つのデータフィードに飢えていた正しい答えだった。そしてAIネイティブ時代は、その3つすべてを無料で提供してくれる。 アイデアが賢くなったわけではない。センサーのコストが千分の一になった、それだけの話だ。
ロボティクス企業へのオチ
頭から離れない一文がある:
フィジカルAI企業は、自社のロボットが世界を移動するために使うのと同じアルゴリズムで、自らを操縦するべきだ。
ロボットは、完璧な計画を一度だけ計算してあとは盲目的に突き進む、ということはしない。センシングし、数手先まで計画し、行動し、また観測し、そして計画を立て直す——これを永遠に繰り返す。 その上に立つ会社が、お金と人をどう配分すべきかも、まさにこれと同じことだ。 1月に石に刻んで3月には死んでいる年間計画ではない。必要なのは生きたGPSだ。それはサイクルごとに、経営陣に唯一最善の次の一手を示し、ゲートが破られた瞬間、市場が動いた瞬間、大物採用が決まった瞬間に、即座にルートを変える。
メディアはメッセージである、とマクルーハンは言った。ロボットの内部にクローズドループ制御を組み込むほどそれを信じているなら、自社にも組み込むべきだろう。
これが実際に解決すること(もっと大きな問題)
一歩引いて見れば、この小さなアイデアはもっと大きな問題を指し示している。「次のドルはどこに向かうべきか」は、ロボットが経路を計画するのと同じ数学であり、ファンドがポートフォリオを調整するのと同じ数学であり、AIが探索と活用のどちらを選ぶか決めるのと同じ数学だ。これらは一つの問題であり——不確実性のもとで希少な資源を配分し、価値を最大化する問題だ——そして今、初めて、それを会社規模で実行できるようになった
。かつて人間を必要としていた3つのフィードが、今では自動化されているからだ。すべては重み次第だ、ということである。 最適化エンジンにゴミのような見積もりを食わせれば、崖から突き落とされる。しかも最適性の証明書付きでだ。自信満々に間違っているほうが、大雑把に正しいより始末が悪い。だから正直な第一歩は、エンジンを作ることではない。見積もりが信頼できるかどうかを証明することだ。過去の意思決定を六つ取り出し、その時点で知り得た情報だけを使ってAIに値付けさせ、実際にうまくいった選択を数学が選び出せたかどうかを見る。かかる時間は午後ひとつ分だけ。それでシステム全体の正当性が証明されるか、あるいは本当の製品は見積もり装置そのものだと分かるか、そのどちらかが判明する。これは寄り道ではない。これこそが規律である。
2019年、私は自分の一週間を制御下に置くためにGPSを作った。だが実際に作っていたのは、会社が自分自身を制御下に置くために必要なものだった。あとは世の中がそのコードに追いつくのを待てばよかっただけの話だ。
あなたの次のドルはどこへ向かうのか——そしてあなたの会社は、それを一番声の大きい人間の意見ではなく、たった一つの正直な数字で答えられるだろうか?
AIネイティブなフィジカルAI企業を築くシリーズの一篇——「Ship a loop, not a demo」と「You Can't Order People to Close Loops」に続く。自分のサイトで公開しており、その背後にある戦略プランはコードとともに置いてある。2019年の種はこちら:github.com/wjlgatech/life_GPS.