# 第一原理モデル自動構築のための モデル構築アルゴリズム

加藤祥太
京都大学大学院情報学研究科
katou.shouta.23v@st.kyoto-u.ac.jp
}

加納学
京都大学大学院情報学研究科
manabu@human.sys.i.kyoto-u.ac.jp

## 1 はじめに

化学や鉄鋼などのプロセス産業では，プロセスの挙動の理解や設計，運転に第一原理モデル（物理モデル）に基づくプロセスシミュレータが用いられており，第一原理モデルはプロセス産業に必要不可欠である.しかしながら，第一原理モデルの構築にはプロセスに関する深い理解と専門知識だけでなく,精度向上のための試行錯誤的な取り組みが必要とされる. 本研究の最終目的は, 複数の文献からモデル構築に必要な情報（数式，変数，実験データなど） を抽出して第一原理モデルを自動で構築する人工知能（AI）を開発することである．著者らは，第一原理モデル自動構築 AI の実現に向けて, 必要な要素技術の開発に取り組んでいる [1].

本研究では，複数の数式を組み合わせて新しい第一原理モデルを自動で構築する手法を提案する. 本稿では，第一原理モデルをモデルと呼ぶ.

## 2 モデル候補作成アルゴリズム

モデルは，プロセスの状態を表す変数（プロセス変数）間の関係を表す数式で構成されている. モデルを構築する上で重要な概念として，「自由度」がある [2].

$
\text { 自由度 }=\text { 変数の数 }- \text { 数式の数 }
$

自由度は自由に動かすことができる変数の数を表す. 化学プラントでは，いくつかの変数を操作して温度や圧力などを制御して製品を製造する。モデルを構築するときには操作する変数（操作変数）の数と自由度が一致する必要がある。

第一原理モデル自動構築 $\mathrm{AI}$ は，まず，ユーザからモデルに含めたい変数 (必須変数) の集合 $S_{\mathrm{rv}}$ と操作変数の集合 $S_{\mathrm{mv}}$ を受け取る. そして， $S_{\mathrm{rv}}$ と $S_{\mathrm{mv}}$ に基づき， $N_{\mathrm{e}}$ 個の数式の集合 $S_{\mathrm{e}}$ からモデルを複数作成する。モデルは以下の条件を満たす必要がある.

・必須変数を含む

・操作変数の数とモデルの自由度が等しい

本稿ではこれをモデルの必要条件と呼ぶ.

## 2.1 単純な手法

$N_{\mathrm{e}}$ 個の数式の組み合わせの総数は

$
\sum_{n=1}^{N_{e}}{ }_{N} \mathrm{C}_{n}=\sum_{n=0}^{N_{e}}{ }_{N} \mathrm{C}_{n}-1=2^{n}-1
$

であり，組み合わせ 1 つ 1 つに対してモデルの必要条件を満たすか判定することで，モデルを得ることができる. 本稿ではこれを単純な手法と呼ぶ. Algorithm 1 に単純な手法のアルゴリズムを示す. このアルゴリズムは $O\left(2^{N_{\mathrm{e}}}\right)$ の計算量を要する．プロセスが複雑，大規模になるほどモデルに含まれる数式の数は多くなる. 仮に，複数の文献から 50 個の異なる数式を得たとすると，数式の組み合わせは $2^{50} \simeq 10^{15}$ 個あるので，単純な手法では現実的な計算時間でモデルを構築することはできない.

## 2.2 提案手法

提案手法のアルゴリズムを Algorithm 2 に示す.提案手法では，まず，各数式に含まれる変数の集合と， $S_{\mathrm{e}}$ に現れる各変数を含む数式の集合を作成する (1-6 行目). 次に, 必須変数を含む数式の集合の直積集合を計算し，すべての必須変数を含む数式群の集合 $M^{\prime}$ を得る (8行目). その後, $M^{\prime}$ に含まれる数式群がモデルの必要条件を満たすか判定する．Mำ の要素 $m^{\prime}$ の自由度 $N_{\mathrm{F}, m^{\prime}}$ が操作変数の数 $N_{\mathrm{mv}}$ に等しいとき， $m^{\prime}$ はモデルの必要条件を満たす $(12,13$行目). $N_{\mathrm{F}, m^{\prime}}$ が $N_{\mathrm{mv}}$ と異なるとき， $m^{\prime}$ に含まれる必須変数以外の変数 $\left.\{\tilde{v}_{1}, \cdots, \tilde{v}_{N_{m}}\right.\}$ を求める $(15,16$行目).その後， $\left.\{\tilde{v}_{1}, \cdots, \tilde{v}_{N_{m}}\right.\}$ を含む数式群の集合 $M^{\prime \prime}$ を得る（17 行目）。 $M^{\prime \prime}$ の要素 $m^{\prime \prime}$ と $m^{\prime}$ を組み合わせた数式群を $\tilde{m}$ とし, $\tilde{m}$ の自由度 $N_{\mathrm{F}, \tilde{m}}$ が $N_{\mathrm{mv}}$ に等しいとき， $\tilde{m}$ はモデルの必要条件を満たす (19-25 行目). 最後に，モデルの必要条件を満たす数式群を出力する (28 行目).

集合 $S$ の要素数を $L(S)$ で表すと，提案アルゴリズムの計算量は式 (3)で表される.

$
\begin{aligned}
& O\left(N_{\mathrm{e}}\right)+O\left(\prod_{i=1}^{N_{\mathrm{rv}}} L\left(S_{\mathrm{e}, v_{i}}\right)\right) \\
& \quad+O\left(L\left(M^{\prime}\right)\left(\prod_{i=1}^{N_{m}} L\left(S_{\mathrm{e}, \tilde{v}_{i}}\right)+L\left(\mathcal{M}^{\prime \prime}\right)\right)\right)
\end{aligned}
$

ここで, $\prod_{i=1}^{N_{\mathrm{rv}}} L\left(S_{\mathrm{e}, v_{i}}\right)$ は必須変数を含む数式群の数, $\prod_{i=1}^{N_{m}} L\left(S_{\mathrm{e}, \tilde{v}_{i}}\right)$ は必須変数を含む数式に含まれる必須変数以外の変数の数である.

## 3 実験

単純な手法と提案手法を用いて，複数の数式の集合，必須変数の集合，操作変数の集合からモデルを構築した結果を比較した。

## 3.1 実験条件

実験で用いた数式，必須変数，操作変数の集合を表 1 に示す. 本実験では，数式中の変数を容易に判別できるとした.

## 3.2 モデル構築結果

単純な手法と提案手法によるモデル構築結果を表 2 に示す.

ケース 1 では，単純な手法と提案手法によって同じモデルの集合が得られた. 得られたモデルは必須変数を含み，操作変数を代入することで必須変数の值を得ることができる.

ケース 2 では，ケース 1 で用いた数式の集合に必須変数に含まれない変数に関する数式を加えて，2 つの手法で得られるモデルを比較した. 提案手法ではケース 1 と同じモデルの集合が得られたが，単純な手法では 64 個のモデルの集合が得られた. これは，必須変数に含まれない変数に関する数式が加わってもモデルの自由度が変化しないからである. また， $N_{i}$ の数を増加させたとき，提案手法で要する計算時間にはほぼ変化がないのに対し，単純な手法
表 1 実験で用いた数式, 必須変数, 操作変数の集合

で要する計算時間は指数的に増加した。

ケース 3 では，ケース 1 と同様に，単純な手法と提案手法によって，同じモデルの集合が得られた.表 2 の例に示す最初の 2 つのモデルでは, 操作変数を代入することで必須変数の值を得ることができる. しかし，表 2 の最後に示したモデルでは，操作変数を代入しても必須変数の値を得ることができないので，実際に使うことはできない。これは，提案手法と単純手法において，モデルに必要な条件のみしか判定していないからである. 実際に使うことができるモデルのみを得るためには，2 節で示したモデルに必要な条件に加えて，必須変数の值を得ることができるかを判定する必要がある．モデルに含まれるすべての方程式が変数に関して一次であれば係数行列を用いて判定できるが，ケース 3 のように変数に関して一次でない方程式を含むモデルもある.判定できない場合もある．実際に使うことができるモデルの選定方法の開発は今後の課題である.

## 4 おわりに

本研究では第一原理モデル自動構築に必要な要素技術として，複数の数式から第一原理モデルを自動で構築する手法を提案した. 実験を通し，提案手法を用いることで，複数の数式から現実的な計算時間で第一原理モデルを構築することができることを確認した. しかし, 提案手法によって構築した第一原理モデルには実際に使うことができないものが含ま
れる.今後はこの問題の解決に取り組み，より有用な手法を開発する。

## 参考文献

[1] Shota Kato and Manabu Kano. Identifier information based variable extraction method from scientific papers for automatic physical model building. PSE Asia Paper No. 210043, 2020.

[2] Dale E Seborg, Duncan A Mellichamp, Thomas F Edgar, and Francis J Doyle III. Process dynamics and control. John Wiley \& Sons, 2010.
表 2 単純な手法と提案手法によるモデル構築結果

 &  \\

-r_{\mathrm{A}} & =k \\
k & =k_{0} \exp (a / T) \\
k_{0} & =0.1 \\
a & =10 \\
v_{0} C_{\mathrm{A} 0} & -v_{0} C_{\mathrm{A} 0}+r_{\mathrm{A}} V=0 \\
-r_{\mathrm{A}} & =k C_{\mathrm{A}} \\
k & =k_{0} \exp (a / T) \\
k_{0} & =0.1 \\
a & =10 \\
v_{0} C_{\mathrm{A} 0} & -v_{0} C_{\mathrm{A} 0}+r_{\mathrm{A}} V=0 \\
-r_{\mathrm{A}} & =k \\
-r_{\mathrm{A}} & =k C_{\mathrm{A}} \\
-r_{\mathrm{A}} & =k C_{\mathrm{A}}^{2} \\
k & =k_{0} \exp (a / T)\end{aligned}$ & なし \\