トップ > 製品概要 > Numerical Optimizer 更新情報

Numerical Optimizer 更新情報

Numerical Optimizer V22 の新機能

Numerical Optimizer V22 の新機能情報を公開中です。

1. 計算ライブラリ

並列計算機能と分枝限定法の強化をおこないました。

並列計算機能の刷新

分枝限定法やメタヒューリスティクス解法 wcsp の並列計算機能を刷新しました。 これにより Linux や Mac 環境、さらにはランタイム環境をお持ちの方にもご利用いただけるようになりました。 利用方法は非常に簡単です。分枝限定法の場合はモデルファイルでスレッド数を指定します。

options.bbthreads = 4; // 4 スレッドで実行する

// 並列分枝限定法の手法を変更する場合は以下の記述を追加します
// options.branchParallelMethod = "racing"; // デフォルト
// options.branchParallelMethod = "subtree";
// options.branchParallelMethod = "deterministicRacing";

wcsp の場合はモデルファイルでスレッド数と試行回数を指定します。

options.wcspthreads = 4; // 4 スレッドで実行する
options.wcspTryCount = 12; // 試行回数を設定する
// 各スレッドで 12 / 4 = 3 回 wcsp が実行されます

ビルド時に特別なオプションは必要ありません。 ビルドしたバイナリをランタイム環境に配置して並列計算をおこなうこともできます。

分枝限定法の強化

分枝限定法の前処理や切除平面法の強化をおこないました。 特に、切除平面法の強化により発電機の起動停止運転計画問題において大幅な高速化をおこないました。

分枝限定法の強化

2. PySIMPLE

詳細はこちらのページをご覧ください。

式展開が劇的に高速化

PySIMPLE 1.1.0 では式展開が劇的に高速化されました。 1.0.1 と比較して 10 倍以上の高速化を達成し、SIMPLE と比較しても遜色のない速度になりました。

式展開の高速化

対応環境の強化

動作環境として Linux,Mac がサポートされるようになり、最新の Python 3.8 にも対応しました。

3. Nuorium

実行環境およびモデリング環境の拡充を行いました。

モデル・データ連係機能を改修

モデル・データ連係画面を廃止し、JSON 形式でファイルパスを指定する方式に変更しました。 外部コマンドの呼び出しが可能になったことで、例えば PySIMPLE の呼び出しなど、より包括的な実行環境が利用可能となりました。

SIMPLE と Markdown の連携機能

SIMPLE ソースコードに Markdown を記述できる特別なコメントシンタックスを追加しました。 これによりモデルの保守性の向上に役立てられるようになりました。

SIMPLE と Markdown の連携機能

4. V21 との互換性

  1. 相対 gap の定義が変更になりました。定義の変更により options.relgaptol を用いて停止条件を指定する場合、停止されるタイミングが V21 と V22 で異なる可能性があります
  2. ビルド時の並列化オプション(-parallel)が廃止になりました。並列計算機能をご利用になる場合はオプションをつけずにそのままビルドしてください
  3. hardConstraint(), semiHardConstraint(), softConstraint() によって既に設定した制約式の重みを変更した場合、警告 SIMPLE 560 が出力されます
  4. 代入の左辺の添字が一意ではない場合、SIMPLE 72 が発生します
  5. OrderedSet I = "1 2 3 4";
    Element i(set = I);
    Set V = "0 1";
    Element v(set=V);
    Parameter tmp(index=v);
    tmp[i % 2] = 1;
    // i = 1, 2, 3, 4 に応じて i % 2 = 1, 0, 1, 0 となります。
    // i % 2 の値が重複しているため SIMPLE 72 を返します。

  6. ビルドコマンド mknuopt は V16 以前の ufun 形式に対応しません
  7. Nuorium のデータ連係に用いる .nuo ファイルを廃止しました。JSON 形式によるデータ連係機能をご利用ください

過去の Numerical Optimizer の更新情報

Numerical Optimizer の各バージョンにおける更新情報を記録しております。なお、各ページについてリリース当時の社名等で表記しております。