トップ > ユーザーサポート > Nuorium Optimizer FAQ > 一般

Nuorium Optimizer FAQ

一般

数理計画法とは?

現実の問題を数式で定式化して解を求めることにより意思決定を行うという方法です。定性的な直観力では人間の判断に勝るものはありませんが、

  • 複数の地点間で荷物を運ぶとき、どの経路にどの荷物を流せば輸送コスト安?
  • 所定の仕事をこなすのに、残業あるいは短期アルバイト社員の雇用どちらが有利?
  • どのような配分で商品を作れば原料在庫の範囲内でしかも利益が上がる?
  • 季節商品はコスト安な時期に生産してストックしておきたいがその具体的計画は?
  • 蓄熱や発電が可能なとき冷暖房機器を最もコスト安で運転する方法は?
  • 故障に強い信号ネットワークを作るには?
  • 株と債券と現金どのように組み合わせれば予測される価値の変動が少ない?
  • 観測データをモデル式でもっとも良く説明するパラメータ値は?

など、ある程度定量的な評価が入る部分にはこの数理計画法が有効な判断材料を提供します。上記はすべて実際の意思決定に数理計画法が用いられている応用例です。

最適化について解説した「最適化とは」も是非ご覧ください。

Nuorium Optimizerとは?

数理計画法の適用のためには、現実の問題を最適化問題という形の数式に表現し、それを解く必要があります。Nuorium Optimizer は最適化問題(数式モデルと言います)の表現をモデリング言語 SIMPLE により行う手段を提供します。さらに表現されたものを解くための様々なアルゴリズム単体法内点法有効制約法)を備えています。

また Microsoft Excel や R 言語との連係、さらに数式モデルやデータを管理するための GUI を提供します。

詳細は Nuorium Optimizer 概要をご覧ください。

どこで作られたソフトですか?

Nuorium Optimizer は(株)NTT データ数理システムの自社開発製品です。

導入実績と適用事例は?

適用事例は以下のように多岐にわたっています。

  • 船舶スケジューリング計画問題(商社)
  • 需要を考慮したシフトスケジューリング(コールセンター)
  • 乗務員勤務表作成システム(運輸)
  • 配車計画問題(運輸)
  • 効率的保線計画(運輸)
  • 納期遅れ最小化生産スケジューリング(製造業)
  • 在庫最適化(製造業)
  • 資材切り出し最適化(製造業)
  • 積み付け最適化(製造業)
  • 発電機器スケジューリング(製造業)
  • 機器運転スケジュール最適化(製造業)
  • エネルギーマネジメント(インフラ)
  • ネットワーク設計モデル(インフラ)
  • 広告配信マッチング(広告代理店)
  • データフュージョン(広告代理店)
  • キーワード購入最適化(広告代理店)
  • 人員割り当てコンサルテーション(コンサル)
  • ポートフォリオ最適化(金融)
  • 投資比率の算出(金融)

さらに、教育分野では筑波大学大学院ビジネス科学研究科等で講義や演習に利用されています。

また、インタビュー記事ソリューションもあわせてご覧ください。

詳細を知りたい方は是非 nuopt-info@msi.co.jp までお問い合わせください。

価格とライセンス形態は?

詳細は Nuorium Optimizerの価格についてをご覧ください。

Nuorium Optimizer のライブラリを組み込んだアプリケーションプログラムを他のコンピュータ上に移動して実行する場合には、ランタイムライセンスが必要になります。

保守契約を結んだユーザは以下のサービスが受けられます。

  • 無償バージョンアップ(年 1 回)
  • e-mail による技術サポート
  • NTT データ数理システム主催によるセミナー・イベントへのご優待

詳細は nuopt-info@msi.co.jp までお問い合わせください。

対応プラットフォームは?

Windows、macOS、主要な Linux ディストリビューション及び UNIX OS に対応しています。詳細はこちらをご覧ください。 主要なパブリッククラウド環境にも対応しています。詳細については nuopt-info@msi.co.jp までお問い合わせください。

(株)NTT データ数理システムはパッケージ販売のみですか?

いいえ、お客様の問題のモデリングや定式化をはじめ、Nuorium Optimizer やその周辺(データベース、GUI)を含む受託プロジェクトをお受けすることができます。Nuorium Optimizer は自社開発したものですので、特別仕様などの実装を低コストで行なうことができます。Nuorium Optimizer の利用方法そのものについてのコンサルティング業務も承ってます。

また、Nuorium Optimizer のデモンストレーションも随時承ってます。デモンストレーションの内容については、お客様のご興味にあわせて柔軟に対応します。

さらに、Nuorium Optimizer 無料セミナーを通して、Nuorium Optimizer を有効に活用するための情報提供も行なっております。その他にも問題例をいただいて実際に Nuorium Optimizer にて求解し、実行時間や結果を伝えるサービスも行っています。

受託プロジェクトやデモンストレーション等については nuopt-info@msi.co.jp までお問い合わせください。最適化アルゴリズムはもちろん、モデリング手法や応用事例に詳しい専任の技術スタッフがお相手します。

モデルとデータとは?

最適化問題とは

$$ \begin{array}{ll} 変数 & x,y \\ 目的関数 & 180x+160y \rightarrow 最小化 \\ 制約条件 & 6x+y \geq 12 \\ & 3x+y \geq 8 \\ & 4x+6y \geq 24 \\ & 5 \geq x \geq 0 \\ & 5 \geq y \geq 0 \\ \end{array} $$ (2つの拠点の最適生産日数 $x,y$ を求める)

のようなものです。しかし、このような数字を含んだ式の羅列では、データが変化したり、特に問題が大規模になった場合の管理や式の理解が難しくなります。これを

$$ \begin{array}{ll} 変数 & x_j \\ 目的関数 & \sum_j {c_j x_j} \rightarrow 最小化 \\ 制約条件 & \sum_j {a_{ij} x_j} \geq d_i \\ & 5 \geq x_j \geq 0 \\ \end{array} $$

のように問題を一旦抽象的に表現して(モデル記述)、数字の部分(データ)を

$$ c = \begin{pmatrix} 180 \\ 160 \end{pmatrix}, a = \begin{pmatrix} 6 & 1 \\ 3 & 1 \\ 4 & 6 \end{pmatrix}, d = \begin{pmatrix} 12 \\ 8 \\ 24 \end{pmatrix} $$

として別に与えた方が問題の構造が明らかになり、データが変化したり、問題が大規模になった場合にも対処しやすくなります。Nuorium Optimizer のモデリング言語 SIMPLE はこのように数理計画問題をモデルとデータに分離して記述する手段を提供しているので(もちろん分離しない状態での記述も可能です)、大規模モデルでも簡潔にわかりやすく記述できます。

CPU によって性能差はありますか?またマルチコアプロセッサに対応していますか?

CPU のクロック周波数やメモリ帯域幅、キャッシュサイズやコア数などに応じて Nuorium Optimizer の性能が変わります。 CPU によっては発熱を抑えるためにシングルコア動作時のクロック周波数よりもマルチコア動作時のクロック周波数の方が低いため、 Nuorium Optimizer の並列化機能を利用する際はこれら二つのクロック周波数を確認しておくと良いです。

以下のバージョンおよびアルゴリズムにおいて、マルチコアプロセッサの効果が出ることがあります。

  • V13 以降: アルゴリズム「内点法」において Intel MKL を利用した場合
  • V14 以降から V21 まで: Windows 環境において混合整数線形計画問題に対応するアルゴリズム「分枝限定法」で並列化オプションを指定した場合。Intel 社の並列化ライブラリ Intel TBB を用いています。Linux や macOS 環境ではマルチコアプロセッサの効果はありません
  • V22 以降: 混合整数線形計画問題に対応するアルゴリズム「分枝限定法」と制約充足問題に対応するアルゴリズム「wcsp タブーサーチ」で並列化オプションを指定した場合。C++11 のスレッドライブラリを用いています

必要なユーザー権限は?

Nuorium Optimizer はユーザー権限に関係なく使えます。ただし、Windows 版のインストールについては Administrator 権限があるユーザーで行う必要があります。

扱える変数の数に制限はありますか。

問題規模に関するソフトウェア的な制限はありませんが、問題の種別(非線形計画問題か整数計画問題かなど)によって現実的に扱える変数の数や計算時間が異なります。

問題の具体的な情報を Nuorium Optimizer サポートまでご連絡いただければ、より問題に即した情報をご提供いたします。