JP / EN

Numerical Solver Project

MAL-Seeker

Bellatrix V1.0.4

非線形方程式の「ひとつの解」ではなく、探索領域に潜む複数の解を見つけたい。その目的から育ててきた、M.A.L.独自の数値解析プログラムです。

AntaresからBellatrixへ

MAL-Seekerは、回路シミュレーションで扱う非線形問題の経験から始まりました。初期のAntares系列では、多数の初期点から有望な候補を選び、局所解法へつなぐ探索を中心に開発していました。

Bellatrix V1.0.4では、その考え方を残しながら対象を広げています。一般の非線形連立方程式と最適化問題に加え、多項式系の複素解探索、問題構造に応じた経路追跡、途中結果を利用した再開探索まで、一つの実験環境で扱えるようになりました。

名前の由来になった愛犬マルの「五感」は、広い探索空間から候補を見繕う発想を表す開発上のメタファーです。現在のプログラムは、問題ごとに複数の数値手法を使い分ける構成へ発展しています。

開発の原点 ― マルの5感

広大な非線形の森から、解へ続く場所をどう見つけるか。MAL-Seekerの初期構想では、愛犬マルが周囲を感じ取りながら進む姿を探索処理に重ねました。人間が上空から探索範囲を決め、10万匹に「分身」したマルが森へ降りて候補を探す、というイメージです。

5感は厳密な数学用語ではありませんが、何のために前処理を行うのかを直感的に表しています。

Smell

嗅覚 ― 見つけた解を覚える

すでに発見した解の近くを避け、別の解へ探索を向けます。同じ場所を何度も掘る計算を減らすための感覚です。

Taste

味覚 ― 足元の状態を確かめる

候補点の勾配やヤコビアンの状態を調べ、平坦すぎる場所や数値的に扱いにくい場所を見分けます。

Sight

視覚 ― 谷へ向かう方向を見る

いきなり局所解法を始めず、より有望な方向へ候補点を少し動かしてから精密探索へ渡します。

Hearing

聴覚 ― 仲間との距離を聞く

近すぎる候補同士を整理し、複数のマルが同じ解へ集中する無駄を抑えます。

Touch

触覚 ― 解を掘り当てる

選び抜かれた候補からNewton型の局所探索を行い、残差の小さい解へ近づきます。

Bellatrixではホモトピーや対称性処理などの経路も加わったため、すべての探索がこの5段階を同じ形で通るわけではありません。それでも「広く感じ、見込みのある場所へ計算を集中する」という5感の思想は、MAL-Seekerの原点として残っています。

扱っている問題

01

非線形連立方程式

複数の実数解を持つ問題を対象に、探索範囲を変えながら候補を集め、残差と重複を確認します。

02

多項式方程式系

実数解だけでなく複素解も対象にし、方程式の次数や変数のまとまりを利用した探索を行います。

03

非線形最適化

目的関数と制約条件を読み込み、大域探索と局所的な改善を組み合わせて候補点を調べます。

04

継続的な検証

計算ログ、候補解、残差を保存し、長い探索を途中から再開して不足する解を追えるようにしています。

探索の流れ

問題を読むテキストで与えた式、変数、探索条件を解析
候補を探す問題に合う方法で広い領域から初期候補を選択
解へ近づける局所解法や経路追跡で候補を高精度化
結果を検査する残差、重複、対称性を確認して記録

Bellatrixには、マルチスタート探索、Newton型の局所探索、総次数・多斉次の考え方を用いたホモトピー、対称性を利用する処理など、性格の異なる探索経路があります。すべての問題に同じ方法を当てるのではなく、式の形や既知の情報を見て使い分けます。

ここでは全体像だけを紹介しています。選択規則、内部パラメータ、問題別の変換手順など、実装を再現できる詳細は公開していません。

Bellatrixで加わった実用機能

  • 実数系と複素数系:複素変数を実部と虚部に展開して扱い、得られた解を元の変数へ戻して確認します。
  • 問題構造の利用:変数のグループ、巡回構造、符号や共役に関する対称性を、適用できる問題で利用します。
  • チェックポイントと再開:見つかった解を保存し、別の探索条件へ引き継いで残りの解を調べます。
  • 検証用の出力:結果CSVと実行ログを残し、元の方程式での再評価や参照解との照合に使います。
  • 問題別の前処理:スケーリングや変数変換を必要に応じて行い、計算後は元の座標へ戻して評価します。

公開している検証記録

PHCpackの公開ベンチマークを中心に、保存した計算結果をEquationsで公開しています。各ページでは問題へのリンク、記録した解数、実行時間、採用した方法の概要を掲載しています。

結果の位置づけ

MAL-Seekerは数値的に複数の解を探索するための研究用プログラムです。記録した解数が既知の解数と一致しても、それだけで解の完全性を数学的に証明したことにはなりません。

結果は、問題の定式化、スケーリング、探索範囲、停止条件、重複判定の影響を受けます。そのため公開記事では、計算時間だけでなく、照合方法や未完の結果も区別して記録しています。

公開仕様

Development
C言語を中心とした独自実装
Input
テキスト形式の数式と探索条件
Output
実行ログ、候補解CSV、途中保存データ
Current version
Bellatrix V1.0.4
Status
研究・検証中。プログラム本体は非公開