20251117_SnowVillage_DataScience_DataEngineering_初心者でもわかる数理最適化の話

503 Views

November 16, 25

スライド概要

2025/11/17(月)18:30 〜 20:30 開催
DataScience&DataEngineering MeetUp #1
https://techplay.jp/event/987536

profile-image

博士(情報学)。2012年に修士号を取得した後、西日本電信電話株式会社に入社。プライベートクラウド基盤やアプリケーション開発を経験した後、様々な技術(NW、サーバ、クラウド、プログラミング)を組合せることで、データ活用を推進するためのプラットフォームを運営。2019年から社会人ドクターとして研究活動を行い、2023年に博士号を取得。「実社会に役立つデータ活用」を推進する技術者兼研究者。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

© 2025 NTT West, Inc. All Rights Reserved. 初心者でもわかる数理最適化の話 DataScience&DataEngineering MeetUp #1 2025/11/17 高須賀 将秀

2.

© 2025 NTT West, Inc. All Rights Reserved. 2 /16 自己紹介 たかすか まさひで 高須賀 将秀 博士(情報学)(2023/3) 研究分野:組合せ最適化,数理最適化,オペレーションズ・リサーチ(OR),グラフ理論 所属:NTT西日本 デジタル改革推進部(2021/8~), 法政大学 デザイン工学部 兼任講師(2024/4~),個人事業(Udemy講師等)(2024/6~) 業務:データドリブン経営を牽引する立場 ・データ活用基盤のシステム開発 ・データ分析手法の研究 ・データ分析活用事例の提案 ・デジタル人材育成 資格:クラウド資格(AWS全冠,Azure全冠,GCP全冠), 高須賀将秀のホームページ Microsoft Top Partner Engineer Award(2024),AWS All Certifications Engineers(2024, 2025) , Microsoft Innovative Educator Experts 2025-2026,Microsoft Certified Trainer(MCT) Google Cloud Partner All Certification Holders(2025), Jagu‘e’r Award 優秀賞(2025),Snowflake Squad(2024 , 2025)

3.

© 2025 NTT West, Inc. All Rights Reserved. 3 /16 私の研究(博論)内容 ◼ 与えられた全ての工事に対して立会者の割当を決定する問題である ◼ 移動距離や立会者のスキル等の様々な条件を考慮し割当を決定している ◼ 条件は万人共通の条件もあれば手配者の思考や嗜好によって異なるものもある 入力 出力 工事4 工事1 1 工事2 4 手配者 工事5 2 1 工事6 3 工事7 工事8 8 工事9 6 工事5 数理モデル 5 工事6 工事3 手配者 の思考/嗜好 = 7 工事2 4 2 5 工事3 立会者1~4 工事4 工事1 立会者4 3 工事7 立会者1 7 立会者2 工事8 ブラックボックス 化 8 工事9 9 9 立会者3 6

4.

© 2025 NTT West, Inc. All Rights Reserved. 4 /16 私の研究(博論)内容 ◼ 高度な技能を有している手配者により意思決定が行われている工事立会者手配 業務に対し実用的な手配結果を算出可能な数理モデルを構築した 長期効果 短期効果 付随効果 過去の工事立会者手配業務 デジタルデータ活用による工事立会者手配業務 人件費 年間1億(関東エリア:年間6万件) 年間0.1億(関東エリア:年間6万件)(想定) 品質 年間工事事故5件 年間工事事故0件(想定) 総移動時間 11,424 s(3.2 h) 11,593 s(3.2 h)※1 総割当ペナルティ 163 pt 81 pt※1 手配時間 3時間2回/1日 5分×2回/1日 やり方 アナログ(手書き) デジタル 手配結果 ※1:数理モデル4で総移動時間を重視すると, 総合移動時間10,697 s, 総品質146 ptとなる.

5.

© 2025 NTT West, Inc. All Rights Reserved. 数理最適化について知ってますか? • 万博で以下訪問したい場所があったとき,あなたはどのような順番で訪問 しますか? 5 /16

6.

© 2025 NTT West, Inc. All Rights Reserved. 万博の訪問ルートの最適解 • 最適解は以下ルートで,総移動距離は1.34km 6 /16

7.

© 2025 NTT West, Inc. All Rights Reserved. 7 /16 万博の訪問ルートの実行可能解の一例 全部で 362,880 通り

8.

© 2025 NTT West, Inc. All Rights Reserved. 8 /16 訪問したい場所を増やした場合 訪問場所52ヵ所の総数 訪問場所40ヵ所の総数 訪問場所10ヵ所の総数 https://homepage45.net/unit/sub.htm

9.

© 2025 NTT West, Inc. All Rights Reserved. 9 /16 BI:Business Intelligence ML:Machine Learning AI:Artificial Intelligence MO:Mathmatical Optimization BI・ML・AIとMOとの違い BI・ML・AI MO データから ・可視化 ・学習、予測 ・推論 データドリブン 条件から ・データを生成し、探索 ルールドリブン 生産されたデータを厳密に探索 ここでSnowflake活躍 データ量 データ量 データからそれらしい解を生成 入力 出力 プロセス 生成 入力 出力 プロセス

10.

© 2025 NTT West, Inc. All Rights Reserved. 10 /16 数理最適化アプリを作ってみた 入力部(住所の保存) ・住所のジオコーディング取得 ・住所情報の保存 アルゴリズム(つまり解の探索方法)の選択部 ・Cortex利用 ・厳密解法 ・メタヒューリスティクス 等 ・皆さんもお手元で確認できます ・ただし,Snowflakeへの情報保存 は皆さんで共用のため注意 ・そのため,この場は,Read部分 (読み込んだ住所一覧,保存済み のデータを表示等))のみ確認を推 奨 ・Cloud Runのリソースの関係でうまく 地図が表示されない場合あり ・以下アルゴリズムは利用未推奨(時 間制限付き全探索,完全全列挙型 アルゴリズム(全解保存)) 計算処理部 ・選択したアルゴリズムに従った解の探索過程出力 ・最終的な結果の出力 解の可視化部 ・最終的な結果を地図に表示 ・複数の解が出た場合もその結果を表示 https://st-app-snowflake-tsp504242909255.asianortheast1.run.app/

11.
[beta]
© 2025 NTT West, Inc. All Rights Reserved.

11 /16

数理最適化アプリ(入力部)

アプリ

External Access Integration
UDF

geocode_address()
get_travel_time_matrix()

緯度経度
移動時間

Snowflake からGoogle Map
API をたたきに行く方法
https://qiita.com/mshdtksk/i
tems/aedfd3a9383fbfd75f54

# 住所のジオコーディング(Snowflake側で実行)
def geocode_address(address):
session.cursor().execute(f"SELECT <DB>.<SCHEMA>.geocode_address('{escaped_address}')")
# 住所間の移動時間を取得(Snowflake側で実行)
def get_travel_time_matrix(addresses):
session.cursor().execute(f"SELECT <DB>.<SCHEMA>.get_travel_time_matrix(ARRAY_CONSTRUCT({addr_list}))")

12.

© 2025 NTT West, Inc. All Rights Reserved. 12 /16 数理最適化アプリ(アルゴリズムの選択部) • ここが数理最適化の本質 • 解の探索の仕方によって,計算速度(計算量のオーダー),使用メモリ量,解の性質 (厳密解か近似最適解か,実行可能解の数等)が異なってくる • 生成AIであるCortexは推論に過ぎないため,何らかの解は出してくれるが実用的な解はで てこない • その他は全て探索型で,用途に応じて使い分けるとよい.厳密性の担保や精度保証可 アルゴリズム 時間計算量 メモリ計算量 最適性 対応規模 推奨用途 1 Cortex 即座 少 低 10-1000 時間制約 2 全列挙型(改善解) 𝑂(𝑛!) 𝑂(𝑛) 高 1-10 改善解分析 3 時間制約付き全探索 𝑂(𝑇𝑖𝑚𝑒) 𝑂(𝑛) 中 1-15 時間+個数制御 4 完全全列挙 𝑂(𝑛!) 𝑂(𝑛) 高 1-15 全解分析 5 近傍法 𝑂(𝑛2 ) 𝑂(𝑛) 低 10-1000 大規模 6 動的計画法 𝑂(𝑛2 2𝑛 ) 𝑂(2𝑛 ) 高 1-20 中規模 7 分枝限定法 𝑂(𝑛!)以下 𝑂(𝑛) 高 1-30 中-大規模 アプリ

13.

© 2025 NTT West, Inc. All Rights Reserved. 数理最適化アプリ(計算処理部) • 通常,数理最適化の研究の世界では,いかに早く厳密な最適解を得られるか,一定時間 内にいかに良い解を得られるかが重要で,最後に得られる1つの解にしか興味がない • 一方で,実社会では,バラエティに富んだ解を欲することが多く,計算過程で得られる解の 保存が重要となる 13 /16 アプリ

14.

© 2025 NTT West, Inc. All Rights Reserved. 数理最適化アプリ(解の可視化部) • 探索中に得られた解を地図上に出力する • 得られた解を一定のクラスタに分けることで,好みの解を選択しやすい良いにしている(厳密 な最適解のみが必要な場合は不要だが) 14 /16 アプリ

15.

© 2025 NTT West, Inc. All Rights Reserved. まとめ • 初心者でもわかりやすいように数理最適化について解説した • 数理最適化と生成AIの使い分けについて解説した • 数理最適化とクラウド(Snowflake)の親和性について解説 した • 探索過程で得られる実行可能解の保存 • 計算リソースのスケール • 数理最適化アプリの共用 15 /16 アプリ

16.

© 2025 NTT West, Inc. All Rights Reserved. 宣伝 • 数理最適化と機械学習に関する勉強会を始めます! • まずは,数理最適化に関する題材を中心に話していきます! • 初回は,2025/11/24 20:00~21:00(の内30~40分くらい) https://opt-research.connpass.com/ 16 /16