データをアクションにつなげる技術「数理最適化」とは?

[執筆者]
太田満久

こんにちは。CDTO(Chief Data Technology Officer) の太田です。先日ブレインパッドは、大阪大学数理最適化寄付講座の開設のために寄付を実施いたしました。寄付講座といっても、講義・授業を行う性質のものではなく、以下の取り組みを行う予定になっています。

  1. 数理最適化を基盤技術とした、ビジネスの各段階にて生じる多様な課題の解決
  2. 数理最適化の専門家の育成と、産業や学術の幅広い分野への数理最適化の普及
  3. 数理最適化をビジネスに活用するうえでのボトルネックを解消するための基盤技術の開発

また、同寄付講座との共同研究を通じて、ブレインパッドはこれまで以上に数理最適化の人材育成とビジネス活用に取り組んでいくことにしています。機械学習や深層学習ほどメジャーとはいえない数理最適化技術。なぜブレインパッドが今、数理最適化に力を入れているのか、本稿ではその背景を含め、数理最適化とはどんな技術なのか紹介したいと思います。

データをアクションに繋げる方法

数理最適化についてお話する前に、類似技術の機械学習・深層学習について少し触れておきましょう。ご存知の通り、機械学習はデータを元に学習し、予測や分類を行う技術のことで、深層学習は機械学習の一手法です。2012年に画像認識コンペティション ILSVRC (ImageNet Large Scale Visual Recognition Challenge) で深層学習が大成功をおさめました。また、同時期にGoogleが教師なし学習によって猫を認識できたとするニュースが流れ、話題となりました。これらを皮切りに深層学習に注目が集まり研究も活発化され、深層学習は第三次AIブームの立役者となりました。2015年頃からは実ビジネスでも機械学習・深層学習を活用する動きが活発になり、いかにデータを活用するかこそが今後のビジネスの勝敗を分ける鍵であるという認識が広がりました。

さて、データを活用するという観点において、実は機械学習・深層学習は手段の一つに過ぎません。統計解析やBIツールを用いた可視化など、データの活用には機械学習・深層学習以外にも様々な手段があり、数理最適化もその一つです。機械学習・深層学習がデータから予測や分類をする一方、数理最適化はデータから適切な意思決定を導き出します。機械学習が「これ何?」とか、「この後どうなるの?」に答えるのに対して数理最適化は、「で、結局どうしたら良いの?」に答えます。

機械学習・深層学習これ何?(認識・分類) この後どうなるの?(予測)
数理最適化で、結局どうしたら良いの?(意思決定)

具体例としてレコメンデーションを挙げてみましょう。レコメンデーションとは、Amazonに代表されるECサイトでよく目にする「おすすめ」機能です。この機能があるおかげで、消費者は自分の嗜好にあった商品を効率よく見つけることができます。

レコメンデーションにはいろいろな実現方法がありますが、最も一般的なのは、過去の購買履歴や属性等から購買確率の高い商品を推定する方法です。その人が買いそうな商品を見つけ出して、表示してあげれば良いよね、という発想です。この手法は、確率を予測するので機械学習によって実現できます。

この方法は広く普及しており、実際多くのレコメンデーションエンジンで実装されています。しかし、例えば商品の在庫に限りがある場合には少し課題が発生します。この方法では購買確率の高い商品をおすすめするので、必然的に人気商品が表示されやすくなりますが、在庫には限りがあるため必要以上に露出しても購買には繋がりません。在庫の問題以外にも、表示回数の制限や商品カテゴリ間の露出頻度のバランスなど、現実には考えなければいけないことが色々とあります。

数理最適化を使うと、様々な制約を満たす中で最も適切なものを見つけ出すことができます。今回の例では、機械学習で予測した結果に数理最適化を用いることで、在庫やカテゴリ間のバランスを考慮した、最適なレコメンドを行うことができるようになります。

数理最適化の使いみちは最適化だけではない

ここで少し注意したいのは、数理最適化の最適化という言葉は「制約が与えられた中で、目的関数を最大化(もしくは最小化)する解をみつける」という数学的な意味合いのものであり、必ずしもビジネス上の目的が最適化である必要はないということです。私見も入りますが、実ビジネスにおいて数理最適化は、以下のような用途で利用されることが多いようです。

  1. 最適解を見つける
    文字通り最適解を見つけること自体に価値がある場合に数理最適化は利用できます。例えば工場施設をどこに設置するかなど、ほんの少しの改善が大きな利益に結びつくような状況で利用されています。
  2. 判断を自動化する
    実ビジネスでは、本当に最適でなかったとしても、判断を自動化できるだけでも価値があるようなケースがあります。例えば大量の広告の運用などは、人手でやることもできますが、非常に手間がかかります。数理最適化を用いることで、人と同じような判断を自動化することができ、人件費の削減に繋がります。
  3. 見積もり・シミュレーションを行う
    複雑な条件を加味できるので、現実に即した見積もりやシミュレーションに利用できます。例えば、観光に行った際に、乗換案内サービスを使って移動時間を調べながらいろいろな旅程パターンを考えることがあると思います。移動時間の算出には最短経路探索という数理最適化の技術が使われており、乗換案内サービス自体はまさに最適解を見つけることが目的です。しかし、利用目的は最適化自体ではなく、計画の立案です。少し突飛な例ではありますが、利用目的が必ずしも最適解そのものである必要はないのです。

このように、数理最適化にはいろいろな使いみちがあります。最適化という言葉が独り歩きしやすいですが、数理最適化は意思決定・アクションに紐づくいろいろな場面で応用できる強力な技術です。

ブレインパッドは今、「DXの核心はデータ活用にある」という考えのもと、クライアントのDX推進の支援に取り組んでいます。DXとは「デジタルでビジネスを変革すること」です。そのため、データからどのようなアクションを起こすかが重要になり、データをアクションにつなげる技術が必要です。数理最適化は、今のところ機械学習ほど注目を浴びているわけではありませんが、DXを語る上ではどうしてもはずせない技術であると考えています。

数理最適化でできること

先程は広告の例を挙げましたが、他の事例もいくつか見てみましょう。
1つ目の事例は「物流サービス事業者様向けの配車計画の自動化」です。

https://ai.brainpad.co.jp/case-study/175/

この例では、倉庫から各店舗にトラックで商品を配送する際のトラックへの店舗の割当てや最適なルートを算出しています。数理最適化を用いることで、属人化しがちな配車計画の立案業務を自動化し、受け入れ可能時刻や受け入れ可能なトラックの制限など様々な制約を加味した上で、配送コストを削減しています。

次の事例は「勤務シフトの最適化」です。

https://ai.brainpad.co.jp/case-study/175/

経験のある方はご存知かと思いますが、シフト作成業務はなかなか手間のかかる作業です。季節や繁閑、週休や連続勤務数、スキルやスタッフ同士の相性など、考え出すときりがありません。数理最適化を利用することで工数を削減しつつ、高精度な勤務シフト作成の自動化を実現しています。

その他にも数理最適化は様々な場面で使われています。日本オペレーションズ・リサーチ学会の公開している「ORを探せ!」ポスターがとても良くまとまっているので、興味のある方はぜひご覧ください。

http://www.orsj.or.jp/members/poster.pdf

数理最適化プロジェクトの特徴と難しさ

さて、ここまで読むと数理最適化は素晴らしい技術のように見えますが、実際のプロジェクトは一筋縄では進みません。実際の数理最適化のプロジェクトの雰囲気を感じ取っていただくためにも、数理最適化特有の難しさや意識しておいたほうが良い点をいくつか挙げようと思います。

  1. データがなければ始まらない
    数理最適化はデータに基づいて適切な判断をする技術なので、機械学習と同様、データがあることは大前提です。本格的にプロジェクトを進める前に、やりたいことを実現するにはどんなデータがどれくらい必要かを整理し、そのデータの入手先と入手方法を明確にしておく必要があります。
  2. 設計段階では要件が決まらない
    例えば先述の勤務シフトの例では、様々な条件を満たす勤務シフトを生成します。ルールとして決まっている週休や連続勤務数については分かりやすいと思いますが、例えばスタッフ同士の相性など明文化されていない条件がたくさんあります。逆に、明文化されてはいるが状況によっては満たさなくても目をつぶるようなルールも存在したりします。そういった条件を設計段階ですべて出し切るのは不可能なことが多く、試行錯誤しながら必要な条件を洗い出していく必要があります。
  3. 完成までに工数や時間がかかりやすい
    様々な制約を加味できるという特性上、元々の要望を全て満たそうとすると、細かいデータの準備や複雑な業務要件を加味したシステム開発が必要となり、完成までに時間がかかってしまうことがあります。もちろん、案件によってはやむを得ない場合もあります。しかし、本当に細かいデータが必要なのか、すぐに手に入るデータで何ができるのか、柔軟な発想でプロジェクトを設計することが重要になります。

最後に

本稿では、今ブレインパッドが力を入れている数理最適化について簡単に紹介させていただきました。DXの推進において数理最適化がどういう役割を担っているのか、どのように活用したら良いのか雰囲気だけでも感じ取っていただけたら幸いです。

Thank you for reading.

この記事を
評価する

本記事でご紹介した
製品・サービスはこちら

Plus AI

ディープラーニングを含めた機械学習、自然言語処理、数理最適化など、人工知能(AI)関連テクノロジーの活用により、経営改善やサービス革新に貢献するスペシャリストがお客様の支援にあたります。

WRITER執筆者プロフィール

株式会社ブレインパッド

CDTO
太田満久

2010年にブレインパッドにソフトウェア開発エンジニアとして新卒入社。数理的なバックグラウンドを活かし、自然言語処理エンジンやレコメンドアルゴリズムの開発を担当。その後最新技術の調査・検証やマネジメントを担当した後、現在は Chief Data Technology Officer として会社全体の技術リードを担当。 Google Developers Expert (Machine Learning)。京都大学博士(理学)。

MAIL MAGAZINEメールマガジン

イベントやセミナーの開催予定、
最新特集記事の情報をお届けいたします。

TREND人気ワード・タグ

RANKING人気記事

BEST PRACTICEベストプラクティス

業態・業種から探す

課題から探す

テクノロジーから探す

製品・サービスから探す

データ活用のプロが考える、エンジニアリング視点の記事や、新規ビジネスの創出に関する記事まで幅広い特集を配信!

業界の最先端をいく、100名を超える当社に在籍のAIおよびデータ活用スペシャリストが原稿を執筆!

ベストなDXへの入り口が見つかるメディア

DOORS

BrainPad

MAIL MAGAZINEメールマガジン

登録が完了しました。

メールマガジンのご登録ありがとうございます。
最新特集記事の情報をお届けしますので、
お楽しみにお待ちください。

MAIL MAGAZINEメールマガジン

登録エラーです。