トップ > ユーザーサポート > 累積修正パッチ > Numerical Optimizer V22 用累積修正パッチ

Numerical Optimizer V22 用累積修正パッチ

注意 : 本パッチは Numerical Optimizer V22 用です。Numerical Optimizer V22 以外をお使いの方は本パッチを適用しないでください!

本ページでは、2020 年 3 月 2 日にリリースされた Numerical Optimizer V22 で発見された不具合を修正するパッチに関する情報を掲載しております。

累積修正パッチの詳細な情報

本パッチでは次の内容が含まれています。

SIMPLE

  1. sum を含んだ制約式の評価の際に、sum を展開する添字集合が結果として空だった場合に内部エラーが発生する可能性がある問題を修正しました。
  2. 引数に sum 関数を含んだ simple_printf 関数において正常に標準出力されない問題を修正しました。
  3. DiscreteVariable の domain に負の数を含めることができない問題を修正しました。
  4. OrderedSet に対する next が制約式に含まれている場合エラーとなる可能性がある問題を修正しました。
  5. wcsp モデルにおいてソフト制約の重みを 0 にするとハード制約になっていたのを重み 0 のソフト制約になるように修正しました。
  6. 以下の例のような曖昧な添字展開に対してエラー出力するよう修正しました。
    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;
    V.val.print();

ライブラリ

  1. 相対ギャップの定義を修正しました。
    上界値をZ_p下界値をZ_dとした時、相対ギャップは以下の式で定義されます。

    ¥[¥begin{cases}0, & Z_p = Z_d = 0 ¥¥frac{| Z_p - Z_d | }{¥max{(|Z_p|, |Z_d|)}}, & Z_p ¥cdot Z_d >= 0 ¥1, & Z_p ¥cdot Z_d < 0¥end{cases}]¥]

  2. subtree による並列分枝限定法で最適解を間違えることがある問題を修正しました。
  3. subtree による並列分枝限定法で実行不可能な問題を解くと NUOPT 16 ではなく NUOPT 20 が返る問題を修正しました。
  4. 並列分枝限定法で branch:gaptol を指定すると NUOPT 7 が返る問題を修正しました。
  5. 並列分枝限定法で稀に実行不可能になる問題を修正しました。
  6. 分枝限定法において整数変数に対する前処理により不正に "(NUOPT 35) constraint violated." が発生する問題を修正しました。
  7. 分枝限定法においてモデルに無関係な変数に関する制約式があると "(NUOPT 35) constraint violated." が発生する問題を修正しました。
  8. 分枝限定法において特定の条件で計算時間上限が有効でなくなる問題を修正しました。
  9. wcsp タブーサーチ法においてフェーズ 1 からフェーズ 2 に移行する際に、ハード制約違反量が残存しソフト制約違反量が 0 の場合に内部エラーとなる問題を修正しました。
  10. 分枝限定法において計算時間の上限 maxtim が稀に効かない不具合を修正しました。(2020 年 9 月 10 日追加)
  11. 分枝限定法において (NUOPT 36) Equality constraint violated. が発生する不具合を修正しました。(2020 年 9 月 10 日追加)
  12. 分枝限定法において (NUOPT 33) Bound violated. が発生する不具合を修正しました。(2020 年 9 月 10 日追加)
  13. 分枝限定法において切除平面の追加でメモリを大量に消費する問題を修正しました。(2020 年 9 月 10 日追加)

PySIMPLE

各項目の詳細はこちらのページをご覧ください。
  1. Collection メソッドのサポートをしました。
  2. 添字が逆転する演算を間違う問題を修正しました。
  3. 範囲関数の範囲重複判定の厳密化をしました。
  4. 特定の式に対する二項演算ができない問題を修正しました。
  5. 変数の上下限値や定数項に 2^31 以上の整数型を指定すると求解時に OverflowError となる不具合を修正しました。(2020 年 9 月 10 日追加)
  6. 変数の同類項を複数含む式同士の加減でエラーが発生する不具合を修正しました。具体的には次のような例で、IndexError が発生しないようになりました。(2020 年 9 月 10 日追加)
    >>> i = Element(value=[1,2], name='i')
    >>> x = Variable(index=i, name='x')
    >>> y = Variable(index=i, name='y')
    >>> e = x[i] + y[i]
    >>> e + e
    IndexError: list assignment index out of range

外部接続

  1. 外部接続時に main 関数を定義しないと意図しないリンクエラーとなる問題を修正しました。

累積修正パッチの適用方法

本パッチの適用方法につきましてはこちらのダウンロードページをご覧ください。