【AI×流体シミュレーション】物体まわりの空気の流れをAIに予測させてみた

2026/03/17

こんにちは!株式会社HIBARIの戸谷です。普段は沼津高専で流体解析の研究をしています。

突然ですが、F1マシンや飛行機がなぜあの形をしているか知っていますか?答えは「空気抵抗を減らす(あるいは揚力を得る)ため」ですが、じゃあどうやって「どの形がベストか」を調べるのか。

それが 流体シミュレーション(CFD) です。コンピュータ上で空気の流れを計算して、設計を最適化します。ただ、このCFDには大きな課題があって、準備がめちゃくちゃ大変 なんです。

今回は、その面倒な部分をAIでスキップできるかもしれない PINNs(ピンズ) (Physics-Informed Neural Networks:物理情報ニューラルネットワーク)という手法を試してみました。

まずは結果から

左が正解(数学で求めた厳密な答え)、右がAIの予測。円柱の上下で空気が加速する(赤い部分)パターンが、ほぼ完全に一致している

どうでしょう。左右ほとんど見分けがつかないと思います。

右側はニューラルネット(AI)が出した予測です。しかもこのAIには、流れのデータを一切見せていません。 教えたのは物理法則(方程式)だけ。それなのに正解とほぼ同じ結果が出ています。

従来の流体シミュレーション、何が大変なの?

飛行機やF1の空力設計には CFD(Computational Fluid Dynamics:数値流体力学) が使われています。空間を細かいマス目(メッシュ)に切って、各マスで物理の方程式を解くことで、空気の流れを計算します。

問題はこの メッシュ生成。NASAが2014年に発表したレポート[1]では、CFDプロジェクト全体の工数のうち、メッシュ生成が大きな割合を占めていると指摘されています。複雑な形状(エンジンの吸気ポートの内部とか)だと、メッシュを作るだけで何日もかかることもあります。

「メッシュなしで流体シミュレーションできたらいいのに」

→ それを実現するのがPINNsです。

PINNsとは — 3行で説明

  1. ニューラルネットに座標 (x,y)(x,y) を入力すると、その点での流れの状態を返す

  2. ただし、損失関数(学習の指標)に 物理法則の方程式を直接入れる

  3. 方程式を満たすように学習するので、教師データもメッシュも不要

普通の機械学習は「大量のデータ → パターンを学習」ですが、PINNsは 「方程式 → 解を学習」 です。2019年にRaissiらが提案し[2]、それ以降さまざまな分野への応用が急速に広がっています[3]。

どうやって「方程式を学習」するのか

PINNsは3つの「約束」を守るように学習します。

約束①:物理法則を満たすこと

今回の場合、空気の流れを支配する方程式(ラプラス方程式)を使います。計算領域内のランダムな点で、NNの出力がこの方程式を満たしているかチェックします。

約束②:円柱の壁を空気が貫通しないこと

当たり前ですが、空気は壁を通り抜けられません。円柱の表面で、速度の壁に垂直な成分がゼロになるように制約をかけます。

約束③:遠くの空気はまっすぐ流れること

円柱から十分に離れた場所では、流れは一様(まっすぐ)に戻るはずです。

この3つの約束を全部同時に満たすようにNNのパラメータを調整する。それがPINNsの学習です。

コードで見るとこんな感じ

# 3つの約束を損失関数にする
loss = loss_physics       # ① 物理法則を満たしているか
     + 50 * loss_surface  # ② 壁を貫通していないか(一番大事なので重み50)
     + 20 * loss_farfield # ③ 遠くでまっすぐ流れているか

50とか20は「どの約束をどれだけ重視するか」の重み。壁を突き破るのは一番マズいので、重みを大きくしています。

物理法則のチェックでは、PyTorchの 自動微分 という機能を使います。これはNNの出力をxやyで微分した値を、正確に自動で計算してくれる機能です。

# PyTorchの自動微分で、出力の2階偏微分を計算
psi_x = torch.autograd.grad(psi, x, create_graph=True)[0]   # ∂ψ/∂x
psi_xx = torch.autograd.grad(psi_x, x, create_graph=True)[0] # ∂²ψ/∂x²

結果の詳細

圧力分布の比較

圧力の比較。青が低圧、赤が高圧。前方は高圧(風がぶつかる)、側方は低圧(空気が加速する)

速い流れの場所は圧力が低い(ベルヌーイの定理[4])。この「速い=低圧」は、飛行機の翼が揚力を生む原理や、F1マシンがダウンフォースを得る仕組みと全く同じです。

円柱表面の圧力を数値で比較

円柱表面での圧力。青い線が正解、赤い破線がAIの予測。ほぼ重なっている

この問題には Cp=1−4sin⁡2θCp​=1−4sin2θ という数学的な厳密解が存在します[4]。PINNsの予測(赤い破線)が厳密解(青い線)にピッタリ重なっていることが分かります。

AIの予測はどこで間違えているか

予測誤差のマップ。ほぼ全面が白(誤差ゼロ)。円柱のすぐ近くにわずかな誤差がある程度

RMSE(二乗平均平方根誤差)は0.002。最大誤差でも0.031。ほぼ全域で正解と一致しています。約8,500個のパラメータを持つニューラルネットが、5分弱の学習でこの精度に達しました。

学習の過程

学習中の損失の推移。物理法則(青)・壁の条件(赤)・遠方の条件(緑)すべてが順調に下がっている

PINNsで何が変わるのか

現時点でPINNsが従来のCFDを完全に置き換えるわけではありません。ただ、以下の点で大きな可能性があります。

メッシュ生成が不要になる。 CFDで最も時間がかかる工程をスキップできます。ランダムに点を撒くだけでOKです。

逆問題に強い。 例えば「実験で数カ所の圧力を測ったデータから、流れ場全体を復元したい」みたいなケース。従来は全く別の手法が必要でしたが、PINNsなら損失関数にデータの項を追加するだけで対応できます[3]。

GPUでそのまま動く。 PyTorchで書いているので、特別な並列化なしにGPUの恩恵を受けられます。

一方で、複雑な形状や乱流のような難しい問題では精度がまだ足りないケースもあり、世界中で改善手法の研究が活発に行われています[5]。

まとめ

  • PINNs で円柱まわりの流れを解き、解析解とほぼ一致する結果が得られた(RMSE 0.002)

  • 教師データなし・メッシュなし。物理法則だけでシミュレーション可能

  • 流体シミュレーションの「準備が大変」問題を解決する手法として、今後の発展が期待される

静岡県沼津市を拠点とする株式会社HIBARIでは、AI×専門領域の融合に取り組んでいます。

参考文献

[1] Slotnick, J. et al. (2014). CFD Vision 2030 Study: A Path to Revolutionary Computational Aerosciences. NASA/CR-2014-218178. https://ntrs.nasa.gov/citations/20140003093

[2] Raissi, M., Perdikaris, P., & Karniadakis, G. E. (2019). Physics-informed neural networks: A deep learning framework for solving forward and inverse problems involving nonlinear partial differential equations. Journal of Computational Physics, 378, 686-707. https://doi.org/10.1016/j.jcp.2018.10.045

[3] Cai, S. et al. (2021). Physics-informed neural networks (PINNs) for fluid mechanics: A review. Acta Mechanica Sinica, 37, 1727-1738. https://doi.org/10.1007/s10409-021-01148-1

[4] Anderson, J. D. (2016). Fundamentals of Aerodynamics (6th ed.). McGraw-Hill Education.

[5] Wang, S., Teng, Y., & Perdikaris, P. (2021). Understanding and mitigating gradient flow pathologies in physics-informed neural networks. SIAM Journal on Scientific Computing, 43(5), A3055-A3081. https://doi.org/10.1137/20M1318043

株式会社HIBARI

株式会社HIBARIは、「”現場の抱える課題”をデジタルツイン×AIで解決する」をミッションに掲げる、沼津高専発のAIスタートアップです。静岡県を拠点に、テクノロジーを駆使しながらも現場に寄り添った「ものづくり」を発信しています。
AI開発やシステム導入に関するご相談など、お気軽にお問い合わせください。

Contact

お問い合わせ


貴社と伴走しながら
あらゆる課題を解決します。

業務内容や課題をヒアリングの上
最適なご提案をさせていただきます。
まずは、お気軽にお問い合わせください。

お問い合わせフォーム