Fixstars Amplify Scheduling Engine(Amplify SE)は、スケジューラ開発のためのSDKと高速ソルバーからなるクラウド基盤です。
Amplify SEは、プログラム開発を簡単に行えるソフトウェア開発支援キット(SDK)と、高精度な解を瞬時に求める高性能な計算エンジンによって、スケジュール最適化アプリをユーザー自ら構築できるクラウドサービスです。
Amplify SEを使えば、生産計画・人員シフト計画・配送計画などのスケジューリングを、コンピュータが自動で立案する高性能なアプリケーションを簡単に作ることができます。
01
既存のシステムとシームレスなデータ連携ができます。例えば、生産管理システムから必要なデータを取り出してAmplify SEで最適化計算をすることで、大規模な投資やシステム更新をせずに、高速かつ精密な生産計画の立案が実現できます。
02
最適化計算の結果をエクセルなどの表計算ソフトに出力できます。計画担当者の業務フローはこれまでと変える必要がありません。低コストで簡単に最適化のプロセスを管理・実行できるようになります。
03
もちろん、新しいアプリをゼロから開発するという選択肢もあります。Amplify SEには、初心者でも理解しやすいチュートリアルや多くのサンプルコードが用意されています。ユーザーが自社で開発することもできますし、開発サポートも提供しています。
ソフトウェア開発支援キット(SDK)にはスケジューリング問題を記述するためのライブラリ、ドキュメント、そしてサンプルプログラムが含まれています。ドキュメントを参考に、ライブラリを使って問題を記述すれば、高性能計算エンジンで処理された最適化されたスケジューリング結果を簡単に得ることができます。
from amplify_sched import *
model = Model()
model.jobs.add("Job A")
model.machines.add("Machine X")
model.jobs["Job A"].append(Task())
model.jobs["Job A"][0].processing_times["Machine X"] = 10
model.jobs["Job A"][0].release_time = 10
model.jobs["Job A"][0].deadline = 20
gantt = model.solve(token=token, timeout=1)
gantt.timeline()
クラウド上にある最先端の高性能コンピュータ群と、コンピュータの性能を最大限に引き出すアルゴリズムによって、大規模なスケジューリング問題も瞬時に最適化計算ができます。
Amplify
SEを使って、複数の仕事を複数の機械に割り当てて、最も短い時間で完了するための組み合わせ最適化問題を解いてみました。
それぞれの実行結果は仕事や機械の数が異なります。一般的に、仕事や機械の数が増えるにしたがって最適化は困難になります。