ルールベースモデリングは、数学モデルを間接的に規定する一連のルールを用いるモデリング手法です。ルールセットは、マルコフ連鎖や微分方程式などのモデルに変換することも、変換後のモデルよりもルールセットを直接扱うツールを用いて処理することも可能です。後者は通常、変換後のモデルよりもはるかに大規模であるためです。ルールベースモデリングは、ルールセットがそれが示すモデルよりも著しく単純な場合、つまりモデルが限られた数のパターンの繰り返し表現である場合に特に効果的です。このようなケースが頻繁に見られる重要な分野の一つが、生物の生化学モデルです。相互に対応する物質のグループは、相互に対応する相互作用を受けます。
BioNetGen [ 1 ]は、常微分方程式を直接生成することなく、常微分方程式で構成される数理モデルを生成するために使用されるソフトウェアツール群です。例えば、以下は BioNetGen 形式のルールの例です。
どこ:
上記のコード行により、BioNetGenは各モデル種に対して、正しい質量バランスを持つ常微分方程式(ODE)を自動的に作成します。さらに、上記のルールでは結合部位が2つあるため、2つのB分子が1つのA分子に結合できることが示唆されるため、追加の種が作成されます。したがって、以下の種が生成されます。
4. A(a!1,a!2).B(b!1).B(b!2): 2つの異なるB分子によって両方の結合部位が占有された分子A。
生化学システムのシミュレーションにルールベースのモデリングを使用する初期の取り組みには、確率シミュレーションシステム StochSim [ 2 ]が含まれます。
生化学ネットワークのルールベースモデリングに広く使われているツールはBioNetGen [ 3 ]です。これはGNU GPLバージョン3でリリースされています。BioNetGenには、化学物質を記述するための言語が含まれており、物質がとりうる状態や結合の種類なども記述できます。これらのルールは、反応ネットワークモデルを作成したり、ルールセット上で直接コンピュータシミュレーションを実行したりするために使用できます。生化学モデリングフレームワークであるVirtual Cellには、BioNetGenインタープリタが含まれています。
近い代替案としては、Kappa 言語があります。[ 4 ]また別の代替案としては、BioChemical Space 言語があります。[ 5 ]