
本シリーズのテーマは「研究者たちのBig picture」。彼らが研究の「先」に見る未来の社会とは?研究と私たちの暮らしはどう繋がっているのか? 彼らのビジョンが、私たち自身のこれからを考えるヒントになるかもしれません。
人の意思決定や行動のプロセスは、アルゴリズムで説明できるといいます。アルゴリズムが進化した先にはどのような社会が広がっているのか、河瀬さんに伺ってみました。

今回お話しを伺ったのは
名前:河瀬 康志
所属:情報理工学系研究科・数理情報学専攻 特任准教授
そもそもアルゴリズムってなんだろう?
_______________________________
▶︎アルゴリズムという言葉はよく耳にしますが、未知の世界の印象が強くてなじみが薄いです。アルゴリズムとはなんでしょうか?
アルゴリズムは、ある問題を解決したり作業を効率良く行うための手順や計算方法のことです。日常生活にもアルゴリズムが応用されていることがたくさんありますよ。例えば、パソコンで文字を変換すると予測変換で候補が出てきますが、日本語は同音異義語が多いですよね。例えば「かき」を変換したい時「柿」なのか「牡蠣」なのか「夏季」なのか、それまでの入力結果から次の言葉を予測し表示させ、どの順番で候補を表示させるか、というところにアルゴリズムが関係しています。
▶︎パソコンは変換の結果と採用した言葉を学習していきますよね。アルゴリズムがこれまで学習された結果を毎回書き換えているのですか?
表示させる時に、これまで変換した回数が多いものを最初に出すのがいいのか、それとも直近に変換されたものがいいのかなど、いろいろな考え方ができますね。夏は「夏季」が多く変換されたから「夏季」を上位に表示していたけど、秋になって「柿」の変換が増えてきたから「柿」を上位に表示させよう、ということをしているのもアルゴリズムです。
このように、コンピューターの中で行われる様々な意思決定のプロセスには、すべてアルゴリズムが関係しているんです。また、株式の自動売買システムでは、刻々と変化する情報に基づいて「売り時、買い時」をトレーダーが即座に判断しないといけません。このような不確実な状況の中で最適な累積利益を目指す時にもアルゴリズムが使われています。
▶︎意思決定そのものがアルゴリズムなのですね。それでは、アルゴリズムは生活と密接に関係しているとも言えますね。
はい。コンピューターを利用して何かをする時は全てアルゴリズムが関わっていると言えます。使うソフトやアプリによって、表示結果が違うことがあると思いますが、それは使われるアルゴリズムの違いと読み込ませるデータの違いによるものです。
世の中はアルゴリズムで動いていた
_______________________________
▶︎話を聞いていると、アルゴリズムが身近なものに感じてきました。でも河瀬さんの研究は予測変換ではないですよね?
私は、「数理最適化」という分野を研究しています。簡単に言うと、与えられた制約の中で最も良い結果を見つけ出すための数学的な手法です。
例えばお店の店長が在庫の発注をする時、今までの勘や経験値で数をなんとなく決めて発注するのではなく、季節や天候、倉庫の空きなど様々な情報を数式化し、利益を最大化するためにコンピュータで解くことです。これで売れ残りや欠品を減らし、効率の良い発注ができます。
数理最適化には他にも様々な分野があります。例えば、1日ですべての届け先を回る最も効率的なルートを計画するといった、必要な情報が全て揃っているなかで最適な解を解くものです。これを「オフライン最適化」といいます。

また、リアルタイムに情報が変化する中でその時点での最善の判断を下すような場合、例えばタクシー配車システムで、ユーザーからの乗車リクエストが次々と発生している時、どのタクシーをどのユーザーに割り当てるかを決めるような場合のことを、「オンライン最適化」といいます。オンライン最適化のなかには、どの時点で決断をすると良い結果になる確率が上がるかを研究する「最適停止問題」というものがあり、さらにそのなかに「秘書問題」(結婚問題)などがあります。

▶︎面白い名前ですね。ちょっと秘書問題が気になりました。これはどんなものでしょうか。秘書とついているのでビジネスと関係ありそうですが。
秘書問題は例えば、秘書を雇おうとした時に、候補者を一人ずつ順番に面接していくとします。その中で一番良い評価値の人を雇える確率を最大化するにはどうすればいいか、という問題で、ビジネスの意思決定場面などでも役に立つといわれています。
ここでは面接時にその場で採用するかどうか決めなければいけないという設定なのですが、ちょっとやってみましょう。
実際には一人ひとりの評価値は面接の時に初めて分かるかと思いますが、ここでは分かりやすくするために全員の評価値を一覧で見えるようにしています。
それでは始めます。面接の1人目が来ました。その人の評価値は2025です。雇いますか?

▶︎そうですね、まだ雇わないで待ちます。
そうですね。面接候補は10人なので、後の人が1人目より良いか悪いかは分からないですよね。なので、一般的には様子見するのがいい。ということになります。
2人目が来ました。評価値は1521です。このあとずっと評価値が下がり続ける可能性もありますが、まだ2人目なので、まだこの後良い人が来る可能性のほうが高いと考え、雇わないと決めます。
そして3人目の評価値は2704です。今までで一番良い人です。どうしますか?これで雇いますか?
▶︎なるほど、一番良い人を雇うための確率を高くするにはどういう戦略がいいのか、を求めるということなんですね。でも、実際にそれを求められるのでしょうか?
その確率を上げることを数学で考えることができます。実は秘書問題では、最初の37%までは意思決定を見送り、それ以降で決断すると最良の選択ができる確率が高いという「37%ルール」があります。これは実際に意思決定時の考え方として参考にされています。

▶︎人を雇ったことがないので馴染みがありませんが、もう少し身近な例で説明いただけるでしょうか。
車でショッピングセンターに行った時、混んでいて空きがわずかしかありません。なるべく建物の入口近くに駐車したいのですが、決めきれず迷っているうちに結局望んだ場所から遠い場所に停めてしまった、という経験はありませんか?
この例のように、自分にとって最適な駐車場所を決めるタイミングはいつが良いか、という場合にも応用できます。注意することは、10分以内に駐車するとか10か所探す間で停めるなど条件を決めることです。決めたら、最初の37%を経過するまではただ静観します。この間に見つけた良い場所を記憶しておき、37%の観察期間の後さらに良い場所が見つかったらそこに決めると、望みに近い場所へ停められる可能性が高まります。

ほかにも、飛行機や新幹線を予約したい場合、家を買うタイミングを計るときなどにもこの37%ルールを当てはめることができます。
▶︎駐車場所やチケット予約の話のように、実際に何度も失敗をして苦虫を噛んだ経験があるだけに、人の行動とアルゴリズムには密接な関係があること、そしてアルゴリズムを上手く利用すると、ライフハックができることがわかり、驚きました。
理論と実装を繰り返し、ベストな解を求めていく
_______________________________
▶︎河瀬さんはそれぞれの課題に合うようにアルゴリズムを設計していると思うのですが、どのような流れで進めていくのでしょうか。
例えば、東京駅前から大阪の通天閣まで車で行くという課題があるとします。最初に課題に対する評価指標は何かを設定します。早く行く、安く行く、最短で行くなどいろいろな考えがある中で、ここでは「移動距離の短さ」を評価指標に決めます。決まったら次にモデル化を行います。モデル化とは現実の世界から本質を取り出し、理論の世界で表現し直すことです。
例えば、東京 – 大阪間に存在する交差点や分岐点などの「地点(ノード)」と、それらのどことどこを結ぶ「道路区間(リンク)」があるか、さらに各道路区間の距離情報を抽出します。次に、この情報を使って、東京駅のノードから通天閣のノードまでに至る経路を探索します。このとき、経路の長さは、経由するすべての区間(リンク)の距離を合計した値とします。
このように、「総距離が最小となる経路はどれか」という最適化問題として、課題をモデル化できたことになります。
モデル化ができたら、得られた情報を入力として、アルゴリズムにより最適な経路(解)を導きます。

②行き方が数多く存在するため、すべてのルートについて確認することは計算機を用いても簡単ではないが、適切なアルゴリズムを用いれば解くことができる。

▶︎課題から一度、理論の世界に行くのはどうしてでしょうか。
理論の世界を経由すると、課題の本質だけを取り出して考えられるのでより汎用性の高いものができるのです。秘書問題だと、人を雇うという話だけでなく、駐車や予約のタイミングについても同様に扱えましたよね。最短経路の話ですと、移動距離を考えていましたが、移動時間や価格についても同様のモデル化とアルゴリズムで解くことができます。
ただし、本質を取り出せば課題が解けるということではないんです。
▶︎どういうことでしょうか?
食事を例にしてみましょう。なるべくお金をかけずに栄養条件を満たすような食品をどう買えばいいかを解くと、お米とキャベツだけ買うのが最適だ、という結果になってしまうこともあります。
▶︎確かに効率という面ではいいのかもしれませんが、、、。
そう、実際にお米とキャベツだけで食事できますか?という話になりますよね。
このように、モデル化して本質を取り出してしまうと、時として現実世界にそぐわない結果になることがあります。生きるために必要な栄養素を身体に取り込む行為が食事ではなく、おいしさや見た目、親しい人との時間や空間の共有、心地よさなども含めたものが食事であると考えると、栄養素と食費だけを考慮するモデルは間違っていることになります。
不足している点が見えてきたら、彩りを条件に入れましょう、レパートリーを条件に入れましょうと、モデルをアップデートしていきます。そういったトライアンドエラーを繰り返すことで、課題の解決に向かっていきます。

▶︎答え一発!とはならず、繰り返しベストな解を求めていくのですね。
最初に、お金をかけずに栄養条件を満たせるような食品は何か?と問われたら、単純に栄養効率がいいもの、が思い浮かぶと思います。そこでまずモデル化のひとつとして解いてみる、と言うことが大事なんです。そうしないと何が大事なものなのか、逆に省けるものは何か、が分かりません。だから、最初に本質だけで解を求めそこから改善していく、というプロセスになるんです。
▶︎なるほど、河瀬さんは上記の図の全ての部分に関わっているのでしょうか。
私は、本質だけを取り出して考えることができる、シンプルな理論の世界に魅力を感じています。理論の世界のアルゴリズムをメインの研究としていますが、ほかの部分も付随する形で関わるので全てですね。
▶︎もっと良いアルゴリズムはないか?と日々数式と向き合っているのですね。
最良のアルゴリズムを作ることはもちろんやりますが反対に、現状よりもよいものはもう無い、ということを証明することもします。秘書問題のアルゴリズムにはいろいろなものが考えられますが、どのアルゴリズムを使っても37%より良くならないことが証明されているんです。
このように、アルゴリズムを作ることとアルゴリズムの限界を見つけることの両方が私の仕事です。実は、一番良いことを証明するのは難しいんですよ。「一番良いとはいえない」ものを見つけるためには、より良いものを持ってくればいいのですが、それが「一番良い」と言えるためには、なにを持ってきても、持ってきたものが一番ではないことを証明しないといけません。なかなか大変な世界です。

アルゴリズムで時代に合った価値を社会にもたらす
_______________________________
▶︎さまざまな事例を聞くとアルゴリズムが社会へもたらす影響は大きいことが分かりました。
そうですね。社会的なところでいうと、紛争地帯から逃れてくる難民を、キャパシティなどさまざまな条件を元にどの難民キャンプに割り当てると良いか、を導き出すことなどにも、アルゴリズムは役立っています。(「安定マッチング」という分野)
また、季節ごとの交通量予測を基に信号の間隔調整をして渋滞の緩和に努めたり、製品をどのくらい生産し、どこの倉庫にどのくらい在庫をしておくと製造と輸送の総コストを最小にできるか、といった生産計画を立てるときにも使われます。

男性3名(m0,m1,m2)、女性3名(w0,w1,w2)で各人の希望を集めたとして(例:m0さんは、w2→w0→w1の順に好き)出来るだけ全員の希望に近いペアを作りたいという場面です。3人でも希望がうまくマッチせず、何度かやり直しが発生しています。対象が何十、何千となった時に、人が考えるのは大変なため、数学で解くというのが「安定マッチング」の分野です。この方法は、病院への医師の配属等や様々な所で使われています。
▶︎身近な課題だけでなく社会や地球規模の問題にもアルゴリズムは関わっているんですね。今、研究をどのような形で社会へ還元しているのでしょうか?
人の意識がサステナブルな社会やエシカル消費(人・社会・環境に配慮した消費行動)へ向かっていて、メルカリのようなフリマアプリを始めとする中古市場への関心も高まっています。これにはメーカーも注目していて、私はメーカーが認定中古品市場に参入するべきか?を検討するお手伝いもしています。
具体的には、新品と同じものが中古市場にもあった場合、買い手はどちらを選ぶのか、どのような意思決定の末に購入したのか、中古市場で売買価格はどのように決まっていくのかなどを、数理最適化を用いて解析しています。それによって認定中古品販売に踏み切るべき市場条件や、その結果サーキュラーエコノミーの推進につながるのか、等を明らかにします。(参照記事:「サーキュラーエコノミーを語る」〜ゲーム理論で解く!メーカーの認定中古品がもたらす経済・環境的インパクト~)
また、メルカリでは、出品された商品の価格がしばらく待てば下がるのか、少し高いけど今買ったほうが良いかといった、買い手にとってのメリットとなる買い時のサジェスチョンを出すこともできます。このように売り手と買い手の双方が満足できる中古市場を活発化させることで、サステナブルな社会を推進します。
▶︎価値交換工学が掲げる「フェアで安全な価値交換を行える未来」という視点から、河瀬さんの研究が進んだ未来はどのようなものをイメージしますか。
最適化の活用は、「必要なモノを、必要な時に、必要な場所に、必要な量だけ届ける」という社会の仕組み作りに繋がります。ロスを減らし、限りある資源を有効活用できると同時に、資源やサービスの分配に公平性をもたらすことも可能です。
人的資源を例に挙げると、効率的に適材適所が図られ、誰もが能力を発揮できる公平な機会を提供できます。ビジネス、医療、福祉など様々な場で、人やモノを含む資源の価値を最大限に活かし、誰もが利益を公平に享受できるフェアな社会の実現に貢献できると思います。
▶︎コストの見直しや作業効率化を計りたい、人事での困りごとなど何か課題が出たら河瀬さんに相談したくなりました。河瀬さんにはどの時点で持っていけばいいんですか?
課題と評価指標、ある程度の必須条件と変数をイメージできるものがそろっていれば大丈夫なので持ってきてください。
例えば、こんな感じです。
課題 :各ユーザーが興味を持つニュースレターを効率的に配信したい
評価指標: ユーザーのクリック数
必須条件: ①種類Aのニュースレターは必ず送る ②一人に送るメール数の合計は週XX件以内
変数 : どのユーザーに、どのメールを送るか
その後、一緒に必須条件や評価指標などを整理しモデル化していきます。そこからアルゴリズムを設計します。でも最初から望ましい解が出ることは少ないので一度試します。
やってみれば、「あ、これも欲しかったんだ」というように目的関数に抜けていたものが浮き彫りになりますので、相談しながら条件を定義づけしたものを加えて再び解き直しながら最適化していけますよ。
▶︎河瀬さんの研究の先には、選択ミスによる失敗がほとんどなく、すぐにリカバリーが可能な、公平で誰もが納得できる社会、つまり人の生活に優しい未来が待っているような気がしました。計算式は分かりませんが、生活の身近なところで役立っている数学との距離が少し縮まった気がします。
インタビューの最後に、「数学の魅力は何ですか?」と質問してみました。河瀬さんは「現実課題から切り離された世界で物事の本質だけを扱うので、数学的に美しいものはとてもシンプルな表現になります。シンプルさをどんどん突き詰めていくところはパズルを解いていくような楽しさがありますね。」と語ってくれました。一見複雑に見える身の回りの事象も、原理原則を突き詰めればシンプルなものにすぎず、本質を見抜くことが重要だと気づかされました。これは経営やデザインの世界にも通じるものがあります。
アルゴリズムはこれからますます生活と密接に関わってくることでしょう。それにより社会や生活がどのように変わっていくのか、これからも注目しつづけたいと思います。
価値交換工学広報 河中
関連リンク
・Yasushi Kawase