$30 off During Our Annual Pro Sale. View Details »

量子コンピュータ時代のプログラミングセミナー / 20221222_Amplify_seminar _route_optimization

量子コンピュータ時代のプログラミングセミナー / 20221222_Amplify_seminar _route_optimization

2022年12月22日に開催した「量子コンピュータ時代のプログラミングセミナー~Fixstars Amplifyで実装する経路最適化~」の当日資料です。

More Decks by 株式会社フィックスターズ

Other Decks in Programming

Transcript

  1. Copyright© Fixstars Group
    量子コンピュータ時代のプログラミングセミナー
    ~ Fixstars Amplify で実装する経路最適化 ~

    View Slide

  2. Copyright© Fixstars Group
    本日のAgenda
    第一部 14:00-14:45
    • はじめに
    • 会社紹介
    • 組合せ最適化問題・イジングマシン・事例のご紹介
    • Fixstars Amplifyの紹介
    • ワークショップ事前準備のご連絡
    第二部 14:50-16:00
    • Fixstars Amplifyを用いたワークショップ
    • 経路最適化
    • Q&A
    2

    View Slide

  3. Copyright© Fixstars Group
    はじめに

    View Slide

  4. Copyright© Fixstars Group
    本セミナーのゴール
    ⚫ 身の回りには組合せ最適化問題がたくさんあることを知る
    ⚫ 組合せ最適化問題を解くための専用マシン(イジングマシン)があることを知り、イジ
    ングマシンを使って問題を解くための統一的なフレームワークや、問題設定の考え方、
    目的関数や制約条件の定式化のポイントを理解する
    ⚫ ワークショップを通して、実際に量子アニーリング・イジングマシンを動かしてみるこ
    とで、実問題への適用の足掛かりを得る
    4
    質問は随時ZoomのチャットかQ&Aでお願いします

    View Slide

  5. Copyright© Fixstars Group
    会社紹介

    View Slide

  6. Copyright© Fixstars Group
    フィックスターズの基本情報
    6
    会社名 株式会社フィックスターズ
    本社所在地
    東京都港区芝浦3-1-1 msb Tamachi
    田町ステーションタワーN 28階
    設立 2002年8月
    上場区分 東証プライム(証券コード:3687)
    代表取締役社長 三木 聡
    資本金 5億5,446万円
    社員数(連結) 263名(2022年9月現在)
    主なお客様
    キオクシア株式会社
    ルネサスエレクトロニクス株式会社
    トヨタグループ(トヨタ自動車株式会社・
    豊田通商株式会社・株式会社デンソー)
    みずほ証券株式会社
    キヤノン株式会社
    グループ会社
    Fixstars Solutions, Inc.
    完全子会社
    米国での営業及び開発を担当
    (株)Fixstars Autonomous Technologies
    株式会社ネクスティ エレクトロニクスとのJV
    自動運転向けソフトウェアを開発
    (株)Fixstars Amplify
    完全子会社
    量子コンピューティングのクラウド事業を運営
    (株)Sider
    完全子会社
    開発支援SaaS「Sider」を運営
    (株)Smart Opinion
    連結子会社
    乳がんAI画像診断支援事業を運営
    オスカーテクノロジー(株)
    連結子会社
    ソフトウェア自動並列化サービスを提供
    2021/10/1 設立

    View Slide

  7. Copyright© Fixstars Group
    フィックスターズのサービス概要
    7
    お客様専任のエンジニアが直接ヒアリングを行い、高速化を実現するために乗り越えるべき
    課題や問題を明確にしていきます。
    コンサルティング
    先行技術調査
    性能評価・ボトルネックの特定
    高速化
    アルゴリズムの改良・開発
    ハードウェアへの最適化
    レポート作成
    サポート
    レポートやコードへのQ&A
    実製品への組込み支援
    高速化のワークフロー

    View Slide

  8. Copyright© Fixstars Group
    フィックスターズの強み
    8
    コンピュータの性能を最大限に引き出す、ソフトウェア高速化のエキスパート集団
    ハードウェアの知見 アルゴリズム実装力 各産業・研究分野の知見
    目的の製品に最適なハードウェアを見抜き、
    その性能をフル活用するソフトウェアを開
    発します。
    ハードウェアの特徴と製品要求仕様に合わ
    せて、アルゴリズムを改良して高速化を実
    現します。
    開発したい製品に使える技術を見抜き、実
    際に動作する実装までトータルにサポート
    します。

    View Slide

  9. Copyright© Fixstars Group
    フィックスターズの量子技術への取り組み
    9
    2017年
    日本で初めて
    D-Wave Systems
    社と提携
    2018年
    NEDOのプロジェクト
    に採択「イジングマシ
    ン共通ソフトウェア基
    盤の研究開発」
    2019年
    SIPの研究開発に参画
    「光・量子を活用した
    Society 5.0実現化技
    術:光電子情報処理」
    2021年
    • 2月: 量子アニーリングク
    ラウドサービス「Fixstars
    Amplify」提供開始
    • 10月: 子会社Fixstars
    Amplifyを設立
    • 11月: Q-STAR 量子技術
    による新産業創出協議会
    に特別会員として加入
    次世代技術を先取りし
    今ある課題の解決を目指す
    2022年
    • 5月: Fixstars Amplify が
    Gurobi, IBM-Quantumを
    サポート
    • 6月: 東洋経済主催シンポジ
    ウム「ビジネスを劇的に変
    える量子コンピューティン
    グの可能性」に登壇
    • 7月: 累計実行回数1,000万
    回突破

    View Slide

  10. Copyright© Fixstars Group 10
    Q-STAR 量子技術による新産業創出協議会
    出展:一般社団法人 量子技術による新産業創出協議会 https://qstar.jp/
    代表取締役会長
    三木が参加
    代表取締役社長
    平岡が参加
    量子関連の産業・ビジネスの創出を目的として設立された協議会
    産業界との連携による社会実装の促進
    東洋経済主催シンポジウム
    「ビジネスを劇的に変える量子コンピューティングの
    可能性」にCEO平岡が登壇しました
    ロート製薬株式会社 代表取締役会長 山田邦雄氏
    株式会社東芝 代表執行役社長CEO 島田太郎氏
    株式会社Fixstars Amplify 代表取締役社長 平岡卓爾
    本セッションは、東洋経済オンライン並びに同社YouTubeで公開されています。
    東洋経済オンライン記事:https://toyokeizai.net/articles/-/583900
    画像:FixstarsCorporation youtubeチャンネルより
    https://www.youtube.com/watch?v=uS-_BZqvqUo
    九州大学 藤澤克樹教授
    パネリスト
    モデレーター

    View Slide

  11. Copyright© Fixstars Group
    コンサルティング
    セットアップ支援、処理の分割や変換等のコンサル
    クラウド実行環境のご提供
    クラウド経由での量子コンピュータ利用サービスを提供
    ソフトウェア高速化・開発支援サービス
    量子コンピュータを組み合わせてシステムの高速化を実現
    セミナー・トレーニング
    量子コンピュータの研究動向や活用事例、実際の利用方法等
    量子コンピューティング事業
    多様なハードウェアでのソフトウェア高速化サービスに加え、
    量子コンピュータ活用支援とシステム開発を提供しています。
    お客様の課題 ご支援内容
    量子コンピューティングが課題の解決に役立つ
    か確信が持てない
    量子コンピューティングの検討をどう進めたら
    良いかわからない
    作りたいアプリケーションがあるが、開発が
    難しい
    11

    View Slide

  12. Copyright© Fixstars Group
    組合せ最適化問題・イジングマ
    シン・事例の紹介

    View Slide

  13. Copyright© Fixstars Group
    量子アニーリング・イジングマシンと組合せ最適化問題
    13
    スケジューリング 配送計画 スマートシティー 集積回路設計
    膨大な選択肢から、制約条件を満たし、ベストな選択肢を探索する(組合せ最適化問題)
    参考: 慶應義塾大学 田中宗 准教授 「量子コンピュータ最前線とイジングマシンの可能性」
    量子アニーリング・イジングマシン ⇒ 組合せ最適化問題を解くための専用マシン

    View Slide

  14. Copyright© Fixstars Group
    組合せ最適化問題を解く統一的なフレームワーク
    14
    目的関数:
    制約条件:
    解を取得
    定式化
    実装
    問題設定
    膨大な解候補(組合せ)から最適解を選ぶ
    ・解候補一つ一つの計算は可能
    ・候補数が膨大ですべての解候補を計算できない
    これを最小化(最大化)する解が最適
    解が必ず満たすべき条件
    数式で表現
    数式をPythonのプログラムで記述
    Fixstars Amplifyが最適解を探索
    バイキングで最も安く
    必要な栄養が取れる組合せは?
    目的関数: 合計金額(最小化)
    制約条件:
    炭水化物:300g以上
    タンパク質:150g以上
    脂質:50g以上
    組合せ最適化問題の例
    ごはん:380g
    焼き魚:140g
    金 額:870円
    最適メニュー
    (10g単位) 炭水化物 タンパク質 脂質 金額
    ごはん 8g 1g 1g 10円
    パン 7g 1g 2g 12円
    ハンバーグ 1g 5g 4g 50円
    焼き魚 1g 8g 1g 35円

    View Slide

  15. Copyright© Fixstars Group
    組合せ最適化の取り組み事例
    15
    シフト作成自動化 生産計画最適化 経路指示リアルタイム制御
    倉庫を走行する多数の搬送ロ
    ボット (AGV) が効率よく動
    作するよう、最適経路だけで
    なく迂回や交差点での待機な
    どリアルタイムに指示します
    人の直観で時間をかけて行っ
    ていた生産ラインや物流倉庫
    の業務シフト作成を、スキル
    や勤務時間などの条件をもと
    に最適化します
    製造工場の設備の利用割り当て
    (ジョブショップスケジューリ
    ング) を、納期や段取り時間
    などを考慮して最適化します
    1/19のセミナーのテーマ 2/16のセミナーのテーマ 本日のテーマ

    View Slide

  16. Copyright© Fixstars Group
    最適配置自動化サービス(物流梱包業務のDX)
    チーム
    3名
    梱包
    効率
    最大化
    勤務時間が
    近い
    相性
    Good
    /NG
    上流下流
    ローテーシ
    ョン
    公平

    従来の方法:
    前日夕方に、翌日の予測出荷目標数と
    出勤予定に基づいて、3人程度のリー
    ダーが相談し数時間をかけて決定
    業務内容:
    梱包業務担当者(1チーム3名)を
    コンベア前のブースに割り当て
    成果: → 2022年10月より実稼働開始!
    アニーリング技術を活用して自動化・デジタル化
    • 作業時間 → 15分程度に
    • 心理負担 → ほぼゼロに
    課題:
    公平になるよう、様々な配慮を行う必
    要があり、割り当て担当者に心理的負
    担がかかっていた
    自動配置
    (アニーリング)
    手動配置
    一部事前配置
    自動配置結果の微調整
    各種条件を満たす形で
    未配置のメンバーを一
    括割り当て
    割当業務の
    時間削減
    担当者の
    心理的負担低減
    配置情報の
    デジタル化
    Smileboard
    Connectと連携
    ※Smileboard Connect: 住友商事様開発の物流業務可視化サービス
    国家プロジェクトSIP「光・量子を活用し
    たSociety 5.0実現化技術」の一環として、
    住友商事、SCSK、ベルメゾンロジスコと、
    2019年より共同研究
    https://www.fixstars.com/ja/services/cases/amplify-bellemaison

    View Slide

  17. Copyright© Fixstars Group
    生産計画最適化 (電気機器製造メーカー A社様)
    17


    生産する基板に応じて製造装置の部品や材料を交換する「段取り時間」
    が必要。段取り時間を考慮した効率的な生産スケジュールを作成したい
    従来は、専任者が、一日数回・毎回数十分かけて経験に基づいてスケジ
    ュールを作成。更なる生産性向上やノウハウ継承のため、生産スケジュ
    ール作成の自動化に着手
    次期フェーズでは、Amplify
    の活用領域の拡大を検討中!
    最適化未経験のご担当者様1人がプログラム試作開始
    から約1~2ヵ月間取り組んでこの効果を実現
    現在は試作段階で、実運用に向けてモデルを改良中!

    果 段取りのための製造装置の停止回数の削減!
    (10%以上削減)
    段取り時間
    E
    E D
    C
    装置1
    装置2
    装置x
    A B B
    B B B B
    A
    段取り時間
    段取り時間
    生産スケジュール作成の時間・コストの大幅な削減!
    (一日あたり数時間 → 数分)
    複数の製品事業部から様々なプリント基板の注文を受け、生産を行う部門

    View Slide

  18. Copyright© Fixstars Group 18
    大学 研究室 論文タイトル
    量子ア
    ニーリ
    ング/イ
    ジング
    マシン
    に関す
    る研究
    早稲田大学 戸川研究室 イジングマシンによる制約付きグラフ彩色問題の彩色数最小化手法 (リンク)
    東京大学 Prof. Codognet Modeling the Costas Array Problem in QUBO for Quantum Annealing (リンク)
    名古屋大学 片桐研究室 Amplifyを用いたCMOSアニーリングマシンの特性の分析 (リンク)
    東北大学 小松研究室 組み合わせクラスタリングによるアニーリングマシンの評価 (リンク)
    応用
    研究
    慶應大学 村松研究室 (材料工学) Phase-fieldモデルの量子アニーリングシミュレータ (リンク)
    東京大学 長谷川研究室 (量子ゲート) ISAAQ:イジングマシンを活用した量子コンパイラ (リンク)
    会津大学 小平研究室 (LSI設計) シミュレーテッド量子アニーリングを用いたマスク最適化手法 (リンク)
    山梨大学 鈴木研究室 (情報工学) 量子アニーリングによる疎行列直接解法向けフィルイン削減オーダリング (リンク)
    京都大学 野田研究室 (電子工学) 量子アニーリングを活用したフォトニック結晶レーザーの構造最適化 (リンク)
    東京大学 津田研究室 (MI) Designing metamaterials with quantum annealing and factorization machines (リンク)
    Amplify を活用した研究事例

    View Slide

  19. Copyright© Fixstars Group
    慶應義塾大学 理工学部 機械工学科 村松研究室
    19
    https://amplify.fixstars.com/ja/news/interview/nextgen-analysis

    View Slide

  20. Copyright© Fixstars Group
    Fixstars Amplify:メディア掲載
    20
    Software Design
    「はじめての量子プログラミング体験」
    (2021年6月号~2022年1月号まで連載)
    Interface
    「Pythonで体験!量子コンピュータ」
    (2022年6月号)
    https://amplify.fixstars.com/ja/news/media

    View Slide

  21. Copyright© Fixstars Group
    Fixstars Amplify のご紹介

    View Slide

  22. Copyright© Fixstars Group
    量子コンピュータとその周辺
    22
    1. 量子コンピュータ
    量子ゲート方式
    古典汎用コンピュータの上位互換。
    量子力学の重ね合わせ状態を制御
    する量子ゲートを操作し、特定の
    問題を汎用的かつ高速に処理する。
    2.イジングマシン
    二値二次多項式模型
    二次の多変数多項式で表される目
    的関数の最適化問題 (QUBO) を扱
    う専用マシン。変数は0,1または
    ±1。統計物理学におけるイジング
    模型 (磁性体の性質を表す模型) に
    由来。様々な実装により実現され
    ている。
    3.量子アニーリング方式
    量子焼きなまし法
    イジングマシンの一種であり、量子焼
    きなまし法の原理に基づいて動作する。
    量子イジング模型を物理的に搭載した
    プロセッサで実現する。
    自然計算により低エネルギー状態が
    出力される。
    Amplify AE
    1
    量子コンピュータ
    IBM/Google/Rigetti/IonQ
    2
    イジングマシン
    富士通/日立/東芝/Fixstars
    3
    量子
    アニーリング
    D-Wave/NEC

    View Slide

  23. Copyright© Fixstars Group
    クラウドサービス: Fixstars Amplify
    ⚫ 量子コンピューティングを想定したシステム開発・運用のクラウドプラットフォーム
    ⚫ 量子コンピュータや独自開発のGPUアニーリングマシンなど、組合せ最適化問題の専用マシンを効率的に実行できる
    ・・・
    適用分野 (一例)
    金融 物流 ライフサイエンス
    サービス概要
    簡単
    ポータブル
    始めやすい
    ⚫ SDKをインストールするだけです
    ぐに使える (pip install amplify)
    ⚫ ハードウェアの専門知識不要でア
    プリケーションが開発できる
    ⚫ すべての量子アニーリング/イジン
    グマシンに対応
    ⚫ Fixstarsの26万ビット級のアニー
    リングマシン実行環境も利用可能
    ⚫ 評価・検証用途には開発環境と実行
    環境が無償で利用可能
    ⚫ 多くのチュートリアル、サンプルコ
    ードを整備・拡充
    23
    https://amplify.fixstars.com/ja/

    View Slide

  24. Copyright© Fixstars Group
    二次計画問題
    24
    • 最適化問題の分類
    • 組合せ最適化問題
    • 決定変数が離散値 (整数など)
    • 整数計画問題 (決定変数が整数)
    • 0-1整数計画問題 (決定変数が二値)
    • 連続最適化問題
    • 決定変数が連続値 (実数など)
    • 量子アニーリング・イジングマシン
    Quadratic 二次形式
    Unconstrained 制約条件なし
    Binary 0-1整数 (二値)
    Optimization 計画
    • QUBO模型 (0-1整数二次計画問題)
    𝑓 = ෍
    𝑖<𝑗
    𝑄𝑖𝑗
    𝑞𝑖
    𝑞𝑗
    + ෍
    𝑖
    𝑄𝑖𝑖
    𝑞𝑖
    𝑞𝑖
    ∈ 0,1 or 𝑞𝑖
    ∈ ±1
    問題設定
    (入力・定数)
    決定変数
    (出力・変数)
    評価値
    (目的関数)

    View Slide

  25. Copyright© Fixstars Group
    イジングマシンの実行手順
    25
    1. 数理モデル検討 解きたい課題の「目的関数」「決定変数」「制約条件」を検討する
    2. QUBO定式化 (論理)
    「 2値決定変数+二次形式」で「目的関数」と「決定変数」を記述 (変換) する
    「制約条件」は直接扱えないので「ペナルティ関数」で表現する
    3. QUBO定式化 (物理)
    各マシンの仕様や制限に準拠した形式にQUBO模型を変換する
    (例: 二次項に制約がある場合は「グラフマイナー埋め込み」問題を解く)
    4. 入力データの準備 各マシンのSDKやAPI仕様に合わせてQUBO模型 (物理) をデータ化する
    5. マシンの実行 マシンを実行して出力の変数値やエネルギー値(コスト値)を解析する
    上記の逆の手順を辿り解きたい課題の「決定変数」を解釈する
    SWによる
    支援と自動化

    View Slide

  26. Copyright© Fixstars Group
    Fixstars Amplify の特長
    26
    – いつでも 開発環境と実行環境がセットのため
    すぐにプログラミングと実行が出来る
    – 誰でも ハードウェアや専門的な知識が不要
    無料で開発がスタート可能
    – 高速に 26万ビットクラスの大規模問題の
    高速処理と高速実行が可能
    – あらゆる 一般に公開されている全てのイジング
    マシンを利用可能

    View Slide

  27. Copyright© Fixstars Group
    Fixstars Amplify クラウドの構成
    27
    Amplify クラウドが量子アニーリングマシン・イジ
    ングマシンの大規模実行環境を提供
    Amplify SDK で書かれた最適化エンジンは
    他社製も含め全ての商用イジングマシンで実行可能
    量子アニーリング・
    イジングマシン (Amplify AE)
    組合せ最適化問題の定式化やマシンを高度に操るた
    めの最先端の技術や知見をライブラリ化したシンプ
    ルなインターフェースを提供
    専門知識が不要で量子アニーリングイジングマシン
    を用いた最適化エンジンの開発に取り組める
    Amplify SDK
    組合せ最適化問題を含むアプリケーションは
    Amplify SDK を用いることで効率的かつ簡便に組合
    せ最適化の定式化が可能
    研究・開発ではAmplifyクラウドは無償提供されるた
    め直ぐに開発をスタートできる
    アプリケーション

    View Slide

  28. Copyright© Fixstars Group
    Fixstars Amplify の対応マシン
    28
    https://news.fixstars.com/2361/ : IBM Quantum対応 (6/14発表)
    https://news.fixstars.com/2199/ : Gurobi対応 (5/18発表)

    View Slide

  29. Copyright© Fixstars Group 29
    ◼ イジングマシンのための革新的な開発環境
    簡単 多くのマシンに対応 始めやすい
    ✓ SDKをインストールするだけ
    ですぐに使える (pip install
    amplify)
    ✓ ハードウェアの専門知識不要
    でアプリケーションが開発で
    きる
    ✓ 進化の早いマシンの発展に追
    従すべての量子アニーリング/
    イジングマシンに対応
    ✓ 26万ビット級のアニーリング
    マシン実行環境が利用可能
    ✓ 研究・開発用途には開発環境
    と実行環境が無償で利用可能
    ✓ 多くのチュートリアル、サン
    プルコードを整備・拡充
    多くの人が始めやすい開発プラットフォームを無料で提供
    https://amplify.fixstars.com
    Fixstars Amplify による課題解決

    View Slide

  30. Copyright© Fixstars Group
    Fixstars Amplify の技術

    View Slide

  31. Copyright© Fixstars Group 31
    実行方法
    Amplify SDK ならアニーリングのプログラミングが圧倒的に短縮されます
    Amplify SDK

    View Slide

  32. Copyright© Fixstars Group
    Amplify SDKによるシンプルプログラミング
    32
    富士通・デジタルアニーラの設定用コード
    SDKなし
    59行
    数独を解くサンプルアプリ
    SDKなし
    最適化しても
    200行以上
    出典:
    Wikipdia
    SDKあり
    30行程度
    SDKあり
    1行
    日立CMOSアニーリングマシンの設定用コード
    SDKなし
    183行
    SDKあり
    1行

    View Slide

  33. Copyright© Fixstars Group
    Fixstars Amplifyによる巡回セールスマン問題の実装例
    33

    View Slide

  34. Copyright© Fixstars Group
    Amplify Annealing Engine
    34
    ⚫ NVIDIA GPU V100/A100 で動作
    • 独自の並列化シミュレーテッドアニーリングアルゴリズム
    ⚫ WEB経由で計算機能を提供
    • 社会課題への取り組み・PoC・検証が加速
    • Amplify SDK の実装を直ぐに実行可能
    ⚫ 商用マシンでは最大規模かつ最高速レベル
    • 128Kビット (全結合) / 256Kビット超 (疎結合)
    Amplify
    Cloud
    Amplify Cloud

    View Slide

  35. Copyright© Fixstars Group 35
    ※評価・検証用途では無償提供
    Fixstars Amplify AE
    D-Wave Advantage
    Amplify Annealing Engine

    View Slide

  36. Copyright© Fixstars Group
    Amplify SDK/AE パフォーマンス
    36
    SDK 定式化処理速度 AE 求解性能・速度
    Amplify AE
    Gurobi
    TSP 10,000 vars MAX-CUT 2,000 vars
    Amplify は最速レベルの定式化・求解速度を達成しています
    x1000
    Faster

    View Slide

  37. Copyright© Fixstars Group 37
    オンラインデモ & チュートリアル
    37
    https://amplify.fixstars.com/ja/demo

    View Slide

  38. Copyright© Fixstars Group 38
    様々な分野で利用が拡大しています
    登録社・組織数: 約
    400
    累計実行回数:
    1,300万回超
    住友商事株式会社

    View Slide

  39. Copyright© Fixstars Group
    料金のご紹介
    39
    Amplifyクラウド利用料 開発支援サービス(個別見積り)
    コンサル・システム開発等
    数百万円~数千万円
    月額利用料
    百万円~
    定式化や実装を
    手厚く
    支援します!
    https://amplify.fixstars.com/ja/pricing

    View Slide

  40. Copyright© Fixstars Group
    セミナー・トレーニングのご紹介
    無料セミナー・ワークショップ
    企業向けプライベートトレーニング
    お客様が抱える実際の課題やデータを使った
    カスタムメイドのトレーニングです!
    ビジネス向け、エンジニア向けに分けて
    開催しています!
    お客様の実際の課題解決をご支援するために、無料セミナーや有償トレーニングを提供しています。
    40
    https://amplify.fixstars.com/ja/news/seminar

    View Slide

  41. Copyright© Fixstars Group
    ワークショップ
    ~事前準備~

    View Slide

  42. Copyright© Fixstars Group
    ワークショップの事前準備 (1)
    ⚫ ご自身のPC (ブラウザ上) でPythonプログラミングを行います。Google
    colaboratoryを使うので、事前にログイン出来ることを確認をお願いします
    (Googleアカウントが必要です)
    ■ https://colab.research.google.com/
    ⚫ Fixstars Amplifyホームページのサインアップよりユーザ登録の上、無料トー
    クンの取得をお願いします (1分で終わります)
    ■ https://amplify.fixstars.com/ja/register
    42

    View Slide

  43. Copyright© Fixstars Group
    ⚫ 入手いただいたAmplifyのトークンを用いて、以下のURLにあるサンプルコードが動くか確認をお願
    いします。サンプルコードは閲覧のみ可能ですので「ドライブにコピー」の上、ご自身のトークン
    を入力し、Shift+Enterで実行をしてください
    (警告が出る場合がありますが、「このまま実行」を選択下さい)
    ◼ https://colab.research.google.com/drive/1evYBKqKfVrEzrQOa-SWwciROfvqjL8qm?usp=sharing
    43
    この部分に、ご自身のトークン番号(32桁)を入力の上、Shift+Enterで実行下さい。
    ご自身のトークン番号は、Amplify HPよりご確認いただけます
    • ご自身のトークンを入力の上、2つのセルをShift+Enterで実行し、以下の結果が出力されればOKです
    アクセストークン
    ワークショップの事前準備 (2)

    View Slide

  44. Copyright© Fixstars Group
    ワークショップの事前準備 (3)
    ⚫ ワークショップで使うサンプルコードを以下のURLより取得して下さい
    ⚫ それぞれのサンプルコードにご自身のトークンを入力いただく必要があります。それぞれのサンプ
    ルコードを「ドライブにコピー」の上、トークンを入力し実行して下さい
    44
    ➢ サンプルコード
    Step1 https://colab.research.google.com/drive/1nu_X8RufFbc4wzRlyxj8M5FlGorkcKIE?usp=sharing
    Step2 https://colab.research.google.com/drive/1ssgrvSQ7cZrLhGzmaLZUJRYu2JJeSOiv?usp=sharing
    Step3 https://colab.research.google.com/drive/1SlYCT_eS5abwzl_rldM-Vf9g2s-KihRp?usp=sharing
    質問は随時、Zoomの チャット か Q&A でお願いします。
    対応可能なメンバーが対応致します。

    View Slide

  45. Copyright© Fixstars Group
    ワークショップ
    ~搬送経路最適化~

    View Slide

  46. Copyright© Fixstars Group
    搬送経路最適化
    46
    一言に「経路最適化」と言っても、搬送ロボット (AGV) が運用されている環境や要件など
    は様々で、それぞれに対する問題設定や定式化は異なります
    状況や要件の例
    • AGVが通過できる経路が定められている
    • AGVごとに稼働時間に制限がある
    • AGVごとに積載量に制約がある
    • 配達地ごとに要求される到着時間がある
    • AVGの衝突回避の制御が必要
    • 運ぶ材料や部品によって各配達地で作業時間が異なる

    View Slide

  47. Copyright© Fixstars Group 47
    【問題】工場内の4台のAGVを用いて、AGVの充電ステーションから20か所の搬送先に部品を届けると
    きの各搬送ロボットの走行距離の合計が最短になるような経路を求めます。尚、搬送ロボットをできる
    だけ平均的に利用したいため各AGVの搬送先は5か所とします
    充電ステーション
    搬送経路最適化

    View Slide

  48. Copyright© Fixstars Group 48
    搬送経路最適化
    全てを一度にやるのは難しいので、3つのステップに分けてアルゴリズムを作成します
    AGVを1台とし、制約を守るだけのアルゴリズムを作ります
    制約➀: 各順番で回れる訪問先 (充電ステーション+各搬送先) は1か所
    制約②: 各訪問先を回るのは1回のみ
    Step1に「総距離の最小化」という目的を追加し、複数の解の候補から目的を
    実現する解を求めるアルゴリズムを作ります
    解の候補多数あり
    Step1
    Step2
    AGVを4台に増やします。具体的には、Step2に対して以下の2つの変更を加えます
    変更➀: 決定変数の一部を0/1で固定
    変更➁: 制約条件の対象範囲を微調整
    Step3
    【問題】工場内の4台のAGVを用いて、AGVの充電ステーションから20か所の搬送先に部品を届けると
    きの各搬送ロボットの走行距離の合計が最短になるような経路を求めます。尚、搬送ロボットをできる
    だけ平均的に利用したいため各AGVの搬送先は5か所とします

    View Slide

  49. Copyright© Fixstars Group 49
    Step1のサンプルコードのレビュー
    (本ワークショップでは、最適化のコードにフォーカスするため、
    可視化のコードの詳細は割愛します)
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります

    View Slide

  50. Copyright© Fixstars Group 50
    距離行列の作成
    各訪問先の座標
    充電ステーション
    充電ステーション
    実装
    各訪問先間の距離行列 訪問先 (0) は充電ステーション
    (km) 訪問先 (i)
    0 1 2 ・・・ 20
    訪問先 0 0 0.54 0.22 ・・・ 0.64
    (j) 1 0.54 0 0.32 ・・・ 1.17
    2 0.22 0.32 0 ・・・ 0.86
    ・ ・ ・ ・
    ・ ・ ・ ・・・ ・
    ・ ・ ・ ・
    20 0.64 1.17 0.86 ・・・ 0
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります

    View Slide

  51. Copyright© Fixstars Group 51
    訪問先 (i)
    順番(n) 0 1 2 ・・・ 20
    0 1 0 0 ・・・ 0
    1 0 0 0 ・・・ 1
    2 0 1 0 0
    ・ ・ ・ ・
    ・ ・ ・ ・・・ ・
    ・ ・ ・ ・
    20 0 0 1 ・・・ 0
    充電ステーションの次は、
    訪問先 (20) に行く事を示

    得られる解の例
    実装
    充電ステーション
    から出発を示す
    決定変数を準備
    イジングマシン
    で最適な(0,1)の
    組合せを探す
    BinaryPoly型 (21×21) = 441 [qbit]
    1は訪問する、0はしない事を示す
    訪問先 (i)
    順番(n) 0 1 2 ・・・ 20
    0 1 q_21(0 or 1) q_42(0 or 1) ・・・ q_420(0 or 1)
    1 q_1(0 or 1) q_22(0 or 1) q_43(0 or 1) ・・・ q_421(0 or 1)
    2 q_2(0 or 1) q_23(0 or 1) q_44(0 or 1) q_422(0 or 1)
    ・ ・ ・ ・
    ・ ・ ・ ・・・ ・
    ・ ・ ・ ・
    20 q_20(0 or 1) q_41(0 or 1) q_62(0 or 1) ・・・ q_440(0 or 1)
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります

    View Slide

  52. Copyright© Fixstars Group
    訪問先 (i)
    順番(n) 0 1 2 ・・・ 20
    0 1 0 0 ・・・ 0
    1 0 0 0 ・・・ 1
    2 0 1 0 0
    ・ ・ ・ ・
    ・ ・ ・ ・・・ ・
    ・ ・ ・ ・
    20 0 0 1 ・・・ 0
    52

    𝑖=0
    20
    𝑞𝑛,𝑖
    = 1

    𝑛=0
    20
    𝑞𝑛,𝑖
    = 1
    𝑛 ∈ 0,1, ⋯ , 20
    𝑖 ∈ 0,1, ⋯ , 20
    制約の定式化
    one_hot
    one_hot
    one_hot
    one_hot
    one_hot one_hot
    one_hot
    one_hot
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります
    制約1:各順番で回れる訪問先は1つ
    → one hot 制約
    制約2: 各訪問先を回るのは1回のみ
    → one hot 制約

    View Slide

  53. Copyright© Fixstars Group 53
    制約1:各順番で回れる訪問先は1つ
    → one hot 制約
    制約2: 各訪問先を回るのは1回のみ
    → one hot 制約

    𝑖=0
    20
    𝑞𝑛,𝑖
    = 1

    𝑛=0
    20
    𝑞𝑛,𝑖
    = 1
    𝑛 ∈ 0,1, ⋯ , 20
    𝑖 ∈ 0,1, ⋯ , 20
    制約の定式化 実装
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります

    View Slide

  54. Copyright© Fixstars Group 54
    Amplify AE
    求解
    • 先ほど作った
    constraints (制約)
    をmodelに格納して、
    マシンに投げます
    • 制約条件だけを与え
    た場合、制約条件を
    満たす解を探してき
    てくれます
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります
    無料版は1ジョブ10秒まで設定可
    有料版では1分 or 10分まで設定可能

    View Slide

  55. Copyright© Fixstars Group 55



    結果の取得
    各順番で回れる訪問先は1つ、各訪問先を回るのは1回のみ、という二つの制約を満たす経路を求めること
    ができました。解の候補がたくさんある状況ですので、次のStepでは、目的を追加して解を絞ります
    Step1 AGVを1台とし、制約を守るだけのアルゴリズムを作ります

    View Slide

  56. Copyright© Fixstars Group 56
    Step2のサンプルコードのレビュー
    Step1に「総距離の最小化」という目的を追加し、複数の解の候補から目的を
    実現する解を求めるアルゴリズムを作ります
    Step2

    View Slide

  57. Copyright© Fixstars Group 57
    決定変数 x 決定変数 (2次)
    𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 = ෍
    𝑛=0
    20

    𝑖=0
    20

    𝑗=0
    20
    𝑑𝑖,𝑗
    ∙ 𝑞𝑛,𝑖
    ∙ 𝑞𝑛+1,𝑗
    総距離の最小化
    計算のイメージ
    n=1のときi=20が1、n=2のときj=1が1なので、𝑑20,1
    である1.17がdistanceに加算される
    各訪問先間の距離行列 (𝑑𝑖,𝑗
    ) 決定変数 (𝑞𝑛,𝑖
    , 𝑞𝑛+1,𝑗
    )
    目的関数の定式化
    𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 =
    訪問先 (i)
    順番(n) 0 1 2 ・・・ 20
    0 1 0 0 ・・・ 0
    1 0 0 0 ・・・ 1
    2 0 1 0 0
    ・ ・ ・ ・
    ・ ・ ・ ・・・ ・
    ・ ・ ・ ・
    20 0 0 1 ・・・ 0
    Step1に「総距離の最小化」という目的を追加し、複数の解の候補から目的を
    実現する解を求めるアルゴリズムを作ります
    Step2

    View Slide

  58. Copyright© Fixstars Group 58
    実装
    イジングマシンは、制約
    を満たす中で、この
    distance (目的) を最小
    にする組合せを探します
    【補足】制約条件には、目的関数の値を考慮して
    適切な値の重みを設定する必要があります。制約
    条件の取り扱いに関する詳細は、こちらのチュー
    トリアルも合わせてご参照下さい
    https://amplify.fixstars.com/ja/demo
    : 追加 or 変更部分
    Step1に「総距離の最小化」という目的を追加し、複数の解の候補から目的を
    実現する解を求めるアルゴリズムを作ります
    Step2
    剰余を使って、最後の
    訪問先の次は0番目に
    戻るようにしています

    View Slide

  59. Copyright© Fixstars Group 59
    2つの制約を満たした上で、総距離を最小化する経路が求められるようになりました。次のStepでは、
    AGVを4台に増やします。
    Step1に「総距離の最小化」という目的を追加し、複数の解の候補から目的を
    実現する解を求めるアルゴリズムを作ります
    Step2

    View Slide

  60. Copyright© Fixstars Group 60
    Step3のサンプルコードのレビュー
    AGVを4台に増やします。具体的には、Step2に対して以下の2つの変更を加えます
    変更➀: 決定変数の一部を0/1で固定
    変更➁: 制約条件の対象範囲を微調整
    Step3

    View Slide

  61. Copyright© Fixstars Group 61
    : 追加 or 変更部分
    実装
    決定変数
    これらの中で
    合計が最短と
    なる経路を探
    します
    変更➀: 決定変数の一部を0/1で固定します。これにより、各AGVの搬送先を5か所に固定しています
    AGVを4台に増やします (n_vehicle = 4 → n_visits = 24)
    Step3
    充電ステーションには、0番目、6番目、
    12番目、18番目に訪問します (計4回訪問)

    View Slide

  62. Copyright© Fixstars Group 62
    : 追加 or 変更部分
    実装
    訪問先 (i)
    順番(n) 0 1 2 ・・・ 20
    0 1 0 0 ・・・ 0
    1 0 q_22 q_23 ・・・ q_41
    2 0 q_43 q_44 ・・・ q_62
    3 0 q_64 q_65 ・・・ q_83
    4 0 q_85 q_86 ・・・ q_104
    5 0 q_106 q_107 ・・・ q_125
    6 1 0 0 0 0
    7 0 q_148 q_149 ・・・ q_167
    8 0 q_169 q_170 ・・・ q_188
    9 0 q_190 q_191 ・・・ q_209
    10 0 q_211 q_212 ・・・ q_230
    11 0 q_232 q_233 ・・・ q_251
    12 1 0 0 0 0
    13 0 q_274 q_275 ・・・ q_293
    ・ ・ ・ ・
    ・ ・ ・ ・
    ・ ・ ・ ・
    23 0 q_484 q_485 ・・・ q_503
    決定変数
    one_hot制約対象外
    AGVを4台に増やします (n_vehicle = 4 → n_visits = 24)
    Step3
    変更➁: 制約条件の対象範囲を微調整します。訪問先 (0) である充電ステーションを、one_hot制約の
    対象から外します

    View Slide

  63. Copyright© Fixstars Group 63
    4台のAGVそれぞれが5か所ずつ搬送し、総走行距離が最短になるような経路を求める事ができました!
    AGVを4台に増やします (n_vehicle = 4 → n_visits = 24)
    Step3

    View Slide

  64. Copyright© Fixstars Group
    ワークショップ:おさらい
    64
    充電ステーション
    充電ステーション
    AGV1台の制約のみから始めて、目的を追加し、最終的には、4台のAGVそれぞれが5か所ずつ搬送し総走
    行距離が最短になるような経路を求めることができました!

    View Slide

  65. Copyright© Fixstars Group
    発展課題
    65
    充電ステーション
    課題2
    工場内の作業の関係で、本日は左図のバツ印の2か所が通行できな
    いとの事でした。「バツ印の2か所を通らずに」、ワークショップ
    と同じ目的を実現するための最適経路を求めるためには、サンプ
    ルコードをどのように変更すればよいでしょうか?
    課題1
    各配達拠点の座標値を0~1ではなく、「0~100」とした場合に、ワークショップと同じ目的を実現
    するための最適化経路を求めて下さい。(単純に距離行列の値を変更するだけでは、解を求める事がで
    きません)

    View Slide

  66. Copyright© Fixstars Group
    今後について
    66
    ⚫ 本日の「発展的課題」にチャレンジ!
    ⚫ デモ・チュートリアルにチャレンジ!
    目的関数のみで定式化 制約のみで定式化 目的関数+制約で定式化
    https://amplify.fixstars.com/ja/docs/
    困った時は
    ドキュメンテーションを!

    View Slide

  67. Copyright© Fixstars Group
    今後のセミナーのご案内
    67
    2022/12/23 (木)
    「搬送経路最適化」
    第一部 14:00 - 14:45
    • フィックスターズの紹介
    • 組合せ最適化問題・イジングマシン
    の紹介
    • Fixstars Amplifyの紹介
    第二部 14:50 - 16:00
    • Fixstars Amplifyを用いた「搬送
    経路最適化」のワークショップ
    • Q&A
    2023/1/19 (木)
    「シフト最適化」
    第一部 14:00 - 14:45
    • フィックスターズの紹介
    • 組合せ最適化問題・イジングマシン
    の紹介
    • Fixstars Amplifyの紹介
    第二部 14:50 - 16:00
    • Fixstars Amplifyを用いた「シフ
    ト最適化」のワークショップ
    • Q&A
    ご質問・ご不明点は問合せフォームでご連絡下さい
    https://amplify.fixstars.com/ja/contact
    2023/2/16 (木)
    「生産計画最適化」
    第一部 14:00 - 14:45
    • フィックスターズの紹介
    • 組合せ最適化問題・イジングマシン
    の紹介
    • Fixstars Amplifyの紹介
    第二部 14:50 - 16:00
    • Fixstars Amplifyを用いた「生産
    計画最適化」のワークショップ
    • Q&A
    1月、2月にも無料セミナーを開催します!第二部からの参加も可能です

    View Slide

  68. Copyright© Fixstars Group
    ご清聴ありがとうございました!
    68

    View Slide