「AIを業務に活用したい」と考えたとき、最初にChatGPTなどの生成AIを思い浮かべる方は多いのではないでしょうか。
生成AIは文章の作成や要約、画像生成などを得意とします。しかし、勤務表の作成、人員配置、配車、工程計画、予算配分のように、多数の条件を守りながら、より良い組み合わせを決める業務では、生成AIとは異なる技術が必要です。
そこで使われるのが、数理最適化です。
数理最適化と聞くと、黒板いっぱいの難しい数式を想像するかもしれません。しかし、基本的な考え方はシンプルです。
| 守らなければならない条件を整理し、その中から最も望ましい計画を探す。 |
本記事では、数理最適化の仕組み、AI・機械学習・生成AIとの違い、適している業務、導入時に起こりやすい問題について、身近な例を交えて解説します。
なお、TransRecogでは、数理最適化を中核として計画作成や意思決定を支援する仕組みを、分かりやすくAI最適化と呼んでいます。
数理最適化(AI最適化)とは
最適化とは、さまざまな選択肢の中から、条件を満たす最も望ましい組み合わせを数学的に探索する技術です。
例えば、勤務表を作成する場合、単に職員の名前をカレンダーへ順番に並べればよいわけではありません。
- 1日に必要な人数を確保する
- 一定の資格を持つ職員を配置する
- 連続勤務を避ける
- 希望休をできるだけ反映する
- 休日数を公平にする
- 会議や研修の予定を考慮する
このような条件をすべて確認しながら、人が一つずつ配置を決めるのは大変です。
人数や日数が増えると、候補となる組み合わせは急激に増加します。すべての組み合わせを人が比較することは、現実的ではありません。
数理最適化では、業務上のルールを数理モデルとして表現し、コンピューターによって効率よく候補を探索します。
ここで重要なのは、数理最適化が単なる「自動入力」ではないことです。
条件を満たす計画を作るだけでなく、次のような評価基準に基づいて、より望ましい計画を探します。
- コストを抑える
- 職員間の負担を公平にする
- 移動距離を短くする
- 納期遅延を減らす
- 作業量の偏りを小さくする
身近な例で理解する数理最適化
数理最適化は、私たちの身近な場面にも登場します。
例えば、5人の職員で1週間の勤務表を作るとします。
各職員には、出勤できる日と休みたい日があります。また、毎日最低3人は必要で、責任者を必ず1人配置しなければなりません。
条件を満たす勤務表が一つだけなら、話は簡単です。
しかし実際には、条件を満たす勤務表が何百通り、何千通りと存在することがあります。
その中から、次のような勤務表を選ぶ必要があります。
- 希望休をできるだけ多く実現する
- 土日勤務が特定の人に偏らないようにする
- 連続勤務を少なくする
人が一つの勤務表を作るだけでも時間がかかります。それを何百案も作り、比較することはできません。
数理最適化では、コンピューターが多数の候補を探索し、それぞれの案を評価します。そして、設定した基準に照らして、より評価の高い計画を提示します。
つまり、人が行うのは、すべての組み合わせを考えることではありません。
| 何を必ず守り、何をできるだけ良くしたいのかを決める。 |
これが人間の重要な役割です。
数理最適化の「目的関数」と「制約条件」
数理最適化を理解するうえで重要なのが、目的関数と制約条件です。
目的関数とは
目的関数とは、何を良くしたいのかを数値で表したものです。
例えば、配送計画であれば、「全車両の走行距離を最小にする」という目的を設定できます。
勤務表であれば、次のような目的が考えられます。
- 希望休を実現できなかった件数を最小にする
- 職員間の休日数の差を最小にする
- 応援勤務の回数を最小にする
目的関数は一つとは限りません。
コストを下げたい一方で、職員の公平性も高めたいということがあります。しかし、コストだけを優先すると負担が一部の職員に偏り、公平性を優先すると追加の人員や移動が必要になるかもしれません。
数理最適化では、このような評価軸同士のトレードオフを比較できます。
「コスト重視案」「公平性重視案」「両者のバランス案」など、複数の計画を提示して、人が選択する方法もあります。
制約条件とは
制約条件とは、計画が守らなければならないルールです。
勤務表であれば、次のような条件があります。
- 1日に必要な人数を下回らない
- 責任者を1名以上配置する
- 休暇中の職員は勤務させない
- 法令や就業規則上の勤務条件を守る
- 同じ時間に複数の場所へ配置しない
制約条件には、絶対に守るべきハード制約と、できるだけ守りたいソフト制約があります。
例えば、「休暇中の職員を勤務させない」は必ず守る必要があります。一方で、「土日の勤務回数を完全に同じにする」は、人員状況によっては実現できないことがあります。
すべてを絶対条件にすると、計画が作れなくなる場合があります。そのため、どの条件を必須とし、どの条件を評価の対象とするかを整理することが重要です。
数理最適化とAI・機械学習・生成AIの違い
数理最適化、AI、機械学習、生成AIは、同じ意味ではありません。
AIは、予測、推薦、判断などを行う技術を含む広い概念です。それぞれの役割を簡単に整理すると、次のようになります。
| 技術 | 主な役割 | 例 |
| AI | 予測、推薦、判断などを行う技術の総称 | 需要予測、画像認識、計画作成 |
| 機械学習 | 過去のデータからパターンを学習する | 売上予測、故障予測、分類 |
| 生成AI | 学習した特徴をもとに新しい文章や画像などを生成する | ChatGPT、画像生成、要約 |
| 数理最適化 | 条件を守りながら望ましい組み合わせを決める | 勤務表、配車、工程、予算配分 |
機械学習は、データを利用して予測精度などを改善する仕組みです。
生成AIは、入力データの特徴をもとに、文章、画像、音声などの新しいコンテンツを生成するAIです。
一方、数理最適化は、文章を作るのではなく、決められた条件と評価基準に基づいて計画を作ります。
例えば、生成AIに勤務表を作らせると、もっともらしい表を生成することはできます。しかし、その勤務表がすべての勤務条件を厳密に満たしているとは限りません。
数理最適化では、条件を数理モデルとして組み込むため、各条件を満たしているかを計算によって確認できます。
ただし、両者は対立するものではありません。例えば、次のような組み合わせも可能です。
- 機械学習で来月の需要を予測する
- 予測結果を数理最適化へ入力する
- 必要な人員配置や生産計画を作る
- 生成AIで計画の説明文を作る
予測は機械学習、計画は数理最適化、説明は生成AIというように、それぞれの得意分野を組み合わせます。
数理最適化が適している業務
数理最適化は、選択肢が多く、複数の条件を同時に考慮しなければならない業務に適しています。
特に、担当者がExcelと経験を使って長時間調整している計画業務は、有力な候補です。
勤務表・人員配置
勤務表では、必要人数、資格、勤務可能時間、休暇、連続勤務、公平性など、多くの条件を考慮します。
介護施設、病院、自治体、交通事業者、製造現場、コールセンターなど、交代勤務がある職場で活用できます。
急な欠員が発生した場合も、変更後の条件で再計算できます。
作業・工程計画
複数の作業を、限られた人員、設備、時間へ割り当てる業務です。
例えば、製造工程、工事日程、保守点検、システム開発、清掃計画などがあります。
「作業Aが終わってから作業Bを開始する」「同じ設備を同時に使えない」といった前後関係や競合条件を考慮しながら、納期や待ち時間を改善します。
配車・割当
車両、乗務員、荷物、訪問先などを組み合わせる業務です。
走行距離、車両容量、時間帯、乗務時間、訪問順序などを考慮して、配車や配送ルートを作ります。
車両だけでなく、職員と案件、教室と授業、設備と作業などの割当に応用できます。
予算配分
限られた予算を、複数の事業や修繕案件へ配分する業務です。
単に金額の大きい案件から採択するのではなく、次のような条件を考慮して、配分案を算出します。
- 緊急度
- 効果
- コスト
- 地域間の公平性
- 年度ごとの予算上限
- 工事可能な件数
評価軸を変えた複数案を比較することで、意思決定の根拠を説明しやすくなります。
数理最適化導入の流れ
数理最適化は、ソフトウェアを購入すればすぐに完成するものではありません。
重要なのは、現場の業務を理解し、ルールや判断基準を整理することです。
1.対象業務を決める
最初から全社の計画業務を対象にするのではなく、効果を確認しやすい範囲から始めます。
例えば、「1部署の1か月分の勤務表」「特定地域の配車」「次年度の修繕予算」などです。
2.現在のデータと帳票を確認する
現在使用しているExcel、CSV、計画表、業務マニュアルなどを確認します。
専用システムへ全面移行するのではなく、現在のExcelを入力・出力として利用できる場合もあります。
3.制約条件と評価軸を整理する
現場担当者へのヒアリングを行い、次の点を整理します。
- 必ず守る条件
- できるだけ守りたい条件
- 現在の計画を評価している基準
- 担当者が経験的に行っている調整
- 条件同士の優先順位
ここで暗黙のルールを十分に確認することが、導入成功のポイントです。
4.試作モデルで計算する
まずは限定したデータでモデルを作り、計画案を出力します。
最初から完璧な計画が出るとは限りません。
出力された計画を現場担当者に確認してもらうと、次のような、文書化されていなかった条件が見つかります。
- この人とこの人は同じ日に休ませられない
- 月単位では全員の公休日数を同じにしたい
- この会議の日は別の勤務へ振り替える
5.試算と現場確認を繰り返す
見つかった条件をモデルへ追加し、再計算します。
この繰り返しにより、担当者の頭の中にあった判断基準が、再現可能な計画ロジックになります。
6.実運用と改善
計画表だけでなく、確認用帳票、評価値、警告、不足理由なども出力します。
最終判断は人が行い、数理最適化は判断材料と計画案を提示します。
条件や業務が変わった場合は、モデルを更新して継続的に改善します。
数理最適化がうまくいかない場合
数理最適化を導入すれば、必ずすぐに理想の計画が作れるわけではありません。
うまくいかない場合は、主に次の原因が考えられます。
データ不足
必要なデータが存在しない、形式が統一されていない、入力内容が古いといった問題です。
例えば、職員の資格情報が更新されていなければ、正しい配置は作れません。
ただし、最初から大量のデータが必要とは限りません。
数理最適化は、機械学習のように大量の学習データを必須としないケースも多く、現在の計画表、職員一覧、業務ルールなどから始められます。
重要なのはデータ量よりも、計画を作るために必要な情報がそろっていることです。
暗黙の制約
最も多い問題が、担当者の頭の中にしかないルールです。
担当者は当然のように守っているため、本人もルールとして認識していない場合があります。
そのため、ヒアリングだけですべての暗黙条件を抽出するのは困難です。
有効なのは、次のような進め方です。
- 現在の計画表を確認する
- 既知の条件で計画案を作る
- 現場に計画案を見てもらう
- 違和感や修正点を聞く
- 新しい条件をモデルへ追加する
数理最適化の導入は、計画を自動化するだけではありません。現場の暗黙知を形式知へ変え、担当者が交代しても再現できる組織の資産にする取り組みでもあります。
解が存在しない場合
すべての条件を同時に満たす計画が存在しないこともあります。
例えば、毎日3人必要なのに、ある日は勤務可能な職員が2人しかいなければ、どのように計算しても条件を満たせません。
この場合、「計算に失敗した」で終わらせてはいけません。
次のような点を明らかにする必要があります。
- どの日に人員が不足しているのか
- どの資格者が不足しているのか
- どの条件同士が競合しているのか
- どの条件をどれだけ緩和すれば計画できるのか
TransRecogでは、すべての重要条件を満たす計算に加えて、解が存在しない場合には一部の不足を数値化して最小化する二段階の求解を採用することがあります。
これにより、「計画を作れません」ではなく、次のような形で、人が対応を判断できるようにします。
| 「この週に公休が1日不足しています」 「この時間帯に資格者が1人不足しています」 |
解がないこと自体も、必要人員や業務条件を見直すための重要な情報です。
吹田市水道部での導入事例
TransRecogは、吹田市水道部に、AI最適化(数理最適化)を活用した勤務表作成システムを導入しました。
吹田市水道部の勤務表では、公休、祝日、育休、グループ会議日、分庁舎勤務、連続勤務、週起算日など、複数の条件を同時に考慮する必要がありました。
特に月をまたぐ勤務や長期間の勤務表では、作成だけでなく、条件を満たしているか確認する作業にも大きな負担がかかっていました。
| 従来 2~3日程度 | 導入後 約2時間 | 削減効果 約9割 |
システム導入後は、従来2~3日程度かかっていた1か月分の勤務表作成を、約2時間まで短縮できることを確認しました。
このシステムでは、単に勤務表を出力するだけではありません。
- 複雑な勤務条件を反映した勤務表
- 週2回の公休を確認するシート
- 会議日の振替を確認するシート
- 人が確認すべき箇所の一覧
最終的には職員が内容を確認し、必要に応じて公休の移動などを行います。
つまり、コンピューターがすべてを決めるのではありません。
| コンピューターが多数の組み合わせを探索し、人が現場の状況を踏まえて最終判断する。 |
この役割分担によって、作成時間の短縮と、実務に即した計画の両立を図っています。吹田市での導入事例はこちらからご覧いただけます。
TransRecogの数理最適化(AI最適化)ソリューション
TransRecogでは、勤務表、人員配置、作業計画、予算配分、配車、割当などを対象に、数理最適化を活用したシステムを開発しています。
単に「条件を満たす計画」を作るだけではありません。
- 現場の暗黙知や判断基準の形式知化
- コスト、公平性、品質など複数の評価軸への対応
- 評価軸間のトレードオフの可視化
- 条件変更時の再計算
- 複数案の比較
- 解が存在しない場合の不足要因の可視化
- 担当者が変わっても再現・改善できる計画ロジックの構築
入力は、現在使用しているExcelやCSVから始めることができます。出力も、現場で使いやすいExcel帳票、確認用シート、理由ログなどに対応できます。
「自社の業務が数理最適化に向いているか分からない」「ルールが整理されていない」という段階でも問題ありません。
現在の計画表や業務内容を確認し、数理最適化を適用できる部分、事前に整理が必要な部分、導入によって期待できる効果を検討します。
数理最適化は、人の判断をなくす技術ではありません。
| 人が判断すべきことと、コンピューターが探索すべきことを分け、より速く、根拠を持って計画を決められるようにする技術です。 |
TransRecogのAI最適化・数理最適化サービスでは、現場の経験を、再現できる計画ロジックへ変えることを目指しています。
| 自社の計画業務に数理最適化を使えるか相談する TransRecog AI最適化・数理最適化サービス |
執筆者:小林敬明
株式会社TransRecog代表取締役CEO。東京理科大学応用数学科卒、東京都立大学大学院修了。日立製作所、マイクロソフト等を経て現職。
数理最適化、多目的スケジューリング、業務システム開発に従事。
吹田市水道部の勤務表最適化システムなど、自治体・社会インフラ分野で数理最適化の業務適用を進めている。
