トップ > 製品概要 > NUOPT の更新情報 > NUOPT 10 の更新情報

NUOPT V10 の更新情報

NUOPT V10 の新機能等を紹介いたします。

  1. 非線形半正定値計画問題 (SDP) 用の求解アルゴリズムの導入
  2. 制約充足アルゴリズム (wcsp) 用の微分不可能な関数の追加
  3. 非線形最適化アルゴリズムの改良
  4. GUI の改良
  5. チュートリアルの改訂
  6. 商品ラインアップの変更
<<お知らせ>>

旧バージョンをご利用で保守に加入されている方につきましてはバージョンアップのお取り扱いは 以下のようになります。

  • 旧バージョンの LP/IP モジュールをお使いの方
      NUOPT V10 では LP/IP Lite モジュール・LP/IP モジュールのいずれかをお選び頂きます。(次年度以降の保守料金はお選び頂いたモジュールの料金が適用されます。)
  • 旧バージョンの NLP モジュールをお使いの方
      NUOPT V10 では NLP モジュール・フルセットのいずれかをお選び頂きます。(次年度以降の保守料金はお選び頂いたモジュールの料金が適用されます。)

1. 非線形半正定値計画問題 (SDP) 用の求解アルゴリズムの導入

一般の非線形最適化問題に半正定値性制約を導入した問題を扱うことができます。半正定値性制約の対象となる行列の要素や、目的関数・制約式に非線形関数を用いることができるのが大きな特徴です。モデリング言語 SIMPLE に新しく導入された SymmetricMatrix クラスを用いて半正定値制約を記述することによって、問題を簡便かつ汎用的に記述することができます。この記述を利用することにより、相関行列取得問題、ロバストポートフォリオ最適化、二次ロジット関数のフィッティングなど、半正定値性制約付きのアプリケーションへの導入が容易です。

次は、与えられた行列と最も近い正定値な(最小固有値は minEig )相関行列を取得する 問題(nearest correlation matrix problem と呼ばれています)をモデリング言語 SIMPLE に よって記述したものです。

<< 相関行列取得問題の SIMPLE での記述例 >>

Set N; // 行列の各要素
Element i(set=N),j(set=N);
Variable  x(index=(i,j));
Parameter a(index=(i,j)); // 与えられた行列の要素
SymmetricMatrix m((i,j));
Parameter minEig; // 出力される相関行列の最小固有値
m[i,i] = 1;     // 対角は 1 とする
m[i,j] = x[i,j], i > j;  // 下三角部分の定義
m >= minEig; // 半正定値制約
Objective diffnrm(type=minimize); // 差の行列のフロベニウスノルム
diffnrm = sum(pow(x[i,j]-a[i,j],2),(i,j,i < j));

2. 制約充足アルゴリズム(wcsp)用の微分不可能な関数の追加

関数群の最大、最小を求める max/min 関数など、一般の数理計画問題の記述には微分不可能な関数が現れます。例えば max 関数は設備計画問題(最大負荷に耐える機器を選定する)などに頻出します。

通常の定式化では、数理計画法アルゴリズムが微分不可能な関数と整合しないために中間変数を導入して通常の微分可能な形に変換するなどの措置を行っていましたが、問題規模の増大を招く一因となっています。一方メタヒューリスティクスアルゴリズム(wcsp)は微分不可能性を仮定していないので、近傍探索ルーチンの工夫を行えば定式化の変形を行うことなく、効率的な求解が可能です。

V10 では、まず線形な関数群の max/min 関数を自動判別して、メタヒューリスティクスアルゴリズム wcsp での求解を高速化する機能を導入します。この機能の組み込みによって、直観に近い形での簡便なモデル記述と性能の大幅な向上を可能にします。

3. 非線形最適化アルゴリズムの改良

V8 で導入された主双対外点法(lepm,tepm)に関する初期値推定法、パラメータコントロールの最新の研究成果を反映させ、安定化・高速化がなされています。外点法は良い初期値が存在する問題に対して、内点法よりも高速に収束することがいくつかの実験において確かめられています。

4. GUI の改良

お客様から頂いた声に対応し、NUOPT Windows 版の GUI の操作性を向上させました。メッセージウインドウと経過表示が一体化、エラーメッセージおよびアルゴリズムの実行経過の管理・確認が容易になります。また、エラーメッセージをタグ化、クリックによりモデルの該当箇所がエディタで表示される機能によってモデルのエラー修正も容易になります。

<< NUOPT Windows 版 GUI の新機能 >>

NUOPT Windows 版 GUI の新機能

5. チュートリアルの改訂

パッケージに付加している数理計画モデルのサンプル例題集(NUOPT/SIMPLE チュートリアル)を一部改訂、より分かりやすい表現にするほか、以下の例題を増強します。テンプレートや授業等にご活用ください。

<<NUOPT/SIMPLE チュートリアルに追加されるサンプル例題一覧>>


  • 格付け推移行列推定問題
  • イールドカーブ推定問題
  • 相関行列取得問題
  • ロバストポートフォリオ最適化問題
  • 設備計画問題

6. 商品ラインアップの変更

お客様の様々なご利用形態に対応できるよう 4 種類のモジュールをご用意致しました。

<<NUOPT V10 の機能比較表>>

問題の種類\
モジュール名
LP/IP【1】 wcsp/rcpsp
【2】
NLP【3】 Global【4】
LP/IP Lite
モジュール
× × ×
LP/IP
モジュール
× ×
NLP
モジュール
× 【5】
フルセット 【5】

【1】(混合整数)線形計画問題の求解に NUOPT を利用する場合
【2】求解の際にメタヒューリスティクス解法(制約充足アルゴリズム・資源制約付きスケジューリングアルゴリズム)を利用する場合
【3】非線形計画問題の求解に NUOPT を利用する場合(NUOPT V10 で導入される半正定値計画問題用の求解アルゴリズムを利用される場合を含みます
【4】求解の際に大域的最適化アルゴリズムを利用する場合
【5】ご利用の際にはアドオンの NUOPT/Global が必要です