モデル次数低減手法

カテゴリ: 連成解析・マルチフィジックス | 2026-10-01 改稿
CAE visualization for model order reduction theory - technical simulation diagram
モデル次数低減手法

理論:解の形を少数のモードで表す

概要

🙋

何時間もかかる解析を、一瞬で答える縮約モデルに置き換えられると聞きました。本当ですか?

🎓

条件付きで本当だ。多くの物理の解は、未知数がいくら多くても、実際にはいくつかの決まった形の組み合わせで表せることが多い。PODでは、元のモデルをいくつかの条件で解いて、その解を特異値分解し、解の変化をよく表す形(モード)を取り出す。あとはモードの係数だけを解けばよいので、未知数が何万あっても数個から数十個の計算になる。ただし、モードは学習に使った解の形しか知らない。学習のときと違う種類の変化が起きる条件では、モードをいくら増やしても表せない。だから縮約モデルを作るときは、使う範囲を学習で覆うことと、範囲の外で精度を確かめることが欠かせない。

固有直交分解(POD)

$$ X = [\,T(t_1),\dots,T(t_m)\,] = U\Sigma V^{\mathsf T},\qquad T \approx \Phi_k\,a(t),\quad \Phi_k = U_{:,1:k},\qquad E_k = \frac{\sum_{i\le k}\sigma_i^2}{\sum_i \sigma_i^2} $$

縮約したモデル(ガラーキン射影)

$$ \Phi_k^{\mathsf T} M \Phi_k\,\dot a = \Phi_k^{\mathsf T} K \Phi_k\,a + \Phi_k^{\mathsf T} f(t)\qquad (n = 200 \rightarrow k) $$

例の設定:長さ1の棒の1次元非定常熱伝導(内部の節点200、両端は温度0)。ガウス形の熱源(幅0.05)の強さを 1 + 0.5 sin 8πt で変え、時刻0.5まで後退オイラー法(刻み0.001)で解いた500枚のスナップショットを使う。

Coffee Break よもやま話

乱流の構造から設計の道具へ

PODは統計学の主成分分析と同じ考え方で、1967年にラムリーが乱流の中に繰り返し現れる大きな構造を取り出す方法として流体力学に持ち込んだ。1987年にシロビッチがスナップショット法を提案して計算が楽になり、流れの制御や縮約モデルに広く使われるようになった。今では構造、熱、電磁界の連成解析の縮約や、運転中の機械の状態を実時間で推定するデジタルツインの中心的な技術の一つになっている。

計算例

例1:モードの数と表せるエネルギー

モードの数表せないエネルギーの割合最大誤差(学習条件)最大誤差(熱源を0.6へ移動)
21.2×10⁻⁵1.1%22.5%
41.8×10⁻⁹0.037%19.2%
8≈ 04.4×10⁻⁶ %18.7%
16≈ 01.3×10⁻¹¹ %18.5%

例2:熱源の位置を3か所(0.4、0.5、0.7)で学習した場合

モードの数表せないエネルギーの割合未学習の位置0.6での最大誤差
45.7×10⁻⁵12.1%
85.7×10⁻⁹0.71%
16≈ 00.053%
24≈ 00.0011%
🙋

学習した条件では誤差がほぼ0なのに、熱源を少し動かしただけで19%も外れるんですね。

🎓

中央の熱源だけで学習すると、取り出されるモードはすべて中央を中心にした左右対称の形になる。熱源が0.6に動くと温度の山も右にずれるが、対称な形をいくら足し合わせても、ずれた山は表せない。だからモードの数を増やしても誤差が減らない。これが縮約モデルの最も大きな落とし穴で、学習条件で誤差が小さいことは、使いたい条件での精度を何も保証しない。熱源の位置を変えた条件で学習すると、ずれた形を表すモードが入り、学習していない0.6の位置でも誤差は大きく下がった。実務では、使う範囲の端と中を含むように学習条件を選び、学習に使っていない条件で必ず検証する。また、元のモデルの誤差判定(残差)を縮約モデルの中で監視して、範囲を外れたら元のモデルに戻す仕組みも使われる。

縮約モデルの作り方

  1. 使う範囲(荷重、境界条件、材料、形状のパラメータ)を決める。
  2. その範囲の端と中を覆うように、元のモデルで学習用の解を作る。
  3. 特異値の減り方を見て、必要なモードの数を決める。
  4. 学習に使っていない条件で誤差を確かめる。
  5. 非線形の項は、計算を速く保つための近似(超縮約)も検討する。
Coffee Break よもやま話

「デジタルツインが冬に外れた」

ある設備の温度を実時間で推定する縮約モデルが、夏から秋には実測とよく合っていたのに、冬になると数℃以上ずれるようになった。調べると、学習に使った解はすべて外気温が15℃以上の条件で、冬の低い外気温では、温度分布の形そのものが学習した形と違っていた。冬の条件を学習に加えてモードを作り直すと、ずれは1℃以内に収まった。範囲の外を見張るために、縮約モデルで解いた結果を元の方程式に代入した残差を監視するようにした。

よくある間違い

間違いと対策

間違い起きること対策
学習条件だけで精度を確認範囲外で大きく外れる未学習の条件で検証
学習の範囲が狭いモードを増やしても改善しない範囲の端を含める
エネルギーだけでモード数を決める局所の誤差が残る目的の量で確認
非線形項を元の大きさで計算速くならない超縮約を使う
範囲外の監視がない誤った結果に気づかない残差を監視
🙋

関連する内容も知りたいです。

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

構造解析電磁界解析熱解析
この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0