なぜ俺にはロング案件ばかり来るのか——Uberの配車AIは「あなたの好み」を知っている

配達・ビジネスバイク
スポンサーリンク

俺の台帳の、小さな謎

先日の記事で「3回目から鳴らない」という配車の絞りの話を書いた。今回はその続きで、もっと個人的な謎から始めたい。

俺のある2日間のUber台帳はこうだった。

  • 1日目:実際に受けたのは1件。11kmのロング、現金案件、報酬2,010円
  • 2日目:受けたのは1回。3km台の2件持ち、合わせて754円

正確に書くと、オファー自体はもっと鳴っている。ただ、単価を見て「行こう」と思えた球が、1日にこれだけだった、ということだ(前回書いた「幽霊供給」の中の人の実態がこれだ)。

で、今回注目したいのはその中身のほう。周りの配達員がショート案件を高速回転させている市場で、俺の手元に「受ける価値のある球」として届いたのが、11kmの現金ロングみたいな癖の強い案件だった。これは偶然か? それとも——安い球の洪水と、たまに混ざる俺好みの変化球というこの配球そのものが、誰かに設計されているのか。

先に仮説を言ってしまうと——配車AIは、配達員一人ひとりの「好み」と「能力」を学習していて、オファーの中身そのものが人によって違う。今回はこの推理を組み立てていく。いつもどおり、Uberの中身は見えないので、外から観測できる挙動と設計の定石からの逆算だ。

推理1:配車AIは「受ける確率」を予測している

配車システムの設計者の椅子に座って考える。マッチングを速くしたい設計者にとって、断られるオファーは純粋な時間の無駄だ。だったらどうするか。「この配達員がこのオファーを受ける確率」を予測して、受けそうな人から順に投げる。機械学習の使いどころとして、これほど素直な題材はない。むしろ実装していないと考えるほうが不自然だ。

そしてその予測の材料は、過去の受諾・拒否の履歴だ。ショートばかり受けてロングを蹴り続ける人は「ショートの人」に、逆なら「ロングの人」に分類されていく。誰も好みを登録していないのに、挙動から勝手に好みプロファイルが出来上がる。

これが正しいとすると、不気味な帰結が二つ出てくる。

一つ目、過去の選択が檻になる。ロングを何度か蹴っただけで「ロング嫌い」と分類されたら、以後ロングが来なくなる。来ないから受諾実績も作れない。分類は固定される。たまたま体調が悪くて蹴った日の履歴が、その後の配車を歪め続けるかもしれない。

二つ目、「干され」はペナルティじゃないかもしれない。何を投げても受けない配達員——たとえば安いオファーを眺めて蹴り続けている人——をこのモデルが学習したら、「この人に投げても無駄」と判断してオファー総量そのものを絞る。誰も罰しているつもりはないのに、結果は罰と区別がつかない。配達員界隈で恐れられている「干され」の正体の候補が、これだ。

推理2:「消防士」は火事のときだけ呼ばれる

もう一つ、配車AIが確実に持っているはずの予測がある。「この配達員に渡したら、実際何分で届くか」だ。到着予測はこの手のサービスの技術の本丸で、配達員ごとの実走記録——推定時間より速いか遅いか——を特徴量にしていないはずがない。

この「速さの裏帳簿」が一番効く場面はどこか。遅延しかけの注文だ。到着予定を過ぎた注文は、返金やクーポン補償という追加コストが確定しかけている。「安く届ける」フェーズはもう終わっていて、「被害を最小化する」フェーズに入っている。そこで投げる相手は、受諾確率が高く、かつ推定時間を縮めてくれる実績の持ち主が最適解になる。火事場に新人は出さない。消防士枠だ。

ここで俺の2,010円の現金ロングに戻る。あの案件は「11kmのロング」で、しかも「現金」だった。ロングを受ける配達員は少なく、現金対応をオンにしている配達員はもっと少ない。受け手のプールが二重に狭い案件だ。誰にも受けられずに熟成し、報酬が積み上がり、そして——「ロング好き・現金OK・実走が速い」という俺のプロファイルに着弾した。そう読むと、数は絞られているのに、来る球の質だけは妙に俺向きであることの説明がつく。

前回の記事で「時間差でエリアに入った配達員が熟成された高値注文を引く」という予言を書いたが、それと合わせるとこうなる。「エリアに後から入ってきた、速い実績持ちのベテラン」が一番おいしい。配達員界隈で昔から報告されている「エリアに入った直後になぜか高額が鳴る」という理不尽なラッキーは、この仕組みの表出かもしれない。

あなたの満点評価は、配車AIには届いていない

「いやいや、配車は評価で決まるでしょ」と思った人のために、表の評価の話をしたい。

配達員アプリには満足度・応答率・キャンセル率・オンタイム率という成績表がある。だが観測される現実として、この数字がほぼ満点でも干される。Xには、満足度99%・キャンセル率0%・応答率98%・オンタイム率100%という成績表のスクリーンショットとともに「これらの配達成績って、本当に何の意味も無いんだよな」と書いた配達員がいる。

構造を考えれば当然かもしれない。この評価は実質95%〜100%に全員が団子で張り付く仕様だ。普通に配っていれば90%を切ることはまずない。全員が「優良」に見える物差しに、配車の優先順位を決める識別力はない。

さらに言えば、客からの評価は帰属エラーの塊だ。店の調理が遅くても、システムが注文を寝かせて遅配になっても、雨で道が混んでも、怒りは「配達員に低評価」で着弾する。ノイズまみれの主観データを配車の判断軸にしたら精度が落ちる。設計者なら当然、タイムスタンプとGPSという嘘をつかないログのほうを信用する。

つまり、こういう三層構造を想像すると観測と合う。

  1. 表の評価——配達員に見せるためのやる気メーター。識別力はなく、配車にはほぼ効かない
  2. 裏の帳簿——受諾の癖、実走の速さ、対応範囲。配車の本体はこちらを食っている
  3. 人力の例外処理——なお、店舗側から特定の配達員とのマッチング除外を申請できる仕組みもあるらしい(ここは伝聞であることを明記しておく)

配達員が磨けと言われている数字は1で、実際の配車を動かしているのは2。存在しないレバーを磨いている人が、たくさんいる。

調教合戦——向こうも学習するが、こちらも調教できる

ここまでを一枚の絵にすると、こうなる。

Uber側は、安い基準単価と回数クエストと配布の絞りで、配達員を「安くても受ける挙動」に寄せようとする。希少になったオファーは1件1件が貴重に見えるから、「次がいつ鳴るか分からないなら安くても取っておこう」が合理になっていく。

一方で配達員側も、受諾と拒否という行動を通じて、配車AIに自分を学習させている。安い球を蹴り続ければ「この人には高い球しか通らない」と学習され、ショートを受け続ければショートが増える。あなたが何を受けて何を蹴るかは、明日のあなたに何が鳴るかを決めている。

これは調教合戦だ。そして重要なのは、どちらの調教が効くかは、自分がどちらの報酬体系にいるかで決まるということだ。

実用編:自分の「兵種」を自覚してから戦略を選ぶ

具体的な数字で考える。いま俺のエリアで掲示されている週末の大型クエストは、120件+10件=130件の完走で約39,000円。1件あたり約300円の上積みだ。3日で130件、1日43件強——フルタイムで走り切る前提の数字だ。

このクエストは制度上、誰でも選べる。でも副業が本業の合間に3日で130件は物理的に無理だ。入口は全員に開いていて、達成できるかは持ち時間で決まる。つまり実質的に、配達員は二つの「兵種」に分かれる。

量の兵(専業・完走前提):全件受けの高速回転でクエストを取り切る。全部受ける人にはAIが安心して量を流すから、絞りの問題も起きにくい。ただし冷静に計算してほしい。安い基準単価に300円を乗せても、他社の通常単価に届くかどうか、という水準だ。それを、途中離脱したら上積みごと消える「後払い一括」の条件で走る。

質の兵(副業・複数プラットフォーム前提):収入のベースは他社に置き、Uberは受諾率を無視して高い球だけ狙う。数は来なくなるが、それは織り込み済み。裏帳簿に「この人には高い球しか通らない」と学習させることが、この戦略の本体だ。俺の2,010円は、この調教の配当だと思っている。

どちらが正解という話ではない。クエストを追える持ち時間がないのに量の兵の戦い方をすると、安い球を拾い続けるだけになる。逆に専業が質の兵をやると、待ち時間のリスクを丸ごと背負う。自分がどちらの報酬体系に置かれているかを自覚してから、受ける・蹴るを選ぶ——それが、学習する配車AIの時代の自衛だと思う。

ここまで言える、ここからは闇

  • 受諾確率モデルも、速さの裏帳簿も、外から実在を証明する方法はない。「観測に最も整合する仮説」として書いている。
  • 俺の実録はn=1だ。しかも台帳に残った「ロング寄り」の偏りには、俺自身の選球眼——安い球を蹴るフィルタ——が混ざっている。AIが俺に投げた結果なのか、俺が拾った結果なのか、台帳だけでは切り分けられない。切り分けるには、受けなかったオファーの側を記録する必要がある(次はそれをやろうと思う)。
  • 検証の設計はできる。行動パターンを意図的に変えて(たとえばショートを連続で受け続けて)、その後のオファー構成が遅れて変わるかを見る。変わるなら学習は実在し、変化の遅れはそのまま「檻の強度」の測定になる。機会があれば同業の先輩たちとやってみたい。

配車AIは、あなたの評価の星は見ていないかもしれない。でも、あなたが昨日何を蹴ったかは、たぶん覚えている。

コメント

タイトルとURLをコピーしました